Cybernoid/Common/MockingboardDefs.a

58 lines
1.1 KiB
Plaintext

; Mockingboard defines:
CARD_BASE = $C100
SY6522_A_BASE = $00
SY6522_A_PH_BASE = $10 ; Phasor mode (this is common to both MB & Phasor modes)
SY6522_B_BASE = $80
SY6522_ORB = 0
SY6522_ORA = 1
SY6522_DDRB = 2
SY6522_DDRA = 3
SY6522_TIMER1L_COUNTER = 4
SY6522_TIMER1H_COUNTER = 5
SY6522_TIMER2L_COUNTER = 8
SY6522_TIMER2H_COUNTER = 9
SY6522_ACR = $B
SY6522_IFR = $D
SY6522_IER = $E
AY_AFINE = 0
AY_ACOARSE = 1
AY_BFINE = 2
AY_BCOARSE = 3
AY_CFINE = 4
AY_CCOARSE = 5
AY_NOISEPER = 6
AY_ENABLE = 7
AY_AVOL = 8
AY_BVOL = 9
AY_CVOL = 10
AY_EFINE = 11
AY_ECOARSE = 12
AY_ESHAPE = 13
AY_NOISE_MASK = $1f ; valid bits of AY_NOISEPER
AY_AMPLITUDE_MODE = $10 ; b4 of AY_xVOL (0=fixed, 1=envelope)
AY_ENA_A = %110110 ; Enable A (Noise & Tone)
AY_ENA_B = %101101 ; Enable B (Noise & Tone)
AY_ENA_C = %011011 ; Enable C (Noise & Tone)
AY_DIS_A = %001001 ; Disable A (Noise & Tone)
AY_DIS_B = %010010 ; Disable B (Noise & Tone)
AY_DIS_C = %100100 ; Disable C (Noise & Tone)
; AY inputs on BDIR|BC2|BC1:
AY_RESET = 0
AY_INACTIVE = 4
AY_READ = 5
AY_WRITE = 6
AY_LATCH = 7
; Phasor mode
PH_MOCKINGBOARD = 8
PH_PHASOR = $D
PH_ECHOPLUS = $F