Fixed a bug regarding the copper output mode with looping waves having a loop-offset.

Fixed wrong register use on triggering waves regarding the loop offset.
This commit is contained in:
Chris Hodges 2023-05-30 08:49:04 +02:00
parent b5478a162c
commit 0496cf73bd

View File

@ -1,5 +1,5 @@
;-------------------------------------------------------------------- ;--------------------------------------------------------------------
; Raspberry Casket Player V1.1 (20-May-2023) ; Raspberry Casket Player V1.1 (30-May-2023)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; ;
; Provided by Chris 'platon42' Hodges <chrisly@platon42.de> ; Provided by Chris 'platon42' Hodges <chrisly@platon42.de>
@ -3388,7 +3388,7 @@ pre_PlayerTick:
move.w wi_chipram_w(a3),d0 move.w wi_chipram_w(a3),d0
move.w d0,d6 move.w d0,d6
subq.w #1,d6 subq.w #1,d6
cmp.w d4,d6 cmp.w d5,d6
ble.s .lbC00118E ble.s .lbC00118E
sub.w d5,d0 sub.w d5,d0
bra.s .lbC000F48 bra.s .lbC000F48
@ -3402,7 +3402,7 @@ pre_PlayerTick:
.inst_nowave_has_subloop .inst_nowave_has_subloop
move.l pv_wave_sample_table(a4),pcd_out_ptr_l(a5) move.l pv_wave_sample_table(a4),pcd_out_ptr_l(a5)
move.w wi_loop_offset_w(a3),d4 move.w wi_loop_offset_w(a3),d5
.inst_set_no_lof .inst_set_no_lof
move.w d3,pcd_out_lof_w(a5) move.w d3,pcd_out_lof_w(a5)
moveq.l #0,d0 moveq.l #0,d0
@ -3410,7 +3410,7 @@ pre_PlayerTick:
addq.w #1,d0 addq.w #1,d0
move.w d0,pcd_inst_subloop_wait_w(a5) move.w d0,pcd_inst_subloop_wait_w(a5)
move.w d4,pcd_inst_loop_offset_w(a5) move.w d5,pcd_inst_loop_offset_w(a5)
st pcd_inst_ping_pong_dir_b(a5) st pcd_inst_ping_pong_dir_b(a5)
.inst_wave_selected .inst_wave_selected
@ -3997,7 +3997,7 @@ pre_PlayerTick:
tst.b ocd_trigger(a0) tst.b ocd_trigger(a0)
beq.s .setptrvolper beq.s .setptrvolper
move.b d5,ocd_trigger(a0) move.b d5,ocd_trigger(a0)
sub.l d2,d6 sub.l d2,d0
.setptrvolper .setptrvolper
move.w d0,1*4(a1) ; ac_ptr (lo) move.w d0,1*4(a1) ; ac_ptr (lo)
swap d0 swap d0