|
sgdk
|
PSG support. More...
Go to the source code of this file.
Defines | |
| #define | PSG_PORT 0xC00011 |
| PSG port address. | |
| #define | PSG_ENVELOPE_MIN 15 |
| Minimum PSG envelope value. | |
| #define | PSG_ENVELOPE_MAX 0 |
| Maximum PSG envelope value. | |
| #define | PSG_NOISE_TYPE_PERIODIC 0 |
| Periodic noise type (like low-frequency tone). | |
| #define | PSG_NOISE_TYPE_WHITE 1 |
| White noise type (hiss). | |
| #define | PSG_NOISE_FREQ_CLOCK2 0 |
| Noise frequency = PSG clock / 2 (less coarse). | |
| #define | PSG_NOISE_FREQ_CLOCK4 1 |
| Noise frequency = PSG clock / 4. | |
| #define | PSG_NOISE_FREQ_CLOCK8 2 |
| Noise frequency = PSG clock / 8 (more coarse). | |
| #define | PSG_NOISE_FREQ_TONE3 3 |
| Noise frequency = Tone generator #3. | |
| #define | PSG_init() _Pragma("GCC error \"This method is deprecated, use PSG_reset() instead.\"") |
Functions | |
| void | PSG_reset (void) |
| Reset PSG chip. | |
| void | PSG_write (u8 data) |
| Write to PSG port. | |
| void | PSG_setEnvelope (u8 channel, u8 value) |
| Set envelope level. | |
| void | PSG_setTone (u8 channel, u16 value) |
| Set tone. | |
| void | PSG_setToneLow (u8 channel, u8 value) |
| Partial set tone (low bit only b3-b0). | |
| void | PSG_setFrequency (u8 channel, u16 value) |
| Set frequency. | |
| void | PSG_setNoise (u8 type, u8 frequency) |
| Set noise type and frequency. | |
PSG support.
This unit provides access to the PSG through the 68000 CPU
| #define PSG_init | ( | ) | _Pragma("GCC error \"This method is deprecated, use PSG_reset() instead.\"") |
Set envelope level.
| channel | Channel we want to set envelope (0-3). |
| value | Envelope level to set (PSG_ENVELOPE_MIN - PSG_ENVELOPE_MAX). |
Set envelope level for the specified PSG channel.
Set frequency.
| channel | Channel we want to set frequency (0-3). |
| value | Frequency value to set in Hz (0-4095). |
Set frequency for the specified PSG channel.
This method actually converts the specified frequency value in PSG tone value.
Set noise type and frequency.
| type | Noise type, accepted values are: PSG_NOISE_TYPE_PERIODIC PSG_NOISE_TYPE_WHITE |
| frequency | Noise frequency, accepted values are: PSG_NOISE_FREQ_CLOCK2 PSG_NOISE_FREQ_CLOCK4 PSG_NOISE_FREQ_CLOCK8 PSG_NOISE_FREQ_TONE3 |
Set tone.
| channel | Channel we want to set tone (0-3). |
| value | Tone value to set (0-1023). |
Set direct tone value for the specified PSG channel.
Partial set tone (low bit only b3-b0).
| channel | Channel we want to set tone (0-3). |
| value | Low bit (b3-b0) of tone value to set (0-15) |
Set low part of tone value for the specified PSG channel.
| void PSG_write | ( | u8 | data | ) |
Write to PSG port.
| data | value to write to the port. |
Write the specified value to PSG data port.