Genesis-Plus-GX/source/sound/sn76489.h
ekeeke31 b8506f31b7 .implemented new SN76489 core, using Blargg's blip linear implementation
.improved sound chips input clock precision (float->double)
2010-08-24 12:48:40 +00:00

32 lines
1.0 KiB
C

/*
SN76489 emulation
by Maxim in 2001 and 2002
converted from my original Delphi implementation
I'm a C newbie so I'm sure there are loads of stupid things
in here which I'll come back to some day and redo
Includes:
- Super-high quality tone channel "oversampling" by calculating fractional positions on transitions
- Noise output pattern reverse engineered from actual SMS output
- Volume levels taken from actual SMS output
*/
#ifndef _SN76489_H_
#define _SN76489_H_
/* Function prototypes */
extern void SN76489_Init(double PSGClockValue, int SamplingRate);
extern void SN76489_Reset(void);
extern void SN76489_Shutdown(void);
extern void SN76489_SetContext(uint8 *data);
extern void SN76489_GetContext(uint8 *data);
extern uint8 *SN76489_GetContextPtr(void);
extern int SN76489_GetContextSize(void);
extern void SN76489_Write(int data);
extern void SN76489_Update(INT16 *buffer, int length);
extern void SN76489_BoostNoise(int boost);
#endif /* _SN76489_H_ */