|
|
1.1 root 1: /*
2: Hatari
1.1.1.2 root 3:
1.1.1.8 ! root 4: This file is distributed under the GNU General Public License, version 2
! 5: or at your option any later version. Read the file gpl.txt for details.
1.1 root 6: */
7:
1.1.1.2 root 8: #ifndef HATARI_PSG_H
9: #define HATARI_PSG_H
10:
11: enum
12: {
13: PSG_REG_CHANNEL_A_FINE, /* 0x0000 */
14: PSG_REG_CHANNEL_A_COARSE, /* 0x0001 */
15: PSG_REG_CHANNEL_B_FINE, /* 0x0010 */
16: PSG_REG_CHANNEL_B_COARSE, /* 0x0011 */
17: PSG_REG_CHANNEL_C_FINE, /* 0x0100 */
18: PSG_REG_CHANNEL_C_COARSE, /* 0x0101 */
19: PSG_REG_NOISE_GENERATOR, /* 0x0110 */
20: PSG_REG_MIXER_CONTROL, /* 0x0111 */
21: PSG_REG_CHANNEL_A_AMP, /* 0x1000 */
22: PSG_REG_CHANNEL_B_AMP, /* 0x1001 */
23: PSG_REG_CHANNEL_C_AMP, /* 0x1010 */
24: PSG_REG_ENV_FINE, /* 0x1011 */
25: PSG_REG_ENV_COARSE, /* 0x1100 */
26: PSG_REG_ENV_SHAPE, /* 0x1101 */
27: PSG_REG_IO_PORTA, /* 0x1110 */
1.1.1.7 root 28: PSG_REG_IO_PORTB, /* 0x1111 */
29: MAX_PSG_REGISTERS
1.1 root 30: };
31:
1.1.1.7 root 32: #define NUM_PSG_SOUND_REGISTERS 14 /* Number of sound related registers, not including IO ports */
1.1 root 33:
1.1.1.7 root 34: extern Uint8 PSGRegisters[MAX_PSG_REGISTERS];
1.1 root 35:
36: extern void PSG_Reset(void);
1.1.1.4 root 37: extern void PSG_MemorySnapShot_Capture(bool bSave);
1.1.1.5 root 38:
39: extern void PSG_Set_SelectRegister(Uint8 val);
40: extern Uint8 PSG_Get_DataRegister(void);
41: extern void PSG_Set_DataRegister(Uint8 val);
42:
43: extern void PSG_ff8800_ReadByte(void);
44: extern void PSG_ff880x_ReadByte(void);
45: extern void PSG_ff8800_WriteByte(void);
46: extern void PSG_ff8801_WriteByte(void);
47: extern void PSG_ff8802_WriteByte(void);
48: extern void PSG_ff8803_WriteByte(void);
1.1.1.2 root 49:
50: #endif /* HATARI_PSG_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.