base:macro_player
no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
— | base:macro_player [2015-04-17 04:32] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Macro Player ====== | ||
+ | |||
+ | by Geir Tjelta. | ||
+ | |||
+ | |||
+ | The binary include file (and the source) is included in this archive: {{: | ||
+ | |||
+ | < | ||
+ | ; | ||
+ | ; | ||
+ | ;The reason: How small and efficient can a player be, and still sound like A-class ? Plus I want to compose tunes in text/ | ||
+ | ;It has been paid attention of code length and rastertime, not data length, but still taken notice of. | ||
+ | ; | ||
+ | ;Macro Player handles ADSR, calc-frequency changes, pulse, and waveforms using one table that includes branch jumps (to macros). | ||
+ | ;These branch jumps triggers other tables aswell, like Filter and pulse sweeps. This method free's up the player for init code. | ||
+ | ;Branch calls also free's up code when usually CMP's is used for what tasks to do. Tempo is also used in a similar way. | ||
+ | ; | ||
+ | ;The conductor has patterns that looks just like an Amiga/PC tracker, but has commands for crunching rests/holds (used when tune is done) | ||
+ | ;You can compose music directly in text format, all channels synchronized. Make notice that pattern data left to right is voice 3-1, when using ring-mod. | ||
+ | ;The sequencer handles note data, gate on/off, and triggers " | ||
+ | ;Tie-notes, arpeggio, filter, slides and vibrato (etc..) can be made in the sound-table (fxt). When understood, everything is readable.. | ||
+ | ;How you edit determines the length of the tunes. | ||
+ | ; | ||
+ | ;Player by Geir Tjelta (C) 2008. | ||
+ | ;Music composed by Jeroen Tel (C) 1987. | ||
+ | ;Cloned by Geir, March 2009. | ||
+ | ; | ||
+ | ;Make notice that this tune doesn' | ||
+ | ;But when that is said, it doesn' | ||
+ | ;With all respect of Jeroen Tel, I still had to add a few slides to show that the player could handle such, since this tune didn't have any originally. | ||
+ | ;Also the Bass guitar has vibrato, which is not in the original. | ||
+ | ; | ||
+ | ; | ||
+ | |||
+ | *= $0810 ; | ||
+ | |||
+ | notebit | ||
+ | zero = $4b ;Can not be used outside player, this is the pattern zeropage | ||
+ | zero2 = $4d ;Only used on framecall | ||
+ | sid = $3400 ;SID register | ||
+ | |||
+ | key = $9090 ; | ||
+ | |||
+ | ; | ||
+ | ooo = $8080 ; >c3-ooo = " | ||
+ | efx = $80 ; efx,xxx = xxx=macro definition | ||
+ | fix = $81 ; fix,xxx = xxx=macro definition | ||
+ | end = $ff ; .byte end = Pattern end | ||
+ | |||
+ | xxxxxxx | ||
+ | ooooooo | ||
+ | ooxxxxx | ||
+ | oooxxxx | ||
+ | ooooxxx | ||
+ | oooooxx | ||
+ | oooooox | ||
+ | |||
+ | ; | ||
+ | ;Example1: >c3-ooo = C-3 | ||
+ | ;Example2: ooooooo = one note rest | ||
+ | ;Example3: xxxxxxx = gate off | ||
+ | ;Example4: <c3-ooo = C#3 | ||
+ | ;Example5: >c3,bd1 = c-3 + start macro definition " | ||
+ | ;Example6: efx,vib = start macro definition " | ||
+ | ;Example7: efx,pi1 = start macro definition " | ||
+ | |||
+ | c0 = $0101+key | ||
+ | d0 = $0203+key | ||
+ | e0 = $0404+key | ||
+ | f0 = $0506+key | ||
+ | g0 = $0708+key | ||
+ | a0 = $090a+key | ||
+ | b0 = $0b0b+key | ||
+ | c1 = $0c0d+key | ||
+ | d1 = $0e0f+key | ||
+ | e1 = $1010+key | ||
+ | f1 = $1112+key | ||
+ | g1 = $1314+key | ||
+ | a1 = $1516+key | ||
+ | b1 = $1717+key | ||
+ | c2 = $1819+key | ||
+ | d2 = $1a1b+key | ||
+ | e2 = $1c1c+key | ||
+ | f2 = $1d1e+key | ||
+ | g2 = $1f20+key | ||
+ | a2 = $2122+key | ||
+ | b2 = $2323+key | ||
+ | c3 = $2425+key | ||
+ | d3 = $2627+key | ||
+ | e3 = $2828+key | ||
+ | f3 = $292a+key | ||
+ | g3 = $2b2c+key | ||
+ | a3 = $2d2e+key | ||
+ | b3 = $2f2f+key | ||
+ | c4 = $3031+key | ||
+ | d4 = $3233+key | ||
+ | e4 = $3434+key | ||
+ | f4 = $3536+key | ||
+ | g4 = $3738+key | ||
+ | a4 = $393a+key | ||
+ | b4 = $3b3b+key | ||
+ | c5 = $3c3d+key | ||
+ | d5 = $3e3f+key | ||
+ | e5 = $4040+key | ||
+ | f5 = $4142+key | ||
+ | g5 = $4344+key | ||
+ | a5 = $4546+key | ||
+ | b5 = $4747+key | ||
+ | c6 = $4849+key | ||
+ | d6 = $4a4b+key | ||
+ | e6 = $4c4c+key | ||
+ | f6 = $4d4e+key | ||
+ | g6 = $4f50+key | ||
+ | a6 = $5152+key | ||
+ | b6 = $5353+key | ||
+ | c7 = $5455+key | ||
+ | d7 = $5657+key | ||
+ | e7 = $5858+key | ||
+ | f7 = $595a+key | ||
+ | g7 = $5b5c+key | ||
+ | a7 = $5d5e+key | ||
+ | b7 = $5f5f+key | ||
+ | |||
+ | ; | ||
+ | jsr $e544 | ||
+ | |||
+ | lda #<tekst | ||
+ | ldy #>tekst | ||
+ | jsr $ab1e | ||
+ | |||
+ | lda #$16 | ||
+ | sta $d018 | ||
+ | sei | ||
+ | lda #$01 | ||
+ | sta $d01a | ||
+ | sta $dc0d | ||
+ | lda #$37 | ||
+ | sta $01 | ||
+ | jsr $1800 | ||
+ | lda # | ||
+ | jsr playinit | ||
+ | lda #<int | ||
+ | sta $0314 | ||
+ | lda #>int | ||
+ | sta $0315 | ||
+ | cli | ||
+ | jmp * | ||
+ | |||
+ | int lsr $d019 | ||
+ | lda #$1b | ||
+ | sta $d011 | ||
+ | lda #$8a | ||
+ | sta $d012 | ||
+ | lda #$0c | ||
+ | sta $d020 | ||
+ | lda $d012 | ||
+ | sta raster+1 | ||
+ | tuneras | ||
+ | lda $d012 | ||
+ | ldy #$00 | ||
+ | sty $d020 | ||
+ | sty $d021 | ||
+ | sec | ||
+ | raster | ||
+ | |||
+ | pha | ||
+ | lsr | ||
+ | lsr | ||
+ | lsr | ||
+ | lsr | ||
+ | cmp #$0a | ||
+ | ora #$30 | ||
+ | bcc *+4 | ||
+ | sbc #$39 | ||
+ | sta $05b9 | ||
+ | pla | ||
+ | and #$0f | ||
+ | cmp #$0a | ||
+ | ora #$30 | ||
+ | bcc *+4 | ||
+ | sbc #$39 | ||
+ | sta $05ba | ||
+ | |||
+ | lda #$24 | ||
+ | sta $05b8 | ||
+ | |||
+ | tunebac | ||
+ | |||
+ | lda #<player | ||
+ | sta tuneras+1 | ||
+ | lda #>player | ||
+ | sta tuneras+2 | ||
+ | lda #6 | ||
+ | sta tunebac+1 | ||
+ | lda #$18 | ||
+ | sta tunebac+2 | ||
+ | |||
+ | ldx #$18 | ||
+ | lda #> | ||
+ | ldy $dc01 | ||
+ | cpy #$ef | ||
+ | bne nospace | ||
+ | lda #6 | ||
+ | sta tuneras+1 | ||
+ | lda #$18 | ||
+ | sta tuneras+2 | ||
+ | lda #<player | ||
+ | sta tunebac+1 | ||
+ | lda #>player | ||
+ | sta tunebac+2 | ||
+ | |||
+ | lda #$24 | ||
+ | nospace | ||
+ | |||
+ | sc_jt lda sid,x | ||
+ | sta $d400,x | ||
+ | dex | ||
+ | bpl sc_jt | ||
+ | |||
+ | jmp $ea7e | ||
+ | |||
+ | tekst | ||
+ | .byte $99,$93,$05 | ||
+ | .text "macro player BY geir tjelta (c) 2009", | ||
+ | .text "music composed BY jeroen tel/mon (c)1987", | ||
+ | .text "nEW SIZE/ | ||
+ | .text "oLD SIZE/ | ||
+ | .text "hOLD SPACE FOR ORIGINAL SOUND AND PLAYER" | ||
+ | .text "mACRO PLAYER CODE SIZE: $164", | ||
+ | |||
+ | ; | ||
+ | *= $1000 | ||
+ | |||
+ | conduct | ||
+ | pattern | ||
+ | lda (zero),y | ||
+ | adc #1 | ||
+ | bne filter | ||
+ | sta patternc+1 | ||
+ | |||
+ | patternp ldy #$00 | ||
+ | cpy #< | ||
+ | bcc *+3 | ||
+ | tay | ||
+ | lda patternl,y | ||
+ | sta zero | ||
+ | lda patternh,y | ||
+ | sta zero+1 | ||
+ | iny | ||
+ | sty patternp+1 | ||
+ | bne filter | ||
+ | ; | ||
+ | player | ||
+ | ldx #$0e | ||
+ | loop_ bpl *+2 | ||
+ | |||
+ | tempoc | ||
+ | lda frametask,x | ||
+ | sta loop_+1 | ||
+ | dex | ||
+ | ; | ||
+ | bmi conduct | ||
+ | filter | ||
+ | lda d416,y | ||
+ | beq nofilt | ||
+ | sta sid+22 | ||
+ | filtdir | ||
+ | sty filter+1 | ||
+ | nofilt | ||
+ | rts | ||
+ | ; | ||
+ | chk_seq | ||
+ | ; bne seq_2 ; | ||
+ | ; | ||
+ | ; sta gate,x | ||
+ | seq_2 cmp #$f6 | ||
+ | bcs table_ | ||
+ | and #$7f | ||
+ | beq settable | ||
+ | sta note,x | ||
+ | sta freqadd,x | ||
+ | ; inc gate,x | ||
+ | settable ldy tabley2,x | ||
+ | bcc jp_chk | ||
+ | |||
+ | clr_sr; | ||
+ | ; adc #1 | ||
+ | ; bne table_ | ||
+ | ; lda #2 | ||
+ | ; sta sid+6,x | ||
+ | ; bne table_ | ||
+ | |||
+ | ; | ||
+ | patternc ldy #$00 | ||
+ | lda (zero),y | ||
+ | sta note2,x | ||
+ | beq nonote | ||
+ | hold cmp #$f8 | ||
+ | bcc nohold | ||
+ | bne holdinc | ||
+ | lda #$f8 | ||
+ | sta hold+1 | ||
+ | bne nonote | ||
+ | holdinc | ||
+ | bne table_ | ||
+ | |||
+ | nohold | ||
+ | beq efxonly | ||
+ | ; lda #$fe ;Gate off in pattern, not used in this tune | ||
+ | ; sta gate,x | ||
+ | bcc nonote | ||
+ | efxonly | ||
+ | lda (zero),y | ||
+ | sta tabley2,x | ||
+ | nonote | ||
+ | sty patternc+1 | ||
+ | |||
+ | ; | ||
+ | table_ | ||
+ | ldy tabley,x | ||
+ | jp_chk | ||
+ | bmi jp_pitch | ||
+ | sta jp1-1 | ||
+ | iny | ||
+ | lda fxt,y | ||
+ | iny | ||
+ | bne jp1 | ||
+ | jp1 | ||
+ | jp_goto | ||
+ | bne jp_chk | ||
+ | |||
+ | jp_wadsr sta wavef,x | ||
+ | lda fxt,y | ||
+ | sta sid+5,x | ||
+ | iny | ||
+ | lda fxt,y | ||
+ | iny | ||
+ | jp_sr sta sid+6,x | ||
+ | bne jp_pitch-3 | ||
+ | |||
+ | jp_fi0 | ||
+ | bne jp_chk | ||
+ | |||
+ | jp_pprg | ||
+ | bne jp_chk | ||
+ | |||
+ | jp_finad adc freqadd,x | ||
+ | sta freqadd,x | ||
+ | bne jp_chk | ||
+ | |||
+ | jp_gf6 ; sta gate, | ||
+ | ; bne jp_pitch-3 | ||
+ | |||
+ | sec | ||
+ | jp_wf sta wavef,x | ||
+ | bcc *+4 | ||
+ | lda #$80 | ||
+ | jp_mode | ||
+ | lda fxt,y | ||
+ | |||
+ | jp_pitch iny | ||
+ | sta notebit | ||
+ | tya | ||
+ | sta tabley,x | ||
+ | lda wavef,x | ||
+ | ; and gate, | ||
+ | sta sid+4,x | ||
+ | asl a | ||
+ | bpl nopulse | ||
+ | |||
+ | ldy pulsex,x | ||
+ | lda put,y | ||
+ | cmp #1 | ||
+ | beq p_dir | ||
+ | cmp #$fd | ||
+ | bne p_sum | ||
+ | lda #$ff | ||
+ | p_dir sta pulsdir,x | ||
+ | tya | ||
+ | adc put,y | ||
+ | tay | ||
+ | lda put,y | ||
+ | p_sum sta sid+2,x | ||
+ | sta sid+3,x | ||
+ | tya | ||
+ | clc | ||
+ | adc pulsdir,x | ||
+ | sta pulsex,x | ||
+ | nopulse | ||
+ | |||
+ | ; | ||
+ | lda #0 | ||
+ | sta zero2+1 | ||
+ | lda notebit | ||
+ | ldy wavef2,x | ||
+ | bpl finetune | ||
+ | tay | ||
+ | bmi fqfixed | ||
+ | clc | ||
+ | adc note,x | ||
+ | fqfixed | ||
+ | tay | ||
+ | lda #0 | ||
+ | beq fqcenter+3 | ||
+ | |||
+ | finetune and #$7f | ||
+ | beq fqcenter | ||
+ | clc | ||
+ | adc freqadd,x | ||
+ | tay | ||
+ | cmp #$60 | ||
+ | bcc nohival | ||
+ | lda fqhi-$60,y | ||
+ | sta zero2+1 | ||
+ | nohival | ||
+ | fqcenter ldy note,x | ||
+ | sta zero2 | ||
+ | lda fqlo,y | ||
+ | bit notebit | ||
+ | bmi bm1 | ||
+ | clc | ||
+ | adc zero2 | ||
+ | sta sid+0,x | ||
+ | |||
+ | lda fqhi,y | ||
+ | adc zero2+1 | ||
+ | bcc sethi | ||
+ | bm1 sec | ||
+ | sbc zero2 | ||
+ | setfreq | ||
+ | lda fqhi,y | ||
+ | sbc zero2+1 | ||
+ | sethi sta sid+1,x | ||
+ | |||
+ | lda #$ff | ||
+ | .byte $cb,7 | ||
+ | jmp loop_ | ||
+ | |||
+ | pulsdir | ||
+ | tabley2 | ||
+ | freqadd | ||
+ | wavef2 | ||
+ | note2 .byte 0 | ||
+ | pulsex | ||
+ | gate .byte 0 | ||
+ | |||
+ | .byte 1 | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | |||
+ | .byte 1 | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | |||
+ | notes = < | ||
+ | ;soft = < | ||
+ | hard = < | ||
+ | seq = < | ||
+ | table = < | ||
+ | |||
+ | frametask .byte notes | ||
+ | .byte table | ||
+ | .byte table ; | ||
+ | .byte seq | ||
+ | .byte table | ||
+ | frame_end .byte table | ||
+ | ; | ||
+ | fqhi | ||
+ | .byte $01, | ||
+ | .byte $01, | ||
+ | .byte $02, | ||
+ | .byte $04, | ||
+ | .byte $06, | ||
+ | .byte $0a, | ||
+ | .byte $10, | ||
+ | .byte $1a, | ||
+ | .byte $2a, | ||
+ | .byte $43, | ||
+ | .byte $6a, | ||
+ | .byte $a8, | ||
+ | |||
+ | fqlo | ||
+ | .byte $0c, | ||
+ | .byte $a9, | ||
+ | .byte $a3, | ||
+ | .byte $30, | ||
+ | .byte $a7, | ||
+ | .byte $8f, | ||
+ | .byte $c3, | ||
+ | .byte $9c, | ||
+ | .byte $3e, | ||
+ | .byte $0f, | ||
+ | .byte $73, | ||
+ | .byte $fa, | ||
+ | |||
+ | wavef .byte 0 | ||
+ | note .byte 0 | ||
+ | tabley | ||
+ | unused1 | ||
+ | unused2 | ||
+ | unused3 | ||
+ | unused4 | ||
+ | |||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | |||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | brk | ||
+ | |||
+ | ; | ||
+ | playinit sta patternp+1 | ||
+ | ldx #0 | ||
+ | ; ldx #< | ||
+ | lda #$f8 | ||
+ | sta hold+1 | ||
+ | lda #seq | ||
+ | sta loop_+1 | ||
+ | lda #$b4 | ||
+ | sta sid+23 | ||
+ | lda #$1f | ||
+ | sta sid+24 | ||
+ | ldy #$14 | ||
+ | lda #0 | ||
+ | clr sta sid+0,y | ||
+ | dey | ||
+ | bpl clr | ||
+ | jmp patternp-3 | ||
+ | |||
+ | ; | ||
+ | ;Macros for " | ||
+ | ; | ||
+ | ;$80-$ff = ;Since branches is not longer than $00-$7f, $80-$ff is used as a direct jump to pitch routine.. | ||
+ | filt = < | ||
+ | puls = < | ||
+ | fineadd | ||
+ | gt = < | ||
+ | wadsr = < | ||
+ | sr = < | ||
+ | n = < | ||
+ | goto = < | ||
+ | wf = < | ||
+ | wn = < | ||
+ | mode = < | ||
+ | ; | ||
+ | ;Make notice that macro code above $80-$ff means either note values or finetune values depending on the " | ||
+ | ; | ||
+ | ; | ||
+ | ; The Macro Table with definitions used in the patterns... | ||
+ | ; | ||
+ | fxt | ||
+ | |||
+ | pi1 = <*-fxt ; | ||
+ | .byte $a7, | ||
+ | |||
+ | vib = < | ||
+ | .byte $80, | ||
+ | .byte $80, | ||
+ | .byte fineadd, | ||
+ | .byte goto, | ||
+ | |||
+ | bas = <*-fxt ;Bass guitar | ||
+ | .byte wadsr, | ||
+ | .byte filt,0 | ||
+ | .byte puls,p3 | ||
+ | .byte wn,$81,$c9 | ||
+ | .byte wf,$40,0 | ||
+ | bs2 = <*-fxt | ||
+ | .byte $80,$80 | ||
+ | .byte goto,vib | ||
+ | |||
+ | ld1 = <*-fxt ;Lead1 | ||
+ | .byte wadsr, | ||
+ | .byte puls,p1 | ||
+ | .byte goto,ld2_ | ||
+ | |||
+ | ld2 = <*-fxt ;Lead2 | ||
+ | .byte wadsr, | ||
+ | .byte puls,p2 | ||
+ | ld2_ = < | ||
+ | .byte wf, | ||
+ | .byte wf,$40,0 | ||
+ | .byte goto,vib | ||
+ | |||
+ | arp = <*-fxt ;Intro arpeggio stab | ||
+ | .byte wadsr, | ||
+ | .byte puls,p4 | ||
+ | .byte wn, | ||
+ | arp_ = <*-fxt | ||
+ | .byte n, | ||
+ | .byte goto,arp_ | ||
+ | |||
+ | sin = <*-fxt ;Drums fill-in sound | ||
+ | .byte wadsr, | ||
+ | .byte wn,$81,$c9 | ||
+ | .byte wf,$11,0 | ||
+ | .byte wf,$10,0 | ||
+ | sin_ = <*-fxt | ||
+ | .byte $80 | ||
+ | .byte goto,sin_ | ||
+ | |||
+ | bd1 = <*-fxt ;Bassdrum | ||
+ | .byte wadsr, | ||
+ | .byte puls,p08 | ||
+ | .byte wn,$81,$c4 | ||
+ | .byte wn,$41,$a7 | ||
+ | .byte wn, | ||
+ | .byte $a3, | ||
+ | bd1_ = <*-fxt | ||
+ | .byte $80 | ||
+ | .byte goto,bd1_ | ||
+ | |||
+ | sn1 = <*-fxt ;Snaredrum | ||
+ | .byte wadsr, | ||
+ | .byte puls,p08 | ||
+ | .byte wn,$81,$bb | ||
+ | .byte wn, | ||
+ | .byte wn, | ||
+ | sn1_ = < | ||
+ | .byte wn,$10,$ac | ||
+ | .byte goto,sn1_+2 | ||
+ | |||
+ | ; | ||
+ | ; Pulse routine use a method of ping-pong, or loopback.. 1=forward, $fd(253)=backwards | ||
+ | ; Make note that first value after command " | ||
+ | ; Only 8-bits used, instead of 14... lo/hi stored in one byte... | ||
+ | ; | ||
+ | put | ||
+ | |||
+ | p08 = <*-put ;Drums pulse | ||
+ | .byte 1, | ||
+ | |||
+ | p1 = <*-put ;Lead1 pulse ;Slow pulse sweep, but this data was needed... I wanted to keep it as original as possible. | ||
+ | .byte 1, | ||
+ | .byte $22, | ||
+ | .byte $62, | ||
+ | .byte $a2, | ||
+ | .byte $e2, | ||
+ | .byte $23, | ||
+ | .byte $63, | ||
+ | .byte $a3, | ||
+ | .byte $e3, | ||
+ | .byte $24, | ||
+ | .byte $a4, | ||
+ | .byte $25, | ||
+ | .byte $a5, | ||
+ | .byte $26, | ||
+ | .byte $a6, | ||
+ | .byte $27, | ||
+ | .byte 253 | ||
+ | |||
+ | p2 = <*-put ;Lead 2 pulse ;This lead instrument has a more varied pulse sweep, then possible to backwards the data earlier... | ||
+ | .byte 1, | ||
+ | .byte $0c, | ||
+ | .byte $4e, | ||
+ | .byte $4c, | ||
+ | .byte $48, | ||
+ | .byte $44, | ||
+ | .byte 253 | ||
+ | |||
+ | p3 = <*-put ;Bass pulse ;This program uses two " | ||
+ | .byte 1, | ||
+ | .byte 1, | ||
+ | .byte $05, | ||
+ | .byte $07, | ||
+ | .byte 253 ;I'll explain this command.. It will reverse the direction, but jump back to value $c7 in this program, so that value $08 doesn' | ||
+ | ;Player was designed with this value ($fd, or 253), because this value will make it reverse correctly. | ||
+ | | ||
+ | p4 = <*-put ;Arp stab pulse | ||
+ | .byte 1, | ||
+ | .byte 1, | ||
+ | .byte $0c, | ||
+ | .byte $0e,$8e,$0f | ||
+ | .byte 253 | ||
+ | |||
+ | |||
+ | ; | ||
+ | ;Routine explains itself... | ||
+ | |||
+ | ;0 = end table | ||
+ | |||
+ | d416 .byte $c0, | ||
+ | .byte $04,0 | ||
+ | |||
+ | ; | ||
+ | |||
+ | patternl | ||
+ | ;Intro | ||
+ | start .byte <noisy | ||
+ | .byte <noisy | ||
+ | |||
+ | ; | ||
+ | .byte <noisy2 | ||
+ | .byte <noisy3 | ||
+ | .byte <noisy2 | ||
+ | .byte <noisy4 | ||
+ | |||
+ | .byte <noisy2 | ||
+ | .byte <noisy3 | ||
+ | .byte <noisy2 | ||
+ | .byte <noisy4 | ||
+ | |||
+ | ;Melody2 | ||
+ | .byte <noisy5 | ||
+ | .byte <noisy6 | ||
+ | .byte <noisy7 | ||
+ | .byte <noisy8 | ||
+ | |||
+ | ;intro | ||
+ | .byte <noisy | ||
+ | .byte <noisy | ||
+ | |||
+ | ;Funky end | ||
+ | .byte <noisy9 | ||
+ | .byte < | ||
+ | .byte <noisy10 | ||
+ | .byte < | ||
+ | .byte <noisy9 | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte < | ||
+ | |||
+ | .byte <noisy9 | ||
+ | .byte < | ||
+ | .byte <noisy10 | ||
+ | .byte < | ||
+ | .byte <noisy9 | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte < | ||
+ | | ||
+ | patternh | ||
+ | .byte >noisy | ||
+ | .byte >noisy | ||
+ | |||
+ | .byte >noisy2 | ||
+ | .byte >noisy3 | ||
+ | .byte >noisy2 | ||
+ | .byte >noisy4 | ||
+ | |||
+ | .byte >noisy2 | ||
+ | .byte >noisy3 | ||
+ | .byte >noisy2 | ||
+ | .byte >noisy4 | ||
+ | |||
+ | .byte >noisy5 | ||
+ | .byte >noisy6 | ||
+ | .byte >noisy7 | ||
+ | .byte > | ||
+ | |||
+ | .byte >noisy | ||
+ | .byte >noisy | ||
+ | |||
+ | .byte >noisy9 | ||
+ | .byte > | ||
+ | .byte >noisy10 | ||
+ | .byte > | ||
+ | .byte >noisy9 | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte >noisy9 | ||
+ | .byte > | ||
+ | .byte >noisy10 | ||
+ | .byte > | ||
+ | .byte >noisy9 | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | patt_end | ||
+ | |||
+ | ; | ||
+ | ;This source has had the patterns packed... 15 mins of slavework by the way.... :-) (ooxxxxx, oooxxxx, meaning: two and three rests etc...) | ||
+ | |||
+ | noisy .byte > | ||
+ | .byte ooxxxxx,> | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte ooxxxxx,> | ||
+ | .byte < | ||
+ | .byte ooxxxxx,> | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooxxxxx,< | ||
+ | .byte ooooooo,> | ||
+ | .byte < | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte ooxxxxx,> | ||
+ | .byte < | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooooo,> | ||
+ | .byte ooxxxxx,> | ||
+ | .byte < | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte ooxxxxx,> | ||
+ | .byte > | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy2 | ||
+ | .byte ooxxxxx,> | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte oooxxxx; | ||
+ | .byte < | ||
+ | .byte ooxxxxx,< | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | |||
+ | .byte fix, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy3 | ||
+ | .byte ooxxxxx,> | ||
+ | .byte ooooooo,> | ||
+ | .byte < | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte oooxxxx; | ||
+ | .byte < | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte < | ||
+ | .byte > | ||
+ | .byte ooxxxxx,> | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy4 | ||
+ | .byte ooxxxxx,> | ||
+ | .byte ooooooo,> | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | .byte oooxxxx; | ||
+ | .byte < | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte < | ||
+ | .byte > | ||
+ | ; | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy5 .byte > | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte oooxxxx; | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | .byte oooxxxx; | ||
+ | .byte < | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte < | ||
+ | .byte > | ||
+ | ; | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy6 .byte > | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte oooxxxx; | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | .byte oooxxxx; | ||
+ | .byte < | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooooo,> | ||
+ | ; | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy7 .byte > | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte oooxxxx; | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte ooooooo, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte ooooooo,< | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooooo,> | ||
+ | ; | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy8 .byte > | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte oooxxxx; | ||
+ | |||
+ | .byte > | ||
+ | .byte ooooooo,> | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooxxx; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte < | ||
+ | .byte < | ||
+ | |||
+ | .byte < | ||
+ | .byte ooooooo,> | ||
+ | ; | ||
+ | .byte < | ||
+ | |||
+ | .byte fix, | ||
+ | ; | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy9 .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte < | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy9_2 .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte ooo-ooo,> | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte fix, | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte > | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy9_3 .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte fix, | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte < | ||
+ | .byte < | ||
+ | .byte > | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy10 .byte > | ||
+ | noisy10_3_2 .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte < | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy10_2 .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte < | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy10_3 .byte > | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | noisy10_4 .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte < | ||
+ | |||
+ | .byte > | ||
+ | .byte > | ||
+ | .byte ooooooo, | ||
+ | .byte > | ||
+ | |||
+ | .byte > | ||
+ | .byte oooxxxx; | ||
+ | .byte > | ||
+ | .byte > | ||
+ | |||
+ | .byte end | ||
+ | |||
+ | ; | ||
+ | |||
+ | * =$1800 | ||
+ | |||
+ | .binary noisyjt.bin | ||
+ | </ | ||
+ | |||
+ | |||
base/macro_player.txt · Last modified: 2015-04-17 04:32 by 127.0.0.1