Prev: 64FD Up: Map Next: 6563
6500: Routine at 6500
Used by the routine at GameInitialisation.
6500 LD DE,$9E00 DE=9E00.
6503 LD HL,$8960 HL=8960.
6506 CALL $6424 Call 6424.
6509 LD HL,$A101 HL=A101.
650C LD B,$0A B=0A.
650E LD (HL),$00 Write 00 to *HL.
6510 DEC H Decrease H by one.
6511 LD (HL),$00 Write 00 to *HL.
6513 INC H Increment H by one.
6514 INC L Increment L by one.
6515 DJNZ $650E Decrease counter by one and loop back to 650E until counter is zero.
6517 LD (HL),$23 Write 23 to *HL.
6519 EXX Switch to the shadow registers.
651A LD A,$0A A=0A.
651C NOP No operation.
651D LD B,A B=A.
651E EXX Switch to the shadow registers.
651F CALL GetRandomNumber Call GetRandomNumber.
6522 AND %00011111 Keep only bits 0-4.
6524 LD B,A B=A.
6525 ADD A,A A+=A.
6526 ADD A,A A+=A.
6527 ADD A,B A+=B.
6528 RRCA RRCA.
6529 RRCA
652A RRCA
652B LD L,A L=A.
652C AND %00011111 Keep only bits 0-4.
652E ADD A,$8A A+=8A.
6530 LD H,A H=A.
6531 LD A,L A=L.
6532 AND %11100000 Keep only bits 5-7.
6534 LD L,A L=A.
6535 CALL $6424 Call 6424.
6538 EXX Switch to the shadow registers.
6539 DJNZ $651E Decrease counter by one and loop back to 651E until counter is zero.
653B EXX Switch to the shadow registers.
653C LD HL,$8960 HL=8960.
653F CALL $6424 Call 6424.
6542 LD A,E A=E.
6543 LD HL,$02F4 HL=02F4.
6546 AND A Jump to 654B if A is not zero.
6547 JR NZ,$654B
6549 LD H,$FE H=FE.
654B ADD HL,DE HL+=DE.
654C LD (HL),$22 Write 22 to *HL.
654E LD B,$0A B=0A.
6550 INC L Increment L by one.
6551 LD (HL),$00 Write 00 to *HL.
6553 DEC H Decrease H by one.
6554 LD (HL),$00 Write 00 to *HL.
6556 INC H Increment H by one.
6557 DJNZ $6550 Decrease counter by one and loop back to 6550 until counter is zero.
6559 CALL $6440 Call 6440.
655C CALL $64AA Call 64AA.
655F CALL InitialiseNewLevel Call InitialiseNewLevel.
6562 RET Return.
Prev: 64FD Up: Map Next: 6563