Fix ADD HL, SP; Pass test #3
This commit is contained in:
parent
7dadc79078
commit
72507fb8b4
@ -11,7 +11,7 @@ Display is able to render tiles + sprites, 8x16 sprites are implemented but unte
|
|||||||
|
|
||||||
- Test 01 fails because of DAA
|
- Test 01 fails because of DAA
|
||||||
- Test 02 fails because interrupts are not fully implemented.
|
- Test 02 fails because interrupts are not fully implemented.
|
||||||
- Test 03 fails, probably because of flags.
|
- Test 03 passes
|
||||||
- Test 04 passes
|
- Test 04 passes
|
||||||
- Test 05 fails
|
- Test 05 fails
|
||||||
- Test 06 passes (LD R, R)
|
- Test 06 passes (LD R, R)
|
||||||
|
|||||||
@ -1168,9 +1168,8 @@ impl CPU {
|
|||||||
self.set_pair_value(REG_N_H, REG_N_L, v);
|
self.set_pair_value(REG_N_H, REG_N_L, v);
|
||||||
|
|
||||||
self.clear_flag(FLAG_N);
|
self.clear_flag(FLAG_N);
|
||||||
self.set_clear_flag(FLAG_C, old > v);
|
self.set_clear_flag(FLAG_C, old > v && sp > 0);
|
||||||
// Is this correct? I don't know:
|
self.set_clear_flag(FLAG_H, ((old & 0xFFF) + (sp & 0xFFF)) > 0xFFF);
|
||||||
self.set_clear_flag(FLAG_H, (old & 0x8 | sp & 0x8) == 1 && v & 0x8 == 0);
|
|
||||||
8
|
8
|
||||||
},
|
},
|
||||||
0x3A => {
|
0x3A => {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user