Gradius III - Fix the drumroll fade-in when the intro starts

This commit is contained in:
dinkc64 2014-11-05 06:07:44 +00:00
parent 424951feea
commit 7d409470f6
3 changed files with 15 additions and 2 deletions

View File

@ -448,8 +448,8 @@ UINT8 __fastcall gradius3_sound_read(UINT16 address)
static void DrvK007232VolCallback(INT32 v) static void DrvK007232VolCallback(INT32 v)
{ {
K007232SetVolume(0, 0, (v >> 0x4) * 0x11, 0); K007232SetVolumeF(0, 0, (v >> 0x4) * 0x11, 0);
K007232SetVolume(0, 1, 0, (v & 0x0f) * 0x11); K007232SetVolumeF(0, 1, 0, (v & 0x0f) * 0x11);
} }
static void K052109Callback(INT32 layer, INT32, INT32 *code, INT32 *color, INT32 *, INT32 *) static void K052109Callback(INT32 layer, INT32, INT32 *code, INT32 *color, INT32 *, INT32 *)

View File

@ -359,6 +359,18 @@ void K007232SetVolume(INT32 chip, INT32 channel,INT32 volumeA,INT32 volumeB)
Chip->vol[channel][1] = volumeB; Chip->vol[channel][1] = volumeB;
} }
void K007232SetVolumeF(INT32 chip, INT32 channel,INT32 volumeA,INT32 volumeB)
{
#if defined FBA_DEBUG
if (!DebugSnd_K007232Initted) bprintf(PRINT_ERROR, _T("K007232SetVolumeF called without init\n"));
if (chip >nNumChips) bprintf(PRINT_ERROR, _T("K007232SetVolumeF called with invalid chip %x\n"), chip);
#endif
Chip = &Chips[chip];
Chip->vol[channel][0] = volumeA;
Chip->vol[channel][1] = volumeB;
}
void k007232_set_bank(INT32 chip, INT32 chABank, INT32 chBBank ) void k007232_set_bank(INT32 chip, INT32 chABank, INT32 chBBank )
{ {
#if defined FBA_DEBUG #if defined FBA_DEBUG

View File

@ -7,6 +7,7 @@ void K007232SetRoute(INT32 chip, INT32 nIndex, double nVolume, INT32 nRouteDir);
void K007232Exit(); void K007232Exit();
INT32 K007232Scan(INT32 nAction, INT32 *pnMin); INT32 K007232Scan(INT32 nAction, INT32 *pnMin);
void K007232SetVolume(INT32 chip, INT32 channel,INT32 volumeA,INT32 volumeB); void K007232SetVolume(INT32 chip, INT32 channel,INT32 volumeA,INT32 volumeB);
void K007232SetVolumeF(INT32 chip, INT32 channel,INT32 volumeA,INT32 volumeB);
void k007232_set_bank( INT32 chip, INT32 chABank, INT32 chBBank ); void k007232_set_bank( INT32 chip, INT32 chABank, INT32 chBBank );
#define BURN_SND_K007232_ROUTE_1 0 #define BURN_SND_K007232_ROUTE_1 0