diff --git a/src-md/crt0.s b/src-md/crt0.s index dcd2c151a..27b3699f5 100644 --- a/src-md/crt0.s +++ b/src-md/crt0.s @@ -654,6 +654,14 @@ start_music: move.l d0,(a0)+ /* clear work ram used by FM driver */ dbra d1,2b + lea z80_vgm_start,a0 + lea z80_vgm_end,a1 + lea 0xA00000,a2 +3: + move.b (a0)+,(a2)+ /* copy Z80 driver */ + cmpa.l a0,a1 + bne.b 3b + | FM setup movea.l vgm_ptr,a6 /* lzss buffer */ lea 0x1C(a6),a6 /* loop offset */ @@ -855,6 +863,14 @@ stop_music: move.l d0,(a0)+ /* clear work ram used by FM driver */ dbra d1,1b + lea z80_vgm_start,a0 + lea z80_vgm_end,a1 + lea 0xA00000,a2 +2: + move.b (a0)+,(a2)+ /* copy Z80 driver */ + cmpa.l a0,a1 + bne.b 2b + move.w #0x0000,0xA11200 /* Z80 assert reset */ move.w #0x0000,0xA11100 /* Z80 deassert bus request */