// Init Hardware PCM decoder /* 06a3 0082 0bb8 LRI $R02, #0x0bb8 06a5 195e LRRI $AC0.M, @$R02 06a6 2ed1 SRS @SampleFormat, $AC0.M 06a7 195e LRRI $AC0.M, @$R02 06a8 2ed4 SRS @ACSAH, $AC0.M 06a9 195e LRRI $AC0.M, @$R02 06aa 2ed5 SRS @ACSAL, $AC0.M 06ab 195e LRRI $AC0.M, @$R02 06ac 2ed6 SRS @ACEAH, $AC0.M 06ad 195e LRRI $AC0.M, @$R02 06ae 2ed7 SRS @ACEAL, $AC0.M 06af 195e LRRI $AC0.M, @$R02 06b0 2ed8 SRS @ACCAH, $AC0.M 06b1 195e LRRI $AC0.M, @$R02 06b2 2ed9 SRS @ACCAL, $AC0.M 06b3 195e LRRI $AC0.M, @$R02 06b4 2ea0 SRS @COEF_A1_0, $AC0.M 06b5 195e LRRI $AC0.M, @$R02 06b6 2ea1 SRS @COEF_A2_0, $AC0.M 06b7 195e LRRI $AC0.M, @$R02 06b8 2ea2 SRS @COEF_A1_1, $AC0.M 06b9 195e LRRI $AC0.M, @$R02 06ba 2ea3 SRS @COEF_A2_1, $AC0.M 06bb 195e LRRI $AC0.M, @$R02 06bc 2ea4 SRS @COEF_A1_2, $AC0.M 06bd 195e LRRI $AC0.M, @$R02 06be 2ea5 SRS @COEF_A2_2, $AC0.M 06bf 195e LRRI $AC0.M, @$R02 06c0 2ea6 SRS @COEF_A1_3, $AC0.M 06c1 195e LRRI $AC0.M, @$R02 06c2 2ea7 SRS @COEF_A2_3, $AC0.M 06c3 195e LRRI $AC0.M, @$R02 06c4 2ea8 SRS @COEF_A1_4, $AC0.M 06c5 195e LRRI $AC0.M, @$R02 06c6 2ea9 SRS @COEF_A2_4, $AC0.M 06c7 195e LRRI $AC0.M, @$R02 06c8 2eaa SRS @COEF_A1_5, $AC0.M 06c9 195e LRRI $AC0.M, @$R02 06ca 2eab SRS @COEF_A2_5, $AC0.M 06cb 195e LRRI $AC0.M, @$R02 06cc 2eac SRS @COEF_A1_6, $AC0.M 06cd 195e LRRI $AC0.M, @$R02 06ce 2ead SRS @COEF_A2_6, $AC0.M 06cf 195e LRRI $AC0.M, @$R02 06d0 2eae SRS @COEF_A1_7, $AC0.M 06d1 195e LRRI $AC0.M, @$R02 06d2 2eaf SRS @COEF_A2_7, $AC0.M 06d3 195e LRRI $AC0.M, @$R02 06d4 2ede SRS @GAIN, $AC0.M 06d5 195e LRRI $AC0.M, @$R02 06d6 2eda SRS @pred_scale, $AC0.M 06d7 195e LRRI $AC0.M, @$R02 06d8 2edb SRS @yn1, $AC0.M 06d9 195e LRRI $AC0.M, @$R02 06da 2edc SRS @yn2, $AC0.M */ /// hmmmmmm /* 06db 8c00 CLR15 06dc 8a00 M2 06dd 8e00 S40 */ /// AX0.L = *0xe16 AX1.H = ratioHi // sample ratio from AXPBSRC AX1.L = ratioLo // sample ratio from AXPBSRC AC0 = 0 AC0.L = currentAddressFrac // AXPBSRC *0x0e48 = last_samples[0] *0x0e49 = last_samples[1] *0x0e4A = last_samples[2] *0x0e4B = last_samples[3] AC1.M = AX1.L ACC = ACC >> 0x05 AC1 = AC1 + AC0 R04 = AC1.M R05 = AC1.L AC1 = AC1 + 0xe0 // ?????? AC1 = AC1 - 2097152 (because 0xe0 is converted to signed and shift << 16) AC1 = AC1 >> 16 AC1 = -AC1 R06 = -AC1 ////////////// AC1 = 0 AC1.L = R05 AC1 = AC1 << 2 R05 = AC1.M // 0x06fc AX.0 = 0x1fc AC0 = 0xe48 R01 = 0xFFDD R03 = 0x0D80 // 0x0704 for (i=0; i