Prev: 27944 Up: Map Next: 28054
27977: Routine at 6D49
Used by the routines at 27308 and 30423.
27977 LD A,(23672) A=*FRAMES.
27980 INC A Increment A by one.
27981 LD (30810),A Write A to *30810.
This entry point is used by the routines at 27648, 28184 and 30268.
27984 LD HL,30762 HL=Action.
27987 LD A,(HL) Jump to 27998 if *HL is not zero.
27988 AND A
27989 JR NZ,27998
27991 DEC L Decrease L by one.
27992 LD A,(HL) Jump to 28023 if *HL is zero.
27993 AND A
27994 JR Z,28023
27996 LD A,2 A=2.
27998 LD L,204 L=204.
28000 LD B,2 B=2.
28002 LD D,(HL) D=*HL.
28003 INC L Increment L by one.
28004 LD E,(HL) E=*HL.
28005 OUT (254),A OUT 254
28007 XOR %00010000 Flip bits 4.
28009 DEC E Decrease E by one.
28010 JR NZ,28009 Jump to 28009 until E is zero.
28012 CALL 60416 Call 60416.
28015 DEC D Decrease D by one.
28016 JR NZ,28004 Jump to 28004 until D is zero.
28018 INC L Increment L by one.
28019 DJNZ 28002 Decrease counter by one and loop back to 28002 until counter is zero.
28021 JR 27998 Jump to 27998.
28023 LD A,(30773) A=*30773.
28026 SUB 155 A-=155.
28028 LD C,A C=A.
28029 LD D,20 D=20.
28031 LD L,204 L=204.
28033 XOR A A=0.
28034 LD B,C B=C.
28035 OUT (254),A OUT 254
28037 XOR %00010000 Flip bits 4.
28039 LD E,(HL) E=*HL.
28040 DEC E Decrease E by one.
28041 JR NZ,28040 Jump to 28040 until E is zero.
28043 CALL 60416 Call 60416.
28046 DJNZ 28039 Decrease counter by one and loop back to 28039 until counter is zero.
28048 INC L Increment L by one.
28049 DEC D Decrease D by one.
28050 JR NZ,28034 Jump to 28034 until D is zero.
28052 JR 28029 Jump to 28029.
Prev: 27944 Up: Map Next: 28054