// This ucode is interesting because it is very similar to the Zelda ucode,
// but does not make use of exceptions. Hence, it might be possible to get
// it running okay even without understanding how the exceptions work.

// CRC: 379F1139
// ector-CRC: 42f64ac4

// Notable differences:
//
// Luigi init (not using mail exception):
//  sbset       #0x02
//  sbset       #0x03
//  sbclr       #0x04
//  sbset       #0x05
//  sbset       #0x06
//  set16       
//  clr15       
//  m0          

// Zelda init (using mail exception):
//  sbclr       #0x02  !
//  sbclr       #0x03  !
//  sbclr       #0x04
//  sbset       #0x05  (late, just when it's time to receive messages)
//  sbset       #0x06
//  set16       
//  clr15       
//  m0          

// AX1 init (not using mail exception, same as Luigi init):
//  sbset       #0x02
//  sbset       #0x03
//  sbclr       #0x04
//  sbset       #0x05
//  sbset       #0x06
//  set16       
//  clr15       
//  m0          



// exception vectors
0000 029f 0010 jmp         0x0010
0002 0000      nop         
0003 0000      nop         
0004 02ff      rti         
0005 0000      nop         
0006 02ff      rti         
0007 0000      nop         
0008 02ff      rti         
0009 0000      nop         
000a 02ff      rti         
000b 0000      nop         
000c 02ff      rti         
000d 0000      nop         
000e 02ff      rti          // This is Zelda's message exception.
000f 0000      nop  

// Reset vector
void 0010_ResetVector() {       
	// Compare to 0057 in the Zelda ucode
	0010 1302      sbset       #0x02
	0011 1303      sbset       #0x03
	0012 1204      sbclr       #0x04
	0013 1305      sbset       #0x05
	0014 1306      sbset       #0x06
	0015 8e00      set16       
	0016 8c00      clr15       
	0017 8b00      m0          
	0018 009e ffff lri         $AC0.M, #0xffff
	001a 1d1e      mrr         $WR0, $AC0.M
	001b 1d3e      mrr         $WR1, $AC0.M
	001c 1d5e      mrr         $WR2, $AC0.M
	001d 1d7e      mrr         $WR3, $AC0.M
	001e 0092 00ff lri         $CR, #0x00ff
	0020 8100      clr         $ACC0
	// Clear memory
	0021 009f 1000 lri         $AC1.M, #0x1000
	0023 0080 0000 lri         $AR0, #0x0000
	0025 005f      loop        $AC1.M
		0026 1b1e      srri        @$AR0, $AC0.M
	0027 26ff      lrs         $AC0.M, @CMBL
	0028 16fc 8888 si          @DMBH, #0x8888
	002a 16fd 1111 si          @DMBL, #0x1111
	002c 26fc      lrs         $AC0.M, @DMBH
	002d 02a0 8000 andf        $AC0.M, #0x8000
	002f 029c 002c jlnz        0x002c

	while (true) {
		0031 8100      clr         $ACC0
		0032 8900      clr         $ACC1
		0033 26fe      lrs         $AC0.M, @CMBH
		0034 02c0 8000 andcf       $AC0.M, #0x8000
		0036 029c 0031 jlnz        0x0031
		0038 27ff      lrs         $AC1.M, @CMBL
		0039 00ff 0345 sr          @0x0345, $AC1.M
		003b 1ffe      mrr         $AC1.M, $AC0.M
		003c 0340 00ff andi        $AC1.M, #0x00ff
		003e 00ff 0344 sr          @0x0344, $AC1.M
		0040 1479      lsr         $ACC0, #-7
		
		// Jump table below
		0041 0240 007e andi        $AC0.M, #0x007e
		0043 0200 0062 addi        $AC0.M, #0x0062
		0045 00fe 0343 sr          @0x0343, $AC0.M
		0047 1c1e      mrr         $AR0, $AC0.M
		0048 170f      jmpr        $AR0 
		0049 009e 8000 lri         $AC0.M, #0x8000
		004b 00dc 0343 lr          $AC0.L, @0x0343
		004d 02bf 005a call        0x005a
		004f 029f 0031 jmp         0x0031
	}
}
	
void 0051_Unk_Mail() {
	0051 26fe      lrs         $AC0.M, @CMBH
	0052 02c0 8000 andcf       $AC0.M, #0x8000
	0054 029c 0051 jlnz        0x0051
	0056 24ff      lrs         $AC0.L, @CMBL
	0057 1b1e      srri        @$AR0, $AC0.M
	0058 1b1c      srri        @$AR0, $AC0.L
	0059 02df      ret
}

void 005a_Unk_Mail() {
	005a 2efc      srs         @DMBH, $AC0.M
	005b 2cfd      srs         @DMBL, $AC0.L
	005c 26fc      lrs         $AC0.M, @DMBH
	005d 02a0 8000 andf        $AC0.M, #0x8000
	005f 029c 005c jlnz        0x005c
	0061 02df      ret
}

// Just a jump table.
0062 029f 0049 jmp         0x0049
0064 029f 0349 jmp         0x0349   // Command 01
0066 029f 04eb jmp         0x04eb   // Command 02
0068 029f 0031 jmp         0x0031
006a 029f 00df jmp         0x00df
006c 029f 00f1 jmp         0x00f1
006e 029f 06e7 jmp         0x06e7
0070 029f 069b jmp         0x069b
0072 029f 0703 jmp         0x0703
0074 029f 06cb jmp         0x06cb
0076 029f 0870 jmp         0x0870
0078 029f 0744 jmp         0x0744
007a 029f 0238 jmp         0x0238


void 007c_Unk() {
	007c 193e      lrri        $AC0.M, @$AR1
	007d 193c      lrri        $AC0.L, @$AR1
	007e 2fcd      srs         @DSPA, $AC1.M
	007f 0f00      lris        $AC1.M, #0x00
	0080 2fc9      srs         @DSCR, $AC1.M
	0081 2ece      srs         @DSMAH, $AC0.M
	0082 2ccf      srs         @DSMAL, $AC0.L
	0083 1fe0      mrr         $AC1.M, $AR0
	0084 1501      lsl         $ACC1, #1
	0085 2fcb      srs         @DSBL, $AC1.M
	0086 02bf 008f call        0x008f
	0088 02df      ret
}


void 0089_Unk() {
	0089 193e      lrri        $AC0.M, @$AR1
	008a 193c      lrri        $AC0.L, @$AR1
	008b 2fcd      srs         @DSPA, $AC1.M
	008c 0f01      lris        $AC1.M, #0x01
	008d 029f 0080 jmp         0x0080
	008f 26c9      lrs         $AC0.M, @DSCR
	0090 02a0 0004 andf        $AC0.M, #0x0004
	0092 029c 008f jlnz        0x008f
	0094 02df      ret
}

void 0095_Unk() {
	0095 193e      lrri        $AC0.M, @$AR1
	0096 193c      lrri        $AC0.L, @$AR1
	0097 00ff ffcd sr          @DSPA, $AC1.M
	0099 0f00      lris        $AC1.M, #0x00
	009a 00ff ffc9 sr          @DSCR, $AC1.M
	009c 00fe ffce sr          @DSMAH, $AC0.M
	009e 00fc ffcf sr          @DSMAL, $AC0.L
	00a0 1fe0      mrr         $AC1.M, $AR0
	00a1 1501      lsl         $ACC1, #1
	00a2 00ff ffcb sr          @DSBL, $AC1.M
	00a4 02df      ret
}

void 00a5_Unk() {
	00a5 00de ffc9 lr          $AC0.M, @DSCR
	00a7 02a0 0004 andf        $AC0.M, #0x0004
	00a9 029c 00a5 jlnz        0x00a5
	00ab 02df      ret
}

void 00ac_ReadBlockFromAccelerator() {
	00ac 193e      lrri        $AC0.M, @$AR1
	00ad 193c      lrri        $AC0.L, @$AR1
	00ae 0240 7fff andi        $AC0.M, #0x7fff
	// 00b0 02bf 00ba call        0x00ba
	00ba_SetupAccelerator()
	
	00b2 007a 00b8 bloop       $AX0.H, 0x00b8
		00b4 26d3      lrs         $AC0.M, @UnkZelda
		00b5 1b3e      srri        @$AR1, $AC0.M
		00b6 0000      nop         
		00b7 0000      nop         
		00b8 0000      nop         
	00b9 02df      ret
}

void 00ba_SetupAccelerator() {
	00ba 1c3f      mrr         $AR1, $AC1.M
	00bb 009f 0005 lri         $AC1.M, #0x0005
	00bd 2fd1      srs         @SampleFormat, $AC1.M
	00be 1f5e      mrr         $AX0.H, $AC0.M
	00bf 1f1c      mrr         $AX0.L, $AC0.L
	00c0 2ed4      srs         @ACSAH, $AC0.M
	00c1 2cd5      srs         @ACSAL, $AC0.L
	00c2 8900      clr         $ACC1
	00c3 1fa0      mrr         $AC1.L, $AR0
	00c4 4c00      add         $ACC0, $AC1.L
	00c5 0200 0030 addi        $AC0.M, #0x0030
	00c7 2ed6      srs         @ACEAH, $AC0.M
	00c8 2cd7      srs         @ACEAL, $AC0.L
	00c9 1fda      mrr         $AC0.M, $AX0.H
	00ca 1f98      mrr         $AC0.L, $AX0.L
	00cb 147f      lsr         $ACC0, #-1
	00cc 2ed8      srs         @ACCAH, $AC0.M
	00cd 2cd9      srs         @ACCAL, $AC0.L
	00ce 1f40      mrr         $AX0.H, $AR0
	00cf 02df      ret
}


void 00d0_Unk() {
	00d0 193e      lrri        $AC0.M, @$AR1
	00d1 193c      lrri        $AC0.L, @$AR1
	00d2 0260 8000 ori         $AC0.M, #0x8000
	// 00d4 02bf 00ba call        0x00ba
	00ba_SetupAccelerator()
	00d6 007a 00dd bloop       $AX0.H, 0x00dd
		00d8 193e      lrri        $AC0.M, @$AR1
		00d9 2ed3      srs         @UnkZelda, $AC0.M
		00da 0000      nop         
		00db 0000      nop         
		00dc 0000      nop         
		00dd 0000      nop         
	00de 02df      ret
}

void 00df_Unk() {
	00df 0080 0346 lri         $AR0, #0x0346
	00e1 02bf 0051 call        0x0051
	00e3 02bf 0051 call        0x0051
	00e5 0081 0346 lri         $AR1, #0x0346
	00e7 00df 0349 lr          $AC1.M, @0x0349
	00e9 0340 ffff andi        $AC1.M, #0xffff
	00eb 00c0 0345 lr          $AR0, @0x0345
	00ed 02bf 007c call        0x007c
	00ef 029f 0049 jmp         0x0049
	00f1 0080 0346 lri         $AR0, #0x0346
	00f3 02bf 0051 call        0x0051
	00f5 02bf 0051 call        0x0051
	00f7 0081 0346 lri         $AR1, #0x0346
	00f9 00df 0349 lr          $AC1.M, @0x0349
	00fb 0340 ffff andi        $AC1.M, #0xffff
	00fd 00c0 0345 lr          $AR0, @0x0345
	00ff 02bf 0089 call        0x0089
	0101 029f 0049 jmp         0x0049
}

void 0103_SetupAcceleratorMystery() {
	0103 0092 00ff lri         $CR, #0x00ff
	0105 2fd1      srs         @SampleFormat, $AC1.M
	0106 0340 0003 andi        $AC1.M, #0x0003
	0108 1f7f      mrr         $AX1.H, $AC1.M
	0109 1f5e      mrr         $AX0.H, $AC0.M
	010a 1f1c      mrr         $AX0.L, $AC0.L
	010b 0200 0010 addi        $AC0.M, #0x0010
	010d 2ed4      srs         @ACSAH, $AC0.M
	010e 2cd5      srs         @ACSAL, $AC0.L
	010f 8900      clr         $ACC1
	0110 1fa0      mrr         $AC1.L, $AR0
	0111 4c00      add         $ACC0, $AC1.L
	0112 0200 0030 addi        $AC0.M, #0x0030
	0114 2ed6      srs         @ACEAH, $AC0.M
	0115 2cd7      srs         @ACEAL, $AC0.L
	0116 1fda      mrr         $AC0.M, $AX0.H
	0117 1f98      mrr         $AC0.L, $AX0.L
	0118 1ffb      mrr         $AC1.M, $AX1.H
	0119 7900      decm        $AC1.M
	011a 02ca      lsrn        
	011b 2ed8      srs         @ACCAH, $AC0.M
	011c 2cd9      srs         @ACCAL, $AC0.L
	011d 02df      ret
}

void 011e_Unk() {
	011e 1c23      mrr         $AR1, $AR3
	011f 197e      lrri        $AC0.M, @$AR3
	0120 191b      lrri        $AX1.H, @$AR0
	0121 d858      mulc'l      $AC1.M, $AX1.H : $AX1.H, @$AR0
	0122 1120 0128 bloopi      #0x20, 0x0128
		0124 dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
		0125 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
		0126 dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
		0127 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
		0128 4900      addax       $ACC1, $AX0.L
	0129 1108 012e bloopi      #0x08, 0x012e
		012b dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
		012c 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
		012d dcd3      mulcac'ld   $AC1.M, $AX1.H, $ACC0 : $AX0.L, $AX1.H, @$AR3
		012e 6231      movr's      $ACC0, $AX1.L : @$AR1, $AC0.M
	012f 02df      ret
}


void 0130_Unk() {
	0130 8f00      set40       
	0131 1c03      mrr         $AR0, $AR3
	0132 00db 038e lr          $AX1.H, @0x038e
	0134 009a 0004 lri         $AX0.H, #0x0004
	0136 1978      lrri        $AX0.L, @$AR3
	0137 a843      mulx'l      $AX0.L, $AX1.H : $AX0.L, @$AR3
	0138 ae00      mulxmv      $AX0.L, $AX1.H, $ACC0
	0139 1128 013e bloopi      #0x28, 0x013e
		013b 38c3      orr'ld      $AC0.M, $AX0.H : $AX0.L, $AX1.L, @$AR3
		013c ae30      mulxmv's    $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
		013d 38c3      orr'ld      $AC0.M, $AX0.H : $AX0.L, $AX1.L, @$AR3
		013e ae30      mulxmv's    $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
	013f 8e00      set16       
	0140 02df      ret
}

