![]() |
Routines |
| Prev: DABF | Up: Map | Next: DB7E |
|
||||||||||||
| Print_Numbers | DB2E | PUSH AF | Stash AF on the stack. | |||||||||
| DB2F | CALL Calculate_ScreenBlockAddress | Call Calculate_ScreenBlockAddress. | ||||||||||
| DB32 | POP AF | Restore AF from the stack. | ||||||||||
| DB33 | RRCA | RRCA. | ||||||||||
| DB34 | LD B,A | B=A. | ||||||||||
|
This entry point is used by the routines at Print_Score and Print_Level.
|
||||||||||||
| Print_Numbers_0 | DB35 | LD A,(DE) | A=*DE. | |||||||||
| DB36 | LD C,A | C=A. | ||||||||||
| DB37 | AND %11110000 | Keep only bits 4-7. | ||||||||||
| DB39 | RRCA | RRCA. | ||||||||||
| DB3A | CALL Print_Numbers_1 | Call Print_Numbers_1. | ||||||||||
| DB3D | INC HL | Increment HL by one. | ||||||||||
| DB3E | LD A,C | A=C. | ||||||||||
| DB3F | AND %00001111 | Keep only bits 0-3. | ||||||||||
| DB41 | RLCA | RLCA. | ||||||||||
| DB42 | RLCA | |||||||||||
| DB43 | RLCA | |||||||||||
| DB44 | CALL Print_Numbers_1 | Call Print_Numbers_1. | ||||||||||
| DB47 | INC DE | Increment DE by one. | ||||||||||
| DB48 | INC HL | Increment HL by one. | ||||||||||
| DB49 | DJNZ Print_Numbers_0 | Decrease counter by one and loop back to Print_Numbers_0 until counter is zero. | ||||||||||
| DB4B | RET | Return. | ||||||||||
| Print_Numbers_1 | DB4C | PUSH BC | Stash BC, DE and HL on the stack. | |||||||||
| DB4D | PUSH DE | |||||||||||
| DB4E | PUSH HL | |||||||||||
| DB4F | LD B,$00 | B=00. | ||||||||||
| DB51 | LD C,A | C=A. | ||||||||||
| DB52 | PUSH HL | Stash HL on the stack. | ||||||||||
| DB53 | LD HL,$F2CE | HL=CustomFont. | ||||||||||
| DB56 | ADD HL,BC | HL+=BC. | ||||||||||
| DB57 | POP DE | Restore DE from the stack. | ||||||||||
| DB58 | LD B,$08 | B=08. | ||||||||||
| Print_Numbers_2 | DB5A | LD A,(HL) | A=*HL. | |||||||||
| DB5B | LD (DE),A | Write A to *DE. | ||||||||||
| DB5C | INC HL | Increment HL by one. | ||||||||||
| DB5D | LD IX,$D83A | IX=Time. | ||||||||||
| DB61 | BIT 1,(IX+$00) | Test bit 1 of *IX+00. | ||||||||||
| DB65 | JR Z,Print_Numbers_3 | Jump to Print_Numbers_3 if HL is zero. | ||||||||||
| DB67 | LD A,B | Jump to Print_Numbers_3 if B is not equal to 05. | ||||||||||
| DB68 | CP $05 | |||||||||||
| DB6A | JR NZ,Print_Numbers_3 | |||||||||||
| DB6C | PUSH HL | Stash HL on the stack. | ||||||||||
| DB6D | EX DE,HL | Exchange the DE and HL registers. | ||||||||||
| DB6E | LD DE,$06E0 | HL-=06E0. | ||||||||||
| DB71 | SBC HL,DE | |||||||||||
| DB73 | EX DE,HL | Exchange the DE and HL registers. | ||||||||||
| DB74 | POP HL | Restore HL from the stack. | ||||||||||
| DB75 | JR Print_Numbers_4 | Jump to Print_Numbers_4. | ||||||||||
| Print_Numbers_3 | DB77 | INC D | Increment D by one. | |||||||||
| Print_Numbers_4 | DB78 | DJNZ Print_Numbers_2 | Decrease counter by one and loop back to Print_Numbers_2 until counter is zero. | |||||||||
| DB7A | POP HL | Restore HL, DE and BC from the stack. | ||||||||||
| DB7B | POP DE | |||||||||||
| DB7C | POP BC | |||||||||||
| DB7D | RET | Return. | ||||||||||
| Prev: DABF | Up: Map | Next: DB7E |