Baron-von-Riedesel / Jemm

Jemm386 and JemmEx are socalled EMMs ( Expanded Memory Managers ) or, more exactly, V86 monitors.
131 stars 11 forks source link

JCLOCK2 fails to build with fasm 1.73.32 #24

Open turol opened 8 months ago

turol commented 8 months ago

Tried to build with latest fasm 1.73.32, got these:

flat assembler  version 1.73.32  (7232 kilobytes memory)
Error: definition of cb_s contains illegal instructions.
..\..\Include\jlmfasm.inc [201]:
ends
\fasm\Include\macro/struct.inc [65] ends [9]:
                                err
\fasm\Include\macro/struct.inc [65] match [9]:
                                err
\fasm\Include\macro/struct.inc [65] match [2]:
                                err
processed: err
error: error directive encountered in source file.
Baron-von-Riedesel commented 8 months ago

I see. However, the fasm error messages are way too cryptic for me. No idea what problem it might have with the ends directive.

Btw, what probably should be changed: the VMMcall macro is a problem, because that name has become a cpu instruction name. Better rename it to @VMMcall ( if fasm allows symbol names beginning with '@' ).

turol commented 8 months ago

I already have that change locally and it doesn't fix it. Do you know of a version of fasm which worked? Why do the JCLOCK JLMs use fasm when everything else seems to use jwasm?

Baron-von-Riedesel commented 8 months ago

Do you know of a version of fasm which worked?

No.

Why do the JCLOCK JLMs use fasm when everything else seems to use jwasm?

They were written by Alexey Voskov who asked me to include them. I'm not at all familiar with fasm. Couldn't you ask for help in the fasm forum? If you get a fix, let me know!

turol commented 8 months ago

I don't really feel like signing up for yet another forum. Are they on github? This is not critical, I was just trying to build all the examples. The others work (at least after #23) including the other JCLOCK so it doesn't matter to me. You could drop Alexey a note that this is now broken.

CandyMan30 commented 2 days ago

Try change "DD" "DW" "DB" in stuctures definition to lowercae "dd" "dw" etc.