void 0141_Unk() {
	0141 00f9 0361 sr          @0x0361, $AX1.L
	0143 1fc0      mrr         $AC0.M, $AR0
	0144 0200 fffc addi        $AC0.M, #0xfffc
	0146 1c1e      mrr         $AR0, $AC0.M
	0147 1c5e      mrr         $AR2, $AC0.M
	0148 0083 043c lri         $AR3, #0x043c
	014a 197e      lrri        $AC0.M, @$AR3
	014b 197f      lrri        $AC1.M, @$AR3
	014c 80a2      nx'sl       : $AC0.M, $AX0.H
	014d 64a3      movr'sl     $ACC0, $AX0.H : $AC1.M, $AX0.H
	014e 6530      movr's      $ACC1, $AX0.H : @$AR0, $AC0.M
	014f 1b1f      srri        @$AR0, $AC1.M
	0150 1c02      mrr         $AR0, $AR2
	0151 8100      clr         $ACC0
	0152 00de 0402 lr          $AC0.M, @0x0402
	0154 00fe 0362 sr          @0x0362, $AC0.M
	0156 1474      lsr         $ACC0, #-12
	0157 1f7e      mrr         $AX1.H, $AC0.M
	0158 1f3c      mrr         $AX1.L, $AC0.L
	0159 8900      clr         $ACC1
	015a 00dd 0430 lr          $AC1.L, @0x0430
	015c 1504      lsl         $ACC1, #4
	015d 0604      cmpis       $ACC0, #0x04
	015e 0290 01b6 jns         0x01b6
	0160 1fdd      mrr         $AC0.M, $AC1.L
	0161 0082 0c00 lri         $AR2, #0x0c00
	0163 1050      loopi       #0x50
		0164 4b2a      addax's     $ACC1, $AX1.L : @$AR2, $AC1.L
	0165 1fbe      mrr         $AC1.L, $AC0.M
	0166 00fe 0360 sr          @0x0360, $AC0.M
	0168 8900      clr         $ACC1
	0169 1fbe      mrr         $AC1.L, $AC0.M
	016a 009a fff8 lri         $AX0.H, #0xfff8
	016c 009b 00fc lri         $AX1.H, #0x00fc
	016e 00d8 0361 lr          $AX0.L, @0x0361
	0170 0082 0c00 lri         $AR2, #0x0c00
	0172 0083 0c00 lri         $AR3, #0x0c00
	0174 195e      lrri        $AC0.M, @$AR2
	0175 3480      andr'ls     $AC0.M, $AX0.H : $AX0.L, $AC0.M
	0176 1128 017b bloopi      #0x28, 0x017b
		0178 367a      andr'l      $AC0.M, $AX1.H : $AC1.M, @$AR2
		0179 35b3      andr'sl     $AC1.M, $AX0.H : $AC1.M, $AX1.H
		017a 3772      andr'l      $AC1.M, $AX1.H : $AC0.M, @$AR2
		017b 34bb      andr'slm    $AC0.M, $AX0.H : $AC1.M, $AX1.H
	017c 8a00      m2          
	017d 0082 0c00 lri         $AR2, #0x0c00
	017f 00dd 0430 lr          $AC1.L, @0x0430
	0181 1504      lsl         $ACC1, #4
	0182 1fe0      mrr         $AC1.M, $AR0
	0183 8100      clr         $ACC0
	0184 00de 0362 lr          $AC0.M, @0x0362
	0186 1474      lsr         $ACC0, #-12
	0187 1f7e      mrr         $AX1.H, $AC0.M
	0188 1f3c      mrr         $AX1.L, $AC0.L
	0189 8f00      set40       
	018a 1943      lrri        $AR3, @$AR2
	018b 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
	018c 90c3      mul'ld      $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	018d f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	018e f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	018f f200      madd        $AX0.L, $AX0.H
	0190 fe00      movpz       $ACC0
	0191 1c1f      mrr         $AR0, $AC1.M

	0192 1943      lrri        $AR3, @$AR2
	0193 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
	0194 90c3      mul'ld      $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	0195 114e 019d bloopi      #0x4e, 0x019d
		0197 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		0198 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		0199 f231      madd's      $AX0.L, $AX0.H : @$AR1, $AC0.M

		019a 1c1f      mrr         $AR0, $AC1.M
		019b 1943      lrri        $AR3, @$AR2
		019c 4bc3      addax'ld    $ACC1, $AX1.L : $AX0.L, $AX1.L, @$AR3
		019d 92c3      mulmvz'ld   $AX0.L, $AX0.H, $ACC0 : $AX0.L, $AX1.L, @$AR3
	019e f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	019f f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
	01a0 f231      madd's      $AX0.L, $AX0.H : @$AR1, $AC0.M
	01a1 fe00      movpz       $ACC0
	01a2 1b3e      srri        @$AR1, $AC0.M

	01a3 8b00      m0          
	01a4 8e00      set16       
	01a5 00fe 0433 sr          @0x0433, $AC0.M
	01a7 1c1f      mrr         $AR0, $AC1.M
	01a8 150c      lsl         $ACC1, #12
	01a9 0340 0fff andi        $AC1.M, #0x0fff
	01ab 00ff 0430 sr          @0x0430, $AC1.M
	01ad 0083 043c lri         $AR3, #0x043c
	01af 191e      lrri        $AC0.M, @$AR0
	01b0 191f      lrri        $AC1.M, @$AR0
	01b1 80a0      nx'ls       : $AX0.H, $AC0.M
	01b2 64a1      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC1.M
	01b3 6533      movr's      $ACC1, $AX0.H : @$AR3, $AC0.M
	01b4 1b7f      srri        @$AR3, $AC1.M
	01b5 02df      ret

subroutine:
	01b6 1fe0      mrr         $AC1.M, $AR0
	01b7 1c1f      mrr         $AR0, $AC1.M
	01b8 1128 01bf bloopi      #0x28, 0x01bf
		01ba 4b70      addax'l     $ACC1, $AX1.L : $AC0.M, @$AR0
		01bb 1b3e      srri        @$AR1, $AC0.M
		01bc 1c1f      mrr         $AR0, $AC1.M
		01bd 4b70      addax'l     $ACC1, $AX1.L : $AC0.M, @$AR0
		01be 1b3e      srri        @$AR1, $AC0.M
		01bf 1c1f      mrr         $AR0, $AC1.M
	01c0 029f 01a5 jmp         0x01a5
}

void 01c2_Unk() {	
	01c2 8a00      m2          
	01c3 0083 03e8 lri         $AR3, #0x03e8
	01c5 191e      lrri        $AC0.M, @$AR0
	01c6 191a      lrri        $AX0.H, @$AR0
	01c7 1006      loopi       #0x06
	01c8 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	01c9 1b7e      srri        @$AR3, $AC0.M
	01ca 1b7a      srri        @$AR3, $AX0.H
	01cb 0080 03e8 lri         $AR0, #0x03e8
	01cd 0088 0007 lri         $WR0, #0x0007
	01cf 1150 01dc bloopi      #0x50, 0x01dc
		01d1 1c61      mrr         $AR3, $AR1
		01d2 84c3      clrp'ld     : $AX0.L, $AX1.L, @$AR3
		01d3 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d4 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d5 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d6 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d7 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d8 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01d9 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01da f200      madd        $AX0.L, $AX0.H
		01db fe00      movpz       $ACC0
		01dc 1b3e      srri        @$AR1, $AC0.M
	01dd 0088 ffff lri         $WR0, #0xffff
	01df 8b00      m0          
	01e0 02df      ret
}

void 01e1_Unk() {  // ZWW: 0b4d_IIR_Filter
	01e1 8a00      m2          
	01e2 05fe      addis       $ACC1, #0xfe
	01e3 0083 03e8 lri         $AR3, #0x03e8
	01e5 191e      lrri        $AC0.M, @$AR0
	01e6 191a      lrri        $AX0.H, @$AR0
	01e7 005f      loop        $AC1.M
	01e8 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	01e9 1b7e      srri        @$AR3, $AC0.M
	01ea 1b7a      srri        @$AR3, $AX0.H
	01eb 0080 03e8 lri         $AR0, #0x03e8
	01ed 0501      addis       $ACC1, #0x01
	01ee 1d1f      mrr         $WR0, $AC1.M
	01ef 1150 01f7 bloopi      #0x50, 0x01f7
		01f1 1c61      mrr         $AR3, $AR1
		01f2 84c3      clrp'ld     : $AX0.L, $AX1.L, @$AR3
		01f3 005f      loop        $AC1.M
		01f4 f2c3      madd'ld     $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
		01f5 f200      madd        $AX0.L, $AX0.H
		01f6 fe00      movpz       $ACC0
		01f7 1b3e      srri        @$AR1, $AC0.M
	01f8 0088 ffff lri         $WR0, #0xffff
	01fa 8b00      m0          
	01fb 02df      ret
}

void 01fc_Unk() {  // ZWW: 0b68_4TapFIR
	01fc 0083 03e8 lri         $AR3, #0x03e8
	01fe 191e      lrri        $AC0.M, @$AR0
	01ff 191a      lrri        $AX0.H, @$AR0
	0200 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	0201 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	0202 1b7e      srri        @$AR3, $AC0.M
	0203 1b7a      srri        @$AR3, $AX0.H
	0204 0080 03e8 lri         $AR0, #0x03e8
	0206 0088 0003 lri         $WR0, #0x0003
	0208 0085 0000 lri         $IX1, #0x0000
	020a 0087 0000 lri         $IX3, #0x0000
	020c 1fc2      mrr         $AC0.M, $AR2
	020d 195b      lrri        $AX1.H, @$AR2
	020e 1959      lrri        $AX1.L, @$AR2
	020f 195f      lrri        $AC1.M, @$AR2
	0210 195a      lrri        $AX0.H, @$AR2
	0211 1c5e      mrr         $AR2, $AC0.M
	0212 1fda      mrr         $AC0.M, $AX0.H
	0213 1c61      mrr         $AR3, $AR1
	0214 8a00      m2          
	0215 8f00      set40       
	0216 191a      lrri        $AX0.H, @$AR0
	0217 b850      mulx'l      $AX0.H, $AX1.H : $AX0.H, @$AR0
	0218 e250      maddx'l     $AX0.H, $AX1.L : $AX0.H, @$AR0
	0219 ea50      maddc'l     $AC1.M, $AX1.L : $AX0.H, @$AR0
	021a e8e8      maddc'ldm   $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
	021b b650      mulxmv'l    $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
	021c 1127 0227 bloopi      #0x27, 0x0227
		021e e3a8      maddx'lsm   $AX0.H, $AX1.H : $AX0.H, $AC0.M
		
		021f 197e      lrri        $AC0.M, @$AR3
		0220 e850      maddc'l     $AC0.M, $AX1.L : $AX0.H, @$AR0
		0221 eaf8      maddc'ldm   $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
		0222 bf50      mulxmv'l    $AX0.H, $AX1.H, $ACC1 : $AX0.H, @$AR0
		0223 e2a9      maddx'lsm   $AX0.H, $AX1.L : $AX0.H, $AC1.M
		
		0224 197f      lrri        $AC1.M, @$AR3
		0225 ea50      maddc'l     $AC1.M, $AX1.L : $AX0.H, @$AR0
		0226 e8e8      maddc'ldm   $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
		0227 b650      mulxmv'l    $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
	0228 e3a8      maddx'lsm   $AX0.H, $AX1.H : $AX0.H, $AC0.M
	0229 197e      lrri        $AC0.M, @$AR3
	022a e850      maddc'l     $AC0.M, $AX1.L : $AX0.H, @$AR0
	022b eaf8      maddc'ldm   $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
	022c bf00      mulxmv      $AX0.H, $AX1.H, $ACC1
	022d 1bff      srrn        @$AR3, $AC1.M
	022e 197f      lrri        $AC1.M, @$AR3
	022f 8e00      set16       
	0230 8b00      m0          
	0231 0088 ffff lri         $WR0, #0xffff
	0233 1b5b      srri        @$AR2, $AX1.H
	0234 1b59      srri        @$AR2, $AX1.L
	0235 1b5f      srri        @$AR2, $AC1.M
	0236 1b5e      srri        @$AR2, $AC0.M
	0237 02df      ret
}

void 0238_Unk() {
	0238 0080 0346 lri         $AR0, #0x0346
	023a 02bf 0051 call        0x0051
	023c 02bf 0051 call        0x0051
	023e 0081 0346 lri         $AR1, #0x0346
	0240 009f 0580 lri         $AC1.M, #0x0580
	0242 0080 0080 lri         $AR0, #0x0080
	0244 02bf 007c call        0x007c
	0246 0081 0348 lri         $AR1, #0x0348
	0248 009f 0c00 lri         $AC1.M, #0x0c00
	024a 0080 0080 lri         $AR0, #0x0080
	024c 02bf 007c call        0x007c
	024e 0080 0c00 lri         $AR0, #0x0c00
	0250 0081 0580 lri         $AR1, #0x0580
	0252 02bf 01fc call        0x01fc
	0254 0081 0346 lri         $AR1, #0x0346
	0256 009f 0580 lri         $AC1.M, #0x0580
	0258 0080 0080 lri         $AR0, #0x0080
	025a 02bf 0089 call        0x0089
	025c 0081 0348 lri         $AR1, #0x0348
	025e 009f 0c00 lri         $AC1.M, #0x0c00
	0260 0080 0080 lri         $AR0, #0x0080
	0262 02bf 0089 call        0x0089
	0264 029f 0049 jmp         0x0049
	0266 8100      clr         $ACC0
	0267 1f5e      mrr         $AX0.H, $AC0.M
	0268 00d8 0402 lr          $AX0.L, @0x0402
	026a 00dc 0430 lr          $AC0.L, @0x0430
	026c 0080 0520 lri         $AR0, #0x0520
	026e 00df 0480 lr          $AC1.M, @0x0480
	0270 1501      lsl         $ACC1, #1
	0271 0340 007e andi        $AC1.M, #0x007e
	0273 0300 027b addi        $AC1.M, #0x027b
	0275 1c5f      mrr         $AR2, $AC1.M
	0276 175f      callr       $AR2
	0277 00fc 0430 sr          @0x0430, $AC0.L
	0279 029f 056d jmp         0x056d
	027b 029f 029c jmp         0x029c
	027d 029f 02d7 jmp         0x02d7
	027f 029f 02bf jmp         0x02bf
	0281 029f 02ac jmp         0x02ac
	0283 029f 02e5 jmp         0x02e5
	0285 029f 029b jmp         0x029b
	0287 029f 0303 jmp         0x0303
	0289 029f 0306 jmp         0x0306
	028b 029f 029b jmp         0x029b
	028d 029f 029b jmp         0x029b
	028f 029f 0324 jmp         0x0324
	0291 029f 02dd jmp         0x02dd
	0293 029f 02e1 jmp         0x02e1
	0295 029f 029b jmp         0x029b
	0297 029f 029b jmp         0x029b
	0299 029f 029b jmp         0x029b
	029b 02df      ret
}

void 029c_Unk() {
	029c 1401      lsl         $ACC0, #1
	029d 009b c000 lri         $AX1.H, #0xc000
	029f 0099 4000 lri         $AX1.L, #0x4000
	02a1 1150 02a9 bloopi      #0x50, 0x02a9
		02a3 02c0 0001 andcf       $AC0.M, #0x0001
		02a5 027c      iflnz       
			02a6 1b1b      srri        @$AR0, $AX1.H
		02a7 027d      iflz        
			02a8 1b19      srri        @$AR0, $AX1.L
		02a9 4800      addax       $ACC0, $AX0.L
	02aa 147f      lsr         $ACC0, #-1
	02ab 02df      ret
}

void 02ac_Unk() {
	02ac 1402      lsl         $ACC0, #2
	02ad 8900      clr         $ACC1
	02ae 1fb8      mrr         $AC1.L, $AX0.L
	02af 1501      lsl         $ACC1, #1
	02b0 009b c000 lri         $AX1.H, #0xc000
	02b2 0099 4000 lri         $AX1.L, #0x4000
	02b4 1150 02bc bloopi      #0x50, 0x02bc
		02b6 02c0 0003 andcf       $AC0.M, #0x0003
		02b8 027c      iflnz       
			02b9 1b1b      srri        @$AR0, $AX1.H
		02ba 027d      iflz        
			02bb 1b19      srri        @$AR0, $AX1.L
		02bc 4c00      add         $ACC0, $AC1.L
	02bd 147e      lsr         $ACC0, #-2
	02be 02df      ret
}

void 02bf_Unk() {  // ZWW:08d5
	02bf 1401      lsl         $ACC0, #1
	02c0 0081 0ca0 lri         $AR1, #0x0ca0
	02c2 009b c000 lri         $AX1.H, #0xc000
	02c4 0099 4000 lri         $AX1.L, #0x4000
	02c6 8900      clr         $ACC1
	02c7 0082 0000 lri         $AR2, #0x0000
	02c9 1150 02d4 bloopi      #0x50, 0x02d4
		02cb 02c0 0001 andcf       $AC0.M, #0x0001
		02cd 027c      iflnz       
			02ce 1b1b      srri        @$AR0, $AX1.H
		02cf 027d      iflz        
			02d0 1b19      srri        @$AR0, $AX1.L
		02d1 183d      lrr         $AC1.L, @$AR1
		02d2 4900      addax       $ACC1, $AX0.L
		02d3 1fe2      mrr         $AC1.M, $AR2
		02d4 4c39      add's       $ACC0, $AC1.L : @$AR1, $AC1.M
	02d5 147f      lsr         $ACC0, #-1
	02d6 02df      ret
}

