LMMS
Loading...
Searching...
No Matches
Ym2413_Emu.h
Go to the documentation of this file.
1// YM2413 FM sound chip emulator interface
2
3// Game_Music_Emu https://bitbucket.org/mpyne/game-music-emu/
4#ifndef YM2413_EMU_H
5#define YM2413_EMU_H
6
7class Ym2413_Emu {
8 struct OPLL* opll;
9public:
10 Ym2413_Emu();
12
13 // Set output sample rate and chip clock rates, in Hz. Returns non-zero
14 // if error.
15 int set_rate( double sample_rate, double clock_rate );
16
17 // Reset to power-up state
18 void reset();
19
20 // Mute voice n if bit n (1 << n) of mask is set
21 enum { channel_count = 14 };
22 void mute_voices( int mask );
23
24 // Write 'data' to 'addr'
25 void write( int addr, int data );
26
27 // Run and write pair_count samples to output
28 typedef short sample_t;
29 enum { out_chan_count = 2 }; // stereo
30 void run( int pair_count, sample_t* out );
31};
32
33#endif
const long clock_rate
Definition Gym_Emu.cpp:26
LADSPA_Data sample_t
Definition basics.h:100
static const unsigned long mask[]
Definition bitwise.c:31
~Ym2413_Emu()
Definition Ym2413_Emu.cpp:10
struct OPLL * opll
Definition Ym2413_Emu.h:8
@ out_chan_count
Definition Ym2413_Emu.h:29
void write(int addr, int data)
Definition Ym2413_Emu.cpp:16
void run(int pair_count, sample_t *out)
Definition Ym2413_Emu.cpp:20
@ channel_count
Definition Ym2413_Emu.h:21
Ym2413_Emu()
Definition Ym2413_Emu.cpp:8
int set_rate(double sample_rate, double clock_rate)
Definition Ym2413_Emu.cpp:12
short sample_t
Definition Ym2413_Emu.h:28
void mute_voices(int mask)
Definition Ym2413_Emu.cpp:18
void reset()
Definition Ym2413_Emu.cpp:14
JSAMPIMAGE data
Definition jpeglib.h:945
float out
Definition lilv_test.c:1461