New Wiimote/GCPad: Fix segfault prob in Linux.(thanks glennrics) Some minor changes...
[dolphin.git] / docs / DSP / DSP_UC_Luigi.txt
blob5aa599f797cd2fbc897a547a8921d1700de03f90
1 // This ucode is interesting because it is very similar to the Zelda ucode,
2 // but does not make use of exceptions. Hence, it might be possible to get
3 // it running okay even without understanding how the exceptions work.
5 // CRC: 379F1139
6 // ector-CRC: 42f64ac4
8 // Notable differences:
9 //
10 // Luigi init (not using mail exception):
11 //  sbset       #0x02
12 //  sbset       #0x03
13 //  sbclr       #0x04
14 //  sbset       #0x05
15 //  sbset       #0x06
16 //  set16       
17 //  clr15       
18 //  m0          
20 // Zelda init (using mail exception):
21 //  sbclr       #0x02  !
22 //  sbclr       #0x03  !
23 //  sbclr       #0x04
24 //  sbset       #0x05  (late, just when it's time to receive messages)
25 //  sbset       #0x06
26 //  set16       
27 //  clr15       
28 //  m0          
30 // AX1 init (not using mail exception, same as Luigi init):
31 //  sbset       #0x02
32 //  sbset       #0x03
33 //  sbclr       #0x04
34 //  sbset       #0x05
35 //  sbset       #0x06
36 //  set16       
37 //  clr15       
38 //  m0          
42 // exception vectors
43 0000 029f 0010 jmp         0x0010
44 0002 0000      nop         
45 0003 0000      nop         
46 0004 02ff      rti         
47 0005 0000      nop         
48 0006 02ff      rti         
49 0007 0000      nop         
50 0008 02ff      rti         
51 0009 0000      nop         
52 000a 02ff      rti         
53 000b 0000      nop         
54 000c 02ff      rti         
55 000d 0000      nop         
56 000e 02ff      rti          // This is Zelda's message exception.
57 000f 0000      nop  
59 // Reset vector
60 void 0010_ResetVector() {       
61         // Compare to 0057 in the Zelda ucode
62         0010 1302      sbset       #0x02
63         0011 1303      sbset       #0x03
64         0012 1204      sbclr       #0x04
65         0013 1305      sbset       #0x05
66         0014 1306      sbset       #0x06
67         0015 8e00      set16       
68         0016 8c00      clr15       
69         0017 8b00      m0          
70         0018 009e ffff lri         $AC0.M, #0xffff
71         001a 1d1e      mrr         $WR0, $AC0.M
72         001b 1d3e      mrr         $WR1, $AC0.M
73         001c 1d5e      mrr         $WR2, $AC0.M
74         001d 1d7e      mrr         $WR3, $AC0.M
75         001e 0092 00ff lri         $CR, #0x00ff
76         0020 8100      clr         $ACC0
77         // Clear memory
78         0021 009f 1000 lri         $AC1.M, #0x1000
79         0023 0080 0000 lri         $AR0, #0x0000
80         0025 005f      loop        $AC1.M
81                 0026 1b1e      srri        @$AR0, $AC0.M
82         0027 26ff      lrs         $AC0.M, @CMBL
83         0028 16fc 8888 si          @DMBH, #0x8888
84         002a 16fd 1111 si          @DMBL, #0x1111
85         002c 26fc      lrs         $AC0.M, @DMBH
86         002d 02a0 8000 andf        $AC0.M, #0x8000
87         002f 029c 002c jlnz        0x002c
89         while (true) {
90                 0031 8100      clr         $ACC0
91                 0032 8900      clr         $ACC1
92                 0033 26fe      lrs         $AC0.M, @CMBH
93                 0034 02c0 8000 andcf       $AC0.M, #0x8000
94                 0036 029c 0031 jlnz        0x0031
95                 0038 27ff      lrs         $AC1.M, @CMBL
96                 0039 00ff 0345 sr          @0x0345, $AC1.M
97                 003b 1ffe      mrr         $AC1.M, $AC0.M
98                 003c 0340 00ff andi        $AC1.M, #0x00ff
99                 003e 00ff 0344 sr          @0x0344, $AC1.M
100                 0040 1479      lsr         $ACC0, #-7
101                 
102                 // Jump table below
103                 0041 0240 007e andi        $AC0.M, #0x007e
104                 0043 0200 0062 addi        $AC0.M, #0x0062
105                 0045 00fe 0343 sr          @0x0343, $AC0.M
106                 0047 1c1e      mrr         $AR0, $AC0.M
107                 0048 170f      jmpr        $AR0 
108                 0049 009e 8000 lri         $AC0.M, #0x8000
109                 004b 00dc 0343 lr          $AC0.L, @0x0343
110                 004d 02bf 005a call        0x005a
111                 004f 029f 0031 jmp         0x0031
112         }
114         
115 void 0051_Unk_Mail() {
116         0051 26fe      lrs         $AC0.M, @CMBH
117         0052 02c0 8000 andcf       $AC0.M, #0x8000
118         0054 029c 0051 jlnz        0x0051
119         0056 24ff      lrs         $AC0.L, @CMBL
120         0057 1b1e      srri        @$AR0, $AC0.M
121         0058 1b1c      srri        @$AR0, $AC0.L
122         0059 02df      ret
125 void 005a_Unk_Mail() {
126         005a 2efc      srs         @DMBH, $AC0.M
127         005b 2cfd      srs         @DMBL, $AC0.L
128         005c 26fc      lrs         $AC0.M, @DMBH
129         005d 02a0 8000 andf        $AC0.M, #0x8000
130         005f 029c 005c jlnz        0x005c
131         0061 02df      ret
134 // Just a jump table.
135 0062 029f 0049 jmp         0x0049
136 0064 029f 0349 jmp         0x0349   // Command 01
137 0066 029f 04eb jmp         0x04eb   // Command 02
138 0068 029f 0031 jmp         0x0031
139 006a 029f 00df jmp         0x00df
140 006c 029f 00f1 jmp         0x00f1
141 006e 029f 06e7 jmp         0x06e7
142 0070 029f 069b jmp         0x069b
143 0072 029f 0703 jmp         0x0703
144 0074 029f 06cb jmp         0x06cb
145 0076 029f 0870 jmp         0x0870
146 0078 029f 0744 jmp         0x0744
147 007a 029f 0238 jmp         0x0238
150 void 007c_Unk() {
151         007c 193e      lrri        $AC0.M, @$AR1
152         007d 193c      lrri        $AC0.L, @$AR1
153         007e 2fcd      srs         @DSPA, $AC1.M
154         007f 0f00      lris        $AC1.M, #0x00
155         0080 2fc9      srs         @DSCR, $AC1.M
156         0081 2ece      srs         @DSMAH, $AC0.M
157         0082 2ccf      srs         @DSMAL, $AC0.L
158         0083 1fe0      mrr         $AC1.M, $AR0
159         0084 1501      lsl         $ACC1, #1
160         0085 2fcb      srs         @DSBL, $AC1.M
161         0086 02bf 008f call        0x008f
162         0088 02df      ret
166 void 0089_Unk() {
167         0089 193e      lrri        $AC0.M, @$AR1
168         008a 193c      lrri        $AC0.L, @$AR1
169         008b 2fcd      srs         @DSPA, $AC1.M
170         008c 0f01      lris        $AC1.M, #0x01
171         008d 029f 0080 jmp         0x0080
172         008f 26c9      lrs         $AC0.M, @DSCR
173         0090 02a0 0004 andf        $AC0.M, #0x0004
174         0092 029c 008f jlnz        0x008f
175         0094 02df      ret
178 void 0095_Unk() {
179         0095 193e      lrri        $AC0.M, @$AR1
180         0096 193c      lrri        $AC0.L, @$AR1
181         0097 00ff ffcd sr          @DSPA, $AC1.M
182         0099 0f00      lris        $AC1.M, #0x00
183         009a 00ff ffc9 sr          @DSCR, $AC1.M
184         009c 00fe ffce sr          @DSMAH, $AC0.M
185         009e 00fc ffcf sr          @DSMAL, $AC0.L
186         00a0 1fe0      mrr         $AC1.M, $AR0
187         00a1 1501      lsl         $ACC1, #1
188         00a2 00ff ffcb sr          @DSBL, $AC1.M
189         00a4 02df      ret
192 void 00a5_Unk() {
193         00a5 00de ffc9 lr          $AC0.M, @DSCR
194         00a7 02a0 0004 andf        $AC0.M, #0x0004
195         00a9 029c 00a5 jlnz        0x00a5
196         00ab 02df      ret
199 void 00ac_ReadBlockFromAccelerator() {
200         00ac 193e      lrri        $AC0.M, @$AR1
201         00ad 193c      lrri        $AC0.L, @$AR1
202         00ae 0240 7fff andi        $AC0.M, #0x7fff
203         // 00b0 02bf 00ba call        0x00ba
204         00ba_SetupAccelerator()
205         
206         00b2 007a 00b8 bloop       $AX0.H, 0x00b8
207                 00b4 26d3      lrs         $AC0.M, @UnkZelda
208                 00b5 1b3e      srri        @$AR1, $AC0.M
209                 00b6 0000      nop         
210                 00b7 0000      nop         
211                 00b8 0000      nop         
212         00b9 02df      ret
215 void 00ba_SetupAccelerator() {
216         00ba 1c3f      mrr         $AR1, $AC1.M
217         00bb 009f 0005 lri         $AC1.M, #0x0005
218         00bd 2fd1      srs         @SampleFormat, $AC1.M
219         00be 1f5e      mrr         $AX0.H, $AC0.M
220         00bf 1f1c      mrr         $AX0.L, $AC0.L
221         00c0 2ed4      srs         @ACSAH, $AC0.M
222         00c1 2cd5      srs         @ACSAL, $AC0.L
223         00c2 8900      clr         $ACC1
224         00c3 1fa0      mrr         $AC1.L, $AR0
225         00c4 4c00      add         $ACC0, $AC1.L
226         00c5 0200 0030 addi        $AC0.M, #0x0030
227         00c7 2ed6      srs         @ACEAH, $AC0.M
228         00c8 2cd7      srs         @ACEAL, $AC0.L
229         00c9 1fda      mrr         $AC0.M, $AX0.H
230         00ca 1f98      mrr         $AC0.L, $AX0.L
231         00cb 147f      lsr         $ACC0, #-1
232         00cc 2ed8      srs         @ACCAH, $AC0.M
233         00cd 2cd9      srs         @ACCAL, $AC0.L
234         00ce 1f40      mrr         $AX0.H, $AR0
235         00cf 02df      ret
239 void 00d0_Unk() {
240         00d0 193e      lrri        $AC0.M, @$AR1
241         00d1 193c      lrri        $AC0.L, @$AR1
242         00d2 0260 8000 ori         $AC0.M, #0x8000
243         // 00d4 02bf 00ba call        0x00ba
244         00ba_SetupAccelerator()
245         00d6 007a 00dd bloop       $AX0.H, 0x00dd
246                 00d8 193e      lrri        $AC0.M, @$AR1
247                 00d9 2ed3      srs         @UnkZelda, $AC0.M
248                 00da 0000      nop         
249                 00db 0000      nop         
250                 00dc 0000      nop         
251                 00dd 0000      nop         
252         00de 02df      ret
255 void 00df_Unk() {
256         00df 0080 0346 lri         $AR0, #0x0346
257         00e1 02bf 0051 call        0x0051
258         00e3 02bf 0051 call        0x0051
259         00e5 0081 0346 lri         $AR1, #0x0346
260         00e7 00df 0349 lr          $AC1.M, @0x0349
261         00e9 0340 ffff andi        $AC1.M, #0xffff
262         00eb 00c0 0345 lr          $AR0, @0x0345
263         00ed 02bf 007c call        0x007c
264         00ef 029f 0049 jmp         0x0049
265         00f1 0080 0346 lri         $AR0, #0x0346
266         00f3 02bf 0051 call        0x0051
267         00f5 02bf 0051 call        0x0051
268         00f7 0081 0346 lri         $AR1, #0x0346
269         00f9 00df 0349 lr          $AC1.M, @0x0349
270         00fb 0340 ffff andi        $AC1.M, #0xffff
271         00fd 00c0 0345 lr          $AR0, @0x0345
272         00ff 02bf 0089 call        0x0089
273         0101 029f 0049 jmp         0x0049
276 void 0103_SetupAcceleratorMystery() {
277         0103 0092 00ff lri         $CR, #0x00ff
278         0105 2fd1      srs         @SampleFormat, $AC1.M
279         0106 0340 0003 andi        $AC1.M, #0x0003
280         0108 1f7f      mrr         $AX1.H, $AC1.M
281         0109 1f5e      mrr         $AX0.H, $AC0.M
282         010a 1f1c      mrr         $AX0.L, $AC0.L
283         010b 0200 0010 addi        $AC0.M, #0x0010
284         010d 2ed4      srs         @ACSAH, $AC0.M
285         010e 2cd5      srs         @ACSAL, $AC0.L
286         010f 8900      clr         $ACC1
287         0110 1fa0      mrr         $AC1.L, $AR0
288         0111 4c00      add         $ACC0, $AC1.L
289         0112 0200 0030 addi        $AC0.M, #0x0030
290         0114 2ed6      srs         @ACEAH, $AC0.M
291         0115 2cd7      srs         @ACEAL, $AC0.L
292         0116 1fda      mrr         $AC0.M, $AX0.H
293         0117 1f98      mrr         $AC0.L, $AX0.L
294         0118 1ffb      mrr         $AC1.M, $AX1.H
295         0119 7900      decm        $AC1.M
296         011a 02ca      lsrn        
297         011b 2ed8      srs         @ACCAH, $AC0.M
298         011c 2cd9      srs         @ACCAL, $AC0.L
299         011d 02df      ret
302 void 011e_Unk() {
303         011e 1c23      mrr         $AR1, $AR3
304         011f 197e      lrri        $AC0.M, @$AR3
305         0120 191b      lrri        $AX1.H, @$AR0
306         0121 d858      mulc'l      $AC1.M, $AX1.H : $AX1.H, @$AR0
307         0122 1120 0128 bloopi      #0x20, 0x0128
308                 0124 dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
309                 0125 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
310                 0126 dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
311                 0127 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
312                 0128 4900      addax       $ACC1, $AX0.L
313         0129 1108 012e bloopi      #0x08, 0x012e
314                 012b dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
315                 012c 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
316                 012d dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
317                 012e 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
318         012f 02df      ret
322 void 0130_Unk() {
323         0130 8f00      set40       
324         0131 1c03      mrr         $AR0, $AR3
325         0132 00db 038e lr          $AX1.H, @0x038e
326         0134 009a 0004 lri         $AX0.H, #0x0004
327         0136 1978      lrri        $AX0.L, @$AR3
328         0137 a843      mulx'l      $AX0.L, $AX1.H : $AX0.L, @$AR3
329         0138 ae00      mulxmv      $AX0.L, $AX1.H, $ACC0
330         0139 1128 013e bloopi      #0x28, 0x013e
331                 013b 38c3      orr'ld      $AC0.M, $AX0.H : $AX0.L, $AX1.L, @$AR3
332                 013c ae30      mulxmv's    $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
333                 013d 38c3      orr'ld      $AC0.M, $AX0.H : $AX0.L, $AX1.L, @$AR3
334                 013e ae30      mulxmv's    $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
335         013f 8e00      set16       
336         0140 02df      ret
339 void 0141_Unk() {
340         0141 00f9 0361 sr          @0x0361, $AX1.L
341         0143 1fc0      mrr         $AC0.M, $AR0
342         0144 0200 fffc addi        $AC0.M, #0xfffc
343         0146 1c1e      mrr         $AR0, $AC0.M
344         0147 1c5e      mrr         $AR2, $AC0.M
345         0148 0083 043c lri         $AR3, #0x043c
346         014a 197e      lrri        $AC0.M, @$AR3
347         014b 197f      lrri        $AC1.M, @$AR3
348         014c 80a2      nx'sl       : $AC0.M, $AX0.H
349         014d 64a3      movr'sl     $ACC0, $AX0.H : $AC1.M, $AX0.H
350         014e 6530      movr's      $ACC1, $AX0.H : @$AR0, $AC0.M
351         014f 1b1f      srri        @$AR0, $AC1.M
352         0150 1c02      mrr         $AR0, $AR2
353         0151 8100      clr         $ACC0
354         0152 00de 0402 lr          $AC0.M, @0x0402
355         0154 00fe 0362 sr          @0x0362, $AC0.M
356         0156 1474      lsr         $ACC0, #-12
357         0157 1f7e      mrr         $AX1.H, $AC0.M
358         0158 1f3c      mrr         $AX1.L, $AC0.L
359         0159 8900      clr         $ACC1
360         015a 00dd 0430 lr          $AC1.L, @0x0430
361         015c 1504      lsl         $ACC1, #4
362         015d 0604      cmpis       $ACC0, #0x04
363         015e 0290 01b6 jns         0x01b6
364         0160 1fdd      mrr         $AC0.M, $AC1.L
365         0161 0082 0c00 lri         $AR2, #0x0c00
366         0163 1050      loopi       #0x50
367                 0164 4b2a      addax's     $ACC1, $AX1.L : @$AR2, $AC1.L
368         0165 1fbe      mrr         $AC1.L, $AC0.M
369         0166 00fe 0360 sr          @0x0360, $AC0.M
370         0168 8900      clr         $ACC1
371         0169 1fbe      mrr         $AC1.L, $AC0.M
372         016a 009a fff8 lri         $AX0.H, #0xfff8
373         016c 009b 00fc lri         $AX1.H, #0x00fc
374         016e 00d8 0361 lr          $AX0.L, @0x0361
375         0170 0082 0c00 lri         $AR2, #0x0c00
376         0172 0083 0c00 lri         $AR3, #0x0c00
377         0174 195e      lrri        $AC0.M, @$AR2
378         0175 3480      andr'ls     $AC0.M, $AX0.H : $AX0.L, $AC0.M
379         0176 1128 017b bloopi      #0x28, 0x017b
380                 0178 367a      andr'l      $AC0.M, $AX1.H : $AC1.M, @$AR2
381                 0179 35b3      andr'sl     $AC1.M, $AX0.H : $AC1.M, $AX1.H
382                 017a 3772      andr'l      $AC1.M, $AX1.H : $AC0.M, @$AR2
383                 017b 34bb      andr'slm    $AC0.M, $AX0.H : $AC1.M, $AX1.H
384         017c 8a00      m2          
385         017d 0082 0c00 lri         $AR2, #0x0c00
386         017f 00dd 0430 lr          $AC1.L, @0x0430
387         0181 1504      lsl         $ACC1, #4
388         0182 1fe0      mrr         $AC1.M, $AR0
389         0183 8100      clr         $ACC0
390         0184 00de 0362 lr          $AC0.M, @0x0362
391         0186 1474      lsr         $ACC0, #-12
392         0187 1f7e      mrr         $AX1.H, $AC0.M
393         0188 1f3c      mrr         $AX1.L, $AC0.L
394         0189 8f00      set40       
395         018a 1943      lrri        $AR3, @$AR2
396         018b 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
397         018c 90c3      mul'ld      $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
398         018d f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
399         018e f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
400         018f f200      madd        $AX0.L, $AX0.H
401         0190 fe00      movpz       $ACC0
402         0191 1c1f      mrr         $AR0, $AC1.M
404         0192 1943      lrri        $AR3, @$AR2
405         0193 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
406         0194 90c3      mul'ld      $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
407         0195 114e 019d bloopi      #0x4e, 0x019d
408                 0197 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
409                 0198 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
410                 0199 f231      madd's      $AX0.L, $AX0.H : @$AR1, $AC0.M
412                 019a 1c1f      mrr         $AR0, $AC1.M
413                 019b 1943      lrri        $AR3, @$AR2
414                 019c 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
415                 019d 92c3      mulmvz'ld   $AX0.L, $AX0.H, $ACC0 : $AX0.L, $AX1.L, @$AR3
416         019e f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
417         019f f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
418         01a0 f231      madd's      $AX0.L, $AX0.H : @$AR1, $AC0.M
419         01a1 fe00      movpz       $ACC0
420         01a2 1b3e      srri        @$AR1, $AC0.M
422         01a3 8b00      m0          
423         01a4 8e00      set16       
424         01a5 00fe 0433 sr          @0x0433, $AC0.M
425         01a7 1c1f      mrr         $AR0, $AC1.M
426         01a8 150c      lsl         $ACC1, #12
427         01a9 0340 0fff andi        $AC1.M, #0x0fff
428         01ab 00ff 0430 sr          @0x0430, $AC1.M
429         01ad 0083 043c lri         $AR3, #0x043c
430         01af 191e      lrri        $AC0.M, @$AR0
431         01b0 191f      lrri        $AC1.M, @$AR0
432         01b1 80a0      nx'ls       : $AX0.H, $AC0.M
433         01b2 64a1      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC1.M
434         01b3 6533      movr's      $ACC1, $AX0.H : @$AR3, $AC0.M
435         01b4 1b7f      srri        @$AR3, $AC1.M
436         01b5 02df      ret
438 subroutine:
439         01b6 1fe0      mrr         $AC1.M, $AR0
440         01b7 1c1f      mrr         $AR0, $AC1.M
441         01b8 1128 01bf bloopi      #0x28, 0x01bf
442                 01ba 4b70      addax'l     $ACC1, $AX1.L : $AC0.M, @$AR0
443                 01bb 1b3e      srri        @$AR1, $AC0.M
444                 01bc 1c1f      mrr         $AR0, $AC1.M
445                 01bd 4b70      addax'l     $ACC1, $AX1.L : $AC0.M, @$AR0
446                 01be 1b3e      srri        @$AR1, $AC0.M
447                 01bf 1c1f      mrr         $AR0, $AC1.M
448         01c0 029f 01a5 jmp         0x01a5
451 void 01c2_Unk() {       
452         01c2 8a00      m2          
453         01c3 0083 03e8 lri         $AR3, #0x03e8
454         01c5 191e      lrri        $AC0.M, @$AR0
455         01c6 191a      lrri        $AX0.H, @$AR0
456         01c7 1006      loopi       #0x06
457         01c8 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
458         01c9 1b7e      srri        @$AR3, $AC0.M
459         01ca 1b7a      srri        @$AR3, $AX0.H
460         01cb 0080 03e8 lri         $AR0, #0x03e8
461         01cd 0088 0007 lri         $WR0, #0x0007
462         01cf 1150 01dc bloopi      #0x50, 0x01dc
463                 01d1 1c61      mrr         $AR3, $AR1
464                 01d2 84c3      clrp'ld     : $AX0.L, $AX1.L, @$AR3
465                 01d3 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
466                 01d4 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
467                 01d5 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
468                 01d6 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
469                 01d7 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
470                 01d8 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
471                 01d9 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
472                 01da f200      madd        $AX0.L, $AX0.H
473                 01db fe00      movpz       $ACC0
474                 01dc 1b3e      srri        @$AR1, $AC0.M
475         01dd 0088 ffff lri         $WR0, #0xffff
476         01df 8b00      m0          
477         01e0 02df      ret
480 void 01e1_Unk() {  // ZWW: 0b4d_IIR_Filter
481         01e1 8a00      m2          
482         01e2 05fe      addis       $ACC1, #0xfe
483         01e3 0083 03e8 lri         $AR3, #0x03e8
484         01e5 191e      lrri        $AC0.M, @$AR0
485         01e6 191a      lrri        $AX0.H, @$AR0
486         01e7 005f      loop        $AC1.M
487         01e8 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
488         01e9 1b7e      srri        @$AR3, $AC0.M
489         01ea 1b7a      srri        @$AR3, $AX0.H
490         01eb 0080 03e8 lri         $AR0, #0x03e8
491         01ed 0501      addis       $ACC1, #0x01
492         01ee 1d1f      mrr         $WR0, $AC1.M
493         01ef 1150 01f7 bloopi      #0x50, 0x01f7
494                 01f1 1c61      mrr         $AR3, $AR1
495                 01f2 84c3      clrp'ld     : $AX0.L, $AX1.L, @$AR3
496                 01f3 005f      loop        $AC1.M
497                 01f4 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
498                 01f5 f200      madd        $AX0.L, $AX0.H
499                 01f6 fe00      movpz       $ACC0
500                 01f7 1b3e      srri        @$AR1, $AC0.M
501         01f8 0088 ffff lri         $WR0, #0xffff
502         01fa 8b00      m0          
503         01fb 02df      ret
506 void 01fc_Unk() {  // ZWW: 0b68_4TapFIR
507         01fc 0083 03e8 lri         $AR3, #0x03e8
508         01fe 191e      lrri        $AC0.M, @$AR0
509         01ff 191a      lrri        $AX0.H, @$AR0
510         0200 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
511         0201 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
512         0202 1b7e      srri        @$AR3, $AC0.M
513         0203 1b7a      srri        @$AR3, $AX0.H
514         0204 0080 03e8 lri         $AR0, #0x03e8
515         0206 0088 0003 lri         $WR0, #0x0003
516         0208 0085 0000 lri         $IX1, #0x0000
517         020a 0087 0000 lri         $IX3, #0x0000
518         020c 1fc2      mrr         $AC0.M, $AR2
519         020d 195b      lrri        $AX1.H, @$AR2
520         020e 1959      lrri        $AX1.L, @$AR2
521         020f 195f      lrri        $AC1.M, @$AR2
522         0210 195a      lrri        $AX0.H, @$AR2
523         0211 1c5e      mrr         $AR2, $AC0.M
524         0212 1fda      mrr         $AC0.M, $AX0.H
525         0213 1c61      mrr         $AR3, $AR1
526         0214 8a00      m2          
527         0215 8f00      set40       
528         0216 191a      lrri        $AX0.H, @$AR0
529         0217 b850      mulx'l      $AX0.H, $AX1.H : $AX0.H, @$AR0
530         0218 e250      maddx'l     $AX0.H, $AX1.L : $AX0.H, @$AR0
531         0219 ea50      maddc'l     $AC1.M, $AX1.L : $AX0.H, @$AR0
532         021a e8e8      maddc'ldm   $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
533         021b b650      mulxmv'l    $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
534         021c 1127 0227 bloopi      #0x27, 0x0227
535                 021e e3a8      maddx'lsm   $AX0.H, $AX1.H : $AX0.H, $AC0.M
536                 
537                 021f 197e      lrri        $AC0.M, @$AR3
538                 0220 e850      maddc'l     $AC0.M, $AX1.L : $AX0.H, @$AR0
539                 0221 eaf8      maddc'ldm   $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
540                 0222 bf50      mulxmv'l    $AX0.H, $AX1.H, $ACC1 : $AX0.H, @$AR0
541                 0223 e2a9      maddx'lsm   $AX0.H, $AX1.L : $AX0.H, $AC1.M
542                 
543                 0224 197f      lrri        $AC1.M, @$AR3
544                 0225 ea50      maddc'l     $AC1.M, $AX1.L : $AX0.H, @$AR0
545                 0226 e8e8      maddc'ldm   $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
546                 0227 b650      mulxmv'l    $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
547         0228 e3a8      maddx'lsm   $AX0.H, $AX1.H : $AX0.H, $AC0.M
548         0229 197e      lrri        $AC0.M, @$AR3
549         022a e850      maddc'l     $AC0.M, $AX1.L : $AX0.H, @$AR0
550         022b eaf8      maddc'ldm   $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
551         022c bf00      mulxmv      $AX0.H, $AX1.H, $ACC1
552         022d 1bff      srrn        @$AR3, $AC1.M
553         022e 197f      lrri        $AC1.M, @$AR3
554         022f 8e00      set16       
555         0230 8b00      m0          
556         0231 0088 ffff lri         $WR0, #0xffff
557         0233 1b5b      srri        @$AR2, $AX1.H
558         0234 1b59      srri        @$AR2, $AX1.L
559         0235 1b5f      srri        @$AR2, $AC1.M
560         0236 1b5e      srri        @$AR2, $AC0.M
561         0237 02df      ret
564 void 0238_Unk() {
565         0238 0080 0346 lri         $AR0, #0x0346
566         023a 02bf 0051 call        0x0051
567         023c 02bf 0051 call        0x0051
568         023e 0081 0346 lri         $AR1, #0x0346
569         0240 009f 0580 lri         $AC1.M, #0x0580
570         0242 0080 0080 lri         $AR0, #0x0080
571         0244 02bf 007c call        0x007c
572         0246 0081 0348 lri         $AR1, #0x0348
573         0248 009f 0c00 lri         $AC1.M, #0x0c00
574         024a 0080 0080 lri         $AR0, #0x0080
575         024c 02bf 007c call        0x007c
576         024e 0080 0c00 lri         $AR0, #0x0c00
577         0250 0081 0580 lri         $AR1, #0x0580
578         0252 02bf 01fc call        0x01fc
579         0254 0081 0346 lri         $AR1, #0x0346
580         0256 009f 0580 lri         $AC1.M, #0x0580
581         0258 0080 0080 lri         $AR0, #0x0080
582         025a 02bf 0089 call        0x0089
583         025c 0081 0348 lri         $AR1, #0x0348
584         025e 009f 0c00 lri         $AC1.M, #0x0c00
585         0260 0080 0080 lri         $AR0, #0x0080
586         0262 02bf 0089 call        0x0089
587         0264 029f 0049 jmp         0x0049
588         0266 8100      clr         $ACC0
589         0267 1f5e      mrr         $AX0.H, $AC0.M
590         0268 00d8 0402 lr          $AX0.L, @0x0402
591         026a 00dc 0430 lr          $AC0.L, @0x0430
592         026c 0080 0520 lri         $AR0, #0x0520
593         026e 00df 0480 lr          $AC1.M, @0x0480
594         0270 1501      lsl         $ACC1, #1
595         0271 0340 007e andi        $AC1.M, #0x007e
596         0273 0300 027b addi        $AC1.M, #0x027b
597         0275 1c5f      mrr         $AR2, $AC1.M
598         0276 175f      callr       $AR2
599         0277 00fc 0430 sr          @0x0430, $AC0.L
600         0279 029f 056d jmp         0x056d
601         027b 029f 029c jmp         0x029c
602         027d 029f 02d7 jmp         0x02d7
603         027f 029f 02bf jmp         0x02bf
604         0281 029f 02ac jmp         0x02ac
605         0283 029f 02e5 jmp         0x02e5
606         0285 029f 029b jmp         0x029b
607         0287 029f 0303 jmp         0x0303
608         0289 029f 0306 jmp         0x0306
609         028b 029f 029b jmp         0x029b
610         028d 029f 029b jmp         0x029b
611         028f 029f 0324 jmp         0x0324
612         0291 029f 02dd jmp         0x02dd
613         0293 029f 02e1 jmp         0x02e1
614         0295 029f 029b jmp         0x029b
615         0297 029f 029b jmp         0x029b
616         0299 029f 029b jmp         0x029b
617         029b 02df      ret
620 void 029c_Unk() {
621         029c 1401      lsl         $ACC0, #1
622         029d 009b c000 lri         $AX1.H, #0xc000
623         029f 0099 4000 lri         $AX1.L, #0x4000
624         02a1 1150 02a9 bloopi      #0x50, 0x02a9
625                 02a3 02c0 0001 andcf       $AC0.M, #0x0001
626                 02a5 027c      iflnz       
627                         02a6 1b1b      srri        @$AR0, $AX1.H
628                 02a7 027d      iflz        
629                         02a8 1b19      srri        @$AR0, $AX1.L
630                 02a9 4800      addax       $ACC0, $AX0.L
631         02aa 147f      lsr         $ACC0, #-1
632         02ab 02df      ret
635 void 02ac_Unk() {
636         02ac 1402      lsl         $ACC0, #2
637         02ad 8900      clr         $ACC1
638         02ae 1fb8      mrr         $AC1.L, $AX0.L
639         02af 1501      lsl         $ACC1, #1
640         02b0 009b c000 lri         $AX1.H, #0xc000
641         02b2 0099 4000 lri         $AX1.L, #0x4000
642         02b4 1150 02bc bloopi      #0x50, 0x02bc
643                 02b6 02c0 0003 andcf       $AC0.M, #0x0003
644                 02b8 027c      iflnz       
645                         02b9 1b1b      srri        @$AR0, $AX1.H
646                 02ba 027d      iflz        
647                         02bb 1b19      srri        @$AR0, $AX1.L
648                 02bc 4c00      add         $ACC0, $AC1.L
649         02bd 147e      lsr         $ACC0, #-2
650         02be 02df      ret
653 void 02bf_Unk() {  // ZWW:08d5
654         02bf 1401      lsl         $ACC0, #1
655         02c0 0081 0ca0 lri         $AR1, #0x0ca0
656         02c2 009b c000 lri         $AX1.H, #0xc000
657         02c4 0099 4000 lri         $AX1.L, #0x4000
658         02c6 8900      clr         $ACC1
659         02c7 0082 0000 lri         $AR2, #0x0000
660         02c9 1150 02d4 bloopi      #0x50, 0x02d4
661                 02cb 02c0 0001 andcf       $AC0.M, #0x0001
662                 02cd 027c      iflnz       
663                         02ce 1b1b      srri        @$AR0, $AX1.H
664                 02cf 027d      iflz        
665                         02d0 1b19      srri        @$AR0, $AX1.L
666                 02d1 183d      lrr         $AC1.L, @$AR1
667                 02d2 4900      addax       $ACC1, $AX0.L
668                 02d3 1fe2      mrr         $AC1.M, $AR2
669                 02d4 4c39      add's       $ACC0, $AC1.L : @$AR1, $AC1.M
670         02d5 147f      lsr         $ACC0, #-1
671         02d6 02df      ret
674 void 02d7_Unk() {  // ZWW:08ed
675         02d7 8900      clr         $ACC1
676         02d8 1fb8      mrr         $AC1.L, $AX0.L
677         02d9 157f      lsr         $ACC1, #-1
678         02da 1050      loopi       #0x50
679                 02db 4c20      add's       $ACC0, $AC1.L : @$AR0, $AC0.L
680         02dc 02df      ret
683 void 02dd_Unk() {  // ZWW:08f3
684         02dd 0082 0180 lri         $AR2, #0x0180   // Three entrances
685         02df 029f 02e7 jmp         0x02e7
686         02e1 0082 01c0 lri         $AR2, #0x01c0
687         02e3 029f 02e7 jmp         0x02e7
688         02e5 0082 0140 lri         $AR2, #0x0140
689         02e7 008a 003f lri         $WR2, #0x003f
690         02e9 0086 0000 lri         $IX2, #0x0000
691         02eb 1406      lsl         $ACC0, #6
692         02ec 8900      clr         $ACC1
693         02ed 1fb8      mrr         $AC1.L, $AX0.L
694         02ee 1505      lsl         $ACC1, #5
695         02ef 009b 003f lri         $AX1.H, #0x003f
696         02f1 009a 0000 lri         $AX0.H, #0x0000
697         02f3 3600      andr        $AC0.M, $AX1.H
698         02f4 1cde      mrr         $IX2, $AC0.M
699         02f5 001a      addarn      $AR2, $IX2
700         02f6 3400      andr        $AC0.M, $AX0.H
701         02f7 1150 02fd bloopi      #0x50, 0x02fd
702         02f9 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
703         02fa 3606      andr'dr     $AC0.M, $AX1.H : $AR2
704         02fb 1cde      mrr         $IX2, $AC0.M
705         02fc 340e      andr'nr     $AC0.M, $AX0.H : $AR2
706         02fd 1b19      srri        @$AR0, $AX1.L
707         02fe 1fc2      mrr         $AC0.M, $AR2
708         02ff 147a      lsr         $ACC0, #-6
709         0300 008a ffff lri         $WR2, #0xffff
710         0302 02df      ret
713 void 030_MemsetBlock() {
714         0303 1050      loopi       #0x50
715                 0304 1b18      srri        @$AR0, $AX0.L
716         // 0305 02df      ret
719 void 0306_Unk() {
720         0306 0082 0100 lri         $AR2, #0x0100
721         0308 008a 003f lri         $WR2, #0x003f
722         030a 0086 0000 lri         $IX2, #0x0000
723         030c 1406      lsl         $ACC0, #6
724         030d 8900      clr         $ACC1
725         030e 1fb8      mrr         $AC1.L, $AX0.L
726         030f 1505      lsl         $ACC1, #5
727         0310 009b 003f lri         $AX1.H, #0x003f
728         0312 009a 0000 lri         $AX0.H, #0x0000
729         0314 3600      andr        $AC0.M, $AX1.H
730         0315 1cde      mrr         $IX2, $AC0.M
731         0316 001a      addarn      $AR2, $IX2
732         0317 3400      andr        $AC0.M, $AX0.H
733         0318 1150 031e bloopi      #0x50, 0x031e
734         031a 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
735         031b 3606      andr'dr     $AC0.M, $AX1.H : $AR2
736         031c 1cde      mrr         $IX2, $AC0.M
737         031d 340e      andr'nr     $AC0.M, $AX0.H : $AR2
738         031e 1b19      srri        @$AR0, $AX1.L
739         031f 1fc2      mrr         $AC0.M, $AR2
740         0320 147a      lsr         $ACC0, #-6
741         0321 008a ffff lri         $WR2, #0xffff
742         0323 02df      ret
745 void 0324_Unk() {
746         0324 0082 0100 lri         $AR2, #0x0100
747         0326 008a 003f lri         $WR2, #0x003f
748         0328 0086 0000 lri         $IX2, #0x0000
749         032a 0081 0ca0 lri         $AR1, #0x0ca0
750         032c 1406      lsl         $ACC0, #6
751         032d 8900      clr         $ACC1
752         032e 1fb8      mrr         $AC1.L, $AX0.L
753         032f 1505      lsl         $ACC1, #5
754         0330 009b 003f lri         $AX1.H, #0x003f
755         0332 009a 0000 lri         $AX0.H, #0x0000
756         0334 3600      andr        $AC0.M, $AX1.H
757         0335 1cde      mrr         $IX2, $AC0.M
758         0336 001a      addarn      $AR2, $IX2
759         0337 3400      andr        $AC0.M, $AX0.H
760         0338 1150 0343 bloopi      #0x50, 0x0343
761         033a 1939      lrri        $AX1.L, @$AR1
762         033b a000      mulx        $AX0.L, $AX1.L
763         033c 140a      lsl         $ACC0, #10
764         033d 4e00      addp        $ACC0
765         033e 1476      lsr         $ACC0, #-10
766         033f 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
767         0340 3606      andr'dr     $AC0.M, $AX1.H : $AR2
768         0341 1cde      mrr         $IX2, $AC0.M
769         0342 340e      andr'nr     $AC0.M, $AX0.H : $AR2
770         0343 1b19      srri        @$AR0, $AX1.L
771         0344 1fc2      mrr         $AC0.M, $AR2
772         0345 147a      lsr         $ACC0, #-6
773         0346 008a ffff lri         $WR2, #0xffff
774         0348 02df      ret
777 // DsetupTable
778 void 0349_COMMAND_01() {
779         0349 0080 0380 lri         $AR0, #0x0380
780         034b 02bf 0051 call        0x0051
781         034d 02bf 0051 call        0x0051
782         034f 02bf 0051 call        0x0051
783         0351 02bf 0051 call        0x0051
784         
785         0353 0081 0382 lri         $AR1, #0x0382
786         0355 009f 0000 lri         $AC1.M, #0x0000
787         0357 0080 0200 lri         $AR0, #0x0200
788         // 0359 02bf 007c call        0x007c
789         007c_CopyRAMtoDMEM()
790         
791         035b 0081 0384 lri         $AR1, #0x0384
792         035d 009f 0300 lri         $AC1.M, #0x0300
793         035f 0080 0020 lri         $AR0, #0x0020
794         0361 02bf 007c call        0x007c
795         007c_CopyRAMtoDMEM()
796         
797         
798         0363 02bf 03cc call        0x03cc
799         0365 00de 0345 lr          $AC0.M, @0x0345
800         0367 00fe 0342 sr          @0x0342, $AC0.M
801         0369 02bf 0af0 call        0x0af0
802         036b 029f 0049 jmp         0x0049
803         036d 00de 0344 lr          $AC0.M, @0x0344
804         036f 1404      lsl         $ACC0, #4
805         0370 0200 03a8 addi        $AC0.M, #0x03a8
806         0372 1c1e      mrr         $AR0, $AC0.M
807         0373 02bf 0051 call        0x0051
808         0375 02bf 0051 call        0x0051
809         0377 02bf 0051 call        0x0051
810         0379 00de 0345 lr          $AC0.M, @0x0345
811         037b 1b1e      srri        @$AR0, $AC0.M
812         037c 00de 0344 lr          $AC0.M, @0x0344
813         037e 0200 03a4 addi        $AC0.M, #0x03a4
814         0380 1c1e      mrr         $AR0, $AC0.M
815         0381 8100      clr         $ACC0
816         0382 1b1e      srri        @$AR0, $AC0.M
817         0383 02df      ret
820 void 0384_Unk() {
821         0384 00de 0344 lr          $AC0.M, @0x0344
822         0386 1404      lsl         $ACC0, #4
823         0387 0200 03b0 addi        $AC0.M, #0x03b0
824         0389 1c1e      mrr         $AR0, $AC0.M
825         038a 02bf 0051 call        0x0051
826         038c 02bf 0051 call        0x0051
827         038e 02bf 0051 call        0x0051
828         0390 02bf 0051 call        0x0051
829         0392 02df      ret
832 void 0393_Unk() {
833         0393 0081 034c lri         $AR1, #0x034c
834         0395 009f 0400 lri         $AC1.M, #0x0400
835         0397 0080 00c0 lri         $AR0, #0x00c0
836         0399 02bf 007c call        0x007c
837         039b 02df      ret
840 void 039c_Unk() {
841         039c 0081 034c lri         $AR1, #0x034c
842         039e 009f 0400 lri         $AC1.M, #0x0400
843         03a0 0080 0080 lri         $AR0, #0x0080
844         03a2 0081 034c lri         $AR1, #0x034c
845         03a4 193e      lrri        $AC0.M, @$AR1
846         03a5 193c      lrri        $AC0.L, @$AR1
847         03a6 0098 0000 lri         $AX0.L, #0x0000
848         03a8 7000      addaxl      $ACC0, $AX0.L
849         03a9 02bf 008b call        0x008b
850         03ab 02df      ret
853 void 03ac_Unk() {
854         03ac 191e      lrri        $AC0.M, @$AR0
855         03ad 191a      lrri        $AX0.H, @$AR0
856         03ae 005f      loop        $AC1.M
857         03af 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
858         03b0 1b7e      srri        @$AR3, $AC0.M
859         03b1 1b7a      srri        @$AR3, $AX0.H
860         03b2 02df      ret
863 // Example call:
864 //a     03d9 0080 0f40 lri         $AR0, #0x0f40
865 //a     03db 0082 0d00 lri         $AR2, #0x0d00
866 //a     03dd 0083 0d60 lri         $AR3, #0x0d60
867 //a     03df 009f 0028 lri         $AC1.M, #0x0028
868 //a     03e1 02bf 03b3 call        0x03b3
869 // Not sure how AR2 fits into the picture...
870 void 03b3_XorBuffer(InputBuffer($AR0), OutputBuffer($AR3), HalfLength($AC1.M)) {
871         03b3 191e      lrri        $AC0.M, @$AR0
872         03b4 191a      lrri        $AX0.H, @$AR0
873         03b5 007f 03ba bloop       $AC1.M, 0x03ba
874                 03b7 32b2      xorr'sl     $AC0.M, $AX1.H : $AC0.M, $AX1.H
875                 03b8 65a0      movr'ls     $ACC1, $AX0.H : $AX0.H, $AC0.M
876                 03b9 33ba      xorr'slm    $AC1.M, $AX1.H : $AC0.M, $AX1.H
877                 03ba 64a1      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC1.M
878         03bb 0000      nop         
879         03bc 02df      ret
882 void 03bd_Unk() {
883         03bd 8a00      m2          
884         03be 157f      lsr         $ACC1, #-1
885         03bf 1c20      mrr         $AR1, $AR0
886         03c0 1c03      mrr         $AR0, $AR3
887         03c1 193a      lrri        $AX0.H, @$AR1
888         03c2 9051      mul'l       $AX0.L, $AX0.H : $AX0.H, @$AR1
889         03c3 925b      mulmvz'l    $AX0.L, $AX0.H, $ACC0 : $AX1.H, @$AR3
890         03c4 007f 03c9 bloop       $AC1.M, 0x03c9
891                 03c6 4651      addr'l      $ACC0, $AX1.H : $AX0.H, @$AR1
892                 03c7 92b2      mulmvz'sl   $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
893                 03c8 4651      addr'l      $ACC0, $AX1.H : $AX0.H, @$AR1
894                 03c9 92b2      mulmvz'sl   $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
895         03ca 8b00      m0          
896         03cb 02df      ret
899 void 03cc_Unk() {
900         03cc 0083 ffa0 lri         $AR3, #0xffa0
901         03ce 0080 0300 lri         $AR0, #0x0300
902         03d0 009f 000e lri         $AC1.M, #0x000e
903         03d2 1108 03d7 bloopi      #0x08, 0x03d7
904                 03d4 191e      lrri        $AC0.M, @$AR0
905                 03d5 1b7e      srri        @$AR3, $AC0.M
906                 03d6 191e      lrri        $AC0.M, @$AR0
907                 03d7 1b7e      srri        @$AR3, $AC0.M
908         03d8 02df      ret
911 void 03d9_Unk() {
913         03d9 0080 0f40 lri         $AR0, #0x0f40
914         03db 0082 0d00 lri         $AR2, #0x0d00
915         03dd 0083 0d60 lri         $AR3, #0x0d60
916         03df 009f 0028 lri         $AC1.M, #0x0028
917         // XorBuffer, why??
918         03e1 02bf 03b3 call        0x03b3
919         
920         // Clear a bunch of buffers.
921         03e3 8900      clr         $ACC1
922         03e4 009e 0050 lri         $AC0.M, #0x0050
923         03e6 0080 0ca0 lri         $AR0, #0x0ca0
924         03e8 005e      loop        $AC0.M
925                 03e9 1b1f      srri        @$AR0, $AC1.M
926         03ea 0080 0f40 lri         $AR0, #0x0f40
927         03ec 005e      loop        $AC0.M
928                 03ed 1b1f      srri        @$AR0, $AC1.M
929         03ee 0080 0fa0 lri         $AR0, #0x0fa0
930         03f0 005e      loop        $AC0.M
931                 03f1 1b1f      srri        @$AR0, $AC1.M
932         03f2 0080 0b00 lri         $AR0, #0x0b00
933         03f4 005e      loop        $AC0.M
934                 03f5 1b1f      srri        @$AR0, $AC1.M
935         03f6 0080 09a0 lri         $AR0, #0x09a0
936         03f8 005e      loop        $AC0.M
937                 03f9 1b1f      srri        @$AR0, $AC1.M
938         
939         03fa 02df      ret
942 void 03fb_Unk() {
943         03fb 00c0 03a0 lr          $AR0, @0x03a0
944         03fd 191a      lrri        $AX0.H, @$AR0
945         03fe 00df 03a1 lr          $AC1.M, @0x03a1
946         0400 009b 00a0 lri         $AX1.H, #0x00a0
947         0402 0081 0393 lri         $AR1, #0x0393
948         0404 18bc      lrrd        $AC0.L, @$AR1
949         0405 b871      mulx'l      $AX0.H, $AX1.H : $AC0.M, @$AR1
950         0406 bc00      mulxac      $AX0.H, $AX1.H, $ACC0
951         0407 0080 0050 lri         $AR0, #0x0050
952         0409 0508      addis       $ACC1, #0x08
953         040a 02bf 007e call        0x007e
954         040c 00de 0390 lr          $AC0.M, @0x0390
955         040e 02a0 0001 andf        $AC0.M, #0x0001
956         0410 029d 041a jlz         0x041a
957                 0412 0080 0398 lri         $AR0, #0x0398
958                 0414 009e 0008 lri         $AC0.M, #0x0008
959                 0416 00c1 03a1 lr          $AR1, @0x03a1
960                 0418 02bf 01c2 call        0x01c2
961         041a 009f 0050 lri         $AC1.M, #0x0050
962         041c 00c0 03a1 lr          $AR0, @0x03a1
963         041e 8100      clr         $ACC0
964         041f 00de 0394 lr          $AC0.M, @0x0394
965         0421 b100      tst         $ACC0
966         0422 0295 0429 jz          0x0429
967                 0424 1c7e      mrr         $AR3, $AC0.M
968                 0425 00d8 0395 lr          $AX0.L, @0x0395
969                 0427 02bf 03bd call        0x03bd
970         0429 009f 0050 lri         $AC1.M, #0x0050
971         042b 00c0 03a1 lr          $AR0, @0x03a1
972         042d 8100      clr         $ACC0
973         042e 00de 0396 lr          $AC0.M, @0x0396
974         0430 b100      tst         $ACC0
975         0431 0295 0438 jz          0x0438
976                 0433 1c7e      mrr         $AR3, $AC0.M
977                 0434 00d8 0397 lr          $AX0.L, @0x0397
978                 0436 02bf 03bd call        0x03bd
979         0438 00de 0390 lr          $AC0.M, @0x0390
980         043a 02a0 0002 andf        $AC0.M, #0x0002
981         043c 02dd      retlz       
982         
983         043d 0080 0398 lri         $AR0, #0x0398
984         043f 009e 0008 lri         $AC0.M, #0x0008
985         0441 00c1 03a1 lr          $AR1, @0x03a1
986         0443 02bf 01c2 call        0x01c2
987         0445 02df      ret
990 void 0446_Unk() {
991         0446 009f 0dc0 lri         $AC1.M, #0x0dc0
992         0448 00ff 03a1 sr          @0x03a1, $AC1.M
993         044a 009f 03a8 lri         $AC1.M, #0x03a8
994         044c 00ff 03a2 sr          @0x03a2, $AC1.M
995         044e 009f 03a4 lri         $AC1.M, #0x03a4
996         0450 00ff 03a0 sr          @0x03a0, $AC1.M
997         0452 1104 047b bloopi      #0x04, 0x047b
998                 0454 00c0 03a2 lr          $AR0, @0x03a2
999                 0456 0083 0390 lri         $AR3, #0x0390
1000                 0458 009f 000e lri         $AC1.M, #0x000e
1001                 045a 02bf 03ac call        0x03ac
1002                 045c 00da 0390 lr          $AX0.H, @0x0390
1003                 045e 8600      tstaxh      $AX0.H
1004                 045f 0295 046c jz          0x046c
1005                         0461 00df 03a1 lr          $AC1.M, @0x03a1
1006                         0463 1c7f      mrr         $AR3, $AC1.M
1007                         0464 0550      addis       $ACC1, #0x50
1008                         0465 1c1f      mrr         $AR0, $AC1.M
1009                         0466 009f 0006 lri         $AC1.M, #0x0006
1010                         0468 02bf 03ac call        0x03ac
1011                         046a 02bf 03fb call        0x03fb
1012                 046c 00de 03a2 lr          $AC0.M, @0x03a2
1013                 046e 0410      addis       $ACC0, #0x10
1014                 046f 00fe 03a2 sr          @0x03a2, $AC0.M
1015                 0471 00de 03a1 lr          $AC0.M, @0x03a1
1016                 0473 0460      addis       $ACC0, #0x60
1017                 0474 00fe 03a1 sr          @0x03a1, $AC0.M
1018                 0476 00de 03a0 lr          $AC0.M, @0x03a0
1019                 0478 7400      incm        $AC0.M
1020                 0479 00fe 03a0 sr          @0x03a0, $AC0.M
1021                 047b 0000      nop         
1022         047c 02df      ret
1025 void 047d_Unk() {
1026         047d 00c0 03a0 lr          $AR0, @0x03a0
1027         047f 181a      lrr         $AX0.H, @$AR0
1028         0480 8100      clr         $ACC0
1029         0481 181e      lrr         $AC0.M, @$AR0
1030         0482 00db 0391 lr          $AX1.H, @0x0391
1031         0484 7400      incm        $AC0.M
1032         0485 d100      cmpar       $ACC1, $AX0.H
1033         0486 0270      ifns        
1034                 0487 8100      clr         $ACC0
1035         0488 1b1e      srri        @$AR0, $AC0.M
1036         0489 00df 03a1 lr          $AC1.M, @0x03a1
1037         048b 009b 00a0 lri         $AX1.H, #0x00a0
1038         048d 0081 0393 lri         $AR1, #0x0393
1039         048f 18bc      lrrd        $AC0.L, @$AR1
1040         0490 b871      mulx'l      $AX0.H, $AX1.H : $AC0.M, @$AR1
1041         0491 bc00      mulxac      $AX0.H, $AX1.H, $ACC0
1042         0492 0080 0050 lri         $AR0, #0x0050
1043         0494 02bf 008b call        0x008b
1044         0496 02df      ret
1047 void 0497_Unk() {
1048         0497 009f 0dc0 lri         $AC1.M, #0x0dc0
1049         0499 00ff 03a1 sr          @0x03a1, $AC1.M
1050         049b 009f 03a8 lri         $AC1.M, #0x03a8
1051         049d 00ff 03a2 sr          @0x03a2, $AC1.M
1052         049f 009f 03a4 lri         $AC1.M, #0x03a4
1053         04a1 00ff 03a0 sr          @0x03a0, $AC1.M
1054         04a3 1104 04c3 bloopi      #0x04, 0x04c3
1055                 04a5 00c0 03a2 lr          $AR0, @0x03a2
1056                 04a7 0083 0390 lri         $AR3, #0x0390
1057                 04a9 009f 000e lri         $AC1.M, #0x000e
1058                 04ab 02bf 03ac call        0x03ac
1059                 04ad 00da 0390 lr          $AX0.H, @0x0390
1060                 04af 8600      tstaxh      $AX0.H
1061                 04b0 0295 04b4 jz          0x04b4
1062                         04b2 02bf 047d call        0x047d
1063                 04b4 00de 03a2 lr          $AC0.M, @0x03a2
1064                 04b6 0410      addis       $ACC0, #0x10
1065                 04b7 00fe 03a2 sr          @0x03a2, $AC0.M
1066                 04b9 00de 03a1 lr          $AC0.M, @0x03a1
1067                 04bb 0460      addis       $ACC0, #0x60
1068                 04bc 00fe 03a1 sr          @0x03a1, $AC0.M
1069                 04be 00de 03a0 lr          $AC0.M, @0x03a0
1070                 04c0 7400      incm        $AC0.M
1071                 04c1 00fe 03a0 sr          @0x03a0, $AC0.M
1072                 04c3 0000      nop         
1073         04c4 02df      ret
1076 void 04c5_Unk() {
1077         04c5 0081 0386 lri         $AR1, #0x0386
1078         04c7 009f 03a8 lri         $AC1.M, #0x03a8
1079         04c9 0080 0040 lri         $AR0, #0x0040
1080         04cb 02bf 007c call        0x007c
1081         04cd 02df      ret
1084 void 04ce_Increment32BitAddressAtAR0() {
1085         04ce 191e      lrri        $AC0.M, @$AR0
1086         04cf 189c      lrrd        $AC0.L, @$AR0
1087         04d0 4800      addax       $ACC0, $AX0.L
1088         04d1 1b1e      srri        @$AR0, $AC0.M
1089         04d2 1b1c      srri        @$AR0, $AC0.L
1090         04d3 02df      ret
1093 void 04d4_Unk() {
1094         04d4 8100      clr         $ACC0
1095         04d5 26fe      lrs         $AC0.M, @CMBH
1096         04d6 02c0 8000 andcf       $AC0.M, #0x8000
1097         04d8 029c 04d5 jlnz        0x04d5
1098         04da 26ff      lrs         $AC0.M, @CMBL
1099         04db 02df      ret
1102 void 04dc_Unk() {
1103         04dc 0080 0388 lri         $AR0, #0x0388
1104         04de 0081 0051 lri         $AR1, #0x0051
1105         04e0 173f      callr       $AR1
1106         04e1 00de 0344 lr          $AC0.M, @0x0344
1107         04e3 00fe 0341 sr          @0x0341, $AC0.M
1108         04e5 00de 0345 lr          $AC0.M, @0x0345
1109         04e7 00fe 038e sr          @0x038e, $AC0.M
1110         04e9 173f      callr       $AR1
1111         04ea 02df      ret
1114 /////////////////////////
1117 // 0x0341: Number of Frames to render ...
1119 // 0x034c + 0x034d: RAM address of the current PB block
1121 // 0x034e: Last Sync message for rendered frame
1122 // 0x0354: PB loop counter
1124 // 0x0355: Current Frame 
1126 // 0x0380: ???
1127 // 0x0381: ???
1129 // 0x0388: RAM Address of Output Buffer1
1130 // 0x038a: RAM Address of Output Buffer2
1131 // 
1132 // 0x038f: Output Buffer Address (0x0520 most of the time)
1134 // 0x03f8: *0x0433
1135 // 0x0520: Some kind of sample buffer
1137 // 0x0d00: Left mix buffer
1138 // 0x0d60: Right mix buffer
1140 void 04eb_COMMAND_02()  // sync frame
1141         04eb 02bf 04dc call        0x04dc
1142         04ed 009e 8000 lri         $AC0.M, #0x8000
1143         04ef 00dc 0341 lr          $AC0.L, @0x0341
1144         04f1 02bf 005a call        0x005a
1145         04f3 8100      clr         $ACC0
1146         04f4 00fe 0355 sr          @0x0355, $AC0.M
1147         04f6 02bf 04c5 call        0x04c5
1148         04f8 00de 0341 lr          $AC0.M, @0x0341
1149         04fa 007e 0698 bloop       $AC0.M, 0x0698
1150                 04fc 02bf 03d9 call        0x03d9
1151                 
1152                 04fe 02bf 0446 call        0x0446
1153                 0500 02bf 0bb6 call        0x0bb6
1154                 0502 02bf 04d4 call        0x04d4
1155                 0504 8100      clr         $ACC0
1156                 0505 00fe 0354 sr          @0x0354, $AC0.M
1157                 0507 00de 0342 lr          $AC0.M, @0x0342
1158                 0509 007e 064c bloop       $AC0.M, 0x064c
1159                         050b 00d8 0354 lr          $AX0.L, @0x0354
1160                         050d 009a 0180 lri         $AX0.H, #0x0180
1161                         050f 8100      clr         $ACC0
1162                         0510 00de 0380 lr          $AC0.M, @0x0380
1163                         0512 00dc 0381 lr          $AC0.L, @0x0381
1164                         0514 9000      mul         $AX0.L, $AX0.H
1165                         0515 9400      mulac       $AX0.L, $AX0.H, $ACC0
1166                         0516 00fe 034c sr          @0x034c, $AC0.M
1167                         0518 00fc 034d sr          @0x034d, $AC0.L
1168                         051a 02bf 0393 call        0x0393
1169                         051c 00da 0400 lr          $AX0.H, @0x0400
1170                         051e 8600      tstaxh      $AX0.H
1171                         051f 0295 0647 jz          0x0647
1172                         0521 00da 0401 lr          $AX0.H, @0x0401
1173                         0523 8600      tstaxh      $AX0.H
1174                         0524 0294 0647 jnz         0x0647
1175                                 0526 00da 0433 lr          $AX0.H, @0x0433
1176                                 0528 00fa 03f8 sr          @0x03f8, $AX0.H
1177                                 052a 00da 0406 lr          $AX0.H, @0x0406
1178                                 052c 8600      tstaxh      $AX0.H
1179                                 052d 0294 0a5e jnz         0x0a5e
1180                                 052f 8100      clr         $ACC0
1181                                 0530 00de 0480 lr          $AC0.M, @0x0480
1182                                 0532 0609      cmpis       $ACC0, #0x09
1183                                 0533 0295 0540 jz          0x0540
1184                                 0535 0620      cmpis       $ACC0, #0x20
1185                                 0536 0295 08cd jz          0x08cd
1186                                 0538 0621      cmpis       $ACC0, #0x21
1187                                 0539 0295 08d6 jz          0x08d6
1188                                 053b 0608      cmpis       $ACC0, #0x08
1189                                 053c 0295 0a66 jz          0x0a66
1190                                 053e 029f 0266 jmp         0x0266
1191                                 0540 00d8 0402 lr          $AX0.L, @0x0402
1192                                 0542 8100      clr         $ACC0
1193                                 0543 8900      clr         $ACC1
1194                                 0544 00dc 0430 lr          $AC0.L, @0x0430
1195                                 0546 8d00      set15       
1196                                 0547 0099 0050 lri         $AX1.L, #0x0050
1197                                 0549 a000      mulx        $AX0.L, $AX1.L
1198                                 054a a400      mulxac      $AX0.L, $AX1.L, $ACC0
1199                                 054b 1404      lsl         $ACC0, #4
1200                                 054c 8c00      clr15       
1201                                 054d 1ffe      mrr         $AC1.M, $AC0.M
1202                                 054e 0083 0580 lri         $AR3, #0x0580
1203                                 0550 00da 0481 lr          $AX0.H, @0x0481
1204                                 0552 8600      tstaxh      $AX0.H
1205                                 0553 0295 0563 jz          0x0563
1206                                         0555 00da 0489 lr          $AX0.H, @0x0489
1207                                         0557 8100      clr         $ACC0
1208                                         0558 00de 048b lr          $AC0.M, @0x048b
1209                                         055a 3800      orr         $AC0.M, $AX0.H
1210                                         055b 0240 000f andi        $AC0.M, #0x000f
1211                                         055d 0295 0563 jz          0x0563
1212                                         055f 02bf 07d5 call        0x07d5
1213                                         0561 029f 0565 jmp         0x0565
1214                                 0563 02bf 0966 call        0x0966
1215                                 0565 0080 0580 lri         $AR0, #0x0580
1216                                 0567 0081 0520 lri         $AR1, #0x0520
1217                                 0569 0099 0000 lri         $AX1.L, #0x0000
1218                                 056b 02bf 0141 call        0x0141
1219                                 056d 00da 04a8 lr          $AX0.H, @0x04a8
1220                                 056f 8600      tstaxh      $AX0.H
1221                                 0570 0295 0576 jz          0x0576
1222                                         0572 0080 0520 lri         $AR0, #0x0520
1223                                         0574 02bf 0b90 call        0x0b90
1224                                 0576 009e 0520 lri         $AC0.M, #0x0520
1225                                 0578 00fe 038f sr          @0x038f, $AC0.M
1226                                 057a 8900      clr         $ACC1
1227                                 057b 00df 0484 lr          $AC1.M, @0x0484
1228                                 057d 0340 001f andi        $AC1.M, #0x001f
1229                                 057f b900      tst         $ACC1
1230                                 0580 0295 05a6 jz          0x05a6
1231                                         0582 00de 038f lr          $AC0.M, @0x038f
1232                                         0584 5c00      sub         $ACC0, $AC1.L
1233                                         0585 00fe 038f sr          @0x038f, $AC0.M
1234                                         0587 1c7e      mrr         $AR3, $AC0.M
1235                                         0588 0080 0440 lri         $AR0, #0x0440
1236                                         058a 05fe      addis       $ACC1, #0xfe
1237                                         058b 02bf 03ac call        0x03ac
1238                                         058d 0080 0490 lri         $AR0, #0x0490
1239                                         058f 00c1 038f lr          $AR1, @0x038f
1240                                         0591 8900      clr         $ACC1
1241                                         0592 00df 0484 lr          $AC1.M, @0x0484
1242                                         0594 0340 001f andi        $AC1.M, #0x001f
1243                                         0596 02bf 01e1 call        0x01e1
1244                                         0598 00de 038f lr          $AC0.M, @0x038f
1245                                         059a 0450      addis       $ACC0, #0x50
1246                                         059b 1c1e      mrr         $AR0, $AC0.M
1247                                         059c 0083 0440 lri         $AR3, #0x0440
1248                                         059e 8900      clr         $ACC1
1249                                         059f 00df 0484 lr          $AC1.M, @0x0484
1250                                         05a1 0340 001f andi        $AC1.M, #0x001f
1251                                         05a3 05fe      addis       $ACC1, #0xfe
1252                                         05a4 02bf 03ac call        0x03ac
1253                                 05a6 00de 0484 lr          $AC0.M, @0x0484
1254                                 05a8 0240 0020 andi        $AC0.M, #0x0020
1255                                 05aa 0295 05c8 jz          0x05c8
1256                                         05ac 0080 04a4 lri         $AR0, #0x04a4
1257                                         05ae 00c1 038f lr          $AR1, @0x038f
1258                                         05b0 0082 0454 lri         $AR2, #0x0454
1259                                         05b2 0083 04a7 lri         $AR3, #0x04a7
1260                                         05b4 18fa      lrrd        $AX0.H, @$AR3
1261                                         05b5 8600      tstaxh      $AX0.H
1262                                         05b6 0294 05c6 jnz         0x05c6
1263                                                 05b8 18fa      lrrd        $AX0.H, @$AR3
1264                                                 05b9 8600      tstaxh      $AX0.H
1265                                                 05ba 0294 05c6 jnz         0x05c6
1266                                                         05bc 18fa      lrrd        $AX0.H, @$AR3
1267                                                         05bd 8600      tstaxh      $AX0.H
1268                                                         05be 0294 05c6 jnz         0x05c6
1269                                                                 05c0 8100      clr         $ACC0
1270                                                                 05c1 18fe      lrrd        $AC0.M, @$AR3
1271                                                                 05c2 0280 7fff cmpi        $AC0.M, #0x7fff
1272                                                                 05c4 0295 05c8 jz          0x05c8
1273                                         05c6 02bf 01fc call        0x01fc
1274                                 05c8 8100      clr         $ACC0
1275                                 05c9 1c9e      mrr         $IX0, $AC0.M
1276                                 05ca 1cde      mrr         $IX2, $AC0.M
1277                                 05cb 7400      incm        $AC0.M
1278                                 05cc 1cfe      mrr         $IX3, $AC0.M
1279                                 05cd 8100      clr         $ACC0
1280                                 05ce 00de 0407 lr          $AC0.M, @0x0407
1281                                 05d0 b100      tst         $ACC0
1282                                 05d1 0295 05e0 jz          0x05e0
1283                                         05d3 00c3 038f lr          $AR3, @0x038f
1284                                         05d5 0007      dar         $AR3
1285                                         05d6 0080 0477 lri         $AR0, #0x0477
1286                                         05d8 0084 ffff lri         $IX0, #0xffff
1287                                         05da 0087 ffff lri         $IX3, #0xffff
1288                                         05dc 199a      lrrn        $AX0.H, @$AR0
1289                                         05dd 6554      movr'ln     $ACC1, $AX0.H : $AX0.H, @$AR0
1290                                         05de 005e      loop        $AC0.M
1291                                                 05df 65ad      movr'lsnm   $ACC1, $AX0.H : $AX0.H, $AC1.M
1292                                 05e0 00da 0485 lr          $AX0.H, @0x0485
1293                                 05e2 8600      tstaxh      $AX0.H
1294                                 05e3 0295 05f6 jz          0x05f6
1295                                 05e5 8900      clr         $ACC1
1296                                 05e6 0086 0005 lri         $IX2, #0x0005
1297                                 05e8 0082 040a lri         $AR2, #0x040a
1298                                 05ea 1106 05ee bloopi      #0x06, 0x05ee
1299                                         05ec 18de      lrrd        $AC0.M, @$AR2
1300                                         05ed 147f      lsr         $ACC0, #-1
1301                                         05ee 4d36      add'sn      $ACC1, $AC0.L : @$AR2, $AC0.M
1302                                 05ef b900      tst         $ACC1
1303                                 05f0 0294 05f6 jnz         0x05f6
1304                                         05f2 009a 0001 lri         $AX0.H, #0x0001
1305                                         05f4 00fa 0401 sr          @0x0401, $AX0.H
1306                                 05f6 8f00      set40       
1307                                 05f7 0086 0002 lri         $IX2, #0x0002
1308                                 05f9 0082 0408 lri         $AR2, #0x0408
1309                                 05fb 1106 0626 bloopi      #0x06, 0x0626
1310                                         05fd 8100      clr         $ACC0
1311                                         05fe 195e      lrri        $AC0.M, @$AR2
1312                                         05ff 1200      sbclr       #0x00
1313                                         0600 b100      tst         $ACC0
1314                                         0601 0275      ifz         
1315                                                 0602 1300      sbset       #0x00
1316                                         0603 1c7e      mrr         $AR3, $AC0.M
1317                                         0604 195e      lrri        $AC0.M, @$AR2
1318                                         0605 195f      lrri        $AC1.M, @$AR2
1319                                         0606 5c00      sub         $ACC0, $AC1.L
1320                                         0607 14fb      asr         $ACC0, #-5
1321                                         0608 1f5e      mrr         $AX0.H, $AC0.M
1322                                         0609 1f1c      mrr         $AX0.L, $AC0.L
1323                                         060a 185e      lrr         $AC0.M, @$AR2
1324                                         060b 0240 00ff andi        $AC0.M, #0x00ff
1325                                         060d 1f7e      mrr         $AX1.H, $AC0.M
1326                                         060e 185e      lrr         $AC0.M, @$AR2
1327                                         060f 1478      lsr         $ACC0, #-8
1328                                         0610 009c 0000 lri         $AC0.L, #0x0000
1329                                         0612 d100      cmpar       $ACC1, $AX0.H
1330                                         0613 0295 061b jz          0x061b
1331                                                 0615 185e      lrr         $AC0.M, @$AR2
1332                                                 0616 0272      ifg         
1333                                                         0617 7400      incm        $AC0.M
1334                                                 0618 0271      ifs         
1335                                                         0619 7800      decm        $AC0.M
1336                                                 061a 1a5e      srr         @$AR2, $AC0.M
1337                                         061b 0006      dar         $AR2
1338                                         061c 00de 038f lr          $AC0.M, @0x038f
1339                                         061e 5600      subr        $ACC0, $AX1.H
1340                                         061f 029d 0624 jlz         0x0624
1341                                                 0621 1c1e      mrr         $AR0, $AC0.M
1342                                                 0622 02bf 011e call        0x011e
1343                                         0624 0000      nop         
1344                                         0625 1b5f      srri        @$AR2, $AC1.M
1345                                         0626 000a      iar         $AR2
1346                                 0627 8e00      set16       
1347                                 0628 8100      clr         $ACC0
1348                                 0629 00de 0407 lr          $AC0.M, @0x0407
1349                                 062b b100      tst         $ACC0
1350                                 062c 0295 063d jz          0x063d
1351                                         062e 00c3 038f lr          $AR3, @0x038f
1352                                         0630 0087 004f lri         $IX3, #0x004f
1353                                         0632 001f      addarn      $AR3, $IX3
1354                                         0633 0080 0477 lri         $AR0, #0x0477
1355                                         0635 0084 ffff lri         $IX0, #0xffff
1356                                         0637 0087 ffff lri         $IX3, #0xffff
1357                                         0639 19fa      lrrn        $AX0.H, @$AR3
1358                                         063a 6557      movr'ln     $ACC1, $AX0.H : $AX0.H, @$AR3
1359                                         063b 005e      loop        $AC0.M
1360                                                 063c 65af      movr'slnm   $ACC1, $AX0.H : $AC1.M, $AX0.H
1361                                         063d 00da 0406 lr          $AX0.H, @0x0406
1362                                 063f 8600      tstaxh      $AX0.H
1363                                 0640 0294 0645 jnz         0x0645
1364                                         0642 8100      clr         $ACC0
1365                                         0643 00fe 0404 sr          @0x0404, $AC0.M
1366                                 0645 02bf 039c call        0x039c
1367                                 
1368                         
1369                         0647 00de 0354 lr          $AC0.M, @0x0354
1370                         0649 7400      incm        $AC0.M
1371                         064a 00fe 0354 sr          @0x0354, $AC0.M
1372                         064c 0000      nop         
1373                 064d 16fb 0001 si          @DIRQ, #0x0001
1374                 064f 02bf 0b11 call        0x0b11
1375                 0651 02bf 0b24 call        0x0b24
1376                 0653 02bf 0b7b call        0x0b7b
1377                 0655 0080 09a0 lri         $AR0, #0x09a0
1378                 0657 0083 0d00 lri         $AR3, #0x0d00
1379                 0659 009f 0050 lri         $AC1.M, #0x0050
1380                 065b 0098 5a82 lri         $AX0.L, #0x5a82
1381                 065d 02bf 03bd call        0x03bd
1382                 065f 0080 09a0 lri         $AR0, #0x09a0
1383                 0661 0083 0d60 lri         $AR3, #0x0d60
1384                 0663 009f 0050 lri         $AC1.M, #0x0050
1385                 0665 02bf 03bd call        0x03bd
1386                 0667 0083 0d00 lri         $AR3, #0x0d00
1387                 0669 02bf 0130 call        0x0130
1388                 066b 0081 0388 lri         $AR1, #0x0388
1389                 066d 009f 0d00 lri         $AC1.M, #0x0d00
1390                 066f 0080 0050 lri         $AR0, #0x0050
1391                 0671 02bf 0089 call        0x0089
1392                 0673 0080 0fa0 lri         $AR0, #0x0fa0
1393                 0675 0083 0d60 lri         $AR3, #0x0d60
1394                 0677 009f 0050 lri         $AC1.M, #0x0050
1395                 0679 0098 8000 lri         $AX0.L, #0x8000
1396                 067b 02bf 03bd call        0x03bd
1397                 067d 0083 0d60 lri         $AR3, #0x0d60
1398                 067f 02bf 0130 call        0x0130
1399                 0681 0081 038a lri         $AR1, #0x038a
1400                 0683 009f 0d60 lri         $AC1.M, #0x0d60
1401                 0685 0080 0050 lri         $AR0, #0x0050
1402                 0687 02bf 0089 call        0x0089
1403                 0689 009a 0000 lri         $AX0.H, #0x0000
1404                 068b 0098 00a0 lri         $AX0.L, #0x00a0
1405                 068d 0080 0388 lri         $AR0, #0x0388
1406                 068f 02bf 04ce call        0x04ce
1407                 0691 0080 038a lri         $AR0, #0x038a
1408                 0693 02bf 04ce call        0x04ce
1409                 0695 02bf 0497 call        0x0497
1410                 0697 0000      nop         
1411                 0698 0000      nop         
1412         }
1413         0699 029f 0031 jmp         0x0031
1414         069b 0080 0346 lri         $AR0, #0x0346
1415         069d 02bf 0051 call        0x0051
1416         069f 02bf 0051 call        0x0051
1417         06a1 0081 0346 lri         $AR1, #0x0346
1418         06a3 193e      lrri        $AC0.M, @$AR1
1419         06a4 193c      lrri        $AC0.L, @$AR1
1420         06a5 009f 0400 lri         $AC1.M, #0x0400
1421         06a7 00c0 0345 lr          $AR0, @0x0345
1422         06a9 02bf 007e call        0x007e
1423         
1424         06ab 0081 0348 lri         $AR1, #0x0348
1425         06ad 193e      lrri        $AC0.M, @$AR1
1426         06ae 193c      lrri        $AC0.L, @$AR1
1427         06af 009f 0800 lri         $AC1.M, #0x0800
1428         06b1 00c0 0345 lr          $AR0, @0x0345
1429         06b3 02bf 007e call        0x007e
1430         
1431         06b5 0081 0346 lri         $AR1, #0x0346
1432         06b7 193e      lrri        $AC0.M, @$AR1
1433         06b8 193c      lrri        $AC0.L, @$AR1
1434         06b9 009f 0800 lri         $AC1.M, #0x0800
1435         06bb 00c0 0345 lr          $AR0, @0x0345
1436         06bd 02bf 008b call        0x008b
1437         
1438         06bf 0081 0348 lri         $AR1, #0x0348
1439         06c1 193e      lrri        $AC0.M, @$AR1
1440         06c2 193c      lrri        $AC0.L, @$AR1
1441         06c3 009f 0400 lri         $AC1.M, #0x0400
1442         06c5 00c0 0345 lr          $AR0, @0x0345
1443         06c7 02bf 008b call        0x008b
1444         
1445         06c9 029f 0049 jmp         0x0049
1448 void 06cb_Unk() {       
1449         06cb 0080 0346 lri         $AR0, #0x0346
1450         06cd 02bf 0051 call        0x0051
1451         06cf 02bf 0051 call        0x0051
1452         06d1 0081 0346 lri         $AR1, #0x0346
1453         06d3 193e      lrri        $AC0.M, @$AR1
1454         06d4 193c      lrri        $AC0.L, @$AR1
1455         06d5 009f 0400 lri         $AC1.M, #0x0400
1456         06d7 00c0 0345 lr          $AR0, @0x0345
1457         06d9 02bf 007e call        0x007e
1458         06db 0081 0348 lri         $AR1, #0x0348
1459         06dd 193e      lrri        $AC0.M, @$AR1
1460         06de 193c      lrri        $AC0.L, @$AR1
1461         06df 009f 0400 lri         $AC1.M, #0x0400
1462         06e1 00c0 0345 lr          $AR0, @0x0345
1463         06e3 02bf 008b call        0x008b
1464         06e5 029f 0049 jmp         0x0049
1465 }       
1467 void 06e7_Unk() {
1468         06e7 0080 0346 lri         $AR0, #0x0346
1469         06e9 02bf 0051 call        0x0051
1470         06eb 02bf 0051 call        0x0051
1471         06ed 0081 0346 lri         $AR1, #0x0346
1472         06ef 193e      lrri        $AC0.M, @$AR1
1473         06f0 193c      lrri        $AC0.L, @$AR1
1474         06f1 009f 0400 lri         $AC1.M, #0x0400
1475         06f3 00c0 0345 lr          $AR0, @0x0345
1476         06f5 02bf 00ae call        0x00ae
1477         06f7 0081 0348 lri         $AR1, #0x0348
1478         06f9 193e      lrri        $AC0.M, @$AR1
1479         06fa 193c      lrri        $AC0.L, @$AR1
1480         06fb 009f 0400 lri         $AC1.M, #0x0400
1481         06fd 00c0 0345 lr          $AR0, @0x0345
1482         06ff 02bf 008b call        0x008b
1483         0701 029f 0049 jmp         0x0049
1484         0703 0080 0346 lri         $AR0, #0x0346
1485         0705 02bf 0051 call        0x0051
1486         0707 02bf 0051 call        0x0051
1487         0709 0081 0346 lri         $AR1, #0x0346
1488         070b 193e      lrri        $AC0.M, @$AR1
1489         070c 193c      lrri        $AC0.L, @$AR1
1490         070d 009f 0400 lri         $AC1.M, #0x0400
1491         070f 00c0 0344 lr          $AR0, @0x0344
1492         0711 02bf 007e call        0x007e
1493         0713 0081 0348 lri         $AR1, #0x0348
1494         0715 193e      lrri        $AC0.M, @$AR1
1495         0716 193c      lrri        $AC0.L, @$AR1
1496         0717 009f 0800 lri         $AC1.M, #0x0800
1497         0719 00c0 0344 lr          $AR0, @0x0344
1498         071b 02bf 007e call        0x007e
1499         071d 0080 0400 lri         $AR0, #0x0400
1500         071f 0083 0800 lri         $AR3, #0x0800
1501         0721 0084 0000 lri         $IX0, #0x0000
1502         0723 00da 0345 lr          $AX0.H, @0x0345
1503         0725 00df 0344 lr          $AC1.M, @0x0344
1504         0727 8f00      set40       
1505         0728 197b      lrri        $AX1.H, @$AR3
1506         0729 b800      mulx        $AX0.H, $AX1.H
1507         072a 197b      lrri        $AX1.H, @$AR3
1508         072b 007f 0730 bloop       $AC1.M, 0x0730
1509         072d 199e      lrrn        $AC0.M, @$AR0
1510         072e bc00      mulxac      $AX0.H, $AX1.H, $ACC0
1511         072f 80b2      nx'sl       : $AC0.M, $AX1.H
1512         0730 0000      nop         
1513         0731 8e00      set16       
1514         0732 0081 0346 lri         $AR1, #0x0346
1515         0734 193e      lrri        $AC0.M, @$AR1
1516         0735 193c      lrri        $AC0.L, @$AR1
1517         0736 009f 0400 lri         $AC1.M, #0x0400
1518         0738 00c0 0344 lr          $AR0, @0x0344
1519         073a 02bf 008b call        0x008b
1520         073c 009e 8200 lri         $AC0.M, #0x8200
1521         073e 00dc 0344 lr          $AC0.L, @0x0344
1522         0740 02bf 005a call        0x005a
1523         0742 029f 0031 jmp         0x0031
1524         0744 0080 0346 lri         $AR0, #0x0346
1525         0746 02bf 0051 call        0x0051
1526         0748 0081 0346 lri         $AR1, #0x0346
1527         074a 009f 0400 lri         $AC1.M, #0x0400
1528         074c 00c0 0345 lr          $AR0, @0x0345
1529         074e 02bf 007c call        0x007c
1530         0750 02bf 8644 call        0x8644
1531         0752 029f 0049 jmp         0x0049
1534 void 0754_Unk() {
1535         0754 009e 0458 lri         $AC0.M, #0x0458
1536         0756 2231      lrs         $AX0.H, @0x0031
1537         0757 4400      addr        $ACC0, $AX0.H
1538         0758 1c1e      mrr         $AR0, $AC0.M
1539         0759 1fda      mrr         $AC0.M, $AX0.H
1540         075a 3280      xorr'ls     $AC0.M, $AX1.H : $AX0.L, $AC0.M
1541         075b 7400      incm        $AC0.M
1542         075c 2232      lrs         $AX0.H, @0x0032
1543         075d 4400      addr        $ACC0, $AX0.H
1544         075e 0090 0000 lri         $AC0.H, #0x0000
1545         0760 029f 0771 jmp         0x0771
1546         0762 009e 0458 lri         $AC0.M, #0x0458
1547         0764 2231      lrs         $AX0.H, @0x0031
1548         0765 4400      addr        $ACC0, $AX0.H
1549         0766 1c1e      mrr         $AR0, $AC0.M
1550         0767 1fda      mrr         $AC0.M, $AX0.H
1551         0768 3280      xorr'ls     $AC0.M, $AX1.H : $AX0.L, $AC0.M
1552         0769 7400      incm        $AC0.M
1553         076a 2232      lrs         $AX0.H, @0x0032
1554         076b 4400      addr        $ACC0, $AX0.H
1555         076c 0090 0000 lri         $AC0.H, #0x0000
1556         076e 8200      cmp         
1557         076f 0270      ifns        
1558         0770 1fdf      mrr         $AC0.M, $AC1.M
1559         0771 1f3e      mrr         $AX1.L, $AC0.M
1560         0772 02bf 07c8 call        0x07c8
1561         0774 2634      lrs         $AC0.M, @0x0034
1562         0775 2435      lrs         $AC0.L, @0x0035
1563         0776 7200      addaxl      $ACC0, $AX1.L
1564         0777 5300      subr        $ACC1, $AX1.L
1565         0778 2e34      srs         @0x0034, $AC0.M
1566         0779 2c35      srs         @0x0035, $AC0.L
1567         077a 02df      ret
1570 void 077b_Unk() {
1571         077b 8100      clr         $ACC0
1572         077c 2234      lrs         $AX0.H, @0x0034
1573         077d 2035      lrs         $AX0.L, @0x0035
1574         077e 4800      addax       $ACC0, $AX0.L
1575         077f 147c      lsr         $ACC0, #-4
1576         0780 2e36      srs         @0x0036, $AC0.M
1577         0781 2c37      srs         @0x0037, $AC0.L
1578         0782 2380      lrs         $AX1.H, @0xff80
1579         0783 8d00      set15       
1580         0784 c810      mulc'mv     $AC0.M, $AX1.H : $AX0.L, $AC0.L
1581         0785 ae00      mulxmv      $AX0.L, $AX1.H, $ACC0
1582         0786 8c00      clr15       
1583         0787 2035      lrs         $AX0.L, @0x0035
1584         0788 f000      lsl16       $ACC0
1585         0789 4e00      addp        $ACC0
1586         078a 238c      lrs         $AX1.H, @0xff8c
1587         078b 218d      lrs         $AX1.L, @0xff8d
1588         078c 4a00      addax       $ACC0, $AX1.L
1589         078d 2e38      srs         @0x0038, $AC0.M
1590         078e 2c39      srs         @0x0039, $AC0.L
1591         078f 1fd8      mrr         $AC0.M, $AX0.L
1592         0790 0240 000f andi        $AC0.M, #0x000f
1593         0792 2e31      srs         @0x0031, $AC0.M
1594         0793 268a      lrs         $AC0.M, @0xff8a
1595         0794 248b      lrs         $AC0.L, @0xff8b
1596         0795 5800      subax       $ACC0, $AX0.L
1597         0796 2e3a      srs         @0x003a, $AC0.M
1598         0797 2c3b      srs         @0x003b, $AC0.L
1599         0798 02df      ret
1602 void 0799_Unk() {
1603         0799 2236      lrs         $AX0.H, @0x0036
1604         079a 2037      lrs         $AX0.L, @0x0037
1605         079b 8100      clr         $ACC0
1606         079c 268a      lrs         $AC0.M, @0xff8a
1607         079d 248b      lrs         $AC0.L, @0xff8b
1608         079e 147c      lsr         $ACC0, #-4
1609         079f 5800      subax       $ACC0, $AX0.L
1610         07a0 0295 07a9 jz          0x07a9
1611         07a2 02bf 081b call        0x081b
1612         07a4 0e10      lris        $AC0.M, #0x10
1613         07a5 2e32      srs         @0x0032, $AC0.M
1614         07a6 8100      clr         $ACC0
1615         07a7 2e31      srs         @0x0031, $AC0.M
1616         07a8 02df      ret
1619 void 07a9_Unk() {
1620         07a9 228a      lrs         $AX0.H, @0xff8a
1621         07aa 208b      lrs         $AX0.L, @0xff8b
1622         07ab 8100      clr         $ACC0
1623         07ac 2634      lrs         $AC0.M, @0x0034
1624         07ad 2435      lrs         $AC0.L, @0x0035
1625         07ae 5800      subax       $ACC0, $AX0.L
1626         07af 0290 07b6 jns         0x07b6
1627         07b1 02bf 081b call        0x081b
1628         07b3 263b      lrs         $AC0.M, @0x003b
1629         07b4 029f 07a5 jmp         0x07a5
1630         07b6 2688      lrs         $AC0.M, @0xff88
1631         07b7 2489      lrs         $AC0.L, @0xff89
1632         07b8 2e34      srs         @0x0034, $AC0.M
1633         07b9 2c35      srs         @0x0035, $AC0.L
1634         07ba 0e10      lris        $AC0.M, #0x10
1635         07bb 2e32      srs         @0x0032, $AC0.M
1636         07bc 02bf 077b call        0x077b
1637         07be 2682      lrs         $AC0.M, @0xff82
1638         07bf 2e67      srs         @0x0067, $AC0.M
1639         07c0 2683      lrs         $AC0.M, @0xff83
1640         07c1 2e66      srs         @0x0066, $AC0.M
1641         07c2 8100      clr         $ACC0
1642         07c3 00fe 0362 sr          @0x0362, $AC0.M
1643         07c5 02bf 081b call        0x081b
1644         07c7 02df      ret
1647 void 07c8_Unk() {
1648         07c8 b100      tst         $ACC0
1649         07c9 02d5      retz        
1650         07ca 04fe      addis       $ACC0, #0xfe
1651         07cb 1f1e      mrr         $AX0.L, $AC0.M
1652         07cc 191e      lrri        $AC0.M, @$AR0
1653         07cd 0291 07d3 js          0x07d3
1654                 07cf 191a      lrri        $AX0.H, @$AR0
1655                 07d0 0058      loop        $AX0.L
1656                 07d1 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
1657                 07d2 6433      movr's      $ACC0, $AX0.H : @$AR3, $AC0.M
1658         07d3 1b7e      srri        @$AR3, $AC0.M
1659         07d4 02df      ret
1662 void 07d5_Unk() {
1663         07d5 0092 0004 lri         $CR, #0x0004
1664         07d7 02bf 077b call        0x077b
1665         07d9 8100      clr         $ACC0
1666         07da 00fe 0362 sr          @0x0362, $AC0.M
1667         07dc 8100      clr         $ACC0
1668         07dd 263a      lrs         $AC0.M, @0x003a
1669         07de 243b      lrs         $AC0.L, @0x003b
1670         07df b100      tst         $ACC0
1671         07e0 0294 07f2 jnz         0x07f2
1672         07e2 02bf 0799 call        0x0799
1673         07e4 2231      lrs         $AX0.H, @0x0031
1674         07e5 8600      tstaxh      $AX0.H
1675         07e6 0294 07ef jnz         0x07ef
1676         07e8 02bf 0762 call        0x0762
1677         07ea b900      tst         $ACC1
1678         07eb 0295 0818 jz          0x0818
1679         07ed 02bf 077b call        0x077b
1680         07ef 8100      clr         $ACC0
1681         07f0 263a      lrs         $AC0.M, @0x003a
1682         07f1 243b      lrs         $AC0.L, @0x003b
1683         07f2 1f1f      mrr         $AX0.L, $AC1.M
1684         07f3 009a 0000 lri         $AX0.H, #0x0000
1685         07f5 5800      subax       $ACC0, $AX0.L
1686         07f6 0290 0805 jns         0x0805
1687         07f8 8100      clr         $ACC0
1688         07f9 2631      lrs         $AC0.M, @0x0031
1689         07fa b100      tst         $ACC0
1690         07fb 0294 07ff jnz         0x07ff
1691         07fd 02bf 0799 call        0x0799
1692         07ff 02bf 0754 call        0x0754
1693         0801 02bf 077b call        0x077b
1694         0803 029f 07dc jmp         0x07dc
1695         0805 8100      clr         $ACC0
1696         0806 2631      lrs         $AC0.M, @0x0031
1697         0807 b100      tst         $ACC0
1698         0808 0294 080c jnz         0x080c
1699         080a 02bf 0799 call        0x0799
1700         080c 02bf 0762 call        0x0762
1701         080e b900      tst         $ACC1
1702         080f 0295 0818 jz          0x0818
1703         0811 02bf 077b call        0x077b
1704         0813 029f 0805 jmp         0x0805
1705         0815 8100      clr         $ACC0
1706         0816 005f      loop        $AC1.M
1707         0817 1b7e      srri        @$AR3, $AC0.M
1708         0818 0092 00ff lri         $CR, #0x00ff
1709         081a 02df      ret
1712 void 081b_Unk() {
1713         081b 00ff 0360 sr          @0x0360, $AC1.M
1714         081d 00da 0362 lr          $AX0.H, @0x0362
1715         081f 8600      tstaxh      $AX0.H
1716         0820 0294 082d jnz         0x082d
1717         0822 0a01      lris        $AX0.H, #0x01
1718         0823 00fa 0362 sr          @0x0362, $AX0.H
1719         0825 2638      lrs         $AC0.M, @0x0038
1720         0826 2439      lrs         $AC0.L, @0x0039
1721         0827 009f 0005 lri         $AC1.M, #0x0005
1722         0829 02bf 0103 call        0x0103
1723         082b 0092 0004 lri         $CR, #0x0004
1724         082d 0080 ffd3 lri         $AR0, #0xffd3
1725         082f 0084 0000 lri         $IX0, #0x0000
1726         0831 199e      lrrn        $AC0.M, @$AR0
1727         0832 1ffe      mrr         $AC1.M, $AC0.M
1728         0833 1401      lsl         $ACC0, #1
1729         0834 0240 001e andi        $AC0.M, #0x001e
1730         0836 0200 0300 addi        $AC0.M, #0x0300
1731         0838 1c3e      mrr         $AR1, $AC0.M
1732         0839 157c      lsr         $ACC1, #-4
1733         083a 0340 000f andi        $AC1.M, #0x000f
1734         083c 0a11      lris        $AX0.H, #0x11
1735         083d 5500      subr        $ACC1, $AX0.H
1736         083e 009a 00f0 lri         $AX0.H, #0x00f0
1737         0840 009b 000f lri         $AX1.H, #0x000f
1738         0842 0082 0370 lri         $AR2, #0x0370
1739         0844 1998      lrrn        $AX0.L, @$AR0
1740         0845 6000      movr        $ACC0, $AX0.L
1741         0846 1107 084d bloopi      #0x07, 0x084d
1742         0848 3400      andr        $AC0.M, $AX0.H
1743         0849 1408      lsl         $ACC0, #8
1744         084a 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
1745         084b 3644      andr'ln     $AC0.M, $AX1.H : $AX0.L, @$AR0
1746         084c 140c      lsl         $ACC0, #12
1747         084d 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
1748         084e 3400      andr        $AC0.M, $AX0.H
1749         084f 1408      lsl         $ACC0, #8
1750         0850 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
1751         0851 3600      andr        $AC0.M, $AX1.H
1752         0852 140c      lsl         $ACC0, #12
1753         0853 1b5e      srri        @$AR2, $AC0.M
1754         0854 8f00      set40       
1755         0855 1f7f      mrr         $AX1.H, $AC1.M
1756         0856 2066      lrs         $AX0.L, @0x0066
1757         0857 2767      lrs         $AC1.M, @0x0067
1758         0858 193a      lrri        $AX0.H, @$AR1
1759         0859 1939      lrri        $AX1.L, @$AR1
1760         085a 0080 0370 lri         $AR0, #0x0370
1761         085c 0081 0458 lri         $AR1, #0x0458
1762         085e 1c80      mrr         $IX0, $AR0
1763         085f a000      mulx        $AX0.L, $AX1.L
1764         0860 ea70      maddc'l     $AC1.M, $AX1.L : $AC0.M, @$AR0
1765         0861 1108 086a bloopi      #0x08, 0x086a
1766                 0863 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
1767                 0864 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
1768                 0865 1485      asl         $ACC0, #5
1769                 0866 e831      maddc's     $AC0.M, $AX1.L : @$AR1, $AC0.M
1770                 0867 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
1771                 0868 a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
1772                 0869 1585      asl         $ACC1, #5
1773                 086a ea39      maddc's     $AC1.M, $AX1.L : @$AR1, $AC1.M
1774         086b 8e00      set16       
1775         086c 8900      clr         $ACC1
1776         086d 00df 0360 lr          $AC1.M, @0x0360
1777         086f 02df      ret
1780 void 0870_Unk() {
1781         0870 0080 0346 lri         $AR0, #0x0346
1782         0872 02bf 0051 call        0x0051
1783         0874 8100      clr         $ACC0
1784         0875 0080 0458 lri         $AR0, #0x0458
1785         0877 1010      loopi       #0x10
1786         0878 1b1e      srri        @$AR0, $AC0.M
1787         0879 00fe 0482 sr          @0x0482, $AC0.M
1788         087b 00fe 0483 sr          @0x0483, $AC0.M
1789         087d 009c 0000 lri         $AC0.L, #0x0000
1790         087f 00fe 0434 sr          @0x0434, $AC0.M
1791         0881 00fc 0435 sr          @0x0435, $AC0.L
1792         0883 009e 0100 lri         $AC0.M, #0x0100
1793         0885 009c f100 lri         $AC0.L, #0xf100
1794         0887 00fe 048e sr          @0x048e, $AC0.M
1795         0889 00fc 048f sr          @0x048f, $AC0.L
1796         088b 009e 0040 lri         $AC0.M, #0x0040
1797         088d 009c 0000 lri         $AC0.L, #0x0000
1798         088f 00fe 048c sr          @0x048c, $AC0.M
1799         0891 00fc 048d sr          @0x048d, $AC0.L
1800         0893 009e 0009 lri         $AC0.M, #0x0009
1801         0895 00fe 0480 sr          @0x0480, $AC0.M
1802         0897 009e 0010 lri         $AC0.M, #0x0010
1803         0899 00fe 0432 sr          @0x0432, $AC0.M
1804         089b 009e 0100 lri         $AC0.M, #0x0100
1805         089d 009c f250 lri         $AC0.L, #0xf250
1806         089f 00fe 048a sr          @0x048a, $AC0.M
1807         08a1 00fc 048b sr          @0x048b, $AC0.L
1808         08a3 009c 0000 lri         $AC0.L, #0x0000
1809         08a5 00fe 0488 sr          @0x0488, $AC0.M
1810         08a7 00fc 0489 sr          @0x0489, $AC0.L
1811         08a9 009e 0001 lri         $AC0.M, #0x0001
1812         08ab 00fe 0481 sr          @0x0481, $AC0.M
1813         08ad 8900      clr         $ACC1
1814         08ae 00ff 0401 sr          @0x0401, $AC1.M
1815         08b0 1180 08ca bloopi      #0x80, 0x08ca
1816         08b2 0083 0580 lri         $AR3, #0x0580
1817         08b4 009f 0100 lri         $AC1.M, #0x0100
1818         08b6 02bf 07d5 call        0x07d5
1819         08b8 0081 0346 lri         $AR1, #0x0346
1820         08ba 193e      lrri        $AC0.M, @$AR1
1821         08bb 18bc      lrrd        $AC0.L, @$AR1
1822         08bc 009f 0580 lri         $AC1.M, #0x0580
1823         08be 0080 0100 lri         $AR0, #0x0100
1824         08c0 02bf 008b call        0x008b
1825         08c2 0081 0346 lri         $AR1, #0x0346
1826         08c4 193e      lrri        $AC0.M, @$AR1
1827         08c5 18bc      lrrd        $AC0.L, @$AR1
1828         08c6 0098 0200 lri         $AX0.L, #0x0200
1829         08c8 7000      addaxl      $ACC0, $AX0.L
1830         08c9 1b3e      srri        @$AR1, $AC0.M
1831         08ca 1abc      srrd        @$AR1, $AC0.L
1832         08cb 029f 0049 jmp         0x0049
1835 void 08cd_Unk() {
1836         08cd 8900      clr         $ACC1
1837         08ce 009f 0050 lri         $AC1.M, #0x0050
1838         08d0 0083 0520 lri         $AR3, #0x0520
1839         08d2 02bf 08e8 call        0x08e8
1840         08d4 029f 056d jmp         0x056d
1843 void 08d6_Unk() {
1844         08d6 00d8 0402 lr          $AX0.L, @0x0402
1845         08d8 8100      clr         $ACC0
1846         08d9 8900      clr         $ACC1
1847         08da 00dc 0430 lr          $AC0.L, @0x0430
1848         08dc 009a 0050 lri         $AX0.H, #0x0050
1849         08de 9000      mul         $AX0.L, $AX0.H
1850         08df 9400      mulac       $AX0.L, $AX0.H, $ACC0
1851         08e0 1404      lsl         $ACC0, #4
1852         08e1 1ffe      mrr         $AC1.M, $AC0.M
1853         08e2 0083 0580 lri         $AR3, #0x0580
1854         08e4 02bf 08e8 call        0x08e8
1855         08e6 029f 0565 jmp         0x0565
1858 void 08e8_Unk() {
1859         08e8 0092 0004 lri         $CR, #0x0004
1860         08ea 8100      clr         $ACC0
1861         08eb 263a      lrs         $AC0.M, @0x003a
1862         08ec 243b      lrs         $AC0.L, @0x003b
1863         08ed 1f1f      mrr         $AX0.L, $AC1.M
1864         08ee 009a 0000 lri         $AX0.H, #0x0000
1865         08f0 5800      subax       $ACC0, $AX0.L
1866         08f1 0290 0908 jns         0x0908
1867         08f3 8900      clr         $ACC1
1868         08f4 00c0 043b lr          $AR0, @0x043b
1869         08f6 02bf 092d call        0x092d
1870         08f8 8100      clr         $ACC0
1871         08f9 1fd8      mrr         $AC0.M, $AX0.L
1872         08fa 223b      lrs         $AX0.H, @0x003b
1873         08fb 5400      subr        $ACC0, $AX0.H
1874         08fc 0007      dar         $AR3
1875         08fd 1979      lrri        $AX1.L, @$AR3
1876         08fe 005e      loop        $AC0.M
1877         08ff 1b79      srri        @$AR3, $AX1.L
1878         0900 009f 0001 lri         $AC1.M, #0x0001
1879         0902 2f01      srs         @0x0001, $AC1.M
1880         0903 8900      clr         $ACC1
1881         0904 2f3b      srs         @0x003b, $AC1.M
1882         0905 0092 00ff lri         $CR, #0x00ff
1883         0907 02df      ret
1886 void 0908_Unk() {
1887         0908 2e3a      srs         @0x003a, $AC0.M
1888         0909 2c3b      srs         @0x003b, $AC0.L
1889         090a 8100      clr         $ACC0
1890         090b 8900      clr         $ACC1
1891         090c 268a      lrs         $AC0.M, @0xff8a
1892         090d 2734      lrs         $AC1.M, @0x0034
1893         090e 5c00      sub         $ACC0, $AC1.L
1894         090f 2e36      srs         @0x0036, $AC0.M
1895         0910 5000      subr        $ACC0, $AX0.L
1896         0911 0290 0927 jns         0x0927
1897         0913 00c0 0436 lr          $AR0, @0x0436
1898         0915 02bf 092d call        0x092d
1899         0917 8100      clr         $ACC0
1900         0918 1fd8      mrr         $AC0.M, $AX0.L
1901         0919 2236      lrs         $AX0.H, @0x0036
1902         091a 5400      subr        $ACC0, $AX0.H
1903         091b 1c1e      mrr         $AR0, $AC0.M
1904         091c 8100      clr         $ACC0
1905         091d 2e34      srs         @0x0034, $AC0.M
1906         091e 2688      lrs         $AC0.M, @0xff88
1907         091f 2489      lrs         $AC0.L, @0xff89
1908         0920 2e8c      srs         @0xff8c, $AC0.M
1909         0921 2c8d      srs         @0xff8d, $AC0.L
1910         0922 02bf 092d call        0x092d
1911         0924 0092 00ff lri         $CR, #0x00ff
1912         0926 02df      ret
1915 void 0927_Unk() {
1916         0927 1c18      mrr         $AR0, $AX0.L
1917         0928 02bf 092d call        0x092d
1918         092a 0092 00ff lri         $CR, #0x00ff
1919         092c 02df      ret
1922 void 092d_Unk() {
1923         092d 8100      clr         $ACC0
1924         092e 1fc0      mrr         $AC0.M, $AR0
1925         092f b100      tst         $ACC0
1926         0930 02d5      retz        
1927         0931 8900      clr         $ACC1
1928         0932 2734      lrs         $AC1.M, @0x0034
1929         0933 0340 0001 andi        $AC1.M, #0x0001
1930         0935 009b 0000 lri         $AX1.H, #0x0000
1931         0937 1f3f      mrr         $AX1.L, $AC1.M
1932         0938 268c      lrs         $AC0.M, @0xff8c
1933         0939 248d      lrs         $AC0.L, @0xff8d
1934         093a 8900      clr         $ACC1
1935         093b 2534      lrs         $AC1.L, @0x0034
1936         093c 1501      lsl         $ACC1, #1
1937         093d 4c00      add         $ACC0, $AC1.L
1938         093e 5a00      subax       $ACC0, $AX1.L
1939         093f 5a00      subax       $ACC0, $AX1.L
1940         0940 1c20      mrr         $AR1, $AR0
1941         0941 1fe0      mrr         $AC1.M, $AR0
1942         0942 0502      addis       $ACC1, #0x02
1943         0943 1c1f      mrr         $AR0, $AC1.M
1944         0944 009f 0a00 lri         $AC1.M, #0x0a00
1945         0946 0092 00ff lri         $CR, #0x00ff
1946         0948 02bf 007e call        0x007e
1947         094a 0092 0004 lri         $CR, #0x0004
1948         094c 2734      lrs         $AC1.M, @0x0034
1949         094d 1f61      mrr         $AX1.H, $AR1
1950         094e 4700      addr        $ACC1, $AX1.H
1951         094f 2f34      srs         @0x0034, $AC1.M
1952         0950 0080 0a00 lri         $AR0, #0x0a00
1953         0952 8900      clr         $ACC1
1954         0953 1ff9      mrr         $AC1.M, $AX1.L
1955         0954 b900      tst         $ACC1
1956         0955 0274      ifnz        
1957         0956 0008      iar         $AR0
1958         0957 8900      clr         $ACC1
1959         0958 1fe1      mrr         $AC1.M, $AR1
1960         0959 191e      lrri        $AC0.M, @$AR0
1961         095a 0701      cmpis       $ACC1, #0x01
1962         095b 0293 0964 jle         0x0964
1963         095d 191a      lrri        $AX0.H, @$AR0
1964         095e 05fe      addis       $ACC1, #0xfe
1965         095f 005f      loop        $AC1.M
1966         0960 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
1967         0961 1b7e      srri        @$AR3, $AC0.M
1968         0962 1b7a      srri        @$AR3, $AX0.H
1969         0963 02df      ret
1972 void 0964_Unk() {
1973         0964 1b7e      srri        @$AR3, $AC0.M
1974         0965 02df      ret
1977 void 0966_Unk() {
1978         0966 0092 0004 lri         $CR, #0x0004
1979         0968 2201      lrs         $AX0.H, @0x0001
1980         0969 8600      tstaxh      $AX0.H
1981         096a 0294 0997 jnz         0x0997
1982         096c 2204      lrs         $AX0.H, @0x0004
1983         096d 8600      tstaxh      $AX0.H
1984         096e 02b4 09eb callne      0x09eb
1985         0970 2231      lrs         $AX0.H, @0x0031
1986         0971 8600      tstaxh      $AX0.H
1987         0972 0295 098c jz          0x098c
1988         0974 009e 0458 lri         $AC0.M, #0x0458
1989         0976 4400      addr        $ACC0, $AX0.H
1990         0977 1c1e      mrr         $AR0, $AC0.M
1991         0978 0e10      lris        $AC0.M, #0x10
1992         0979 5400      subr        $ACC0, $AX0.H
1993         097a 1f7e      mrr         $AX1.H, $AC0.M
1994         097b 02bf 07c8 call        0x07c8
1995         097d d900      cmpar       $ACC1, $AX1.H
1996         097e 0292 098b jg          0x098b
1997         0980 0295 0987 jz          0x0987
1998         0982 2631      lrs         $AC0.M, @0x0031
1999         0983 4c00      add         $ACC0, $AC1.L
2000         0984 2e31      srs         @0x0031, $AC0.M
2001         0985 029f 09e8 jmp         0x09e8
2002         0987 8100      clr         $ACC0
2003         0988 2e31      srs         @0x0031, $AC0.M
2004         0989 029f 09e8 jmp         0x09e8
2005         098b 5700      subr        $ACC1, $AX1.H
2006         098c 8100      clr         $ACC0
2007         098d 2605      lrs         $AC0.M, @0x0005
2008         098e b100      tst         $ACC0
2009         098f 0295 09a8 jz          0x09a8
2010         0991 8100      clr         $ACC0
2011         0992 2e05      srs         @0x0005, $AC0.M
2012         0993 2281      lrs         $AX0.H, @0xff81
2013         0994 8600      tstaxh      $AX0.H
2014         0995 0294 099e jnz         0x099e
2015         0997 8100      clr         $ACC0
2016         0998 005f      loop        $AC1.M
2017         0999 1b7e      srri        @$AR3, $AC0.M
2018         099a 7400      incm        $AC0.M
2019         099b 2e01      srs         @0x0001, $AC0.M
2020         099c 029f 09e8 jmp         0x09e8
2021         099e 2688      lrs         $AC0.M, @0xff88
2022         099f 2489      lrs         $AC0.L, @0xff89
2023         09a0 2e34      srs         @0x0034, $AC0.M
2024         09a1 2c35      srs         @0x0035, $AC0.L
2025         09a2 02bf 09f0 call        0x09f0
2026         09a4 2682      lrs         $AC0.M, @0xff82
2027         09a5 2483      lrs         $AC0.L, @0xff83
2028         09a6 2e67      srs         @0x0067, $AC0.M
2029         09a7 2c66      srs         @0x0066, $AC0.L
2030         09a8 00ff 0360 sr          @0x0360, $AC1.M
2031         09aa 2638      lrs         $AC0.M, @0x0038
2032         09ab 2439      lrs         $AC0.L, @0x0039
2033         09ac 009f 0005 lri         $AC1.M, #0x0005
2034         09ae 02bf 0103 call        0x0103
2035         09b0 0092 0004 lri         $CR, #0x0004
2036         09b2 8900      clr         $ACC1
2037         09b3 00ff 0362 sr          @0x0362, $AC1.M
2038         09b5 00df 0360 lr          $AC1.M, @0x0360
2039         09b7 02bf 0a09 call        0x0a09
2040         09b9 8100      clr         $ACC0
2041         09ba 00de 0362 lr          $AC0.M, @0x0362
2042         09bc 2280      lrs         $AX0.H, @0xff80
2043         09bd 4400      addr        $ACC0, $AX0.H
2044         09be 00fe 0362 sr          @0x0362, $AC0.M
2045         09c0 8100      clr         $ACC0
2046         09c1 263a      lrs         $AC0.M, @0x003a
2047         09c2 243b      lrs         $AC0.L, @0x003b
2048         09c3 0a01      lris        $AX0.H, #0x01
2049         09c4 0081 0405 lri         $AR1, #0x0405
2050         09c6 7a00      dec         $ACC0
2051         09c7 b100      tst         $ACC0
2052         09c8 0275      ifz         
2053         09c9 1a3a      srr         @$AR1, $AX0.H
2054         09ca 2e3a      srs         @0x003a, $AC0.M
2055         09cb 2c3b      srs         @0x003b, $AC0.L
2056         09cc 0710      cmpis       $ACC1, #0x10
2057         09cd 0293 09d6 jle         0x09d6
2058         09cf 05f0      addis       $ACC1, #0xf0
2059         09d0 2205      lrs         $AX0.H, @0x0005
2060         09d1 8600      tstaxh      $AX0.H
2061         09d2 0294 0991 jnz         0x0991
2062         09d4 029f 09b7 jmp         0x09b7
2063         09d6 0275      ifz         
2064         09d7 8900      clr         $ACC1
2065         09d8 2f31      srs         @0x0031, $AC1.M
2066         09d9 1fc3      mrr         $AC0.M, $AR3
2067         09da 04f0      addis       $ACC0, #0xf0
2068         09db 1c1e      mrr         $AR0, $AC0.M
2069         09dc 0083 0458 lri         $AR3, #0x0458
2070         09de 0e10      lris        $AC0.M, #0x10
2071         09df 02bf 07c8 call        0x07c8
2072         09e1 2638      lrs         $AC0.M, @0x0038
2073         09e2 2439      lrs         $AC0.L, @0x0039
2074         09e3 00d8 0362 lr          $AX0.L, @0x0362
2075         09e5 7000      addaxl      $ACC0, $AX0.L
2076         09e6 2c39      srs         @0x0039, $AC0.L
2077         09e7 2e38      srs         @0x0038, $AC0.M
2078         09e8 0092 00ff lri         $CR, #0x00ff
2079         09ea 02df      ret
2082 void 09eb_Unk() {
2083         09eb 8100      clr         $ACC0
2084         09ec 2e34      srs         @0x0034, $AC0.M
2085         09ed 2e35      srs         @0x0035, $AC0.M
2086         09ee 2e66      srs         @0x0066, $AC0.M
2087         09ef 2e67      srs         @0x0067, $AC0.M
2088         09f0 2334      lrs         $AX1.H, @0x0034
2089         09f1 2135      lrs         $AX1.L, @0x0035
2090         09f2 268a      lrs         $AC0.M, @0xff8a
2091         09f3 248b      lrs         $AC0.L, @0xff8b
2092         09f4 5a00      subax       $ACC0, $AX1.L
2093         09f5 147c      lsr         $ACC0, #-4
2094         09f6 2e3a      srs         @0x003a, $AC0.M
2095         09f7 2c3b      srs         @0x003b, $AC0.L
2096         09f8 2634      lrs         $AC0.M, @0x0034
2097         09f9 2435      lrs         $AC0.L, @0x0035
2098         09fa 147c      lsr         $ACC0, #-4
2099         09fb 2280      lrs         $AX0.H, @0xff80
2100         09fc c010      mulc'mv     $AC0.M, $AX0.H : $AX0.L, $AC0.L
2101         09fd 9600      mulmv       $AX0.L, $AX0.H, $ACC0
2102         09fe f000      lsl16       $ACC0
2103         09ff 4e00      addp        $ACC0
2104         0a00 238c      lrs         $AX1.H, @0xff8c
2105         0a01 218d      lrs         $AX1.L, @0xff8d
2106         0a02 4a00      addax       $ACC0, $AX1.L
2107         0a03 2e38      srs         @0x0038, $AC0.M
2108         0a04 2c39      srs         @0x0039, $AC0.L
2109         0a05 8100      clr         $ACC0
2110         0a06 2e05      srs         @0x0005, $AC0.M
2111         0a07 2e31      srs         @0x0031, $AC0.M
2112         0a08 02df      ret
2116 void 0a09_Unk() {
2117         0a09 00ff 0360 sr          @0x0360, $AC1.M
2118         0a0b 0080 ffd3 lri         $AR0, #0xffd3
2119         0a0d 0084 0000 lri         $IX0, #0x0000
2120         0a0f 199e      lrrn        $AC0.M, @$AR0
2121         0a10 1ffe      mrr         $AC1.M, $AC0.M
2122         0a11 1401      lsl         $ACC0, #1
2123         0a12 0240 001e andi        $AC0.M, #0x001e
2124         0a14 0200 0300 addi        $AC0.M, #0x0300
2125         0a16 1c3e      mrr         $AR1, $AC0.M
2126         0a17 157c      lsr         $ACC1, #-4
2127         0a18 0340 000f andi        $AC1.M, #0x000f
2128         0a1a 0a11      lris        $AX0.H, #0x11
2129         0a1b 5500      subr        $ACC1, $AX0.H
2130         0a1c 009a 00f0 lri         $AX0.H, #0x00f0
2131         0a1e 009b 000f lri         $AX1.H, #0x000f
2132         0a20 0082 0370 lri         $AR2, #0x0370
2133         0a22 1998      lrrn        $AX0.L, @$AR0
2134         0a23 6000      movr        $ACC0, $AX0.L
2135         0a24 1107 0a2b bloopi      #0x07, 0x0a2b
2136                 0a26 3400      andr        $AC0.M, $AX0.H
2137                 0a27 1408      lsl         $ACC0, #8
2138                 0a28 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
2139                 0a29 3644      andr'ln     $AC0.M, $AX1.H : $AX0.L, @$AR0
2140                 0a2a 140c      lsl         $ACC0, #12
2141                 0a2b 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
2142         0a2c 3400      andr        $AC0.M, $AX0.H
2143         0a2d 1408      lsl         $ACC0, #8
2144         0a2e 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
2145         0a2f 3600      andr        $AC0.M, $AX1.H
2146         0a30 140c      lsl         $ACC0, #12
2147         0a31 1b5e      srri        @$AR2, $AC0.M
2148         0a32 8f00      set40       
2149         0a33 1f7f      mrr         $AX1.H, $AC1.M
2150         0a34 2066      lrs         $AX0.L, @0x0066
2151         0a35 2767      lrs         $AC1.M, @0x0067
2152         0a36 193a      lrri        $AX0.H, @$AR1
2153         0a37 1939      lrri        $AX1.L, @$AR1
2154         0a38 0080 0370 lri         $AR0, #0x0370
2155         0a3a 1c80      mrr         $IX0, $AR0
2156         0a3b a000      mulx        $AX0.L, $AX1.L
2157         0a3c ea70      maddc'l     $AC1.M, $AX1.L : $AC0.M, @$AR0
2158         0a3d 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
2159         0a3e a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
2160         0a3f 1485      asl         $ACC0, #5
2161         0a40 e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
2162         0a41 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
2163         0a42 a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
2164         0a43 1585      asl         $ACC1, #5
2165         0a44 ea3b      maddc's     $AC1.M, $AX1.L : @$AR3, $AC1.M
2166         0a45 1106 0a4e bloopi      #0x06, 0x0a4e
2167         0a47 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
2168         0a48 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
2169         0a49 1485      asl         $ACC0, #5
2170         0a4a e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
2171         0a4b 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
2172         0a4c a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
2173         0a4d 1585      asl         $ACC1, #5
2174         0a4e ea3b      maddc's     $AC1.M, $AX1.L : @$AR3, $AC1.M
2175         0a4f 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
2176         0a50 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
2177         0a51 1485      asl         $ACC0, #5
2178         0a52 e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
2179         0a53 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
2180         0a54 a500      mulxac      $AX0.L, $AX1.L, $ACC1
2181         0a55 1585      asl         $ACC1, #5
2182         0a56 1b7f      srri        @$AR3, $AC1.M
2183         0a57 2e66      srs         @0x0066, $AC0.M
2184         0a58 2f67      srs         @0x0067, $AC1.M
2185         0a59 8e00      set16       
2186         0a5a 8900      clr         $ACC1
2187         0a5b 00df 0360 lr          $AC1.M, @0x0360
2188         0a5d 02df      ret
2191 void 0a5e_Unk() {
2192         0a5e 0083 0520 lri         $AR3, #0x0520
2193         0a60 00de 0433 lr          $AC0.M, @0x0433
2194         0a62 1050      loopi       #0x50
2195         0a63 1b7e      srri        @$AR3, $AC0.M
2196         0a64 029f 056d jmp         0x056d
2197         0a66 0092 0004 lri         $CR, #0x0004
2198         0a68 2002      lrs         $AX0.L, @0x0002
2199         0a69 8100      clr         $ACC0
2200         0a6a 8900      clr         $ACC1
2201         0a6b 2430      lrs         $AC0.L, @0x0030
2202         0a6c 8d00      set15       
2203         0a6d 0099 0050 lri         $AX1.L, #0x0050
2204         0a6f a000      mulx        $AX0.L, $AX1.L
2205         0a70 a400      mulxac      $AX0.L, $AX1.L, $ACC0
2206         0a71 1404      lsl         $ACC0, #4
2207         0a72 8c00      clr15       
2208         0a73 1ffe      mrr         $AC1.M, $AC0.M
2209         0a74 0083 0580 lri         $AR3, #0x0580
2210         0a76 2201      lrs         $AX0.H, @0x0001
2211         0a77 8600      tstaxh      $AX0.H
2212         0a78 0294 0a89 jnz         0x0a89
2213         0a7a 2204      lrs         $AX0.H, @0x0004
2214         0a7b 8600      tstaxh      $AX0.H
2215         0a7c 02b4 0ad2 callne      0x0ad2
2216         0a7e 8100      clr         $ACC0
2217         0a7f 2605      lrs         $AC0.M, @0x0005
2218         0a80 b100      tst         $ACC0
2219         0a81 0295 0a96 jz          0x0a96
2220         0a83 8100      clr         $ACC0
2221         0a84 2e05      srs         @0x0005, $AC0.M
2222         0a85 2281      lrs         $AX0.H, @0xff81
2223         0a86 8600      tstaxh      $AX0.H
2224         0a87 0294 0a90 jnz         0x0a90
2225         0a89 8100      clr         $ACC0
2226         0a8a 005f      loop        $AC1.M
2227         0a8b 1b7e      srri        @$AR3, $AC0.M
2228         0a8c 7400      incm        $AC0.M
2229         0a8d 2e01      srs         @0x0001, $AC0.M
2230         0a8e 029f 0ace jmp         0x0ace
2231         0a90 2688      lrs         $AC0.M, @0xff88
2232         0a91 2489      lrs         $AC0.L, @0xff89
2233         0a92 2e34      srs         @0x0034, $AC0.M
2234         0a93 2c35      srs         @0x0035, $AC0.L
2235         0a94 02bf 0ad5 call        0x0ad5
2236         0a96 00ff 0360 sr          @0x0360, $AC1.M
2237         0a98 2638      lrs         $AC0.M, @0x0038
2238         0a99 2439      lrs         $AC0.L, @0x0039
2239         0a9a 009f 0005 lri         $AC1.M, #0x0005
2240         0a9c 02bf 0103 call        0x0103
2241         0a9e 0092 0004 lri         $CR, #0x0004
2242         0aa0 00df 0360 lr          $AC1.M, @0x0360
2243         0aa2 8100      clr         $ACC0
2244         0aa3 263a      lrs         $AC0.M, @0x003a
2245         0aa4 b100      tst         $ACC0
2246         0aa5 0294 0ab5 jnz         0x0ab5
2247         0aa7 263b      lrs         $AC0.M, @0x003b
2248         0aa8 5c00      sub         $ACC0, $AC1.L
2249         0aa9 0290 0ab5 jns         0x0ab5
2250         0aab 223b      lrs         $AX0.H, @0x003b
2251         0aac 02bf 0ae6 call        0x0ae6
2252         0aae 5500      subr        $ACC1, $AX0.H
2253         0aaf 009a 0001 lri         $AX0.H, #0x0001
2254         0ab1 00fa 0405 sr          @0x0405, $AX0.H
2255         0ab3 029f 0a83 jmp         0x0a83
2256         0ab5 1f5f      mrr         $AX0.H, $AC1.M
2257         0ab6 02bf 0ae6 call        0x0ae6
2258         0ab8 00fa 0362 sr          @0x0362, $AX0.H
2259         0aba 8100      clr         $ACC0
2260         0abb 263a      lrs         $AC0.M, @0x003a
2261         0abc 243b      lrs         $AC0.L, @0x003b
2262         0abd 1570      lsr         $ACC1, #-16
2263         0abe 0a01      lris        $AX0.H, #0x01
2264         0abf 0081 0405 lri         $AR1, #0x0405
2265         0ac1 5c00      sub         $ACC0, $AC1.L
2266         0ac2 b100      tst         $ACC0
2267         0ac3 0275      ifz         
2268         0ac4 1a3a      srr         @$AR1, $AX0.H
2269         0ac5 2e3a      srs         @0x003a, $AC0.M
2270         0ac6 2c3b      srs         @0x003b, $AC0.L
2271         0ac7 2638      lrs         $AC0.M, @0x0038
2272         0ac8 2439      lrs         $AC0.L, @0x0039
2273         0ac9 00d8 0362 lr          $AX0.L, @0x0362
2274         0acb 7000      addaxl      $ACC0, $AX0.L
2275         0acc 2c39      srs         @0x0039, $AC0.L
2276         0acd 2e38      srs         @0x0038, $AC0.M
2277         0ace 0092 00ff lri         $CR, #0x00ff
2278         0ad0 029f 0565 jmp         0x0565
2279         0ad2 8100      clr         $ACC0
2280         0ad3 2e34      srs         @0x0034, $AC0.M
2281         0ad4 2e35      srs         @0x0035, $AC0.M
2282         0ad5 2334      lrs         $AX1.H, @0x0034
2283         0ad6 2135      lrs         $AX1.L, @0x0035
2284         0ad7 268a      lrs         $AC0.M, @0xff8a
2285         0ad8 248b      lrs         $AC0.L, @0xff8b
2286         0ad9 5a00      subax       $ACC0, $AX1.L
2287         0ada 2e3a      srs         @0x003a, $AC0.M
2288         0adb 2c3b      srs         @0x003b, $AC0.L
2289         0adc 2634      lrs         $AC0.M, @0x0034
2290         0add 2435      lrs         $AC0.L, @0x0035
2291         0ade 238c      lrs         $AX1.H, @0xff8c
2292         0adf 218d      lrs         $AX1.L, @0xff8d
2293         0ae0 4a00      addax       $ACC0, $AX1.L
2294         0ae1 2e38      srs         @0x0038, $AC0.M
2295         0ae2 2c39      srs         @0x0039, $AC0.L
2296         0ae3 8100      clr         $ACC0
2297         0ae4 2e05      srs         @0x0005, $AC0.M
2298         0ae5 02df      ret
2301 void 0ae6_ConvSigned8bitToSigned16bit() {
2302         0ae6 0080 ffd3 lri         $AR0, #0xffd3
2303         0ae8 0084 0000 lri         $IX0, #0x0000
2304         0aea 007a 0aee bloop       $AX0.H, 0x0aee
2305                 0aec 199e      lrrn        $AC0.M, @$AR0
2306                 0aed 1488      asl         $ACC0, #8
2307                 0aee 1b7e      srri        @$AR3, $AC0.M
2308         0aef 02df      ret
2311 void 0af0_Unk() {
2312         0af0 009e ffff lri         $AC0.M, #0xffff
2313         0af2 00fe 03f2 sr          @0x03f2, $AC0.M
2314         0af4 8100      clr         $ACC0
2315         0af5 00fe 03f0 sr          @0x03f0, $AC0.M
2316         0af7 00fe 03f6 sr          @0x03f6, $AC0.M
2317         0af9 009e 0100 lri         $AC0.M, #0x0100
2318         0afb 00fe 03f7 sr          @0x03f7, $AC0.M
2319         0afd 00da 03f7 lr          $AX0.H, @0x03f7
2320         0aff 009e 8000 lri         $AC0.M, #0x8000
2321         0b01 5400      subr        $ACC0, $AX0.H
2322         0b02 00fe 03f5 sr          @0x03f5, $AC0.M
2323         0b04 009e 0030 lri         $AC0.M, #0x0030
2324         0b06 00fe 03f3 sr          @0x03f3, $AC0.M
2325         0b08 009e 0010 lri         $AC0.M, #0x0010
2326         0b0a 00fe 03f4 sr          @0x03f4, $AC0.M
2327         0b0c 009e 0096 lri         $AC0.M, #0x0096
2328         0b0e 00fe 03f1 sr          @0x03f1, $AC0.M
2329         0b10 02df      ret
2332 void 0b11_Unk() {
2333         0b11 0080 0b00 lri         $AR0, #0x0b00
2334         0b13 8100      clr         $ACC0
2335         0b14 00de 03f0 lr          $AC0.M, @0x03f0
2336         0b16 8900      clr         $ACC1
2337         0b17 b100      tst         $ACC0
2338         0b18 0275      ifz         
2339                 0b19 0550      addis       $ACC1, #0x50
2340         0b1a 00ff 03f0 sr          @0x03f0, $AC1.M
2341         0b1c 0200 0b60 addi        $AC0.M, #0x0b60
2342         0b1e 1c7e      mrr         $AR3, $AC0.M
2343         0b1f 009f 004e lri         $AC1.M, #0x004e
2344         0b21 02bf 03ac call        0x03ac
2345         0b23 02df      ret
2348 void 0b24_Unk() {
2350         0b24 00de 03f1 lr          $AC0.M, @0x03f1
2351         0b26 0200 0b60 addi        $AC0.M, #0x0b60
2352         0b28 1c7e      mrr         $AR3, $AC0.M
2353         0b29 8100      clr         $ACC0
2354         0b2a 8900      clr         $ACC1
2355         0b2b 009f 00a0 lri         $AC1.M, #0x00a0
2356         0b2d 00de 03f1 lr          $AC0.M, @0x03f1
2357         0b2f 5d00      sub         $ACC1, $AC0.L
2358         0b30 009e 0050 lri         $AC0.M, #0x0050
2359         0b32 0750      cmpis       $ACC1, #0x50
2360         0b33 0270      ifns        
2361                 0b34 5d00      sub         $ACC1, $AC0.L
2362         0b35 00da 03f2 lr          $AX0.H, @0x03f2
2363         0b37 8600      tstaxh      $AX0.H
2364         0b38 0290 0b56 jns         0x0b56
2365         0b3a 00de 03f3 lr          $AC0.M, @0x03f3
2366         0b3c 5c00      sub         $ACC0, $AC1.L
2367         0b3d 0293 0b41 jle         0x0b41
2368         0b3f 029f 0b5b jmp         0x0b5b
2369         0b41 00db 03f7 lr          $AX1.H, @0x03f7
2370         0b43 009e 8000 lri         $AC0.M, #0x8000
2371         0b45 4600      addr        $ACC0, $AX1.H
2372         0b46 029f 0b4d jmp         0x0b4d
2373         0b48 00db 03f7 lr          $AX1.H, @0x03f7
2374         0b4a 009e 8000 lri         $AC0.M, #0x8000
2375         0b4c 5600      subr        $ACC0, $AX1.H
2376         0b4d 00fe 03f5 sr          @0x03f5, $AC0.M
2377         0b4f 1fda      mrr         $AC0.M, $AX0.H
2378         0b50 7c00      neg         $ACC0
2379         0b51 1f5e      mrr         $AX0.H, $AC0.M
2380         0b52 00fe 03f2 sr          @0x03f2, $AC0.M
2381         0b54 029f 0b5b jmp         0x0b5b
2382         0b56 00de 03f4 lr          $AC0.M, @0x03f4
2383         0b58 5d00      sub         $ACC1, $AC0.L
2384         0b59 0293 0b48 jle         0x0b48
2385         0b5b 8900      clr         $ACC1
2386         0b5c 00dd 03f5 lr          $AC1.L, @0x03f5
2387         0b5e 1501      lsl         $ACC1, #1
2388         0b5f 8100      clr         $ACC0
2389         0b60 00dc 03f6 lr          $AC0.L, @0x03f6
2390         0b62 008b 009f lri         $WR3, #0x009f
2391         0b64 0080 0b00 lri         $AR0, #0x0b00
2392         0b66 0099 0000 lri         $AX1.L, #0x0000
2393         0b68 1150 0b6f bloopi      #0x50, 0x0b6f
2394         0b6a 1878      lrr         $AX0.L, @$AR3
2395         0b6b 4c00      add         $ACC0, $AC1.L
2396         0b6c 1cfe      mrr         $IX3, $AC0.M
2397         0b6d 001f      addarn      $AR3, $IX3
2398         0b6e 1fd9      mrr         $AC0.M, $AX1.L
2399         0b6f 1b18      srri        @$AR0, $AX0.L
2400         0b70 009f 0b60 lri         $AC1.M, #0x0b60
2401         0b72 1fc3      mrr         $AC0.M, $AR3
2402         0b73 5c00      sub         $ACC0, $AC1.L
2403         0b74 00fe 03f1 sr          @0x03f1, $AC0.M
2404         0b76 00fc 03f6 sr          @0x03f6, $AC0.L
2405         0b78 008b ffff lri         $WR3, #0xffff
2406         0b7a 02df      ret
2409 void 0b7b_Unk() {
2410         0b7b 009f 0050 lri         $AC1.M, #0x0050
2411         0b7d 0080 0b00 lri         $AR0, #0x0b00
2412         0b7f 0083 0d60 lri         $AR3, #0x0d60
2413         0b81 0098 3fff lri         $AX0.L, #0x3fff
2414         0b83 02bf 03bd call        0x03bd
2415         0b85 009f 0050 lri         $AC1.M, #0x0050
2416         0b87 0080 0b00 lri         $AR0, #0x0b00
2417         0b89 0083 0d00 lri         $AR3, #0x0d00
2418         0b8b 0098 3fff lri         $AX0.L, #0x3fff
2419         0b8d 02bf 03bd call        0x03bd
2420         0b8f 02df      ret
2423 void 0b90_Unk() {
2424         0b90 8a00      m2          
2425         0b91 8f00      set40       
2426         0b92 8100      clr         $ACC0
2427         0b93 00de 0404 lr          $AC0.M, @0x0404
2428         0b95 b100      tst         $ACC0
2429         0b96 0295 0b9d jz          0x0b9d
2430         0b98 8100      clr         $ACC0
2431         0b99 00fe 0478 sr          @0x0478, $AC0.M
2432         0b9b 00fe 0479 sr          @0x0479, $AC0.M
2433         0b9d 00df 0479 lr          $AC1.M, @0x0479
2434         0b9f 00db 0478 lr          $AX1.H, @0x0478
2435         0ba1 0099 0000 lri         $AX1.L, #0x0000
2436         0ba3 0084 0000 lri         $IX0, #0x0000
2437         0ba5 1150 0bae bloopi      #0x50, 0x0bae
2438                 0ba7 199e      lrrn        $AC0.M, @$AR0
2439                 0ba8 5c7c      sub'ln      $ACC0, $AC1.L : $AC1.M, @$AR0
2440                 0ba9 c000      mulc        $AC0.M, $AX0.H
2441                 0baa 6e00      movp        $ACC0
2442                 0bab 1488      asl         $ACC0, #8
2443                 0bac 4a00      addax       $ACC0, $AX1.L
2444                 0bad 1b1e      srri        @$AR0, $AC0.M
2445                 0bae 1f7e      mrr         $AX1.H, $AC0.M
2446         0baf 00fb 0478 sr          @0x0478, $AX1.H
2447         0bb1 00ff 0479 sr          @0x0479, $AC1.M
2448         0bb3 8b00      m0          
2449         0bb4 8e00      set16       
2450         0bb5 02df      ret
2453 void 0bb6_Unk() {
2454         0bb6 0080 01be lri         $AR0, #0x01be
2455         0bb8 1918      lrri        $AX0.L, @$AR0
2456         0bb9 191a      lrri        $AX0.H, @$AR0
2457         0bba 0080 0180 lri         $AR0, #0x0180
2458         0bbc 0083 0180 lri         $AR3, #0x0180
2459         0bbe 9070      mul'l       $AX0.L, $AX0.H : $AC0.M, @$AR0
2460         0bbf 1ffe      mrr         $AC1.M, $AC0.M
2461         0bc0 1120 0bc7 bloopi      #0x20, 0x0bc7
2462                 0bc2 7c00      neg         $ACC0
2463                 0bc3 d450      mulcac'l    $AC1.M, $AX0.H, $ACC0 : $AX0.H, @$AR0
2464                 0bc4 6533      movr's      $ACC1, $AX0.H : @$AR3, $AC0.M
2465                 0bc5 c550      mulcac'l    $AC0.M, $AX0.H, $ACC1 : $AX0.H, @$AR0
2466                 0bc6 1501      lsl         $ACC1, #1
2467                 0bc7 643b      movr's      $ACC0, $AX0.H : @$AR3, $AC1.M
2468         0bc8 0080 01fe lri         $AR0, #0x01fe
2469         0bca 191a      lrri        $AX0.H, @$AR0
2470         0bcb 1918      lrri        $AX0.L, @$AR0
2471         0bcc 0080 01c0 lri         $AR0, #0x01c0
2472         0bce 0083 01c0 lri         $AR3, #0x01c0
2473         0bd0 1ff8      mrr         $AC1.M, $AX0.L
2474         0bd1 9070      mul'l       $AX0.L, $AX0.H : $AC0.M, @$AR0
2475         0bd2 f800      addpaxz     $ACC0, $AX0.H
2476         0bd3 0240 01ff andi        $AC0.M, #0x01ff
2477         0bd5 0260 2000 ori         $AC0.M, #0x2000
2478         0bd7 02bf 0bda call        0x0bda
2479         0bd9 02df      ret
2482 void 0bda_Unk() {
2483         0bda b900      tst         $ACC1
2484         0bdb 0272      ifg         
2485                 0bdc 7c00      neg         $ACC0
2486         0bdd 1f7e      mrr         $AX1.H, $AC0.M
2487         0bde 4700      addr        $ACC1, $AX1.H
2488         0bdf 1110 0be4 bloopi      #0x10, 0x0be4
2489         0be1 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
2490         0be2 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
2491         0be3 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
2492         0be4 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
2493         0be5 02df      ret
2496 void 0be6_Nop() {
2497         0be6 0000      nop         
2498         0be7 0000      nop         
2499         0be8 0000      nop         
2500         0be9 0000      nop         
2501         0bea 0000      nop         
2502         0beb 0000      nop         
2503         0bec 0000      nop         
2504         0bed 0000      nop         
2505         0bee 0000      nop         
2506         0bef 0000      nop