void 02d7_Unk() {  // ZWW:08ed
	02d7 8900      clr         $ACC1
	02d8 1fb8      mrr         $AC1.L, $AX0.L
	02d9 157f      lsr         $ACC1, #-1
	02da 1050      loopi       #0x50
		02db 4c20      add's       $ACC0, $AC1.L : @$AR0, $AC0.L
	02dc 02df      ret
}

void 02dd_Unk() {  // ZWW:08f3
	02dd 0082 0180 lri         $AR2, #0x0180   // Three entrances
	02df 029f 02e7 jmp         0x02e7
	02e1 0082 01c0 lri         $AR2, #0x01c0
	02e3 029f 02e7 jmp         0x02e7
	02e5 0082 0140 lri         $AR2, #0x0140
	02e7 008a 003f lri         $WR2, #0x003f
	02e9 0086 0000 lri         $IX2, #0x0000
	02eb 1406      lsl         $ACC0, #6
	02ec 8900      clr         $ACC1
	02ed 1fb8      mrr         $AC1.L, $AX0.L
	02ee 1505      lsl         $ACC1, #5
	02ef 009b 003f lri         $AX1.H, #0x003f
	02f1 009a 0000 lri         $AX0.H, #0x0000
	02f3 3600      andr        $AC0.M, $AX1.H
	02f4 1cde      mrr         $IX2, $AC0.M
	02f5 001a      addarn      $AR2, $IX2
	02f6 3400      andr        $AC0.M, $AX0.H
	02f7 1150 02fd bloopi      #0x50, 0x02fd
	02f9 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
	02fa 3606      andr'dr     $AC0.M, $AX1.H : $AR2
	02fb 1cde      mrr         $IX2, $AC0.M
	02fc 340e      andr'nr     $AC0.M, $AX0.H : $AR2
	02fd 1b19      srri        @$AR0, $AX1.L
	02fe 1fc2      mrr         $AC0.M, $AR2
	02ff 147a      lsr         $ACC0, #-6
	0300 008a ffff lri         $WR2, #0xffff
	0302 02df      ret
}

void 030_MemsetBlock() {
	0303 1050      loopi       #0x50
		0304 1b18      srri        @$AR0, $AX0.L
	// 0305 02df      ret
}

void 0306_Unk() {
	0306 0082 0100 lri         $AR2, #0x0100
	0308 008a 003f lri         $WR2, #0x003f
	030a 0086 0000 lri         $IX2, #0x0000
	030c 1406      lsl         $ACC0, #6
	030d 8900      clr         $ACC1
	030e 1fb8      mrr         $AC1.L, $AX0.L
	030f 1505      lsl         $ACC1, #5
	0310 009b 003f lri         $AX1.H, #0x003f
	0312 009a 0000 lri         $AX0.H, #0x0000
	0314 3600      andr        $AC0.M, $AX1.H
	0315 1cde      mrr         $IX2, $AC0.M
	0316 001a      addarn      $AR2, $IX2
	0317 3400      andr        $AC0.M, $AX0.H
	0318 1150 031e bloopi      #0x50, 0x031e
	031a 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
	031b 3606      andr'dr     $AC0.M, $AX1.H : $AR2
	031c 1cde      mrr         $IX2, $AC0.M
	031d 340e      andr'nr     $AC0.M, $AX0.H : $AR2
	031e 1b19      srri        @$AR0, $AX1.L
	031f 1fc2      mrr         $AC0.M, $AR2
	0320 147a      lsr         $ACC0, #-6
	0321 008a ffff lri         $WR2, #0xffff
	0323 02df      ret
}

void 0324_Unk() {
	0324 0082 0100 lri         $AR2, #0x0100
	0326 008a 003f lri         $WR2, #0x003f
	0328 0086 0000 lri         $IX2, #0x0000
	032a 0081 0ca0 lri         $AR1, #0x0ca0
	032c 1406      lsl         $ACC0, #6
	032d 8900      clr         $ACC1
	032e 1fb8      mrr         $AC1.L, $AX0.L
	032f 1505      lsl         $ACC1, #5
	0330 009b 003f lri         $AX1.H, #0x003f
	0332 009a 0000 lri         $AX0.H, #0x0000
	0334 3600      andr        $AC0.M, $AX1.H
	0335 1cde      mrr         $IX2, $AC0.M
	0336 001a      addarn      $AR2, $IX2
	0337 3400      andr        $AC0.M, $AX0.H
	0338 1150 0343 bloopi      #0x50, 0x0343
	033a 1939      lrri        $AX1.L, @$AR1
	033b a000      mulx        $AX0.L, $AX1.L
	033c 140a      lsl         $ACC0, #10
	033d 4e00      addp        $ACC0
	033e 1476      lsr         $ACC0, #-10
	033f 4c4a      add'l       $ACC0, $AC1.L : $AX1.L, @$AR2
	0340 3606      andr'dr     $AC0.M, $AX1.H : $AR2
	0341 1cde      mrr         $IX2, $AC0.M
	0342 340e      andr'nr     $AC0.M, $AX0.H : $AR2
	0343 1b19      srri        @$AR0, $AX1.L
	0344 1fc2      mrr         $AC0.M, $AR2
	0345 147a      lsr         $ACC0, #-6
	0346 008a ffff lri         $WR2, #0xffff
	0348 02df      ret
}

// DsetupTable
void 0349_COMMAND_01() {
	0349 0080 0380 lri         $AR0, #0x0380
	034b 02bf 0051 call        0x0051
	034d 02bf 0051 call        0x0051
	034f 02bf 0051 call        0x0051
	0351 02bf 0051 call        0x0051
	
	0353 0081 0382 lri         $AR1, #0x0382
	0355 009f 0000 lri         $AC1.M, #0x0000
	0357 0080 0200 lri         $AR0, #0x0200
	// 0359 02bf 007c call        0x007c
	007c_CopyRAMtoDMEM()
	
	035b 0081 0384 lri         $AR1, #0x0384
	035d 009f 0300 lri         $AC1.M, #0x0300
	035f 0080 0020 lri         $AR0, #0x0020
	0361 02bf 007c call        0x007c
	007c_CopyRAMtoDMEM()
	
	
	0363 02bf 03cc call        0x03cc
	0365 00de 0345 lr          $AC0.M, @0x0345
	0367 00fe 0342 sr          @0x0342, $AC0.M
	0369 02bf 0af0 call        0x0af0
	036b 029f 0049 jmp         0x0049
	036d 00de 0344 lr          $AC0.M, @0x0344
	036f 1404      lsl         $ACC0, #4
	0370 0200 03a8 addi        $AC0.M, #0x03a8
	0372 1c1e      mrr         $AR0, $AC0.M
	0373 02bf 0051 call        0x0051
	0375 02bf 0051 call        0x0051
	0377 02bf 0051 call        0x0051
	0379 00de 0345 lr          $AC0.M, @0x0345
	037b 1b1e      srri        @$AR0, $AC0.M
	037c 00de 0344 lr          $AC0.M, @0x0344
	037e 0200 03a4 addi        $AC0.M, #0x03a4
	0380 1c1e      mrr         $AR0, $AC0.M
	0381 8100      clr         $ACC0
	0382 1b1e      srri        @$AR0, $AC0.M
	0383 02df      ret
}

void 0384_Unk() {
	0384 00de 0344 lr          $AC0.M, @0x0344
	0386 1404      lsl         $ACC0, #4
	0387 0200 03b0 addi        $AC0.M, #0x03b0
	0389 1c1e      mrr         $AR0, $AC0.M
	038a 02bf 0051 call        0x0051
	038c 02bf 0051 call        0x0051
	038e 02bf 0051 call        0x0051
	0390 02bf 0051 call        0x0051
	0392 02df      ret
}

void 0393_Unk() {
	0393 0081 034c lri         $AR1, #0x034c
	0395 009f 0400 lri         $AC1.M, #0x0400
	0397 0080 00c0 lri         $AR0, #0x00c0
	0399 02bf 007c call        0x007c
	039b 02df      ret
}

void 039c_Unk() {
	039c 0081 034c lri         $AR1, #0x034c
	039e 009f 0400 lri         $AC1.M, #0x0400
	03a0 0080 0080 lri         $AR0, #0x0080
	03a2 0081 034c lri         $AR1, #0x034c
	03a4 193e      lrri        $AC0.M, @$AR1
	03a5 193c      lrri        $AC0.L, @$AR1
	03a6 0098 0000 lri         $AX0.L, #0x0000
	03a8 7000      addaxl      $ACC0, $AX0.L
	03a9 02bf 008b call        0x008b
	03ab 02df      ret
}

void 03ac_Unk() {
	03ac 191e      lrri        $AC0.M, @$AR0
	03ad 191a      lrri        $AX0.H, @$AR0
	03ae 005f      loop        $AC1.M
	03af 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	03b0 1b7e      srri        @$AR3, $AC0.M
	03b1 1b7a      srri        @$AR3, $AX0.H
	03b2 02df      ret
}

// Example call:
//a	03d9 0080 0f40 lri         $AR0, #0x0f40
//a	03db 0082 0d00 lri         $AR2, #0x0d00
//a	03dd 0083 0d60 lri         $AR3, #0x0d60
//a	03df 009f 0028 lri         $AC1.M, #0x0028
//a	03e1 02bf 03b3 call        0x03b3
// Not sure how AR2 fits into the picture...
void 03b3_XorBuffer(InputBuffer($AR0), OutputBuffer($AR3), HalfLength($AC1.M)) {
	03b3 191e      lrri        $AC0.M, @$AR0
	03b4 191a      lrri        $AX0.H, @$AR0
	03b5 007f 03ba bloop       $AC1.M, 0x03ba
		03b7 32b2      xorr'sl     $AC0.M, $AX1.H : $AC0.M, $AX1.H
		03b8 65a0      movr'ls     $ACC1, $AX0.H : $AX0.H, $AC0.M
		03b9 33ba      xorr'slm    $AC1.M, $AX1.H : $AC0.M, $AX1.H
		03ba 64a1      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC1.M
	03bb 0000      nop         
	03bc 02df      ret
}

void 03bd_Unk() {
	03bd 8a00      m2          
	03be 157f      lsr         $ACC1, #-1
	03bf 1c20      mrr         $AR1, $AR0
	03c0 1c03      mrr         $AR0, $AR3
	03c1 193a      lrri        $AX0.H, @$AR1
	03c2 9051      mul'l       $AX0.L, $AX0.H : $AX0.H, @$AR1
	03c3 925b      mulmvz'l    $AX0.L, $AX0.H, $ACC0 : $AX1.H, @$AR3
	03c4 007f 03c9 bloop       $AC1.M, 0x03c9
		03c6 4651      addr'l      $ACC0, $AX1.H : $AX0.H, @$AR1
		03c7 92b2      mulmvz'sl   $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
		03c8 4651      addr'l      $ACC0, $AX1.H : $AX0.H, @$AR1
		03c9 92b2      mulmvz'sl   $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
	03ca 8b00      m0          
	03cb 02df      ret
}

void 03cc_Unk() {
	03cc 0083 ffa0 lri         $AR3, #0xffa0
	03ce 0080 0300 lri         $AR0, #0x0300
	03d0 009f 000e lri         $AC1.M, #0x000e
	03d2 1108 03d7 bloopi      #0x08, 0x03d7
		03d4 191e      lrri        $AC0.M, @$AR0
		03d5 1b7e      srri        @$AR3, $AC0.M
		03d6 191e      lrri        $AC0.M, @$AR0
		03d7 1b7e      srri        @$AR3, $AC0.M
	03d8 02df      ret
}

void 03d9_Unk() {

	03d9 0080 0f40 lri         $AR0, #0x0f40
	03db 0082 0d00 lri         $AR2, #0x0d00
	03dd 0083 0d60 lri         $AR3, #0x0d60
	03df 009f 0028 lri         $AC1.M, #0x0028
	// XorBuffer, why??
	03e1 02bf 03b3 call        0x03b3
	
	// Clear a bunch of buffers.
	03e3 8900      clr         $ACC1
	03e4 009e 0050 lri         $AC0.M, #0x0050
	03e6 0080 0ca0 lri         $AR0, #0x0ca0
	03e8 005e      loop        $AC0.M
		03e9 1b1f      srri        @$AR0, $AC1.M
	03ea 0080 0f40 lri         $AR0, #0x0f40
	03ec 005e      loop        $AC0.M
		03ed 1b1f      srri        @$AR0, $AC1.M
	03ee 0080 0fa0 lri         $AR0, #0x0fa0
	03f0 005e      loop        $AC0.M
		03f1 1b1f      srri        @$AR0, $AC1.M
	03f2 0080 0b00 lri         $AR0, #0x0b00
	03f4 005e      loop        $AC0.M
		03f5 1b1f      srri        @$AR0, $AC1.M
	03f6 0080 09a0 lri         $AR0, #0x09a0
	03f8 005e      loop        $AC0.M
		03f9 1b1f      srri        @$AR0, $AC1.M
	
	03fa 02df      ret
}

void 03fb_Unk() {
	03fb 00c0 03a0 lr          $AR0, @0x03a0
	03fd 191a      lrri        $AX0.H, @$AR0
	03fe 00df 03a1 lr          $AC1.M, @0x03a1
	0400 009b 00a0 lri         $AX1.H, #0x00a0
	0402 0081 0393 lri         $AR1, #0x0393
	0404 18bc      lrrd        $AC0.L, @$AR1
	0405 b871      mulx'l      $AX0.H, $AX1.H : $AC0.M, @$AR1
	0406 bc00      mulxac      $AX0.H, $AX1.H, $ACC0
	0407 0080 0050 lri         $AR0, #0x0050
	0409 0508      addis       $ACC1, #0x08
	040a 02bf 007e call        0x007e
	040c 00de 0390 lr          $AC0.M, @0x0390
	040e 02a0 0001 andf        $AC0.M, #0x0001
	0410 029d 041a jlz         0x041a
		0412 0080 0398 lri         $AR0, #0x0398
		0414 009e 0008 lri         $AC0.M, #0x0008
		0416 00c1 03a1 lr          $AR1, @0x03a1
		0418 02bf 01c2 call        0x01c2
	041a 009f 0050 lri         $AC1.M, #0x0050
	041c 00c0 03a1 lr          $AR0, @0x03a1
	041e 8100      clr         $ACC0
	041f 00de 0394 lr          $AC0.M, @0x0394
	0421 b100      tst         $ACC0
	0422 0295 0429 jz          0x0429
		0424 1c7e      mrr         $AR3, $AC0.M
		0425 00d8 0395 lr          $AX0.L, @0x0395
		0427 02bf 03bd call        0x03bd
	0429 009f 0050 lri         $AC1.M, #0x0050
	042b 00c0 03a1 lr          $AR0, @0x03a1
	042d 8100      clr         $ACC0
	042e 00de 0396 lr          $AC0.M, @0x0396
	0430 b100      tst         $ACC0
	0431 0295 0438 jz          0x0438
		0433 1c7e      mrr         $AR3, $AC0.M
		0434 00d8 0397 lr          $AX0.L, @0x0397
		0436 02bf 03bd call        0x03bd
	0438 00de 0390 lr          $AC0.M, @0x0390
	043a 02a0 0002 andf        $AC0.M, #0x0002
	043c 02dd      retlz       
	
	043d 0080 0398 lri         $AR0, #0x0398
	043f 009e 0008 lri         $AC0.M, #0x0008
	0441 00c1 03a1 lr          $AR1, @0x03a1
	0443 02bf 01c2 call        0x01c2
	0445 02df      ret
}

