2824
|
1 * Disassembly by Os9disasm of printf.r
|
|
2
|
|
3 section bss
|
|
4
|
|
5 * Uninitialized data (class B)
|
|
6 B0000 rmb 2
|
|
7 B0002 rmb 10
|
|
8 * Initialized Data (class G)
|
|
9 G0000 fcb $27
|
|
10 fcb $10
|
|
11 fcb $03
|
|
12 fcb $e8
|
|
13 fcb $00
|
|
14 fcb $64
|
|
15 fcb $00
|
|
16 fcb $0a
|
|
17
|
|
18 endsect
|
|
19
|
|
20 section code
|
|
21
|
|
22 printf: pshs u
|
|
23 leau 6,s
|
|
24 leax _iob+13,y
|
|
25 ldd 4,s
|
|
26 bra L0014
|
|
27 fprintf: pshs u
|
|
28 leau 8,s
|
|
29 ldx 4,s
|
|
30 ldd 6,s
|
|
31 L0014 stx B0000,y
|
|
32 leax L024a,pcr
|
|
33 bra L002e
|
|
34 sprintf: pshs u
|
|
35 ldd 4,s
|
|
36 std B0000,y
|
|
37 leau 8,s
|
|
38 ldd 6,s
|
|
39 leax L0256,pcr
|
|
40 L002e pshs d,u
|
|
41 pshs x
|
|
42 bsr L003b
|
|
43 leas 6,s
|
|
44 puls u,pc
|
|
45 L0038 leas 8,s
|
|
46 rts
|
|
47 L003b ldu 4,s
|
|
48 leas -8,s
|
|
49 bra L004a
|
|
50 L0041 ldx 14,s
|
|
51 ldd ,x++
|
|
52 stx 14,s
|
|
53 L0047 jsr [10,s]
|
|
54 L004a ldb ,u+
|
|
55 beq L0038
|
|
56 cmpb #$25
|
|
57 bne L0047
|
|
58 clrb
|
|
59 lda #$7d
|
|
60 std ,s
|
|
61 stb 7,s
|
|
62 stb 2,s
|
|
63 ldb ,u+
|
|
64 cmpb #$2d
|
|
65 bne L0065
|
|
66 stb 7,s
|
|
67 ldb ,u+
|
|
68 L0065 cmpb #$30
|
|
69 beq L006b
|
|
70 ldb #$20
|
|
71 L006b stb 6,s
|
|
72 ldb -1,u
|
|
73 lbsr L021f
|
|
74 std 3,s
|
|
75 ldb ,u+
|
|
76 cmpb #$2e
|
|
77 bne L0085
|
|
78 stb 2,s
|
|
79 ldb ,u+
|
|
80 lbsr L021f
|
|
81 std ,s
|
|
82 ldb ,u+
|
|
83 L0085 cmpb #$63
|
|
84 beq L0041
|
|
85 pshs u
|
|
86 cmpb #$66
|
|
87 beq L00c5
|
|
88 cmpb #$65
|
|
89 beq L00c5
|
|
90 cmpb #$67
|
|
91 beq L00c5
|
|
92 cmpb #$45
|
|
93 beq L00c5
|
|
94 cmpb #$47
|
|
95 beq L00c5
|
|
96 cmpb #$6c
|
|
97 beq L00e6
|
|
98 cmpb #$73
|
|
99 beq L0108
|
|
100 cmpb #$64
|
|
101 beq L0124
|
|
102 cmpb #$6f
|
|
103 lbeq L01ca
|
|
104 cmpb #$78
|
|
105 lbeq L0182
|
|
106 cmpb #$58
|
|
107 lbeq L0182
|
|
108 cmpb #$75
|
|
109 beq L0137
|
|
110 puls u
|
|
111 bra L0047
|
|
112 L00c5 ldd 5,s
|
|
113 pshs d
|
|
114 leax 18,s
|
|
115 ldd 4,s
|
|
116 tst 6,s
|
|
117 bne L00d5
|
|
118 ldd #6
|
|
119 L00d5 pshs d,x
|
|
120 ldd #$7d00
|
|
121 std 8,s
|
|
122 ldb -1,u
|
|
123 clra
|
|
124 pshs d
|
|
125 lbsr pffloat
|
|
126 bra L0101
|
|
127 L00e6 pshs u
|
|
128 ldx 18,s
|
|
129 ldd 2,x
|
|
130 pshs d
|
|
131 ldd ,x
|
|
132 pshs d
|
|
133 leax 4,x
|
|
134 stx 22,s
|
|
135 ldb ,u+
|
|
136 stu 6,s
|
|
137 pshs d
|
|
138 lbsr pflong
|
|
139 L0101 leas 8,s
|
|
140 tfr d,u
|
|
141 lbra L01b4
|
|
142 L0108 bsr L0179
|
|
143 tfr d,u
|
|
144 pshs u
|
|
145 lbsr strlen
|
|
146 leas 2,s
|
|
147 tst 4,s
|
|
148 beq L011e
|
|
149 cmpd 2,s
|
|
150 bhi L011e
|
|
151 std 2,s
|
|
152 L011e lbsr L01e9
|
|
153 lbra L01b6
|
|
154 L0124 bsr L0175
|
|
155 pshs d,x,y,u
|
|
156 tsta
|
|
157 bpl L013b
|
|
158 nega
|
|
159 negb
|
|
160 sbca #0
|
|
161 std ,s
|
|
162 ldb #$2d
|
|
163 stb ,u+
|
|
164 bra L013b
|
|
165 L0137 bsr L0175
|
|
166 pshs d,x,y,u
|
|
167 L013b ldd #5
|
|
168 std 2,s
|
|
169 sta 4,s
|
|
170 leax G0000,y
|
|
171 puls d
|
|
172 bra L0167
|
|
173 L014a inc ,s
|
|
174 L014c subd ,x
|
|
175 bcc L014a
|
|
176 addd ,x++
|
|
177 pshs b
|
|
178 ldb 1,s
|
|
179 tst 3,s
|
|
180 bne L015f
|
|
181 tstb
|
|
182 beq L0163
|
|
183 inc 3,s
|
|
184 L015f addb #$30
|
|
185 stb ,u+
|
|
186 L0163 clr 1,s
|
|
187 puls b
|
|
188 L0167 dec 1,s
|
|
189 bne L014c
|
|
190 addb #$30
|
|
191 stb ,u+
|
|
192 clr ,u
|
|
193 leas 4,s
|
|
194 bra L01b2
|
|
195 L0175 leau B0002,y
|
|
196 L0179 ldx 18,s
|
|
197 ldd ,x++
|
|
198 stx 18,s
|
|
199 rts
|
|
200 L0182 andb #$20
|
|
201 stb 7,s
|
|
202 bsr L0175
|
|
203 pshs d,u
|
|
204 L018a andb #$0f
|
|
205 pshs b
|
|
206 lda #$30
|
|
207 cmpb #9
|
|
208 ble L0198
|
|
209 lda #$37
|
|
210 adda 12,s
|
|
211 L0198 adda ,s+
|
|
212 sta ,u+
|
|
213 ldd ,s
|
|
214 lsra
|
|
215 rorb
|
|
216 lsra
|
|
217 rorb
|
|
218 lsra
|
|
219 rorb
|
|
220 lsra
|
|
221 rorb
|
|
222 std ,s
|
|
223 bne L018a
|
|
224 L01aa clr ,u
|
|
225 ldx 2,s
|
|
226 bsr frevers
|
|
227 leas 2,s
|
|
228 L01b2 puls u
|
|
229 L01b4 bsr L01e2
|
|
230 L01b6 puls u
|
|
231 lbra L004a
|
|
232 L01bb ldb ,x
|
|
233 lda ,-u
|
|
234 sta ,x+
|
|
235 stb ,u
|
|
236 frevers: pshs u
|
|
237 cmpx ,s++
|
|
238 bcs L01bb
|
|
239 rts
|
|
240 L01ca bsr L0175
|
|
241 pshs d,u
|
|
242 L01ce andb #7
|
|
243 addb #$30
|
|
244 stb ,u+
|
|
245 ldd ,s
|
|
246 lsra
|
|
247 rorb
|
|
248 lsra
|
|
249 rorb
|
|
250 lsra
|
|
251 rorb
|
|
252 std ,s
|
|
253 bne L01ce
|
|
254 bra L01aa
|
|
255 L01e2 pshs u
|
|
256 lbsr strlen
|
|
257 leas 2,s
|
|
258 L01e9 nega
|
|
259 negb
|
|
260 sbca #0
|
|
261 addd 7,s
|
|
262 std 7,s
|
|
263 tst 11,s
|
|
264 bne L0200
|
|
265 bsr L0215
|
|
266 bra L0200
|
|
267 L01f9 ldb ,u+
|
|
268 beq L0209
|
|
269 jsr [14,s]
|
|
270 L0200 ldd 4,s
|
|
271 subd #1
|
|
272 std 4,s
|
|
273 bpl L01f9
|
|
274 L0209 tst 11,s
|
|
275 beq L020f
|
|
276 bsr L0215
|
|
277 L020f rts
|
|
278 L0210 ldb 12,s
|
|
279 jsr [16,s]
|
|
280 L0215 ldd 9,s
|
|
281 subd #1
|
|
282 std 9,s
|
|
283 bpl L0210
|
|
284 rts
|
|
285 L021f clr ,-s
|
|
286 clr ,-s
|
|
287 leau -1,u
|
|
288 leax _chcodes,y
|
|
289 bra L0242
|
|
290 L022b ldd ,s
|
|
291 lslb
|
|
292 rola
|
|
293 std ,s
|
|
294 lslb
|
|
295 rola
|
|
296 lslb
|
|
297 rola
|
|
298 addd ,s
|
|
299 addb ,u+
|
|
300 adca #0
|
|
301 subd #$0030
|
|
302 std ,s
|
|
303 ldb ,u
|
|
304 L0242 lda b,x
|
|
305 anda #8
|
|
306 bne L022b
|
|
307 puls d,pc
|
|
308 L024a ldx B0000,y
|
|
309 pshs d,x
|
|
310 lbsr putc
|
|
311 leas 4,s
|
|
312 rts
|
|
313 L0256 ldx B0000,y
|
|
314 stb ,x+
|
|
315 stx B0000,y
|
|
316 clr ,x
|
|
317 rts
|
|
318
|
|
319 endsect
|
|
320
|