14 void init(
void* ram_64k );
36 int read (
int addr )
const;
41 void run(
int clock_count );
88 BLARGG_DISABLE_NOTHROW
157 return m.regs [addr];
165 if (
l *
r <
m.surround_threshold )
173 int enabled =
v.enabled;
174 v.volume [0] =
l & enabled;
175 v.volume [1] =
r & enabled;
183 int low = addr & 0x0F;
188 else if ( low == 0xC )
200 m.surround_threshold = disable ? 0 : -0x4000;
203#define SPC_NO_COPY_STATE_FUNCS 1
205#define SPC_LESS_ACCURATE 1
static const unsigned long mask[]
Definition bitwise.c:31
int * l
Definition inflate.c:1579
unsigned v[N_MAX]
Definition inflate.c:1584
JSAMPIMAGE data
Definition jpeglib.h:945
float out
Definition lilv_test.c:1461
unsigned char uint8_t
Definition mid.cpp:98
signed char int8_t
Definition mid.cpp:95
sample_t * out_end
Definition Spc_Dsp.h:137
int(* echo_hist_pos)[2]
Definition Spc_Dsp.h:115
sample_t * out
Definition Spc_Dsp.h:136
int surround_threshold
Definition Spc_Dsp.h:135
int new_kon
Definition Spc_Dsp.h:125
sample_t extra[extra_size]
Definition Spc_Dsp.h:139
int mute_mask
Definition Spc_Dsp.h:134
uint8_t * ram
Definition Spc_Dsp.h:133
voice_t voices[voice_count]
Definition Spc_Dsp.h:128
unsigned counters[4]
Definition Spc_Dsp.h:123
int every_other_sample
Definition Spc_Dsp.h:117
int kon
Definition Spc_Dsp.h:118
sample_t * out_begin
Definition Spc_Dsp.h:138
unsigned * counter_select[32]
Definition Spc_Dsp.h:130
int phase
Definition Spc_Dsp.h:122
int t_koff
Definition Spc_Dsp.h:126
int echo_hist[echo_hist_size *2][2]
Definition Spc_Dsp.h:114
int echo_length
Definition Spc_Dsp.h:121
int noise
Definition Spc_Dsp.h:119
uint8_t regs[register_count]
Definition Spc_Dsp.h:111
int echo_offset
Definition Spc_Dsp.h:120
env_mode_t env_mode
Definition Spc_Dsp.h:102
int volume[2]
Definition Spc_Dsp.h:105
int enabled
Definition Spc_Dsp.h:106
int hidden_env
Definition Spc_Dsp.h:104
int interp_pos
Definition Spc_Dsp.h:98
int brr_addr
Definition Spc_Dsp.h:99
int * buf_pos
Definition Spc_Dsp.h:97
int env
Definition Spc_Dsp.h:103
int buf[brr_buf_size *2]
Definition Spc_Dsp.h:96
int kon_delay
Definition Spc_Dsp.h:101
int brr_offset
Definition Spc_Dsp.h:100
sample_t const * out_pos() const
Definition Spc_Dsp.h:86
void soft_reset_common()
Definition Spc_Dsp.cpp:666
void disable_surround(bool disable=true)
Definition Spc_Dsp.h:198
void run(int clock_count)
Definition Spc_Dsp.cpp:186
@ echo_hist_size
Definition Spc_Dsp.h:90
void update_voice_vol(int addr)
Definition Spc_Dsp.h:160
int sample_count() const
Definition Spc_Dsp.h:152
@ v_voll
Definition Spc_Dsp.h:76
@ v_adsr0
Definition Spc_Dsp.h:78
@ v_envx
Definition Spc_Dsp.h:80
@ v_pitchl
Definition Spc_Dsp.h:77
@ v_srcn
Definition Spc_Dsp.h:78
@ v_pitchh
Definition Spc_Dsp.h:77
@ v_outx
Definition Spc_Dsp.h:80
@ v_volr
Definition Spc_Dsp.h:76
@ v_gain
Definition Spc_Dsp.h:79
@ v_adsr1
Definition Spc_Dsp.h:79
@ extra_size
Definition Spc_Dsp.h:84
@ brr_buf_size
Definition Spc_Dsp.h:93
void set_output(sample_t *out, int out_size)
Definition Spc_Dsp.cpp:76
state_t m
Definition Spc_Dsp.h:141
int read(int addr) const
Definition Spc_Dsp.h:154
void write(int addr, int data)
Definition Spc_Dsp.h:178
sample_t * extra()
Definition Spc_Dsp.h:85
void soft_reset()
Definition Spc_Dsp.cpp:679
void mute_voices(int mask)
Definition Spc_Dsp.cpp:632
void write_outline(int addr, int data)
@ r_koff
Definition Spc_Dsp.h:65
@ r_pmon
Definition Spc_Dsp.h:67
@ r_evolr
Definition Spc_Dsp.h:64
@ r_flg
Definition Spc_Dsp.h:66
@ r_efb
Definition Spc_Dsp.h:67
@ r_mvoll
Definition Spc_Dsp.h:63
@ r_endx
Definition Spc_Dsp.h:66
@ r_edl
Definition Spc_Dsp.h:70
@ r_fir
Definition Spc_Dsp.h:71
@ r_evoll
Definition Spc_Dsp.h:64
@ r_esa
Definition Spc_Dsp.h:69
@ r_eon
Definition Spc_Dsp.h:68
@ r_kon
Definition Spc_Dsp.h:65
@ r_dir
Definition Spc_Dsp.h:69
@ r_mvolr
Definition Spc_Dsp.h:63
@ r_non
Definition Spc_Dsp.h:68
@ voice_count
Definition Spc_Dsp.h:47
void load(uint8_t const regs[register_count])
Definition Spc_Dsp.cpp:685
@ register_count
Definition Spc_Dsp.h:56
env_mode_t
Definition Spc_Dsp.h:92
@ env_attack
Definition Spc_Dsp.h:92
@ env_decay
Definition Spc_Dsp.h:92
@ env_release
Definition Spc_Dsp.h:92
@ env_sustain
Definition Spc_Dsp.h:92
void run_counter(int)
Definition Spc_Dsp.cpp:172
void init_counter()
Definition Spc_Dsp.cpp:153
short sample_t
Definition Spc_Dsp.h:18
void reset()
Definition Spc_Dsp.cpp:704
int r
Definition crypt.c:458
typedef int(UZ_EXP MsgFn)()