2006-02-25 20:50:29 +00:00
|
|
|
#pragma once
|
|
|
|
|
2016-09-07 21:20:15 +00:00
|
|
|
// Registry soundtype:
|
|
|
|
#define REG_SOUNDTYPE_NONE 0
|
|
|
|
#define REG_SOUNDTYPE_DIRECT 1 // Not supported from 1.26
|
|
|
|
#define REG_SOUNDTYPE_SMART 2 // Not supported from 1.26
|
|
|
|
#define REG_SOUNDTYPE_WAVE 3
|
2015-03-10 12:33:14 +00:00
|
|
|
|
2016-09-07 21:20:15 +00:00
|
|
|
enum SoundType_e
|
|
|
|
{
|
|
|
|
SOUND_NONE = 0,
|
|
|
|
SOUND_WAVE
|
|
|
|
};
|
|
|
|
|
|
|
|
extern SoundType_e soundtype;
|
2006-02-25 20:50:29 +00:00
|
|
|
extern double g_fClksPerSpkrSample;
|
2015-04-09 21:54:26 +00:00
|
|
|
extern bool g_bQuieterSpeaker;
|
2015-03-10 12:33:14 +00:00
|
|
|
extern short g_nSpeakerData;
|
2006-02-25 20:50:29 +00:00
|
|
|
|
|
|
|
void SpkrDestroy ();
|
|
|
|
void SpkrInitialize ();
|
|
|
|
void SpkrReinitialize ();
|
|
|
|
void SpkrReset();
|
2021-01-20 21:30:34 +00:00
|
|
|
void SpkrSetEmulationType (SoundType_e newSoundType);
|
2006-02-25 20:50:29 +00:00
|
|
|
void SpkrUpdate (DWORD);
|
|
|
|
void SpkrUpdate_Timer();
|
|
|
|
DWORD SpkrGetVolume();
|
|
|
|
void SpkrSetVolume(DWORD dwVolume, DWORD dwVolumeMax);
|
|
|
|
void Spkr_Mute();
|
2021-03-23 22:01:41 +00:00
|
|
|
void Spkr_Unmute();
|
2006-02-25 20:50:29 +00:00
|
|
|
bool Spkr_IsActive();
|
|
|
|
bool Spkr_DSInit();
|
2022-04-17 15:23:46 +00:00
|
|
|
void Spkr_OutputToRiff(void);
|
2024-01-13 17:55:57 +00:00
|
|
|
UINT Spkr_GetNumChannels(void);
|
2015-12-05 16:50:27 +00:00
|
|
|
void SpkrSaveSnapshot(class YamlSaveHelper& yamlSaveHelper);
|
|
|
|
void SpkrLoadSnapshot(class YamlLoadHelper& yamlLoadHelper);
|
2006-02-25 20:50:29 +00:00
|
|
|
|
2018-03-03 21:27:50 +00:00
|
|
|
BYTE __stdcall SpkrToggle (WORD pc, WORD addr, BYTE bWrite, BYTE d, ULONG nExecutedCycles);
|