Skip to content

Commit a0b4b56

Browse files
authored
libasnd: Fixed the swapped stereo problem (#170)
#169
1 parent 3797418 commit a0b4b56

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

libasnd/dsp_mixer/dsp_mixer.s

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -834,10 +834,10 @@ stereo_8bits:
834834
lrri $ACL0, @$AR2
835835
mrr $ACM0, $ACL0
836836
andi $ACM0, #0xff00
837-
mrr $AXH1, $ACM0
837+
mrr $AXH0, $ACM0
838838
lsl $ACC0, #8
839839

840-
mrr $AXH0, $ACL0
840+
mrr $AXH1, $ACL0
841841
jmp out_samp
842842

843843
mono_16bits:
@@ -852,8 +852,8 @@ stereo_16bits:
852852

853853
// 16 bits stereo
854854

855-
lrri $AXH1, @$AR2
856855
lrri $AXH0, @$AR2
856+
lrri $AXH1, @$AR2
857857
jmp out_samp
858858

859859
mono_8bits_unsigned:
@@ -892,17 +892,17 @@ stereo_8bits_unsigned:
892892
xori $ACM0, #0x8080 // convert unsigned->signed
893893
mrr $ACL0, $ACM0
894894
andi $ACM0, #0xff00
895-
mrr $AXH1, $ACM0
895+
mrr $AXH0, $ACM0
896896
lsl $ACC0, #8
897897

898-
mrr $AXH0, $ACL0
898+
mrr $AXH1, $ACL0
899899
jmp out_samp
900900

901901
stereo_16bits_le:
902902

903903
// 16 bits stereo little-endian
904-
lrri $ACM1, @$AR2
905904
lrri $ACM0, @$AR2
905+
lrri $ACM1, @$AR2
906906
mrr $ACL1, $ACM1
907907
mrr $ACL0, $ACM0
908908
lsl $ACC1, #8 // byteswap

0 commit comments

Comments
 (0)