Routines |
Prev: 60911 | Up: Map | Next: 61258 |
Used by the routine at LevelComplete.
|
||||
61025 | LD A,128 | Write 128 to *Time. | ||
61027 | LD (55354),A | |||
61030 | LD A,8 | Write 8 to *55353. | ||
61032 | LD (55353),A | |||
61035 | CALL 61229 | Call 61229. | ||
61038 | CALL 64157 | Call 64157. | ||
61041 | LD HL,55353 | HL=55353. | ||
61044 | BIT 3,(HL) | Test bit 3 of *HL. | ||
61046 | JR NZ,61035 | Jump to 61035 if is not zero. | ||
61048 | LD A,18 | Write 18 to *DestinationCursor_Y_Position. | ||
61050 | LD (55340),A | |||
61053 | LD HL,61253 | HL=61253. | ||
61056 | LD DE,1000 | DE=1000. | ||
61059 | DEC DE | Decrease DE by one. | ||
61060 | LD A,100 | A=100. | ||
61062 | DEC A | Decrease A by one. | ||
61063 | JR NZ,61062 | Jump to 61062 if A is not zero. | ||
61065 | LD A,D | Jump to 61059 if DE is not zero. | ||
61066 | OR E | |||
61067 | JR NZ,61059 | |||
61069 | LD B,4 | B=4. | ||
61071 | PUSH BC | Stash BC on the stack. | ||
61072 | LD B,5 | B=5. | ||
61074 | PUSH HL | Stash HL and BC on the stack. | ||
61075 | PUSH BC | |||
61076 | LD A,(55340) | Write *DestinationCursor_Y_Position to *Tile_Horizontal_Position. | ||
61079 | LD (59229),A | |||
61082 | LD A,(HL) | A=*HL. | ||
61083 | LD (59230),A | Write A to *Tile_Vertical_Position. | ||
61086 | SUB 10 | A-=10. | ||
61088 | JR Z,61110 | Jump to 61110 if A is zero. | ||
61090 | JP P,61104 | Jump to 61104 P. | ||
61093 | NEG | NEG. | ||
61095 | LD (59233),A | Write A to *Tile_SpacesToMove. | ||
61098 | CALL MoveTile_Right | Call MoveTile_Right. | ||
61101 | JP 61110 | Jump to 61110. | ||
61104 | LD (59233),A | Write A to *Tile_SpacesToMove. | ||
61107 | CALL MoveTile_Left | Call MoveTile_Left. | ||
61110 | LD A,(55340) | A=*DestinationCursor_Y_Position. | ||
61113 | SUB 18 | A-=18. | ||
61115 | NEG | NEG. | ||
61117 | INC A | Increment A by one. | ||
61118 | LD (59233),A | Write A to *Tile_SpacesToMove. | ||
61121 | CALL MoveTile_Down | Call MoveTile_Down. | ||
61124 | LD B,4 | B=4. | ||
61126 | LD A,1 | Write 1 to *Tile_SpacesToMove. | ||
61128 | LD (59233),A | |||
61131 | PUSH BC | Stash BC on the stack. | ||
61132 | LD A,18 | Write 18 to *Tile_Horizontal_Position. | ||
61134 | LD (59229),A | |||
61137 | CALL MoveTile_Down | Call MoveTile_Down. | ||
61140 | LD D,50 | D=50. | ||
61142 | LD E,30 | E=30. | ||
61144 | LD A,5 | A=5. | ||
61146 | XOR %00010000 | Flip bit 4. | ||
61148 | OUT (254),A | Send to the speaker. | ||
61150 | LD B,D | B=D. | ||
61151 | DJNZ 61151 | Decrease counter by one and loop back to 61151 until counter is zero. | ||
61153 | DEC E | Decrease E by one. | ||
61154 | JR NZ,61146 | Jump to 61146 if E is not zero. | ||
61156 | POP BC | Restore BC from the stack. | ||
61157 | DJNZ 61131 | Decrease counter by one and loop back to 61131 until counter is zero. | ||
61159 | POP BC | Restore BC and HL from the stack. | ||
61160 | POP HL | |||
61161 | INC HL | Increment HL by one. | ||
61162 | DJNZ 61074 | Decrease counter by one and loop back to 61074 until counter is zero. | ||
61164 | POP BC | Restore BC from the stack. | ||
61165 | LD HL,61253 | HL=61253. | ||
61168 | LD A,(55340) | A=*DestinationCursor_Y_Position. | ||
61171 | SUB 4 | A-=4. | ||
61173 | LD (55340),A | Write A to *DestinationCursor_Y_Position. | ||
61176 | DJNZ 61071 | Decrease counter by one and loop back to 61071 until counter is zero. | ||
61178 | LD DE,1000 | DE=1000. | ||
61181 | DEC DE | Decrease DE by one. | ||
61182 | LD A,100 | A=100. | ||
61184 | DEC A | Decrease A by one. | ||
61185 | JR NZ,61184 | Jump to 61184 if A is not zero. | ||
61187 | LD A,D | Jump to 61181 if DE is not zero. | ||
61188 | OR E | |||
61189 | JR NZ,61181 | |||
61191 | LD A,69 | A=INK: CYAN, PAPER: BLACK (BRIGHT) . | ||
61193 | LD (23209),A | Write A to *23209 (attribute buffer location). | ||
61196 | LD (23210),A | Write A to *23210 (attribute buffer location). | ||
61199 | LD (23211),A | Write A to *23211 (attribute buffer location). | ||
61202 | LD (23212),A | Write A to *23212 (attribute buffer location). | ||
61205 | LD A,128 | Write 128 to *Time. | ||
61207 | LD (55354),A | |||
61210 | LD A,8 | Write 8 to *55353. | ||
61212 | LD (55353),A | |||
61215 | CALL 61229 | Call 61229. | ||
61218 | CALL 64214 | Call 64214. | ||
61221 | LD HL,55353 | HL=55353. | ||
61224 | BIT 3,(HL) | Test bit 3 of *HL. | ||
61226 | JR NZ,61215 | Jump to 61215 if A is not zero. | ||
61228 | RET | Return. | ||
61229 | LD BC,1000 | BC=1000. | ||
61232 | LD H,5 | H=5. | ||
61234 | LD A,(HL) | A=*HL. | ||
61235 | INC HL | Increment HL by one. | ||
61236 | AND %00011000 | Keep only bits 3-4. | ||
61238 | OR %00000101 | Set bits 0, 2. | ||
61240 | OUT (254),A | Send to the speaker. | ||
61242 | DEC BC | Decrease BC by one. | ||
61243 | LD A,B | Jump to 61234 if BC is not zero. | ||
61244 | OR C | |||
61245 | JR NZ,61234 | |||
61247 | LD B,8 | B=8. | ||
61249 | LD HL,(55372) | HL=*55372. | ||
61252 | RET | Return. | ||
61253 | LD A,(BC) | |||
61254 | LD C,18 | |||
61256 | LD B,2 |
Prev: 60911 | Up: Map | Next: 61258 |