X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fvgmsnd%2FvgmSnd.h;h=a5515ad0c956a07f5212ba29a3611537d564be1b;hb=436d05c0510c7fe21d1f36b628e3648d25d15fce;hp=f48e237130d8c0d05795dd2fdad393d3355e5789;hpb=01e6a54bfa71fd6b159146f30c405ca045e5fbdd;p=16.git diff --git a/src/lib/vgmsnd/vgmSnd.h b/src/lib/vgmsnd/vgmSnd.h index f48e2371..a5515ad0 100755 --- a/src/lib/vgmsnd/vgmSnd.h +++ b/src/lib/vgmsnd/vgmSnd.h @@ -1,80 +1,83 @@ #ifndef __VGMSNDDRV_H__ #define __VGMSNDDRV_H__ +#define VGM_USESCAMMPM + #ifdef __cplusplus extern "C" { #endif -//#include "src/lib/vgmsnd/stdtype.h" +#include "src/lib/vgmsnd/stdtype.h" #include "src/lib/16_head.h" +#include "src/lib/16_tail.h" typedef struct _vgm_file_header { - sdword fccVGM; - sdword lngEOFOffset; - sdword lngVersion; - sdword lngHzPSG; - sdword lngHzYM2413; - sdword lngGD3Offset; - sdword lngTotalSamples; - sdword lngLoopOffset; - sdword lngLoopSamples; - sdword lngRate; - byte bytPSGCfg[4]; - sdword lngHzYM2612; - sdword lngHzYM2151; - sdword lngDataOffset; - sdword lngHzSPCM; - sdword lngSPCMIntf; - sdword lngHzRF5C68; - sdword lngHzYM2203; - sdword lngHzYM2608; - sdword lngHzYM2610; - sdword lngHzYM3812; - sdword lngHzYM3526; - sdword lngHzY8950; - sdword lngHzYMF262; - sdword lngHzYMF278B; - sdword lngHzYMF271; - sdword lngHzYMZ280B; - sdword lngHzRF5C164; - sdword lngHzPWM; - sdword lngHzAY8910; - byte bytAYCfg[4]; - byte bytVolumeModifier; - byte bytReserved2; - char bytLoopBase; - byte bytLoopModifier; + dword/*32*/ fccVGM; + dword/*32*/ lngEOFOffset; + dword/*32*/ lngVersion; + dword/*32*/ lngHzPSG; + dword/*32*/ lngHzYM2413; + dword/*32*/ lngGD3Offset; + dword/*32*/ lngTotalSamples; + dword/*32*/ lngLoopOffset; + dword/*32*/ lngLoopSamples; + dword/*32*/ lngRate; + UINT8 bytPSGCfg[4]; + dword/*32*/ lngHzYM2612; + dword/*32*/ lngHzYM2151; + dword/*32*/ lngDataOffset; + dword/*32*/ lngHzSPCM; + dword/*32*/ lngSPCMIntf; + dword/*32*/ lngHzRF5C68; + dword/*32*/ lngHzYM2203; + dword/*32*/ lngHzYM2608; + dword/*32*/ lngHzYM2610; + dword/*32*/ lngHzYM3812; + dword/*32*/ lngHzYM3526; + dword/*32*/ lngHzY8950; + dword/*32*/ lngHzYMF262; + dword/*32*/ lngHzYMF278B; + dword/*32*/ lngHzYMF271; + dword/*32*/ lngHzYMZ280B; + dword/*32*/ lngHzRF5C164; + dword/*32*/ lngHzPWM; + dword/*32*/ lngHzAY8910; + UINT8 bytAYCfg[4]; + UINT8 bytVolumeModifier; + UINT8 bytReserved2; + INT8 bytLoopBase; + UINT8 bytLoopModifier; } VGM_HEADER; typedef struct _vgm_file { - sdword dataLen; - byte* data; + dword/*32*/ dataLen; + UINT8* data; VGM_HEADER header; } VGM_FILE; -byte OpenVGMFile(const char* FileName, VGM_FILE* vgmFile); -void FreeVGMFile(VGM_FILE* vgmFile); +UINT8 OpenVGMFile(const char* FileName, VGM_FILE* vgmFile, global_game_variables_t *gvar); +void FreeVGMFile(VGM_FILE* vgmFile, global_game_variables_t *gvar); void InitEngine(void); void DeinitEngine(void); -byte PlayMusic(VGM_FILE* vgmFile); -byte PlaySFX(VGM_FILE* vgmFile, byte sfxChnID); -byte StopMusic(void); -byte StopSFX(byte sfxChnID); -byte PauseMusic(void); -byte ResumeMusic(void); +UINT8 PlayMusic(VGM_FILE* vgmFile); +UINT8 PlaySFX(VGM_FILE* vgmFile, UINT8 sfxChnID); +UINT8 StopMusic(void); +UINT8 StopSFX(UINT8 sfxChnID); +UINT8 PauseMusic(void); +UINT8 ResumeMusic(void); void UpdateSoundEngine(void); // Functions that must be supplied by external library: -extern void OPL2_Write(byte reg, byte data); -extern byte OPL2_ReadStatus(void); +extern void OPL2_Write(UINT8 reg, UINT8 data); +extern UINT8 OPL2_ReadStatus(void); #ifdef __cplusplus