-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path131-screen-background-and-sprite.lst
116 lines (116 loc) · 2.26 KB
/
131-screen-background-and-sprite.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
SCREEN_ADR EQU 4000
BITMAP_SIZE EQU 1800
ATTRIBUTE_BLOCK_SIZE EQU 0800
SCREEN_SIZE EQU 2000
ENTRY_POINT EQU 8000
ORG 8000
8000: label start
8000:21AD80 LD HL, 80AD
8003:110040 LD DE, 4000
8006:010020 LD BC, 2000
8009:EDB0 LDIR
800B:060F LD B, 0F
800D:0E04 LD C, 04
800F:CD2B80 CALL 802B
8012:CD3A80 CALL 803A
8015:060F LD B, 0F
8017:0E12 LD C, 12
8019:CD2B80 CALL 802B
801C:CD3A80 CALL 803A
801F:0609 LD B, 09
8021:0E0C LD C, 0C
8023:CD2B80 CALL 802B
8026:CD3A80 CALL 803A
8029: label finish
8029:18FE JR 8029
802B: label calc_sprite_address
802B:79 LD A, C
802C:E607 AND 07
802E:0F RRCA
802F:0F RRCA
8030:0F RRCA
8031:B0 OR B
8032:5F LD E, A
8033:79 LD A, C
8034:E618 AND 18
8036:F640 OR 40
8038:57 LD D, A
8039:C9 RET
Defining MACRO add_e
Params: n
803A: label draw_sprite
803A:216580 LD HL, 8065
803D:D5 PUSH DE
803E:CD5580 CALL 8055
8041:D1 POP DE
Expanding MACRO add_e
n= 0020
LD A , E
8042:7B LD A, E
ADD A , n
8043:C620 ADD A, 20
LD E , A
8045:5F LD E, A
ENDM
ENDM
End of MACRO add_e
8046:D5 PUSH DE
8047:CD5580 CALL 8055
804A:D1 POP DE
Expanding MACRO add_e
n= 0020
LD A , E
804B:7B LD A, E
ADD A , n
804C:C620 ADD A, 20
LD E , A
804E:5F LD E, A
ENDM
ENDM
End of MACRO add_e
804F:CD5580 CALL 8055
8052:C9 RET
8053:0608 LD B, 08
8055: label draw_8_lines
8055:011008 LD BC, 0810
8058: label loop
8058:EDA0 LDI
805A:EDA0 LDI
805C:7E LD A, (HL)
805D:12 LD (DE), A
805E:23 INC HL
805F:1D DEC E
8060:1D DEC E
8061:14 INC D
8062:10F4 DJNZ 8058
8064:C9 RET
8065: label SPRITE_ADR
8065:000000 DEFB of 3 bytes
8068:000000 DEFB of 3 bytes
806B:01F010 DEFB of 3 bytes
806E:033810 DEFB of 3 bytes
8071:05D710 DEFB of 3 bytes
8074:05CC10 DEFB of 3 bytes
8077:053010 DEFB of 3 bytes
807A:04C810 DEFB of 3 bytes
807D:073610 DEFB of 3 bytes
8080:0CFE38 DEFB of 3 bytes
8083:1FF800 DEFB of 3 bytes
8086:000030 DEFB of 3 bytes
8089:03FFB0 DEFB of 3 bytes
808C:05FEE0 DEFB of 3 bytes
808F:0EFDC0 DEFB of 3 bytes
8092:18FC00 DEFB of 3 bytes
8095:180000 DEFB of 3 bytes
8098:01F800 DEFB of 3 bytes
809B:03FC00 DEFB of 3 bytes
809E:01B000 DEFB of 3 bytes
80A1:020C00 DEFB of 3 bytes
80A4:070E00 DEFB of 3 bytes
80A7:1E0780 DEFB of 3 bytes
80AA:000000 DEFB of 3 bytes
80AD: label LOADING_SCREN
INCBIN Alien8.scr
9BAD: END 8000
Emiting TAP basic loader
Emiting TAP from 8000 to 9BAC