void 0446_Unk() {
	0446 009f 0dc0 lri         $AC1.M, #0x0dc0
	0448 00ff 03a1 sr          @0x03a1, $AC1.M
	044a 009f 03a8 lri         $AC1.M, #0x03a8
	044c 00ff 03a2 sr          @0x03a2, $AC1.M
	044e 009f 03a4 lri         $AC1.M, #0x03a4
	0450 00ff 03a0 sr          @0x03a0, $AC1.M
	0452 1104 047b bloopi      #0x04, 0x047b
		0454 00c0 03a2 lr          $AR0, @0x03a2
		0456 0083 0390 lri         $AR3, #0x0390
		0458 009f 000e lri         $AC1.M, #0x000e
		045a 02bf 03ac call        0x03ac
		045c 00da 0390 lr          $AX0.H, @0x0390
		045e 8600      tstaxh      $AX0.H
		045f 0295 046c jz          0x046c
			0461 00df 03a1 lr          $AC1.M, @0x03a1
			0463 1c7f      mrr         $AR3, $AC1.M
			0464 0550      addis       $ACC1, #0x50
			0465 1c1f      mrr         $AR0, $AC1.M
			0466 009f 0006 lri         $AC1.M, #0x0006
			0468 02bf 03ac call        0x03ac
			046a 02bf 03fb call        0x03fb
		046c 00de 03a2 lr          $AC0.M, @0x03a2
		046e 0410      addis       $ACC0, #0x10
		046f 00fe 03a2 sr          @0x03a2, $AC0.M
		0471 00de 03a1 lr          $AC0.M, @0x03a1
		0473 0460      addis       $ACC0, #0x60
		0474 00fe 03a1 sr          @0x03a1, $AC0.M
		0476 00de 03a0 lr          $AC0.M, @0x03a0
		0478 7400      incm        $AC0.M
		0479 00fe 03a0 sr          @0x03a0, $AC0.M
		047b 0000      nop         
	047c 02df      ret
}

void 047d_Unk() {
	047d 00c0 03a0 lr          $AR0, @0x03a0
	047f 181a      lrr         $AX0.H, @$AR0
	0480 8100      clr         $ACC0
	0481 181e      lrr         $AC0.M, @$AR0
	0482 00db 0391 lr          $AX1.H, @0x0391
	0484 7400      incm        $AC0.M
	0485 d100      cmpar       $ACC1, $AX0.H
	0486 0270      ifns        
		0487 8100      clr         $ACC0
	0488 1b1e      srri        @$AR0, $AC0.M
	0489 00df 03a1 lr          $AC1.M, @0x03a1
	048b 009b 00a0 lri         $AX1.H, #0x00a0
	048d 0081 0393 lri         $AR1, #0x0393
	048f 18bc      lrrd        $AC0.L, @$AR1
	0490 b871      mulx'l      $AX0.H, $AX1.H : $AC0.M, @$AR1
	0491 bc00      mulxac      $AX0.H, $AX1.H, $ACC0
	0492 0080 0050 lri         $AR0, #0x0050
	0494 02bf 008b call        0x008b
	0496 02df      ret
}

void 0497_Unk() {
	0497 009f 0dc0 lri         $AC1.M, #0x0dc0
	0499 00ff 03a1 sr          @0x03a1, $AC1.M
	049b 009f 03a8 lri         $AC1.M, #0x03a8
	049d 00ff 03a2 sr          @0x03a2, $AC1.M
	049f 009f 03a4 lri         $AC1.M, #0x03a4
	04a1 00ff 03a0 sr          @0x03a0, $AC1.M
	04a3 1104 04c3 bloopi      #0x04, 0x04c3
		04a5 00c0 03a2 lr          $AR0, @0x03a2
		04a7 0083 0390 lri         $AR3, #0x0390
		04a9 009f 000e lri         $AC1.M, #0x000e
		04ab 02bf 03ac call        0x03ac
		04ad 00da 0390 lr          $AX0.H, @0x0390
		04af 8600      tstaxh      $AX0.H
		04b0 0295 04b4 jz          0x04b4
			04b2 02bf 047d call        0x047d
		04b4 00de 03a2 lr          $AC0.M, @0x03a2
		04b6 0410      addis       $ACC0, #0x10
		04b7 00fe 03a2 sr          @0x03a2, $AC0.M
		04b9 00de 03a1 lr          $AC0.M, @0x03a1
		04bb 0460      addis       $ACC0, #0x60
		04bc 00fe 03a1 sr          @0x03a1, $AC0.M
		04be 00de 03a0 lr          $AC0.M, @0x03a0
		04c0 7400      incm        $AC0.M
		04c1 00fe 03a0 sr          @0x03a0, $AC0.M
		04c3 0000      nop         
	04c4 02df      ret
}

void 04c5_Unk() {
	04c5 0081 0386 lri         $AR1, #0x0386
	04c7 009f 03a8 lri         $AC1.M, #0x03a8
	04c9 0080 0040 lri         $AR0, #0x0040
	04cb 02bf 007c call        0x007c
	04cd 02df      ret
}

void 04ce_Increment32BitAddressAtAR0() {
	04ce 191e      lrri        $AC0.M, @$AR0
	04cf 189c      lrrd        $AC0.L, @$AR0
	04d0 4800      addax       $ACC0, $AX0.L
	04d1 1b1e      srri        @$AR0, $AC0.M
	04d2 1b1c      srri        @$AR0, $AC0.L
	04d3 02df      ret
}

void 04d4_Unk() {
	04d4 8100      clr         $ACC0
	04d5 26fe      lrs         $AC0.M, @CMBH
	04d6 02c0 8000 andcf       $AC0.M, #0x8000
	04d8 029c 04d5 jlnz        0x04d5
	04da 26ff      lrs         $AC0.M, @CMBL
	04db 02df      ret
}

void 04dc_Unk() {
	04dc 0080 0388 lri         $AR0, #0x0388
	04de 0081 0051 lri         $AR1, #0x0051
	04e0 173f      callr       $AR1
	04e1 00de 0344 lr          $AC0.M, @0x0344
	04e3 00fe 0341 sr          @0x0341, $AC0.M
	04e5 00de 0345 lr          $AC0.M, @0x0345
	04e7 00fe 038e sr          @0x038e, $AC0.M
	04e9 173f      callr       $AR1
	04ea 02df      ret
}

/////////////////////////
//
//
// 0x0341: Number of Frames to render ...

// 0x034c + 0x034d: RAM address of the current PB block

// 0x034e: Last Sync message for rendered frame
// 0x0354: PB loop counter

// 0x0355: Current Frame 

// 0x0380: ???
// 0x0381: ???

// 0x0388: RAM Address of Output Buffer1
// 0x038a: RAM Address of Output Buffer2
// 
// 0x038f: Output Buffer Address (0x0520 most of the time)
//
// 0x03f8: *0x0433
// 0x0520: Some kind of sample buffer

// 0x0d00: Left mix buffer
// 0x0d60: Right mix buffer
 
void 04eb_COMMAND_02()  // sync frame
	04eb 02bf 04dc call        0x04dc
	04ed 009e 8000 lri         $AC0.M, #0x8000
	04ef 00dc 0341 lr          $AC0.L, @0x0341
	04f1 02bf 005a call        0x005a
	04f3 8100      clr         $ACC0
	04f4 00fe 0355 sr          @0x0355, $AC0.M
	04f6 02bf 04c5 call        0x04c5
	04f8 00de 0341 lr          $AC0.M, @0x0341
	04fa 007e 0698 bloop       $AC0.M, 0x0698
		04fc 02bf 03d9 call        0x03d9
		
		04fe 02bf 0446 call        0x0446
		0500 02bf 0bb6 call        0x0bb6
		0502 02bf 04d4 call        0x04d4
		0504 8100      clr         $ACC0
		0505 00fe 0354 sr          @0x0354, $AC0.M
		0507 00de 0342 lr          $AC0.M, @0x0342
		0509 007e 064c bloop       $AC0.M, 0x064c
			050b 00d8 0354 lr          $AX0.L, @0x0354
			050d 009a 0180 lri         $AX0.H, #0x0180
			050f 8100      clr         $ACC0
			0510 00de 0380 lr          $AC0.M, @0x0380
			0512 00dc 0381 lr          $AC0.L, @0x0381
			0514 9000      mul         $AX0.L, $AX0.H
			0515 9400      mulac       $AX0.L, $AX0.H, $ACC0
			0516 00fe 034c sr          @0x034c, $AC0.M
			0518 00fc 034d sr          @0x034d, $AC0.L
			051a 02bf 0393 call        0x0393
			051c 00da 0400 lr          $AX0.H, @0x0400
			051e 8600      tstaxh      $AX0.H
			051f 0295 0647 jz          0x0647
			0521 00da 0401 lr          $AX0.H, @0x0401
			0523 8600      tstaxh      $AX0.H
			0524 0294 0647 jnz         0x0647
				0526 00da 0433 lr          $AX0.H, @0x0433
				0528 00fa 03f8 sr          @0x03f8, $AX0.H
				052a 00da 0406 lr          $AX0.H, @0x0406
				052c 8600      tstaxh      $AX0.H
				052d 0294 0a5e jnz         0x0a5e
				052f 8100      clr         $ACC0
				0530 00de 0480 lr          $AC0.M, @0x0480
				0532 0609      cmpis       $ACC0, #0x09
				0533 0295 0540 jz          0x0540
				0535 0620      cmpis       $ACC0, #0x20
				0536 0295 08cd jz          0x08cd
				0538 0621      cmpis       $ACC0, #0x21
				0539 0295 08d6 jz          0x08d6
				053b 0608      cmpis       $ACC0, #0x08
				053c 0295 0a66 jz          0x0a66
				053e 029f 0266 jmp         0x0266
				0540 00d8 0402 lr          $AX0.L, @0x0402
				0542 8100      clr         $ACC0
				0543 8900      clr         $ACC1
				0544 00dc 0430 lr          $AC0.L, @0x0430
				0546 8d00      set15       
				0547 0099 0050 lri         $AX1.L, #0x0050
				0549 a000      mulx        $AX0.L, $AX1.L
				054a a400      mulxac      $AX0.L, $AX1.L, $ACC0
				054b 1404      lsl         $ACC0, #4
				054c 8c00      clr15       
				054d 1ffe      mrr         $AC1.M, $AC0.M
				054e 0083 0580 lri         $AR3, #0x0580
				0550 00da 0481 lr          $AX0.H, @0x0481
				0552 8600      tstaxh      $AX0.H
				0553 0295 0563 jz          0x0563
					0555 00da 0489 lr          $AX0.H, @0x0489
					0557 8100      clr         $ACC0
					0558 00de 048b lr          $AC0.M, @0x048b
					055a 3800      orr         $AC0.M, $AX0.H
					055b 0240 000f andi        $AC0.M, #0x000f
					055d 0295 0563 jz          0x0563
					055f 02bf 07d5 call        0x07d5
					0561 029f 0565 jmp         0x0565
				0563 02bf 0966 call        0x0966
				0565 0080 0580 lri         $AR0, #0x0580
				0567 0081 0520 lri         $AR1, #0x0520
				0569 0099 0000 lri         $AX1.L, #0x0000
				056b 02bf 0141 call        0x0141
				056d 00da 04a8 lr          $AX0.H, @0x04a8
				056f 8600      tstaxh      $AX0.H
				0570 0295 0576 jz          0x0576
					0572 0080 0520 lri         $AR0, #0x0520
					0574 02bf 0b90 call        0x0b90
				0576 009e 0520 lri         $AC0.M, #0x0520
				0578 00fe 038f sr          @0x038f, $AC0.M
				057a 8900      clr         $ACC1
				057b 00df 0484 lr          $AC1.M, @0x0484
				057d 0340 001f andi        $AC1.M, #0x001f
				057f b900      tst         $ACC1
				0580 0295 05a6 jz          0x05a6
					0582 00de 038f lr          $AC0.M, @0x038f
					0584 5c00      sub         $ACC0, $AC1.L
					0585 00fe 038f sr          @0x038f, $AC0.M
					0587 1c7e      mrr         $AR3, $AC0.M
					0588 0080 0440 lri         $AR0, #0x0440
					058a 05fe      addis       $ACC1, #0xfe
					058b 02bf 03ac call        0x03ac
					058d 0080 0490 lri         $AR0, #0x0490
					058f 00c1 038f lr          $AR1, @0x038f
					0591 8900      clr         $ACC1
					0592 00df 0484 lr          $AC1.M, @0x0484
					0594 0340 001f andi        $AC1.M, #0x001f
					0596 02bf 01e1 call        0x01e1
					0598 00de 038f lr          $AC0.M, @0x038f
					059a 0450      addis       $ACC0, #0x50
					059b 1c1e      mrr         $AR0, $AC0.M
					059c 0083 0440 lri         $AR3, #0x0440
					059e 8900      clr         $ACC1
					059f 00df 0484 lr          $AC1.M, @0x0484
					05a1 0340 001f andi        $AC1.M, #0x001f
					05a3 05fe      addis       $ACC1, #0xfe
					05a4 02bf 03ac call        0x03ac
				05a6 00de 0484 lr          $AC0.M, @0x0484
				05a8 0240 0020 andi        $AC0.M, #0x0020
				05aa 0295 05c8 jz          0x05c8
					05ac 0080 04a4 lri         $AR0, #0x04a4
					05ae 00c1 038f lr          $AR1, @0x038f
					05b0 0082 0454 lri         $AR2, #0x0454
					05b2 0083 04a7 lri         $AR3, #0x04a7
					05b4 18fa      lrrd        $AX0.H, @$AR3
					05b5 8600      tstaxh      $AX0.H
					05b6 0294 05c6 jnz         0x05c6
						05b8 18fa      lrrd        $AX0.H, @$AR3
						05b9 8600      tstaxh      $AX0.H
						05ba 0294 05c6 jnz         0x05c6
							05bc 18fa      lrrd        $AX0.H, @$AR3
							05bd 8600      tstaxh      $AX0.H
							05be 0294 05c6 jnz         0x05c6
								05c0 8100      clr         $ACC0
								05c1 18fe      lrrd        $AC0.M, @$AR3
								05c2 0280 7fff cmpi        $AC0.M, #0x7fff
								05c4 0295 05c8 jz          0x05c8
					05c6 02bf 01fc call        0x01fc
				05c8 8100      clr         $ACC0
				05c9 1c9e      mrr         $IX0, $AC0.M
				05ca 1cde      mrr         $IX2, $AC0.M
				05cb 7400      incm        $AC0.M
				05cc 1cfe      mrr         $IX3, $AC0.M
				05cd 8100      clr         $ACC0
				05ce 00de 0407 lr          $AC0.M, @0x0407
				05d0 b100      tst         $ACC0
				05d1 0295 05e0 jz          0x05e0
					05d3 00c3 038f lr          $AR3, @0x038f
					05d5 0007      dar         $AR3
					05d6 0080 0477 lri         $AR0, #0x0477
					05d8 0084 ffff lri         $IX0, #0xffff
					05da 0087 ffff lri         $IX3, #0xffff
					05dc 199a      lrrn        $AX0.H, @$AR0
					05dd 6554      movr'ln     $ACC1, $AX0.H : $AX0.H, @$AR0
					05de 005e      loop        $AC0.M
						05df 65ad      movr'lsnm   $ACC1, $AX0.H : $AX0.H, $AC1.M
				05e0 00da 0485 lr          $AX0.H, @0x0485
				05e2 8600      tstaxh      $AX0.H
				05e3 0295 05f6 jz          0x05f6
				05e5 8900      clr         $ACC1
				05e6 0086 0005 lri         $IX2, #0x0005
				05e8 0082 040a lri         $AR2, #0x040a
				05ea 1106 05ee bloopi      #0x06, 0x05ee
					05ec 18de      lrrd        $AC0.M, @$AR2
					05ed 147f      lsr         $ACC0, #-1
					05ee 4d36      add'sn      $ACC1, $AC0.L : @$AR2, $AC0.M
				05ef b900      tst         $ACC1
				05f0 0294 05f6 jnz         0x05f6
					05f2 009a 0001 lri         $AX0.H, #0x0001
					05f4 00fa 0401 sr          @0x0401, $AX0.H
				05f6 8f00      set40       
				05f7 0086 0002 lri         $IX2, #0x0002
				05f9 0082 0408 lri         $AR2, #0x0408
				05fb 1106 0626 bloopi      #0x06, 0x0626
					05fd 8100      clr         $ACC0
					05fe 195e      lrri        $AC0.M, @$AR2
					05ff 1200      sbclr       #0x00
					0600 b100      tst         $ACC0
					0601 0275      ifz         
						0602 1300      sbset       #0x00
					0603 1c7e      mrr         $AR3, $AC0.M
					0604 195e      lrri        $AC0.M, @$AR2
					0605 195f      lrri        $AC1.M, @$AR2
					0606 5c00      sub         $ACC0, $AC1.L
					0607 14fb      asr         $ACC0, #-5
					0608 1f5e      mrr         $AX0.H, $AC0.M
					0609 1f1c      mrr         $AX0.L, $AC0.L
					060a 185e      lrr         $AC0.M, @$AR2
					060b 0240 00ff andi        $AC0.M, #0x00ff
					060d 1f7e      mrr         $AX1.H, $AC0.M
					060e 185e      lrr         $AC0.M, @$AR2
					060f 1478      lsr         $ACC0, #-8
					0610 009c 0000 lri         $AC0.L, #0x0000
					0612 d100      cmpar       $ACC1, $AX0.H
					0613 0295 061b jz          0x061b
						0615 185e      lrr         $AC0.M, @$AR2
						0616 0272      ifg         
							0617 7400      incm        $AC0.M
						0618 0271      ifs         
							0619 7800      decm        $AC0.M
						061a 1a5e      srr         @$AR2, $AC0.M
					061b 0006      dar         $AR2
					061c 00de 038f lr          $AC0.M, @0x038f
					061e 5600      subr        $ACC0, $AX1.H
					061f 029d 0624 jlz         0x0624
						0621 1c1e      mrr         $AR0, $AC0.M
						0622 02bf 011e call        0x011e
					0624 0000      nop         
					0625 1b5f      srri        @$AR2, $AC1.M
					0626 000a      iar         $AR2
				0627 8e00      set16       
				0628 8100      clr         $ACC0
				0629 00de 0407 lr          $AC0.M, @0x0407
				062b b100      tst         $ACC0
				062c 0295 063d jz          0x063d
					062e 00c3 038f lr          $AR3, @0x038f
					0630 0087 004f lri         $IX3, #0x004f
					0632 001f      addarn      $AR3, $IX3
					0633 0080 0477 lri         $AR0, #0x0477
					0635 0084 ffff lri         $IX0, #0xffff
					0637 0087 ffff lri         $IX3, #0xffff
					0639 19fa      lrrn        $AX0.H, @$AR3
					063a 6557      movr'ln     $ACC1, $AX0.H : $AX0.H, @$AR3
					063b 005e      loop        $AC0.M
						063c 65af      movr'slnm   $ACC1, $AX0.H : $AC1.M, $AX0.H
					063d 00da 0406 lr          $AX0.H, @0x0406
				063f 8600      tstaxh      $AX0.H
				0640 0294 0645 jnz         0x0645
					0642 8100      clr         $ACC0
					0643 00fe 0404 sr          @0x0404, $AC0.M
				0645 02bf 039c call        0x039c
				
			
			0647 00de 0354 lr          $AC0.M, @0x0354
			0649 7400      incm        $AC0.M
			064a 00fe 0354 sr          @0x0354, $AC0.M
			064c 0000      nop         
		064d 16fb 0001 si          @DIRQ, #0x0001
		064f 02bf 0b11 call        0x0b11
		0651 02bf 0b24 call        0x0b24
		0653 02bf 0b7b call        0x0b7b
		0655 0080 09a0 lri         $AR0, #0x09a0
		0657 0083 0d00 lri         $AR3, #0x0d00
		0659 009f 0050 lri         $AC1.M, #0x0050
		065b 0098 5a82 lri         $AX0.L, #0x5a82
		065d 02bf 03bd call        0x03bd
		065f 0080 09a0 lri         $AR0, #0x09a0
		0661 0083 0d60 lri         $AR3, #0x0d60
		0663 009f 0050 lri         $AC1.M, #0x0050
		0665 02bf 03bd call        0x03bd
		0667 0083 0d00 lri         $AR3, #0x0d00
		0669 02bf 0130 call        0x0130
		066b 0081 0388 lri         $AR1, #0x0388
		066d 009f 0d00 lri         $AC1.M, #0x0d00
		066f 0080 0050 lri         $AR0, #0x0050
		0671 02bf 0089 call        0x0089
		0673 0080 0fa0 lri         $AR0, #0x0fa0
		0675 0083 0d60 lri         $AR3, #0x0d60
		0677 009f 0050 lri         $AC1.M, #0x0050
		0679 0098 8000 lri         $AX0.L, #0x8000
		067b 02bf 03bd call        0x03bd
		067d 0083 0d60 lri         $AR3, #0x0d60
		067f 02bf 0130 call        0x0130
		0681 0081 038a lri         $AR1, #0x038a
		0683 009f 0d60 lri         $AC1.M, #0x0d60
		0685 0080 0050 lri         $AR0, #0x0050
		0687 02bf 0089 call        0x0089
		0689 009a 0000 lri         $AX0.H, #0x0000
		068b 0098 00a0 lri         $AX0.L, #0x00a0
		068d 0080 0388 lri         $AR0, #0x0388
		068f 02bf 04ce call        0x04ce
		0691 0080 038a lri         $AR0, #0x038a
		0693 02bf 04ce call        0x04ce
		0695 02bf 0497 call        0x0497
		0697 0000      nop         
		0698 0000      nop         
	}
	0699 029f 0031 jmp         0x0031
	069b 0080 0346 lri         $AR0, #0x0346
	069d 02bf 0051 call        0x0051
	069f 02bf 0051 call        0x0051
	06a1 0081 0346 lri         $AR1, #0x0346
	06a3 193e      lrri        $AC0.M, @$AR1
	06a4 193c      lrri        $AC0.L, @$AR1
	06a5 009f 0400 lri         $AC1.M, #0x0400
	06a7 00c0 0345 lr          $AR0, @0x0345
	06a9 02bf 007e call        0x007e
	
	06ab 0081 0348 lri         $AR1, #0x0348
	06ad 193e      lrri        $AC0.M, @$AR1
	06ae 193c      lrri        $AC0.L, @$AR1
	06af 009f 0800 lri         $AC1.M, #0x0800
	06b1 00c0 0345 lr          $AR0, @0x0345
	06b3 02bf 007e call        0x007e
	
	06b5 0081 0346 lri         $AR1, #0x0346
	06b7 193e      lrri        $AC0.M, @$AR1
	06b8 193c      lrri        $AC0.L, @$AR1
	06b9 009f 0800 lri         $AC1.M, #0x0800
	06bb 00c0 0345 lr          $AR0, @0x0345
	06bd 02bf 008b call        0x008b
	
	06bf 0081 0348 lri         $AR1, #0x0348
	06c1 193e      lrri        $AC0.M, @$AR1
	06c2 193c      lrri        $AC0.L, @$AR1
	06c3 009f 0400 lri         $AC1.M, #0x0400
	06c5 00c0 0345 lr          $AR0, @0x0345
	06c7 02bf 008b call        0x008b
	
	06c9 029f 0049 jmp         0x0049
}

void 06cb_Unk() {	
	06cb 0080 0346 lri         $AR0, #0x0346
	06cd 02bf 0051 call        0x0051
	06cf 02bf 0051 call        0x0051
	06d1 0081 0346 lri         $AR1, #0x0346
	06d3 193e      lrri        $AC0.M, @$AR1
	06d4 193c      lrri        $AC0.L, @$AR1
	06d5 009f 0400 lri         $AC1.M, #0x0400
	06d7 00c0 0345 lr          $AR0, @0x0345
	06d9 02bf 007e call        0x007e
	06db 0081 0348 lri         $AR1, #0x0348
	06dd 193e      lrri        $AC0.M, @$AR1
	06de 193c      lrri        $AC0.L, @$AR1
	06df 009f 0400 lri         $AC1.M, #0x0400
	06e1 00c0 0345 lr          $AR0, @0x0345
	06e3 02bf 008b call        0x008b
	06e5 029f 0049 jmp         0x0049
}	

void 06e7_Unk() {
	06e7 0080 0346 lri         $AR0, #0x0346
	06e9 02bf 0051 call        0x0051
	06eb 02bf 0051 call        0x0051
	06ed 0081 0346 lri         $AR1, #0x0346
	06ef 193e      lrri        $AC0.M, @$AR1
	06f0 193c      lrri        $AC0.L, @$AR1
	06f1 009f 0400 lri         $AC1.M, #0x0400
	06f3 00c0 0345 lr          $AR0, @0x0345
	06f5 02bf 00ae call        0x00ae
	06f7 0081 0348 lri         $AR1, #0x0348
	06f9 193e      lrri        $AC0.M, @$AR1
	06fa 193c      lrri        $AC0.L, @$AR1
	06fb 009f 0400 lri         $AC1.M, #0x0400
	06fd 00c0 0345 lr          $AR0, @0x0345
	06ff 02bf 008b call        0x008b
	0701 029f 0049 jmp         0x0049
	0703 0080 0346 lri         $AR0, #0x0346
	0705 02bf 0051 call        0x0051
	0707 02bf 0051 call        0x0051
	0709 0081 0346 lri         $AR1, #0x0346
	070b 193e      lrri        $AC0.M, @$AR1
	070c 193c      lrri        $AC0.L, @$AR1
	070d 009f 0400 lri         $AC1.M, #0x0400
	070f 00c0 0344 lr          $AR0, @0x0344
	0711 02bf 007e call        0x007e
	0713 0081 0348 lri         $AR1, #0x0348
	0715 193e      lrri        $AC0.M, @$AR1
	0716 193c      lrri        $AC0.L, @$AR1
	0717 009f 0800 lri         $AC1.M, #0x0800
	0719 00c0 0344 lr          $AR0, @0x0344
	071b 02bf 007e call        0x007e
	071d 0080 0400 lri         $AR0, #0x0400
	071f 0083 0800 lri         $AR3, #0x0800
	0721 0084 0000 lri         $IX0, #0x0000
	0723 00da 0345 lr          $AX0.H, @0x0345
	0725 00df 0344 lr          $AC1.M, @0x0344
	0727 8f00      set40       
	0728 197b      lrri        $AX1.H, @$AR3
	0729 b800      mulx        $AX0.H, $AX1.H
	072a 197b      lrri        $AX1.H, @$AR3
	072b 007f 0730 bloop       $AC1.M, 0x0730
	072d 199e      lrrn        $AC0.M, @$AR0
	072e bc00      mulxac      $AX0.H, $AX1.H, $ACC0
	072f 80b2      nx'sl       : $AC0.M, $AX1.H
	0730 0000      nop         
	0731 8e00      set16       
	0732 0081 0346 lri         $AR1, #0x0346
	0734 193e      lrri        $AC0.M, @$AR1
	0735 193c      lrri        $AC0.L, @$AR1
	0736 009f 0400 lri         $AC1.M, #0x0400
	0738 00c0 0344 lr          $AR0, @0x0344
	073a 02bf 008b call        0x008b
	073c 009e 8200 lri         $AC0.M, #0x8200
	073e 00dc 0344 lr          $AC0.L, @0x0344
	0740 02bf 005a call        0x005a
	0742 029f 0031 jmp         0x0031
	0744 0080 0346 lri         $AR0, #0x0346
	0746 02bf 0051 call        0x0051
	0748 0081 0346 lri         $AR1, #0x0346
	074a 009f 0400 lri         $AC1.M, #0x0400
	074c 00c0 0345 lr          $AR0, @0x0345
	074e 02bf 007c call        0x007c
	0750 02bf 8644 call        0x8644
	0752 029f 0049 jmp         0x0049
}

void 0754_Unk() {
	0754 009e 0458 lri         $AC0.M, #0x0458
	0756 2231      lrs         $AX0.H, @0x0031
	0757 4400      addr        $ACC0, $AX0.H
	0758 1c1e      mrr         $AR0, $AC0.M
	0759 1fda      mrr         $AC0.M, $AX0.H
	075a 3280      xorr'ls     $AC0.M, $AX1.H : $AX0.L, $AC0.M
	075b 7400      incm        $AC0.M
	075c 2232      lrs         $AX0.H, @0x0032
	075d 4400      addr        $ACC0, $AX0.H
	075e 0090 0000 lri         $AC0.H, #0x0000
	0760 029f 0771 jmp         0x0771
	0762 009e 0458 lri         $AC0.M, #0x0458
	0764 2231      lrs         $AX0.H, @0x0031
	0765 4400      addr        $ACC0, $AX0.H
	0766 1c1e      mrr         $AR0, $AC0.M
	0767 1fda      mrr         $AC0.M, $AX0.H
	0768 3280      xorr'ls     $AC0.M, $AX1.H : $AX0.L, $AC0.M
	0769 7400      incm        $AC0.M
	076a 2232      lrs         $AX0.H, @0x0032
	076b 4400      addr        $ACC0, $AX0.H
	076c 0090 0000 lri         $AC0.H, #0x0000
	076e 8200      cmp         
	076f 0270      ifns        
	0770 1fdf      mrr         $AC0.M, $AC1.M
	0771 1f3e      mrr         $AX1.L, $AC0.M
	0772 02bf 07c8 call        0x07c8
	0774 2634      lrs         $AC0.M, @0x0034
	0775 2435      lrs         $AC0.L, @0x0035
	0776 7200      addaxl      $ACC0, $AX1.L
	0777 5300      subr        $ACC1, $AX1.L
	0778 2e34      srs         @0x0034, $AC0.M
	0779 2c35      srs         @0x0035, $AC0.L
	077a 02df      ret
}

void 077b_Unk() {
	077b 8100      clr         $ACC0
	077c 2234      lrs         $AX0.H, @0x0034
	077d 2035      lrs         $AX0.L, @0x0035
	077e 4800      addax       $ACC0, $AX0.L
	077f 147c      lsr         $ACC0, #-4
	0780 2e36      srs         @0x0036, $AC0.M
	0781 2c37      srs         @0x0037, $AC0.L
	0782 2380      lrs         $AX1.H, @0xff80
	0783 8d00      set15       
	0784 c810      mulc'mv     $AC0.M, $AX1.H : $AX0.L, $AC0.L
	0785 ae00      mulxmv      $AX0.L, $AX1.H, $ACC0
	0786 8c00      clr15       
	0787 2035      lrs         $AX0.L, @0x0035
	0788 f000      lsl16       $ACC0
	0789 4e00      addp        $ACC0
	078a 238c      lrs         $AX1.H, @0xff8c
	078b 218d      lrs         $AX1.L, @0xff8d
	078c 4a00      addax       $ACC0, $AX1.L
	078d 2e38      srs         @0x0038, $AC0.M
	078e 2c39      srs         @0x0039, $AC0.L
	078f 1fd8      mrr         $AC0.M, $AX0.L
	0790 0240 000f andi        $AC0.M, #0x000f
	0792 2e31      srs         @0x0031, $AC0.M
	0793 268a      lrs         $AC0.M, @0xff8a
	0794 248b      lrs         $AC0.L, @0xff8b
	0795 5800      subax       $ACC0, $AX0.L
	0796 2e3a      srs         @0x003a, $AC0.M
	0797 2c3b      srs         @0x003b, $AC0.L
	0798 02df      ret
}

