Just to note, this game (from the source in post #5) works in twinBASIC unmodified; and an x64 port works after working around a single bug (x64-only codegen issue around negative indexes in arrays declared at module/class level when array bounds check is disabled). Besides debugging the array issue, took all of 10 minutes... remove tlb refs, comment out the API defs, fix signature def differences (there were 5; 4 Currency->LongLong, 1 ByVal 0 to Nothing), change some Longs to LongPtrs, and running!
The shader compiler was actually the bigger pain to port, rather than compile a 64bit c++ dll it just binds directly to d3dx9_43.dll now.
I've attached the .twinproj files, the original VB6 zip is still needed for data files etc. Also the linked Windows Development Library needs to be up to date; I added some d3d defs that aren't in the SDK but were in The trick's typelib.