VOGONS


First post, by superfury

User metadata
Rank l33t++
Rank
l33t++

I have the CMOS fully emulated(with RTC clock synchronized with actual system time difference(in nanoseconds) instead of in-emulation clock, although interrupts are synchronized with the emulator CPU clocking). It emulates 128 bytes of CMOS RAM at 0x70/0x71. But the Deskpro 386 keeps complaining about an uninitialized BIOS for some odd reason? Does the secondary CMOS at 0x74/0x76 (http://bochs.sourceforge.net/techspec/PORTS.LST) exist in that machine as well? Is that why it's complaining?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 1 of 3, by vladstamate

User metadata
Rank Oldbie
Rank
Oldbie

Do you see it reading/writing to 74/76?

It is also possible that by "uninitialized" it actually means checksum error. So watch out for reads from address 2E/2F and then in the code see what value it compares against.

YouTube channel: https://www.youtube.com/channel/UC7HbC_nq8t1S9l7qGYL0mTA
Collection: http://www.digiloguemuseum.com/index.html
Emulator: https://sites.google.com/site/capex86/
Raytracer: https://sites.google.com/site/opaqueraytracer/

Reply 2 of 3, by superfury

User metadata
Rank l33t++
Rank
l33t++

Well, the test AT BIOS i've used before(besides protected mode issues) also said errors exist with the CMOS, but that shouldn't be true(I see it writing and reading values from CMOS RAM and RTC time properly after all)? So a CPU error on it's data?

UniPCemu's CMOS emulation: https://bitbucket.org/superfury/unipcemu/src/ … MOS.c?at=master

PORT_readCMOS and PORT_writeCMOS handle I/O 70/71 as well as XT RTC emulation.

Can you see any problem?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 3 of 3, by superfury

User metadata
Rank l33t++
Rank
l33t++

I've just tried the Supersoft/Landmark AT ROM from mimuszerodegrees again. It detects faults in CGA Memory(should work fine, though, using VGA emulation modes transparently with some extra CGA/MDA wrapping?), CMOS RAM(odd, since it's a simple RAM array being accessed?) and keyboard errors? It crashes after the CGA RAM test reporting beeps, rebooting?

Can anyone see what causes the CMOS RAM reads/writes to go bad? All CMOS RAM memory accesses should be correctly mapped, then WHY is it always erroring out?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io