|
|
1.1 root 1: /*
2: Hatari
1.1.1.2 root 3:
4: This file is distributed under the GNU Public License, version 2 or at
5: 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 */
28: PSG_REG_IO_PORTB /* 0x1111 */
1.1 root 29: };
30:
1.1.1.2 root 31: #define NUM_PSG_SOUND_REGISTERS 14 /* Number of register, not including IO ports */
1.1 root 32:
1.1.1.2 root 33: extern Uint8 PSGRegisters[16];
1.1 root 34:
35: extern void PSG_Reset(void);
1.1.1.4 root 36: extern void PSG_MemorySnapShot_Capture(bool bSave);
1.1.1.5 root 37:
38: extern void PSG_Set_SelectRegister(Uint8 val);
39: extern Uint8 PSG_Get_DataRegister(void);
40: extern void PSG_Set_DataRegister(Uint8 val);
41:
42: extern void PSG_ff8800_ReadByte(void);
43: extern void PSG_ff880x_ReadByte(void);
44: extern void PSG_ff8800_WriteByte(void);
45: extern void PSG_ff8801_WriteByte(void);
46: extern void PSG_ff8802_WriteByte(void);
47: extern void PSG_ff8803_WriteByte(void);
1.1.1.2 root 48:
49: #endif /* HATARI_PSG_H */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.