Hi! I have been watching

https://www.youtube.com/watch?v=K6-AlpCEqpc

where Phils Computer Lab tests SBEMU with the pre-installed
FreeDOS image which you can download from SBEMU's crazii.

At one point, a game crashes with a loop of the following,
some leading 0s omitted by me:

JemmEx: exception 06 occured at CS:EIP=9689:FF14, ERRC=0
SS:ESP=D70A:C7D4 EBP=FFFF EFL=33093 CR0=80000013 CR4=200
EAX=FFFF9002 EBX=FFFF0007 ECX=FFFFFF00 EDX=FFFFF1EC
ESI=40001A EDI=0EFF
DS=0040 ES=FFFF FS=FFFF GS=00D9 [CS:IP]=FF FF FF FF FF FF FF FF
Press ESC to abort program

JemmEx: exception 06 occured at CS:EIP=9689:FF14, ERRC=0
SS:ESP=D70A:C7BE EBP=FFFF EFL=33093 CR0=80000013 CR4=200
EAX=FFFF9002 EBX=FFFF0007 ECX=FFFFFF00 EDX=FFFFF1EC
ESI=40001A EDI=0EFF
DS=0040 ES=FFFF FS=FFFF GS=00D9 [CS:IP]=FF FF FF FF FF FF FF FF
Press ESC to abort program

and so on, all registers except ESP stay constant and the
video shows a loop of JemmEx messages scrolling through as
the stack pointer goes down while CS:EIP is frozen pointing
to an impossible FF FF opcode. Exc. 06 is undefined opcode.

As the messages scroll so fast, I am not sure whether each
instance actually shows all lines. The may even be nested?

Later in the same video, F-117A mgraphic crashes, with far
more readable JemmEx reactions:

 JemmEx: exception 0C occured at CS:EIP=0360:2A01, ERRC=0
 SS:ESP=0360:FFEA EBP=0 EFL=33202 CRO=80000013 CR4=00000200
 EAX=0021 EBX=0 ECX=0 EDX=FFEC ESI=FFFF EDI=01FF
 DS=0350 ES=0350 FS=0350 GS=O2BA [C3:IP]=36 8B 28 36 8B 88 B8 01
 Press ESC to abort progran

 JemmEx: exception 06 occured at CS:EIP=0000:0108,   ERRC=0
 SS:ESP=0914:10002 EBP=C600 EFL=00033246 CRO=80000013 CR4=200
 EAX=0 EBX=0 ECX=0 EDX=0 ES1=0 EDI=0
 DS=0 ES=0 FS=0 GS=0 [C3:IP]=65 F0 00 F0 36 03 00 C0
 Press ESC to abort program

 JemmEx: exception 0D occured at CS:EIP=D79B:0984, ERRC=0
 SS:ESP=00D9:08D0 EBP=0 EFL=33093 CRO=80000013 CR4=200
 EAX=00FF EBX=0 ECX=FF54 EDX=0904 ESI=A8B1 EDI=0
 DS=00D9 ES=D7A0 FS=0 GS=0 [CS:IP]=67 66 2E 83 3C 9D 4C 04
...

This starts with a stack error first, "mov bp,[ss:bx+si]"
wrapping the end of the first 64 kB of the stack segment,
then an undefined opcode exception apparently caused by an
invalid locked combination saying GS: LOCK: ADD AL,DH etc.
and finally a general protection fault.

Of course this does not tell much about whether it was
futile to try to abort the program after the first stack
exception, but note how there is no LOOP of exceptions
here, so it gets a lot easier to read the messages :-)

Thanks to https://www.sandpile.org/ for their tables :-)

Likewise, the F-19 game also crashes, even with loadfix:

JemmEx: exception 0D occured at CS:EIP=1025:4142, ERRC=0
SS:ESP:2025:DAC6 EBP=DAD0 EFL=33282 CR0=80000013 CR4=200
EAX=0 EBX=FFFE ECX=9BCC EDX=4605 ESI=C88C EDI=0
DS=2025 ES=46E8 FS=1015 GS=02BA [CS:IP]=89 47 01 89 7F 03 83 C6

which is mov [bx+1],ax and again wraps the end of some
64 kB boundary, but you actually get to read the text
without a loop :-)

*So now I wonder why JemmEx exception messages sometimes*
*end up in a loop, while usually they do not, luckily.*

The video features kernel 2043 (2021-05-14) FAT32 Watcom 386,
JemmEx 5.84 02/11/23, QPIEMU, FreeCOM 0.85a 2021-07-10,
UDVD2 (not used, no drive in the shown thin client),
SBEMU (in VIA VT82XX AC97 mode), CuteMouse 2.1beta4,
originally based on the FreeDOS 1.3 distro, it seems.

It also mentions Aladdin failing to start, with the
message "XMS allocation error.." (sic!) and Lotus 3
crashing with "Interrupt divide by zero, stack:
D34C 0360 3002 518D ADE8 EB6F EB4A 314A
E8D2 B117 C689 C389 7C80"

In Sam+Max, audio setup fails with "hdpmi: fatal exit 0007".
In Space Quest 5 adlib works, while emulated SB use hangs.

Finally, some related GOOD news from this
video: TETRIS CLASSIC is working fine :-)

It is one of the games mentioned in my
"game compatibility updates?" post as a
game which was NOT working in 2022 :-)

Cheers, Eric



_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to