comparison src/Input/console/Sms_Oscs.h @ 0:13389e613d67 trunk

[svn] - initial import of audacious-plugins tree (lots to do)
author nenolod
date Mon, 18 Sep 2006 01:11:49 -0700
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:13389e613d67
1
2 // Private oscillators used by Sms_Apu
3
4 // Sms_Snd_Emu 0.1.3
5
6 #ifndef SMS_OSCS_H
7 #define SMS_OSCS_H
8
9 #include "blargg_common.h"
10 #include "Blip_Buffer.h"
11
12 struct Sms_Osc
13 {
14 Blip_Buffer* outputs [4]; // NULL, right, left, center
15 Blip_Buffer* output;
16 int output_select;
17
18 int delay;
19 int last_amp;
20 int volume;
21
22 Sms_Osc();
23 void reset();
24 };
25
26 struct Sms_Square : Sms_Osc
27 {
28 int period;
29 int phase;
30
31 typedef Blip_Synth<blip_good_quality,1> Synth;
32 const Synth* synth;
33
34 void reset();
35 void run( sms_time_t, sms_time_t );
36 };
37
38 struct Sms_Noise : Sms_Osc
39 {
40 const int* period;
41 unsigned shifter;
42 unsigned tap;
43
44 typedef Blip_Synth<blip_med_quality,1> Synth;
45 Synth synth;
46
47 void reset();
48 void run( sms_time_t, sms_time_t );
49 };
50
51 #endif
52