Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; 10 SYS (49152)
- *=$0801
- BYTE $0E, $08, $0A, $00, $9E, $20, $28, $34, $39, $31, $35, $32, $29, $00, $00, $00
- ;----------------------------------------------------------------------------------------------
- *=$C000
- DEFM LSA ;Load and set register A
- LDA #$/1
- STA $/2
- ENDM
- DEFM SN ;Set note
- LDA #$/1
- STA $D400 ;low byte
- LDA #$/2
- STA $D401 ;high byte
- ENDM
- DEFM CKJ ;Check key and jump to label
- CMP #/1
- BEQ /2
- ENDM
- INIT:
- ; Val MemAddress
- LSA 44, D400 ;frequency voice1 low byte
- LSA 1D, D401 ;frequency voice1 high byte
- LSA 0F, D418 ;volume
- ;ADSR
- LSA 11, D405 ;attack
- LSA F0, D406 ;sustain
- ;play note
- LSA 11, D404 ;control register / turn on
- LSA 10, D404 ;control register / turn off
- JMP LOOP
- LOOP
- LDA 203
- ; Key Note Key Note
- CKJ 12, PC ;Z - C
- CKJ 13, PCS ;S - C#
- CKJ 23, PD ;X - D
- CKJ 18, PDS ;D - D#
- CKJ 20, PE ;C - E
- CKJ 31, PF ;V - F
- CKJ 28, PFS ;G - F#
- CKJ 26, PG ;B - G
- CKJ 29, PGS ;H - G#
- CKJ 39, PA ;N - A
- CKJ 34, PAS ;J - A#
- CKJ 36, PB ;M - B
- CKJ 64, NOF ;NaN - NaN
- JMP LOOP
- NON
- LSA 11, D404 ;gate on
- JMP LOOP
- NOF
- LSA 10, D404 ;gate off
- JMP LOOP
- ;------------------------------------
- PC
- SN 08, 93
- JMP NON
- PCS
- SN 09, 15
- JMP NON
- PD
- SN 09, 9F
- JMP NON
- PDS
- SN 0A, 32
- JMP NON
- PE
- SN 0A, CD
- JMP NON
- ;JumpExtentions
- PF
- JMP PF1
- PFS
- JMP PFS1
- PG
- JMP PG1
- PGS
- JMP PGS1
- PA
- JMP PA1
- PAS
- JMP PAS1
- PB
- JMP PB1
- ;-------------
- PF1
- SN 0B, 72
- JMP NON
- PFS1
- SN 0C, 20
- JMP NON
- PG1
- SN 0C, D8
- JMP NON
- PGS1
- SN 0D, 9C
- JMP NON
- PA1
- SN 0E, 6B
- JMP NON
- PAS1
- SN 0F, 46
- JMP NON
- PB1
- SN 10, 2F
- JMP NON
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement