home *** CD-ROM | disk | FTP | other *** search
/ Energy 2 / Energy_2_1996_Taquart_pl_Side_E_a.atr / tmc111.arc / TMCPLAY2.ASM < prev   
Assembly Source File  |  1988-09-01  |  9KB  |  1 lines

  1. *----------------*¢*TMC short player*¢*Jaskier/Taquart *¢*----------------*¢¢ opt 6¢ org $a000¢¢bajt equ $fb¢addr equ $fc¢adrsng equ $fe¢¢play lda czygrc¢ bne *+3¢ rts¢ bit pozptr¢ bvc r1¢ dec ltempo¢ beq *+5¢ jmp sound¢¢ ldx #7¢ lda #0¢p1 sta pozwpt,x¢ sta delay,x¢ dex¢ bpl p1¢ sta pozptr¢ tax¢ ldy #15¢p2 lda (adrsng),y¢ bpl p3¢ dey¢ lda (adrsng),y¢ bpl *+5¢ jmp stop¢ stx addr¢ asl @¢ asl @¢ rol addr¢ asl @¢ rol addr¢ asl @¢ rol addr¢zm0 adc #0¢ sta adrsng¢ lda addr¢zm1 adc #0¢ sta adrsng+1¢ bcc p2-2¢p3 sta numptr,x¢ dey¢ lda (adrsng),y¢ sta poddzw,x¢ inx¢ dey¢ bpl p2¢ clc¢ lda adrsng¢ adc #16¢ sta adrsng¢ bcc *+4¢ inc adrsng+1¢ jmp sound¢¢r1 dec ltempo¢ bpl r1-3¢ inc pozptr¢ lda tempo¢ sta ltempo¢ ldx #7¢r2 dec delay,x¢ bmi *+5¢ jmp r14¢ ldy numptr,x¢zm2 lda $ffff,y¢ sta addr¢zm3 lda $ffff,y¢ sta addr+1¢ ldy pozwpt,x¢r3 lda (addr),y¢ bne r4¢ iny¢ inc pozwpt,x¢ lda (addr),y¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢ sta adcvol,x¢ jmp r13¢r4 cmp #$40¢ bcs r5¢ adc poddzw,x¢ sta wysdzw,x¢ iny¢ inc pozwpt,x¢ lda (addr),y¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢ sta adcvol,x¢ ldy numdzw,x¢ jsr dzwiek¢ jmp r13¢r5 bne r8¢ iny¢ inc pozwpt,x¢ lda (addr),y¢ bpl r6¢ sta bajt¢ iny¢ inc pozwpt,x¢ lda (addr),y¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢ sta adcvol,x¢ lda bajt¢r6 and #$7f¢ bne r7¢ lda #64¢ sta pozptr¢ bne r13¢r7 sta tempo¢ sta ltempo¢ bne r13¢r8 cmp #$80¢ bcs r11¢ and #$3f¢ adc poddzw,x¢ sta wysdzw,x¢ iny¢ inc pozwpt,x¢ lda (addr),y¢ and #$7f¢ bne r9¢ lda #64¢ sta pozptr¢ bne r10¢r9 sta tempo¢ sta ltempo¢r10 iny¢ inc pozwpt,x¢ lda (addr),y¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢ sta adcvol,x¢ ldy numdzw,x¢ jsr dzwiek¢ jmp r13¢r11 cmp #$c0¢ bcs r12¢ and #$3f¢ sta numdzw,x¢ iny¢ inc pozwpt,x¢ jmp r3¢r12 and #$3f¢ sta delay,x¢r13 inc pozwpt,x¢r14 dex¢ bmi sound¢ jmp r2¢¢sound ldx #7¢ lda #0¢ sta aud1¢p5 lda czygrx,x¢ beq p4¢ jsr graj¢ lda aud1¢ and audtab,x¢ beq p4¢ ldy #71¢ lda (addr),y¢ clc¢ adc aktwys,x¢ sta aktwys+2,x¢ tay¢ lda frqtab,y¢ sec¢ adc pomoc1,x¢ sta frq+2,x¢p4 cpx #4¢ bne p6¢ lda aud1¢ sta aud2¢ dex¢ bpl sound+2¢p6 dex¢ bpl p5¢¢ lda #3¢ sta $d21f¢ sta $d20f¢ ldx frq+4¢ ldy frq¢ stx $d210¢ sty $d200¢ lda volume+4¢ ora znksz+4¢ sta $d211¢ lda volume¢ ora znksz¢ sta $d201¢ ldx frq+5¢ ldy frq+1¢ stx $d212¢ sty $d202¢ lda volume+5¢ ora znksz+5¢ sta $d213¢ lda volume+1¢ ora znksz+1¢ sta $d203¢ ldx frq+6¢ ldy frq+2¢ stx $d214¢ sty $d204¢ lda volume+6¢ ora znksz+6¢ sta $d215¢ lda volume+2¢ ora znksz+2¢ sta $d205¢ ldx frq+7¢ ldy frq+3¢ stx $d216¢ sty $d206¢ lda volume+7¢ ora znksz+7¢ sta $d217¢ lda volume+3¢ ora znksz+3¢ sta $d207¢ ldx aud2¢ ldy aud1¢ stx $d218¢ sty $d208¢ rts¢¢graj lda adrsnl,x¢ sta addr¢ lda adrsnh,x¢ sta addr+1¢ lda slupy,x¢ cmp #63¢ bcs n6¢ tay¢ adc #3¢ sta slupy,x¢ lda (addr),y¢ and #$f0¢ sta znksz,x¢ lda (addr),y¢ and #15¢ sec¢ sbc adcvol,x¢ bpl n1¢ lda #0¢n1 sta volume,x¢ iny¢ lda (addr),y¢ and #$f0¢ beq n8¢ bpl n3¢ ldy #73¢ lda (addr),y¢ ora aud1¢ sta aud1¢ ldy slupy,x¢ dey¢ dey¢n3 lda (addr),y¢ and #$70¢ beq n9¢ lsr @¢ lsr @¢ sta n5+1¢ lda #0¢ sta pomoc1,x¢ iny¢ lda (addr),y¢n5 bcc *¢ nop¢ nop¢ nop¢ nop¢ jmp a1¢ nop¢ jmp a2¢ nop¢ jmp a3¢ nop¢ jmp a4¢ nop¢ jmp a5¢ nop¢ jmp a6¢ nop¢ jmp a7¢¢n6 lda opad,x¢ beq n8¢ dec lopad,x¢ bne n8¢ sta lopad,x¢ lda volume,x¢ beq n8¢ dec volume,x¢n8 ldy #72¢ lda (addr),y¢ ora aud1¢ sta aud1¢n9 lda aperm,x¢ clc¢ adc #63¢ tay¢ lda (addr),y¢ adc wysdzw,x¢ sta aktwys,x¢ tay¢ lda frqtab,y¢ sta frq,x¢ dec lperm,x¢ bpl m1¢ lda dperm,x¢ sta lperm,x¢ lda kolejn,x¢ bne m6¢ inc aperm,x¢ lda ilperm,x¢ cmp aperm,x¢ bcs m1¢ lda #0¢ sta aperm,x¢ beq m1¢m6 clc¢ adc aperm,x¢ sta aperm,x¢ bne m7¢ lda #1¢ sta kolejn,x¢ bne m1¢m7 cmp ilperm,x¢ bne m1¢ lda #$ff¢ sta kolejn,x¢m1 lda czekaj,x¢ beq m2¢ dec czekaj,x¢ rts¢m2 dec ltyp,x¢ bpl m2-1¢ lda dtyp,x¢ sta ltyp,x¢ lda typ,x¢ sta m5+1¢m5 bpl *¢ jmp typ0¢ nop¢ jmp typ1¢ nop¢ jmp typ2¢ nop¢ jmp typ3¢ nop¢ jmp typ4¢ nop¢ jmp typ5¢ nop¢ jmp typ6¢ nop¢ jmp typ0¢¢typ1 lda pomoc2,x¢ inc pomoc2,x¢ and #3¢ lsr @¢ bcc t2¢ beq t1¢typ6 lda frq,x¢ sec¢ sbc param,x¢ sta frq,x¢ lda #0¢ sec¢ sbc param,x¢ sta pomoc1,x¢ rts¢t1 lda param,x¢ sta pomoc1,x¢ clc¢ adc frq,x¢ sta frq,x¢typ0 rts¢t2 lda #0¢ sta pomoc1,x¢ rts¢¢typ2 ldy pomoc2,x¢ lda param,x¢ bmi t3¢ iny¢ iny¢t3 dey¢ tya¢ sta pomoc2,x¢ cmp param,x¢ bne t4¢ lda param,x¢ eor #$ff¢ sta param,x¢ tya¢t4 sta pomoc1,x¢ clc¢ adc frq,x¢ sta frq,x¢ rts¢¢typ3 ldy pomoc2,x¢ lda param,x¢ bmi t5¢ iny¢ iny¢t5 dey¢ tya¢ sta pomoc2,x¢ cmp param,x¢ bne t6¢ lda param,x¢ eor #$ff¢ sta param,x¢ tya¢t6 clc¢ adc aktwys,x¢ sta aktwys,x¢ tay¢ lda frqtab,y¢ sta frq,x¢ rts¢¢typ4 lda pomoc2,x¢ sta pomoc1,x¢ tay¢ clc¢ adc frq,x¢ sta frq,x¢ tya¢ clc¢ adc param,x¢ sta pomoc2,x¢ rts¢¢typ5 lda aktwys,x¢ sec¢ sbc pomoc2,x¢ sta aktwys,x¢ tay¢ lda frqtab,y¢ sta frq,x¢ lda pomoc2,x¢ clc¢ adc param,x¢ sta pomoc2,x¢ rts¢¢a2 adc frq,x¢a1 sta frq,x¢ rts¢a3 ldy wysdzw,x¢ adc frqtab,y¢ sta frq,x¢ tya¢ sta aktwys,x¢ rts¢a4 and $d20a¢ sta frq,x¢ rts¢a7 adc wysdzw,x¢a5 sta aktwys,x¢ tay¢ lda frqtab,y¢ sta frq,x¢ rts¢a6 sta aktwys,x¢ tay¢ lda frq,x¢ adc frqtab,y¢ sta frq,x¢ rts¢¢d1 sta volume,x¢ lda wysdzw,x¢ sta aktwys,x¢ rts¢dzwiek lda #0¢ sta czygrx,x¢zm8 lda $ffff,y¢ sta adrsnl,x¢ sta addr¢zm9 lda $ffff,y¢ sta adrsnh,x¢ sta addr+1¢ ora addr¢ beq d1¢ ldy #74¢ lda (addr),y¢ sta opad,x¢ sta lopad,x¢ ldy #76¢ lda (addr),y¢ tay¢ and #$70¢ lsr @¢ lsr @¢ sta typ,x¢ tya¢ bmi d2¢ and #15¢ bpl d3¢d2 and #15¢ eor #$ff¢ clc¢ adc #1¢d3 sta param,x¢d7 ldy #77¢ lda (addr),y¢ sta czekaj,x¢ ldy #79¢ lda (addr),y¢ tay¢ and #$80¢ beq d8¢ lda #1¢d8 sta kolejn,x¢ tya¢ and #$70¢ lsr @¢ lsr @¢ lsr @¢ lsr @¢ sta ilperm,x¢ bne d6¢ sta kolejn,x¢d6 tya¢ and #15¢ sta dperm,x¢ sta lperm,x¢ ldy #78¢ lda (addr),y¢ tay¢ and #$3f¢ sta dtyp,x¢ sta ltyp,x¢ tya¢ and #$c0¢ clc¢ adc wysdzw,x¢ sta wysdzw,x¢ sta aktwys,x¢ tay¢ lda frqtab,y¢ sta frq,x¢ lda #0¢ sta slupy,x¢ sta pomoc1,x¢ sta pomoc2,x¢ sta aperm,x¢ lda #1¢ sta czygrx,x¢ rts¢¢init sty addr¢ stx addr+1¢ ldy #30¢ lda (addr),y¢ sta tempo¢ lda addr¢ clc¢ adc #32¢ sta zm8+1¢ bcc *+3¢ inx¢ stx zm8+2¢ clc¢ adc #$40¢ sta zm9+1¢ bcc *+3¢ inx¢ stx zm9+2¢ clc¢ adc #$40¢ sta zm2+1¢ bcc *+3¢ inx¢ stx zm2+2¢ clc¢ adc #$80¢ sta zm3+1¢ bcc *+3¢ inx¢ stx zm3+2¢ clc¢ adc #$80¢ sta adrsng¢ sta zm0+1¢ bcc *+3¢ inx¢ stx adrsng+1¢ stx zm1+1¢ jsr stop¢ lda #64¢ sta pozptr¢ lda #1¢ sta ltempo¢ sta czygrc¢ rts¢¢stop lda #0¢ sta czygrc¢ ldy #7¢d9 sta $d200,y¢ sta $d210,y¢ sta volume,y¢ sta czygrx,y¢ dey¢ bpl d9¢ sta $d208¢ sta $d218¢ sta aud1¢ sta aud2¢ rts¢¢frqtab dta b(0),b($f1),b($e4),b($d7)¢ dta b($cb),b($c0),b($b5),b($aa)¢ dta b($a1),b($98),b($8f),b($87)¢ dta b($7f),b($78),b($72),b($6b)¢ dta b($65),b($5f),b($5a),b($55)¢ dta b($50),b($4b),b($47),b($43)¢ dta b($3f),b($3c),b($38),b($35)¢ dta b($32),b($2f),b($2c),b($2a)¢ dta b($27),b($25),b($23),b($21)¢ dta b($1f),b($1d),b($1c),b($1a)¢ dta b($18),b($17),b($16),b($14)¢ dta b($13),b($12),b($11),b($10)¢ dta b(15),b(14),b(13),b(12)¢ dta b(11),b(10),b(9),b(8)¢ dta b(7),b(6),b(5),b(4)¢ dta b(3),b(2),b(1),b(0)¢¢ dta b(0),b($f2),b($e6),b($da)¢ dta b($ce),b($bf),b($b6),b($aa)¢ dta b($a1),b($98),b($8f),b($89)¢ dta b($80),b($7a),b($71),b($6b)¢ dta b($65),b($5f),b($5c),b($56)¢ dta b($50),b($4d),b($47),b($44)¢ dta b($3e),b($3c),b($38),b($35)¢ dta b($32),b($2f),b($2d),b($2a)¢ dta b($28),b($25),b($23),b($21)¢ dta b($1f),b($1d),b($1c),b($1a)¢ dta b($18),b($17),b($16),b($14)¢ dta b($13),b($12),b($11),b($10)¢ dta b(15),b(14),b(13),b(12)¢ dta b(11),b(10),b(9),b(8)¢ dta b(7),b(6),b(5),b(4)¢ dta b(3),b(2),b(1),b(0)¢¢ dta b(0),b($ff),b($f1),b($e4)¢ dta b($d8),b($ca),b($c0),b($b5)¢ dta b($ab),b($a2),b($99),b($8e)¢ dta b($87),b($7f),b($79),b($73)¢ dta b($70),b($66),b($61),b($5a)¢ dta b($55),b($52),b($4b),b($48)¢ dta b($43),b($3f),b($3c),b($39)¢ dta b($37),b($33),b($30),b($2d)¢ dta b($2a),b($28),b($25),b($24)¢ dta b($21),b($1f),b($1e),b($1c)¢ dta b($1b),b($19),b($17),b($16)¢ dta b($15),b($13),b($12),b($11)¢ dta b($10),b(15),b(14),b(13)¢ dta b(12),b(11),b(10),b(9)¢ dta b(8),b(7),b(6),b(5)¢ dta b(4),b(3),b(2),b(1)¢¢ dta b(0),b($f3),b($e6),b($d9)¢ dta b($cc),b($c1),b($b5),b($ad)¢ dta b($a2),b($99),b($90),b($88)¢ dta b($80),b($79),b($72),b($6c)¢ dta b($66),b($60),b($5b),b($55)¢ dta b($51),b($4c),b($48),b($44)¢ dta b($40),b($3c),b($39),b($35)¢ dta b($32),b($2f),b($2d),b($2a)¢ dta b($28),b($25),b($23),b($21)¢ dta b($1f),b($1d),b($1c),b($1a)¢ dta b($18),b($17),b($16),b($14)¢ dta b($13),b($12),b($11),b($10)¢ dta b(15),b(14),b(13),b(12)¢ dta b(11),b(10),b(9),b(8)¢ dta b(7),b(6),b(5),b(4)¢ dta b(3),b(2),b(1),b(0)¢¢audtab dta b(4),b(2),b(0),b(0)¢ dta b(4),b(2),b(0),b(0)¢¢aud1   dta b(0)¢aud2   dta b(0)¢tempo  dta b(0)¢ltempo dta b(0)¢pozptr dta b(0)¢czygrc dta b(0)¢¢volume dta d'        '¢aktwys dta d'        '¢numdzw dta d'        '¢znksz  dta d'        '¢frq    dta d'        '¢pozwpt dta d'        '¢delay  dta d'        '¢numptr dta d'        '¢poddzw dta d'        '¢wysdzw dta d'        '¢czygrx dta d'        '¢adrsnl dta d'        '¢adrsnh dta d'        '¢adcvol dta d'        '¢slupy  dta d'        '¢opad   dta d'        '¢lopad  dta d'        '¢typ    dta d'        '¢param  dta d'        '¢pomoc1 dta d'        '¢pomoc2 dta d'        '¢czekaj dta d'        '¢dtyp   dta d'        '¢ltyp   dta d'        '¢ilperm dta d'        '¢aperm  dta d'        '¢dperm  dta d'        '¢lperm  dta d'        '¢kolejn dta d'        '¢¢ end¢