mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2024-12-28 02:56:40 +01:00
8dc01b685f
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6059 8ced0084-cf51-0410-be5f-012b33b47a6e
1986 lines
68 KiB
Plaintext
1986 lines
68 KiB
Plaintext
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
|
|
000f 0000 nop
|
|
|
|
// Entry
|
|
void 0010_Entry()
|
|
{
|
|
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
|
|
0021 009f 1000 lri $AC1.M, #0x1000
|
|
0023 0080 0000 lri $AR0, #0x0000
|
|
0025 005f loop $AC1.M
|
|
0026 1b1e srri @$AR0, $AC0.M // clear dram
|
|
0027 26ff lrs $AC0.M, @CMBL
|
|
0028 16fc 8888 si @DMBH, #0x8888
|
|
002a 16fd 1111 si @DMBL, #0x1111 // SENDMAIL 0x88881111
|
|
002c 26fc lrs $AC0.M, @DMBH
|
|
002d 02a0 8000 andf $AC0.M, #0x8000
|
|
002f 029c 002c jlnz 0x002c
|
|
}
|
|
|
|
void 0031_MainLoop()
|
|
{
|
|
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 // wait for mail
|
|
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
|
|
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 // jump on CMD?
|
|
0049 009e 8000 lri $AC0.M, #0x8000
|
|
004b 00dc 0343 lr $AC0.L, @0x0343
|
|
004d 02bf 005a call 005a_SendMail(AC0.M,AC0.L) // sendmail 0x8000????
|
|
004f 029f 0031 jmp 0x0031
|
|
}
|
|
|
|
void 0051_WaitForMailAndStoreIt(DEST $AR0)
|
|
{
|
|
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_SendMail(AC0.M,AC0.L)
|
|
{
|
|
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
|
|
}
|
|
|
|
//CMDs
|
|
0062 029f 0049 jmp 0x0049 // CMD_0
|
|
0064 029f 02bd jmp 0x02bd // CMD_1
|
|
0066 029f 0470 jmp 0x0470 // CMD_2
|
|
0068 029f 0031 jmp 0x0031 // CMD_3
|
|
006a 029f 00df jmp 0x00df // CMD_4
|
|
006c 029f 00f1 jmp 0x00f1 // CMD_5
|
|
006e 029f 05bb jmp 0x05bb // CMD_6
|
|
0070 029f 056f jmp 0x056f // CMD_7
|
|
0072 029f 05d7 jmp 0x05d7 // CMD_8
|
|
0074 029f 059f jmp 0x059f // CMD_9
|
|
0076 029f 0741 jmp 0x0741 // CMD_A
|
|
0078 029f 0618 jmp 0x0618 // CMD_B - jump to IROM area (0x8644)
|
|
007a 029f 0203 jmp 0x0203 // CMD_C
|
|
|
|
{
|
|
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 // DMEM->CPU
|
|
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
|
|
}
|
|
|
|
{
|
|
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
|
|
}
|
|
|
|
{
|
|
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_WaitForDMAend()
|
|
{
|
|
00a5 00de ffc9 lr $AC0.M, @DSCR
|
|
00a7 02a0 0004 andf $AC0.M, #0x0004
|
|
00a9 029c 00a5 jlnz 0x00a5
|
|
00ab 02df ret
|
|
}
|
|
|
|
void 00ac_AccZeldaTypeRead()
|
|
{
|
|
00ac 193e lrri $AC0.M, @$AR1
|
|
00ad 193c lrri $AC0.L, @$AR1
|
|
00ae 0240 7fff andi $AC0.M, #0x7fff
|
|
00b0 02bf 00ba call 00ba_AccSetup()
|
|
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_AccSetup()
|
|
{
|
|
00ba 1c3f mrr $AR1, $AC1.M
|
|
00bb 009f 0005 lri $AC1.M, #0x0005
|
|
00bd 2fd1 srs @SampleFormat, $AC1.M // reads will be u8
|
|
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, $ACC1
|
|
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_AccZeldaTypeWrite()
|
|
{
|
|
00d0 193e lrri $AC0.M, @$AR1
|
|
00d1 193c lrri $AC0.L, @$AR1
|
|
00d2 0260 8000 ori $AC0.M, #0x8000
|
|
00d4 02bf 00ba call 00ba_AccSetup()
|
|
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
|
|
}
|
|
|
|
{
|
|
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
|
|
}
|
|
|
|
{
|
|
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, $ACC1
|
|
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
|
|
}
|
|
|
|
//DSPLLE errors here!!! readw/writes from 0x3???
|
|
{
|
|
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 1128 0128 bloopi #0x28, 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
|
|
0129 02df ret
|
|
}
|
|
|
|
{
|
|
012a 8f00 set40
|
|
012b 1c03 mrr $AR0, $AR3
|
|
012c 00db 038e lr $AX1.H, @0x038e
|
|
012e 009a 0004 lri $AX0.H, #0x0004
|
|
0130 1978 lrri $AX0.L, @$AR3
|
|
0131 a843 mulx'l $AX0.L, $AX1.H : $AX0.L, @$AR3
|
|
0132 ae00 mulxmv $AX0.L, $AX1.H, $ACC0
|
|
0133 1128 0138 bloopi #0x28, 0x0138
|
|
0135 38c3 asrnrx'l $ACC0, $AX0.H : $AX0.L, @$AR3
|
|
0136 ae30 mulxmv's $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
|
|
0137 38c3 asrnrx'l $ACC0, $AX0.H : $AX0.L, @$AR3
|
|
0138 ae30 mulxmv's $AX0.L, $AX1.H, $ACC0 : @$AR0, $AC0.M
|
|
0139 8e00 set16
|
|
013a 02df ret
|
|
}
|
|
|
|
{
|
|
013b 00f9 0361 sr @0x0361, $AX1.L
|
|
013d 1fc0 mrr $AC0.M, $AR0
|
|
013e 0200 fffc addi $AC0.M, #0xfffc
|
|
0140 1c1e mrr $AR0, $AC0.M
|
|
0141 1c5e mrr $AR2, $AC0.M
|
|
0142 0083 0424 lri $AR3, #0x0424
|
|
0144 197e lrri $AC0.M, @$AR3
|
|
0145 197f lrri $AC1.M, @$AR3
|
|
0146 80a2 nx'sl : $AC0.M, $AX0.H
|
|
0147 64a3 movr'sl $ACC0, $AX0.H : $AC1.M, $AX0.H
|
|
0148 6530 movr's $ACC1, $AX0.H : @$AR0, $AC0.M
|
|
0149 1b1f srri @$AR0, $AC1.M
|
|
014a 1c02 mrr $AR0, $AR2
|
|
014b 8100 clr $ACC0
|
|
014c 00de 0402 lr $AC0.M, @0x0402
|
|
014e 00fe 0362 sr @0x0362, $AC0.M
|
|
0150 1474 lsr $ACC0, #-12
|
|
0151 1f7e mrr $AX1.H, $AC0.M
|
|
0152 1f3c mrr $AX1.L, $AC0.L
|
|
0153 8900 clr $ACC1
|
|
0154 00dd 0418 lr $AC1.L, @0x0418
|
|
0156 1504 lsl $ACC1, #4
|
|
0157 0604 cmpis $AC0.M, #0x04
|
|
0158 0290 01b0 jge 0x01b0
|
|
015a 1fdd mrr $AC0.M, $AC1.L
|
|
015b 0082 0c00 lri $AR2, #0x0c00
|
|
015d 1050 loopi #0x50
|
|
015e 4b2a addax's $ACC1, $AX1 : @$AR2, $AC1.L
|
|
015f 1fbe mrr $AC1.L, $AC0.M
|
|
0160 00fe 0360 sr @0x0360, $AC0.M
|
|
0162 8900 clr $ACC1
|
|
0163 1fbe mrr $AC1.L, $AC0.M
|
|
0164 009a fff8 lri $AX0.H, #0xfff8
|
|
0166 009b 00fc lri $AX1.H, #0x00fc
|
|
0168 00d8 0361 lr $AX0.L, @0x0361
|
|
016a 0082 0c00 lri $AR2, #0x0c00
|
|
016c 0083 0c00 lri $AR3, #0x0c00
|
|
016e 195e lrri $AC0.M, @$AR2
|
|
016f 3480 lsrnrx $ACC0, $AX0.H
|
|
0170 1128 0175 bloopi #0x28, 0x0175
|
|
0172 367a andr'l $AC0.M, $AX1.H : $AC1.M, @$AR2
|
|
0173 35b3 lsrnrx's $ACC1, $AX0.H : @$AR3, $AC0.M
|
|
0174 3772 andr'l $AC1.M, $AX1.H : $AC0.M, @$AR2
|
|
0175 34bb lsrnrx's $ACC0, $AX0.H : @$AR3, $AC1.M
|
|
0176 8a00 m2
|
|
0177 0082 0c00 lri $AR2, #0x0c00
|
|
0179 00dd 0418 lr $AC1.L, @0x0418
|
|
017b 1504 lsl $ACC1, #4
|
|
017c 1fe0 mrr $AC1.M, $AR0
|
|
017d 8100 clr $ACC0
|
|
017e 00de 0362 lr $AC0.M, @0x0362
|
|
0180 1474 lsr $ACC0, #-12
|
|
0181 1f7e mrr $AX1.H, $AC0.M
|
|
0182 1f3c mrr $AX1.L, $AC0.L
|
|
0183 8f00 set40
|
|
0184 1943 lrri $AR3, @$AR2
|
|
0185 4bc3 addax'ld $ACC1, $AX1 : $AX0.L, $AX1.L, @$AR3
|
|
0186 90c3 mul'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0187 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0188 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0189 f200 madd $AX0.L, $AX0.H
|
|
018a fe00 movpz $ACC0
|
|
018b 1c1f mrr $AR0, $AC1.M
|
|
018c 1943 lrri $AR3, @$AR2
|
|
018d 4bc3 addax'ld $ACC1, $AX1 : $AX0.L, $AX1.L, @$AR3
|
|
018e 90c3 mul'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
018f 114e 0197 bloopi #0x4e, 0x0197
|
|
0191 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0192 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0193 f231 madd's $AX0.L, $AX0.H : @$AR1, $AC0.M
|
|
0194 1c1f mrr $AR0, $AC1.M
|
|
0195 1943 lrri $AR3, @$AR2
|
|
0196 4bc3 addax'ld $ACC1, $AX1 : $AX0.L, $AX1.L, @$AR3
|
|
0197 92c3 mulmvz'ld $AX0.L, $AX0.H, $ACC0 : $AX0.L, $AX1.L, @$AR3
|
|
0198 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
0199 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
019a f231 madd's $AX0.L, $AX0.H : @$AR1, $AC0.M
|
|
019b fe00 movpz $ACC0
|
|
019c 1b3e srri @$AR1, $AC0.M
|
|
019d 8b00 m0
|
|
019e 8e00 set16
|
|
019f 00fe 041b sr @0x041b, $AC0.M
|
|
01a1 1c1f mrr $AR0, $AC1.M
|
|
01a2 150c lsl $ACC1, #12
|
|
01a3 0340 0fff andi $AC1.M, #0x0fff
|
|
01a5 00ff 0418 sr @0x0418, $AC1.M
|
|
01a7 0083 0424 lri $AR3, #0x0424
|
|
01a9 191e lrri $AC0.M, @$AR0
|
|
01aa 191f lrri $AC1.M, @$AR0
|
|
01ab 80a0 nx'ls : $AX0.H, $AC0.M
|
|
01ac 64a1 movr'ls $ACC0, $AX0.H : $AX0.H, $AC1.M
|
|
01ad 6533 movr's $ACC1, $AX0.H : @$AR3, $AC0.M
|
|
01ae 1b7f srri @$AR3, $AC1.M
|
|
01af 02df ret
|
|
}
|
|
|
|
{
|
|
01b0 1fe0 mrr $AC1.M, $AR0
|
|
01b1 1c1f mrr $AR0, $AC1.M
|
|
01b2 1128 01b9 bloopi #0x28, 0x01b9
|
|
01b4 4b70 addax'l $ACC1, $AX1 : $AC0.M, @$AR0
|
|
01b5 1b3e srri @$AR1, $AC0.M
|
|
01b6 1c1f mrr $AR0, $AC1.M
|
|
01b7 4b70 addax'l $ACC1, $AX1 : $AC0.M, @$AR0
|
|
01b8 1b3e srri @$AR1, $AC0.M
|
|
01b9 1c1f mrr $AR0, $AC1.M
|
|
01ba 029f 019f jmp 0x019f
|
|
}
|
|
|
|
{
|
|
01bc 8a00 m2
|
|
01bd 0088 0007 lri $WR0, #0x0007
|
|
01bf 1150 01cc bloopi #0x50, 0x01cc
|
|
{
|
|
01c1 1c61 mrr $AR3, $AR1
|
|
01c2 84c3 clrp'ld : $AX0.L, $AX1.L, @$AR3
|
|
01c3 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c4 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c5 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c6 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c7 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c8 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01c9 f2c3 madd'ld $AX0.L, $AX0.H : $AX0.L, $AX1.L, @$AR3
|
|
01ca f200 madd $AX0.L, $AX0.H
|
|
01cb fe00 movpz $ACC0
|
|
01cc 1b3e srri @$AR1, $AC0.M
|
|
}
|
|
01cd 0088 ffff lri $WR0, #0xffff
|
|
01cf 8b00 m0
|
|
01d0 02df ret
|
|
}
|
|
|
|
{
|
|
01d1 0088 0003 lri $WR0, #0x0003
|
|
01d3 0085 0000 lri $IX1, #0x0000
|
|
01d5 0087 0000 lri $IX3, #0x0000
|
|
01d7 1fc2 mrr $AC0.M, $AR2
|
|
01d8 195b lrri $AX1.H, @$AR2
|
|
01d9 1959 lrri $AX1.L, @$AR2
|
|
01da 195f lrri $AC1.M, @$AR2
|
|
01db 195a lrri $AX0.H, @$AR2
|
|
01dc 1c5e mrr $AR2, $AC0.M
|
|
01dd 1fda mrr $AC0.M, $AX0.H
|
|
01de 1c61 mrr $AR3, $AR1
|
|
01df 8a00 m2
|
|
01e0 8f00 set40
|
|
01e1 191a lrri $AX0.H, @$AR0
|
|
01e2 b850 mulx'l $AX0.H, $AX1.H : $AX0.H, @$AR0
|
|
01e3 e250 maddx'l $AX0.H, $AX1.L : $AX0.H, @$AR0
|
|
01e4 ea50 maddc'l $AC1.M, $AX1.L : $AX0.H, @$AR0
|
|
01e5 e8e8 maddc'ldm $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
|
|
01e6 b650 mulxmv'l $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
|
|
01e7 1127 01f2 bloopi #0x27, 0x01f2
|
|
{
|
|
01e9 e3a8 maddx'lsm $AX0.H, $AX1.H : $AX0.H, $AC0.M
|
|
01ea 197e lrri $AC0.M, @$AR3
|
|
01eb e850 maddc'l $AC0.M, $AX1.L : $AX0.H, @$AR0
|
|
01ec eaf8 maddc'ldm $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
|
|
01ed bf50 mulxmv'l $AX0.H, $AX1.H, $ACC1 : $AX0.H, @$AR0
|
|
01ee e2a9 maddx'lsm $AX0.H, $AX1.L : $AX0.H, $AC1.M
|
|
01ef 197f lrri $AC1.M, @$AR3
|
|
01f0 ea50 maddc'l $AC1.M, $AX1.L : $AX0.H, @$AR0
|
|
01f1 e8e8 maddc'ldm $AC0.M, $AX1.L : $AX0.H, $AX1.L, @$AR0
|
|
01f2 b650 mulxmv'l $AX0.H, $AX1.L, $ACC0 : $AX0.H, @$AR0
|
|
}
|
|
01f3 e3a8 maddx'lsm $AX0.H, $AX1.H : $AX0.H, $AC0.M
|
|
01f4 197e lrri $AC0.M, @$AR3
|
|
01f5 e850 maddc'l $AC0.M, $AX1.L : $AX0.H, @$AR0
|
|
01f6 eaf8 maddc'ldm $AC1.M, $AX1.L : $AX0.H, $AX1.H, @$AR0
|
|
01f7 bf00 mulxmv $AX0.H, $AX1.H, $ACC1
|
|
01f8 1bff srrn @$AR3, $AC1.M
|
|
01f9 197f lrri $AC1.M, @$AR3
|
|
01fa 8e00 set16
|
|
01fb 8b00 m0
|
|
01fc 0088 ffff lri $WR0, #0xffff
|
|
01fe 1b5b srri @$AR2, $AX1.H
|
|
01ff 1b59 srri @$AR2, $AX1.L
|
|
0200 1b5f srri @$AR2, $AC1.M
|
|
0201 1b5e srri @$AR2, $AC0.M
|
|
0202 02df ret
|
|
}
|
|
|
|
{
|
|
0203 0080 0346 lri $AR0, #0x0346
|
|
0205 02bf 0051 call 0x0051
|
|
0207 02bf 0051 call 0x0051
|
|
0209 0081 0346 lri $AR1, #0x0346
|
|
020b 009f 0580 lri $AC1.M, #0x0580
|
|
020d 0080 0080 lri $AR0, #0x0080
|
|
020f 02bf 007c call 0x007c
|
|
0211 0081 0348 lri $AR1, #0x0348
|
|
0213 009f 0c00 lri $AC1.M, #0x0c00
|
|
0215 0080 0080 lri $AR0, #0x0080
|
|
0217 02bf 007c call 0x007c
|
|
0219 0080 0c00 lri $AR0, #0x0c00
|
|
021b 0081 0580 lri $AR1, #0x0580
|
|
021d 02bf 01d1 call 0x01d1
|
|
021f 0081 0346 lri $AR1, #0x0346
|
|
0221 009f 0580 lri $AC1.M, #0x0580
|
|
0223 0080 0080 lri $AR0, #0x0080
|
|
0225 02bf 0089 call 0x0089
|
|
0227 0081 0348 lri $AR1, #0x0348
|
|
0229 009f 0c00 lri $AC1.M, #0x0c00
|
|
022b 0080 0080 lri $AR0, #0x0080
|
|
022d 02bf 0089 call 0x0089
|
|
022f 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
void 0231_FormatAudioSynths(format AC0.M)
|
|
{
|
|
0231 8100 clr $ACC0
|
|
0232 1f5e mrr $AX0.H, $AC0.M
|
|
0233 00d8 0402 lr $AX0.L, @0x0402
|
|
0235 00dc 0418 lr $AC0.L, @0x0418
|
|
0237 0080 0520 lri $AR0, #0x0520
|
|
0239 00df 0440 lr $AC1.M, @0x0440
|
|
023b 1501 lsl $ACC1, #1
|
|
023c 0340 007e andi $AC1.M, #0x007e
|
|
023e 0300 0246 addi $AC1.M, #0x0246
|
|
0240 1c5f mrr $AR2, $AC1.M
|
|
0241 175f callr $AR2 // call 0x0246
|
|
0242 00fc 0418 sr @0x0418, $AC0.L
|
|
0244 029f 04e7 jmp 0x04e7 // dummy
|
|
0246 029f 0257 jmp 0x0257 // 0x0 - Synth0
|
|
0248 029f 028f jmp 0x028f // 0x1 - Synth1
|
|
024a 029f 0277 jmp 0x0277 // 0x2 - Synth2
|
|
024c 029f 0267 jmp 0x0267 // 0x3 - Synth3
|
|
024e 029f 0292 jmp 0x0292 // 0x4 - Synth4
|
|
0250 029f 0256 jmp 0x0256 // 0x5 - dummy
|
|
0252 029f 02b1 jmp 0x02b1 // 0x6 - Synth6
|
|
0254 029f 02ae jmp 0x02ae // 0x7 - Synth7
|
|
0256 02df ret
|
|
}
|
|
|
|
void 0257_Synth0()
|
|
{
|
|
0257 1401 lsl $ACC0, #1
|
|
0258 009b c000 lri $AX1.H, #0xc000
|
|
025a 0099 4000 lri $AX1.L, #0x4000
|
|
025c 1150 0264 bloopi #0x50, 0x0264
|
|
{
|
|
025e 02c0 0001 andcf $AC0.M, #0x0001
|
|
0260 027c iflnz
|
|
0261 1b1b srri @$AR0, $AX1.H
|
|
0262 027d iflz
|
|
0263 1b19 srri @$AR0, $AX1.L
|
|
0264 4800 addax $ACC0, $AX0
|
|
}
|
|
0265 147f lsr $ACC0, #-1
|
|
0266 02df ret
|
|
}
|
|
|
|
void 0267_Synth3()
|
|
{
|
|
0267 1401 lsl $ACC0, #1
|
|
0268 009b c000 lri $AX1.H, #0xc000
|
|
026a 0099 4000 lri $AX1.L, #0x4000
|
|
026c 1150 0274 bloopi #0x50, 0x0274
|
|
{
|
|
026e 02c0 0003 andcf $AC0.M, #0x0003
|
|
0270 027c iflnz
|
|
0271 1b1b srri @$AR0, $AX1.H
|
|
0272 027d iflz
|
|
0273 1b19 srri @$AR0, $AX1.L
|
|
0274 4800 addax $ACC0, $AX0
|
|
}
|
|
0275 147f lsr $ACC0, #-1
|
|
0276 02df ret
|
|
}
|
|
|
|
void 0277_Synth2()
|
|
{
|
|
0277 1401 lsl $ACC0, #1
|
|
0278 0081 0ca0 lri $AR1, #0x0ca0
|
|
027a 009b c000 lri $AX1.H, #0xc000
|
|
027c 0099 4000 lri $AX1.L, #0x4000
|
|
027e 8900 clr $ACC1
|
|
027f 0082 0000 lri $AR2, #0x0000
|
|
0281 1150 028c bloopi #0x50, 0x028c
|
|
{
|
|
0283 02c0 0001 andcf $AC0.M, #0x0001
|
|
0285 027c iflnz
|
|
0286 1b1b srri @$AR0, $AX1.H
|
|
0287 027d iflz
|
|
0288 1b19 srri @$AR0, $AX1.L
|
|
0289 183d lrr $AC1.L, @$AR1
|
|
028a 4900 addax $ACC1, $AX0
|
|
028b 1fe2 mrr $AC1.M, $AR2
|
|
028c 4c39 add's $ACC0, $ACC1 : @$AR1, $AC1.M
|
|
}
|
|
028d 147f lsr $ACC0, #-1
|
|
028e 02df ret
|
|
}
|
|
|
|
void 028f_Synth1()
|
|
{
|
|
028f 1050 loopi #0x50
|
|
0290 4820 addax's $ACC0, $AX0 : @$AR0, $AC0.L
|
|
0291 02df ret
|
|
}
|
|
|
|
void 0292_Synth4()
|
|
{
|
|
0292 0082 0140 lri $AR2, #0x0140
|
|
0294 008a 003f lri $WR2, #0x003f
|
|
0296 0086 0000 lri $IX2, #0x0000
|
|
0298 1406 lsl $ACC0, #6
|
|
0299 8900 clr $ACC1
|
|
029a 1fb8 mrr $AC1.L, $AX0.L
|
|
029b 1506 lsl $ACC1, #6
|
|
029c 009b 003f lri $AX1.H, #0x003f
|
|
029e 009a 0000 lri $AX0.H, #0x0000
|
|
02a0 3600 andr $AC0.M, $AX1.H
|
|
02a1 1cde mrr $IX2, $AC0.M
|
|
02a2 001a addarn $AR2, $IX2
|
|
02a3 3400 andr $AC0.M, $AX0.H
|
|
02a4 1150 02aa bloopi #0x50, 0x02aa
|
|
{
|
|
02a6 4c00 add $ACC0, $ACC1
|
|
02a7 364a andr'l $AC0.M, $AX1.H : $AX1.L, @$AR2
|
|
02a8 1cde mrr $IX2, $AC0.M
|
|
02a9 340e andr'nr $AC0.M, $AX0.H : $AR2
|
|
02aa 1b19 srri @$AR0, $AX1.L
|
|
}
|
|
02ab 1fc2 mrr $AC0.M, $AR2
|
|
02ac 147a lsr $ACC0, #-6
|
|
02ad 02df ret
|
|
}
|
|
|
|
void 02b1_Synth7()
|
|
{
|
|
02ae 1050 loopi #0x50
|
|
02af 1b18 srri @$AR0, $AX0.L
|
|
02b0 02df ret
|
|
}
|
|
|
|
void 02b1_Synth6()
|
|
{
|
|
02b1 0083 0000 lri $AR3, #0x0000
|
|
02b3 140f lsl $ACC0, #15
|
|
02b4 4853 addax'l $ACC0, $AX0 : $AX0.H, @$AR3
|
|
02b5 1114 02ba bloopi #0x14, 0x02ba
|
|
{
|
|
02b7 48a2 addax'sl $ACC0, $AX0 : $AC0.M, $AX0.H
|
|
02b8 48a2 addax'sl $ACC0, $AX0 : $AC0.M, $AX0.H
|
|
02b9 48a2 addax'sl $ACC0, $AX0 : $AC0.M, $AX0.H
|
|
02ba 48a2 addax'sl $ACC0, $AX0 : $AC0.M, $AX0.H
|
|
}
|
|
02bb 146f lsr $ACC0, #-17
|
|
02bc 02df ret
|
|
}
|
|
|
|
{
|
|
02bd 0080 0380 lri $AR0, #0x0380
|
|
02bf 02bf 0051 call 0x0051
|
|
02c1 02bf 0051 call 0x0051
|
|
02c3 02bf 0051 call 0x0051
|
|
02c5 02bf 0051 call 0x0051
|
|
02c7 0081 0382 lri $AR1, #0x0382
|
|
02c9 009f 0000 lri $AC1.M, #0x0000
|
|
02cb 0080 0200 lri $AR0, #0x0200
|
|
02cd 02bf 007c call 0x007c
|
|
02cf 0081 0384 lri $AR1, #0x0384
|
|
02d1 009f 0300 lri $AC1.M, #0x0300
|
|
02d3 0080 0020 lri $AR0, #0x0020
|
|
02d5 02bf 007c call 0x007c
|
|
02d7 02bf 0351 call 0x0351
|
|
02d9 00de 0345 lr $AC0.M, @0x0345
|
|
02db 00fe 0342 sr @0x0342, $AC0.M
|
|
02dd 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
{
|
|
02df 00de 0344 lr $AC0.M, @0x0344
|
|
02e1 1404 lsl $ACC0, #4
|
|
02e2 0200 03a8 addi $AC0.M, #0x03a8
|
|
02e4 1c1e mrr $AR0, $AC0.M
|
|
02e5 02bf 0051 call 0x0051
|
|
02e7 02bf 0051 call 0x0051
|
|
02e9 02bf 0051 call 0x0051
|
|
02eb 00de 0345 lr $AC0.M, @0x0345
|
|
02ed 1b1e srri @$AR0, $AC0.M
|
|
02ee 00de 0344 lr $AC0.M, @0x0344
|
|
02f0 0200 03a4 addi $AC0.M, #0x03a4
|
|
02f2 1c1e mrr $AR0, $AC0.M
|
|
02f3 8100 clr $ACC0
|
|
02f4 1b1e srri @$AR0, $AC0.M
|
|
02f5 02df ret
|
|
}
|
|
|
|
{
|
|
02f6 00de 0344 lr $AC0.M, @0x0344
|
|
02f8 1404 lsl $ACC0, #4
|
|
02f9 0200 03b0 addi $AC0.M, #0x03b0
|
|
02fb 1c1e mrr $AR0, $AC0.M
|
|
02fc 02bf 0051 call 0x0051
|
|
02fe 02bf 0051 call 0x0051
|
|
0300 02bf 0051 call 0x0051
|
|
0302 02bf 0051 call 0x0051
|
|
0304 02df ret
|
|
}
|
|
|
|
{
|
|
0305 0081 034c lri $AR1, #0x034c
|
|
0307 009f 0400 lri $AC1.M, #0x0400
|
|
0309 0080 0080 lri $AR0, #0x0080
|
|
030b 02bf 007c call 0x007c
|
|
030d 02df ret
|
|
}
|
|
|
|
{
|
|
030e 0081 034c lri $AR1, #0x034c
|
|
0310 009f 0a00 lri $AC1.M, #0x0a00
|
|
0312 0080 0004 lri $AR0, #0x0004
|
|
0314 02bf 00a5 call 00a5_WaitForDMAend()
|
|
0316 02bf 007c call 0x007c
|
|
0318 0081 034c lri $AR1, #0x034c
|
|
031a 009f 0400 lri $AC1.M, #0x0400
|
|
031c 0080 0080 lri $AR0, #0x0080
|
|
031e 02bf 0095 call 0x0095
|
|
0320 02df ret
|
|
}
|
|
|
|
{
|
|
0321 0081 034c lri $AR1, #0x034c
|
|
0323 009f 0400 lri $AC1.M, #0x0400
|
|
0325 0080 0040 lri $AR0, #0x0040
|
|
0327 0081 034c lri $AR1, #0x034c
|
|
0329 193e lrri $AC0.M, @$AR1
|
|
032a 193c lrri $AC0.L, @$AR1
|
|
032b 0098 0000 lri $AX0.L, #0x0000
|
|
032d 7000 addaxl $ACC0, $AX0.L
|
|
032e 02bf 008b call 0x008b
|
|
0330 02df ret
|
|
}
|
|
|
|
{
|
|
0331 191e lrri $AC0.M, @$AR0
|
|
0332 191a lrri $AX0.H, @$AR0
|
|
0333 005f loop $AC1.M
|
|
0334 64a0 movr'ls $ACC0, $AX0.H : $AX0.H, $AC0.M
|
|
0335 1b7e srri @$AR3, $AC0.M
|
|
0336 1b7a srri @$AR3, $AX0.H
|
|
0337 02df ret
|
|
}
|
|
|
|
{
|
|
0338 191e lrri $AC0.M, @$AR0
|
|
0339 191a lrri $AX0.H, @$AR0
|
|
033a 007f 033f bloop $AC1.M, 0x033f
|
|
{
|
|
033c 32b2 not's $AC0.M : @$AR2, $AC0.M
|
|
033d 65a0 movr'ls $ACC1, $AX0.H : $AX0.H, $AC0.M
|
|
033e 33ba not's $AC1.M : @$AR2, $AC1.M
|
|
033f 64a1 movr'ls $ACC0, $AX0.H : $AX0.H, $AC1.M
|
|
}
|
|
0340 0000 nop
|
|
0341 02df ret
|
|
}
|
|
|
|
{
|
|
0342 8a00 m2
|
|
0343 157f lsr $ACC1, #-1
|
|
0344 1c20 mrr $AR1, $AR0
|
|
0345 1c03 mrr $AR0, $AR3
|
|
0346 193a lrri $AX0.H, @$AR1
|
|
0347 9051 mul'l $AX0.L, $AX0.H : $AX0.H, @$AR1
|
|
0348 925b mulmvz'l $AX0.L, $AX0.H, $ACC0 : $AX1.H, @$AR3
|
|
0349 007f 034e bloop $AC1.M, 0x034e
|
|
{
|
|
034b 4651 addr'l $ACC0, $AX1.H : $AX0.H, @$AR1
|
|
034c 92b2 mulmvz'sl $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
|
|
034d 4651 addr'l $ACC0, $AX1.H : $AX0.H, @$AR1
|
|
034e 92b2 mulmvz'sl $AX0.L, $AX0.H, $ACC0 : $AC0.M, $AX1.H
|
|
}
|
|
034f 8b00 m0
|
|
0350 02df ret
|
|
}
|
|
|
|
{
|
|
0351 0083 ffa0 lri $AR3, #0xffa0
|
|
0353 0080 0300 lri $AR0, #0x0300
|
|
0355 009f 000e lri $AC1.M, #0x000e
|
|
0357 1108 035c bloopi #0x08, 0x035c
|
|
{
|
|
0359 191e lrri $AC0.M, @$AR0
|
|
035a 1b7e srri @$AR3, $AC0.M
|
|
035b 191e lrri $AC0.M, @$AR0
|
|
035c 1b7e srri @$AR3, $AC0.M
|
|
}
|
|
035d 02df ret
|
|
}
|
|
|
|
{
|
|
035e 0080 0f40 lri $AR0, #0x0f40
|
|
0360 0082 0d00 lri $AR2, #0x0d00
|
|
0362 0083 0d60 lri $AR3, #0x0d60
|
|
0364 009f 0028 lri $AC1.M, #0x0028
|
|
0366 02bf 0338 call 0x0338
|
|
0368 8900 clr $ACC1
|
|
0369 009e 0050 lri $AC0.M, #0x0050
|
|
036b 0080 0ca0 lri $AR0, #0x0ca0
|
|
036d 005e loop $AC0.M
|
|
036e 1b1f srri @$AR0, $AC1.M
|
|
036f 0080 0f40 lri $AR0, #0x0f40
|
|
0371 005e loop $AC0.M
|
|
0372 1b1f srri @$AR0, $AC1.M
|
|
0373 0080 0fa0 lri $AR0, #0x0fa0
|
|
0375 005e loop $AC0.M
|
|
0376 1b1f srri @$AR0, $AC1.M
|
|
0377 02df ret
|
|
}
|
|
|
|
{
|
|
0378 0080 0dc0 lri $AR0, #0x0dc0
|
|
037a 009e 0180 lri $AC0.M, #0x0180
|
|
037c 8900 clr $ACC1
|
|
037d 005e loop $AC0.M
|
|
037e 1b1f srri @$AR0, $AC1.M
|
|
037f 02df ret
|
|
}
|
|
|
|
{
|
|
0380 00c0 03a0 lr $AR0, @0x03a0
|
|
0382 191a lrri $AX0.H, @$AR0
|
|
0383 00df 03a1 lr $AC1.M, @0x03a1
|
|
0385 009b 00a0 lri $AX1.H, #0x00a0
|
|
0387 0081 0393 lri $AR1, #0x0393
|
|
0389 18bc lrrd $AC0.L, @$AR1
|
|
038a b871 mulx'l $AX0.H, $AX1.H : $AC0.M, @$AR1
|
|
038b bc00 mulxac $AX0.H, $AX1.H, $ACC0
|
|
038c 0080 0050 lri $AR0, #0x0050
|
|
038e 0508 addis $AC1.M, #0x08
|
|
038f 02bf 007e call 0x007e
|
|
0391 00de 0390 lr $AC0.M, @0x0390
|
|
0393 02a0 0001 andf $AC0.M, #0x0001
|
|
0395 029d 039f jlz 0x039f
|
|
0397 0080 0398 lri $AR0, #0x0398
|
|
0399 009e 0008 lri $AC0.M, #0x0008
|
|
039b 00c1 03a1 lr $AR1, @0x03a1
|
|
039d 02bf 01bc call 0x01bc
|
|
039f 009f 0050 lri $AC1.M, #0x0050
|
|
03a1 00c0 03a1 lr $AR0, @0x03a1
|
|
03a3 8100 clr $ACC0
|
|
03a4 00de 0394 lr $AC0.M, @0x0394
|
|
03a6 b100 tst $ACC0
|
|
03a7 0295 03ae jz 0x03ae
|
|
03a9 1c7e mrr $AR3, $AC0.M
|
|
03aa 00d8 0395 lr $AX0.L, @0x0395
|
|
03ac 02bf 0342 call 0x0342
|
|
03ae 009f 0050 lri $AC1.M, #0x0050
|
|
03b0 00c0 03a1 lr $AR0, @0x03a1
|
|
03b2 8100 clr $ACC0
|
|
03b3 00de 0396 lr $AC0.M, @0x0396
|
|
03b5 b100 tst $ACC0
|
|
03b6 0295 03bd jz 0x03bd
|
|
03b8 1c7e mrr $AR3, $AC0.M
|
|
03b9 00d8 0397 lr $AX0.L, @0x0397
|
|
03bb 02bf 0342 call 0x0342
|
|
03bd 00de 0390 lr $AC0.M, @0x0390
|
|
03bf 02a0 0002 andf $AC0.M, #0x0002
|
|
03c1 02dd retlz
|
|
03c2 0080 0398 lri $AR0, #0x0398
|
|
03c4 009e 0008 lri $AC0.M, #0x0008
|
|
03c6 00c1 03a1 lr $AR1, @0x03a1
|
|
03c8 02bf 01bc call 0x01bc
|
|
03ca 02df ret
|
|
}
|
|
|
|
{
|
|
03cb 009f 0dc0 lri $AC1.M, #0x0dc0
|
|
03cd 00ff 03a1 sr @0x03a1, $AC1.M
|
|
03cf 009f 03a8 lri $AC1.M, #0x03a8
|
|
03d1 00ff 03a2 sr @0x03a2, $AC1.M
|
|
03d3 009f 03a4 lri $AC1.M, #0x03a4
|
|
03d5 00ff 03a0 sr @0x03a0, $AC1.M
|
|
03d7 1104 0400 bloopi #0x04, 0x0400
|
|
{
|
|
03d9 00c0 03a2 lr $AR0, @0x03a2
|
|
03db 0083 0390 lri $AR3, #0x0390
|
|
03dd 009f 000e lri $AC1.M, #0x000e
|
|
03df 02bf 0331 call 0x0331
|
|
03e1 00da 0390 lr $AX0.H, @0x0390
|
|
03e3 8600 tstaxh $AX0.H
|
|
03e4 0295 03f1 jz 0x03f1
|
|
03e6 00df 03a1 lr $AC1.M, @0x03a1
|
|
03e8 1c7f mrr $AR3, $AC1.M
|
|
03e9 0550 addis $AC1.M, #0x50
|
|
03ea 1c1f mrr $AR0, $AC1.M
|
|
03eb 009f 0006 lri $AC1.M, #0x0006
|
|
03ed 02bf 0331 call 0x0331
|
|
03ef 02bf 0380 call 0x0380
|
|
03f1 00de 03a2 lr $AC0.M, @0x03a2
|
|
03f3 0410 addis $AC0.M, #0x10
|
|
03f4 00fe 03a2 sr @0x03a2, $AC0.M
|
|
03f6 00de 03a1 lr $AC0.M, @0x03a1
|
|
03f8 0460 addis $AC0.M, #0x60
|
|
03f9 00fe 03a1 sr @0x03a1, $AC0.M
|
|
03fb 00de 03a0 lr $AC0.M, @0x03a0
|
|
03fd 7400 incm $AC0.M
|
|
03fe 00fe 03a0 sr @0x03a0, $AC0.M
|
|
0400 0000 nop
|
|
}
|
|
0401 02df ret
|
|
}
|
|
|
|
{
|
|
0402 00c0 03a0 lr $AR0, @0x03a0
|
|
0404 181a lrr $AX0.H, @$AR0
|
|
0405 8100 clr $ACC0
|
|
0406 181e lrr $AC0.M, @$AR0
|
|
0407 00db 0391 lr $AX1.H, @0x0391
|
|
0409 7400 incm $AC0.M
|
|
040a d100 cmpar $ACC1, $AX0.H
|
|
040b 0270 ifge
|
|
040c 8100 clr $ACC0
|
|
040d 1b1e srri @$AR0, $AC0.M
|
|
040e 00df 03a1 lr $AC1.M, @0x03a1
|
|
0410 009b 00a0 lri $AX1.H, #0x00a0
|
|
0412 0081 0393 lri $AR1, #0x0393
|
|
0414 18bc lrrd $AC0.L, @$AR1
|
|
0415 b871 mulx'l $AX0.H, $AX1.H : $AC0.M, @$AR1
|
|
0416 bc00 mulxac $AX0.H, $AX1.H, $ACC0
|
|
0417 0080 0050 lri $AR0, #0x0050
|
|
0419 02bf 008b call 0x008b
|
|
041b 02df ret
|
|
}
|
|
|
|
{
|
|
041c 009f 0dc0 lri $AC1.M, #0x0dc0
|
|
041e 00ff 03a1 sr @0x03a1, $AC1.M
|
|
0420 009f 03a8 lri $AC1.M, #0x03a8
|
|
0422 00ff 03a2 sr @0x03a2, $AC1.M
|
|
0424 009f 03a4 lri $AC1.M, #0x03a4
|
|
0426 00ff 03a0 sr @0x03a0, $AC1.M
|
|
0428 1104 0448 bloopi #0x04, 0x0448
|
|
{
|
|
042a 00c0 03a2 lr $AR0, @0x03a2
|
|
042c 0083 0390 lri $AR3, #0x0390
|
|
042e 009f 000e lri $AC1.M, #0x000e
|
|
0430 02bf 0331 call 0x0331
|
|
0432 00da 0390 lr $AX0.H, @0x0390
|
|
0434 8600 tstaxh $AX0.H
|
|
0435 0295 0439 jz 0x0439
|
|
0437 02bf 0402 call 0x0402
|
|
0439 00de 03a2 lr $AC0.M, @0x03a2
|
|
043b 0410 addis $AC0.M, #0x10
|
|
043c 00fe 03a2 sr @0x03a2, $AC0.M
|
|
043e 00de 03a1 lr $AC0.M, @0x03a1
|
|
0440 0460 addis $AC0.M, #0x60
|
|
0441 00fe 03a1 sr @0x03a1, $AC0.M
|
|
0443 00de 03a0 lr $AC0.M, @0x03a0
|
|
0445 7400 incm $AC0.M
|
|
0446 00fe 03a0 sr @0x03a0, $AC0.M
|
|
0448 0000 nop
|
|
}
|
|
0449 02df ret
|
|
}
|
|
|
|
{
|
|
044a 0081 0386 lri $AR1, #0x0386
|
|
044c 009f 03a8 lri $AC1.M, #0x03a8
|
|
044e 0080 0040 lri $AR0, #0x0040
|
|
0450 02bf 007c call 0x007c
|
|
0452 02df ret
|
|
}
|
|
|
|
{
|
|
0453 191e lrri $AC0.M, @$AR0
|
|
0454 189c lrrd $AC0.L, @$AR0
|
|
0455 4800 addax $ACC0, $AX0
|
|
0456 1b1e srri @$AR0, $AC0.M
|
|
0457 1b1c srri @$AR0, $AC0.L
|
|
0458 02df ret
|
|
0459 8100 clr $ACC0
|
|
045a 26fe lrs $AC0.M, @CMBH
|
|
045b 02c0 8000 andcf $AC0.M, #0x8000
|
|
045d 029c 045a jlnz 0x045a
|
|
045f 26ff lrs $AC0.M, @CMBL
|
|
0460 02df ret
|
|
}
|
|
|
|
{
|
|
0461 0080 0388 lri $AR0, #0x0388
|
|
0463 0081 0051 lri $AR1, #0x0051
|
|
0465 173f callr $AR1 // call 0x0051
|
|
0466 00de 0344 lr $AC0.M, @0x0344
|
|
0468 00fe 0341 sr @0x0341, $AC0.M
|
|
046a 00de 0345 lr $AC0.M, @0x0345
|
|
046c 00fe 038e sr @0x038e, $AC0.M
|
|
046e 173f callr $AR1 // call 0x0051
|
|
046f 02df ret
|
|
}
|
|
|
|
{
|
|
0470 02bf 0461 call 0x0461
|
|
0472 009e 8000 lri $AC0.M, #0x8000
|
|
0474 00dc 0341 lr $AC0.L, @0x0341
|
|
0476 02bf 005a call 005a_SendMail(AC0.M,AC0.L) // 0x8000????
|
|
0478 8100 clr $ACC0
|
|
0479 00fe 0355 sr @0x0355, $AC0.M
|
|
047b 02bf 044a call 0x044a
|
|
047d 00de 0341 lr $AC0.M, @0x0341
|
|
047f 007e 056c bloop $AC0.M, 0x056c
|
|
{
|
|
0481 02bf 035e call 0x035e
|
|
0483 02bf 03cb call 0x03cb
|
|
0485 02bf 0459 call 0x0459
|
|
0487 8100 clr $ACC0
|
|
0488 00fe 0354 sr @0x0354, $AC0.M
|
|
048a 00de 0342 lr $AC0.M, @0x0342
|
|
048c 007e 0538 bloop $AC0.M, 0x0538
|
|
{
|
|
048e 00d8 0354 lr $AX0.L, @0x0354
|
|
0490 009a 0100 lri $AX0.H, #0x0100
|
|
0492 8100 clr $ACC0
|
|
0493 00de 0380 lr $AC0.M, @0x0380
|
|
0495 00dc 0381 lr $AC0.L, @0x0381
|
|
0497 9000 mul $AX0.L, $AX0.H
|
|
0498 9400 mulac $AX0.L, $AX0.H, $ACC0
|
|
0499 00fe 034c sr @0x034c, $AC0.M
|
|
049b 00fc 034d sr @0x034d, $AC0.L
|
|
049d 02bf 0305 call 0x0305
|
|
049f 00da 0400 lr $AX0.H, @0x0400
|
|
04a1 8600 tstaxh $AX0.H
|
|
04a2 0295 0533 jz 0x0533
|
|
04a4 00da 0401 lr $AX0.H, @0x0401
|
|
04a6 8600 tstaxh $AX0.H
|
|
04a7 0294 0533 jnz 0x0533
|
|
04a9 00da 0406 lr $AX0.H, @0x0406
|
|
04ab 8600 tstaxh $AX0.H
|
|
04ac 0294 0930 jnz 0x0930
|
|
04ae 8100 clr $ACC0
|
|
04af 00de 0440 lr $AC0.M, @0x0440
|
|
04b1 0607 cmpis $AC0.M, #0x07 // format 0x7 or less (Synths)
|
|
04b2 0293 0231 jle 0x0231
|
|
04b4 0620 cmpis $AC0.M, #0x20 // format 0x20
|
|
04b5 0295 079e jz 0x079e
|
|
04b7 0621 cmpis $AC0.M, #0x21 // format 0x21
|
|
04b8 0295 07a7 jz 0x07a7
|
|
04ba 00d8 0402 lr $AX0.L, @0x0402
|
|
04bc 8100 clr $ACC0
|
|
04bd 8900 clr $ACC1
|
|
04be 00dc 0418 lr $AC0.L, @0x0418
|
|
04c0 8d00 set15
|
|
04c1 0099 0050 lri $AX1.L, #0x0050
|
|
04c3 a000 mulx $AX0.L, $AX1.L
|
|
04c4 a400 mulxac $AX0.L, $AX1.L, $ACC0
|
|
04c5 1404 lsl $ACC0, #4
|
|
04c6 8c00 clr15
|
|
04c7 1ffe mrr $AC1.M, $AC0.M
|
|
04c8 0083 0580 lri $AR3, #0x0580
|
|
04ca 00da 0441 lr $AX0.H, @0x0441
|
|
04cc 8600 tstaxh $AX0.H
|
|
04cd 0295 04dd jz 0x04dd
|
|
04cf 00da 0449 lr $AX0.H, @0x0449
|
|
04d1 8100 clr $ACC0
|
|
04d2 00de 044b lr $AC0.M, @0x044b
|
|
04d4 3800 orr $AC0.M, $AX0.H
|
|
04d5 0240 000f andi $AC0.M, #0x000f
|
|
04d7 0295 04dd jz 0x04dd
|
|
04d9 02bf 06a6 call 0x06a6
|
|
04db 029f 04df jmp 0x04df
|
|
04dd 02bf 0837 call 0x0837
|
|
//RAW21-jmp
|
|
04df 0080 0580 lri $AR0, #0x0580
|
|
04e1 0081 0520 lri $AR1, #0x0520
|
|
04e3 0099 0000 lri $AX1.L, #0x0000
|
|
04e5 02bf 013b call 0x013b
|
|
//RAW20-jmp
|
|
04e7 0080 0450 lri $AR0, #0x0450
|
|
04e9 0081 0520 lri $AR1, #0x0520
|
|
04eb 0082 0428 lri $AR2, #0x0428
|
|
04ed 0083 0453 lri $AR3, #0x0453
|
|
04ef 18fa lrrd $AX0.H, @$AR3
|
|
04f0 8600 tstaxh $AX0.H
|
|
04f1 0294 0501 jnz 0x0501
|
|
04f3 18fa lrrd $AX0.H, @$AR3
|
|
04f4 8600 tstaxh $AX0.H
|
|
04f5 0294 0501 jnz 0x0501
|
|
04f7 18fa lrrd $AX0.H, @$AR3
|
|
04f8 8600 tstaxh $AX0.H
|
|
04f9 0294 0501 jnz 0x0501
|
|
04fb 8100 clr $ACC0
|
|
04fc 18fe lrrd $AC0.M, @$AR3
|
|
04fd 0280 7fff cmpi $AC0.M, #0x7fff
|
|
04ff 0295 0505 jz 0x0505
|
|
0501 02bf 01d1 call 0x01d1
|
|
0503 029f 0505 jmp 0x0505
|
|
0505 8100 clr $ACC0
|
|
0506 1c9e mrr $IX0, $AC0.M
|
|
0507 1cde mrr $IX2, $AC0.M
|
|
0508 7400 incm $AC0.M
|
|
0509 1cfe mrr $IX3, $AC0.M
|
|
050a 8f00 set40
|
|
050b 0086 0002 lri $IX2, #0x0002
|
|
050d 0082 0408 lri $AR2, #0x0408
|
|
050f 1104 052f bloopi #0x04, 0x052f
|
|
{
|
|
0511 8100 clr $ACC0
|
|
0512 195e lrri $AC0.M, @$AR2
|
|
0513 1200 sbclr #0x00
|
|
0514 b100 tst $ACC0
|
|
0515 0275 ifz
|
|
0516 1300 sbset #0x00
|
|
0517 1c7e mrr $AR3, $AC0.M
|
|
0518 195e lrri $AC0.M, @$AR2
|
|
0519 14fa asr $ACC0, #-6
|
|
051a 1f5e mrr $AX0.H, $AC0.M
|
|
051b 1f1c mrr $AX0.L, $AC0.L
|
|
051c 185f lrr $AC1.M, @$AR2
|
|
051d 0080 0520 lri $AR0, #0x0520
|
|
051f 029d 0523 jlz 0x0523
|
|
0521 02bf 011e call 0x011e
|
|
0523 1b5f srri @$AR2, $AC1.M
|
|
0524 8100 clr $ACC0
|
|
0525 185e lrr $AC0.M, @$AR2
|
|
0526 000e xar $AR2
|
|
//; *** UNKNOWN OPCODE ***
|
|
// 0xc/0xd/0xe/0xf is one opcode where last 2 bits define target $AR? reg
|
|
// (new value is based on orig $AR? and %WR? reg value = unknown)
|
|
0527 b100 tst $ACC0
|
|
0528 0274 ifnz
|
|
0529 7800 decm $AC0.M
|
|
052a b100 tst $ACC0
|
|
052b 8900 clr $ACC1
|
|
052c 0275 ifz
|
|
052d 1a5f srr @$AR2, $AC1.M
|
|
052e 001a addarn $AR2, $IX2
|
|
052f 1b5e srri @$AR2, $AC0.M
|
|
}
|
|
0530 8e00 set16
|
|
0531 02bf 0321 call 0x0321
|
|
0533 00de 0354 lr $AC0.M, @0x0354
|
|
0535 7400 incm $AC0.M
|
|
0536 00fe 0354 sr @0x0354, $AC0.M
|
|
0538 0000 nop
|
|
}
|
|
0539 16fb 0001 si @DIRQ, #0x0001
|
|
053b 0083 0d00 lri $AR3, #0x0d00
|
|
053d 02bf 012a call 0x012a
|
|
053f 0081 0388 lri $AR1, #0x0388
|
|
0541 009f 0d00 lri $AC1.M, #0x0d00
|
|
0543 0080 0050 lri $AR0, #0x0050
|
|
0545 02bf 0089 call 0x0089
|
|
0547 0080 0fa0 lri $AR0, #0x0fa0
|
|
0549 0083 0d60 lri $AR3, #0x0d60
|
|
054b 009f 0050 lri $AC1.M, #0x0050
|
|
054d 0098 8000 lri $AX0.L, #0x8000
|
|
054f 02bf 0342 call 0x0342
|
|
0551 0083 0d60 lri $AR3, #0x0d60
|
|
0553 02bf 012a call 0x012a
|
|
0555 0081 038a lri $AR1, #0x038a
|
|
0557 009f 0d60 lri $AC1.M, #0x0d60
|
|
0559 0080 0050 lri $AR0, #0x0050
|
|
055b 02bf 0089 call 0x0089
|
|
055d 009a 0000 lri $AX0.H, #0x0000
|
|
055f 0098 00a0 lri $AX0.L, #0x00a0
|
|
0561 0080 0388 lri $AR0, #0x0388
|
|
0563 02bf 0453 call 0x0453
|
|
0565 0080 038a lri $AR0, #0x038a
|
|
0567 02bf 0453 call 0x0453
|
|
0569 02bf 041c call 0x041c
|
|
056b 0000 nop
|
|
056c 0000 nop
|
|
}
|
|
056d 029f 0031 jmp 0x0031
|
|
}
|
|
|
|
{
|
|
056f 0080 0346 lri $AR0, #0x0346
|
|
0571 02bf 0051 call 0x0051
|
|
0573 02bf 0051 call 0x0051
|
|
0575 0081 0346 lri $AR1, #0x0346
|
|
0577 193e lrri $AC0.M, @$AR1
|
|
0578 193c lrri $AC0.L, @$AR1
|
|
0579 009f 0400 lri $AC1.M, #0x0400
|
|
057b 00c0 0345 lr $AR0, @0x0345
|
|
057d 02bf 007e call 0x007e
|
|
057f 0081 0348 lri $AR1, #0x0348
|
|
0581 193e lrri $AC0.M, @$AR1
|
|
0582 193c lrri $AC0.L, @$AR1
|
|
0583 009f 0800 lri $AC1.M, #0x0800
|
|
0585 00c0 0345 lr $AR0, @0x0345
|
|
0587 02bf 007e call 0x007e
|
|
0589 0081 0346 lri $AR1, #0x0346
|
|
058b 193e lrri $AC0.M, @$AR1
|
|
058c 193c lrri $AC0.L, @$AR1
|
|
058d 009f 0800 lri $AC1.M, #0x0800
|
|
058f 00c0 0345 lr $AR0, @0x0345
|
|
0591 02bf 008b call 0x008b
|
|
0593 0081 0348 lri $AR1, #0x0348
|
|
0595 193e lrri $AC0.M, @$AR1
|
|
0596 193c lrri $AC0.L, @$AR1
|
|
0597 009f 0400 lri $AC1.M, #0x0400
|
|
0599 00c0 0345 lr $AR0, @0x0345
|
|
059b 02bf 008b call 0x008b
|
|
059d 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
{
|
|
059f 0080 0346 lri $AR0, #0x0346
|
|
05a1 02bf 0051 call 0x0051
|
|
05a3 02bf 0051 call 0x0051
|
|
05a5 0081 0346 lri $AR1, #0x0346
|
|
05a7 193e lrri $AC0.M, @$AR1
|
|
05a8 193c lrri $AC0.L, @$AR1
|
|
05a9 009f 0400 lri $AC1.M, #0x0400
|
|
05ab 00c0 0345 lr $AR0, @0x0345
|
|
05ad 02bf 007e call 0x007e
|
|
05af 0081 0348 lri $AR1, #0x0348
|
|
05b1 193e lrri $AC0.M, @$AR1
|
|
05b2 193c lrri $AC0.L, @$AR1
|
|
05b3 009f 0400 lri $AC1.M, #0x0400
|
|
05b5 00c0 0345 lr $AR0, @0x0345
|
|
05b7 02bf 008b call 0x008b
|
|
05b9 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
{
|
|
05bb 0080 0346 lri $AR0, #0x0346
|
|
05bd 02bf 0051 call 0x0051
|
|
05bf 02bf 0051 call 0x0051
|
|
05c1 0081 0346 lri $AR1, #0x0346
|
|
05c3 193e lrri $AC0.M, @$AR1
|
|
05c4 193c lrri $AC0.L, @$AR1
|
|
05c5 009f 0400 lri $AC1.M, #0x0400
|
|
05c7 00c0 0345 lr $AR0, @0x0345
|
|
05c9 02bf 00ae call 0x00ae
|
|
05cb 0081 0348 lri $AR1, #0x0348
|
|
05cd 193e lrri $AC0.M, @$AR1
|
|
05ce 193c lrri $AC0.L, @$AR1
|
|
05cf 009f 0400 lri $AC1.M, #0x0400
|
|
05d1 00c0 0345 lr $AR0, @0x0345
|
|
05d3 02bf 008b call 0x008b
|
|
05d5 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
{
|
|
05d7 0080 0346 lri $AR0, #0x0346
|
|
05d9 02bf 0051 call 0x0051
|
|
05db 02bf 0051 call 0x0051
|
|
05dd 0081 0346 lri $AR1, #0x0346
|
|
05df 193e lrri $AC0.M, @$AR1
|
|
05e0 193c lrri $AC0.L, @$AR1
|
|
05e1 009f 0400 lri $AC1.M, #0x0400
|
|
05e3 00c0 0344 lr $AR0, @0x0344
|
|
05e5 02bf 007e call 0x007e
|
|
05e7 0081 0348 lri $AR1, #0x0348
|
|
05e9 193e lrri $AC0.M, @$AR1
|
|
05ea 193c lrri $AC0.L, @$AR1
|
|
05eb 009f 0800 lri $AC1.M, #0x0800
|
|
05ed 00c0 0344 lr $AR0, @0x0344
|
|
05ef 02bf 007e call 0x007e
|
|
05f1 0080 0400 lri $AR0, #0x0400
|
|
05f3 0083 0800 lri $AR3, #0x0800
|
|
05f5 0084 0000 lri $IX0, #0x0000
|
|
05f7 00da 0345 lr $AX0.H, @0x0345
|
|
05f9 00df 0344 lr $AC1.M, @0x0344
|
|
05fb 8f00 set40
|
|
05fc 197b lrri $AX1.H, @$AR3
|
|
05fd b800 mulx $AX0.H, $AX1.H
|
|
05fe 197b lrri $AX1.H, @$AR3
|
|
05ff 007f 0604 bloop $AC1.M, 0x0604
|
|
0601 199e lrrn $AC0.M, @$AR0
|
|
0602 bc00 mulxac $AX0.H, $AX1.H, $ACC0
|
|
0603 80b2 nx'sl : $AC0.M, $AX1.H
|
|
0604 0000 nop
|
|
0605 8e00 set16
|
|
0606 0081 0346 lri $AR1, #0x0346
|
|
0608 193e lrri $AC0.M, @$AR1
|
|
0609 193c lrri $AC0.L, @$AR1
|
|
060a 009f 0400 lri $AC1.M, #0x0400
|
|
060c 00c0 0344 lr $AR0, @0x0344
|
|
060e 02bf 008b call 0x008b
|
|
0610 009e 8200 lri $AC0.M, #0x8200
|
|
0612 00dc 0344 lr $AC0.L, @0x0344
|
|
0614 02bf 005a call 005a_SendMail(AC0.M,AC0.L) // 0x8200????
|
|
0616 029f 0031 jmp 0x0031
|
|
}
|
|
|
|
{
|
|
0618 0080 0346 lri $AR0, #0x0346
|
|
061a 02bf 0051 call 0x0051
|
|
061c 0081 0346 lri $AR1, #0x0346
|
|
061e 009f 0400 lri $AC1.M, #0x0400
|
|
0620 00c0 0345 lr $AR0, @0x0345
|
|
0622 02bf 007c call 0x007c
|
|
0624 02bf 8644 call 0x8644 // iROM!!!!
|
|
0626 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
{
|
|
0628 009e 0430 lri $AC0.M, #0x0430
|
|
062a 2219 lrs $AX0.H, @0x0019
|
|
062b 4400 addr $ACC0, $AX0.H
|
|
062c 1c1e mrr $AR0, $AC0.M
|
|
062d 1fda mrr $AC0.M, $AX0.H
|
|
062e 3280 not $AC0.M
|
|
062f 7400 incm $AC0.M
|
|
0630 221a lrs $AX0.H, @0x001a
|
|
0631 4400 addr $ACC0, $AX0.H
|
|
0632 0090 0000 lri $AC0.H, #0x0000
|
|
0634 029f 0645 jmp 0x0645
|
|
}
|
|
|
|
{
|
|
0636 009e 0430 lri $AC0.M, #0x0430
|
|
0638 2219 lrs $AX0.H, @0x0019
|
|
0639 4400 addr $ACC0, $AX0.H
|
|
063a 1c1e mrr $AR0, $AC0.M
|
|
063b 1fda mrr $AC0.M, $AX0.H
|
|
063c 3280 not $AC0.M
|
|
063d 7400 incm $AC0.M
|
|
063e 221a lrs $AX0.H, @0x001a
|
|
063f 4400 addr $ACC0, $AX0.H
|
|
0640 0090 0000 lri $AC0.H, #0x0000
|
|
0642 8200 cmp
|
|
0643 0270 ifge
|
|
0644 1fdf mrr $AC0.M, $AC1.M
|
|
0645 1f3e mrr $AX1.L, $AC0.M
|
|
0646 02bf 0699 call 0x0699
|
|
0648 261c lrs $AC0.M, @0x001c
|
|
0649 241d lrs $AC0.L, @0x001d
|
|
064a 7200 addaxl $ACC0, $AX1.L
|
|
064b 5300 subr $ACC1, $AX1.L
|
|
064c 2e1c srs @0x001c, $AC0.M
|
|
064d 2c1d srs @0x001d, $AC0.L
|
|
064e 02df ret
|
|
}
|
|
|
|
{
|
|
064f 8100 clr $ACC0
|
|
0650 221c lrs $AX0.H, @0x001c
|
|
0651 201d lrs $AX0.L, @0x001d
|
|
0652 4800 addax $ACC0, $AX0
|
|
0653 147c lsr $ACC0, #-4
|
|
0654 2e1e srs @0x001e, $AC0.M
|
|
0655 2c1f srs @0x001f, $AC0.L
|
|
0656 2340 lrs $AX1.H, @0x0040
|
|
0657 c814 mulc'mv $AC0.M, $AX1.H : $AX1.L, $AC0.L
|
|
0658 9e00 mulmv $AX1.L, $AX1.H, $ACC0
|
|
0659 f000 lsl16 $ACC0
|
|
065a 4e00 addp $ACC0
|
|
065b 234c lrs $AX1.H, @0x004c
|
|
065c 214d lrs $AX1.L, @0x004d
|
|
065d 4a00 addax $ACC0, $AX1
|
|
065e 2e20 srs @0x0020, $AC0.M
|
|
065f 2c21 srs @0x0021, $AC0.L
|
|
0660 1fd8 mrr $AC0.M, $AX0.L
|
|
0661 0240 000f andi $AC0.M, #0x000f
|
|
0663 2e19 srs @0x0019, $AC0.M
|
|
0664 264a lrs $AC0.M, @0x004a
|
|
0665 244b lrs $AC0.L, @0x004b
|
|
0666 5800 subax $ACC0, $AX0
|
|
0667 2e22 srs @0x0022, $AC0.M
|
|
0668 2c23 srs @0x0023, $AC0.L
|
|
0669 02df ret
|
|
}
|
|
|
|
{
|
|
066a 221e lrs $AX0.H, @0x001e
|
|
066b 201f lrs $AX0.L, @0x001f
|
|
066c 8100 clr $ACC0
|
|
066d 264a lrs $AC0.M, @0x004a
|
|
066e 244b lrs $AC0.L, @0x004b
|
|
066f 147c lsr $ACC0, #-4
|
|
0670 5800 subax $ACC0, $AX0
|
|
0671 0295 067a jz 0x067a
|
|
0673 02bf 06ec call 0x06ec
|
|
0675 0e10 lris $AC0.M, #0x10
|
|
0676 2e1a srs @0x001a, $AC0.M
|
|
0677 8100 clr $ACC0
|
|
0678 2e19 srs @0x0019, $AC0.M
|
|
0679 02df ret
|
|
}
|
|
|
|
{
|
|
067a 224a lrs $AX0.H, @0x004a
|
|
067b 204b lrs $AX0.L, @0x004b
|
|
067c 8100 clr $ACC0
|
|
067d 261c lrs $AC0.M, @0x001c
|
|
067e 241d lrs $AC0.L, @0x001d
|
|
067f 5800 subax $ACC0, $AX0
|
|
0680 0290 0687 jge 0x0687
|
|
0682 02bf 06ec call 0x06ec
|
|
0684 2623 lrs $AC0.M, @0x0023
|
|
0685 029f 0676 jmp 0x0676
|
|
}
|
|
|
|
{
|
|
0687 2648 lrs $AC0.M, @0x0048
|
|
0688 2449 lrs $AC0.L, @0x0049
|
|
0689 2e1c srs @0x001c, $AC0.M
|
|
068a 2c1d srs @0x001d, $AC0.L
|
|
068b 0e10 lris $AC0.M, #0x10
|
|
068c 2e1a srs @0x001a, $AC0.M
|
|
068d 02bf 064f call 0x064f
|
|
068f 2642 lrs $AC0.M, @0x0042
|
|
0690 2e3f srs @0x003f, $AC0.M
|
|
0691 2643 lrs $AC0.M, @0x0043
|
|
0692 2e3e srs @0x003e, $AC0.M
|
|
0693 8100 clr $ACC0
|
|
0694 00fe 0362 sr @0x0362, $AC0.M
|
|
0696 02bf 06ec call 0x06ec
|
|
0698 02df ret
|
|
}
|
|
|
|
{
|
|
0699 b100 tst $ACC0
|
|
069a 02d5 retz
|
|
069b 04fe addis $AC0.M, #0xfe
|
|
069c 1f1e mrr $AX0.L, $AC0.M
|
|
069d 191e lrri $AC0.M, @$AR0
|
|
069e 0291 06a4 jl 0x06a4
|
|
06a0 191a lrri $AX0.H, @$AR0
|
|
06a1 0058 loop $AX0.L
|
|
06a2 64a0 movr'ls $ACC0, $AX0.H : $AX0.H, $AC0.M
|
|
06a3 6433 movr's $ACC0, $AX0.H : @$AR3, $AC0.M
|
|
06a4 1b7e srri @$AR3, $AC0.M
|
|
06a5 02df ret
|
|
}
|
|
|
|
{
|
|
06a6 0092 0004 lri $CR, #0x0004
|
|
06a8 02bf 064f call 0x064f
|
|
06aa 8100 clr $ACC0
|
|
06ab 00fe 0362 sr @0x0362, $AC0.M
|
|
06ad 8100 clr $ACC0
|
|
06ae 2622 lrs $AC0.M, @0x0022
|
|
06af 2423 lrs $AC0.L, @0x0023
|
|
06b0 b100 tst $ACC0
|
|
06b1 0294 06c3 jnz 0x06c3
|
|
06b3 02bf 066a call 0x066a
|
|
06b5 2219 lrs $AX0.H, @0x0019
|
|
06b6 8600 tstaxh $AX0.H
|
|
06b7 0294 06c0 jnz 0x06c0
|
|
06b9 02bf 0636 call 0x0636
|
|
06bb b900 tst $ACC1
|
|
06bc 0295 06e9 jz 0x06e9
|
|
06be 02bf 064f call 0x064f
|
|
06c0 8100 clr $ACC0
|
|
06c1 2622 lrs $AC0.M, @0x0022
|
|
06c2 2423 lrs $AC0.L, @0x0023
|
|
06c3 1f1f mrr $AX0.L, $AC1.M
|
|
06c4 009a 0000 lri $AX0.H, #0x0000
|
|
06c6 5800 subax $ACC0, $AX0
|
|
06c7 0290 06d6 jge 0x06d6
|
|
06c9 8100 clr $ACC0
|
|
06ca 2619 lrs $AC0.M, @0x0019
|
|
06cb b100 tst $ACC0
|
|
06cc 0294 06d0 jnz 0x06d0
|
|
06ce 02bf 066a call 0x066a
|
|
06d0 02bf 0628 call 0x0628
|
|
06d2 02bf 064f call 0x064f
|
|
06d4 029f 06ad jmp 0x06ad
|
|
}
|
|
|
|
{
|
|
06d6 8100 clr $ACC0
|
|
06d7 2619 lrs $AC0.M, @0x0019
|
|
06d8 b100 tst $ACC0
|
|
06d9 0294 06dd jnz 0x06dd
|
|
06db 02bf 066a call 0x066a
|
|
06dd 02bf 0636 call 0x0636
|
|
06df b900 tst $ACC1
|
|
06e0 0295 06e9 jz 0x06e9
|
|
06e2 02bf 064f call 0x064f
|
|
06e4 029f 06d6 jmp 0x06d6
|
|
}
|
|
|
|
{
|
|
06e6 8100 clr $ACC0
|
|
06e7 005f loop $AC1.M
|
|
06e8 1b7e srri @$AR3, $AC0.M
|
|
06e9 0092 00ff lri $CR, #0x00ff
|
|
06eb 02df ret
|
|
}
|
|
|
|
{
|
|
06ec 00ff 0360 sr @0x0360, $AC1.M
|
|
06ee 00da 0362 lr $AX0.H, @0x0362
|
|
06f0 8600 tstaxh $AX0.H
|
|
06f1 0294 06fe jnz 0x06fe
|
|
06f3 0a01 lris $AX0.H, #0x01
|
|
06f4 00fa 0362 sr @0x0362, $AX0.H
|
|
06f6 2620 lrs $AC0.M, @0x0020
|
|
06f7 2421 lrs $AC0.L, @0x0021
|
|
06f8 009f 0005 lri $AC1.M, #0x0005
|
|
06fa 02bf 0103 call 0x0103
|
|
06fc 0092 0004 lri $CR, #0x0004
|
|
06fe 0080 ffd3 lri $AR0, #0xffd3
|
|
0700 0084 0000 lri $IX0, #0x0000
|
|
0702 199e lrrn $AC0.M, @$AR0
|
|
0703 1ffe mrr $AC1.M, $AC0.M
|
|
0704 1401 lsl $ACC0, #1
|
|
0705 0240 001e andi $AC0.M, #0x001e
|
|
0707 0200 0300 addi $AC0.M, #0x0300
|
|
0709 1c3e mrr $AR1, $AC0.M
|
|
070a 157c lsr $ACC1, #-4
|
|
070b 0340 000f andi $AC1.M, #0x000f
|
|
070d 0a11 lris $AX0.H, #0x11
|
|
070e 5500 subr $ACC1, $AX0.H
|
|
070f 009a 00f0 lri $AX0.H, #0x00f0
|
|
0711 009b 000f lri $AX1.H, #0x000f
|
|
0713 0082 0370 lri $AR2, #0x0370
|
|
0715 1998 lrrn $AX0.L, @$AR0
|
|
0716 6000 movr $ACC0, $AX0.L
|
|
0717 1107 071e bloopi #0x07, 0x071e
|
|
{
|
|
0719 3400 andr $AC0.M, $AX0.H
|
|
071a 1408 lsl $ACC0, #8
|
|
071b 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
071c 3644 andr'ln $AC0.M, $AX1.H : $AX0.L, @$AR0
|
|
071d 140c lsl $ACC0, #12
|
|
071e 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
}
|
|
071f 3400 andr $AC0.M, $AX0.H
|
|
0720 1408 lsl $ACC0, #8
|
|
0721 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
0722 3600 andr $AC0.M, $AX1.H
|
|
0723 140c lsl $ACC0, #12
|
|
0724 1b5e srri @$AR2, $AC0.M
|
|
0725 8f00 set40
|
|
0726 1f7f mrr $AX1.H, $AC1.M
|
|
0727 203e lrs $AX0.L, @0x003e
|
|
0728 273f lrs $AC1.M, @0x003f
|
|
0729 193a lrri $AX0.H, @$AR1
|
|
072a 1939 lrri $AX1.L, @$AR1
|
|
072b 0080 0370 lri $AR0, #0x0370
|
|
072d 0081 0430 lri $AR1, #0x0430
|
|
072f 1c80 mrr $IX0, $AR0
|
|
0730 a000 mulx $AX0.L, $AX1.L
|
|
0731 ea70 maddc'l $AC1.M, $AX1.L : $AC0.M, @$AR0
|
|
0732 1108 073b bloopi #0x08, 0x073b
|
|
0734 3a93 asrnrx'mv $ACC0, $AX1.H : $AX0.L, $AC1.M
|
|
0735 a478 mulxac'l $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
|
|
0736 1485 asl $ACC0, #5
|
|
0737 e831 maddc's $AC0.M, $AX1.L : @$AR1, $AC0.M
|
|
0738 3b92 asrnrx'mv $ACC1, $AX1.H : $AX0.L, $AC0.M
|
|
0739 a570 mulxac'l $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
|
|
073a 1585 asl $ACC1, #5
|
|
073b ea39 maddc's $AC1.M, $AX1.L : @$AR1, $AC1.M
|
|
073c 8e00 set16
|
|
073d 8900 clr $ACC1
|
|
073e 00df 0360 lr $AC1.M, @0x0360
|
|
0740 02df ret
|
|
}
|
|
|
|
{
|
|
0741 0080 0346 lri $AR0, #0x0346
|
|
0743 02bf 0051 call 0x0051
|
|
0745 8100 clr $ACC0
|
|
0746 0080 0430 lri $AR0, #0x0430
|
|
0748 1010 loopi #0x10
|
|
0749 1b1e srri @$AR0, $AC0.M
|
|
074a 00fe 0442 sr @0x0442, $AC0.M
|
|
074c 00fe 0443 sr @0x0443, $AC0.M
|
|
074e 009c 0000 lri $AC0.L, #0x0000
|
|
0750 00fe 041c sr @0x041c, $AC0.M
|
|
0752 00fc 041d sr @0x041d, $AC0.L
|
|
0754 009e 0100 lri $AC0.M, #0x0100
|
|
0756 009c f100 lri $AC0.L, #0xf100
|
|
0758 00fe 044e sr @0x044e, $AC0.M
|
|
075a 00fc 044f sr @0x044f, $AC0.L
|
|
075c 009e 0040 lri $AC0.M, #0x0040
|
|
075e 009c 0000 lri $AC0.L, #0x0000
|
|
0760 00fe 044c sr @0x044c, $AC0.M
|
|
0762 00fc 044d sr @0x044d, $AC0.L
|
|
0764 009e 0009 lri $AC0.M, #0x0009
|
|
0766 00fe 0440 sr @0x0440, $AC0.M
|
|
0768 009e 0010 lri $AC0.M, #0x0010
|
|
076a 00fe 041a sr @0x041a, $AC0.M
|
|
076c 009e 0100 lri $AC0.M, #0x0100
|
|
076e 009c f250 lri $AC0.L, #0xf250
|
|
0770 00fe 044a sr @0x044a, $AC0.M
|
|
0772 00fc 044b sr @0x044b, $AC0.L
|
|
0774 009c 0000 lri $AC0.L, #0x0000
|
|
0776 00fe 0448 sr @0x0448, $AC0.M
|
|
0778 00fc 0449 sr @0x0449, $AC0.L
|
|
077a 009e 0001 lri $AC0.M, #0x0001
|
|
077c 00fe 0441 sr @0x0441, $AC0.M
|
|
077e 8900 clr $ACC1
|
|
077f 00ff 0401 sr @0x0401, $AC1.M
|
|
0781 1180 079b bloopi #0x80, 0x079b
|
|
{
|
|
0783 0083 0580 lri $AR3, #0x0580
|
|
0785 009f 0100 lri $AC1.M, #0x0100
|
|
0787 02bf 06a6 call 0x06a6
|
|
0789 0081 0346 lri $AR1, #0x0346
|
|
078b 193e lrri $AC0.M, @$AR1
|
|
078c 18bc lrrd $AC0.L, @$AR1
|
|
078d 009f 0580 lri $AC1.M, #0x0580
|
|
078f 0080 0100 lri $AR0, #0x0100
|
|
0791 02bf 008b call 0x008b
|
|
0793 0081 0346 lri $AR1, #0x0346
|
|
0795 193e lrri $AC0.M, @$AR1
|
|
0796 18bc lrrd $AC0.L, @$AR1
|
|
0797 0098 0200 lri $AX0.L, #0x0200
|
|
0799 7000 addaxl $ACC0, $AX0.L
|
|
079a 1b3e srri @$AR1, $AC0.M
|
|
079b 1abc srrd @$AR1, $AC0.L
|
|
}
|
|
079c 029f 0049 jmp 0x0049
|
|
}
|
|
|
|
void 079e_AudioFormatRAW20()
|
|
{
|
|
079e 8900 clr $ACC1
|
|
079f 009f 0050 lri $AC1.M, #0x0050
|
|
07a1 0083 0520 lri $AR3, #0x0520
|
|
07a3 02bf 07b9 call 0x07b9
|
|
07a5 029f 04e7 jmp 0x04e7
|
|
}
|
|
|
|
void 07a7_AudioFormatRAW21()
|
|
{
|
|
07a7 00d8 0402 lr $AX0.L, @0x0402
|
|
07a9 8100 clr $ACC0
|
|
07aa 8900 clr $ACC1
|
|
07ab 00dc 0418 lr $AC0.L, @0x0418
|
|
07ad 009a 0050 lri $AX0.H, #0x0050
|
|
07af 9000 mul $AX0.L, $AX0.H
|
|
07b0 9400 mulac $AX0.L, $AX0.H, $ACC0
|
|
07b1 1404 lsl $ACC0, #4
|
|
07b2 1ffe mrr $AC1.M, $AC0.M
|
|
07b3 0083 0580 lri $AR3, #0x0580
|
|
07b5 02bf 07b9 call 0x07b9
|
|
07b7 029f 04df jmp 0x04df
|
|
}
|
|
|
|
{
|
|
07b9 0092 0004 lri $CR, #0x0004
|
|
07bb 8100 clr $ACC0
|
|
07bc 2622 lrs $AC0.M, @0x0022
|
|
07bd 2423 lrs $AC0.L, @0x0023
|
|
07be 1f1f mrr $AX0.L, $AC1.M
|
|
07bf 009a 0000 lri $AX0.H, #0x0000
|
|
07c1 5800 subax $ACC0, $AX0
|
|
07c2 0290 07d9 jge 0x07d9
|
|
07c4 8900 clr $ACC1
|
|
07c5 00c0 0423 lr $AR0, @0x0423
|
|
07c7 02bf 07fe call 0x07fe
|
|
07c9 8100 clr $ACC0
|
|
07ca 1fd8 mrr $AC0.M, $AX0.L
|
|
07cb 2223 lrs $AX0.H, @0x0023
|
|
07cc 5400 subr $ACC0, $AX0.H
|
|
07cd 0007 dar $AR3
|
|
07ce 1979 lrri $AX1.L, @$AR3
|
|
07cf 005e loop $AC0.M
|
|
07d0 1b79 srri @$AR3, $AX1.L
|
|
07d1 009f 0001 lri $AC1.M, #0x0001
|
|
07d3 2f01 srs @0x0001, $AC1.M
|
|
07d4 8900 clr $ACC1
|
|
07d5 2f23 srs @0x0023, $AC1.M
|
|
07d6 0092 00ff lri $CR, #0x00ff
|
|
07d8 02df ret
|
|
}
|
|
|
|
{
|
|
07d9 2e22 srs @0x0022, $AC0.M
|
|
07da 2c23 srs @0x0023, $AC0.L
|
|
07db 8100 clr $ACC0
|
|
07dc 8900 clr $ACC1
|
|
07dd 264a lrs $AC0.M, @0x004a
|
|
07de 271c lrs $AC1.M, @0x001c
|
|
07df 5c00 sub $ACC0, $ACC1
|
|
07e0 2e1e srs @0x001e, $AC0.M
|
|
07e1 5000 subr $ACC0, $AX0.L
|
|
07e2 0290 07f8 jge 0x07f8
|
|
07e4 00c0 041e lr $AR0, @0x041e
|
|
07e6 02bf 07fe call 0x07fe
|
|
07e8 8100 clr $ACC0
|
|
07e9 1fd8 mrr $AC0.M, $AX0.L
|
|
07ea 221e lrs $AX0.H, @0x001e
|
|
07eb 5400 subr $ACC0, $AX0.H
|
|
07ec 1c1e mrr $AR0, $AC0.M
|
|
07ed 8100 clr $ACC0
|
|
07ee 2e1c srs @0x001c, $AC0.M
|
|
07ef 2648 lrs $AC0.M, @0x0048
|
|
07f0 2449 lrs $AC0.L, @0x0049
|
|
07f1 2e4c srs @0x004c, $AC0.M
|
|
07f2 2c4d srs @0x004d, $AC0.L
|
|
07f3 02bf 07fe call 0x07fe
|
|
07f5 0092 00ff lri $CR, #0x00ff
|
|
07f7 02df ret
|
|
}
|
|
|
|
{
|
|
07f8 1c18 mrr $AR0, $AX0.L
|
|
07f9 02bf 07fe call 0x07fe
|
|
07fb 0092 00ff lri $CR, #0x00ff
|
|
07fd 02df ret
|
|
}
|
|
|
|
{
|
|
07fe 8100 clr $ACC0
|
|
07ff 1fc0 mrr $AC0.M, $AR0
|
|
0800 b100 tst $ACC0
|
|
0801 02d5 retz
|
|
0802 8900 clr $ACC1
|
|
0803 271c lrs $AC1.M, @0x001c
|
|
0804 0340 0001 andi $AC1.M, #0x0001
|
|
0806 009b 0000 lri $AX1.H, #0x0000
|
|
0808 1f3f mrr $AX1.L, $AC1.M
|
|
0809 264c lrs $AC0.M, @0x004c
|
|
080a 244d lrs $AC0.L, @0x004d
|
|
080b 8900 clr $ACC1
|
|
080c 251c lrs $AC1.L, @0x001c
|
|
080d 1501 lsl $ACC1, #1
|
|
080e 4c00 add $ACC0, $ACC1
|
|
080f 5a00 subax $ACC0, $AX1
|
|
0810 5a00 subax $ACC0, $AX1
|
|
0811 1c20 mrr $AR1, $AR0
|
|
0812 1fe0 mrr $AC1.M, $AR0
|
|
0813 0502 addis $AC1.M, #0x02
|
|
0814 1c1f mrr $AR0, $AC1.M
|
|
0815 009f 0a00 lri $AC1.M, #0x0a00
|
|
0817 0092 00ff lri $CR, #0x00ff
|
|
0819 02bf 007e call 0x007e
|
|
081b 0092 0004 lri $CR, #0x0004
|
|
081d 271c lrs $AC1.M, @0x001c
|
|
081e 1f61 mrr $AX1.H, $AR1
|
|
081f 4700 addr $ACC1, $AX1.H
|
|
0820 2f1c srs @0x001c, $AC1.M
|
|
0821 0080 0a00 lri $AR0, #0x0a00
|
|
0823 8900 clr $ACC1
|
|
0824 1ff9 mrr $AC1.M, $AX1.L
|
|
0825 b900 tst $ACC1
|
|
0826 0274 ifnz
|
|
0827 0008 iar $AR0
|
|
0828 8900 clr $ACC1
|
|
0829 1fe1 mrr $AC1.M, $AR1
|
|
082a 191e lrri $AC0.M, @$AR0
|
|
082b 0701 cmpis $AC1.M, #0x01
|
|
082c 0293 0835 jle 0x0835
|
|
082e 191a lrri $AX0.H, @$AR0
|
|
082f 05fe addis $AC1.M, #0xfe
|
|
0830 005f loop $AC1.M
|
|
0831 64a0 movr'ls $ACC0, $AX0.H : $AX0.H, $AC0.M
|
|
0832 1b7e srri @$AR3, $AC0.M
|
|
0833 1b7a srri @$AR3, $AX0.H
|
|
0834 02df ret
|
|
}
|
|
|
|
{
|
|
0835 1b7e srri @$AR3, $AC0.M
|
|
0836 02df ret
|
|
}
|
|
|
|
{
|
|
0837 0092 0004 lri $CR, #0x0004
|
|
0839 2201 lrs $AX0.H, @0x0001
|
|
083a 8600 tstaxh $AX0.H
|
|
083b 0294 0868 jnz 0x0868
|
|
083d 2204 lrs $AX0.H, @0x0004
|
|
083e 8600 tstaxh $AX0.H
|
|
083f 02b4 08bc callnz 0x08bc
|
|
0841 2219 lrs $AX0.H, @0x0019
|
|
0842 8600 tstaxh $AX0.H
|
|
0843 0295 085d jz 0x085d
|
|
0845 009e 0430 lri $AC0.M, #0x0430
|
|
0847 4400 addr $ACC0, $AX0.H
|
|
0848 1c1e mrr $AR0, $AC0.M
|
|
0849 0e10 lris $AC0.M, #0x10
|
|
084a 5400 subr $ACC0, $AX0.H
|
|
084b 1f7e mrr $AX1.H, $AC0.M
|
|
084c 02bf 0699 call 0x0699
|
|
084e d900 cmpar $ACC1, $AX1.H
|
|
084f 0292 085c jg 0x085c
|
|
0851 0295 0858 jz 0x0858
|
|
0853 2619 lrs $AC0.M, @0x0019
|
|
0854 4c00 add $ACC0, $ACC1
|
|
0855 2e19 srs @0x0019, $AC0.M
|
|
0856 029f 08b9 jmp 0x08b9
|
|
|
|
0858 8100 clr $ACC0
|
|
0859 2e19 srs @0x0019, $AC0.M
|
|
085a 029f 08b9 jmp 0x08b9
|
|
|
|
085c 5700 subr $ACC1, $AX1.H
|
|
085d 8100 clr $ACC0
|
|
085e 2605 lrs $AC0.M, @0x0005
|
|
085f b100 tst $ACC0
|
|
0860 0295 0879 jz 0x0879
|
|
0862 8100 clr $ACC0
|
|
0863 2e05 srs @0x0005, $AC0.M
|
|
0864 2241 lrs $AX0.H, @0x0041
|
|
0865 8600 tstaxh $AX0.H
|
|
0866 0294 086f jnz 0x086f
|
|
0868 8100 clr $ACC0
|
|
0869 005f loop $AC1.M
|
|
086a 1b7e srri @$AR3, $AC0.M
|
|
086b 7400 incm $AC0.M
|
|
086c 2e01 srs @0x0001, $AC0.M
|
|
086d 029f 08b9 jmp 0x08b9
|
|
|
|
086f 2648 lrs $AC0.M, @0x0048
|
|
0870 2449 lrs $AC0.L, @0x0049
|
|
0871 2e1c srs @0x001c, $AC0.M
|
|
0872 2c1d srs @0x001d, $AC0.L
|
|
0873 02bf 08c1 call 0x08c1
|
|
0875 2642 lrs $AC0.M, @0x0042
|
|
0876 2443 lrs $AC0.L, @0x0043
|
|
0877 2e3f srs @0x003f, $AC0.M
|
|
0878 2c3e srs @0x003e, $AC0.L
|
|
0879 00ff 0360 sr @0x0360, $AC1.M
|
|
087b 2620 lrs $AC0.M, @0x0020
|
|
087c 2421 lrs $AC0.L, @0x0021
|
|
087d 009f 0005 lri $AC1.M, #0x0005
|
|
087f 02bf 0103 call 0x0103
|
|
0881 0092 0004 lri $CR, #0x0004
|
|
0883 8900 clr $ACC1
|
|
0884 00ff 0362 sr @0x0362, $AC1.M
|
|
0886 00df 0360 lr $AC1.M, @0x0360
|
|
0888 02bf 08db call 0x08db
|
|
088a 8100 clr $ACC0
|
|
088b 00de 0362 lr $AC0.M, @0x0362
|
|
088d 2240 lrs $AX0.H, @0x0040
|
|
088e 4400 addr $ACC0, $AX0.H
|
|
088f 00fe 0362 sr @0x0362, $AC0.M
|
|
0891 8100 clr $ACC0
|
|
0892 2622 lrs $AC0.M, @0x0022
|
|
0893 2423 lrs $AC0.L, @0x0023
|
|
0894 0a01 lris $AX0.H, #0x01
|
|
0895 0081 0405 lri $AR1, #0x0405
|
|
0897 7a00 dec $ACC0
|
|
0898 b100 tst $ACC0
|
|
0899 0275 ifz
|
|
089a 1a3a srr @$AR1, $AX0.H
|
|
089b 2e22 srs @0x0022, $AC0.M
|
|
089c 2c23 srs @0x0023, $AC0.L
|
|
089d 0710 cmpis $AC1.M, #0x10
|
|
089e 0293 08a7 jle 0x08a7
|
|
08a0 05f0 addis $AC1.M, #0xf0
|
|
08a1 2205 lrs $AX0.H, @0x0005
|
|
08a2 8600 tstaxh $AX0.H
|
|
08a3 0294 0862 jnz 0x0862
|
|
08a5 029f 0888 jmp 0x0888
|
|
08a7 0275 ifz
|
|
08a8 8900 clr $ACC1
|
|
08a9 2f19 srs @0x0019, $AC1.M
|
|
08aa 1fc3 mrr $AC0.M, $AR3
|
|
08ab 04f0 addis $AC0.M, #0xf0
|
|
08ac 1c1e mrr $AR0, $AC0.M
|
|
08ad 0083 0430 lri $AR3, #0x0430
|
|
08af 0e10 lris $AC0.M, #0x10
|
|
08b0 02bf 0699 call 0x0699
|
|
08b2 2620 lrs $AC0.M, @0x0020
|
|
08b3 2421 lrs $AC0.L, @0x0021
|
|
08b4 00d8 0362 lr $AX0.L, @0x0362
|
|
08b6 7000 addaxl $ACC0, $AX0.L
|
|
08b7 2c21 srs @0x0021, $AC0.L
|
|
08b8 2e20 srs @0x0020, $AC0.M
|
|
08b9 0092 00ff lri $CR, #0x00ff
|
|
08bb 02df ret
|
|
}
|
|
|
|
{
|
|
08bc 8100 clr $ACC0
|
|
08bd 2e1c srs @0x001c, $AC0.M
|
|
08be 2e1d srs @0x001d, $AC0.M
|
|
08bf 2e3e srs @0x003e, $AC0.M
|
|
08c0 2e3f srs @0x003f, $AC0.M
|
|
08c1 231c lrs $AX1.H, @0x001c
|
|
08c2 211d lrs $AX1.L, @0x001d
|
|
08c3 264a lrs $AC0.M, @0x004a
|
|
08c4 244b lrs $AC0.L, @0x004b
|
|
08c5 5a00 subax $ACC0, $AX1
|
|
08c6 147c lsr $ACC0, #-4
|
|
08c7 2e22 srs @0x0022, $AC0.M
|
|
08c8 2c23 srs @0x0023, $AC0.L
|
|
08c9 261c lrs $AC0.M, @0x001c
|
|
08ca 241d lrs $AC0.L, @0x001d
|
|
08cb 147c lsr $ACC0, #-4
|
|
08cc 2240 lrs $AX0.H, @0x0040
|
|
08cd c010 mulc'mv $AC0.M, $AX0.H : $AX0.L, $AC0.L
|
|
08ce 9600 mulmv $AX0.L, $AX0.H, $ACC0
|
|
08cf f000 lsl16 $ACC0
|
|
08d0 4e00 addp $ACC0
|
|
08d1 234c lrs $AX1.H, @0x004c
|
|
08d2 214d lrs $AX1.L, @0x004d
|
|
08d3 4a00 addax $ACC0, $AX1
|
|
08d4 2e20 srs @0x0020, $AC0.M
|
|
08d5 2c21 srs @0x0021, $AC0.L
|
|
08d6 8100 clr $ACC0
|
|
08d7 2e05 srs @0x0005, $AC0.M
|
|
08d8 2e19 srs @0x0019, $AC0.M
|
|
08d9 2e04 srs @0x0004, $AC0.M
|
|
08da 02df ret
|
|
}
|
|
|
|
{
|
|
08db 00ff 0360 sr @0x0360, $AC1.M
|
|
08dd 0080 ffd3 lri $AR0, #0xffd3
|
|
08df 0084 0000 lri $IX0, #0x0000
|
|
08e1 199e lrrn $AC0.M, @$AR0
|
|
08e2 1ffe mrr $AC1.M, $AC0.M
|
|
08e3 1401 lsl $ACC0, #1
|
|
08e4 0240 001e andi $AC0.M, #0x001e
|
|
08e6 0200 0300 addi $AC0.M, #0x0300
|
|
08e8 1c3e mrr $AR1, $AC0.M
|
|
08e9 157c lsr $ACC1, #-4
|
|
08ea 0340 000f andi $AC1.M, #0x000f
|
|
08ec 0a11 lris $AX0.H, #0x11
|
|
08ed 5500 subr $ACC1, $AX0.H
|
|
08ee 009a 00f0 lri $AX0.H, #0x00f0
|
|
08f0 009b 000f lri $AX1.H, #0x000f
|
|
08f2 0082 0370 lri $AR2, #0x0370
|
|
08f4 1998 lrrn $AX0.L, @$AR0
|
|
08f5 6000 movr $ACC0, $AX0.L
|
|
08f6 1107 08fd bloopi #0x07, 0x08fd
|
|
{
|
|
08f8 3400 andr $AC0.M, $AX0.H
|
|
08f9 1408 lsl $ACC0, #8
|
|
08fa 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
08fb 3644 andr'ln $AC0.M, $AX1.H : $AX0.L, @$AR0
|
|
08fc 140c lsl $ACC0, #12
|
|
08fd 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
}
|
|
08fe 3400 andr $AC0.M, $AX0.H
|
|
08ff 1408 lsl $ACC0, #8
|
|
0900 6032 movr's $ACC0, $AX0.L : @$AR2, $AC0.M
|
|
0901 3600 andr $AC0.M, $AX1.H
|
|
0902 140c lsl $ACC0, #12
|
|
0903 1b5e srri @$AR2, $AC0.M
|
|
0904 8f00 set40
|
|
0905 1f7f mrr $AX1.H, $AC1.M
|
|
0906 203e lrs $AX0.L, @0x003e
|
|
0907 273f lrs $AC1.M, @0x003f
|
|
0908 193a lrri $AX0.H, @$AR1
|
|
0909 1939 lrri $AX1.L, @$AR1
|
|
090a 0080 0370 lri $AR0, #0x0370
|
|
090c 1c80 mrr $IX0, $AR0
|
|
090d a000 mulx $AX0.L, $AX1.L
|
|
090e ea70 maddc'l $AC1.M, $AX1.L : $AC0.M, @$AR0
|
|
090f 3a93 asrnrx'mv $ACC0, $AX1.H : $AX0.L, $AC1.M
|
|
0910 a478 mulxac'l $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
|
|
0911 1485 asl $ACC0, #5
|
|
0912 e833 maddc's $AC0.M, $AX1.L : @$AR3, $AC0.M
|
|
0913 3b92 asrnrx'mv $ACC1, $AX1.H : $AX0.L, $AC0.M
|
|
0914 a570 mulxac'l $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
|
|
0915 1585 asl $ACC1, #5
|
|
0916 ea3b maddc's $AC1.M, $AX1.L : @$AR3, $AC1.M
|
|
0917 1106 0920 bloopi #0x06, 0x0920
|
|
{
|
|
0919 3a93 asrnrx'mv $ACC0, $AX1.H : $AX0.L, $AC1.M
|
|
091a a478 mulxac'l $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
|
|
091b 1485 asl $ACC0, #5
|
|
091c e833 maddc's $AC0.M, $AX1.L : @$AR3, $AC0.M
|
|
091d 3b92 asrnrx'mv $ACC1, $AX1.H : $AX0.L, $AC0.M
|
|
091e a570 mulxac'l $AX0.L, $AX1.L, $ACC1 : $AC0.M, @$AR0
|
|
091f 1585 asl $ACC1, #5
|
|
0920 ea3b maddc's $AC1.M, $AX1.L : @$AR3, $AC1.M
|
|
}
|
|
0921 3a93 asrnrx'mv $ACC0, $AX1.H : $AX0.L, $AC1.M
|
|
0922 a478 mulxac'l $AX0.L, $AX1.L, $ACC0 : $AC1.M, @$AR0
|
|
0923 1485 asl $ACC0, #5
|
|
0924 e833 maddc's $AC0.M, $AX1.L : @$AR3, $AC0.M
|
|
0925 3b92 asrnrx'mv $ACC1, $AX1.H : $AX0.L, $AC0.M
|
|
0926 a500 mulxac $AX0.L, $AX1.L, $ACC1
|
|
0927 1585 asl $ACC1, #5
|
|
0928 1b7f srri @$AR3, $AC1.M
|
|
0929 2e3e srs @0x003e, $AC0.M
|
|
092a 2f3f srs @0x003f, $AC1.M
|
|
092b 8e00 set16
|
|
092c 8900 clr $ACC1
|
|
092d 00df 0360 lr $AC1.M, @0x0360
|
|
092f 02df ret
|
|
}
|
|
|
|
{
|
|
0930 0083 0520 lri $AR3, #0x0520
|
|
0932 00de 041b lr $AC0.M, @0x041b
|
|
0934 1050 loopi #0x50
|
|
0935 1b7e srri @$AR3, $AC0.M
|
|
0936 029f 04e7 jmp 0x04e7
|
|
}
|
|
|
|
0938 0000 nop
|
|
0939 0000 nop
|
|
093a 0000 nop
|
|
093b 0000 nop
|
|
093c 0000 nop
|
|
093d 0000 nop
|
|
093e 0000 nop
|
|
093f 0000 nop
|