void 0799_Unk() {
	0799 2236      lrs         $AX0.H, @0x0036
	079a 2037      lrs         $AX0.L, @0x0037
	079b 8100      clr         $ACC0
	079c 268a      lrs         $AC0.M, @0xff8a
	079d 248b      lrs         $AC0.L, @0xff8b
	079e 147c      lsr         $ACC0, #-4
	079f 5800      subax       $ACC0, $AX0.L
	07a0 0295 07a9 jz          0x07a9
	07a2 02bf 081b call        0x081b
	07a4 0e10      lris        $AC0.M, #0x10
	07a5 2e32      srs         @0x0032, $AC0.M
	07a6 8100      clr         $ACC0
	07a7 2e31      srs         @0x0031, $AC0.M
	07a8 02df      ret
}

void 07a9_Unk() {
	07a9 228a      lrs         $AX0.H, @0xff8a
	07aa 208b      lrs         $AX0.L, @0xff8b
	07ab 8100      clr         $ACC0
	07ac 2634      lrs         $AC0.M, @0x0034
	07ad 2435      lrs         $AC0.L, @0x0035
	07ae 5800      subax       $ACC0, $AX0.L
	07af 0290 07b6 jns         0x07b6
	07b1 02bf 081b call        0x081b
	07b3 263b      lrs         $AC0.M, @0x003b
	07b4 029f 07a5 jmp         0x07a5
	07b6 2688      lrs         $AC0.M, @0xff88
	07b7 2489      lrs         $AC0.L, @0xff89
	07b8 2e34      srs         @0x0034, $AC0.M
	07b9 2c35      srs         @0x0035, $AC0.L
	07ba 0e10      lris        $AC0.M, #0x10
	07bb 2e32      srs         @0x0032, $AC0.M
	07bc 02bf 077b call        0x077b
	07be 2682      lrs         $AC0.M, @0xff82
	07bf 2e67      srs         @0x0067, $AC0.M
	07c0 2683      lrs         $AC0.M, @0xff83
	07c1 2e66      srs         @0x0066, $AC0.M
	07c2 8100      clr         $ACC0
	07c3 00fe 0362 sr          @0x0362, $AC0.M
	07c5 02bf 081b call        0x081b
	07c7 02df      ret
}

void 07c8_Unk() {
	07c8 b100      tst         $ACC0
	07c9 02d5      retz        
	07ca 04fe      addis       $ACC0, #0xfe
	07cb 1f1e      mrr         $AX0.L, $AC0.M
	07cc 191e      lrri        $AC0.M, @$AR0
	07cd 0291 07d3 js          0x07d3
		07cf 191a      lrri        $AX0.H, @$AR0
		07d0 0058      loop        $AX0.L
		07d1 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
		07d2 6433      movr's      $ACC0, $AX0.H : @$AR3, $AC0.M
	07d3 1b7e      srri        @$AR3, $AC0.M
	07d4 02df      ret
}

void 07d5_Unk() {
	07d5 0092 0004 lri         $CR, #0x0004
	07d7 02bf 077b call        0x077b
	07d9 8100      clr         $ACC0
	07da 00fe 0362 sr          @0x0362, $AC0.M
	07dc 8100      clr         $ACC0
	07dd 263a      lrs         $AC0.M, @0x003a
	07de 243b      lrs         $AC0.L, @0x003b
	07df b100      tst         $ACC0
	07e0 0294 07f2 jnz         0x07f2
	07e2 02bf 0799 call        0x0799
	07e4 2231      lrs         $AX0.H, @0x0031
	07e5 8600      tstaxh      $AX0.H
	07e6 0294 07ef jnz         0x07ef
	07e8 02bf 0762 call        0x0762
	07ea b900      tst         $ACC1
	07eb 0295 0818 jz          0x0818
	07ed 02bf 077b call        0x077b
	07ef 8100      clr         $ACC0
	07f0 263a      lrs         $AC0.M, @0x003a
	07f1 243b      lrs         $AC0.L, @0x003b
	07f2 1f1f      mrr         $AX0.L, $AC1.M
	07f3 009a 0000 lri         $AX0.H, #0x0000
	07f5 5800      subax       $ACC0, $AX0.L
	07f6 0290 0805 jns         0x0805
	07f8 8100      clr         $ACC0
	07f9 2631      lrs         $AC0.M, @0x0031
	07fa b100      tst         $ACC0
	07fb 0294 07ff jnz         0x07ff
	07fd 02bf 0799 call        0x0799
	07ff 02bf 0754 call        0x0754
	0801 02bf 077b call        0x077b
	0803 029f 07dc jmp         0x07dc
	0805 8100      clr         $ACC0
	0806 2631      lrs         $AC0.M, @0x0031
	0807 b100      tst         $ACC0
	0808 0294 080c jnz         0x080c
	080a 02bf 0799 call        0x0799
	080c 02bf 0762 call        0x0762
	080e b900      tst         $ACC1
	080f 0295 0818 jz          0x0818
	0811 02bf 077b call        0x077b
	0813 029f 0805 jmp         0x0805
	0815 8100      clr         $ACC0
	0816 005f      loop        $AC1.M
	0817 1b7e      srri        @$AR3, $AC0.M
	0818 0092 00ff lri         $CR, #0x00ff
	081a 02df      ret
}

void 081b_Unk() {
	081b 00ff 0360 sr          @0x0360, $AC1.M
	081d 00da 0362 lr          $AX0.H, @0x0362
	081f 8600      tstaxh      $AX0.H
	0820 0294 082d jnz         0x082d
	0822 0a01      lris        $AX0.H, #0x01
	0823 00fa 0362 sr          @0x0362, $AX0.H
	0825 2638      lrs         $AC0.M, @0x0038
	0826 2439      lrs         $AC0.L, @0x0039
	0827 009f 0005 lri         $AC1.M, #0x0005
	0829 02bf 0103 call        0x0103
	082b 0092 0004 lri         $CR, #0x0004
	082d 0080 ffd3 lri         $AR0, #0xffd3
	082f 0084 0000 lri         $IX0, #0x0000
	0831 199e      lrrn        $AC0.M, @$AR0
	0832 1ffe      mrr         $AC1.M, $AC0.M
	0833 1401      lsl         $ACC0, #1
	0834 0240 001e andi        $AC0.M, #0x001e
	0836 0200 0300 addi        $AC0.M, #0x0300
	0838 1c3e      mrr         $AR1, $AC0.M
	0839 157c      lsr         $ACC1, #-4
	083a 0340 000f andi        $AC1.M, #0x000f
	083c 0a11      lris        $AX0.H, #0x11
	083d 5500      subr        $ACC1, $AX0.H
	083e 009a 00f0 lri         $AX0.H, #0x00f0
	0840 009b 000f lri         $AX1.H, #0x000f
	0842 0082 0370 lri         $AR2, #0x0370
	0844 1998      lrrn        $AX0.L, @$AR0
	0845 6000      movr        $ACC0, $AX0.L
	0846 1107 084d bloopi      #0x07, 0x084d
	0848 3400      andr        $AC0.M, $AX0.H
	0849 1408      lsl         $ACC0, #8
	084a 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
	084b 3644      andr'ln     $AC0.M, $AX1.H : $AX0.L, @$AR0
	084c 140c      lsl         $ACC0, #12
	084d 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
	084e 3400      andr        $AC0.M, $AX0.H
	084f 1408      lsl         $ACC0, #8
	0850 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
	0851 3600      andr        $AC0.M, $AX1.H
	0852 140c      lsl         $ACC0, #12
	0853 1b5e      srri        @$AR2, $AC0.M
	0854 8f00      set40       
	0855 1f7f      mrr         $AX1.H, $AC1.M
	0856 2066      lrs         $AX0.L, @0x0066
	0857 2767      lrs         $AC1.M, @0x0067
	0858 193a      lrri        $AX0.H, @$AR1
	0859 1939      lrri        $AX1.L, @$AR1
	085a 0080 0370 lri         $AR0, #0x0370
	085c 0081 0458 lri         $AR1, #0x0458
	085e 1c80      mrr         $IX0, $AR0
	085f a000      mulx        $AX0.L, $AX1.L
	0860 ea70      maddc'l     $AC1.M, $AX1.L : $AC0.M, @$AR0
	0861 1108 086a bloopi      #0x08, 0x086a
		0863 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
		0864 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
		0865 1485      asl         $ACC0, #5
		0866 e831      maddc's     $AC0.M, $AX1.L : @$AR1, $AC0.M
		0867 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
		0868 a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
		0869 1585      asl         $ACC1, #5
		086a ea39      maddc's     $AC1.M, $AX1.L : @$AR1, $AC1.M
	086b 8e00      set16       
	086c 8900      clr         $ACC1
	086d 00df 0360 lr          $AC1.M, @0x0360
	086f 02df      ret
}

void 0870_Unk() {
	0870 0080 0346 lri         $AR0, #0x0346
	0872 02bf 0051 call        0x0051
	0874 8100      clr         $ACC0
	0875 0080 0458 lri         $AR0, #0x0458
	0877 1010      loopi       #0x10
	0878 1b1e      srri        @$AR0, $AC0.M
	0879 00fe 0482 sr          @0x0482, $AC0.M
	087b 00fe 0483 sr          @0x0483, $AC0.M
	087d 009c 0000 lri         $AC0.L, #0x0000
	087f 00fe 0434 sr          @0x0434, $AC0.M
	0881 00fc 0435 sr          @0x0435, $AC0.L
	0883 009e 0100 lri         $AC0.M, #0x0100
	0885 009c f100 lri         $AC0.L, #0xf100
	0887 00fe 048e sr          @0x048e, $AC0.M
	0889 00fc 048f sr          @0x048f, $AC0.L
	088b 009e 0040 lri         $AC0.M, #0x0040
	088d 009c 0000 lri         $AC0.L, #0x0000
	088f 00fe 048c sr          @0x048c, $AC0.M
	0891 00fc 048d sr          @0x048d, $AC0.L
	0893 009e 0009 lri         $AC0.M, #0x0009
	0895 00fe 0480 sr          @0x0480, $AC0.M
	0897 009e 0010 lri         $AC0.M, #0x0010
	0899 00fe 0432 sr          @0x0432, $AC0.M
	089b 009e 0100 lri         $AC0.M, #0x0100
	089d 009c f250 lri         $AC0.L, #0xf250
	089f 00fe 048a sr          @0x048a, $AC0.M
	08a1 00fc 048b sr          @0x048b, $AC0.L
	08a3 009c 0000 lri         $AC0.L, #0x0000
	08a5 00fe 0488 sr          @0x0488, $AC0.M
	08a7 00fc 0489 sr          @0x0489, $AC0.L
	08a9 009e 0001 lri         $AC0.M, #0x0001
	08ab 00fe 0481 sr          @0x0481, $AC0.M
	08ad 8900      clr         $ACC1
	08ae 00ff 0401 sr          @0x0401, $AC1.M
	08b0 1180 08ca bloopi      #0x80, 0x08ca
	08b2 0083 0580 lri         $AR3, #0x0580
	08b4 009f 0100 lri         $AC1.M, #0x0100
	08b6 02bf 07d5 call        0x07d5
	08b8 0081 0346 lri         $AR1, #0x0346
	08ba 193e      lrri        $AC0.M, @$AR1
	08bb 18bc      lrrd        $AC0.L, @$AR1
	08bc 009f 0580 lri         $AC1.M, #0x0580
	08be 0080 0100 lri         $AR0, #0x0100
	08c0 02bf 008b call        0x008b
	08c2 0081 0346 lri         $AR1, #0x0346
	08c4 193e      lrri        $AC0.M, @$AR1
	08c5 18bc      lrrd        $AC0.L, @$AR1
	08c6 0098 0200 lri         $AX0.L, #0x0200
	08c8 7000      addaxl      $ACC0, $AX0.L
	08c9 1b3e      srri        @$AR1, $AC0.M
	08ca 1abc      srrd        @$AR1, $AC0.L
	08cb 029f 0049 jmp         0x0049
}

void 08cd_Unk() {
	08cd 8900      clr         $ACC1
	08ce 009f 0050 lri         $AC1.M, #0x0050
	08d0 0083 0520 lri         $AR3, #0x0520
	08d2 02bf 08e8 call        0x08e8
	08d4 029f 056d jmp         0x056d
}

void 08d6_Unk() {
	08d6 00d8 0402 lr          $AX0.L, @0x0402
	08d8 8100      clr         $ACC0
	08d9 8900      clr         $ACC1
	08da 00dc 0430 lr          $AC0.L, @0x0430
	08dc 009a 0050 lri         $AX0.H, #0x0050
	08de 9000      mul         $AX0.L, $AX0.H
	08df 9400      mulac       $AX0.L, $AX0.H, $ACC0
	08e0 1404      lsl         $ACC0, #4
	08e1 1ffe      mrr         $AC1.M, $AC0.M
	08e2 0083 0580 lri         $AR3, #0x0580
	08e4 02bf 08e8 call        0x08e8
	08e6 029f 0565 jmp         0x0565
}

void 08e8_Unk() {
	08e8 0092 0004 lri         $CR, #0x0004
	08ea 8100      clr         $ACC0
	08eb 263a      lrs         $AC0.M, @0x003a
	08ec 243b      lrs         $AC0.L, @0x003b
	08ed 1f1f      mrr         $AX0.L, $AC1.M
	08ee 009a 0000 lri         $AX0.H, #0x0000
	08f0 5800      subax       $ACC0, $AX0.L
	08f1 0290 0908 jns         0x0908
	08f3 8900      clr         $ACC1
	08f4 00c0 043b lr          $AR0, @0x043b
	08f6 02bf 092d call        0x092d
	08f8 8100      clr         $ACC0
	08f9 1fd8      mrr         $AC0.M, $AX0.L
	08fa 223b      lrs         $AX0.H, @0x003b
	08fb 5400      subr        $ACC0, $AX0.H
	08fc 0007      dar         $AR3
	08fd 1979      lrri        $AX1.L, @$AR3
	08fe 005e      loop        $AC0.M
	08ff 1b79      srri        @$AR3, $AX1.L
	0900 009f 0001 lri         $AC1.M, #0x0001
	0902 2f01      srs         @0x0001, $AC1.M
	0903 8900      clr         $ACC1
	0904 2f3b      srs         @0x003b, $AC1.M
	0905 0092 00ff lri         $CR, #0x00ff
	0907 02df      ret
}

void 0908_Unk() {
	0908 2e3a      srs         @0x003a, $AC0.M
	0909 2c3b      srs         @0x003b, $AC0.L
	090a 8100      clr         $ACC0
	090b 8900      clr         $ACC1
	090c 268a      lrs         $AC0.M, @0xff8a
	090d 2734      lrs         $AC1.M, @0x0034
	090e 5c00      sub         $ACC0, $AC1.L
	090f 2e36      srs         @0x0036, $AC0.M
	0910 5000      subr        $ACC0, $AX0.L
	0911 0290 0927 jns         0x0927
	0913 00c0 0436 lr          $AR0, @0x0436
	0915 02bf 092d call        0x092d
	0917 8100      clr         $ACC0
	0918 1fd8      mrr         $AC0.M, $AX0.L
	0919 2236      lrs         $AX0.H, @0x0036
	091a 5400      subr        $ACC0, $AX0.H
	091b 1c1e      mrr         $AR0, $AC0.M
	091c 8100      clr         $ACC0
	091d 2e34      srs         @0x0034, $AC0.M
	091e 2688      lrs         $AC0.M, @0xff88
	091f 2489      lrs         $AC0.L, @0xff89
	0920 2e8c      srs         @0xff8c, $AC0.M
	0921 2c8d      srs         @0xff8d, $AC0.L
	0922 02bf 092d call        0x092d
	0924 0092 00ff lri         $CR, #0x00ff
	0926 02df      ret
}

void 0927_Unk() {
	0927 1c18      mrr         $AR0, $AX0.L
	0928 02bf 092d call        0x092d
	092a 0092 00ff lri         $CR, #0x00ff
	092c 02df      ret
}

