Routines |
Prev: 45724 | Up: Map | Next: 46006 |
Used by the routine at 44981.
|
||||
45890 | PUSH HL | Stash HL on the stack. | ||
45891 | LD (46096),A | Write A to *46096. | ||
45894 | LD D,A | D=A. | ||
45895 | LD A,68 | Write INK: GREEN, PAPER: BLACK (BRIGHT) to *46104. | ||
45897 | LD (46104),A | |||
45900 | LD A,D | A=D. | ||
45901 | CALL 46082 | Call 46082. | ||
45904 | CP (IX+0) | Jump to 45932 if *IX+0 is greater than or equal to 68. | ||
45907 | JR NC,45932 | |||
45909 | LD A,(HL) | Write *HL to *46097. | ||
45910 | LD (46097),A | |||
45913 | CALL 45966 | Call 45966. | ||
45916 | LD D,A | D=A. | ||
45917 | LD A,(46105) | A=*46105. | ||
45920 | CP 68 | Jump to 45929 if A is not equal to 68. | ||
45922 | JR NZ,45929 | |||
45924 | LD A,255 | Write 255 to *46098. | ||
45926 | LD (46098),A | |||
45929 | LD A,D | A=D. | ||
45930 | JR 45955 | Jump to 45955. | ||
45932 | CP (IX+1) | Jump to 45947 if *IX+1 is greater than or equal to 255. | ||
45935 | JR NC,45947 | |||
45937 | DEC HL | Decrease HL by one. | ||
45938 | LD A,(HL) | Write *HL to *46097. | ||
45939 | LD (46097),A | |||
45942 | CALL 45966 | Call 45966. | ||
45945 | JR 45955 | Jump to 45955. | ||
45947 | INC HL | Increment HL by one. | ||
45948 | LD A,(HL) | A=*HL. | ||
45949 | LD (46097),A | Write A to *46097. | ||
45952 | CALL 45966 | Call 45966. | ||
45955 | POP HL | Restore HL from the stack. | ||
45956 | LD (46092),A | Write A to *46092. | ||
45959 | LD E,A | E=A. | ||
45960 | LD D,0 | D=0. | ||
45962 | AND A | Set flags. | ||
45963 | SBC HL,DE | HL-=DE (with carry). | ||
45965 | RET | Return. | ||
45966 | LD B,A | B=A. | ||
45967 | LD E,200 | E=200. | ||
45969 | CALL 43125 | Call 43125. | ||
45972 | CP (IX+2) | Compare A with *IX+2. | ||
45975 | JR NC,45986 | Jump to 45986 if HL is greater than or equal to A. | ||
45977 | LD A,68 | Write INK: GREEN, PAPER: BLACK (BRIGHT) to *46105. | ||
45979 | LD (46105),A | |||
45982 | LD A,B | A=B. | ||
45983 | ADD A,A | A+=A. | ||
45984 | JR 46005 | Jump to 46005. | ||
45986 | CP (IX+3) | Compare A with *IX+3. | ||
45989 | JR NC,45999 | Jump to 45999 if HL is greater than or equal to A. | ||
45991 | LD A,83 | Write 83 to *46105. | ||
45993 | LD (46105),A | |||
45996 | LD A,B | A=B. | ||
45997 | JR 46005 | Jump to 46005. | ||
45999 | LD A,77 | Write INK: CYAN, PAPER: BLUE (BRIGHT) to *46105. | ||
46001 | LD (46105),A | |||
46004 | XOR A | A=0. | ||
46005 | RET | Return. |
Prev: 45724 | Up: Map | Next: 46006 |