Prev: 61094 Up: Map Next: 61441
61143: Routine at EED7
61143 LD DE,41196 DE=41196.
61146 LD HL,41068 HL=Graphics_MaskSprite.
61149 LD BC,128 BC=0128.
61152 LDIR Copy 0128 bytes of data from *HL to *DE.
61154 LD A,16 Set INK: *IX+9.
61156 RST 16
61157 LD A,(IX+9)
61160 RST 16
61161 LD HL,(23606) HL=*CHARS.
61164 PUSH HL Stash HL on the stack.
61165 PUSH IY Stash IY on the stack.
61167 PUSH IX Stash IX on the stack.
61169 LD E,(IX+6) E=*IX+6.
61172 LD D,0 D=0.
61174 SLA E Shift E left (with carry).
61176 RL D Rotate D left.
61178 SLA E Shift E left (with carry).
61180 RL D Rotate D left.
61182 SLA E Shift E left (with carry).
61184 RL D Rotate D left.
61186 ADD HL,DE HL+=DE.
61187 LD B,(IX+2) B=*IX+2.
61190 INC B Increment B by one.
61191 LD C,0 C=0.
61193 LD (62258),BC Write BC to *62258.
61197 LD E,(IX+7) E=*IX+7.
61200 LD D,(IX+8) D=*IX+8.
61203 LD A,D A=D.
61204 INC A Increment A by one.
61205 SLA A Shift A left three positions (with carry).
61207 SLA A
61209 SLA A
61211 LD C,A C=A.
61212 LD B,0 B=0.
61214 LD IY,41204 IY=41204.
61218 ADD IY,BC IY+=BC.
61220 LD C,E C=E.
61221 SLA C Shift C left (with carry).
61223 SLA C Shift C left (with carry).
61225 SLA C Shift C left (with carry).
61227 LD B,0 B=0.
61229 LD (62268),BC Write BC to *62268.
61233 LD IX,41204 IX=41204.
61237 PUSH HL Stash HL, DE and HL on the stack.
61238 PUSH DE
61239 PUSH HL
61240 LD B,8 B=8.
61242 PUSH BC Stash BC on the stack.
61243 LD A,(HL) A=*HL.
61244 LD BC,(62258) BC=*62258.
61248 SLA A Shift A left (with carry).
61250 RL C Rotate C left.
61252 SLA A Shift A left (with carry).
61254 RL C Rotate C left.
61256 DJNZ 61248 Decrease counter by one and loop back to 61248 until counter is zero.
61258 LD (IY+0),A Write A to *IY+0.
61261 LD A,C A=C.
61262 OR (IX+0) Set the bits of A with *IX+0.
61265 LD (IX+0),A Write A to *IX+0.
61268 INC HL Increment HL by one.
61269 INC IX Increment IX by one.
61271 INC IY Increment IY by one.
61273 POP BC Restore BC from the stack.
61274 DJNZ 61242 Decrease counter by one and loop back to 61242 until counter is zero.
61276 POP HL Restore HL from the stack.
61277 LD BC,(62268) HL+=*62268.
61281 ADD HL,BC
61282 DEC D Decrease D by one.
61283 JR NZ,61239 Jump to 61239 until D is zero.
61285 POP DE Restore DE from the stack.
61286 LD BC,8 BC=0008.
61289 ADD IX,BC IX+=BC.
61291 ADD IY,BC IY+=BC.
61293 POP HL Restore HL from the stack.
61294 ADD HL,BC HL+=BC.
61295 DEC E Decrease E by one.
61296 JR NZ,61237 Jump to 61237 until E is zero.
61298 LD HL,40940 HL=Graphics_GoldfishGamePlayer.
61301 POP IX Restore IX from the stack.
61303 LD A,(IX+3) A=*IX+3.
61306 INC A Increment A by one.
61307 SLA A Shift A left (with carry).
61309 LD E,A E=A.
61310 LD D,0 D=0.
61312 ADD HL,DE HL+=DE.
61313 LD (23606),HL Write HL to *CHARS.
61316 LD D,(IX+8) D=*IX+8.
61319 LD E,(IX+7) E=*IX+7.
61322 LD A,(IX+2) Jump to 61330 if *IX+2 is equal to 3.
61325 CP 3
61327 JR Z,61330
61329 INC E Increment E by one.
61330 INC D Increment D by one.
61331 LD A,D A=D.
61332 LD (62270),A Write A to *62270.
61335 LD A,3 Jump to 61343 if 3 is not equal to *IX+3.
61337 CP (IX+3)
61340 JR NZ,61343
61342 DEC D Decrease D by one.
61343 LD B,(IX+1) B=*IX+1.
61346 LD C,(IX+0) C=*IX+0.
61349 LD A,D A=D.
61350 LD A,32 A=32.
61352 POP IY Restore IY from the stack.
61354 LD A,32 A=32.
61356 PUSH AF Stash AF, DE and BC on the stack.
61357 PUSH DE
61358 PUSH BC
61359 LD D,A D=A.
61360 LD A,C Jump to 61417 if C is higher than 34.
61361 CP 34
61363 JR NC,61417
61365 PUSH DE Stash DE on the stack.
61366 CALL 3545 Call CL_SET.
61369 POP DE Restore DE and BC from the stack.
61370 POP BC
61371 PUSH BC Stash BC on the stack.
61372 LD A,D A=D.
61373 CALL PrintColourCharacter Call PrintColourCharacter.
61376 LD A,C Call 61404 if C is equal to 2.
61377 CP 2
61379 CALL Z,61404
61382 DEC C Decrease C by one.
61383 LD A,(62270) D+=*62270.
61386 ADD A,D
61387 LD D,A
61388 DEC E Decrease E by one.
61389 JR NZ,61373 Jump to 61373 until E is zero.
61391 POP BC Restore BC, DE and AF from the stack.
61392 POP DE
61393 POP AF
61394 DEC B Decrease B by one.
61395 INC A Increment A by one.
61396 DEC D Decrease D by one.
61397 JR NZ,61356 Jump to 61356 until D is zero.
61399 POP HL Restore HL from the stack.
61400 LD (23606),HL Write HL to *CHARS.
61403 RET Return.
61404 DEC E Decrease E by one.
61405 PUSH AF Stash AF on the stack.
61406 INC E Increment E by one.
61407 POP AF Restore AF from the stack.
61408 RET Z Return if E is zero.
61409 DEC E Decrease E by one.
61410 LD A,(62270) D+=*62270.
61413 ADD A,D
61414 LD D,A
61415 JR 61404 Jump to 61404.
61417 LD A,(62270) D+=*62270.
61420 ADD A,D
61421 LD D,A
61422 DEC E Decrease E by one.
61423 JP Z,61435 Jump to 61435 if E is zero.
61426 DEC C Decrease C by one.
61427 LD A,C Jump to 61417 if C is higher than 34.
61428 CP 34
61430 JR NC,61417
61432 JP 61365 Jump to 61365.
61435 POP BC Restore BC, BC and BC from the stack.
61436 POP BC
61437 POP BC
61438 JP 61399 Jump to 61399.
Prev: 61094 Up: Map Next: 61441