/[projet1]/public/oric/routines/rasterization/linebench/display.s
Defence Force logotype

Contents of /public/oric/routines/rasterization/linebench/display.s

Parent Directory Parent Directory | Revision Log Revision Log


Revision 258 - (show annotations)
Sun Feb 7 14:05:11 2010 UTC (9 years, 11 months ago) by thrust26
File size: 3336 byte(s)
final optimization for mainly_horizontal, 517
1
2 #define X_SIZE 240
3 #define Y_SIZE 200
4 #define ROW_SIZE X_SIZE/6
5
6 .dsb 256-(*&255)
7
8 _HiresAddrLow .dsb Y_SIZE
9
10 .dsb 256-(*&255)
11
12 _HiresAddrHigh .dsb Y_SIZE
13
14 .dsb 256-(*&255)
15
16 .byt 0
17 _TableDiv6 .dsb X_SIZE
18
19 .dsb 256-(*&255)
20
21 .byt 0
22 _TableDiv6Rev .dsb X_SIZE
23
24 .dsb 256-(*&255)
25
26 .byt 0
27 _TableBit6Reverse
28 .byt 32,16,8,4,2,1
29 .byt 32,16,8,4,2,1
30 .byt 32,16,8,4,2,1
31 .byt 32,16,8,4,2,1
32 .byt 32,16,8,4,2,1
33 .byt 32,16,8,4,2,1
34 .byt 32,16,8,4,2,1
35 .byt 32,16,8,4,2,1
36 .byt 32,16,8,4,2,1
37 .byt 32,16,8,4,2,1
38
39 .byt 32,16,8,4,2,1
40 .byt 32,16,8,4,2,1
41 .byt 32,16,8,4,2,1
42 .byt 32,16,8,4,2,1
43 .byt 32,16,8,4,2,1
44 .byt 32,16,8,4,2,1
45 .byt 32,16,8,4,2,1
46 .byt 32,16,8,4,2,1
47 .byt 32,16,8,4,2,1
48 .byt 32,16,8,4,2,1
49
50 .byt 32,16,8,4,2,1
51 .byt 32,16,8,4,2,1
52 .byt 32,16,8,4,2,1
53 .byt 32,16,8,4,2,1
54 .byt 32,16,8,4,2,1
55 .byt 32,16,8,4,2,1
56 .byt 32,16,8,4,2,1
57 .byt 32,16,8,4,2,1
58 .byt 32,16,8,4,2,1
59 .byt 32,16,8,4,2,1
60
61 .byt 32,16,8,4,2,1
62 .byt 32,16,8,4,2,1
63 .byt 32,16,8,4,2,1
64 .byt 32,16,8,4,2,1
65 .byt 32,16,8,4,2,1
66 .byt 32,16,8,4,2,1
67 .byt 32,16,8,4,2,1
68 .byt 32,16,8,4,2,1
69 .byt 32,16,8,4,2,1
70 .byt 32,16,8,4,2,1
71
72 .dsb 256-(*&255)
73
74 .byt 0
75 _TableBit6
76 .byt 1,2,4,8,16,32
77 .byt 1,2,4,8,16,32
78 .byt 1,2,4,8,16,32
79 .byt 1,2,4,8,16,32
80 .byt 1,2,4,8,16,32
81 .byt 1,2,4,8,16,32
82 .byt 1,2,4,8,16,32
83 .byt 1,2,4,8,16,32
84 .byt 1,2,4,8,16,32
85 .byt 1,2,4,8,16,32
86
87 .byt 1,2,4,8,16,32
88 .byt 1,2,4,8,16,32
89 .byt 1,2,4,8,16,32
90 .byt 1,2,4,8,16,32
91 .byt 1,2,4,8,16,32
92 .byt 1,2,4,8,16,32
93 .byt 1,2,4,8,16,32
94 .byt 1,2,4,8,16,32
95 .byt 1,2,4,8,16,32
96 .byt 1,2,4,8,16,32
97
98 .byt 1,2,4,8,16,32
99 .byt 1,2,4,8,16,32
100 .byt 1,2,4,8,16,32
101 .byt 1,2,4,8,16,32
102 .byt 1,2,4,8,16,32
103 .byt 1,2,4,8,16,32
104 .byt 1,2,4,8,16,32
105 .byt 1,2,4,8,16,32
106 .byt 1,2,4,8,16,32
107 .byt 1,2,4,8,16,32
108
109 .byt 1,2,4,8,16,32
110 .byt 1,2,4,8,16,32
111 .byt 1,2,4,8,16,32
112 .byt 1,2,4,8,16,32
113 .byt 1,2,4,8,16,32
114 .byt 1,2,4,8,16,32
115 .byt 1,2,4,8,16,32
116 .byt 1,2,4,8,16,32
117 .byt 1,2,4,8,16,32
118 .byt 1,2,4,8,16,32
119
120
121 _GenerateTables
122 .(
123
124 ; Generate screen offset data
125 .(
126 lda #<$a000
127 sta tmp0+0
128 lda #>$a000
129 sta tmp0+1
130
131 ldx #0
132 loop
133 ; generate two bytes screen adress
134 clc
135 lda tmp0+0
136 sta _HiresAddrLow,x
137 adc #ROW_SIZE
138 sta tmp0+0
139 lda tmp0+1
140 sta _HiresAddrHigh,x
141 adc #0
142 sta tmp0+1
143
144 inx
145 cpx #Y_SIZE
146 bne loop
147 .)
148
149
150 ; Generate multiple of 6 data table
151 .(
152 lda #0 ; cur div
153 tay ; cur mod
154 tax
155 loop
156 sta _TableDiv6,x
157
158 iny
159 cpy #6
160 bne skip_mod
161 ldy #0
162 adc #0 ; carry = 1!
163 skip_mod
164
165 inx
166 cpx #X_SIZE
167 bne loop
168 .)
169 .(
170 lda #0 ; cur div
171 tay ; cur mod
172 ldx #X_SIZE
173 loop
174 dex
175 sta _TableDiv6Rev,x
176
177 iny
178 cpy #6
179 bne skip_mod
180 ldy #0
181 adc #0 ; carry = 1!
182 skip_mod
183
184 cpx #0
185 bne loop
186 .)
187 .)
188 rts
189
190
191
192
193
194
195

  ViewVC Help
Powered by ViewVC 1.1.26