Move some CMS definitions and function declarations to a header file
This commit is contained in:
35
src/include/86box/snd_cms.h
Normal file
35
src/include/86box/snd_cms.h
Normal file
@@ -0,0 +1,35 @@
|
||||
#ifndef SOUND_SND_CMS_H
|
||||
# define SOUND_SND_CMS_H
|
||||
|
||||
#include <stdint.h>
|
||||
#include <86box/sound.h>
|
||||
|
||||
#define MASTER_CLOCK 7159090
|
||||
|
||||
typedef struct cms_t
|
||||
{
|
||||
int addrs[2];
|
||||
uint8_t regs[2][32];
|
||||
uint16_t latch[2][6];
|
||||
int freq[2][6];
|
||||
float count[2][6];
|
||||
int vol[2][6][2];
|
||||
int stat[2][6];
|
||||
uint16_t noise[2][2];
|
||||
uint16_t noisefreq[2][2];
|
||||
int noisecount[2][2];
|
||||
int noisetype[2][2];
|
||||
|
||||
uint8_t latched_data;
|
||||
|
||||
int16_t buffer[SOUNDBUFLEN * 2];
|
||||
|
||||
int pos;
|
||||
} cms_t;
|
||||
|
||||
|
||||
extern void cms_update(cms_t *cms);
|
||||
extern void cms_write(uint16_t addr, uint8_t val, void *p);
|
||||
extern uint8_t cms_read(uint16_t addr, void *p);
|
||||
|
||||
#endif /*SOUND_SND_CMS_H*/
|
@@ -9,32 +9,9 @@
|
||||
#include <86box/io.h>
|
||||
#include <86box/device.h>
|
||||
#include <86box/sound.h>
|
||||
#include <86box/snd_cms.h>
|
||||
|
||||
|
||||
#define MASTER_CLOCK 7159090
|
||||
|
||||
|
||||
typedef struct cms_t
|
||||
{
|
||||
int addrs[2];
|
||||
uint8_t regs[2][32];
|
||||
uint16_t latch[2][6];
|
||||
int freq[2][6];
|
||||
float count[2][6];
|
||||
int vol[2][6][2];
|
||||
int stat[2][6];
|
||||
uint16_t noise[2][2];
|
||||
uint16_t noisefreq[2][2];
|
||||
int noisecount[2][2];
|
||||
int noisetype[2][2];
|
||||
|
||||
uint8_t latched_data;
|
||||
|
||||
int16_t buffer[SOUNDBUFLEN * 2];
|
||||
|
||||
int pos;
|
||||
} cms_t;
|
||||
|
||||
void cms_update(cms_t *cms)
|
||||
{
|
||||
for (; cms->pos < sound_pos_global; cms->pos++)
|
||||
|
Reference in New Issue
Block a user