tmc.asx
上传用户:wstnjxml
上传日期:2014-04-03
资源大小:7248k
文件大小:12k
源码类别:

Windows CE

开发平台:

C/C++

  1. *---------------*
  2. *  TMC  Player  *
  3. *Jaskier/Taquart*
  4. *---------------*
  5.  org $0500
  6. byte equ $fa
  7. bajt equ $fb
  8. addr equ $fc
  9. adrsng equ $fe
  10. player equ *
  11.  jmp init
  12.  jmp play
  13.  jmp sound
  14. maxvol dta b(15)
  15. volume dta d'        '
  16. freqen dta d'        '
  17. kanal  dta d'        '
  18. aktwys dta d'        '
  19. numdzw dta d'        '
  20. audctl dta d'        '
  21. aud1   dta b(0)
  22. aud2   dta b(0)
  23. voltab dta d'                '
  24.  dta d'        !!!!!!!!'
  25.  dta d'    !!!!!!!!""""'
  26.  dta d'   !!!!!"""""###'
  27.  dta d'  !!!!""""####$$'
  28.  dta d'  !!!"""###$$$%%'
  29.  dta d'  !!"""##$$$%%&&'
  30.  dta d'  !!""##$$%%&&'''''
  31.  dta d' !!""##$$%%&&''''('
  32.  dta d' !!""#$$%%&''''(()'
  33.  dta d' !!"##$%%&''''())*'
  34.  dta d' !!"#$$%&''''()**+'
  35.  dta d' !""#$%&&''()**+,'
  36.  dta d' !"##$%&''()**+,-'
  37.  dta d' !"#$%&''''()*+,-.'
  38.  dta d' !"#$%&''()*+,-./'
  39. frqtab dta b(0),b($f1),b($e4),b($d7)
  40.  dta b($cb),b($c0),b($b5),b($aa)
  41.  dta b($a1),b($98),b($8f),b($87)
  42.  dta b($7f),b($78),b($72),b($6b)
  43.  dta b($65),b($5f),b($5a),b($55)
  44.  dta b($50),b($4b),b($47),b($43)
  45.  dta b($3f),b($3c),b($38),b($35)
  46.  dta b($32),b($2f),b($2c),b($2a)
  47.  dta b($27),b($25),b($23),b($21)
  48.  dta b($1f),b($1d),b($1c),b($1a)
  49.  dta b($18),b($17),b($16),b($14)
  50.  dta b($13),b($12),b($11),b($10)
  51.  dta b(15),b(14),b(13),b(12)
  52.  dta b(11),b(10),b(9),b(8)
  53.  dta b(7),b(6),b(5),b(4)
  54.  dta b(3),b(2),b(1),b(0)
  55.  dta b(0),b($f2),b($e6),b($da)
  56.  dta b($ce),b($bf),b($b6),b($aa)
  57.  dta b($a1),b($98),b($8f),b($89)
  58.  dta b($80),b($7a),b($71),b($6b)
  59.  dta b($65),b($5f),b($5c),b($56)
  60.  dta b($50),b($4d),b($47),b($44)
  61.  dta b($3e),b($3c),b($38),b($35)
  62.  dta b($32),b($2f),b($2d),b($2a)
  63.  dta b($28),b($25),b($23),b($21)
  64.  dta b($1f),b($1d),b($1c),b($1a)
  65.  dta b($18),b($17),b($16),b($14)
  66.  dta b($13),b($12),b($11),b($10)
  67.  dta b(15),b(14),b(13),b(12)
  68.  dta b(11),b(10),b(9),b(8)
  69.  dta b(7),b(6),b(5),b(4)
  70.  dta b(3),b(2),b(1),b(0)
  71.  dta b(0),b($ff),b($f1),b($e4)
  72.  dta b($d8),b($ca),b($c0),b($b5)
  73.  dta b($ab),b($a2),b($99),b($8e)
  74.  dta b($87),b($7f),b($79),b($73)
  75.  dta b($70),b($66),b($61),b($5a)
  76.  dta b($55),b($52),b($4b),b($48)
  77.  dta b($43),b($3f),b($3c),b($39)
  78.  dta b($37),b($33),b($30),b($2d)
  79.  dta b($2a),b($28),b($25),b($24)
  80.  dta b($21),b($1f),b($1e),b($1c)
  81.  dta b($1b),b($19),b($17),b($16)
  82.  dta b($15),b($13),b($12),b($11)
  83.  dta b($10),b(15),b(14),b(13)
  84.  dta b(12),b(11),b(10),b(9)
  85.  dta b(8),b(7),b(6),b(5)
  86.  dta b(4),b(3),b(2),b(1)
  87.  dta b(0),b($f3),b($e6),b($d9)
  88.  dta b($cc),b($c1),b($b5),b($ad)
  89.  dta b($a2),b($99),b($90),b($88)
  90.  dta b($80),b($79),b($72),b($6c)
  91.  dta b($66),b($60),b($5b),b($55)
  92.  dta b($51),b($4c),b($48),b($44)
  93.  dta b($40),b($3c),b($39),b($35)
  94.  dta b($32),b($2f),b($2d),b($2a)
  95.  dta b($28),b($25),b($23),b($21)
  96.  dta b($1f),b($1d),b($1c),b($1a)
  97.  dta b($18),b($17),b($16),b($14)
  98.  dta b($13),b($12),b($11),b($10)
  99.  dta b(15),b(14),b(13),b(12)
  100.  dta b(11),b(10),b(9),b(8)
  101.  dta b(7),b(6),b(5),b(4)
  102.  dta b(3),b(2),b(1),b(0)
  103. basslo dta b(0),b($f2),b($33),b($96)
  104.  dta b($e2),b($38),b($8c),b($00)
  105.  dta b($6a),b($e8),b($6a),b($ef)
  106.  dta b($80),b($08),b($ae),b($46)
  107.  dta b($e6),b($95),b($41),b($f6)
  108.  dta b($b0),b($6e),b($30),b($f6)
  109.  dta b($bb),b($84),b($52),b($22)
  110.  dta b($f4),b($c8),b($a0),b($7a)
  111.  dta b($55),b($34),b($14),b($f5)
  112.  dta b($d8),b($bd),b($a4),b($8d)
  113.  dta b($77),b($60),b($4e),b($38)
  114.  dta b($27),b($15),b($06),b($f7)
  115.  dta b($e8),b($db),b($cf),b($c3)
  116.  dta b($b8),b($ac),b($a2),b($9a)
  117.  dta b($90),b($88),b($7f),b($78)
  118.  dta b($70),b($6a),b($64),b($5e)
  119. basshi dta b(0),b(13),b(13),b(12)
  120.  dta b(11),b(11),b(10),b(10)
  121.  dta b(9),b(8),b(8),b(7)
  122.  dta b(7),b(7),b(6),b(6)
  123.  dta b(5),b(5),b(5),b(4)
  124.  dta b(4),b(4),b(4),b(3)
  125.  dta b(3),b(3),b(3),b(3)
  126.  dta b(2),b(2),b(2),b(2)
  127.  dta b(2),b(2),b(2),b(1)
  128.  dta b(1),b(1),b(1),b(1)
  129.  dta b(1),b(1),b(1),b(1)
  130.  dta b(1),b(1),b(1),b(0)
  131.  dta b(0),b(0),b(0),b(0)
  132.  dta b(0),b(0),b(0),b(0)
  133.  dta b(0),b(0),b(0),b(0)
  134.  dta b(0),b(0),b(0),b(0)
  135. czygrx dta d'        '
  136. pozwpt dta d'        '
  137. delay  dta d'        '
  138. numptr dta d'        '
  139. poddzw dta d'        '
  140. wysdzw dta d'        '
  141. znksz  dta d'        '
  142. frq    dta d'        '
  143. vol1ch dta d'        '
  144. vol2ch dta d'        '
  145. adcvl1 dta d'        '
  146. adcvl2 dta d'        '
  147. adrsnl dta d'        '
  148. adrsnh dta d'        '
  149. slupy  dta d'        '
  150. opad1  dta d'        '
  151. opad2  dta d'        '
  152. lopad1 dta d'        '
  153. lopad2 dta d'        '
  154. typ    dta d'        '
  155. param  dta d'        '
  156. pomoc1 dta d'        '
  157. pomoc2 dta d'        '
  158. czekaj dta d'        '
  159. dtyp   dta d'        '
  160. ltyp   dta d'        '
  161. ilperm dta d'        '
  162. aperm  dta d'        '
  163. dperm  dta d'        '
  164. lperm  dta d'        '
  165. kolejn dta d'        '
  166. tempo  dta b(0)
  167. ltempo dta b(0)
  168. pozptr dta b(0)
  169. czygrc dta b(0)
  170. przeci dta b(4),b(5),b(6),b(7)
  171.  dta b(0),b(1),b(2),b(3)
  172. audtb1 dta b(4),b(2),b(0),b(0)
  173.  dta b(4),b(2),b(0),b(0)
  174. audtb2 dta b(0),b(16),b(0),b(8)
  175.  dta b(0),b(16),b(0),b(8)
  176. play lda czygrc
  177.  beq r1-3
  178.  lda pozptr
  179.  cmp #64
  180.  bcc r1
  181.  dec ltempo
  182.  beq *+5
  183.  jmp sound
  184.  ldx #7
  185.  lda #0
  186. p1 sta pozwpt,x
  187.  sta delay,x
  188.  dex
  189.  bpl p1
  190.  sta pozptr
  191.  tax
  192.  ldy #15
  193. p2 lda (adrsng),y
  194.  bpl p3
  195.  dey
  196.  lda (adrsng),y
  197.  bpl *+5
  198.  jmp stop
  199.  stx addr
  200.  asl @
  201.  asl @
  202.  rol addr
  203.  asl @
  204.  rol addr
  205.  asl @
  206.  rol addr
  207. zm0 adc #0
  208.  sta adrsng
  209.  lda addr
  210. zm1 adc #0
  211.  sta adrsng+1
  212.  bcc p2-2
  213. p3 sta numptr,x
  214.  dey
  215.  lda (adrsng),y
  216.  sta poddzw,x
  217.  inx
  218.  dey
  219.  bpl p2
  220.  clc
  221.  lda adrsng
  222.  adc #16
  223.  sta adrsng
  224.  bcc *+4
  225.  inc adrsng+1
  226.  jmp sound
  227. r1 dec ltempo
  228.  bpl r1-3
  229.  inc pozptr
  230.  lda tempo
  231.  sta ltempo
  232.  ldx #7
  233. r2 dec delay,x
  234.  bmi *+5
  235.  jmp r14
  236.  ldy numptr,x
  237. zm2 lda $ffff,y
  238.  sta addr
  239. zm3 lda $ffff,y
  240.  sta addr+1
  241.  ldy pozwpt,x
  242. r3 lda (addr),y
  243.  bne r4
  244.  jsr nparam
  245.  jmp r13
  246. r4 cmp #$40
  247.  bcs r5
  248.  adc poddzw,x
  249.  sta wysdzw,x
  250.  jsr nparam
  251.  ldy numdzw,x
  252.  jsr dzwiek
  253.  jmp r13
  254. r5 bne r8
  255.  iny
  256.  inc pozwpt,x
  257.  lda (addr),y
  258.  bpl r6
  259.  sta bajt
  260.  jsr nparam
  261.  lda bajt
  262. r6 and #$7f
  263.  bne r7
  264.  lda #64
  265.  sta pozptr
  266.  bne r13
  267. r7 sta tempo
  268.  sta ltempo
  269.  bne r13
  270. r8 cmp #$80
  271.  bcs r11
  272.  and #$3f
  273.  adc poddzw,x
  274.  sta wysdzw,x
  275.  iny
  276.  inc pozwpt,x
  277.  lda (addr),y
  278.  and #127
  279.  bne r9
  280.  lda #64
  281.  sta pozptr
  282.  bne r10
  283. r9 sta tempo
  284.  sta ltempo
  285. r10 jsr nparam
  286.  ldy numdzw,x
  287.  jsr dzwiek
  288.  jmp r13
  289. r11 cmp #$c0
  290.  bcs r12
  291.  and #$3f
  292.  sta numdzw,x
  293.  iny
  294.  inc pozwpt,x
  295.  jmp r3
  296. r12 and #$3f
  297.  sta delay,x
  298. r13 inc pozwpt,x
  299. r14 dex
  300.  bmi sound
  301.  jmp r2
  302. sound ldx #7
  303. p5 lda czygrx,x
  304.  beq p6
  305.  jsr graj
  306.  lda audctl,x
  307.  and audtb1,x
  308.  beq p6
  309.  ldy #71
  310.  lda (addr),y
  311.  clc
  312.  adc aktwys,x
  313.  sta aktwys+2,x
  314.  tay
  315.  lda frqtab,y
  316.  sec
  317.  adc pomoc1,x
  318.  sta frq+2,x
  319. p6 dex
  320.  bpl p5
  321.  asl maxvol
  322.  asl maxvol
  323.  asl maxvol
  324.  asl maxvol
  325.  inx
  326.  stx addr
  327.  stx addr+1
  328.  ldx #7
  329. p9 txa
  330.  tay
  331.  lda vol1ch,y
  332.  bne p10
  333.  ldy przeci,x
  334.  lda vol2ch,y
  335.  bne p10
  336.  txa
  337.  tay
  338.  lda #0
  339. p10 sta byte
  340.  tya
  341.  sta kanal,x
  342.  lda frq,y
  343.  sta freqen,x
  344.  lda audctl,y
  345.  sta bajt
  346.  ora addr+1
  347.  sta addr+1
  348.  lda bajt
  349.  and audtb1,x
  350.  beq p11
  351.  lda frq+2,y
  352.  sta freqen+2,x
  353. p11 lda bajt
  354.  and audtb2,x
  355.  beq p12
  356.  lda aktwys,y
  357.  and #$3f
  358.  tay
  359.  iny
  360.  sty addr
  361.  lda basshi-1,y
  362.  sta freqen,x
  363.  jmp p13
  364. p12 ldy addr
  365.  beq p13
  366.  lda basslo-1,y
  367.  sta freqen,x
  368.  lda #0
  369.  sta addr
  370. p13 lda byte
  371.  ora maxvol
  372.  tay
  373.  lda voltab,y
  374.  ldy kanal,x
  375.  ora znksz,y
  376.  sta volume,x
  377.  cpx #4
  378.  bne p14
  379.  lda addr+1
  380.  sta aud2
  381.  lda #0
  382.  sta addr+1
  383. p14 dex
  384.  bpl p9
  385.  lsr maxvol
  386.  lsr maxvol
  387.  lsr maxvol
  388.  lsr maxvol
  389.  lda addr+1
  390. quit ldx #3
  391.  stx $d21f
  392.  stx $d20f
  393.  ldx freqen+4
  394.  ldy freqen
  395.  stx $d210
  396.  sty $d200
  397.  ldx volume+4
  398.  ldy volume
  399.  stx $d211
  400.  sty $d201
  401.  ldx freqen+5
  402.  ldy freqen+1
  403.  stx $d212
  404.  sty $d202
  405.  ldx volume+5
  406.  ldy volume+1
  407.  stx $d213
  408.  sty $d203
  409.  ldx freqen+6
  410.  ldy freqen+2
  411.  stx $d214
  412.  sty $d204
  413.  ldx volume+6
  414.  ldy volume+2
  415.  stx $d215
  416.  sty $d205
  417.  ldx freqen+7
  418.  ldy freqen+3
  419.  stx $d216
  420.  sty $d206
  421.  ldx volume+7
  422.  ldy volume+3
  423.  stx $d217
  424.  sty $d207
  425.  sta aud1
  426.  ldx aud2
  427.  stx $d218
  428.  sta $d208
  429.  rts
  430. graj lda adrsnl,x
  431.  sta addr
  432.  lda adrsnh,x
  433.  sta addr+1
  434.  ldy slupy,x
  435.  cpy #63
  436.  beq n6
  437.  inc slupy,x
  438.  inc slupy,x
  439.  inc slupy,x
  440.  lda (addr),y
  441.  and #$f0
  442.  sta znksz,x
  443.  lda (addr),y
  444.  and #15
  445.  sec
  446.  sbc adcvl1,x
  447.  bpl n1
  448.  lda #0
  449. n1 sta vol1ch,x
  450.  iny
  451.  lda (addr),y
  452.  and #15
  453.  sec
  454.  sbc adcvl2,x
  455.  bpl n2
  456.  lda #0
  457. n2 sta vol2ch,x
  458.  lda (addr),y
  459.  and #$f0
  460.  beq n8
  461.  bpl n3
  462.  ldy #73
  463.  lda (addr),y
  464.  ldy slupy,x
  465.  dey
  466.  dey
  467.  bpl n4
  468. n3 lda #0
  469. n4 sta audctl,x
  470.  lda (addr),y
  471.  and #$70
  472.  beq n9
  473.  lsr @
  474.  lsr @
  475.  sta n5+1
  476.  lda #0
  477.  sta pomoc1,x
  478.  iny
  479.  lda (addr),y
  480. n5 bcc *
  481.  nop
  482.  nop
  483.  nop
  484.  nop
  485.  jmp a1
  486.  nop
  487.  jmp a2
  488.  nop
  489.  jmp a3
  490.  nop
  491.  jmp a4
  492.  nop
  493.  jmp a5
  494.  nop
  495.  jmp a6
  496.  nop
  497.  jmp a7
  498. n6 lda opad1,x
  499.  beq n7
  500.  dec lopad1,x
  501.  bne n7
  502.  sta lopad1,x
  503.  lda vol1ch,x
  504.  and #15
  505.  beq n7
  506.  dec vol1ch,x
  507. n7 lda opad2,x
  508.  beq n8
  509.  dec lopad2,x
  510.  bne n8
  511.  sta lopad2,x
  512.  lda vol2ch,x
  513.  and #15
  514.  beq n8
  515.  dec vol2ch,x
  516. n8 ldy #72
  517.  lda (addr),y
  518.  sta audctl,x
  519. n9 lda aperm,x
  520.  clc
  521.  adc #63
  522.  tay
  523.  lda (addr),y
  524.  adc wysdzw,x
  525.  sta aktwys,x
  526.  tay
  527.  lda frqtab,y
  528.  sta frq,x
  529.  dec lperm,x
  530.  bpl m1
  531.  lda dperm,x
  532.  sta lperm,x
  533.  lda kolejn,x
  534.  beq m6
  535.  clc
  536.  adc aperm,x
  537.  sta aperm,x
  538.  beq m7
  539.  cmp ilperm,x
  540.  bne m1
  541.  lda #$fe
  542. m7 clc
  543.  adc #1
  544.  sta kolejn,x
  545.  bne m1
  546. m6 inc aperm,x
  547.  lda ilperm,x
  548.  cmp aperm,x
  549.  bcs m1
  550.  lda #0
  551.  sta aperm,x
  552. m1 lda czekaj,x
  553.  beq m2
  554.  dec czekaj,x
  555.  rts
  556. m2 lda pomoc2,x
  557.  sta byte
  558.  lda param,x
  559.  sta bajt
  560.  jsr m4
  561.  dec ltyp,x
  562.  bpl m4-1
  563.  lda byte
  564.  sta pomoc2,x
  565.  lda bajt
  566.  sta param,x
  567.  lda dtyp,x
  568.  sta ltyp,x
  569.  rts
  570. m4 lda typ,x
  571.  sta m5+1
  572. m5 bpl *
  573.  jmp typ0
  574.  nop
  575.  jmp typ1
  576.  nop
  577.  jmp typ2
  578.  nop
  579.  jmp typ3
  580.  nop
  581.  jmp typ4
  582.  nop
  583.  jmp typ5
  584.  nop
  585.  jmp typ6
  586.  nop
  587.  jmp typ7
  588. typ1 lda byte
  589.  inc byte
  590.  and #3
  591.  lsr @
  592.  bcc t2
  593.  bne typ6
  594.  lda bajt
  595. t1 sta pomoc1,x
  596.  clc
  597.  adc frq,x
  598.  sta frq,x
  599. typ0 rts
  600. t2 lda #0
  601.  sta pomoc1,x
  602.  rts
  603. typ2 jsr t5
  604.  jmp t1
  605. typ3 jsr t5
  606.  clc
  607.  adc aktwys,x
  608.  jmp a5
  609. typ4 lda byte
  610.  sta pomoc1,x
  611.  clc
  612.  adc frq,x
  613. t3 sta frq,x
  614.  lda byte
  615.  clc
  616.  adc bajt
  617.  sta byte
  618.  rts
  619. typ5 lda aktwys,x
  620.  sec
  621.  sbc byte
  622.  sta aktwys,x
  623.  tay
  624.  lda frqtab,y
  625.  jmp t3
  626. typ6 lda frq,x
  627.  sec
  628.  sbc bajt
  629.  sta frq,x
  630.  sec
  631.  lda #0
  632.  sbc bajt
  633.  sta pomoc1,x
  634.  rts
  635. typ7 lda ltyp,x
  636.  bne typ0
  637.  lda bajt
  638.  bpl t4
  639.  lda vol2ch,x
  640.  beq typ0
  641.  lda vol1ch,x
  642.  cmp #15
  643.  beq typ0
  644.  inc vol1ch,x
  645.  rts
  646. t4 lda vol1ch,x
  647.  beq typ0
  648.  lda vol2ch,x
  649.  cmp #15
  650.  beq typ0
  651.  inc vol2ch,x
  652.  rts
  653. t5 ldy byte
  654.  lda bajt
  655.  bmi t6
  656.  iny
  657.  iny
  658. t6 dey
  659.  tya
  660.  sta byte
  661.  cmp bajt
  662.  bne t7
  663.  lda bajt
  664.  eor #$ff
  665.  sta bajt
  666. t7 tya
  667.  rts
  668. a2 adc frq,x
  669. a1 sta frq,x
  670.  rts
  671. a3 ldy wysdzw,x
  672.  adc frqtab,y
  673.  sta frq,x
  674.  tya
  675.  sta aktwys,x
  676.  rts
  677. a4 and $d20a
  678.  sta frq,x
  679.  rts
  680. a7 adc wysdzw,x
  681. a5 sta aktwys,x
  682.  tay
  683.  lda frqtab,y
  684.  sta frq,x
  685.  rts
  686. a6 sta aktwys,x
  687.  tay
  688.  lda frq,x
  689.  adc frqtab,y
  690.  sta frq,x
  691.  rts
  692. nparam iny
  693.  inc pozwpt,x
  694.  lda (addr),y
  695.  lsr @
  696.  lsr @
  697.  lsr @
  698.  lsr @
  699.  sta adcvl1,x
  700.  lda (addr),y
  701.  and #15
  702.  sta adcvl2,x
  703.  rts
  704. songx jsr stop
  705.  ldy #15
  706. zm4 lda #0
  707.  sta adrsng
  708. zm5 lda #0
  709.  sta adrsng+1
  710. d5 txa
  711.  beq inic
  712. d3 lda (adrsng),y
  713.  bpl d4
  714.  dex
  715. d4 clc
  716.  lda adrsng
  717.  adc #16
  718.  sta adrsng
  719.  bcc d5
  720.  inc adrsng+1
  721.  bcs d5
  722. playx jsr stop
  723.  lda #0
  724.  sta addr
  725.  txa
  726.  asl @
  727.  asl @
  728.  rol addr
  729.  asl @
  730.  rol addr
  731.  asl @
  732.  rol addr
  733. zm6 adc #0
  734.  sta adrsng
  735.  lda addr
  736. zm7 adc #0
  737.  sta adrsng+1
  738. inic lda #64
  739.  sta pozptr
  740.  lda #1
  741.  sta ltempo
  742.  sta czygrc
  743.  rts
  744. init cmp #$10
  745.  bcc songx
  746.  cmp #$20
  747.  bcc playx
  748.  cmp #$30
  749.  bcs *+5
  750.  jmp d2
  751.  cmp #$40
  752.  bcs i1
  753.  txa
  754.  and #15
  755.  beq i1-1
  756.  sta tempo
  757.  rts
  758. i1 cmp #$50
  759.  bcc stop
  760.  cmp #$60
  761.  bcs i2
  762.  lda #0
  763. i3 sta czygrc
  764.  rts
  765. i2 cmp #$70
  766.  bcc i3
  767.  lda #1
  768.  sta ltempo
  769.  lda #64
  770.  sta pozptr
  771.  sty addr
  772.  stx addr+1
  773.  ldy #30
  774.  lda (addr),y
  775.  sta tempo
  776.  lda addr
  777.  clc
  778.  adc #32
  779.  sta zm8+1
  780.  bcc *+3
  781.  inx
  782.  stx zm8+2
  783.  clc
  784.  adc #$40
  785.  sta zm9+1
  786.  bcc *+3
  787.  inx
  788.  stx zm9+2
  789.  clc
  790.  adc #$40
  791.  sta zm2+1
  792.  bcc *+3
  793.  inx
  794.  stx zm2+2
  795.  clc
  796.  adc #$80
  797.  sta zm3+1
  798.  bcc *+3
  799.  inx
  800.  stx zm3+2
  801.  clc
  802.  adc #$80
  803.  sta adrsng
  804.  sta zm0+1
  805.  sta zm4+1
  806.  sta zm6+1
  807.  bcc *+3
  808.  inx
  809.  stx adrsng+1
  810.  stx zm1+1
  811.  stx zm5+1
  812.  stx zm7+1
  813. stop ldy #7
  814.  lda #0
  815.  sta czygrc
  816. d9 sta $d200,y
  817.  sta $d210,y
  818.  sta volume,y
  819.  sta vol1ch,y
  820.  sta vol2ch,y
  821.  sta audctl,y
  822.  sta czygrx,y
  823.  dey
  824.  bpl d9
  825.  sta $d208
  826.  sta $d218
  827.  sta aud1
  828.  sta aud2
  829.  rts
  830. d1 sta vol1ch,x
  831.  sta vol2ch,x
  832.  sta audctl,x
  833.  lda wysdzw,x
  834.  sta aktwys,x
  835.  rts
  836. d0 tya
  837.  eor #$f0
  838.  lsr @
  839.  lsr @
  840.  lsr @
  841.  lsr @
  842.  sta adcvl1,x
  843.  tya
  844.  and #15
  845.  eor #15
  846.  sta adcvl2,x
  847.  rts
  848. d2 and #7
  849.  sta addr
  850.  txa
  851.  ldx addr
  852.  and #$3f
  853.  beq d0
  854.  sta wysdzw,x
  855. dzwiek lda #0
  856.  sta czygrx,x
  857. zm8 lda $ffff,y
  858.  sta adrsnl,x
  859.  sta addr
  860. zm9 lda $ffff,y
  861.  sta adrsnh,x
  862.  sta addr+1
  863.  ora addr
  864.  beq d1
  865.  ldy #74
  866.  lda (addr),y
  867.  sta opad1,x
  868.  sta lopad1,x
  869.  iny
  870.  lda (addr),y
  871.  sta opad2,x
  872.  sta lopad2,x
  873.  iny
  874.  lda (addr),y
  875.  and #$70
  876.  lsr @
  877.  lsr @
  878.  sta typ,x
  879.  lda (addr),y
  880.  and #15
  881.  sta param,x
  882.  lda (addr),y
  883.  bpl d7
  884.  lda param,x
  885.  eor #$ff
  886.  clc
  887.  adc #1
  888.  sta param,x
  889. d7 iny
  890.  lda (addr),y
  891.  sta czekaj,x
  892.  iny
  893.  lda (addr),y
  894.  and #$3f
  895.  sta dtyp,x
  896.  sta ltyp,x
  897.  iny
  898.  lda (addr),y
  899.  and #$80
  900.  beq d8
  901.  lda #1
  902. d8 sta kolejn,x
  903.  lda (addr),y
  904.  and #$70
  905.  lsr @
  906.  lsr @
  907.  lsr @
  908.  lsr @
  909.  sta ilperm,x
  910.  bne d6
  911.  sta kolejn,x
  912. d6 lda (addr),y
  913.  and #15
  914.  sta dperm,x
  915.  sta lperm,x
  916.  dey
  917.  lda (addr),y
  918.  and #$c0
  919.  clc
  920.  adc wysdzw,x
  921.  sta wysdzw,x
  922.  sta aktwys,x
  923.  tay
  924.  lda frqtab,y
  925.  sta frq,x
  926.  lda #0
  927.  sta slupy,x
  928.  sta pomoc1,x
  929.  sta pomoc2,x
  930.  sta aperm,x
  931.  lda #1
  932.  sta czygrx,x
  933.  rts
  934. endplr end