![]() |
Routines |
| Prev: 69F4 | Up: Map | Next: 6A11 |
|
Subtracts A from flag B, sticking at zero.
|
||||
| SubtractFromFlag | 69FE | CALL FlagAddress | Point at flag B. A is the amount to subtract. | |
| 6A01 | LD ($5B94),A | |||
| 6A04 | LD A,(HL) | The flag minus the amount, via the scratch byte. | ||
| 6A05 | PUSH HL | |||
| 6A06 | LD HL,$5B94 | |||
| 6A09 | AND A | The result sticks at zero. | ||
| 6A0A | SUB (HL) | |||
| 6A0B | JR NC,SubtractFlag_Store | |||
| 6A0D | XOR A | |||
| SubtractFlag_Store | 6A0E | POP HL | Store the result. | |
| 6A0F | LD (HL),A | |||
| 6A10 | RET | Return. | ||
| Prev: 69F4 | Up: Map | Next: 6A11 |