|
|
1.1 root 1: /*
2: Hatari
3: */
4:
5: /* Envelope shape table */
6: typedef struct {
7: int WaveStart[4],WaveDelta[4];
8: } ENVSHAPE;
9:
10: #define MIXBUFFER_SIZE 4096 /* Size of circular buffer to store sample to (44Khz) */
11: #define MIXBUFFER_LENGTH (MIXBUFFER_SIZE-1)
12:
13: #define SAMPLES_BUFFER_SIZE 1024
14: #define SAMPLES_PER_FRAME SoundPlayBackFreqFrameLengths[OutputAudioFreqIndex][0] /* Number of generated samples per frame(eg 44Khz=882) */
15: #define SAMPLES_FREQ (SAMPLES_PER_FRAME*50) /* Frequency of generated samples */
16: #define YM_FREQ (2000000/SAMPLES_FREQ) /* YM Frequency 2Mhz */
17:
18: extern BOOL bWriteEnvelopeFreq,bWriteChannelAAmp,bWriteChannelBAmp,bWriteChannelCAmp;
19: extern BOOL bEnvelopeFreqFlag;
20:
21: extern void Sound_Init(void);
22: extern void Sound_Reset(void);
23: extern void Sound_ClearMixBuffer(void);
24: extern void Sound_MemorySnapShot_Capture(BOOL bSave);
25: extern void Sound_CreateLogTables(void);
26: extern void Sound_CreateEnvelopeShapes(void);
27: extern void Sound_CreateSoundMixClipTable(void);
28: extern void Sound_GenerateYMFrameSamples(void);
1.1.1.2 ! root 29: extern void Sound_PassYMSamplesToAudio(void);
1.1 root 30: extern void Sound_UpdateHBL(void);
31: extern void Sound_Update(void);
32: extern void Sound_Update_VBL(void);
1.1.1.2 ! root 33: extern BOOL Sound_BeginRecording(char *pszCaptureFileName);
! 34: extern void Sound_EndRecording();
1.1 root 35: extern BOOL Sound_AreWeRecording(void);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.