if EGA
VARIABLES = #4000
else
VARIABLES = #C000
endif
VAR0000 = VARIABLES+#0000
VAR0002 = VARIABLES+#0002
VAR0004 = VARIABLES+#0004
VAR0005 = VARIABLES+#0005
VAR0007 = VARIABLES+#0007
VAR0009 = VARIABLES+#0009
VAR000B = VARIABLES+#000B
VAR000C = VARIABLES+#000C
VAR000D = VARIABLES+#000D
VAR000E = VARIABLES+#000E
VAR000F = VARIABLES+#000F
VAR0011 = VARIABLES+#0011 ;erics
VAR0012 = VARIABLES+#0012
VAR0013 = VARIABLES+#0013
VAR0014 = VARIABLES+#0014
VAR0015 = VARIABLES+#0015
VAR0016 = VARIABLES+#0016
VAR0017 = VARIABLES+#0017
VAR0018 = VARIABLES+#0018
VAR0019 = VARIABLES+#0019
VAR001A = VARIABLES+#001A
VAR001B = VARIABLES+#001B
VAR001C = VARIABLES+#001C
VAR001D = VARIABLES+#001D
VAR001E = VARIABLES+#001E
VAR005A = VARIABLES+#005A
VAR005B = VARIABLES+#005B
VAR0070 = VARIABLES+#0070
VAR0071 = VARIABLES+#0071
VAR0073 = VARIABLES+#0073
VAR0075 = VARIABLES+#0075
VAR0077 = VARIABLES+#0077
VAR0079 = VARIABLES+#0079
VAR007B = VARIABLES+#007B
VAR007D = VARIABLES+#007D ;1=dec erics
VAR007E = VARIABLES+#007E
VAR007F = VARIABLES+#007F
VAR0080 = VARIABLES+#0080
VAR0081 = VARIABLES+#0081
VAR0082 = VARIABLES+#0082
VAR0083 = VARIABLES+#0083
VAR0084 = VARIABLES+#0084
VAR0085 = VARIABLES+#0085
VAR0086 = VARIABLES+#0086
VAR0088 = VARIABLES+#0088
VAR008A = VARIABLES+#008A
VAR008C = VARIABLES+#008C
VAR008D = VARIABLES+#008D
VAR038C = VARIABLES+#038C
VAR038D = VARIABLES+#038D
VAR03AB = VARIABLES+#03AB
VAR03EF = VARIABLES+#03EF
VAR046C = VARIABLES+#046C
VAR047C = VARIABLES+#047C
VAR0484 = VARIABLES+#0484
VAR066C = VARIABLES+#066C
VAR066D = VARIABLES+#066D
VAR068C = VARIABLES+#068C
VAR068D = VARIABLES+#068D
VAR098C = VARIABLES+#098C
; ORG #9000
;
L_8000 ; LD SP,#6fff
CALL L_906A
CALL L_90FD
LD HL,#0000
LD (VAR0002),HL
LD (VAR0000),HL
JP L_82A4
;
L_8015 LD IY,VAR0005
CALL L_8027
LD IY,VAR0007
CALL L_8027
LD IY,VAR0009
L_8027 LD L,(IY+#00)
LD H,(IY+#01)
LD A,(HL)
OR A
RET Z
L_8030 LD E,(HL)
INC HL
LD D,(HL)
INC HL
LD C,(HL)
INC HL
LD B,(HL)
INC HL
CALL L_92A6 ;sound
LD A,(HL)
OR A
JR NZ,L_8030
INC HL
LD (IY+#00),L
LD (IY+#01),H
RET
;
L_8047 LD HL,#0000
LD (VAR0000),HL
LD A,#01
LD (VAR0012),A
LD A,#03
LD (VAR0011),A ;erics
CALL L_9140
CALL DrawScreen
LD HL,L_9BC6
CALL L_9114
LD HL,L_9C28
CALL L_9114
L_8069
;retry
LD HL,#03E8
LD (VAR000F),HL
XOR A
LD (VAR001B),A
LD (VAR001A),A
LD (VAR0082),A
LD (VAR0085),A
LD (VAR0014),A
LD (VAR0013),A
LD (VAR0016),A
LD (VAR0017),A
LD (VAR0018),A
LD (VAR007D),A
LD A,#01
LD (VAR000D),A
CALL L_81E7
CALL L_8603
CALL L_8617
CALL L_89E5
CALL L_9140
CALL DrawScreen
CALL L_8FEE
CALL L_8E5F
CALL L_8EC8
XOR A
LD (VAR0082),A
LD (VAR0085),A
MAINLOOP;L_80B5
;YIELDGETKEY
halt
curkey=$+1
ld a,0
cp key_esc
jp z,quiter ;Alone Coder
cp key_redraw
call z,redraw
CALL L_8746
CALL L_8FFC
CALL L_8E5F
CALL L_89F9
CALL L_8ADC
CALL L_897F
CALL L_8CDD
CALL L_8764
CALL L_8674
CALL L_86FF
CALL L_88AD
CALL L_864C
CALL L_86D8
CALL L_8C6D
CALL L_85B5
CALL L_8559
CALL L_8520
CALL L_8D9B ;печатает счёт
CALL L_8E0F
LD A,(VAR007D)
OR A
JP NZ,L_81D7 ;dec erics
LD A,(VAR0018)
OR A
JP NZ,L_81A1
LD A,(VAR001A)
OR A
JR Z,MAINLOOP;L_80B5
LD BC,#0014
L_8105 PUSH BC
CALL L_821D
POP BC
DEC BC
LD A,B
OR C
JP NZ,L_8105
LD HL,(VAR000F)
LD A,H
OR L
JR Z,L_813F
L_8117 PUSH HL
CALL L_823C
LD HL,L_8173
LD (VAR0007),HL
POP HL
LD BC,#000A
OR A
SBC HL,BC
LD (VAR000F),HL
LD DE,(VAR0000)
INC DE
LD (VAR0000),DE
LD A,H
OR L
JP NZ,L_8117
CALL L_823C
CALL L_823C
L_813F LD A,(VAR0012)
INC A
LD (VAR0012),A
PUSH AF
AND #03
LD HL,L_8181
CALL Z,L_816F
POP AF
AND #FC
JP Z,L_8069 ;retry
AND #0C
LD C,A
LD B,#00
ADD HL,BC
LD E,(HL)
INC HL
LD D,(HL)
INC HL
PUSH HL
EX DE,HL
CALL L_9114
POP HL
LD E,(HL)
INC HL
LD D,(HL)
EX DE,HL
CALL L_9114
JP L_8069 ;retry
;
L_816F LD HL,L_8191
RET
;
L_8173 DB #2C,#01,#05,#00,#DC,#05,#01,#00
DB #C8,#00,#05,#00,#00,#00
;
L_8181 DW L_9F78
DW L_9F8E
DW L_9F4C
DW L_9F62
DW L_9FA4
DW L_9FBA
DW L_9EC8
DW L_9EDE
L_8191 DW L_9E9C
DW L_9EB2
DW L_9EF4
DW L_9F0A
DW L_9E70
DW L_9E86
DW L_9F20
DW L_9F36
;
L_81A1 LD B,#0A
LD HL,L_81B3
LD (VAR0009),HL
L_81A9 PUSH BC
CALL L_821D
POP BC
DJNZ L_81A9
JP L_8069 ;retry
;
L_81B3 DB #EE,#00,#14,#00,#00,#D4,#00,#14
DB #00,#00,#BD,#00,#14,#00,#00,#B2
DB #00,#14,#00,#00,#9F,#00,#14,#00
DB #00,#8E,#00,#14,#00,#00,#7E,#00
DB #14,#00,#00,#00
;
L_81D7 CALL L_9014 ;pause
LD A,(VAR0011) ;erics
DEC A
OR A
LD (VAR0011),A ;erics
JR Z,L_820D ;game over
JP L_8069 ;retry
;
L_81E7 LD A,(VAR0012)
CP #06
JR C,L_81F0
LD A,#05
L_81F0 DEC A
ADD A,A
LD HL,L_8203
LD C,A
LD B,#00
ADD HL,BC
LD A,(HL)
LD (VAR0015),A
INC HL
LD A,(HL)
LD (VAR0019),A
RET
;
L_8203 DB #01,#10,#02,#15,#03,#1A,#02,#1F
DB #04,#24
;
L_820D
;game over
LD BC,#0005
L_8210 PUSH BC
CALL L_821D
POP BC
DEC BC
LD A,B
OR C
JR NZ,L_8210
JP L_82A4
;
L_821D CALL L_8746
CALL L_8FFC
CALL L_8E5F
CALL L_8ADC
CALL L_8674
CALL L_86FF
CALL L_88AD
CALL L_8C6D
CALL L_89F9
CALL L_8D9B
RET
;
L_823C CALL L_8746
CALL L_8FFC
CALL L_8E5F
CALL L_8674
CALL L_86FF
CALL L_8C6D
CALL L_8D9B
RET
;
L_8252
;jr $
LD (HL),A
OR A
RET Z
CALL L_9285
OR A
JR NZ,L_8252
POP HL
L_825C CALL L_9285
OR A
JR NZ,L_825C
CALL L_9140
L_8265 CALL DrawScreen
CALL L_850A
;
DB #05,#0C
DB "SELECT"
DB #00
DB #07,#07
DB "KEYBOARD OR JOYSTICK"
DB #00
DB #09,#0A
DB "PRESS K OR J"
DB #00,#FF
;
CALL L_9285
OR A
JR Z,L_8265
JP L_8047
;
L_82A4 CALL L_9140
CALL DrawScreen
LD HL,L_92C2
CALL L_9114
CALL L_84F2
CALL L_84DE
LD A,#FF
LD (VAR0004),A
L_82BB CALL L_9285
LD HL,VAR0004
CP (HL)
CALL NZ,L_8252
CALL L_8746
LD BC,VAR038C
LD D,#C0
LD E,#89
L_82CF LD A,E
LD (BC),A
INC BC
DEC D
JR NZ,L_82CF
LD BC,#5A52
CALL L_8FBC
DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
LD BC,#5A72
CALL L_8FBC
DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
LD BC,#5A92
CALL L_8FBC
DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
CALL L_850A
DB #01,#0C
DB " ",#00
DB #02,#0C
DB " ERIC ",#00
DB #03,#06
DB " ",#00
DB #04,#06
DB " AND THE FLOATERS ",#00
DB #0B,#0E
DB "BOMB",#00
DB #12,#13
DB "PRESS SPACE",#00
DB #13,#13
DB " KEY TO ",#00
DB #14,#13
DB "START GAME ",#00
DB #0A,#07
DB "UP",#00
DB #0B,#05
DB #10,#14,#14,#14,#11,#00
DB #0C,#05
DB #15,"W",#19,"I",#16,#00
DB #0D,#05
DB #12,#14,#14,#14,#13,#00
DB #12,#0B
DB "BOMB",#00
DB #13,#0A,#10,#14,#14,#14,#14,#14,#11,#00
DB #14,#0A
DB #15,"SPACE",#16,#00
DB #15,#0A
DB #12,#14,#14,#14,#14,#14,#13,#00
DB #0D,#01
DB "LEFT",#00
DB #0E,#00
DB #10,#14,#14,#14,#11,#00
DB #0F,#00
DB #15,"A",#19,"J",#16,#00
DB #10,#00
DB #12,#14,#14,#14,#13,#00
DB #0D,#0A
DB "RIGHT",#00
DB #0E,#0A
DB #10,#14,#14,#14,#11,#00
DB #0F,#0A
DB #15,"D",#19,"L",#16,#00
DB #10,#0A
DB #12,#14,#14,#14,#13,#00
DB #0E,#14
DB "HIGH",#00
DB #0F,#14
DB "SCORE!",#00
DB #FF
LD HL,(VAR0002)
CALL Pr12345
CALL L_850A
DB #11,#05
DB "DOWN",#00
DB #12,#05
DB #10,#14,#14,#14,#11,#00
DB #13,#05
DB #15,"X",#19,"M",#16,#00
DB #14,#05
DB #12,#14,#14,#14,#13,#00
DB #0B,#14
DB "LAST",#00
DB #0C,#14
DB "SCORE!",#00
DB #FF
LD HL,(VAR0000)
CALL Pr12345
CALL L_850A
DB #17,#05
DB #5B," HUDSON SOFT ",#01,#09,#08,#03,#00
DB #07,#02
DB "ERIC FLOATER BONUS EXIT",#00
DB #08,#12
DB "POINTS PORTAL",#00
DB #FF
;
LD BC,VAR046C
LD A,#8C
CALL L_8C4F
CALL L_8ADC
CALL L_88AD
LD A,(VAR0071)
OR A
JR NZ,L_84CB
LD A,(VAR0070)
XOR #02
LD (VAR0070),A
LD A,(VAR005A)
XOR #02
LD (VAR005A),A
L_84CB LD BC,VAR047C
LD A,#0A
CALL L_8C4F
LD BC,VAR0484
LD A,#0E
CALL L_8C4F
JP L_82BB
;
L_84DE CALL L_89E5
LD IX,VAR005B
LD (IX+#00),#01
LD (IX+#01),#0C
LD (IX+#02),#0A
RET
;
L_84F2 CALL L_8603
LD IX,VAR001E
LD (IX+#00),#01
LD (IX+#01),#07
LD (IX+#02),#07
LD (IX+#03),#01
RET
;
L_850A EX (SP),HL
CALL L_8511
INC HL
EX (SP),HL
RET
;
L_8511 LD A,(HL)
INC A
RET Z
LD B,(HL)
INC HL
LD C,(HL)
INC HL
CALL L_9126
CALL L_9138
JR L_8511
;
L_8520 LD A,(VAR007B)
OR A
RET NZ
LD HL,(VAR000F)
LD A,H
OR L
JR Z,L_8535
LD BC,#000A
SBC HL,BC
LD (VAR000F),HL
RET
;
L_8535 LD A,(VAR001B)
OR A
RET NZ
CALL L_8FEE
LD A,#01
LD (VAR001B),A
XOR A
LD (VAR0085),A
LD (VAR0082),A
LD A,#01
LD (VAR0016),A
LD (VAR0017),A
XOR A
LD (VAR0081),A
LD (VAR0083),A
RET
;
L_8559 LD BC,(VAR000B)
LD A,(VAR0085)
OR A
JR Z,L_8579
LD A,(VAR0084)
CP B
JR NZ,L_8579
LD A,(VAR0083)
CP C
JR NZ,L_8579
XOR A
LD (VAR0085),A
LD A,#01
LD (VAR0018),A
RET
;
L_8579 LD A,(VAR0082)
OR A
RET Z
LD A,(VAR0081)
CP B
RET NZ
LD A,(VAR0080)
CP C
RET NZ
XOR A
LD (VAR0082),A
CALL L_8F8C
AND #3F
ADD A,A
SET 4,A
LD C,A
LD B,#00
LD HL,(VAR0000)
ADD HL,BC
LD (VAR0000),HL
LD HL,L_85A5
LD (VAR0005),HL
RET
;
L_85A5 DB #D4,#00,#14,#00,#00,#B2,#00,#14
DB #00,#00,#8E,#00,#14,#00
L_85B3
DB #00,#00
;
L_85B5 LD A,(VAR0013)
OR A
RET Z
LD A,(VAR0014)
OR A
RET NZ
LD BC,(VAR001C)
CALL L_9008
CALL L_8726
CP #20
RET NZ
LD A,(VAR0015)
ADD A,#04
LD (VAR0015),A
LD IX,VAR001E
LD D,#04
L_85DA LD A,(IX+#00)
INC A
JR Z,L_85FD
DEC A
JR NZ,L_85F6
LD (IX+#00),#01
LD A,(VAR001C)
LD (IX+#01),A
LD A,(VAR001D)
LD (IX+#02),A
DEC D
JR Z,L_85FD
L_85F6 LD BC,#0007
ADD IX,BC
JR L_85DA
;
L_85FD LD A,#01
LD (VAR0014),A
RET
;
L_8603 LD IX,VAR001E
L_8607 LD A,(IX+#00)
INC A
RET Z
LD (IX+#00),#00
LD BC,#0007
ADD IX,BC
JR L_8607
;
L_8617 LD A,(VAR0015)
LD B,A
LD IX,VAR001E
L_861F LD HL,L_8644
CALL L_8F8C
AND #03
ADD A,A
ADD A,L
LD L,A
LD A,#00
ADC A,H
LD H,A
LD A,(HL)
LD (IX+#01),A
INC HL
LD A,(HL)
LD (IX+#02),A
LD (IX+#00),#01
LD DE,#0007
ADD IX,DE
DEC B
JR NZ,L_861F
RET
;
L_8644 DB #01,#01,#1D,#01,#01,#13,#1D,#13
;
L_864C LD A,(VAR0016)
OR A
RET NZ
LD BC,(VAR0080)
LD D,B
LD E,C
CALL L_9008
CALL L_8726
CP #20
RET NZ
LD B,D
LD C,E
CALL L_9126
CALL L_8726
CP #20
RET NZ
LD A,#01
LD (VAR0082),A
LD (VAR0016),A
RET
;
L_8674 LD A,(VAR0082)
OR A
RET Z
LD DE,(VAR0080)
LD B,D
LD C,E
CALL L_9126
LD A,#0A
CALL L_869C
INC BC
INC A
CALL L_869C
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
ADD A,#0F
CALL L_869C
INC BC
INC A
JP L_869C
;
L_869C PUSH AF
LD A,(BC)
CP #E0
JR C,L_86B7
XOR A
LD (VAR0082),A
LD A,(VAR0080)
LD (VAR001C),A
LD A,(VAR0081)
LD (VAR001D),A
LD A,#01
LD (VAR0013),A
L_86B7 POP AF
LD (BC),A
RET
;
L_86BA PUSH AF
LD A,(BC)
CP #E0
JR C,L_86D5
XOR A
LD (VAR0085),A
LD A,(VAR0083)
LD (VAR001C),A
LD A,(VAR0084)
LD (VAR001D),A
LD A,#01
LD (VAR0013),A
L_86D5 POP AF
LD (BC),A
RET
;
L_86D8 LD A,(VAR0017)
OR A
RET NZ
LD BC,(VAR0083)
LD D,B
LD E,C
CALL L_9008
CALL L_8726
CP #20
RET NZ
LD B,D
LD C,E
CALL L_9126
CALL L_8726
CP #20
RET NZ
LD A,#01
LD (VAR0085),A
LD (VAR0017),A
L_86FF LD A,(VAR0085)
OR A
RET Z
LD BC,(VAR0083)
CALL L_9126
LD A,#0E
CALL L_86BA
INC BC
INC A
CALL L_86BA
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
ADD A,#0F
CALL L_86BA
INC BC
INC A
CALL L_86BA
RET
;
L_8726 LD A,(BC)
CP #20
RET NZ
INC BC
LD A,(BC)
CP #20
RET NZ
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
LD A,(BC)
CP #20
RET NZ
INC BC
LD A,(BC)
RET
;
L_873C
;increase (hl) mod (hl+1)
LD A,(HL)
INC A
INC HL
CP (HL)
JR C,L_8743
XOR A
L_8743 DEC HL
LD (HL),A
RET
;
L_8746 LD HL,VAR0071
CALL L_873C ;increase (hl) mod (hl+1)
LD HL,VAR0077
CALL L_873C ;increase (hl) mod (hl+1)
LD HL,VAR007B
CALL L_873C ;increase (hl) mod (hl+1)
LD HL,VAR0079
CALL L_873C ;increase (hl) mod (hl+1)
CALL DrawScreen
JP L_8015
;
L_8764 LD A,(VAR0077)
OR A
RET NZ
LD A,(VAR005A)
XOR #02
LD (VAR005A),A
LD IX,VAR001E
L_8775 LD A,(IX+#00)
INC A
RET Z
DEC A
CP #01
JP NZ,L_8831
LD A,(IX+#04)
DEC A
LD D,A
CP #FF
JR NZ,L_879A
LD A,(IX+#03)
DEC A
CP #FF
JR NZ,L_8793
LD A,#03
L_8793 LD (IX+#03),A
LD A,(VAR0019)
LD D,A
L_879A LD A,D
LD (IX+#04),A
LD A,(IX+#03)
OR A
JR Z,L_87AC
LD A,(VAR0077)
AND #03
JP NZ,L_8831
L_87AC LD A,(IX+#03)
OR A
JR Z,L_87F3
LD A,(IX+#04)
AND #0F
OR A
JR Z,L_87F3
AND #03
OR A
JR Z,L_87DF
CALL L_8854
CP #80
JR NC,L_87CB
CALL L_8839
JR L_8831
;
L_87CB CALL L_8F8C
AND #03
LD (IX+#05),A
CALL L_8854
CP #80
JR NC,L_8831
CALL L_8839
JR L_8831
;
L_87DF CALL L_8F8C
AND #03
LD (IX+#05),A
CALL L_8854
CP #80
JR NC,L_8831
CALL L_8839
JR L_8831
;
L_87F3 LD A,(VAR000B)
LD B,A
LD A,(IX+#01)
CP B
JR Z,L_8810
JR NC,L_8805
LD (IX+#05),#01
JR L_8809
;
L_8805 LD (IX+#05),#00
L_8809 CALL L_8854
CP #80
JR C,L_882E
L_8810 LD A,(VAR000C)
LD B,A
LD A,(IX+#02)
CP B
JR Z,L_8831
JR NC,L_8822
LD (IX+#05),#03
JR L_8826
;
L_8822 LD (IX+#05),#02
L_8826 CALL L_8854
CP #80
JP NC,L_8831
L_882E CALL L_8839
L_8831 LD BC,#0007
ADD IX,BC
JP L_8775
;
L_8839 LD A,(IX+#05)
ADD A,A
LD HL,L_88A5
LD B,#00
LD C,A
ADD HL,BC
LD A,(IX+#02)
ADD A,(HL)
LD (IX+#02),A
INC HL
LD A,(IX+#01)
ADD A,(HL)
LD (IX+#01),A
RET
;
L_8854 LD HL,L_8895
LD A,(IX+#05)
ADD A,A
ADD A,A
LD C,A
LD B,#00
ADD HL,BC
LD A,(IX+#02)
ADD A,(HL)
LD B,A
INC HL
LD A,(IX+#01)
ADD A,(HL)
LD C,A
PUSH BC
CALL L_9126
LD A,(BC)
POP BC
CP #80
RET NC
CALL L_9008
LD A,(BC)
CP #80
RET NC
INC HL
LD A,(IX+#02)
ADD A,(HL)
LD B,A
INC HL
LD A,(IX+#01)
ADD A,(HL)
LD C,A
PUSH BC
CALL L_9126
LD A,(BC)
POP BC
CP #80
RET NC
CALL L_9008
LD A,(BC)
RET
;
L_8895 DB #00,#FF,#01,#FF,#00,#02,#01,#02
DB #FF,#00,#FF,#01,#02,#00,#02,#01
L_88A5 DB #00,#FF,#00,#01,#FF,#00,#01,#00
;
L_88AD LD IX,VAR001E
L_88B1 LD A,(IX+#00)
INC A
RET Z
DEC A
JP Z,L_896A
CP #01
JP Z,L_893E
LD C,(IX+#01)
LD B,(IX+#02)
CALL L_9126
LD A,(IX+#00)
ADD A,A
ADD A,#1E
CP #30
JR C,L_88D9
LD A,#20
CALL L_8C60
JR L_88DC
;
L_88D9 CALL L_8C4F
L_88DC PUSH HL
LD HL,VAR0075
CALL L_873C
POP HL
LD A,(VAR0075)
OR A
JP NZ,L_896A
LD A,(IX+#00)
INC A
CP #0A
JR Z,L_8908
LD (IX+#00),A
ADD A,A
ADD A,A
ADD A,A
ADD A,A
LD E,A
LD D,#00
PUSH BC
LD BC,#000F
CALL L_92A6 ;sound
POP BC
JP L_896A
;
L_8908 XOR A
LD (IX+#00),A
LD A,(IX+#03)
ADD A,A
ADD A,A
INC A
INC A
LD B,A
CALL L_8F8C
AND #03
INC A
ADD A,B
LD C,A
LD B,#00
LD HL,(VAR0000)
ADD HL,BC
LD (VAR0000),HL
LD A,(VAR000D)
CP #06
JR NC,L_896A
LD A,(VAR0015)
DEC A
LD (VAR0015),A
JR NZ,L_896A
LD A,(VAR001A)
INC A
LD (VAR001A),A
JR L_896A
;
L_893E LD C,(IX+#01)
LD B,(IX+#02)
CALL L_9126
LD A,(IX+#03)
ADD A,A
ADD A,A
ADD A,#C0
LD HL,VAR005A
ADD A,(HL)
CALL L_8972
INC A
INC BC
CALL L_8972
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
ADD A,#0F
CALL L_8972
INC BC
INC A
CALL L_8972
L_896A LD BC,#0007
ADD IX,BC
JP L_88B1
;
L_8972 PUSH AF
LD A,(BC)
CP #E0
JR C,L_897C
LD (IX+#00),#02
L_897C POP AF
LD (BC),A
RET
;
L_897F LD A,(VAR000D)
CP #06
RET NC
LD A,(VAR0012)
AND #03
JR Z,L_8991
CALL L_91B3 ;a=0:0/break pressed, -1:not pressed
INC A
RET NZ ;pressed
L_8991 LD IX,VAR005B
L_8995 LD A,(IX+#00)
INC A
RET Z
DEC A
OR A
JR NZ,L_89D9
LD BC,(VAR000B)
LD (IX+#01),C
LD (IX+#02),B
CALL L_9008
LD D,B
LD E,C
CALL L_89E1
RET NZ
INC BC
CALL L_89E1
RET NZ
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
CALL L_89E1
RET NZ
INC BC
CALL L_89E1
RET NZ
LD B,D
LD C,E
LD A,#60
CALL L_8C4F
LD A,#01
LD (IX+#00),A
XOR A
LD (IX+#03),A
LD (VAR000D),A
RET
;
L_89D9 LD BC,#0004
ADD IX,BC
JP L_8995
;
L_89E1 LD A,(BC)
CP #20
RET
;
L_89E5 LD IX,VAR005B
L_89E9 LD A,(IX+#00)
INC A
RET Z
LD (IX+#00),#00
LD BC,#0004
ADD IX,BC
JR L_89E9
;
L_89F9 LD A,(VAR0070)
XOR #02
LD (VAR0070),A
LD IX,VAR005B
L_8A05 LD A,(IX+#00)
INC A
RET Z
DEC A
JR Z,L_8A46
CP #05
JR NC,L_8A1C
LD A,(IX+#03)
INC A
LD (IX+#03),A
CP #07
JR NZ,L_8A46
L_8A1C XOR A
LD (IX+#03),A
LD A,(VAR0079)
OR A
JR NZ,L_8A46
LD A,(IX+#00)
INC A
CP #0E
JR Z,L_8A42
LD (IX+#00),A
CP #05
JR C,L_8A46
CP #06
JR Z,L_8A4D
LD A,(VAR000D)
CP #06
JR NC,L_8A46
JR L_8A46
;
L_8A42 XOR A
LD (IX+#00),A
L_8A46 LD BC,#0004
ADD IX,BC
JR L_8A05
;
L_8A4D LD HL,L_8A55
LD (VAR0007),HL
JR L_8A46
;
L_8A55 DB #50,#00,#08,#00,#A0,#00,#08,#00
DB #40,#01,#08,#00,#80,#02,#08,#00
DB #00,#C6,#02,#04,#00,#2A,#03,#04
DB #00,#00,#D0,#02,#03,#00,#34,#03
DB #03,#00,#00,#DA,#02,#03,#00,#3E
DB #03,#03,#00,#00,#E4,#02,#03,#00
DB #48,#03,#03,#00,#00,#EE,#02,#02
DB #00,#52,#03,#02,#00,#00,#F8,#02
DB #02,#00,#5C,#03,#02,#00,#00,#02
DB #03,#02,#00,#66,#03,#02,#00,#00
DB #0C,#03,#02,#00,#70,#03,#02,#00
DB #00,#16,#03,#02,#00,#7A,#03,#02
DB #00,#00,#20,#03,#01,#00,#84,#03
DB #01,#00,#00,#2A,#03,#01,#00,#8E
DB #03,#01,#00,#00,#34,#03,#01,#00
DB #98,#03,#01,#00,#00,#3E,#03,#01
DB #00,#A2,#03,#01,#00,#00,#00
;
L_8ADC LD IX,VAR005B
L_8AE0 LD A,(IX+#00)
INC A
RET Z
DEC A
JR Z,L_8B3A
CP #0D
JR Z,L_8B4E
CP #05
JR C,L_8AF8
ADD A,A
ADD A,#D6
EXX
LD D,A
EXX
JR L_8B60
;
L_8AF8 DEC A
ADD A,A
ADD A,A
LD D,A
LD A,(VAR0070)
ADD A,D
ADD A,#60
LD D,A
EXX
LD D,A
EXX
LD A,(IX+#01)
LD C,A
EXX
LD C,A
EXX
LD A,(IX+#02)
LD B,A
EXX
LD B,A
EXX
CALL L_9008
CALL L_8B41
INC BC
INC D
CALL L_8B41
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
LD A,#0F
ADD A,D
LD D,A
CALL L_8B41
INC BC
INC D
CALL L_8B41
EXX
CALL L_9126
LD A,D
CALL L_8C4F
EXX
L_8B3A LD BC,#0004
ADD IX,BC
JR L_8AE0
;
L_8B41 LD A,(BC)
CP #E0
RET C
LD (IX+#00),#04
LD (IX+#03),#06
RET
;
L_8B4E LD A,(IX+#01)
LD C,A
LD A,(IX+#02)
LD B,A
CALL L_9008
LD A,#20
CALL L_8C60
JR L_8B3A
;
L_8B60 LD C,(IX+#01)
LD B,(IX+#02)
CALL L_9008
EXX
LD A,D
EXX
CALL L_8C4F
EXX
LD A,D
EXX
INC A
INC A
CP #F0
JR C,L_8B7A
LD A,#20
L_8B7A EXX
LD E,A
EXX
LD HL,L_9026
L_8B80 LD A,(HL)
OR A
JR Z,L_8B88
ADD A,A
OR A
JR Z,L_8B3A
L_8B88 LD A,(HL)
INC HL
ADD A,(IX+#02)
LD B,A
LD A,(HL)
INC HL
ADD A,(IX+#01)
LD C,A
CALL L_8BF5
CP #88
JR NZ,L_8BA9
JR L_8BA1
;
CP #89
JR NZ,L_8BA9
L_8BA1 INC HL
INC HL
INC HL
INC HL
INC HL
INC HL
JR L_8B80
;
L_8BA9 LD A,(HL)
INC HL
ADD A,(IX+#02)
LD B,A
LD A,(HL)
INC HL
ADD A,(IX+#01)
LD C,A
CALL L_8BF5
CP #80
JR C,L_8BC6
CP #8A
JR NC,L_8BC6
INC HL
INC HL
INC HL
INC HL
JR L_8B80
;
L_8BC6 LD A,(HL)
INC HL
ADD A,(IX+#02)
LD B,A
LD A,(HL)
INC HL
ADD A,(IX+#01)
LD C,A
CALL L_8C2E
EX AF,AF'
CP #80
JR C,L_8BE3
CP #8A
JR NC,L_8BE3
EX AF,AF'
INC HL
INC HL
JR L_8B80
;
L_8BE3 EX AF,AF'
LD A,(HL)
INC HL
ADD A,(IX+#02)
LD B,A
LD A,(HL)
INC HL
ADD A,(IX+#01)
LD C,A
CALL L_8C2E
JR L_8B80
;
L_8BF5 PUSH BC
CALL L_9126
LD A,(BC)
POP BC
CP #88
RET Z
CP #89
RET Z
CALL L_9008
LD A,(BC)
CP #88
RET Z
CP #80
JR C,L_8C12
CP #8A
JR NC,L_8C12
JR L_8C17
;
L_8C12 EXX
LD A,E
EXX
JR L_8C20
;
L_8C17 CALL L_8C22
CP #88
JR NZ,L_8C20
LD A,#20
L_8C20 LD (BC),A
RET
;
L_8C22 PUSH AF
EX (SP),HL
LD A,(VAR0079)
OR A
JR NZ,L_8C2B
INC H
L_8C2B EX (SP),HL
POP AF
RET
;
L_8C2E PUSH BC
CALL L_9126
LD A,(BC)
EX AF,AF'
LD A,(BC)
EX AF,AF'
POP BC
CP #88
RET Z
CP #89
RET Z
CALL L_9008
LD A,(BC)
CP #8A
JR NC,L_8C4A
CP #80
JR C,L_8C4A
RET
;
L_8C4A EXX
LD A,E
EXX
LD (BC),A
RET
;
L_8C4F LD (BC),A
INC BC
INC A
LD (BC),A
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
ADD A,#0F
LD (BC),A
INC BC
INC A
LD (BC),A
RET
;
L_8C60 LD (BC),A
INC BC
LD (BC),A
LD HL,#001F
ADD HL,BC
LD B,H
LD C,L
LD (BC),A
INC BC
LD (BC),A
RET
;
L_8C6D LD A,(VAR000D)
CP #06
JR NC,L_8C95
CP #02
JR NC,L_8C87
OR A
JR NZ,L_8C83
INC A
LD (VAR000D),A
LD E,#8A
JR L_8C9D
;
L_8C83 LD E,#8C
JR L_8C9D
;
L_8C87 DEC A
DEC A
ADD A,A
ADD A,A
ADD A,#A0
LD E,A
LD A,(VAR000E)
ADD A,E
LD E,A
JR L_8C9D
;
L_8C95 SUB #06
ADD A,A
;LD E,A
;LD A,#4E ;last die sprite
;SUB E
add a,0x60 ;die sprites (8 шт. 16x16) - реально там нарисована бомба
LD E,A
L_8C9D LD A,(VAR000C)
LD B,A
LD A,(VAR000B)
LD C,A
CALL L_9126
CALL L_8CBF
CALL L_8CBF
LD HL,#001E
ADD HL,BC
LD B,H
LD C,L
LD A,E
ADD A,#0E
LD E,A
CALL L_8CBF
CALL L_8CBF
RET
;
L_8CBF LD A,(BC)
LD D,A
LD A,E
LD (BC),A
INC BC
INC E
LD A,D
CP #C0
RET C
LD A,(VAR000D)
CP #06
RET NC
LD A,#06
LD (VAR000D),A
RET
;
L_8CD5 DB #00,#01,#FF,#00,#01,#00,#00,#FF
;
L_8CDD LD A,(VAR0071)
OR A
RET NZ
LD A,(VAR000D)
CP #06
JR C,L_8D12
CP #0D
JR Z,L_8D0C ;set die flag
LD HL,VAR0073
CALL L_873C
LD A,(VAR0073)
OR A
RET NZ
LD A,(VAR000D)
INC A
LD (VAR000D),A
ADD A,A
ADD A,A
ADD A,A
LD E,A
LD D,#00
LD BC,#000F
CALL L_92A6 ;sound
RET
;
L_8D0C LD A,#01
LD (VAR007D),A ;1=dec erics
RET
;
L_8D12 LD B,#02
CALL L_91D9 ;out: a=0 или код направления (1=up, 2=up-right, 3=right, 4=down-right, 5=down, 6=down-left, 7=left, 8=up-left)
CP #05
JR Z,L_8D29
INC B
CP #07
JR Z,L_8D29
INC B
CP #03
JR Z,L_8D29
INC B
CP #01
RET NZ
L_8D29 LD A,(VAR000E)
XOR #02
LD (VAR000E),A
LD HL,L_8CD5
LD A,B
LD E,A
DEC A
DEC A
ADD A,A
LD B,#00
LD C,A
ADD HL,BC
LD A,(VAR000B)
ADD A,(HL)
LD C,A
LD A,(VAR000C)
INC HL
ADD A,(HL)
LD B,A
PUSH BC
CALL L_9126
LD D,#00
CALL L_8D8A
CALL L_8D8A
LD HL,#001E
ADD HL,BC
LD B,H
LD C,L
CALL L_8D8A
CALL L_8D8A
LD A,D
OR A
POP BC
RET NZ
LD A,B
LD (VAR000C),A
LD A,C
LD (VAR000B),A
LD A,E
LD (VAR000D),A
LD B,#08
LD A,(VAR000E)
SLA A
SLA A
SLA A
OR #40
LD E,A
LD D,#00
PUSH BC
LD BC,#0005
CALL L_92A6 ;sound
POP BC
RET
L_8D8A LD A,(BC)
INC BC
CP #88
JR NZ,L_8D91
INC D
L_8D91 CP #89
JR NZ,L_8D96
INC D
L_8D96 CP #80
RET NZ
INC D
RET
;
L_8D9B LD BC,(VAR0000)
LD HL,(VAR0002)
SBC HL,BC
JR NC,L_8DAA
LD (VAR0002),BC
L_8DAA LD BC,VAR038D
CALL L_8FBC
;
DB #20
db "SCORE";#10,#11,#12,#13,#14
db #21
db #20
DB #00
;
LD HL,(VAR0000)
CALL Pr12345
CALL L_8FBC
;
DB #20,#20,#20
db "BONUS";#15,#16,#17,#18,#19
DB #21
db #20,#00
;
LD HL,(VAR000F)
CALL Pr12345
DEC BC
CALL L_8FBC
;
DB #20,#00
;
LD BC,VAR066D
CALL L_8FBC
;
DB #20,#20,#20,#20,#20
db "STAGE";#10,#30,#95,#31,#14
db #21
db #20,#00
;
LD A,(VAR0012)
LD (BC),A
INC BC
CALL L_8FBC
;
DB #20,#20,#20,#20
db "ERICS";#14,#13,#97,#11,#10
db #21
db #20,#00
;
LD A,(VAR0011)
LD (BC),A
INC BC
CALL L_8FBC
;
DB #20,#20,#20,#20,#20,#00
;
RET
;
L_8E0F LD A,(VAR0012)
AND #03
RET NZ
LD BC,VAR066D
LD A,(VAR0088)
OR A
JR Z,L_8E2A
LD HL,VAR0088
CALL L_873C
LD HL,L_8E44
JP L_9138
;
L_8E2A LD H,B
LD L,C
LD B,#1A
L_8E2E LD (HL),#20
INC HL
DJNZ L_8E2E
LD HL,VAR008A
CALL L_873C
LD A,(VAR008A)
OR A
RET NZ
LD HL,VAR0088
JP L_873C
;
L_8E44 DB #20,#20,#15,#16,#96,#15,#20,#95
DB #18,#30,#16,#20,#10,#14,#30,#30
DB #97,#17,#31,#20,#10,#30,#95,#31
DB #14,#20,#00
;
L_8E5F LD A,#88
LD B,#20
LD HL,VAR038C
L_8E66 LD (HL),A
INC HL
DJNZ L_8E66
LD B,#20
LD HL,VAR066C
L_8E6F LD (HL),A
INC HL
DJNZ L_8E6F
LD B,#17
LD HL,VAR03AB
LD DE,#001F
L_8E7B LD (HL),A
INC HL
LD (HL),A
ADD HL,DE
DJNZ L_8E7B
LD HL,VAR03EF
LD C,#05
LD A,#89
L_8E88 LD B,#07
L_8E8A CALL L_8E9D
OR A
LD DE,#001D
SBC HL,DE
DJNZ L_8E8A
LD DE,#0064
ADD HL,DE
DEC C
JR NZ,L_8E88
RET
;
L_8E9D LD (HL),A
INC HL
LD (HL),A
LD DE,#001F
ADD HL,DE
LD (HL),A
INC HL
LD (HL),A
RET
;
L_8EA8 CALL L_8F8C
AND #1F
CP #0F
JR NC,L_8EA8
LD C,A
L_8EB2 CALL L_8F8C
AND #1F
CP #0B
JR NC,L_8EB2
LD B,A
RET
;
L_8EBD LD A,B
ADD A,A
ADD A,#01
LD B,A
LD A,C
ADD A,A
ADD A,#01
LD C,A
RET
;
L_8EC8 CALL L_8EA8
LD A,C
LD (VAR007E),A
CP #02
JR C,L_8EC8
CP #0D
JR NC,L_8EC8
LD A,B
LD (VAR007F),A
CP #02
JR C,L_8EC8
CP #09
JR NC,L_8EC8
CALL L_8EBD
PUSH BC
CALL L_9126
LD A,(BC)
CP #20
POP BC
JR NZ,L_8EC8
LD A,C
LD (VAR000B),A
LD A,B
LD (VAR000C),A
LD A,#23
L_8EFA EX AF,AF'
L_8EFB CALL L_8EA8
LD D,B
LD E,C
LD A,(VAR007E)
SUB E
JR NC,L_8F08
NEG
L_8F08 CP #02
JR NC,L_8F1A
LD A,(VAR007F)
SUB D
JR NC,L_8F14
NEG
L_8F14 CP #02
JR NC,L_8F1A
JR L_8EFB
;
L_8F1A LD A,C
BIT 0,A
JR Z,L_8F26
LD A,B
BIT 0,A
JR NZ,L_8EFB
JR L_8F2B
;
L_8F26 LD A,B
BIT 0,A
JR Z,L_8EFB
L_8F2B CALL L_8EBD
LD HL,L_8F72
L_8F31 LD A,(HL)
INC A
JR Z,L_8F44
DEC A
CP B
JR NZ,L_8F40
INC HL
LD A,(HL)
CP C
JR Z,L_8EFB
JR L_8F41
;
L_8F40 INC HL
L_8F41 INC HL
JR L_8F31
;
L_8F44 LD A,(VAR0082)
OR A
JR NZ,L_8F57
LD A,B
LD (VAR0081),A
LD A,C
LD (VAR0080),A
LD A,#01
LD (VAR0082),A
L_8F57 LD A,B
LD (VAR0084),A
LD A,C
LD (VAR0083),A
LD A,#01
LD (VAR0085),A
CALL L_9008
LD A,#80
CALL L_8C60
EX AF,AF'
DEC A
JP NZ,L_8EFA
RET
L_8F72 DB #01,#03,#03,#01,#13,#01,#15,#03
DB #01,#1B,#03,#1D,#15,#1B,#13,#1D
DB #FF
;
L_8F8C PUSH HL
PUSH DE
PUSH BC
LD HL,(VAR0086)
LD A,H
RLA
RLA
XOR L
RRA
PUSH AF
LD A,H
XOR L
LD H,A
LD A,R
XOR L
LD L,A
POP AF
RL L
RL H
LD (VAR0086),HL
LD A,L
POP BC
POP DE
POP HL
RET
;
L_8FBC EX (SP),HL
CALL L_9138
EX (SP),HL
RET
;
Pr12345
LD DE,#2710
CALL L_8FE1
LD DE,#03E8
CALL L_8FE1
LD DE,#0064
CALL L_8FE1
LD DE,#000A
CALL L_8FE1
LD A,L
LD (BC),A
INC BC
XOR A
LD (BC),A
INC BC
RET
;
L_8FE1 XOR A
L_8FE2 OR A
SBC HL,DE
JR C,L_8FEA
INC A
JR L_8FE2
;
L_8FEA ADD HL,DE
LD (BC),A
INC BC
RET
;
L_8FEE LD HL,VAR008C
LD DE,VAR008D
LD BC,#02FF
LD (HL),#20
LDIR
RET
;
L_8FFC LD DE,VAR038C
LD HL,VAR008C
LD BC,#0300
LDIR
RET
;
L_9008 PUSH HL
CALL L_9126
LD HL,#FD00
ADD HL,BC
LD B,H
LD C,L
POP HL
RET
;
L_9014 LD HL,#5000
L_9017 DEC HL
LD A,H
OR L
JR NZ,L_9017
RET
L_9026 DB #00,#FF,#00,#FE,#00,#FD,#00,#FC
DB #01,#FF,#01,#FE,#01,#FD,#01,#FC
DB #00,#02,#00,#03,#00,#04,#00,#05
DB #01,#02,#01,#03,#01,#04,#01,#05
DB #FF,#00,#FE,#00,#FD,#00,#FC,#00
DB #FF,#01,#FE,#01,#FD,#01,#FC,#01
DB #02,#00,#03,#00,#04,#00,#05,#00
DB #02,#01,#03,#01,#04,#01,#05,#01
DB #80,#80,#80,#80
;
L_906A LD HL,L_9076
LD DE,VAR0005
LD BC,#0092
LDIR
RET
;
L_9076 DW L_85B3
DW L_85B3
DW L_85B3
;
DB #01,#01,#02,#00,#00,#00,#05,#01
DB #00,#02,#01,#00,#00,#00,#1F,#00
DB #00,#00,#00,#00,#03,#01,#03,#05
DB #00,#00,#00,#01,#0B,#02,#09,#00
DB #00,#01,#01,#01,#01,#09,#00,#00
DB #00,#07,#01,#03,#05,#00,#00,#00
DB #00,#00,#02,#09,#00,#00,#00,#00
DB #00,#01,#09,#00,#00,#00,#00,#00
DB #03,#05,#00,#00,#00,#00,#00,#02
DB #03,#00,#00,#FF,#FF,#FF,#FF,#00
DB #00,#00,#00,#00,#00,#00,#00,#00
DB #00,#00,#00,#00,#00,#00,#00,#00
DB #00,#00,#00,#00,#FF,#00,#00,#04
DB #00,#04,#00,#07,#00,#05,#00,#03
DB #00,#32,#00,#00,#00,#01,#01,#00
DB #01,#01,#00,#FF,#FF,#00,#10,#00
DB #08
;
L_90FD IM 1
EI
CALL L_9140
LD A,#00
OUT (#FE),A
LD IY,#0000
LD HL,L_92C2
CALL L_9114
JP DrawScreen
;
L_9114 LD E,(HL)
INC HL
LD D,(HL)
INC HL
LD C,(HL)
INC HL
LD B,(HL)
INC HL
PUSH HL
LD HL,VAR098C
ADD HL,DE
EX DE,HL
POP HL
LDIR
RET
;
L_9126 PUSH HL
LD L,B
LD H,#00
LD B,H
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,BC
LD BC,VAR038C
ADD HL,BC
EX (SP),HL
POP BC
RET
;
L_9138 LD A,(HL)
INC HL
OR A
RET Z
LD (BC),A
INC BC
JR L_9138
;
L_9140 LD HL,VAR038C
LD DE,VAR038D
LD BC,#02FF
LD A,#20
LD (HL),A
LDIR
LD HL,VAR068C
LD DE,VAR068D
LD BC,#02FF
CPL
LD (HL),A
LDIR
RET
;
setpgs_scr
ld a,(user_scr0_low) ;ok
SETPG32KLOW
ld a,(user_scr0_high) ;ok
SETPG32KHIGH
ret
redraw
ld e,0
OS_CLS
ld hl,VAR038C
ld de,VAR068C ;что сейчас отрисовано
ld bc,768
redraw0
ld a,(hl)
inc a
ld (de),a
inc de
cpi
jp pe,redraw0
DrawScreen
;draw screen
call setpgs_scr
LD DE,VAR038C
LD HL,VAR068C
if EGA
exx
ld hl,0x8000+4
ld lx,24
drawscreen0
ld hx,32
drawscreen00
exx
ld a,(de)
cp (hl)
ld (hl),a
call nz,L_9182
ld a,#20
ld (de),a
inc de
inc hl
exx
inc hl
dec hx
jp nz,drawscreen00
ld bc,8*40 - 32
add hl,bc
dec lx
jp nz,drawscreen0
ret
else ;6912
EXX
LD D,#40
LD BC,#5800
L_9168 EXX
LD A,(DE)
CP (HL)
LD (HL),A
CALL NZ,L_9182
LD A,#20
LD (DE),A
INC DE
INC HL
EXX
INC C
JR NZ,L_9168
INC B
LD A,D
ADD A,#08
LD D,A
CP #58
JR C,L_9168
RET
endif
;
L_9182
;draw tile
if EGA
exx
;hl=scr (0x8000+)
push hl
ld e,a
ld d,egagfx/256
;de=tilegfx
ld bc,40
push hl
push hl
dup 8
ld a,(de) ;font
ld (hl),a ;scr
inc d
add hl,bc
edup
pop hl
set 6,h
;ld d,font/256
dup 8
ld a,(de) ;font
ld (hl),a ;scr
inc d
add hl,bc
edup
pop hl
set 5,h
push hl
;ld d,font/256
dup 8
ld a,(de) ;font
ld (hl),a ;scr
inc d
add hl,bc
edup
pop hl
set 6,h
;ld d,font/256
dup 7
ld a,(de) ;font
ld (hl),a ;scr
inc d
add hl,bc
edup
ld a,(de) ;font
ld (hl),a ;scr
pop hl
exx
ret
else ;6912
EXX
PUSH DE
LD E,A
LD D,#00
LD L,E
LD H,D
ADD HL,HL
ADD HL,HL
ADD HL,HL
ADD HL,DE
LD DE,VAR098C
ADD HL,DE
POP DE
LD E,C
PUSH BC
LD C,D
LD B,#08
L_9197 LD A,(HL)
LD (DE),A
INC HL
INC D
DJNZ L_9197
LD D,C
POP BC
LD A,(HL)
LD (BC),A
EXX
RET
endif
;actionkeycodes
L_91A3 DB #57,#49,#45,#4F,#44,#4C,#43,#0E
DB #58,#4D,#5A,#4E,#41,#4A,#51,#55
;
L_91B3 LD A,(L_9284);keyboard/joystick?
OR A
JR NZ,L_91CB ;out: a=0: 0 pressed, -1: not pressed
L_91B9
;out: a=0: break pressed
LD A,#FE
IN A,(#FE)
AND #01
CPL
RET Z
LD A,#7F
IN A,(#FE)
AND #01
CPL
RET Z
XOR A
RET
;
L_91CB
;out: a=0: 0 pressed, -1: not pressed
PUSH BC
LD BC,#EFFE;sinclair joystick
IN A,(C)
POP BC
AND #01
LD A,#FF
RET Z
XOR A
RET
;
L_91D9
;out: a=0 или код направления (1=up, 2=up-right, 3=right, 4=down-right, 5=down, 6=down-left, 7=left, 8=up-left)
LD A,(L_9284);keyboard/joystick?
OR A
JR Z,L_9208;readactionkey
PUSH BC
LD BC,#EFFE;sinclair joystick
IN A,(C)
CPL
RRCA
AND #0F
POP BC
RET Z
PUSH HL
PUSH BC
LD C,A
LD B,#00
LD HL,L_91F8
ADD HL,BC
LD A,(HL)
POP BC
POP HL
RET
;
L_91F8 DB #00,#01,#05,#00,#03,#02,#04,#00
DB #07,#08,#06,#00,#00,#01,#05,#00
;readactionkey
L_9208 CALL L_9223;readkey
PUSH HL
PUSH BC
LD HL,L_91A3;actionkeycodes
LD B,#10
L_9212 CP (HL)
JR Z,L_921A
INC HL
DJNZ L_9212
LD B,#12
L_921A LD A,#12
SUB B
RRCA
AND #7F
POP BC
POP HL
RET
;readkey
L_9223 PUSH BC
PUSH HL
PUSH DE
LD HL,L_925C
LD BC,#FEFE
L_922C IN A,(C)
CPL
AND #1F
JR Z,L_9239
L_9233 RRCA
JR C,L_9247
L_9236 INC HL
JR L_9233
;
L_9239 INC HL
INC HL
INC HL
INC HL
INC HL
RLC B
JR C,L_922C
XOR A
POP DE
POP HL
POP BC
RET
;
L_9247 LD D,A
LD A,(HL)
CP #20
JR Z,L_9255
CP #E3
JR Z,L_9255
POP DE
POP HL
POP BC
RET
;
L_9255 LD A,D
AND #7F
JR Z,L_9239
JR L_9236
;коды кнопок
L_925C DB #E3,#5A,#58,#43,#56,#41,#53,#44
DB #46,#47,#51,#57,#45,#52,#54,#31
DB #32,#33,#34,#35,#30,#39,#38,#37
DB #36,#50,#4F,#49,#55,#59,#0D,#4C
DB #4B,#4A,#48,#20,#0E,#4D,#4E,#42
;
L_9284 DB #00
;
L_9285
;keep hl!!!
;push hl
;GET_KEY ;rasmer
;pop hl
ld a,(curkey)
cp key_esc
jp z,quiter
cp key_redraw
call z,redraw
CALL L_9223;readkey
CP "K"
JR Z,L_92A3
CP "J"
JR Z,L_929B
CALL L_91B9 ;out: a=0: break pressed
OR A
JR NZ,L_92A3
CALL L_91CB ;out: a=0: 0 pressed
OR A
RET Z
L_929B LD A,#01
L_929D LD (L_9284),A
LD A,#FF
RET
;
L_92A3 XOR A
JR L_929D
;
L_92A6
;sound
PUSH HL
L_92A7 LD A,#10
CALL L_92B8
LD A,#00
CALL L_92B8
DEC BC
LD A,C
OR B
JR NZ,L_92A7
POP HL
RET
;
L_92B8 OUT (#FE),A
LD H,D
LD L,E
L_92BC DEC HL
LD A,H
OR L
JR NZ,L_92BC
RET
;
L_92C2 DW #0000
DW #0900
;
DB #3C,#42,#46,#5A,#62,#42,#3C,#00
DB #47,#10,#30,#50,#10,#10,#10,#7C
DB #00,#47,#3C,#42,#02,#0C,#30,#40
DB #7E,#00,#47,#3C,#42,#02,#1C,#02
DB #42,#3C,#00,#47,#04,#0C,#14,#24
DB #7E,#04,#04,#00,#47,#7E,#40,#78
DB #04,#02,#44,#38,#00,#47,#1C,#20
DB #40,#7C,#42,#42,#3C,#00,#47,#7E
DB #42,#04,#08,#10,#10,#10,#00,#47
DB #3C,#42,#42,#3C,#42,#42,#3C,#00
DB #47,#3C,#42,#42,#3E,#02,#04,#38
DB #00,#47,#3F,#FF,#40,#2F,#10,#0F
DB #55,#31,#46,#FC,#F2,#09,#F5,#03
DB #FE,#6B,#15,#46,#08,#1C,#3E,#49
DB #08,#08,#08,#08,#47,#08,#04,#06
DB #FF,#06,#04,#08,#00,#47,#00,#00
DB #75,#45,#72,#45,#75,#00,#47,#00
DB #00,#77,#22,#22,#22,#72,#00,#47
DB #00,#00,#00,#0F,#08,#08,#08,#08
DB #47,#00,#00,#00,#F0,#10,#10,#10
DB #10,#47,#08,#08,#08,#0F,#00,#00
DB #00,#00,#47,#10,#10,#10,#F0,#00
DB #00,#00,#00,#47,#00,#00,#00,#FF
DB #00,#00,#00,#00,#47,#08,#08,#08
DB #08,#08,#08,#08,#08,#47,#10,#10
DB #10,#10,#10,#10,#10,#10,#47,#04
DB #08,#10,#10,#10,#08,#04,#00,#47
DB #20,#10,#08,#08,#08,#10,#20,#00
DB #47,#00,#00,#00,#00,#30,#30,#00
DB #00,#47,#44,#FF,#80,#BF,#B6,#BF
DB #80,#FF,#46,#A9,#F5,#15,#D5,#D2
DB #D4,#18,#F0,#46,#08,#08,#08,#08
DB #49,#3E,#1C,#08,#47,#10,#20,#60
DB #FF,#60,#20,#10,#00,#47,#7F,#7F
DB #7F,#7F,#79,#79,#7F,#7F,#44,#7F
DB #7F,#7F,#7F,#4F,#4F,#7F,#7F,#44
DB #00,#00,#00,#00,#00,#00,#00,#00
DB #40,#18,#18,#18,#00,#18,#18,#18
DB #00,#47,#00,#7F,#7F,#60,#60,#60
DB #60,#7F,#43,#00,#F8,#F8,#06,#06
DB #06,#06,#F8,#43,#00,#1F,#1F,#60
DB #60,#60,#60,#60,#43,#00,#F8,#F8
DB #06,#06,#06,#06,#06,#43,#00,#60
DB #60,#78,#78,#66,#66,#61,#43,#00
DB #06,#06,#1E,#1E,#66,#66,#86,#43
DB #00,#7F,#7F,#60,#60,#60,#60,#7F
DB #43,#00,#FE,#FE,#00,#00,#00,#00
DB #F8,#43,#00,#7F,#7F,#60,#60,#60
DB #60,#7F,#43,#00,#F8,#F8,#06,#06
DB #06,#06,#F8,#43,#00,#07,#07,#18
DB #18,#60,#60,#7F,#43,#00,#E0,#E0
DB #18,#18,#06,#06,#FE,#43,#00,#60
DB #60,#78,#78,#66,#66,#61,#43,#00
DB #06,#06,#06,#06,#06,#06,#86,#43
DB #3C,#42,#46,#5A,#62,#42,#3C,#00
DB #47,#3C,#42,#02,#0C,#10,#00,#10
DB #00,#47,#7F,#60,#60,#60,#60,#7F
DB #7F,#00,#43,#F8,#06,#06,#06,#06
DB #F8,#F8,#00,#43,#60,#60,#60,#60
DB #60,#1F,#1F,#00,#43,#06,#06,#06
DB #06,#06,#F8,#F8,#00,#43,#61,#60
DB #60,#60,#60,#60,#60,#00,#43,#86
DB #06,#06,#06,#06,#06,#06,#00,#43
DB #7F,#60,#60,#60,#60,#7F,#7F,#00
DB #43,#F8,#00,#00,#00,#00,#FE,#FE
DB #00,#43,#7F,#60,#60,#60,#60,#60
DB #60,#00,#43,#F8,#60,#60,#18,#18
DB #06,#06,#00,#43,#7F,#60,#60,#60
DB #60,#60,#60,#00,#43,#FE,#06,#06
DB #06,#06,#06,#06,#00,#43,#61,#60
DB #60,#60,#60,#60,#60,#00,#43,#86
DB #66,#66,#1E,#1E,#06,#06,#00,#43
DB #00,#00,#00,#7C,#00,#00,#00,#00
DB #47,#18,#24,#42,#7E,#42,#42,#42
DB #00,#47,#7C,#42,#42,#7C,#42,#42
DB #7C,#00,#47,#1C,#22,#40,#40,#40
DB #22,#1C,#00,#47,#78,#44,#42,#42
DB #42,#44,#78,#00,#47,#7E,#40,#40
DB #78,#40,#40,#7E,#00,#47,#7E,#40
DB #40,#78,#40,#40,#40,#00,#47,#1C
DB #22,#40,#4E,#42,#22,#1C,#00,#47
DB #42,#42,#42,#7E,#42,#42,#42,#00
DB #47,#1C,#08,#08,#08,#08,#08,#1C
DB #00,#47,#0E,#04,#04,#04,#04,#44
DB #38,#00,#47,#42,#44,#48,#70,#48
DB #44,#42,#00,#47,#40,#40,#40,#40
DB #40,#40,#7E,#00,#47,#42,#66,#5A
DB #5A,#42,#42,#42,#00,#47,#42,#62
DB #52,#4A,#46,#42,#42,#00,#47,#3C
DB #42,#42,#42,#42,#42,#3C,#00,#47
DB #7C,#42,#42,#7C,#40,#40,#40,#00
DB #47,#3C,#42,#42,#42,#5A,#64,#3A
DB #00,#47,#7C,#42,#42,#7C,#48,#44
DB #42,#00,#47,#3C,#42,#40,#3C,#02
DB #42,#3C,#00,#47,#3E,#08,#08,#08
DB #08,#08,#08,#00,#47,#42,#42,#42
DB #42,#42,#42,#3C,#00,#47,#41,#41
DB #41,#41,#22,#14,#08,#00,#47,#42
DB #42,#42,#5A,#5A,#66,#42,#00,#47
DB #42,#42,#24,#18,#24,#42,#42,#00
DB #47,#22,#22,#22,#1C,#08,#08,#08
DB #00,#47,#7F,#02,#04,#08,#10,#20
DB #7F,#00,#47,#1C,#22,#49,#4F,#49
DB #22,#1C,#00,#47,#04,#08,#10,#10
DB #10,#08,#04,#00,#47,#20,#10,#08
DB #08,#08,#10,#20,#00,#47,#00,#00
DB #00,#00,#30,#30,#00,#00,#47,#3C
DB #42,#02,#0C,#10,#00,#10,#00,#47
DB #00,#00,#01,#01,#07,#1F,#3F,#7F
DB #45,#50,#E0,#50,#00,#C0,#F0,#F8
DB #FC,#45,#00,#00,#01,#01,#07,#1F
DB #3F,#7F,#45,#20,#E0,#20,#00,#C0
DB #F0,#F8,#FC,#45,#01,#00,#01,#01
DB #07,#1F,#3F,#7F,#45,#40,#80,#40
DB #00,#C0,#F0,#F8,#FC,#45,#00,#01
DB #00,#01,#07,#1F,#3F,#7F,#45,#80
DB #40,#80,#00,#C0,#F0,#F8,#FC,#45
DB #00,#00,#01,#03,#07,#1F,#3F,#7F
DB #45,#00,#00,#00,#80,#C0,#F0,#F8
DB #FC,#45,#00,#00,#00,#01,#02,#07
DB #1F,#3F,#45,#00,#00,#00,#00,#80
DB #C0,#F0,#F8,#45,#00,#00,#01,#03
DB #07,#1F,#3F,#7F,#45,#00,#00,#00
DB #80,#C0,#F0,#F8,#FC,#45,#00,#00
DB #00,#00,#01,#03,#07,#1F,#45,#00
DB #00,#00,#00,#00,#80,#C0,#F0,#45
DB #FF,#FF,#FF,#FF,#7F,#3F,#1F,#07
DB #45,#FE,#FE,#FE,#FE,#FC,#F8,#F0
DB #C0,#45,#FF,#FF,#FF,#FF,#7F,#3F
DB #1F,#07,#45,#FE,#FE,#FE,#FE,#FC
DB #F8,#F0,#C0,#45,#FF,#FF,#FF,#FF
DB #7F,#3F,#1F,#07,#45,#FE,#FE,#FE
DB #FE,#FC,#F8,#F0,#C0,#45,#FF,#FF
DB #FF,#FF,#7F,#3F,#1F,#07,#45,#FE
DB #FE,#FE,#FE,#FC,#F8,#F0,#C0,#45
DB #FF,#FF,#FF,#FF,#7F,#3F,#1F,#07
DB #45,#FE,#FE,#FE,#FE,#FC,#F8,#F0
DB #C0,#45,#7F,#7F,#7F,#7F,#3F,#1F
DB #07,#00,#45,#FC,#FC,#FC,#FC,#F8
DB #F0,#C0,#00,#45,#FF,#FF,#FF,#FF
DB #7F,#3F,#1F,#07,#45,#FE,#FE,#FE
DB #FE,#FC,#F8,#F0,#C0,#45,#3F,#3F
DB #3F,#3F,#1F,#07,#00,#00,#45,#F8
DB #F8,#F8,#F8,#F0,#C0,#00,#00,#45
DB #FD,#05,#FD,#00,#DF,#50,#DF,#00
DB #42,#DD,#05,#FD,#00,#DF,#50,#DB
DB #00,#42,#DC,#05,#FD,#00,#DF,#50
DB #5B,#00,#42,#DC,#05,#7D,#00,#DE
DB #50,#5B,#00,#42,#D8,#05,#5D,#00
DB #9E,#50,#4B,#00,#42,#50,#05,#50
DB #00,#8A,#50,#08,#00,#42,#10,#05
DB #50,#00,#02,#50,#08,#00,#42,#00
DB #01,#40,#00,#02,#40,#08,#00,#42
DB #FD,#FD,#FD,#00,#DF,#DF,#DF,#00
DB #43,#FD,#FD,#FD,#00,#DF,#DF,#DF
DB #00,#42,#0F,#3F,#0F,#1E,#1F,#0E
DB #07,#0E,#47,#80,#E0,#80,#C0,#C0
DB #80,#0E,#10,#47,#07,#07,#1F,#07
DB #0D,#0F,#04,#03,#47,#C0,#C0,#F0
DB #C0,#60,#E0,#40,#80,#47,#07,#07
DB #1F,#07,#0D,#0F,#04,#03,#47,#C0
DB #C0,#F0,#C0,#60,#E0,#40,#80,#47
DB #18,#3C,#18,#3C,#5A,#3C,#66,#00
DB #44,#38,#54,#7C,#6C,#38,#10,#0C
DB #00,#42,#42,#42,#42,#7E,#42,#42
DB #42,#00,#47,#78,#44,#42,#42,#42
DB #44,#78,#00,#47,#7E,#40,#40,#78
DB #40,#40,#40,#00,#47,#18,#24,#42
DB #7E,#42,#42,#42,#00,#47,#42,#66
DB #5A,#5A,#42,#42,#42,#00,#47,#1C
DB #08,#08,#08,#08,#08,#1C,#00,#47
DB #7F,#49,#0A,#0B,#0A,#0A,#0B,#1C
DB #47,#7F,#48,#28,#28,#A8,#68,#28
DB #1C,#47,#3E,#7F,#79,#78,#70,#70
DB #38,#3C,#44,#38,#7C,#FE,#FE,#FE
DB #7C,#38,#00,#45,#1B,#3B,#6B,#4B
DB #0F,#0E,#0C,#1C,#44,#B0,#B8,#AC
DB #A4,#E0,#E0,#60,#70,#44,#0B,#1B
DB #3B,#33,#1B,#0F,#0E,#1C,#44,#A0
DB #B0,#B8,#98,#B0,#E0,#E0,#70,#44
DB #03,#03,#0F,#03,#06,#07,#02,#01
DB #47,#E0,#E0,#F8,#E0,#B0,#F0,#20
DB #C0,#47,#07,#07,#1F,#07,#0D,#0F
DB #04,#03,#47,#C0,#C0,#F0,#C0,#60
DB #E0,#40,#80,#47,#03,#03,#0F,#03
DB #06,#07,#02,#01,#47,#E0,#E0,#F8
DB #E0,#F0,#F0,#E0,#C0,#47,#03,#03
DB #0F,#03,#06,#07,#02,#01,#47,#E0
DB #E0,#F8,#E0,#F0,#F0,#E0,#C0,#47
DB #07,#07,#1F,#07,#0F,#0F,#07,#03
DB #47,#C0,#C0,#F0,#C0,#60,#E0,#40
DB #80,#47,#07,#07,#1F,#07,#0F,#0F
DB #07,#03,#47,#C0,#C0,#F0,#C0,#60
DB #E0,#40,#80,#47,#07,#07,#1F,#00
DB #08,#08,#00,#03,#47,#C0,#C0,#F0
DB #00,#20,#20,#00,#80,#47,#03,#03
DB #0F,#00,#04,#04,#00,#01,#47,#E0
DB #E0,#F8,#00,#10,#10,#00,#C0,#47
DB #0D,#1D,#35,#25,#07,#06,#0E,#00
DB #44,#D0,#D8,#C8,#D0,#F0,#70,#30
DB #38,#44,#0B,#1B,#13,#0B,#0F,#0E
DB #0C,#1C,#44,#B0,#B8,#AC,#A4,#E0
DB #60,#70,#00,#44,#07,#0D,#1B,#03
DB #03,#01,#02,#06,#44,#F0,#E8,#E8
DB #E0,#E0,#E0,#E0,#E0,#44,#07,#0B
DB #0B,#03,#01,#01,#03,#07,#44,#B0
DB #D8,#EC,#E0,#E0,#D0,#90,#B0,#44
DB #0F,#17,#17,#07,#07,#07,#07,#07
DB #44,#E0,#B0,#D8,#C0,#C0,#80,#40
DB #60,#44,#0D,#1B,#37,#07,#07,#0B
DB #09,#0D,#44,#E0,#D0,#D0,#C0,#80
DB #80,#C0,#E0,#44,#0D,#1E,#1F,#0F
DB #0F,#0E,#0C,#1C,#44,#60,#D8,#D8
DB #D8,#E0,#60,#70,#00,#44,#06,#1B
DB #1B,#1B,#07,#06,#0E,#00,#44,#B0
DB #78,#F8,#F0,#F0,#70,#30,#38,#44
DB #00,#00,#07,#1F,#3F,#3F,#7F,#7F
DB #42,#00,#00,#C0,#F0,#F8,#F8,#FC
DB #FC,#42,#00,#03,#0F,#1F,#1F,#3F
DB #3F,#3F,#42,#00,#80,#E0,#F0,#F0
DB #F8,#F8,#F8,#42,#00,#00,#07,#1F
DB #3F,#3F,#7F,#7F,#43,#00,#00,#C0
DB #F0,#F8,#F8,#FC,#FC,#43,#00,#03
DB #0F,#1F,#1F,#3F,#3F,#3F,#43,#00
DB #80,#E0,#F0,#F0,#F8,#F8,#F8,#43
DB #00,#00,#07,#1F,#3F,#3F,#7F,#7F
DB #43,#00,#00,#C0,#F0,#F8,#F8,#FC
DB #FC,#43,#00,#03,#0F,#1F,#1F,#3F
DB #3F,#3F,#43,#00,#80,#E0,#F0,#F0
DB #F8,#F8,#F8,#43,#00,#00,#07,#1F
DB #3F,#3F,#7F,#7F,#43,#00,#00,#C0
DB #F0,#F8,#F8,#FC,#FC,#43,#00,#03
DB #0F,#1F,#1F,#3F,#3F,#3F,#43,#00
DB #80,#E0,#F0,#F0,#F8,#F8,#F8,#43
DB #7F,#7F,#3F,#3F,#1F,#07,#01,#00
DB #42,#FC,#FC,#F8,#F8,#F0,#C0,#10
DB #E0,#42,#3F,#3F,#3F,#1F,#1F,#07
DB #01,#00,#42,#F8,#F8,#F8,#F0,#F0
DB #C0,#10,#E0,#42,#7F,#7F,#3F,#3F
DB #1F,#07,#01,#00,#43,#FC,#FC,#F8
DB #F8,#F0,#C0,#10,#E0,#43,#3F,#3F
DB #3F,#1F,#1F,#07,#01,#00,#43,#F8
DB #F8,#F8,#F0,#F0,#C0,#10,#E0,#43
DB #7F,#7F,#3F,#3F,#1F,#07,#01,#00
DB #43,#FC,#FC,#F8,#F8,#F0,#C0,#10
DB #E0,#43,#3F,#3F,#3F,#1F,#1F,#07
DB #01,#00,#43,#F8,#F8,#F8,#F0,#F0
DB #C0,#10,#E0,#43,#7F,#7F,#3F,#3F
DB #1F,#07,#01,#00,#43,#FC,#FC,#F8
DB #F8,#F0,#C0,#10,#E0,#43,#3F,#3F
DB #3F,#1F,#1F,#07,#01,#00,#43,#F8
DB #F8,#F8,#F0,#F0,#C0,#10,#E0,#43
DB #EF,#7F,#FF,#FB,#FE,#ED,#FA,#F5
DB #47,#FD,#FF,#FF,#DE,#7F,#B7,#5F
DB #AF,#47,#7D,#EF,#BB,#FF,#DD,#77
DB #FE,#DB,#47,#EF,#7D,#D7,#7D,#EF
DB #BB,#FE,#EF,#47,#55,#EF,#BA,#6D
DB #D5,#77,#AA,#DB,#47,#AB,#3D,#D7
DB #5D,#E6,#B9,#D6,#6B,#47,#55,#A5
DB #90,#4D,#51,#55,#A8,#8A,#47,#AB
DB #28,#45,#09,#A2,#28,#56,#69,#47
DB #44,#A4,#80,#45,#41,#14,#A8,#82
DB #47,#AA,#20,#45,#01,#00,#28,#42
DB #41,#47,#44,#A0,#00,#45,#41,#10
DB #A8,#82,#47,#A2,#20,#45,#01,#00
DB #28,#42,#00,#47,#40,#A0,#00,#41
DB #00,#00,#88,#82,#47,#20,#00,#00
DB #01,#00,#20,#40,#00,#47,#00,#80
DB #00,#41,#00,#00,#08,#02,#47,#20
DB #00,#00,#01,#00,#20,#00,#00,#47
DB #F5,#FA,#ED,#FE,#7B,#FF,#FF,#BF
DB #47,#AF,#5F,#B7,#7F,#DF,#FF,#FE
DB #F7,#47,#7E,#D7,#FD,#B7,#FD,#EF
DB #BB,#EE,#47,#BF,#FA,#DF,#F5,#BF
DB #ED,#BF,#FB,#47,#2A,#D7,#6D,#92
DB #BD,#4A,#B9,#6E,#47,#B5,#6A,#5B
DB #B5,#9A,#ED,#B7,#EA,#47,#08,#D5
DB #45,#12,#99,#0A,#B9,#66,#47,#95
DB #48,#53,#35,#8A,#A9,#B3,#62,#47
DB #08,#C5,#44,#10,#19,#02,#A9,#46
DB #47,#00,#08,#11,#14,#02,#29,#01
DB #22,#47,#08,#80,#44,#10,#09,#02
DB #29,#04,#47,#00,#08,#10,#04,#00
DB #09,#01,#22,#47,#08,#80,#04,#00
DB #09,#02,#20,#04,#47,#00,#08,#10
DB #04,#00,#09,#00,#22,#47,#00,#80
DB #04,#00,#01,#00,#20,#04,#47,#00
DB #08,#00,#00,#00,#09,#00,#20,#47
;
L_9BC6 DW #0090
DW #005A
;
DB #3C,#42,#40,#3C,#02,#42,#3C,#00
DB #47,#3C,#42,#40,#40,#40,#42,#3C
DB #00,#47,#3C,#42,#42,#42,#42,#42
DB #3C,#00,#47,#7C,#42,#42,#7C,#48
DB #44,#42,#00,#47,#7E,#40,#40,#78
DB #40,#40,#7E,#00,#47,#7C,#42,#42
DB #7C,#42,#42,#7C,#00,#47,#3C,#42
DB #42,#42,#42,#42,#3C,#00,#47,#42
DB #62,#52,#4A,#46,#42,#42,#00,#47
DB #42,#42,#42,#42,#42,#42,#3C,#00
DB #47,#3C,#42,#40,#3C,#02,#42,#3C
DB #00,#47,#00,#00,#09,#00
;
L_9C28 DW #0120
DW #0240
;
DB #00,#00,#00,#00,#00,#00,#00,#00
DB #40,#18,#18,#18,#00,#18,#18,#18
DB #00,#47,#00,#00,#07,#1F,#3F,#3F
DB #7F,#7F,#42,#00,#00,#C0,#F0,#F8
DB #F8,#FC,#FC,#42,#00,#00,#07,#1F
DB #3F,#3F,#7F,#40,#42,#00,#00,#C0
DB #F0,#F8,#B8,#3C,#3C,#42,#00,#00
DB #07,#1F,#3F,#3F,#00,#40,#42,#00
DB #00,#C0,#D0,#98,#18,#1C,#1C,#42
DB #00,#00,#07,#1F,#3E,#00,#00,#00
DB #42,#00,#00,#80,#00,#08,#08,#0C
DB #0C,#42,#00,#00,#00,#07,#1E,#3C
DB #00,#00,#42,#00,#00,#00,#00,#00
DB #08,#08,#0C,#42,#00,#00,#00,#00
DB #00,#00,#00,#00,#40,#00,#00,#00
DB #00,#00,#00,#00,#00,#40,#00,#00
DB #00,#00,#00,#00,#00,#00,#40,#00
DB #00,#00,#00,#00,#00,#00,#00,#40
DB #3E,#08,#08,#08,#08,#08,#08,#00
DB #47,#1C,#22,#40,#4E,#42,#22,#1C
DB #00,#47,#7F,#78,#3C,#3C,#1D,#07
DB #01,#00,#42,#7C,#7C,#78,#38,#F0
DB #C0,#10,#E0,#42,#60,#78,#38,#38
DB #19,#01,#01,#00,#42,#3C,#3C,#00
DB #00,#F0,#C0,#10,#E0,#42,#60,#70
DB #30,#30,#10,#03,#01,#00,#42,#1C
DB #1C,#00,#00,#00,#C0,#10,#E0,#42
DB #40,#60,#20,#20,#00,#00,#01,#00
DB #42,#0C,#0C,#08,#00,#00,#00,#10
DB #E0,#42,#00,#00,#40,#20,#20,#03
DB #01,#00,#42,#0C,#0C,#0C,#00,#00
DB #C0,#10,#E0,#42,#07,#1E,#3C,#00
DB #00,#60,#79,#00,#42,#00,#00,#08
DB #08,#0C,#0C,#00,#F0,#42,#00,#00
DB #00,#03,#0F,#15,#6C,#57,#42,#00
DB #00,#00,#80,#80,#1C,#1E,#E0,#42
DB #00,#00,#7B,#6B,#6B,#6B,#7B,#00
DB #44,#00,#00,#5E,#4C,#4C,#4C,#CC
DB #00,#44,#00,#00,#00,#00,#00,#00
DB #01,#03,#45,#00,#00,#00,#00,#00
DB #00,#C0,#18,#45,#00,#00,#00,#00
DB #00,#08,#18,#18,#45,#00,#00,#00
DB #00,#00,#7C,#B4,#DC,#45,#00,#00
DB #00,#00,#00,#00,#40,#60,#45,#00
DB #00,#00,#00,#7C,#B4,#DC,#B4,#45
DB #00,#00,#00,#01,#02,#07,#04,#06
DB #45,#00,#00,#00,#80,#C0,#E0,#A0
DB #C0,#45,#00,#00,#01,#02,#07,#04
DB #04,#03,#46,#00,#00,#80,#C0,#E0
DB #A0,#C0,#80,#46,#00,#00,#00,#07
DB #0D,#0F,#06,#04,#46,#00,#00,#00
DB #C0,#60,#E0,#C0,#40,#46,#00,#00
DB #07,#0D,#0F,#06,#04,#03,#46,#00
DB #00,#C0,#60,#E0,#C0,#40,#80,#46
DB #00,#00,#F0,#E0,#60,#3F,#3F,#1E
DB #45,#00,#00,#1C,#3E,#22,#7F,#6B
DB #3E,#45,#06,#0F,#0B,#0B,#0B,#0B
DB #1E,#78,#45,#2C,#5E,#7A,#6C,#38
DB #80,#F0,#3C,#45,#18,#1B,#0B,#0B
DB #0B,#0B,#1E,#78,#45,#B4,#7C,#BE
DB #BC,#A0,#A0,#F0,#3C,#45,#30,#1B
DB #0B,#0B,#0B,#0E,#1C,#38,#45,#7C
DB #BE,#BC,#A0,#A0,#E0,#70,#38,#45
DB #03,#FB,#7B,#0B,#0B,#0E,#1C,#38
DB #45,#80,#BE,#BC,#A0,#A0,#E0,#70
DB #38,#45,#1B,#3B,#6B,#4B,#0F,#0E
DB #0C,#1C,#45,#B0,#B8,#AC,#A4,#E0
DB #E0,#60,#70,#45,#FB,#FB,#0B,#0B
DB #0F,#0E,#0C,#1C,#45,#BE,#BE,#A0
DB #A0,#E0,#E0,#60,#70,#45,#1B,#3B
DB #6B,#4B,#0F,#0E,#0C,#1C,#45,#B0
DB #B8,#AC,#A4,#E0,#E0,#60,#70,#45
DB #00,#00,#09,#00
;
L_9E70 DW #005A
DW #0012
;
DB #1E,#1D,#1E,#1F,#1C,#1F,#10,#1F
DB #42,#D0,#50,#30,#F0,#D0,#30,#10
DB #F0,#42
;
L_9E86 DW #00EA
DW #0012
;
DB #1F,#1E,#1F,#1F,#1B,#17,#17,#18
DB #42,#30,#D0,#30,#F0,#B0,#D0,#D0
DB #30,#42
;
L_9E9C DW #005A
DW #0012
;
DB #82,#22,#12,#12,#23,#00,#7F,#47
DB #47,#00,#00,#10,#10,#90,#00,#F8
DB #8F,#47
;
L_9EB2 DW #00EA
DW #0012
;
DB #6F,#6B,#79,#7A,#7B,#7F,#30,#1F
DB #47,#D9,#59,#79,#7E,#78,#F8,#30
DB #E0,#47
;
L_9EC8 DW #005A
DW #0012
;
DB #00,#00,#01,#07,#1F,#10,#10,#14
DB #44,#00,#00,#FC,#FE,#FE,#04,#14
DB #14,#44
;
L_9EDE DW #00EA
DW #0012
;
DB #16,#14,#78,#8F,#60,#90,#90,#60
DB #44,#24,#E4,#E7,#F8,#06,#09,#09
DB #06,#44
;
L_9EF4 DW #005A
DW #0012
;
DB #00,#00,#00,#00,#00,#01,#1E,#1D
DB #47,#08,#14,#28,#50,#A0,#40,#80
DB #80,#47
;
L_9F0A DW #00EA
DW #0012
;
DB #1B,#17,#1F,#1F,#1F,#0F,#06,#0F
DB #47,#80,#80,#80,#80,#A4,#24,#24
DB #18,#47
;
L_9F20 DW #005A
DW #0012
;
DB #20,#40,#28,#28,#14,#08,#30,#00
DB #47,#00,#00,#00,#00,#00,#00,#00
DB #0E,#43
;
L_9F36 DW #00EA
DW #0012
;
DB #FC,#FC,#78,#7F,#7E,#3C,#00,#00
DB #43,#39,#60,#C0,#80,#00,#00,#00
DB #00,#43
;
L_9F4C DW #005A
DW #0012
;
DB #0F,#7E,#1E,#0F,#0F,#1F,#3D,#78
DB #46,#1E,#21,#D1,#0E,#80,#E0,#78
DB #3C,#46
;
L_9F62 DW #00EA
DW #0012
;
DB #75,#75,#F8,#FD,#F5,#F8,#7D,#3F
DB #46,#5C,#7C,#3E,#5E,#5E,#3E,#7C
DB #F8,#46
;
L_9F78 DW #005A
DW #0012
;
DB #00,#00,#00,#0F,#E5,#FF,#FF,#E1
DB #47,#00,#00,#00,#80,#02,#FE,#FC
DB #80,#47
;
L_9F8E DW #00EA
DW #0012
;
DB #03,#07,#08,#08,#10,#10,#20,#20
DB #42,#C0,#E0,#90,#90,#88,#48,#44
DB #44,#42
;
L_9FA4 DW #005A
DW #0012
;
DB #0E,#08,#08,#04,#07,#04,#1F,#24
DB #47,#00,#00,#00,#78,#F0,#30,#08
DB #88,#47
;
L_9FBA DW #00EA
DW #0012
;
DB #44,#84,#84,#80,#80,#40,#20,#1F
DB #47,#48,#24,#24,#24,#26,#49,#89
DB #06,#47