Prev: 692B Up: Map Next: 6992
692C: Routine at 692C
Used by the routines at 6B2D and 76D7.
692C LD B,A B=A.
692D LD A,C A=C.
692E EXX Switch to the shadow registers.
692F LD HL,($781C) HL'=*781C.
6932 LD C,A C'=A.
6933 LD A,($781B) A=*781B.
6936 LD B,A B'=A.
6937 EXX Switch back to the normal registers.
6938 LD A,B A=B.
6939 ADD A,A A+=A.
693A LD L,A L=A.
693B ADC A,$BE A+=BE (including carry).
693D SUB L A-=L.
693E LD H,A H=A.
693F LD A,B A=B.
6940 LD C,(HL) C=*HL.
6941 INC L Increment L by one.
6942 LD B,(HL) B=*HL.
6943 BIT 5,A Test bit 5 of A.
6945 JP NZ,$6DA8 Jump to 6DA8 if {} is not zero.
6948 LD A,(BC) A=*BC.
6949 INC BC Increment BC by one.
694A ADD A,E A+=E.
694B LD E,A E=A.
694C LD A,(BC) A=*BC.
694D INC BC Increment BC by one.
694E ADD A,D A+=D.
694F LD D,A D=A.
6950 CP $10 Jump to 6959 if A is higher than 10.
6952 JR NC,$6959
6954 LD A,E Jump to 696E if E is lower than 20.
6955 CP $20
6957 JR C,$696E
6959 LD HL,$0008 BC+=0008.
695C ADD HL,BC
695D LD B,H
695E LD C,L
695F LD A,(BC) A=*BC.
Check for the terminator (FF+01 will set the Z flag).
6960 INC A Increment A by one.
6961 LD A,$01 A=01.
6963 JR NZ,$694E Jump to 694E if A was not zero (on line 6960).
We reached the terminator.
6965 INC BC Increment BC by one.
6966 LD A,(BC) Jump to 6949 if *BC is not equal to 80.
6967 CP $80
6969 JR NZ,$6949
696B JP $68EC Jump to 68EC.
696E LD A,D A=D.
696F ADD A,$40 A+=40.
6971 AND %01001000 Keep only bits 3 and 6.
6973 LD H,A H=A.
6974 LD A,D A=D.
6975 RRCA Rotate A right three positions (bits 0 to 2 are now in positions 5 to 7).
6976 RRCA
6977 RRCA
6978 AND %11100000 Keep only bits 5-7.
697A ADD A,E A+=E.
697B LD L,A L=A.
697C CALL DrawSprite Call DrawSprite.
697F INC H Increment H by one.
6980 CALL DrawSprite Call DrawSprite.
6983 CALL ScreenBufferToAttributeBuffer Call ScreenBufferToAttributeBuffer.
6986 JR $695F Jump to 695F.
6988 LD ($7825),A Write A to *7825.
698B EXX Switch to the shadow registers.
698C LD (HL),A Write A to *HL.
698D LD H,B H=B.
698E LD L,C L=C.
698F JP ColouriseSprite Jump to ColouriseSprite.
Prev: 692B Up: Map Next: 6992