Revision 73
Added by markw about 11 years ago
common/romgen/HelloTinyROM.dis | ||
---|---|---|
|
||
HelloTinyROM.elf: file format elf32-zpu
|
||
|
||
Disassembly of section .fixed_vectors:
|
||
|
||
00000000 <_start>:
|
||
0: 0b nop
|
||
1: 0b nop
|
||
2: 0b nop
|
||
3: 89 im 9
|
||
4: ab im 43
|
||
5: 04 poppc
|
||
6: 0b nop
|
||
7: 0b nop
|
||
8: 0b nop
|
||
9: 0b nop
|
||
a: 0b nop
|
||
b: 0b nop
|
||
c: 0b nop
|
||
d: 0b nop
|
||
e: 0b nop
|
||
f: 0b nop
|
||
10: 0b nop
|
||
11: 0b nop
|
||
12: 0b nop
|
||
13: 0b nop
|
||
14: 0b nop
|
||
15: 0b nop
|
||
16: 0b nop
|
||
17: 0b nop
|
||
18: 0b nop
|
||
19: 0b nop
|
||
1a: 0b nop
|
||
1b: 0b nop
|
||
1c: 0b nop
|
||
1d: 0b nop
|
||
1e: 0b nop
|
||
1f: 0b nop
|
||
20: 0b nop
|
||
21: 0b nop
|
||
22: 0b nop
|
||
23: 0b nop
|
||
...
|
||
|
||
00000040 <_loadh>:
|
||
40: 71 loadsp 4
|
||
41: fd im -3
|
||
42: 06 and
|
||
43: 08 load
|
||
44: 72 loadsp 8
|
||
45: 83 im 3
|
||
46: 06 and
|
||
47: 09 not
|
||
48: 81 im 1
|
||
49: 05 add
|
||
4a: 82 im 2
|
||
4b: 05 add
|
||
4c: 83 im 3
|
||
4d: 2b ashiftleft
|
||
4e: 2a lshiftright
|
||
4f: 83 im 3
|
||
50: ff im -1
|
||
51: ff im -1
|
||
52: 06 and
|
||
53: 52 storesp 8
|
||
54: 04 poppc
|
||
...
|
||
|
||
00000060 <_storeh>:
|
||
60: 71 loadsp 4
|
||
61: fd im -3
|
||
62: 06 and
|
||
63: 08 load
|
||
64: 83 im 3
|
||
65: ff im -1
|
||
66: ff im -1
|
||
67: 73 loadsp 12
|
||
68: 83 im 3
|
||
69: 06 and
|
||
6a: 09 not
|
||
6b: 81 im 1
|
||
6c: 05 add
|
||
6d: 82 im 2
|
||
6e: 05 add
|
||
6f: 83 im 3
|
||
70: 2b ashiftleft
|
||
71: 2b ashiftleft
|
||
72: 09 not
|
||
73: 06 and
|
||
74: 73 loadsp 12
|
||
75: 83 im 3
|
||
76: ff im -1
|
||
77: ff im -1
|
||
78: 0b nop
|
||
79: 0b nop
|
||
7a: 0b nop
|
||
7b: 0b nop
|
||
7c: 83 im 3
|
||
7d: a7 im 39
|
||
7e: 04 poppc
|
||
...
|
||
|
||
00000080 <_lessthan>:
|
||
80: 72 loadsp 8
|
||
81: 09 not
|
||
82: 81 im 1
|
||
83: 05 add
|
||
84: 72 loadsp 8
|
||
85: 05 add
|
||
86: 73 loadsp 12
|
||
87: 73 loadsp 12
|
||
88: 09 not
|
||
89: 06 and
|
||
8a: 09 not
|
||
8b: 06 and
|
||
8c: 73 loadsp 12
|
||
8d: 09 not
|
||
8e: 73 loadsp 12
|
||
8f: 06 and
|
||
90: 07 or
|
||
91: 0a flip
|
||
92: 81 im 1
|
||
93: 06 and
|
||
94: 53 storesp 12
|
||
95: 51 storesp 4
|
||
96: 04 poppc
|
||
...
|
||
|
||
000000a0 <_lessthanorequal>:
|
||
a0: 72 loadsp 8
|
||
a1: 72 loadsp 8
|
||
a2: 24 lessthan
|
||
a3: 73 loadsp 12
|
||
a4: 73 loadsp 12
|
||
a5: 2e eq
|
||
a6: 07 or
|
||
a7: 53 storesp 12
|
||
a8: 51 storesp 4
|
||
a9: 04 poppc
|
||
...
|
||
|
||
000000c0 <_ulessthan>:
|
||
c0: 71 loadsp 4
|
||
c1: 73 loadsp 12
|
||
c2: 71 loadsp 4
|
||
c3: 09 not
|
||
c4: 71 loadsp 4
|
||
c5: 06 and
|
||
c6: 81 im 1
|
||
c7: 06 and
|
||
c8: 30 neg
|
||
c9: 72 loadsp 8
|
||
ca: 0a flip
|
||
cb: 10 addsp 0
|
||
cc: 0a flip
|
||
cd: 72 loadsp 8
|
||
ce: 0a flip
|
||
cf: 10 addsp 0
|
||
d0: 0a flip
|
||
d1: 31 sub
|
||
d2: 05 add
|
||
d3: 0a flip
|
||
d4: 81 im 1
|
||
d5: 06 and
|
||
d6: 51 storesp 4
|
||
d7: 51 storesp 4
|
||
d8: 53 storesp 12
|
||
d9: 51 storesp 4
|
||
da: 04 poppc
|
||
db: 00 breakpoint
|
||
dc: 00 breakpoint
|
||
dd: 00 breakpoint
|
||
...
|
||
|
||
000000e0 <_ulessthanorequal>:
|
||
e0: 72 loadsp 8
|
||
e1: 72 loadsp 8
|
||
e2: 26 ulessthan
|
||
e3: 73 loadsp 12
|
||
e4: 73 loadsp 12
|
||
e5: 2e eq
|
||
e6: 07 or
|
||
e7: 53 storesp 12
|
||
e8: 51 storesp 4
|
||
e9: 04 poppc
|
||
...
|
||
|
||
00000100 <_swap>:
|
||
...
|
||
|
||
00000120 <_slowmult>:
|
||
120: 0b nop
|
||
121: 0b nop
|
||
122: 0b nop
|
||
123: 88 im 8
|
||
124: bc im 60
|
||
125: 04 poppc
|
||
...
|
||
|
||
00000140 <_lshiftright>:
|
||
140: 72 loadsp 8
|
||
141: 0a flip
|
||
142: 72 loadsp 8
|
||
143: 2b ashiftleft
|
||
144: 0a flip
|
||
145: 53 storesp 12
|
||
146: 51 storesp 4
|
||
147: 04 poppc
|
||
...
|
||
|
||
00000160 <_ashiftleft>:
|
||
160: 72 loadsp 8
|
||
161: 72 loadsp 8
|
||
162: 9f im 31
|
||
163: 06 and
|
||
164: 09 not
|
||
165: 81 im 1
|
||
166: 05 add
|
||
167: 0b nop
|
||
168: 0b nop
|
||
169: 0b nop
|
||
16a: 88 im 8
|
||
16b: 9f im 31
|
||
16c: 05 add
|
||
16d: 04 poppc
|
||
...
|
||
|
||
00000180 <_ashiftright>:
|
||
180: 72 loadsp 8
|
||
181: 72 loadsp 8
|
||
182: 2a lshiftright
|
||
183: ff im -1
|
||
184: 73 loadsp 12
|
||
185: 9f im 31
|
||
186: 06 and
|
||
187: 2a lshiftright
|
||
188: 09 not
|
||
189: 74 loadsp 16
|
||
18a: 09 not
|
||
18b: 0a flip
|
||
18c: 81 im 1
|
||
18d: 06 and
|
||
18e: ff im -1
|
||
18f: 05 add
|
||
190: 06 and
|
||
191: 07 or
|
||
192: 53 storesp 12
|
||
193: 51 storesp 4
|
||
194: 04 poppc
|
||
...
|
||
|
||
000001a0 <_call>:
|
||
1a0: 71 loadsp 4
|
||
1a1: 71 loadsp 4
|
||
1a2: 53 storesp 12
|
||
1a3: 51 storesp 4
|
||
1a4: 02 pushsp
|
||
1a5: 0d popsp
|
||
1a6: 04 poppc
|
||
|
||
000001a7 <_storehtail>:
|
||
1a7: 06 and
|
||
1a8: 73 loadsp 12
|
||
1a9: 83 im 3
|
||
1aa: 06 and
|
||
1ab: 09 not
|
||
1ac: 81 im 1
|
||
1ad: 05 add
|
||
1ae: 82 im 2
|
||
1af: 05 add
|
||
1b0: 83 im 3
|
||
1b1: 2b ashiftleft
|
||
1b2: 0b nop
|
||
1b3: 2b ashiftleft
|
||
1b4: 07 or
|
||
1b5: 72 loadsp 8
|
||
1b6: fc im -4
|
||
1b7: 06 and
|
||
1b8: 0c store
|
||
1b9: 51 storesp 4
|
||
1ba: 51 storesp 4
|
||
1bb: 04 poppc
|
||
1bc: 00 breakpoint
|
||
1bd: 00 breakpoint
|
||
...
|
||
|
||
000001c0 <_eq>:
|
||
1c0: 72 loadsp 8
|
||
1c1: 09 not
|
||
1c2: 81 im 1
|
||
1c3: 05 add
|
||
1c4: 72 loadsp 8
|
||
1c5: 05 add
|
||
1c6: 09 not
|
||
1c7: 70 loadsp 0
|
||
1c8: 81 im 1
|
||
1c9: 05 add
|
||
1ca: 09 not
|
||
1cb: 06 and
|
||
1cc: 0a flip
|
||
1cd: 81 im 1
|
||
1ce: 06 and
|
||
1cf: 53 storesp 12
|
||
1d0: 51 storesp 4
|
||
1d1: 04 poppc
|
||
...
|
||
|
||
000001e0 <_neq>:
|
||
1e0: 72 loadsp 8
|
||
1e1: 09 not
|
||
1e2: 81 im 1
|
||
1e3: 05 add
|
||
1e4: 72 loadsp 8
|
||
1e5: 05 add
|
||
1e6: 09 not
|
||
1e7: 70 loadsp 0
|
||
1e8: 81 im 1
|
||
1e9: 05 add
|
||
1ea: 09 not
|
||
1eb: 06 and
|
||
1ec: 0a flip
|
||
1ed: 09 not
|
||
1ee: 81 im 1
|
||
1ef: 06 and
|
||
1f0: 53 storesp 12
|
||
1f1: 51 storesp 4
|
||
1f2: 04 poppc
|
||
...
|
||
|
||
00000200 <_neg>:
|
||
200: 71 loadsp 4
|
||
201: 09 not
|
||
202: 81 im 1
|
||
203: 05 add
|
||
204: 52 storesp 8
|
||
205: 04 poppc
|
||
...
|
||
|
||
00000220 <_sub>:
|
||
220: 72 loadsp 8
|
||
221: 72 loadsp 8
|
||
222: 09 not
|
||
223: 81 im 1
|
||
224: 05 add
|
||
225: 05 add
|
||
226: 53 storesp 12
|
||
227: 51 storesp 4
|
||
228: 04 poppc
|
||
...
|
||
|
||
00000240 <_xor>:
|
||
240: 72 loadsp 8
|
||
241: 09 not
|
||
242: 72 loadsp 8
|
||
243: 06 and
|
||
244: 73 loadsp 12
|
||
245: 73 loadsp 12
|
||
246: 09 not
|
||
247: 06 and
|
||
248: 07 or
|
||
249: 53 storesp 12
|
||
24a: 51 storesp 4
|
||
24b: 04 poppc
|
||
...
|
||
|
||
00000260 <_loadb>:
|
||
260: 71 loadsp 4
|
||
261: fc im -4
|
||
262: 06 and
|
||
263: 08 load
|
||
264: 72 loadsp 8
|
||
265: 83 im 3
|
||
266: 06 and
|
||
267: 09 not
|
||
268: 81 im 1
|
||
269: 05 add
|
||
26a: 83 im 3
|
||
26b: 05 add
|
||
26c: 10 addsp 0
|
||
26d: 10 addsp 0
|
||
26e: 10 addsp 0
|
||
26f: 2a lshiftright
|
||
270: 81 im 1
|
||
271: ff im -1
|
||
272: 06 and
|
||
273: 52 storesp 8
|
||
274: 04 poppc
|
||
...
|
||
|
||
00000280 <_storeb>:
|
||
280: 71 loadsp 4
|
||
281: fc im -4
|
||
282: 06 and
|
||
283: 08 load
|
||
284: 0b nop
|
||
285: 0b nop
|
||
286: 0b nop
|
||
287: 92 im 18
|
||
288: b8 im 56
|
||
289: 73 loadsp 12
|
||
28a: 83 im 3
|
||
28b: 06 and
|
||
28c: 10 addsp 0
|
||
28d: 10 addsp 0
|
||
28e: 05 add
|
||
28f: 08 load
|
||
290: 06 and
|
||
291: 0b nop
|
||
292: 0b nop
|
||
293: 0b nop
|
||
294: 88 im 8
|
||
295: a2 im 34
|
||
296: 04 poppc
|
||
...
|
||
|
||
000002a0 <_div>:
|
||
2a0: 0b nop
|
||
2a1: 0b nop
|
||
2a2: 0b nop
|
||
2a3: 88 im 8
|
||
2a4: fe im -2
|
||
2a5: 04 poppc
|
||
...
|
||
|
||
000002c0 <_mod>:
|
||
2c0: 0b nop
|
||
2c1: 0b nop
|
||
2c2: 0b nop
|
||
2c3: 88 im 8
|
||
2c4: d8 im -40
|
||
2c5: 04 poppc
|
||
...
|
||
|
||
000002e0 <_eqbranch>:
|
||
2e0: 72 loadsp 8
|
||
2e1: 09 not
|
||
2e2: 70 loadsp 0
|
||
2e3: 81 im 1
|
||
2e4: 05 add
|
||
2e5: 09 not
|
||
2e6: 06 and
|
||
2e7: 0a flip
|
||
2e8: 81 im 1
|
||
2e9: 06 and
|
||
2ea: ff im -1
|
||
2eb: 05 add
|
||
2ec: 70 loadsp 0
|
||
2ed: 54 storesp 16
|
||
2ee: 71 loadsp 4
|
||
2ef: 06 and
|
||
2f0: 73 loadsp 12
|
||
2f1: 09 not
|
||
2f2: 72 loadsp 8
|
||
2f3: 74 loadsp 16
|
||
2f4: 05 add
|
||
2f5: ff im -1
|
||
2f6: 05 add
|
||
2f7: 06 and
|
||
2f8: 07 or
|
||
2f9: 51 storesp 4
|
||
2fa: 51 storesp 4
|
||
2fb: 51 storesp 4
|
||
2fc: 04 poppc
|
||
2fd: 00 breakpoint
|
||
...
|
||
|
||
00000300 <_neqbranch>:
|
||
300: 72 loadsp 8
|
||
301: 09 not
|
||
302: 70 loadsp 0
|
||
303: 81 im 1
|
||
304: 05 add
|
||
305: 09 not
|
||
306: 06 and
|
||
307: 0a flip
|
||
308: 09 not
|
||
309: 81 im 1
|
||
30a: 06 and
|
||
30b: ff im -1
|
||
30c: 05 add
|
||
30d: 70 loadsp 0
|
||
30e: 54 storesp 16
|
||
30f: 71 loadsp 4
|
||
310: 06 and
|
||
311: 73 loadsp 12
|
||
312: 09 not
|
||
313: 72 loadsp 8
|
||
314: 74 loadsp 16
|
||
315: 05 add
|
||
316: ff im -1
|
||
317: 05 add
|
||
318: 06 and
|
||
319: 07 or
|
||
31a: 51 storesp 4
|
||
31b: 51 storesp 4
|
||
31c: 51 storesp 4
|
||
31d: 04 poppc
|
||
...
|
||
|
||
00000320 <_poppcrel>:
|
||
320: 05 add
|
||
321: ff im -1
|
||
322: 05 add
|
||
323: 04 poppc
|
||
...
|
||
|
||
00000340 <_config>:
|
||
340: 81 im 1
|
||
341: 0b nop
|
||
342: 92 im 18
|
||
343: c8 im -56
|
||
344: 0c store
|
||
345: 51 storesp 4
|
||
346: 04 poppc
|
||
...
|
||
|
||
0000035d <_pushpc>:
|
||
35d: 71 loadsp 4
|
||
35e: 81 im 1
|
||
35f: 05 add
|
||
360: 52 storesp 8
|
||
361: 04 poppc
|
||
...
|
||
|
||
0000037d <_syscall_emulate>:
|
||
...
|
||
|
||
0000039d <_pushspadd>:
|
||
39d: 02 pushsp
|
||
39e: 84 im 4
|
||
39f: 05 add
|
||
3a0: 72 loadsp 8
|
||
3a1: 10 addsp 0
|
||
3a2: 10 addsp 0
|
||
3a3: 05 add
|
||
3a4: 52 storesp 8
|
||
3a5: 04 poppc
|
||
...
|
||
|
||
000003bd <_halfmult>:
|
||
...
|
||
|
||
000003dd <_callpcrel>:
|
||
3dd: 71 loadsp 4
|
||
3de: 71 loadsp 4
|
||
3df: 05 add
|
||
3e0: ff im -1
|
||
3e1: 05 add
|
||
3e2: 71 loadsp 4
|
||
3e3: 53 storesp 12
|
||
3e4: 51 storesp 4
|
||
3e5: 02 pushsp
|
||
3e6: 0d popsp
|
||
3e7: 04 poppc
|
||
...
|
||
Disassembly of section .text:
|
||
|
||
00000400 <_ashiftleftBegin>:
|
||
400: 10 addsp 0
|
||
401: 10 addsp 0
|
||
402: 10 addsp 0
|
||
403: 10 addsp 0
|
||
404: 10 addsp 0
|
||
405: 10 addsp 0
|
||
406: 10 addsp 0
|
||
407: 10 addsp 0
|
||
408: 10 addsp 0
|
||
409: 10 addsp 0
|
||
40a: 10 addsp 0
|
||
40b: 10 addsp 0
|
||
40c: 10 addsp 0
|
||
40d: 10 addsp 0
|
||
40e: 10 addsp 0
|
||
40f: 10 addsp 0
|
||
410: 10 addsp 0
|
||
411: 10 addsp 0
|
||
412: 10 addsp 0
|
||
413: 10 addsp 0
|
||
414: 10 addsp 0
|
||
415: 10 addsp 0
|
||
416: 10 addsp 0
|
||
417: 10 addsp 0
|
||
418: 10 addsp 0
|
||
419: 10 addsp 0
|
||
41a: 10 addsp 0
|
||
41b: 10 addsp 0
|
||
41c: 10 addsp 0
|
||
41d: 10 addsp 0
|
||
41e: 10 addsp 0
|
||
|
||
0000041f <_ashiftleftEnd>:
|
||
41f: 53 storesp 12
|
||
420: 51 storesp 4
|
||
421: 04 poppc
|
||
|
||
00000422 <_storebtail>:
|
||
422: 73 loadsp 12
|
||
423: 81 im 1
|
||
424: ff im -1
|
||
425: 06 and
|
||
426: 73 loadsp 12
|
||
427: 83 im 3
|
||
428: 06 and
|
||
429: 09 not
|
||
42a: 81 im 1
|
||
42b: 05 add
|
||
42c: 83 im 3
|
||
42d: 05 add
|
||
42e: 10 addsp 0
|
||
42f: 10 addsp 0
|
||
430: 10 addsp 0
|
||
431: 2b ashiftleft
|
||
432: 07 or
|
||
433: 72 loadsp 8
|
||
434: fc im -4
|
||
435: 06 and
|
||
436: 0c store
|
||
437: 51 storesp 4
|
||
438: 51 storesp 4
|
||
439: 04 poppc
|
||
|
||
0000043a <_syscall>:
|
||
43a: 3c syscall
|
||
43b: 04 poppc
|
||
|
||
0000043c <_slowmultImpl>:
|
||
43c: 72 loadsp 8
|
||
43d: 72 loadsp 8
|
||
43e: 80 im 0
|
||
43f: 72 loadsp 8
|
||
440: 81 im 1
|
||
441: 06 and
|
||
442: ff im -1
|
||
443: 05 add
|
||
444: 09 not
|
||
445: 72 loadsp 8
|
||
446: 06 and
|
||
447: 05 add
|
||
448: 71 loadsp 4
|
||
449: 10 addsp 0
|
||
44a: 52 storesp 8
|
||
44b: 72 loadsp 8
|
||
44c: 0a flip
|
||
44d: 10 addsp 0
|
||
44e: 0a flip
|
||
44f: 53 storesp 12
|
||
450: 72 loadsp 8
|
||
451: ed im -19
|
||
452: 38 neqbranch
|
||
453: 51 storesp 4
|
||
454: 51 storesp 4
|
||
455: 53 storesp 12
|
||
456: 51 storesp 4
|
||
457: 04 poppc
|
||
|
||
00000458 <___mod>:
|
||
458: 83 im 3
|
||
459: e0 im -32
|
||
45a: 80 im 0
|
||
45b: 08 load
|
||
45c: 83 im 3
|
||
45d: e0 im -32
|
||
45e: 84 im 4
|
||
45f: 08 load
|
||
460: 83 im 3
|
||
461: e0 im -32
|
||
462: 88 im 8
|
||
463: 08 load
|
||
464: 75 loadsp 20
|
||
465: 75 loadsp 20
|
||
466: 8f im 15
|
||
467: 82 im 2
|
||
468: 2d call
|
||
469: 50 storesp 0
|
||
46a: 50 storesp 0
|
||
46b: 83 im 3
|
||
46c: e0 im -32
|
||
46d: 80 im 0
|
||
46e: 08 load
|
||
46f: 56 storesp 24
|
||
470: 83 im 3
|
||
471: e0 im -32
|
||
472: 88 im 8
|
||
473: 0c store
|
||
474: 83 im 3
|
||
475: e0 im -32
|
||
476: 84 im 4
|
||
477: 0c store
|
||
478: 83 im 3
|
||
479: e0 im -32
|
||
47a: 80 im 0
|
||
47b: 0c store
|
||
47c: 51 storesp 4
|
||
47d: 04 poppc
|
||
|
||
0000047e <___div>:
|
||
47e: 83 im 3
|
||
47f: e0 im -32
|
||
480: 80 im 0
|
||
481: 08 load
|
||
482: 83 im 3
|
||
483: e0 im -32
|
||
484: 84 im 4
|
||
485: 08 load
|
||
486: 83 im 3
|
||
487: e0 im -32
|
||
488: 88 im 8
|
||
489: 08 load
|
||
48a: 75 loadsp 20
|
||
48b: 75 loadsp 20
|
||
48c: 8d im 13
|
||
48d: 96 im 22
|
||
48e: 2d call
|
||
48f: 50 storesp 0
|
||
490: 50 storesp 0
|
||
491: 83 im 3
|
||
492: e0 im -32
|
||
493: 80 im 0
|
||
494: 08 load
|
||
495: 56 storesp 24
|
||
496: 83 im 3
|
||
497: e0 im -32
|
||
498: 88 im 8
|
||
499: 0c store
|
||
49a: 83 im 3
|
||
49b: e0 im -32
|
||
49c: 84 im 4
|
||
49d: 0c store
|
||
49e: 83 im 3
|
||
49f: e0 im -32
|
||
4a0: 80 im 0
|
||
4a1: 0c store
|
||
4a2: 51 storesp 4
|
||
4a3: 04 poppc
|
||
...
|
||
|
||
000004a6 <_boot>:
|
||
4a6: 80 im 0
|
||
4a7: 04 poppc
|
||
|
||
000004a8 <_break>:
|
||
4a8: 89 im 9
|
||
4a9: a8 im 40
|
||
4aa: 04 poppc
|
||
|
||
000004ab <_premain>:
|
||
4ab: 89 im 9
|
||
4ac: a8 im 40
|
||
4ad: 0b nop
|
||
4ae: 8c im 12
|
||
4af: d8 im -40
|
||
4b0: 04 poppc
|
||
|
||
000004b1 <wait_us>:
|
||
#include "led.h"
|
||
|
||
void
|
||
wait_us(int unsigned num)
|
||
{
|
||
4b1: 83 im 3
|
||
4b2: e0 im -32
|
||
4b3: 8c im 12
|
||
4b4: 08 load
|
||
4b5: 02 pushsp
|
||
4b6: 83 im 3
|
||
4b7: e0 im -32
|
||
4b8: 8c im 12
|
||
4b9: 0c store
|
||
4ba: fe im -2
|
||
4bb: 3d pushspadd
|
||
4bc: 0d popsp
|
||
|
||
000004bd <.LM2>:
|
||
// 28ish
|
||
int unsigned cycles = num*28;
|
||
4bd: 83 im 3
|
||
4be: e0 im -32
|
||
4bf: 8c im 12
|
||
4c0: 08 load
|
||
4c1: 88 im 8
|
||
4c2: 05 add
|
||
4c3: 08 load
|
||
4c4: 70 loadsp 0
|
||
4c5: 70 loadsp 0
|
||
4c6: 83 im 3
|
||
4c7: 2b ashiftleft
|
||
4c8: 70 loadsp 0
|
||
4c9: 73 loadsp 12
|
||
4ca: 31 sub
|
||
4cb: 70 loadsp 0
|
||
4cc: 82 im 2
|
||
4cd: 2b ashiftleft
|
||
4ce: 70 loadsp 0
|
||
4cf: 83 im 3
|
||
4d0: e0 im -32
|
||
4d1: 8c im 12
|
||
4d2: 08 load
|
||
4d3: fc im -4
|
||
4d4: 05 add
|
||
4d5: 0c store
|
||
|
||
000004d6 <.LM3>:
|
||
*zpu_pause = cycles;
|
||
4d6: 92 im 18
|
||
4d7: d4 im -44
|
||
4d8: 08 load
|
||
4d9: 83 im 3
|
||
4da: e0 im -32
|
||
4db: 8c im 12
|
||
4dc: 08 load
|
||
4dd: fc im -4
|
||
4de: 05 add
|
||
4df: 08 load
|
||
4e0: 71 loadsp 4
|
||
4e1: 0c store
|
||
4e2: 51 storesp 4
|
||
4e3: 51 storesp 4
|
||
4e4: 51 storesp 4
|
||
4e5: 51 storesp 4
|
||
4e6: 52 storesp 8
|
||
4e7: 52 storesp 8
|
||
|
||
000004e8 <.LM4>:
|
||
}
|
||
4e8: 84 im 4
|
||
4e9: 3d pushspadd
|
||
4ea: 0d popsp
|
||
4eb: 83 im 3
|
||
4ec: e0 im -32
|
||
4ed: 8c im 12
|
||
4ee: 0c store
|
||
4ef: 04 poppc
|
||
|
||
000004f0 <clear_64k_ram>:
|
||
|
||
void clear_64k_ram()
|
||
{
|
||
4f0: 83 im 3
|
||
4f1: e0 im -32
|
||
4f2: 8c im 12
|
||
4f3: 08 load
|
||
4f4: 02 pushsp
|
||
4f5: 83 im 3
|
||
4f6: e0 im -32
|
||
4f7: 8c im 12
|
||
4f8: 0c store
|
||
4f9: ff im -1
|
||
4fa: 3d pushspadd
|
||
4fb: 0d popsp
|
||
|
||
000004fc <.LM6>:
|
||
int i=0;
|
||
4fc: 80 im 0
|
||
4fd: 0b nop
|
||
4fe: 83 im 3
|
||
4ff: e0 im -32
|
||
500: 8c im 12
|
||
501: 08 load
|
||
502: fc im -4
|
||
503: 05 add
|
||
504: 0c store
|
||
|
||
00000505 <.LM7>:
|
||
// sdram from 8MB to 16MB
|
||
// sram from 0x200000
|
||
|
||
*zpu_ledr = 0xf0f0f0f0;
|
||
505: 92 im 18
|
||
506: e4 im -28
|
||
507: 08 load
|
||
508: 51 storesp 4
|
||
509: ff im -1
|
||
50a: 87 im 7
|
||
50b: c3 im -61
|
||
50c: e1 im -31
|
||
50d: f0 im -16
|
||
50e: 71 loadsp 4
|
||
50f: 0c store
|
||
|
||
00000510 <.LM8>:
|
||
*zpu_ledg = 0x0;
|
||
510: 92 im 18
|
||
511: e0 im -32
|
||
512: 08 load
|
||
513: 51 storesp 4
|
||
514: 80 im 0
|
||
515: 71 loadsp 4
|
||
516: 0c store
|
||
|
||
00000517 <.LM9>:
|
||
//wait_us(200000);
|
||
|
||
for (i=0x200000; i!=0x210000; i+=1)
|
||
517: 88 im 8
|
||
518: 80 im 0
|
||
519: 0a flip
|
||
51a: 0b nop
|
||
51b: 83 im 3
|
||
51c: e0 im -32
|
||
51d: 8c im 12
|
||
51e: 08 load
|
||
51f: fc im -4
|
||
520: 05 add
|
||
521: 0c store
|
||
|
||
00000522 <.L3>:
|
||
522: 83 im 3
|
||
523: e0 im -32
|
||
524: 8c im 12
|
||
525: 08 load
|
||
526: fc im -4
|
||
527: 05 add
|
||
528: 08 load
|
||
529: 81 im 1
|
||
52a: 84 im 4
|
||
52b: 80 im 0
|
||
52c: 80 im 0
|
||
52d: 2e eq
|
||
52e: 9e im 30
|
||
52f: 38 neqbranch
|
||
|
||
00000530 <.LM10>:
|
||
{
|
||
// TODO - use short!
|
||
*(unsigned char volatile *)(i) = 0x0000;
|
||
530: 83 im 3
|
||
531: e0 im -32
|
||
532: 8c im 12
|
||
533: 08 load
|
||
534: fc im -4
|
||
535: 05 add
|
||
536: 08 load
|
||
537: 51 storesp 4
|
||
538: 80 im 0
|
||
539: 71 loadsp 4
|
||
53a: 34 storeb
|
||
|
||
0000053b <.LM11>:
|
||
53b: 83 im 3
|
||
53c: e0 im -32
|
||
53d: 8c im 12
|
||
53e: 08 load
|
||
53f: fc im -4
|
||
540: 05 add
|
||
541: 08 load
|
||
542: 81 im 1
|
||
543: 05 add
|
||
544: 83 im 3
|
||
545: e0 im -32
|
||
546: 8c im 12
|
||
547: 08 load
|
||
548: fc im -4
|
||
549: 05 add
|
||
54a: 0c store
|
||
54b: d6 im -42
|
||
54c: 39 poppcrel
|
||
|
||
0000054d <.L4>:
|
||
}
|
||
|
||
*zpu_ledr = 0x55555555;
|
||
54d: 92 im 18
|
||
54e: e4 im -28
|
||
54f: 08 load
|
||
550: 51 storesp 4
|
||
551: 85 im 5
|
||
552: aa im 42
|
||
553: d5 im -43
|
||
554: aa im 42
|
||
555: d5 im -43
|
||
556: 71 loadsp 4
|
||
557: 0c store
|
||
|
||
00000558 <.LM13>:
|
||
*zpu_ledg = 0x55555555;
|
||
558: 92 im 18
|
||
559: e0 im -32
|
||
55a: 08 load
|
||
55b: 51 storesp 4
|
||
55c: 85 im 5
|
||
55d: aa im 42
|
||
55e: d5 im -43
|
||
55f: aa im 42
|
||
560: d5 im -43
|
||
561: 71 loadsp 4
|
||
562: 0c store
|
||
|
||
00000563 <.LM14>:
|
||
|
||
for (i=0x800000; i!=0x810000; i+=4)
|
||
563: 82 im 2
|
||
564: 80 im 0
|
||
565: 0a flip
|
||
566: 0b nop
|
||
567: 83 im 3
|
||
568: e0 im -32
|
||
569: 8c im 12
|
||
56a: 08 load
|
||
56b: fc im -4
|
||
56c: 05 add
|
||
56d: 0c store
|
||
|
||
0000056e <.L6>:
|
||
56e: 83 im 3
|
||
56f: e0 im -32
|
||
570: 8c im 12
|
||
571: 08 load
|
||
572: fc im -4
|
||
573: 05 add
|
||
574: 08 load
|
||
575: 84 im 4
|
||
576: 84 im 4
|
||
577: 80 im 0
|
||
578: 80 im 0
|
||
579: 2e eq
|
||
57a: 9e im 30
|
||
57b: 38 neqbranch
|
||
|
||
0000057c <.LM15>:
|
||
{
|
||
*(unsigned int volatile *)(i) = 0x00000000;
|
||
57c: 83 im 3
|
||
57d: e0 im -32
|
||
57e: 8c im 12
|
||
57f: 08 load
|
||
580: fc im -4
|
||
581: 05 add
|
||
582: 08 load
|
||
583: 51 storesp 4
|
||
584: 80 im 0
|
||
585: 71 loadsp 4
|
||
586: 0c store
|
||
|
||
00000587 <.LM16>:
|
||
587: 83 im 3
|
||
588: e0 im -32
|
||
589: 8c im 12
|
||
58a: 08 load
|
||
58b: fc im -4
|
||
58c: 05 add
|
||
58d: 08 load
|
||
58e: 84 im 4
|
||
58f: 05 add
|
||
590: 83 im 3
|
||
591: e0 im -32
|
||
592: 8c im 12
|
||
593: 08 load
|
||
594: fc im -4
|
||
595: 05 add
|
||
596: 0c store
|
||
597: d6 im -42
|
||
598: 39 poppcrel
|
||
|
||
00000599 <.L7>:
|
||
}
|
||
|
||
*zpu_ledr = 0;
|
||
599: 92 im 18
|
||
59a: e4 im -28
|
||
59b: 08 load
|
||
59c: 51 storesp 4
|
||
59d: 80 im 0
|
||
59e: 71 loadsp 4
|
||
59f: 0c store
|
||
|
||
000005a0 <.LM18>:
|
||
*zpu_ledg = 0xf0f0f0f0;
|
||
5a0: 92 im 18
|
||
5a1: e0 im -32
|
||
5a2: 08 load
|
||
5a3: 51 storesp 4
|
||
5a4: ff im -1
|
||
5a5: 87 im 7
|
||
5a6: c3 im -61
|
||
5a7: e1 im -31
|
||
5a8: f0 im -16
|
||
5a9: 71 loadsp 4
|
||
5aa: 0c store
|
||
|
||
000005ab <.LM19>:
|
||
//wait_us(200000);
|
||
return;
|
||
}
|
||
5ab: 83 im 3
|
||
5ac: 3d pushspadd
|
||
5ad: 0d popsp
|
||
5ae: 83 im 3
|
||
5af: e0 im -32
|
||
5b0: 8c im 12
|
||
5b1: 0c store
|
||
5b2: 04 poppc
|
||
|
||
000005b3 <reset_6502>:
|
||
|
||
void reset_6502(unsigned int reset_n)
|
||
{
|
||
5b3: 83 im 3
|
||
5b4: e0 im -32
|
||
5b5: 8c im 12
|
||
5b6: 08 load
|
||
5b7: 02 pushsp
|
||
5b8: 83 im 3
|
||
5b9: e0 im -32
|
||
5ba: 8c im 12
|
||
5bb: 0c store
|
||
5bc: fe im -2
|
||
5bd: 3d pushspadd
|
||
5be: 0d popsp
|
||
|
||
000005bf <.LM21>:
|
||
int prev = *zpu_config;
|
||
5bf: 92 im 18
|
||
5c0: d0 im -48
|
||
5c1: 08 load
|
||
5c2: 70 loadsp 0
|
||
5c3: 08 load
|
||
5c4: 83 im 3
|
||
5c5: e0 im -32
|
||
5c6: 8c im 12
|
||
5c7: 08 load
|
||
5c8: fc im -4
|
||
5c9: 05 add
|
||
5ca: 0c store
|
||
5cb: 51 storesp 4
|
||
|
||
000005cc <.LM22>:
|
||
if (reset_n == 1)
|
||
5cc: 83 im 3
|
||
5cd: e0 im -32
|
||
5ce: 8c im 12
|
||
5cf: 08 load
|
||
5d0: 88 im 8
|
||
5d1: 05 add
|
||
5d2: 08 load
|
||
5d3: 81 im 1
|
||
5d4: 2e eq
|
||
5d5: 09 not
|
||
5d6: 81 im 1
|
||
5d7: 06 and
|
||
5d8: 95 im 21
|
||
5d9: 38 neqbranch
|
||
|
||
000005da <.LM23>:
|
||
*zpu_config = prev&~(1<<7);
|
||
5da: 92 im 18
|
||
5db: d0 im -48
|
||
5dc: 08 load
|
||
5dd: 83 im 3
|
||
5de: e0 im -32
|
||
5df: 8c im 12
|
||
5e0: 08 load
|
||
5e1: fc im -4
|
||
5e2: 05 add
|
||
5e3: 08 load
|
||
5e4: fe im -2
|
||
5e5: ff im -1
|
||
5e6: 06 and
|
||
5e7: 70 loadsp 0
|
||
5e8: 72 loadsp 8
|
||
5e9: 0c store
|
||
5ea: 52 storesp 8
|
||
5eb: 52 storesp 8
|
||
5ec: 93 im 19
|
||
5ed: 39 poppcrel
|
||
|
||
000005ee <.L10>:
|
||
else
|
||
*zpu_config = prev|(1<<7);
|
||
5ee: 92 im 18
|
||
5ef: d0 im -48
|
||
5f0: 08 load
|
||
5f1: 83 im 3
|
||
5f2: e0 im -32
|
||
5f3: 8c im 12
|
||
5f4: 08 load
|
||
5f5: fc im -4
|
||
5f6: 05 add
|
||
5f7: 08 load
|
||
5f8: 81 im 1
|
||
5f9: 80 im 0
|
||
5fa: 07 or
|
||
5fb: 70 loadsp 0
|
||
5fc: 72 loadsp 8
|
||
5fd: 0c store
|
||
5fe: 52 storesp 8
|
||
5ff: 52 storesp 8
|
||
|
||
00000600 <.L9>:
|
||
// USES ASHIFTLEFT even with it disabled!! *reset_6502 = reset_n<<7;
|
||
}
|
||
600: 84 im 4
|
||
601: 3d pushspadd
|
||
602: 0d popsp
|
||
603: 83 im 3
|
||
604: e0 im -32
|
||
605: 8c im 12
|
||
606: 0c store
|
||
607: 04 poppc
|
||
|
||
00000608 <pause_6502>:
|
||
|
||
void pause_6502(unsigned int pause)
|
||
{
|
||
608: 83 im 3
|
||
609: e0 im -32
|
||
60a: 8c im 12
|
||
60b: 08 load
|
||
60c: 02 pushsp
|
||
60d: 83 im 3
|
||
60e: e0 im -32
|
||
60f: 8c im 12
|
||
610: 0c store
|
||
611: fe im -2
|
||
612: 3d pushspadd
|
||
613: 0d popsp
|
||
|
||
00000614 <.LM27>:
|
||
int prev = *zpu_config;
|
||
614: 92 im 18
|
||
615: d0 im -48
|
||
616: 08 load
|
||
617: 70 loadsp 0
|
||
618: 08 load
|
||
619: 83 im 3
|
||
61a: e0 im -32
|
||
61b: 8c im 12
|
||
61c: 08 load
|
||
61d: fc im -4
|
||
61e: 05 add
|
||
61f: 0c store
|
||
620: 51 storesp 4
|
||
|
||
00000621 <.LM28>:
|
||
if (pause == 0)
|
||
621: 83 im 3
|
||
622: e0 im -32
|
||
623: 8c im 12
|
||
624: 08 load
|
||
625: 88 im 8
|
||
626: 05 add
|
||
627: 08 load
|
||
628: 95 im 21
|
||
629: 38 neqbranch
|
||
|
||
0000062a <.LM29>:
|
||
*zpu_config = prev&~(1<<6);
|
||
62a: 92 im 18
|
||
62b: d0 im -48
|
||
62c: 08 load
|
||
62d: 83 im 3
|
||
62e: e0 im -32
|
||
62f: 8c im 12
|
||
630: 08 load
|
||
631: fc im -4
|
||
632: 05 add
|
||
633: 08 load
|
||
634: ff im -1
|
||
635: bf im 63
|
||
636: 06 and
|
||
637: 70 loadsp 0
|
||
638: 72 loadsp 8
|
||
639: 0c store
|
||
63a: 52 storesp 8
|
||
63b: 52 storesp 8
|
||
63c: 93 im 19
|
||
63d: 39 poppcrel
|
||
|
||
0000063e <.L13>:
|
||
else
|
||
*zpu_config = prev|(1<<6);
|
||
63e: 92 im 18
|
||
63f: d0 im -48
|
||
640: 08 load
|
||
641: 83 im 3
|
||
642: e0 im -32
|
||
643: 8c im 12
|
||
644: 08 load
|
||
645: fc im -4
|
||
646: 05 add
|
||
647: 08 load
|
||
648: 80 im 0
|
||
649: c0 im -64
|
||
64a: 07 or
|
||
64b: 70 loadsp 0
|
||
64c: 72 loadsp 8
|
||
64d: 0c store
|
||
64e: 52 storesp 8
|
||
64f: 52 storesp 8
|
||
|
||
00000650 <.L12>:
|
||
// USES ASHIFTLEFT even with it disabled!! *reset_6502 = reset_n<<7;
|
||
}
|
||
650: 84 im 4
|
||
651: 3d pushspadd
|
||
652: 0d popsp
|
||
653: 83 im 3
|
||
654: e0 im -32
|
||
655: 8c im 12
|
||
656: 0c store
|
||
657: 04 poppc
|
||
|
||
00000658 <main>:
|
||
|
||
int main(void)
|
||
{
|
||
658: 83 im 3
|
||
659: e0 im -32
|
||
65a: 8c im 12
|
||
65b: 08 load
|
||
65c: 02 pushsp
|
||
65d: 83 im 3
|
||
65e: e0 im -32
|
||
65f: 8c im 12
|
||
660: 0c store
|
||
661: fd im -3
|
||
662: 3d pushspadd
|
||
663: 0d popsp
|
||
|
||
00000664 <.LM33>:
|
||
unsigned int i=0;
|
||
664: 80 im 0
|
||
665: 0b nop
|
||
666: 83 im 3
|
||
667: e0 im -32
|
||
668: 8c im 12
|
||
669: 08 load
|
||
66a: fc im -4
|
||
66b: 05 add
|
||
66c: 0c store
|
||
|
||
0000066d <.LM34>:
|
||
unsigned char temp = 0;
|
||
66d: 80 im 0
|
||
66e: 0b nop
|
||
66f: 83 im 3
|
||
670: e0 im -32
|
||
671: 8c im 12
|
||
672: 08 load
|
||
673: f8 im -8
|
||
674: 05 add
|
||
675: 34 storeb
|
||
|
||
00000676 <.LM35>:
|
||
pause_6502(1);
|
||
676: 81 im 1
|
||
677: 51 storesp 4
|
||
678: ff im -1
|
||
679: 8e im 14
|
||
67a: 3f callpcrel
|
||
|
||
0000067b <.LM36>:
|
||
|
||
//wait_us(200000);
|
||
reset_6502(0);
|
||
67b: 80 im 0
|
||
67c: 51 storesp 4
|
||
67d: fe im -2
|
||
67e: b4 im 52
|
||
67f: 3f callpcrel
|
||
|
||
00000680 <.LM37>:
|
||
*atari_nmien = 0x00;
|
||
680: 93 im 19
|
||
681: b4 im 52
|
||
682: 08 load
|
||
683: 52 storesp 8
|
||
684: 80 im 0
|
||
685: 72 loadsp 8
|
||
686: 34 storeb
|
||
|
||
00000687 <.LM38>:
|
||
clear_64k_ram();
|
||
687: fc im -4
|
||
688: e7 im -25
|
||
689: 3f callpcrel
|
||
|
||
0000068a <.LM39>:
|
||
reset_6502(1);
|
||
68a: 81 im 1
|
||
68b: 51 storesp 4
|
||
68c: fe im -2
|
||
68d: a5 im 37
|
||
68e: 3f callpcrel
|
||
|
||
0000068f <.LM40>:
|
||
pause_6502(0);
|
||
68f: 80 im 0
|
||
690: 51 storesp 4
|
||
691: fe im -2
|
||
692: f5 im -11
|
||
693: 3f callpcrel
|
||
|
||
00000694 <.L16>:
|
||
for(;;);
|
||
694: ff im -1
|
||
695: 39 poppcrel
|
||
|
||
00000696 <__divsi3>:
|
||
696: 83 im 3
|
||
697: e0 im -32
|
||
698: 8c im 12
|
||
699: 08 load
|
||
69a: 02 pushsp
|
||
69b: 83 im 3
|
||
69c: e0 im -32
|
||
69d: 8c im 12
|
||
69e: 0c store
|
||
69f: f9 im -7
|
||
6a0: 3d pushspadd
|
||
6a1: 0d popsp
|
||
6a2: 80 im 0
|
||
6a3: 0b nop
|
||
6a4: 83 im 3
|
||
6a5: e0 im -32
|
||
6a6: 8c im 12
|
||
6a7: 08 load
|
||
6a8: fc im -4
|
||
6a9: 05 add
|
||
6aa: 0c store
|
||
6ab: 83 im 3
|
||
6ac: e0 im -32
|
||
6ad: 8c im 12
|
||
6ae: 08 load
|
||
6af: 88 im 8
|
||
6b0: 05 add
|
||
6b1: 08 load
|
||
6b2: 80 im 0
|
||
6b3: 25 lessthanorequal
|
||
6b4: b9 im 57
|
||
6b5: 38 neqbranch
|
||
6b6: 83 im 3
|
||
6b7: e0 im -32
|
||
6b8: 8c im 12
|
||
6b9: 08 load
|
||
6ba: 88 im 8
|
||
6bb: 05 add
|
||
6bc: 08 load
|
||
6bd: 30 neg
|
||
6be: 83 im 3
|
||
6bf: e0 im -32
|
||
6c0: 8c im 12
|
||
6c1: 08 load
|
||
6c2: 88 im 8
|
||
6c3: 05 add
|
||
6c4: 0c store
|
||
6c5: 80 im 0
|
||
6c6: 0b nop
|
||
6c7: 83 im 3
|
||
6c8: e0 im -32
|
||
6c9: 8c im 12
|
||
6ca: 08 load
|
||
6cb: f4 im -12
|
||
6cc: 05 add
|
||
6cd: 0c store
|
||
6ce: 83 im 3
|
||
6cf: e0 im -32
|
||
6d0: 8c im 12
|
||
6d1: 08 load
|
||
6d2: fc im -4
|
||
6d3: 05 add
|
||
6d4: 08 load
|
||
6d5: 8a im 10
|
||
6d6: 38 neqbranch
|
||
6d7: 81 im 1
|
||
6d8: 0b nop
|
||
6d9: 83 im 3
|
||
6da: e0 im -32
|
||
6db: 8c im 12
|
||
6dc: 08 load
|
||
6dd: f4 im -12
|
||
6de: 05 add
|
||
6df: 0c store
|
||
|
||
000006e0 <.L3>:
|
||
6e0: 83 im 3
|
||
6e1: e0 im -32
|
||
6e2: 8c im 12
|
||
6e3: 08 load
|
||
6e4: f4 im -12
|
||
6e5: 05 add
|
||
6e6: 08 load
|
||
6e7: 83 im 3
|
||
6e8: e0 im -32
|
||
6e9: 8c im 12
|
||
6ea: 08 load
|
||
6eb: fc im -4
|
||
6ec: 05 add
|
||
6ed: 0c store
|
||
|
||
000006ee <.L2>:
|
||
6ee: 83 im 3
|
||
6ef: e0 im -32
|
||
6f0: 8c im 12
|
||
6f1: 08 load
|
||
6f2: 8c im 12
|
||
6f3: 05 add
|
Also available in: Unified diff
Remove stale files - creates output directly where needed...