void 092d_Unk() {
	092d 8100      clr         $ACC0
	092e 1fc0      mrr         $AC0.M, $AR0
	092f b100      tst         $ACC0
	0930 02d5      retz        
	0931 8900      clr         $ACC1
	0932 2734      lrs         $AC1.M, @0x0034
	0933 0340 0001 andi        $AC1.M, #0x0001
	0935 009b 0000 lri         $AX1.H, #0x0000
	0937 1f3f      mrr         $AX1.L, $AC1.M
	0938 268c      lrs         $AC0.M, @0xff8c
	0939 248d      lrs         $AC0.L, @0xff8d
	093a 8900      clr         $ACC1
	093b 2534      lrs         $AC1.L, @0x0034
	093c 1501      lsl         $ACC1, #1
	093d 4c00      add         $ACC0, $AC1.L
	093e 5a00      subax       $ACC0, $AX1.L
	093f 5a00      subax       $ACC0, $AX1.L
	0940 1c20      mrr         $AR1, $AR0
	0941 1fe0      mrr         $AC1.M, $AR0
	0942 0502      addis       $ACC1, #0x02
	0943 1c1f      mrr         $AR0, $AC1.M
	0944 009f 0a00 lri         $AC1.M, #0x0a00
	0946 0092 00ff lri         $CR, #0x00ff
	0948 02bf 007e call        0x007e
	094a 0092 0004 lri         $CR, #0x0004
	094c 2734      lrs         $AC1.M, @0x0034
	094d 1f61      mrr         $AX1.H, $AR1
	094e 4700      addr        $ACC1, $AX1.H
	094f 2f34      srs         @0x0034, $AC1.M
	0950 0080 0a00 lri         $AR0, #0x0a00
	0952 8900      clr         $ACC1
	0953 1ff9      mrr         $AC1.M, $AX1.L
	0954 b900      tst         $ACC1
	0955 0274      ifnz        
	0956 0008      iar         $AR0
	0957 8900      clr         $ACC1
	0958 1fe1      mrr         $AC1.M, $AR1
	0959 191e      lrri        $AC0.M, @$AR0
	095a 0701      cmpis       $ACC1, #0x01
	095b 0293 0964 jle         0x0964
	095d 191a      lrri        $AX0.H, @$AR0
	095e 05fe      addis       $ACC1, #0xfe
	095f 005f      loop        $AC1.M
	0960 64a0      movr'ls     $ACC0, $AX0.H : $AX0.H, $AC0.M
	0961 1b7e      srri        @$AR3, $AC0.M
	0962 1b7a      srri        @$AR3, $AX0.H
	0963 02df      ret
}

void 0964_Unk() {
	0964 1b7e      srri        @$AR3, $AC0.M
	0965 02df      ret
}

void 0966_Unk() {
	0966 0092 0004 lri         $CR, #0x0004
	0968 2201      lrs         $AX0.H, @0x0001
	0969 8600      tstaxh      $AX0.H
	096a 0294 0997 jnz         0x0997
	096c 2204      lrs         $AX0.H, @0x0004
	096d 8600      tstaxh      $AX0.H
	096e 02b4 09eb callne      0x09eb
	0970 2231      lrs         $AX0.H, @0x0031
	0971 8600      tstaxh      $AX0.H
	0972 0295 098c jz          0x098c
	0974 009e 0458 lri         $AC0.M, #0x0458
	0976 4400      addr        $ACC0, $AX0.H
	0977 1c1e      mrr         $AR0, $AC0.M
	0978 0e10      lris        $AC0.M, #0x10
	0979 5400      subr        $ACC0, $AX0.H
	097a 1f7e      mrr         $AX1.H, $AC0.M
	097b 02bf 07c8 call        0x07c8
	097d d900      cmpar       $ACC1, $AX1.H
	097e 0292 098b jg          0x098b
	0980 0295 0987 jz          0x0987
	0982 2631      lrs         $AC0.M, @0x0031
	0983 4c00      add         $ACC0, $AC1.L
	0984 2e31      srs         @0x0031, $AC0.M
	0985 029f 09e8 jmp         0x09e8
	0987 8100      clr         $ACC0
	0988 2e31      srs         @0x0031, $AC0.M
	0989 029f 09e8 jmp         0x09e8
	098b 5700      subr        $ACC1, $AX1.H
	098c 8100      clr         $ACC0
	098d 2605      lrs         $AC0.M, @0x0005
	098e b100      tst         $ACC0
	098f 0295 09a8 jz          0x09a8
	0991 8100      clr         $ACC0
	0992 2e05      srs         @0x0005, $AC0.M
	0993 2281      lrs         $AX0.H, @0xff81
	0994 8600      tstaxh      $AX0.H
	0995 0294 099e jnz         0x099e
	0997 8100      clr         $ACC0
	0998 005f      loop        $AC1.M
	0999 1b7e      srri        @$AR3, $AC0.M
	099a 7400      incm        $AC0.M
	099b 2e01      srs         @0x0001, $AC0.M
	099c 029f 09e8 jmp         0x09e8
	099e 2688      lrs         $AC0.M, @0xff88
	099f 2489      lrs         $AC0.L, @0xff89
	09a0 2e34      srs         @0x0034, $AC0.M
	09a1 2c35      srs         @0x0035, $AC0.L
	09a2 02bf 09f0 call        0x09f0
	09a4 2682      lrs         $AC0.M, @0xff82
	09a5 2483      lrs         $AC0.L, @0xff83
	09a6 2e67      srs         @0x0067, $AC0.M
	09a7 2c66      srs         @0x0066, $AC0.L
	09a8 00ff 0360 sr          @0x0360, $AC1.M
	09aa 2638      lrs         $AC0.M, @0x0038
	09ab 2439      lrs         $AC0.L, @0x0039
	09ac 009f 0005 lri         $AC1.M, #0x0005
	09ae 02bf 0103 call        0x0103
	09b0 0092 0004 lri         $CR, #0x0004
	09b2 8900      clr         $ACC1
	09b3 00ff 0362 sr          @0x0362, $AC1.M
	09b5 00df 0360 lr          $AC1.M, @0x0360
	09b7 02bf 0a09 call        0x0a09
	09b9 8100      clr         $ACC0
	09ba 00de 0362 lr          $AC0.M, @0x0362
	09bc 2280      lrs         $AX0.H, @0xff80
	09bd 4400      addr        $ACC0, $AX0.H
	09be 00fe 0362 sr          @0x0362, $AC0.M
	09c0 8100      clr         $ACC0
	09c1 263a      lrs         $AC0.M, @0x003a
	09c2 243b      lrs         $AC0.L, @0x003b
	09c3 0a01      lris        $AX0.H, #0x01
	09c4 0081 0405 lri         $AR1, #0x0405
	09c6 7a00      dec         $ACC0
	09c7 b100      tst         $ACC0
	09c8 0275      ifz         
	09c9 1a3a      srr         @$AR1, $AX0.H
	09ca 2e3a      srs         @0x003a, $AC0.M
	09cb 2c3b      srs         @0x003b, $AC0.L
	09cc 0710      cmpis       $ACC1, #0x10
	09cd 0293 09d6 jle         0x09d6
	09cf 05f0      addis       $ACC1, #0xf0
	09d0 2205      lrs         $AX0.H, @0x0005
	09d1 8600      tstaxh      $AX0.H
	09d2 0294 0991 jnz         0x0991
	09d4 029f 09b7 jmp         0x09b7
	09d6 0275      ifz         
	09d7 8900      clr         $ACC1
	09d8 2f31      srs         @0x0031, $AC1.M
	09d9 1fc3      mrr         $AC0.M, $AR3
	09da 04f0      addis       $ACC0, #0xf0
	09db 1c1e      mrr         $AR0, $AC0.M
	09dc 0083 0458 lri         $AR3, #0x0458
	09de 0e10      lris        $AC0.M, #0x10
	09df 02bf 07c8 call        0x07c8
	09e1 2638      lrs         $AC0.M, @0x0038
	09e2 2439      lrs         $AC0.L, @0x0039
	09e3 00d8 0362 lr          $AX0.L, @0x0362
	09e5 7000      addaxl      $ACC0, $AX0.L
	09e6 2c39      srs         @0x0039, $AC0.L
	09e7 2e38      srs         @0x0038, $AC0.M
	09e8 0092 00ff lri         $CR, #0x00ff
	09ea 02df      ret
}

void 09eb_Unk() {
	09eb 8100      clr         $ACC0
	09ec 2e34      srs         @0x0034, $AC0.M
	09ed 2e35      srs         @0x0035, $AC0.M
	09ee 2e66      srs         @0x0066, $AC0.M
	09ef 2e67      srs         @0x0067, $AC0.M
	09f0 2334      lrs         $AX1.H, @0x0034
	09f1 2135      lrs         $AX1.L, @0x0035
	09f2 268a      lrs         $AC0.M, @0xff8a
	09f3 248b      lrs         $AC0.L, @0xff8b
	09f4 5a00      subax       $ACC0, $AX1.L
	09f5 147c      lsr         $ACC0, #-4
	09f6 2e3a      srs         @0x003a, $AC0.M
	09f7 2c3b      srs         @0x003b, $AC0.L
	09f8 2634      lrs         $AC0.M, @0x0034
	09f9 2435      lrs         $AC0.L, @0x0035
	09fa 147c      lsr         $ACC0, #-4
	09fb 2280      lrs         $AX0.H, @0xff80
	09fc c010      mulc'mv     $AC0.M, $AX0.H : $AX0.L, $AC0.L
	09fd 9600      mulmv       $AX0.L, $AX0.H, $ACC0
	09fe f000      lsl16       $ACC0
	09ff 4e00      addp        $ACC0
	0a00 238c      lrs         $AX1.H, @0xff8c
	0a01 218d      lrs         $AX1.L, @0xff8d
	0a02 4a00      addax       $ACC0, $AX1.L
	0a03 2e38      srs         @0x0038, $AC0.M
	0a04 2c39      srs         @0x0039, $AC0.L
	0a05 8100      clr         $ACC0
	0a06 2e05      srs         @0x0005, $AC0.M
	0a07 2e31      srs         @0x0031, $AC0.M
	0a08 02df      ret
}


void 0a09_Unk() {
	0a09 00ff 0360 sr          @0x0360, $AC1.M
	0a0b 0080 ffd3 lri         $AR0, #0xffd3
	0a0d 0084 0000 lri         $IX0, #0x0000
	0a0f 199e      lrrn        $AC0.M, @$AR0
	0a10 1ffe      mrr         $AC1.M, $AC0.M
	0a11 1401      lsl         $ACC0, #1
	0a12 0240 001e andi        $AC0.M, #0x001e
	0a14 0200 0300 addi        $AC0.M, #0x0300
	0a16 1c3e      mrr         $AR1, $AC0.M
	0a17 157c      lsr         $ACC1, #-4
	0a18 0340 000f andi        $AC1.M, #0x000f
	0a1a 0a11      lris        $AX0.H, #0x11
	0a1b 5500      subr        $ACC1, $AX0.H
	0a1c 009a 00f0 lri         $AX0.H, #0x00f0
	0a1e 009b 000f lri         $AX1.H, #0x000f
	0a20 0082 0370 lri         $AR2, #0x0370
	0a22 1998      lrrn        $AX0.L, @$AR0
	0a23 6000      movr        $ACC0, $AX0.L
	0a24 1107 0a2b bloopi      #0x07, 0x0a2b
		0a26 3400      andr        $AC0.M, $AX0.H
		0a27 1408      lsl         $ACC0, #8
		0a28 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
		0a29 3644      andr'ln     $AC0.M, $AX1.H : $AX0.L, @$AR0
		0a2a 140c      lsl         $ACC0, #12
		0a2b 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
	0a2c 3400      andr        $AC0.M, $AX0.H
	0a2d 1408      lsl         $ACC0, #8
	0a2e 6032      movr's      $ACC0, $AX0.L : @$AR2, $AC0.M
	0a2f 3600      andr        $AC0.M, $AX1.H
	0a30 140c      lsl         $ACC0, #12
	0a31 1b5e      srri        @$AR2, $AC0.M
	0a32 8f00      set40       
	0a33 1f7f      mrr         $AX1.H, $AC1.M
	0a34 2066      lrs         $AX0.L, @0x0066
	0a35 2767      lrs         $AC1.M, @0x0067
	0a36 193a      lrri        $AX0.H, @$AR1
	0a37 1939      lrri        $AX1.L, @$AR1
	0a38 0080 0370 lri         $AR0, #0x0370
	0a3a 1c80      mrr         $IX0, $AR0
	0a3b a000      mulx        $AX0.L, $AX1.L
	0a3c ea70      maddc'l     $AC1.M, $AX1.L : $AC0.M, @$AR0
	0a3d 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
	0a3e a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
	0a3f 1485      asl         $ACC0, #5
	0a40 e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
	0a41 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
	0a42 a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
	0a43 1585      asl         $ACC1, #5
	0a44 ea3b      maddc's     $AC1.M, $AX1.L : @$AR3, $AC1.M
	0a45 1106 0a4e bloopi      #0x06, 0x0a4e
	0a47 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
	0a48 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
	0a49 1485      asl         $ACC0, #5
	0a4a e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
	0a4b 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
	0a4c a570      mulxac'l    $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
	0a4d 1585      asl         $ACC1, #5
	0a4e ea3b      maddc's     $AC1.M, $AX1.L : @$AR3, $AC1.M
	0a4f 3a93      orr'sl      $AC0.M, $AX1.H : $AC1.M, $AX1.L
	0a50 a478      mulxac'l    $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
	0a51 1485      asl         $ACC0, #5
	0a52 e833      maddc's     $AC0.M, $AX1.L : @$AR3, $AC0.M
	0a53 3b92      orr'sl      $AC1.M, $AX1.H : $AC0.M, $AX1.L
	0a54 a500      mulxac      $AX0.L, $AX1.L, $ACC1
	0a55 1585      asl         $ACC1, #5
	0a56 1b7f      srri        @$AR3, $AC1.M
	0a57 2e66      srs         @0x0066, $AC0.M
	0a58 2f67      srs         @0x0067, $AC1.M
	0a59 8e00      set16       
	0a5a 8900      clr         $ACC1
	0a5b 00df 0360 lr          $AC1.M, @0x0360
	0a5d 02df      ret
}

