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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 258 - (hide annotations)
Sun Feb 7 14:05:11 2010 UTC (10 years ago) by thrust26
File size: 3336 byte(s)
final optimization for mainly_horizontal, 517
1 dbug 46
2 thrust26 258 #define X_SIZE 240
3     #define Y_SIZE 200
4     #define ROW_SIZE X_SIZE/6
5 dbug 46
6 thrust26 258 .dsb 256-(*&255)
7 dbug 46
8 thrust26 258 _HiresAddrLow .dsb Y_SIZE
9 dbug 46
10 thrust26 258 .dsb 256-(*&255)
11 dbug 46
12 thrust26 258 _HiresAddrHigh .dsb Y_SIZE
13 dbug 46
14 thrust26 258 .dsb 256-(*&255)
15 dbug 46
16 thrust26 258 .byt 0
17     _TableDiv6 .dsb X_SIZE
18 dbug 46
19 thrust26 258 .dsb 256-(*&255)
20 dbug 46
21 thrust26 258 .byt 0
22     _TableDiv6Rev .dsb X_SIZE
23 dbug 46
24 thrust26 258 .dsb 256-(*&255)
25 dbug 46
26 thrust26 258 .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 dbug 46
39 thrust26 258 .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 dbug 46 _GenerateTables
122     .(
123    
124 thrust26 258 ; Generate screen offset data
125 dbug 46 .(
126 thrust26 258 lda #<$a000
127     sta tmp0+0
128     lda #>$a000
129     sta tmp0+1
130 dbug 46
131 thrust26 258 ldx #0
132 dbug 46 loop
133 thrust26 258 ; 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 dbug 46
144 thrust26 258 inx
145     cpx #Y_SIZE
146     bne loop
147 dbug 46 .)
148    
149    
150 thrust26 258 ; Generate multiple of 6 data table
151 dbug 46 .(
152 thrust26 258 lda #0 ; cur div
153     tay ; cur mod
154     tax
155 dbug 46 loop
156 thrust26 258 sta _TableDiv6,x
157 dbug 46
158 thrust26 258 iny
159     cpy #6
160     bne skip_mod
161     ldy #0
162     adc #0 ; carry = 1!
163 dbug 46 skip_mod
164    
165 thrust26 258 inx
166     cpx #X_SIZE
167     bne loop
168 dbug 46 .)
169 thrust26 258 .(
170     lda #0 ; cur div
171     tay ; cur mod
172     ldx #X_SIZE
173     loop
174     dex
175     sta _TableDiv6Rev,x
176 dbug 46
177 thrust26 258 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 dbug 46 .)
187 thrust26 258 .)
188     rts
189 dbug 46
190    
191    
192    
193    
194    
195    

  ViewVC Help
Powered by ViewVC 1.1.26