![]() |
Routines |
| Prev: 27124 | Up: Map | Next: 27153 |
|
Subtracts A from flag B, sticking at zero.
|
||||
| SubtractFromFlag | 27134 | CALL FlagAddress | Point at flag B. A is the amount to subtract. | |
| 27137 | LD (23444),A | |||
| 27140 | LD A,(HL) | The flag minus the amount, via the scratch byte. | ||
| 27141 | PUSH HL | |||
| 27142 | LD HL,23444 | |||
| 27145 | AND A | The result sticks at zero. | ||
| 27146 | SUB (HL) | |||
| 27147 | JR NC,SubtractFlag_Store | |||
| 27149 | XOR A | |||
| SubtractFlag_Store | 27150 | POP HL | Store the result. | |
| 27151 | LD (HL),A | |||
| 27152 | RET | Return. | ||
| Prev: 27124 | Up: Map | Next: 27153 |