void 0a5e_Unk() {
	0a5e 0083 0520 lri         $AR3, #0x0520
	0a60 00de 0433 lr          $AC0.M, @0x0433
	0a62 1050      loopi       #0x50
	0a63 1b7e      srri        @$AR3, $AC0.M
	0a64 029f 056d jmp         0x056d
	0a66 0092 0004 lri         $CR, #0x0004
	0a68 2002      lrs         $AX0.L, @0x0002
	0a69 8100      clr         $ACC0
	0a6a 8900      clr         $ACC1
	0a6b 2430      lrs         $AC0.L, @0x0030
	0a6c 8d00      set15       
	0a6d 0099 0050 lri         $AX1.L, #0x0050
	0a6f a000      mulx        $AX0.L, $AX1.L
	0a70 a400      mulxac      $AX0.L, $AX1.L, $ACC0
	0a71 1404      lsl         $ACC0, #4
	0a72 8c00      clr15       
	0a73 1ffe      mrr         $AC1.M, $AC0.M
	0a74 0083 0580 lri         $AR3, #0x0580
	0a76 2201      lrs         $AX0.H, @0x0001
	0a77 8600      tstaxh      $AX0.H
	0a78 0294 0a89 jnz         0x0a89
	0a7a 2204      lrs         $AX0.H, @0x0004
	0a7b 8600      tstaxh      $AX0.H
	0a7c 02b4 0ad2 callne      0x0ad2
	0a7e 8100      clr         $ACC0
	0a7f 2605      lrs         $AC0.M, @0x0005
	0a80 b100      tst         $ACC0
	0a81 0295 0a96 jz          0x0a96
	0a83 8100      clr         $ACC0
	0a84 2e05      srs         @0x0005, $AC0.M
	0a85 2281      lrs         $AX0.H, @0xff81
	0a86 8600      tstaxh      $AX0.H
	0a87 0294 0a90 jnz         0x0a90
	0a89 8100      clr         $ACC0
	0a8a 005f      loop        $AC1.M
	0a8b 1b7e      srri        @$AR3, $AC0.M
	0a8c 7400      incm        $AC0.M
	0a8d 2e01      srs         @0x0001, $AC0.M
	0a8e 029f 0ace jmp         0x0ace
	0a90 2688      lrs         $AC0.M, @0xff88
	0a91 2489      lrs         $AC0.L, @0xff89
	0a92 2e34      srs         @0x0034, $AC0.M
	0a93 2c35      srs         @0x0035, $AC0.L
	0a94 02bf 0ad5 call        0x0ad5
	0a96 00ff 0360 sr          @0x0360, $AC1.M
	0a98 2638      lrs         $AC0.M, @0x0038
	0a99 2439      lrs         $AC0.L, @0x0039
	0a9a 009f 0005 lri         $AC1.M, #0x0005
	0a9c 02bf 0103 call        0x0103
	0a9e 0092 0004 lri         $CR, #0x0004
	0aa0 00df 0360 lr          $AC1.M, @0x0360
	0aa2 8100      clr         $ACC0
	0aa3 263a      lrs         $AC0.M, @0x003a
	0aa4 b100      tst         $ACC0
	0aa5 0294 0ab5 jnz         0x0ab5
	0aa7 263b      lrs         $AC0.M, @0x003b
	0aa8 5c00      sub         $ACC0, $AC1.L
	0aa9 0290 0ab5 jns         0x0ab5
	0aab 223b      lrs         $AX0.H, @0x003b
	0aac 02bf 0ae6 call        0x0ae6
	0aae 5500      subr        $ACC1, $AX0.H
	0aaf 009a 0001 lri         $AX0.H, #0x0001
	0ab1 00fa 0405 sr          @0x0405, $AX0.H
	0ab3 029f 0a83 jmp         0x0a83
	0ab5 1f5f      mrr         $AX0.H, $AC1.M
	0ab6 02bf 0ae6 call        0x0ae6
	0ab8 00fa 0362 sr          @0x0362, $AX0.H
	0aba 8100      clr         $ACC0
	0abb 263a      lrs         $AC0.M, @0x003a
	0abc 243b      lrs         $AC0.L, @0x003b
	0abd 1570      lsr         $ACC1, #-16
	0abe 0a01      lris        $AX0.H, #0x01
	0abf 0081 0405 lri         $AR1, #0x0405
	0ac1 5c00      sub         $ACC0, $AC1.L
	0ac2 b100      tst         $ACC0
	0ac3 0275      ifz         
	0ac4 1a3a      srr         @$AR1, $AX0.H
	0ac5 2e3a      srs         @0x003a, $AC0.M
	0ac6 2c3b      srs         @0x003b, $AC0.L
	0ac7 2638      lrs         $AC0.M, @0x0038
	0ac8 2439      lrs         $AC0.L, @0x0039
	0ac9 00d8 0362 lr          $AX0.L, @0x0362
	0acb 7000      addaxl      $ACC0, $AX0.L
	0acc 2c39      srs         @0x0039, $AC0.L
	0acd 2e38      srs         @0x0038, $AC0.M
	0ace 0092 00ff lri         $CR, #0x00ff
	0ad0 029f 0565 jmp         0x0565
	0ad2 8100      clr         $ACC0
	0ad3 2e34      srs         @0x0034, $AC0.M
	0ad4 2e35      srs         @0x0035, $AC0.M
	0ad5 2334      lrs         $AX1.H, @0x0034
	0ad6 2135      lrs         $AX1.L, @0x0035
	0ad7 268a      lrs         $AC0.M, @0xff8a
	0ad8 248b      lrs         $AC0.L, @0xff8b
	0ad9 5a00      subax       $ACC0, $AX1.L
	0ada 2e3a      srs         @0x003a, $AC0.M
	0adb 2c3b      srs         @0x003b, $AC0.L
	0adc 2634      lrs         $AC0.M, @0x0034
	0add 2435      lrs         $AC0.L, @0x0035
	0ade 238c      lrs         $AX1.H, @0xff8c
	0adf 218d      lrs         $AX1.L, @0xff8d
	0ae0 4a00      addax       $ACC0, $AX1.L
	0ae1 2e38      srs         @0x0038, $AC0.M
	0ae2 2c39      srs         @0x0039, $AC0.L
	0ae3 8100      clr         $ACC0
	0ae4 2e05      srs         @0x0005, $AC0.M
	0ae5 02df      ret
}

void 0ae6_ConvSigned8bitToSigned16bit() {
	0ae6 0080 ffd3 lri         $AR0, #0xffd3
	0ae8 0084 0000 lri         $IX0, #0x0000
	0aea 007a 0aee bloop       $AX0.H, 0x0aee
		0aec 199e      lrrn        $AC0.M, @$AR0
		0aed 1488      asl         $ACC0, #8
		0aee 1b7e      srri        @$AR3, $AC0.M
	0aef 02df      ret
}

void 0af0_Unk() {
	0af0 009e ffff lri         $AC0.M, #0xffff
	0af2 00fe 03f2 sr          @0x03f2, $AC0.M
	0af4 8100      clr         $ACC0
	0af5 00fe 03f0 sr          @0x03f0, $AC0.M
	0af7 00fe 03f6 sr          @0x03f6, $AC0.M
	0af9 009e 0100 lri         $AC0.M, #0x0100
	0afb 00fe 03f7 sr          @0x03f7, $AC0.M
	0afd 00da 03f7 lr          $AX0.H, @0x03f7
	0aff 009e 8000 lri         $AC0.M, #0x8000
	0b01 5400      subr        $ACC0, $AX0.H
	0b02 00fe 03f5 sr          @0x03f5, $AC0.M
	0b04 009e 0030 lri         $AC0.M, #0x0030
	0b06 00fe 03f3 sr          @0x03f3, $AC0.M
	0b08 009e 0010 lri         $AC0.M, #0x0010
	0b0a 00fe 03f4 sr          @0x03f4, $AC0.M
	0b0c 009e 0096 lri         $AC0.M, #0x0096
	0b0e 00fe 03f1 sr          @0x03f1, $AC0.M
	0b10 02df      ret
}

void 0b11_Unk() {
	0b11 0080 0b00 lri         $AR0, #0x0b00
	0b13 8100      clr         $ACC0
	0b14 00de 03f0 lr          $AC0.M, @0x03f0
	0b16 8900      clr         $ACC1
	0b17 b100      tst         $ACC0
	0b18 0275      ifz         
		0b19 0550      addis       $ACC1, #0x50
	0b1a 00ff 03f0 sr          @0x03f0, $AC1.M
	0b1c 0200 0b60 addi        $AC0.M, #0x0b60
	0b1e 1c7e      mrr         $AR3, $AC0.M
	0b1f 009f 004e lri         $AC1.M, #0x004e
	0b21 02bf 03ac call        0x03ac
	0b23 02df      ret
}

void 0b24_Unk() {

	0b24 00de 03f1 lr          $AC0.M, @0x03f1
	0b26 0200 0b60 addi        $AC0.M, #0x0b60
	0b28 1c7e      mrr         $AR3, $AC0.M
	0b29 8100      clr         $ACC0
	0b2a 8900      clr         $ACC1
	0b2b 009f 00a0 lri         $AC1.M, #0x00a0
	0b2d 00de 03f1 lr          $AC0.M, @0x03f1
	0b2f 5d00      sub         $ACC1, $AC0.L
	0b30 009e 0050 lri         $AC0.M, #0x0050
	0b32 0750      cmpis       $ACC1, #0x50
	0b33 0270      ifns        
		0b34 5d00      sub         $ACC1, $AC0.L
	0b35 00da 03f2 lr          $AX0.H, @0x03f2
	0b37 8600      tstaxh      $AX0.H
	0b38 0290 0b56 jns         0x0b56
	0b3a 00de 03f3 lr          $AC0.M, @0x03f3
	0b3c 5c00      sub         $ACC0, $AC1.L
	0b3d 0293 0b41 jle         0x0b41
	0b3f 029f 0b5b jmp         0x0b5b
	0b41 00db 03f7 lr          $AX1.H, @0x03f7
	0b43 009e 8000 lri         $AC0.M, #0x8000
	0b45 4600      addr        $ACC0, $AX1.H
	0b46 029f 0b4d jmp         0x0b4d
	0b48 00db 03f7 lr          $AX1.H, @0x03f7
	0b4a 009e 8000 lri         $AC0.M, #0x8000
	0b4c 5600      subr        $ACC0, $AX1.H
	0b4d 00fe 03f5 sr          @0x03f5, $AC0.M
	0b4f 1fda      mrr         $AC0.M, $AX0.H
	0b50 7c00      neg         $ACC0
	0b51 1f5e      mrr         $AX0.H, $AC0.M
	0b52 00fe 03f2 sr          @0x03f2, $AC0.M
	0b54 029f 0b5b jmp         0x0b5b
	0b56 00de 03f4 lr          $AC0.M, @0x03f4
	0b58 5d00      sub         $ACC1, $AC0.L
	0b59 0293 0b48 jle         0x0b48
	0b5b 8900      clr         $ACC1
	0b5c 00dd 03f5 lr          $AC1.L, @0x03f5
	0b5e 1501      lsl         $ACC1, #1
	0b5f 8100      clr         $ACC0
	0b60 00dc 03f6 lr          $AC0.L, @0x03f6
	0b62 008b 009f lri         $WR3, #0x009f
	0b64 0080 0b00 lri         $AR0, #0x0b00
	0b66 0099 0000 lri         $AX1.L, #0x0000
	0b68 1150 0b6f bloopi      #0x50, 0x0b6f
	0b6a 1878      lrr         $AX0.L, @$AR3
	0b6b 4c00      add         $ACC0, $AC1.L
	0b6c 1cfe      mrr         $IX3, $AC0.M
	0b6d 001f      addarn      $AR3, $IX3
	0b6e 1fd9      mrr         $AC0.M, $AX1.L
	0b6f 1b18      srri        @$AR0, $AX0.L
	0b70 009f 0b60 lri         $AC1.M, #0x0b60
	0b72 1fc3      mrr         $AC0.M, $AR3
	0b73 5c00      sub         $ACC0, $AC1.L
	0b74 00fe 03f1 sr          @0x03f1, $AC0.M
	0b76 00fc 03f6 sr          @0x03f6, $AC0.L
	0b78 008b ffff lri         $WR3, #0xffff
	0b7a 02df      ret
}

void 0b7b_Unk() {
	0b7b 009f 0050 lri         $AC1.M, #0x0050
	0b7d 0080 0b00 lri         $AR0, #0x0b00
	0b7f 0083 0d60 lri         $AR3, #0x0d60
	0b81 0098 3fff lri         $AX0.L, #0x3fff
	0b83 02bf 03bd call        0x03bd
	0b85 009f 0050 lri         $AC1.M, #0x0050
	0b87 0080 0b00 lri         $AR0, #0x0b00
	0b89 0083 0d00 lri         $AR3, #0x0d00
	0b8b 0098 3fff lri         $AX0.L, #0x3fff
	0b8d 02bf 03bd call        0x03bd
	0b8f 02df      ret
}

void 0b90_Unk() {
	0b90 8a00      m2          
	0b91 8f00      set40       
	0b92 8100      clr         $ACC0
	0b93 00de 0404 lr          $AC0.M, @0x0404
	0b95 b100      tst         $ACC0
	0b96 0295 0b9d jz          0x0b9d
	0b98 8100      clr         $ACC0
	0b99 00fe 0478 sr          @0x0478, $AC0.M
	0b9b 00fe 0479 sr          @0x0479, $AC0.M
	0b9d 00df 0479 lr          $AC1.M, @0x0479
	0b9f 00db 0478 lr          $AX1.H, @0x0478
	0ba1 0099 0000 lri         $AX1.L, #0x0000
	0ba3 0084 0000 lri         $IX0, #0x0000
	0ba5 1150 0bae bloopi      #0x50, 0x0bae
		0ba7 199e      lrrn        $AC0.M, @$AR0
		0ba8 5c7c      sub'ln      $ACC0, $AC1.L : $AC1.M, @$AR0
		0ba9 c000      mulc        $AC0.M, $AX0.H
		0baa 6e00      movp        $ACC0
		0bab 1488      asl         $ACC0, #8
		0bac 4a00      addax       $ACC0, $AX1.L
		0bad 1b1e      srri        @$AR0, $AC0.M
		0bae 1f7e      mrr         $AX1.H, $AC0.M
	0baf 00fb 0478 sr          @0x0478, $AX1.H
	0bb1 00ff 0479 sr          @0x0479, $AC1.M
	0bb3 8b00      m0          
	0bb4 8e00      set16       
	0bb5 02df      ret
}

void 0bb6_Unk() {
	0bb6 0080 01be lri         $AR0, #0x01be
	0bb8 1918      lrri        $AX0.L, @$AR0
	0bb9 191a      lrri        $AX0.H, @$AR0
	0bba 0080 0180 lri         $AR0, #0x0180
	0bbc 0083 0180 lri         $AR3, #0x0180
	0bbe 9070      mul'l       $AX0.L, $AX0.H : $AC0.M, @$AR0
	0bbf 1ffe      mrr         $AC1.M, $AC0.M
	0bc0 1120 0bc7 bloopi      #0x20, 0x0bc7
		0bc2 7c00      neg         $ACC0
		0bc3 d450      mulcac'l    $AC1.M, $AX0.H, $ACC0 : $AX0.H, @$AR0
		0bc4 6533      movr's      $ACC1, $AX0.H : @$AR3, $AC0.M
		0bc5 c550      mulcac'l    $AC0.M, $AX0.H, $ACC1 : $AX0.H, @$AR0
		0bc6 1501      lsl         $ACC1, #1
		0bc7 643b      movr's      $ACC0, $AX0.H : @$AR3, $AC1.M
	0bc8 0080 01fe lri         $AR0, #0x01fe
	0bca 191a      lrri        $AX0.H, @$AR0
	0bcb 1918      lrri        $AX0.L, @$AR0
	0bcc 0080 01c0 lri         $AR0, #0x01c0
	0bce 0083 01c0 lri         $AR3, #0x01c0
	0bd0 1ff8      mrr         $AC1.M, $AX0.L
	0bd1 9070      mul'l       $AX0.L, $AX0.H : $AC0.M, @$AR0
	0bd2 f800      addpaxz     $ACC0, $AX0.H
	0bd3 0240 01ff andi        $AC0.M, #0x01ff
	0bd5 0260 2000 ori         $AC0.M, #0x2000
	0bd7 02bf 0bda call        0x0bda
	0bd9 02df      ret
}

void 0bda_Unk() {
	0bda b900      tst         $ACC1
	0bdb 0272      ifg         
		0bdc 7c00      neg         $ACC0
	0bdd 1f7e      mrr         $AX1.H, $AC0.M
	0bde 4700      addr        $ACC1, $AX1.H
	0bdf 1110 0be4 bloopi      #0x10, 0x0be4
	0be1 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
	0be2 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
	0be3 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
	0be4 473b      addr's      $ACC1, $AX1.H : @$AR3, $AC1.M
	0be5 02df      ret
}

void 0be6_Nop() {
	0be6 0000      nop         
	0be7 0000      nop         
	0be8 0000      nop         
	0be9 0000      nop         
	0bea 0000      nop         
	0beb 0000      nop         
	0bec 0000      nop         
	0bed 0000      nop         
	0bee 0000      nop         
	0bef 0000      nop         
}