mirror of
https://github.com/deater/dos33fsprogs.git
synced 2025-02-25 17:29:26 +00:00
megamusic: pattern selection
This commit is contained in:
parent
97df405a11
commit
8486b21ee6
@ -150,21 +150,22 @@ page1_loop: ; delay 115+(7 loop)+4 (bit)+4(extra)
|
||||
; -1 (+1-2) from above
|
||||
; -25 inc framecount
|
||||
; -7 see if timeout
|
||||
; -930 play_music
|
||||
;-1009 play_music
|
||||
; -10 keypress
|
||||
;================
|
||||
; 3577
|
||||
; 3498
|
||||
|
||||
jsr play_music ; 6+924
|
||||
jsr play_music ; 6+1003
|
||||
|
||||
|
||||
|
||||
; Try X=118 Y=6 cycles=3577
|
||||
; Try X=57 Y=12 cycles=3493 R5
|
||||
|
||||
nop
|
||||
lda $0
|
||||
|
||||
|
||||
ldy #6 ; 2
|
||||
faloop1:ldx #118 ; 2
|
||||
ldy #12 ; 2
|
||||
faloop1:ldx #57 ; 2
|
||||
faloop2:dex ; 2
|
||||
bne faloop2 ; 2nt/3
|
||||
dey ; 2
|
||||
|
@ -8,6 +8,10 @@
|
||||
|
||||
megamusic_start: ; this should end up at $4000
|
||||
|
||||
lda #0
|
||||
sta MB_FRAME
|
||||
sta MB_PATTERN
|
||||
|
||||
;===================
|
||||
; Init mockingboard
|
||||
;===================
|
||||
|
@ -1,11 +1,51 @@
|
||||
|
||||
; takes
|
||||
; 3 + 80 + 82 + 88 + 80 + 82 + 88 + 80 + 82 + 88 + 80 + 80 + 11 = 924
|
||||
; 3 + 79 +
|
||||
; 80 + 82 + 88 +
|
||||
; 80 + 82 + 88 +
|
||||
; 80 + 82 + 88 +
|
||||
; 80 + 80 +
|
||||
; 11 = 1003
|
||||
play_music:
|
||||
|
||||
; self-modify the code
|
||||
ldy MB_PATTERN ; 3
|
||||
|
||||
lda mal_pattern,Y ; 4
|
||||
sta mb_smc1+1 ; 4
|
||||
lda mah_pattern,Y ; 4
|
||||
sta mb_smc2+1 ; 4
|
||||
sta mb_smc3+1 ; 4
|
||||
|
||||
lda mbl_pattern,Y ; 4
|
||||
sta mb_smc4+1 ; 4
|
||||
lda mbh_pattern,Y ; 4
|
||||
sta mb_smc5+1 ; 4
|
||||
sta mb_smc6+1 ; 4
|
||||
|
||||
lda mcl_pattern,Y ; 4
|
||||
sta mb_smc7+1 ; 4
|
||||
lda mch_pattern,Y ; 4
|
||||
sta mb_smc8+1 ; 4
|
||||
sta mb_smc9+1 ; 4
|
||||
|
||||
lda mnl_pattern,Y ; 4
|
||||
sta mb_smc10+1 ; 4
|
||||
lda mnh_pattern,Y ; 4
|
||||
sta mb_smc11+1 ; 4
|
||||
;=======
|
||||
; 79
|
||||
|
||||
|
||||
|
||||
|
||||
; play the code
|
||||
|
||||
ldy MB_FRAME ; 3
|
||||
;=======
|
||||
|
||||
; mal
|
||||
mb_smc1:
|
||||
lda mal00,Y ; 4
|
||||
sta MB_VALUE ; 3
|
||||
ldx #0 ; 2
|
||||
@ -14,6 +54,7 @@ play_music:
|
||||
; 80
|
||||
|
||||
; mah
|
||||
mb_smc2:
|
||||
lda mah00,Y ; 4
|
||||
and #$f ; 2
|
||||
sta MB_VALUE ; 3
|
||||
@ -22,6 +63,7 @@ play_music:
|
||||
;========
|
||||
; 82
|
||||
|
||||
mb_smc3:
|
||||
lda mah00,Y ; 4
|
||||
lsr ; 2
|
||||
lsr ; 2
|
||||
@ -34,6 +76,7 @@ play_music:
|
||||
; 88
|
||||
|
||||
; mbl
|
||||
mb_smc4:
|
||||
lda mbl00,Y ; 4
|
||||
sta MB_VALUE ; 3
|
||||
ldx #2 ; 2
|
||||
@ -41,6 +84,7 @@ play_music:
|
||||
;=======
|
||||
; 80
|
||||
; mbh
|
||||
mb_smc5:
|
||||
lda mbh00,Y ; 4
|
||||
and #$f ; 2
|
||||
sta MB_VALUE ; 3
|
||||
@ -49,6 +93,7 @@ play_music:
|
||||
;=======
|
||||
; 82
|
||||
|
||||
mb_smc6:
|
||||
lda mbh00,Y ; 4
|
||||
lsr ; 2
|
||||
lsr ; 2
|
||||
@ -60,6 +105,7 @@ play_music:
|
||||
;======
|
||||
; 88
|
||||
; mcl
|
||||
mb_smc7:
|
||||
lda mcl00,Y ; 4
|
||||
sta MB_VALUE ; 3
|
||||
ldx #4 ; 2
|
||||
@ -68,6 +114,7 @@ play_music:
|
||||
; 80
|
||||
|
||||
; mch
|
||||
mb_smc8:
|
||||
lda mch00,Y ; 4
|
||||
and #$f ; 2
|
||||
sta MB_VALUE ; 3
|
||||
@ -76,6 +123,7 @@ play_music:
|
||||
;=======
|
||||
; 82
|
||||
|
||||
mb_smc9:
|
||||
lda mch00,Y ; 4
|
||||
lsr ; 2
|
||||
lsr ; 2
|
||||
@ -87,6 +135,7 @@ play_music:
|
||||
;========
|
||||
; 88
|
||||
; mnl
|
||||
mb_smc10:
|
||||
lda mnl00,Y ; 4
|
||||
sta MB_VALUE ; 3
|
||||
ldx #6 ; 2
|
||||
@ -94,6 +143,7 @@ play_music:
|
||||
;=======
|
||||
; 80
|
||||
; mnh
|
||||
mb_smc11:
|
||||
lda mnh00,Y ; 4
|
||||
sta MB_VALUE ; 3
|
||||
ldx #7 ; 2
|
||||
@ -107,6 +157,50 @@ play_music:
|
||||
|
||||
.align $100
|
||||
|
||||
; patterns 31 long
|
||||
mal_pattern:
|
||||
.byte <mal00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mah_pattern:
|
||||
.byte <mah00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mbl_pattern:
|
||||
.byte <mbl00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mbh_pattern:
|
||||
.byte <mbh00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mcl_pattern:
|
||||
.byte <mcl00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mch_pattern:
|
||||
.byte <mch00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mnl_pattern:
|
||||
.byte <mnl00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
mnh_pattern:
|
||||
.byte <mnh00,<mal00,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
.byte <mal02,<mal02,<mal02,<mal02,<mal02,<mal02,<mal02
|
||||
|
||||
.align $100
|
||||
|
||||
mal00:
|
||||
.incbin "music/mock.al.00"
|
||||
mal02:
|
||||
|
@ -112,7 +112,7 @@ MB_ADDRL = $91
|
||||
MB_ADDRH = $92
|
||||
DONE_PLAYING = $93
|
||||
MB_FRAME = $94
|
||||
CHUNKSIZE = $95
|
||||
MB_PATTERN = $95
|
||||
LZ4_DONE = $96
|
||||
DECODE_ERROR = $97
|
||||
COPY_TIME = $98
|
||||
|
Loading…
x
Reference in New Issue
Block a user