I am trying to generate a Windows DLL, starting with the GenDllTest.fth example.
However, my distribution (version 5.43 build 4241) does not contain a pair of matched low-memory / high-memory compilers. VfxForthK_64_win.exe does not have init-libs, but both VfxForthB_x64_win.exe and VfxForth_x64_win.exe compile the file successfully, with the DllMain entry reported at different addresses. Unfortunately, that does not seem sufficient for MakeDll.
MakeDll %bin%\VfxForthB_x64_win %bin%\VfxForth_x64_win %mydir%\GenDllTest C:\temp\testdll
Saving C:\temp\testdll
Err# -256 ERR: Execution of a DEFERed word with no ASSIGNed action.
-> MakeDll %bin%\VfxForth_x64_win %bin%\VfxForthB_x64_win %mydir%\GenDllTest C:\temp\testdll
^
I then tried to make a VfxForthBH_x64_win.exe by using VfxBase64.bld. But (after selecting the latest ExternWin64.fth) I gave up after stumbling on the following error. Also I could not find how to load to make the result load to a higher memory area (just reserve unused space in the dictionary to get an offset?).
Err# -13 ERR: Undefined word.
Source: "c:\Products\VfxCommunity\Sources\VFXBase\CallDefWin64.fth" on line 178
-> [a movsx a] Poff bytePSP, ^ai IntArgReg [a]
^