; This soundformat is similar to YM.VenturaMain and YM.Jess_OvrLast mods. ; Not all YMPlayer flags can be set correctly !!! ; This adaptation was done based on YM.VenturaMain song. dc.b 'YMST' ; ID string dc.l $8000595F dc.l 1 dc.l $8000595D dc.l 1 dc.l $8000595E dc.l 1 ; number of songs dc.l $8000594D dc.l 0 dc.l $8000594E dc.l $10000 ; flags ? dc.l $80005951 dc.l 6 ; flags ? dc.l $80005953 dc.l ModuleName ; ptr to module name string dc.l $80005954 dc.l MusicAuthor ; ptr to author string dc.l $80005955 dc.l ModuleCreator ; ptr to creator string dc.l $80005957 dc.l Special ; ptr to special string dc.l $80005950 dc.l YMPlayerBase dc.l $80005958 dc.l RelocModule dc.l $80005959 dc.l PatchModule dc.l $8000595A dc.l Init dc.l $8000595B dc.l Play dc.l $8000595C dc.l HelpMe dc.l $80005961 dc.l ModuleStart ; module ptr dc.l $80005962 dc.l ModuleEnd-ModuleStart ; size of module dc.l 0 ; end YMPlayerBase dc.l 0 ModuleName dc.b "Do Ya Speak Russian",0 MusicAuthor dc.b "Jean-Sebastien 'Jess' Gerard",0 ModuleCreator dc.b "WT !",0 Special dc.b "Adapted (based on Mr.Styckx's rips)",10 dc.b "and restart song (bug) fixed by",10 dc.b "Don Adan/Wanted Team (29 Oct 2003)",0 even RelocModule rts PatchModule lea ModuleStart(PC),A0 lea Patch0(PC),A1 move.w #$4EF9,$D2(A0) ; jmp to move.l A1,$D4(A0) ; address lea Patch1(PC),A1 move.w #$4EF9,$936(A0) ; jmp to move.l A1,$938(A0) ; address lea Patch2(PC),A1 move.w #$4EB9,$752(A0) ; jsr to move.l A1,$754(A0) ; address move.l #$4E714E71,$758(A0) ; nop + nop rts Init bra.w ModuleStart Play bra.w ModuleStart+8 HelpMe rts ; restart module fix Patch0 move.b $976(A0),8(A5) movem.l (SP)+,D0-D7/A0-A6 rts Patch1 move.l YMPlayerBase(PC),A4 tst.b $25(A0) bne.b Next1 move.b 1(A0),3(A4) Next1 tst.b $25(A1) bne.b Next2 move.b 1(A1),7(A4) Next2 tst.b $25(A2) bne.b Next3 move.b 1(A2),11(A4) Next3 tst.b 12(A5) bne.b Next4 moveq #0,D7 move.b 10(A5),D7 move.w D7,$10(A4) Next4 move.w $1E(A0),(A4) move.w $1E(A1),4(A4) move.w $1E(A2),8(A4) move.b 9(A5),13(A4) move.b 11(A5),15(A4) move.w 4(A5),$12(A4) moveq #-1,D0 move.b D0,11(A5) move.b D0,12(A5) clr.w 4(A5) rts Patch2 pea (A4) move.l YMPlayerBase(PC),A4 clr.b $10(A4) move.b D0,$11(A4) move.l (SP)+,A4 rts ModuleStart incbin ram:DoYa ModuleEnd