Skip to content

Commit

Permalink
libasnd: Fixed the swapped stereo problem (#170)
Browse files Browse the repository at this point in the history
Co-authored-by: Extrems <[email protected]>
  • Loading branch information
Wohlstand and Extrems committed Mar 21, 2024
1 parent b029110 commit f3fd106
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions libasnd/dsp_mixer/dsp_mixer.s
Original file line number Diff line number Diff line change
Expand Up @@ -823,8 +823,8 @@ mono_8bits:
lsr $ACC0, #8
lsl $ACC0, #8

mrr $AXH1,$ACL0
mrr $AXH0,$ACL0
mrr $AXH0, $ACL0
mrr $AXH1, $ACL0
jmp out_samp

stereo_8bits:
Expand All @@ -834,26 +834,26 @@ stereo_8bits:
lrri $ACL0, @$AR2
mrr $ACM0, $ACL0
andi $ACM0, #0xff00
mrr $AXH1, $ACM0
mrr $AXH0, $ACM0
lsl $ACC0, #8

mrr $AXH0, $ACL0
mrr $AXH1, $ACL0
jmp out_samp

mono_16bits:

// 16 bits mono

lrri $AXH1, @$AR2
mrr $AXH0,$AXH1
lrri $AXH0, @$AR2
mrr $AXH1, $AXH0
jmp out_samp

stereo_16bits:

// 16 bits stereo

lrri $AXH1, @$AR2
lrri $AXH0, @$AR2
lrri $AXH1, @$AR2
jmp out_samp

mono_8bits_unsigned:
Expand All @@ -868,8 +868,8 @@ mono_8bits_unsigned:
lsl $ACC0, #24
xori $ACM0, #0x8000 // convert unsigned->signed

mrr $AXH1,$ACM0
mrr $AXH0,$ACM0
mrr $AXH0, $ACM0
mrr $AXH1, $ACM0
jmp out_samp

mono_16bits_le:
Expand All @@ -880,8 +880,8 @@ mono_16bits_le:
mrr $ACL0, $ACM0
lsl $ACC0, #8 // byteswap

mrr $AXH1, $ACM0
mrr $AXH0, $ACM0
mrr $AXH1, $ACM0
jmp out_samp

stereo_8bits_unsigned:
Expand All @@ -892,24 +892,24 @@ stereo_8bits_unsigned:
xori $ACM0, #0x8080 // convert unsigned->signed
mrr $ACL0, $ACM0
andi $ACM0, #0xff00
mrr $AXH1, $ACM0
mrr $AXH0, $ACM0
lsl $ACC0, #8

mrr $AXH0, $ACL0
mrr $AXH1, $ACL0
jmp out_samp

stereo_16bits_le:

// 16 bits stereo little-endian
lrri $ACM1, @$AR2
lrri $ACM0, @$AR2
mrr $ACL1, $ACM1
lrri $ACM1, @$AR2
mrr $ACL0, $ACM0
lsl $ACC1, #8 // byteswap
lsl $ACC0, #8
mrr $ACL1, $ACM1
lsl $ACC0, #8 // byteswap
lsl $ACC1, #8

mrr $AXH1, $ACM1
mrr $AXH0, $ACM0
mrr $AXH1, $ACM1
//jmp out_samp

out_samp:
Expand Down

0 comments on commit f3fd106

Please sign in to comment.