CMC implementation is incorrect
Opened this issue · 0 comments
Herohtar commented
All the variants of the emulator files have CMC
(Complement Carry) implemented as "clear carry":
emulator101/CocoaPart7-Threading/8080emu.c
Line 744 in 0c327a7
It seems the test program (cpudiag.asm) does not catch that specific error and will pass the CPU as operational because it only checks that CMC results in the carry being set from 1 to 0:
STC
CNC CPUER ;TEST "STC"
CMC
CC CPUER ;TEST "CMC