Closed univta0001 closed 2 weeks ago
Hi, i think i found out why MAME failed the self test. There are two problems in it
1) The soft-switch 0xc07E result is inverted. When reading 0xC07E soft switch, it should return value with high bit set if IOUDISON is on which is IOU is disabled. 2) The soft-switch 0xc07F result is inverted. Although the Apple Technical Reference Manual mentioned that when reading 0xC07F should return value with high bit set if DHIRES is on, it seems like the other way around. By inverting the value that is mentioned in the manual, the self test works.
Thanks, this has been fixed. Any idea if that's the same on the IIe? The enhanced IIe's self-test passes both ways, which is inconclusive.
If I am not wrong, enhanced IIe's self-test do not have any IOU tests. Furthermore, it seems like in Apple IIe IOU softswitches are not used at all. For e.g. softswitches 0xC05E and 0xC05F can be used to turn on / off the DHIRES whether IOU is on / off using 0xC07E / C07F softswitches.
MAME version
0.266 (mame0266)
System information
Windows 10 Home 22H2 Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz 3.40 GHz 16.0 GB
INI configuration details
Emulated system/software
mame apple2c0 -resolution0 800x800 -skip_gameinfo
Incorrect behaviour
When the mame runs the self test for the Apple 2C rom 0x00, it is failing in the self test with the error message "GLU"![mame_glu](https://github.com/mamedev/mame/assets/25102440/8ab44472-30be-4fcc-8345-573b183d698a)
Expected behaviour
The expected behaviour is MAME should pass the self test.
Steps to reproduce
Additional details
Apple2c0