Hi!

I recently bought a Pocket 386 machine ... tried to install FreeDOS on it.

...

I had to follow the steps described over at
https://www.both.org/?p=5690 to get FreeDOS to boot properly,
because the BIOS in the Pocket 386 doesn't support LBA addressing only CHS.

Another way may have been to use a FAT16 partition instead of FAT32:

For FAT16, the boot sector can automatically fall back to CHS when
the BIOS does not support LBA. Only for FAT32, you got the problem
of having a LBA-only boot sector installed because you did most of
the install process on QEMU (which has LBA) before transplanting
the disk (image) to your Pocket 386.

Can you test whether the FAT16 trick would have worked as well?

And question to QEMU users, can QEMU be configured to not have LBA?

I get the following error message, then jemm386 crashes.

I understand that if you do NOT use JEMM386 or JEMMEX, DOS works? :-)

Jemm386: exception 06 occured at CS:EIP-CA57=000009EE ...

Exception 06 is illegal opcode and CA57:09EE is in the UMB area.

DS=CA57 ES=CA57 FS=DB36 GS=00D9 [CS:IP]=D6 0A C0 C3 86 Ε0 30 80

In Linux, I can do the following to investigate the problem:

$ echo 00: d6 0a c0 c3 86 e0 30 80 | xxd -r | ndisasm -b16 -
00000000  D6                salc
00000001  0AC0              or al,al
00000003  C3                ret
00000004  86E0              xchg ah,al
00000006  30                db 0x30
00000007  80                db 0x80

Note that the illegal opcode is SALC, which is quite special:

https://www.rcollins.org/secrets/opcodes/SALC.html

https://www.os2museum.com/wp/undocumented-8086-opcodes-part-i/

However, doing SALC followed by OR AL,AL and RET indeed is a
legitimate way of using SALC. So what you see is not a crash
caused by having bogus data in your UMB area, but instead the
crash is caused by the processor of your Pocket 386 not having
support for the SALC opcode!

The most recent version 5.85 of JEMM386 itself does not have
any SALC in it, so one of the things (drivers?) which you are
loading high into UMB must contain SALC. Please let me know
which drivers you are loading :-)

Thank you! Regards, Eric

PS: It could be possible for JEMM386 to emulate SALC on systems
which do not support it in hardware. A sort of exotic solution.





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

Reply via email to