sfx audio bank: fixes to get the sfx audio bank to link / decompress, even though it's more thank 32k bytes
This commit is contained in:
parent
78e5ff4305
commit
707ee613b3
130
asm/mraudio.s
130
asm/mraudio.s
|
@ -15,6 +15,15 @@ mraDummy start ASM_CODE
|
||||||
* void mraLoadBank(char* pAudioBank);
|
* void mraLoadBank(char* pAudioBank);
|
||||||
*
|
*
|
||||||
mraLoadBank start ASM_CODE
|
mraLoadBank start ASM_CODE
|
||||||
|
|
||||||
|
pAudioBank equ 4
|
||||||
|
lda 2,s
|
||||||
|
sta pAudioBank+2,s
|
||||||
|
lda 1,s
|
||||||
|
sta pAudioBank+1,s
|
||||||
|
|
||||||
|
pla
|
||||||
|
pla
|
||||||
rtl
|
rtl
|
||||||
*-------------------------------------------------------------------------------
|
*-------------------------------------------------------------------------------
|
||||||
end
|
end
|
||||||
|
@ -37,7 +46,6 @@ mraPlay start ASM_CODE
|
||||||
*
|
*
|
||||||
|
|
||||||
AudioTable start ASM_CODE
|
AudioTable start ASM_CODE
|
||||||
|
|
||||||
dc a'SND_BOMBSHHT'
|
dc a'SND_BOMBSHHT'
|
||||||
dc a'SND_BONUS'
|
dc a'SND_BONUS'
|
||||||
dc a'SND_BOX'
|
dc a'SND_BOX'
|
||||||
|
@ -60,85 +68,85 @@ AudioTable start ASM_CODE
|
||||||
dc a'SND_WALK'
|
dc a'SND_WALK'
|
||||||
|
|
||||||
SND_BOMBSHHT anop
|
SND_BOMBSHHT anop
|
||||||
dc i,'$013B' ; Frequency
|
dc i'$013B' ; Frequency
|
||||||
dc b,'$2B' ; Address
|
dc h'2B' ; Address
|
||||||
dc b,'$00' ; Size
|
dc h'00' ; Size
|
||||||
SND_BONUS anop
|
SND_BONUS anop
|
||||||
dc i,'$003D' ; Frequency
|
dc i'$003D' ; Frequency
|
||||||
dc b,'$A0' ; Address
|
dc h'A0' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_BOX anop
|
SND_BOX anop
|
||||||
dc i,'$0039' ; Frequency
|
dc i'$0039' ; Frequency
|
||||||
dc b,'$D0' ; Address
|
dc h'D0' ; Address
|
||||||
dc b,'$1B' ; Size
|
dc h'1B' ; Size
|
||||||
SND_BULLET anop
|
SND_BULLET anop
|
||||||
dc i,'$0033' ; Frequency
|
dc i'$0033' ; Frequency
|
||||||
dc b,'$70' ; Address
|
dc h'70' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_CRAWL anop
|
SND_CRAWL anop
|
||||||
dc i,'$005D' ; Frequency
|
dc i'$005D' ; Frequency
|
||||||
dc b,'$9E' ; Address
|
dc h'9E' ; Address
|
||||||
dc b,'$09' ; Size
|
dc h'09' ; Size
|
||||||
SND_DIE anop
|
SND_DIE anop
|
||||||
dc i,'$0042' ; Frequency
|
dc i'$0042' ; Frequency
|
||||||
dc b,'$90' ; Address
|
dc h'90' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_ENT0 anop
|
SND_ENT0 anop
|
||||||
dc i,'$0065' ; Frequency
|
dc i'$0065' ; Frequency
|
||||||
dc b,'$D8' ; Address
|
dc h'D8' ; Address
|
||||||
dc b,'$1B' ; Size
|
dc h'1B' ; Size
|
||||||
SND_ENT1 anop
|
SND_ENT1 anop
|
||||||
dc i,'$0030' ; Frequency
|
dc i'$0030' ; Frequency
|
||||||
dc b,'$30' ; Address
|
dc h'30' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_ENT2 anop
|
SND_ENT2 anop
|
||||||
dc i,'$0032' ; Frequency
|
dc i'$0032' ; Frequency
|
||||||
dc b,'$40' ; Address
|
dc h'40' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_ENT3 anop
|
SND_ENT3 anop
|
||||||
dc i,'$0033' ; Frequency
|
dc i'$0033' ; Frequency
|
||||||
dc b,'$80' ; Address
|
dc h'80' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_ENT4 anop
|
SND_ENT4 anop
|
||||||
dc i,'$0036' ; Frequency
|
dc i'$0036' ; Frequency
|
||||||
dc b,'$50' ; Address
|
dc h'50' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_ENT6 anop
|
SND_ENT6 anop
|
||||||
dc i,'$006D' ; Frequency
|
dc i'$006D' ; Frequency
|
||||||
dc b,'$E8' ; Address
|
dc h'E8' ; Address
|
||||||
dc b,'$1B' ; Size
|
dc h'1B' ; Size
|
||||||
SND_ENT8 anop
|
SND_ENT8 anop
|
||||||
dc i,'$005D' ; Frequency
|
dc i'$005D' ; Frequency
|
||||||
dc b,'$AC' ; Address
|
dc h'AC' ; Address
|
||||||
dc b,'$12' ; Size
|
dc h'12' ; Size
|
||||||
SND_EXPLODE anop
|
SND_EXPLODE anop
|
||||||
dc i,'$0036' ; Frequency
|
dc i'$0036' ; Frequency
|
||||||
dc b,'$B0' ; Address
|
dc h'B0' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_JUMP anop
|
SND_JUMP anop
|
||||||
dc i,'$0072' ; Frequency
|
dc i'$0072' ; Frequency
|
||||||
dc b,'$F0' ; Address
|
dc h'F0' ; Address
|
||||||
dc b,'$1B' ; Size
|
dc h'1B' ; Size
|
||||||
SND_PAD anop
|
SND_PAD anop
|
||||||
dc i,'$003A' ; Frequency
|
dc i'$003A' ; Frequency
|
||||||
dc b,'$E0' ; Address
|
dc h'E0' ; Address
|
||||||
dc b,'$1B' ; Size
|
dc h'1B' ; Size
|
||||||
SND_SBONUS1 anop
|
SND_SBONUS1 anop
|
||||||
dc i,'$003D' ; Frequency
|
dc i'$003D' ; Frequency
|
||||||
dc b,'$C0' ; Address
|
dc h'C0' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_SBONUS2 anop
|
SND_SBONUS2 anop
|
||||||
dc i,'$0041' ; Frequency
|
dc i'$0041' ; Frequency
|
||||||
dc b,'$60' ; Address
|
dc h'60' ; Address
|
||||||
dc b,'$24' ; Size
|
dc h'24' ; Size
|
||||||
SND_STICK anop
|
SND_STICK anop
|
||||||
dc i,'$0067' ; Frequency
|
dc i'$0067' ; Frequency
|
||||||
dc b,'$2C' ; Address
|
dc h'2C' ; Address
|
||||||
dc b,'$12' ; Size
|
dc h'12' ; Size
|
||||||
SND_WALK anop
|
SND_WALK anop
|
||||||
dc i,'$007B' ; Frequency
|
dc i'$007B' ; Frequency
|
||||||
dc b,'$AB' ; Address
|
dc h'AB' ; Address
|
||||||
dc b,'$00' ; Size
|
dc h'00' ; Size
|
||||||
|
|
||||||
*-------------------------------------------------------------------------------
|
*-------------------------------------------------------------------------------
|
||||||
end
|
end
|
||||||
|
|
8
data.bat
8
data.bat
|
@ -41,7 +41,12 @@ iix mkobj rick1_lz4 data:rick1.lz4 data:rick1.a ntpdata
|
||||||
iix mkobj rick1victory_lz4 data:rick1victory.lz4 data:rick1victory.a ntpdata
|
iix mkobj rick1victory_lz4 data:rick1victory.lz4 data:rick1victory.a ntpdata
|
||||||
iix mkobj samerica_lz4 data:samerica.lz4 data:samerica.a ntpdata
|
iix mkobj samerica_lz4 data:samerica.lz4 data:samerica.a ntpdata
|
||||||
iix mkobj schwarz_lz4 data:schwarz.lz4 data:schwarz.a ntpdata
|
iix mkobj schwarz_lz4 data:schwarz.lz4 data:schwarz.a ntpdata
|
||||||
iix mkobj sfx_lz4 data:sfx.lz4 data:lz4.a sfxdata
|
rem iix mkobj sfx_lz4 data:sfx.lz4 data:sfx.a sfxdata
|
||||||
|
del data\sfx.part.bat
|
||||||
|
gfsplit data\sfx.lz4 data\sfx.part 32
|
||||||
|
iix mkobj sfx_lz4 data:sfx.part1 data:sfx.a sfxdata
|
||||||
|
iix mkobj sfx_lz5 data:sfx.part2 data:sfx2.a sfxdata
|
||||||
|
|
||||||
rem
|
rem
|
||||||
rem Packed Mr.Sprites into object files
|
rem Packed Mr.Sprites into object files
|
||||||
rem
|
rem
|
||||||
|
@ -67,6 +72,7 @@ iix makelib -P data.lib +data:rick1victory.a
|
||||||
iix makelib -P data.lib +data:samerica.a
|
iix makelib -P data.lib +data:samerica.a
|
||||||
iix makelib -P data.lib +data:schwarz.a
|
iix makelib -P data.lib +data:schwarz.a
|
||||||
iix makelib -P data.lib +data:sfx.a
|
iix makelib -P data.lib +data:sfx.a
|
||||||
|
iix makelib -P data.lib +data:sfx2.a
|
||||||
rem
|
rem
|
||||||
rem NinjaTrackerPlus Library
|
rem NinjaTrackerPlus Library
|
||||||
rem
|
rem
|
||||||
|
|
15
src/syssnd.c
15
src/syssnd.c
|
@ -41,6 +41,8 @@ char* pNtpSong = NULL;
|
||||||
|
|
||||||
extern char ntpplayer_lz4;
|
extern char ntpplayer_lz4;
|
||||||
extern char samerica_lz4;
|
extern char samerica_lz4;
|
||||||
|
extern char sfx_lz4;
|
||||||
|
extern char sfx_lz5;
|
||||||
|
|
||||||
void SetAudioBank(char bankNo);
|
void SetAudioBank(char bankNo);
|
||||||
void NTPstop(void);
|
void NTPstop(void);
|
||||||
|
@ -70,6 +72,17 @@ syssnd_init(void)
|
||||||
|
|
||||||
//printf("%p\n", pNtpDriver );
|
//printf("%p\n", pNtpDriver );
|
||||||
//printf("%p\n", pNtpSong );
|
//printf("%p\n", pNtpSong );
|
||||||
|
|
||||||
|
//--- Take Advantage of the 64k bank we just
|
||||||
|
// Allocated, as a temp buffer to get our
|
||||||
|
// SFX loaded into the DOC
|
||||||
|
|
||||||
|
printf("Decompress SFX %p\n", &sfx_lz4); // Force this to be linked in
|
||||||
|
printf("Decompress SFX %p\n", &sfx_lz5); // Force this to be linked in
|
||||||
|
LZ4_Unpack(pNtpDriver, &sfx_lz4);
|
||||||
|
|
||||||
|
printf("Load SFX into the DOC\n");
|
||||||
|
mraLoadBank(pNtpDriver);
|
||||||
|
|
||||||
printf("Decompress NTP Driver\n");
|
printf("Decompress NTP Driver\n");
|
||||||
LZ4_Unpack(pNtpDriver, &ntpplayer_lz4);
|
LZ4_Unpack(pNtpDriver, &ntpplayer_lz4);
|
||||||
|
@ -79,6 +92,7 @@ syssnd_init(void)
|
||||||
printf("SetAudioBank\n");
|
printf("SetAudioBank\n");
|
||||||
SetAudioBank( (*handle)>>16 );
|
SetAudioBank( (*handle)>>16 );
|
||||||
|
|
||||||
|
#if 0
|
||||||
printf("NTPprepare\n");
|
printf("NTPprepare\n");
|
||||||
|
|
||||||
if (NTPprepare(pNtpSong))
|
if (NTPprepare(pNtpSong))
|
||||||
|
@ -90,6 +104,7 @@ syssnd_init(void)
|
||||||
printf("NTPplay\n");
|
printf("NTPplay\n");
|
||||||
NTPplay(0);
|
NTPplay(0);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue