forked from gweg/rainpanic
-
Notifications
You must be signed in to change notification settings - Fork 0
/
display.s
122 lines (93 loc) · 1.6 KB
/
display.s
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
117
118
119
120
121
122
.dsb 256-(*&255)
_HiresAddrLow .dsb 201
.dsb 256-(*&255)
_HiresAddrHigh .dsb 201
.dsb 256-(*&255)
_TableDiv6 .dsb 256
_TableBit6Reverse
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
.byt 32,16,8,4,2,1
_GenerateTables
.(
; Generate screen offset data
.(
lda #<$a000
sta tmp0+0
lda #>$a000
sta tmp0+1
ldx #0
loop
; generate two bytes screen adress
clc
lda tmp0+0
sta _HiresAddrLow,x
adc #40
sta tmp0+0
lda tmp0+1
sta _HiresAddrHigh,x
adc #0
sta tmp0+1
inx
cpx #201
bne loop
.)
; Generate multiple of 6 data table
.(
lda #0
sta tmp0+1 ; cur div
sta tmp0+2 ; cur mod
ldx #0
loop
lda tmp0+1
sta _TableDiv6,x
ldy tmp0+2
iny
cpy #6
bne skip_mod
ldy #0
inc tmp0+1
skip_mod
sty tmp0+2
inx
bne loop
.)
.)
rts