Advertisement
glokyfull

parcimonie ubuesque en dentelle de gros chagrin endimanché

Sep 23rd, 2024
222
0
89 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2.  
  3.  
  4. nbvblzik    equ 10000
  5. nbregs  equ 14
  6.     clr.l -(sp)
  7.     move.w #$20,-(sp)
  8.     trap #1
  9.     addq.l #6,sp
  10.  
  11.  
  12.  
  13.     jsr music       ; init zik
  14.    
  15.     jsr routine1
  16.     jsr music+4
  17.  
  18. ;   jsr wvbl
  19. ;   eor.w #$555,$ffff8240.w
  20. ;   jsr replaydump
  21. ;   eor.w #$555,$ffff8240.w
  22.  
  23. ;   ;jsr wvbl
  24. ;   jsr music+4
  25.  
  26.  
  27.  
  28.     jsr pack
  29.  
  30.     eor.w #500,$ffff8240.w
  31.     jsr dozik
  32.     eor.w #500,$ffff8240.w
  33.  
  34.  
  35.  
  36.  
  37.     clr.w -(sp)
  38.     trap #1
  39. fin
  40.     move.l (sp)+,d0     ; adresse de retour osef
  41.     movem.l (sp)+,d0-d7/a0-a6
  42.     jsr music+4
  43.    
  44.     eor.w #$555,$ffff8240.w
  45.     clr.W -(sp)
  46.     trap #1
  47.                                                                                                                            
  48. playmusic   macro
  49.     movem.l d0-d7/a0-a6,-(sp)
  50.     jsr music+8
  51.     movem.l (sp)+,d0-d7/a0-a6
  52.         endm
  53. ;reads                                                                                                                                                                      tateAY:
  54. ;
  55. ;   move.w #$8800,a0
  56. ;   moveq #0,d7
  57. ;   move.b d7,(a0)    ; chanel A fine tune
  58. ;   move.b (a0),d1
  59. ;   ;
  60. ;   ;addq.l #1,d7
  61. ;   move.b d7,(a0)
  62. ;   move.b (a0),d2      ; chanel A coarse tune
  63. ;  
  64. ;   addq.l #1,d7
  65. ;   move.b d7,(a0)
  66. ;   move.b (a0),d3              ; chanel B
  67. ;  
  68. ;   addq.l #1,d7
  69. ;   move.b d7,(a0)
  70. ;   move.b (a0),d4              ; chanel B
  71. ;  
  72. ;   addq.l #1,d7
  73. ;   move.b d7,(a0)
  74. ;   move.b (a0),d5
  75. ;  
  76. ;   addq.l #1,d7
  77. ;   move.b d7,(a0)
  78. ;   move.b (a0),d6
  79. ;  
  80. ;   rol #8,d1
  81. ;   move.b d2,d1
  82. ;  
  83. ;   ror #8,d3
  84. ;   move.b d4,d3
  85. ;   move.w d3,d2
  86. ;  
  87. ;   ror #8,d5
  88. ;   move.b d6,d5
  89. ;   move.w d5,d3
  90. ;;  ; d4 d5 d6 libre
  91. ;  
  92. ;  
  93. ;  
  94. ;   rts
  95.  
  96. AY  equ $ffff8800
  97. routine1
  98.     lea big_buffer,a1
  99.  
  100.     move.w #nbvblzik-1,d6           ; 500 vbl = 10 seconde de musique
  101. .loopdump0
  102.    
  103.     playmusic
  104.  
  105.     lea stateReg,a0
  106.     moveq #nbregs-1,d7
  107. .loopdump
  108.    
  109.    
  110.     move.b (a0)+,AY
  111.     move.b (AY),d0      ;
  112.  
  113.     move.b d0,(a1)+
  114.     dbf d7,.loopdump
  115.     ;move.w #$2300,sr
  116.     dbf d6,.loopdump0
  117.    
  118.     jsr music+4     ; eteindre la zik
  119.  
  120.     rts
  121. waitOneScanline
  122.     rept 128-5
  123.      nop
  124.     endr
  125.     rts
  126. replaydump
  127.    
  128.     ;jsr music
  129.  
  130.     lea big_buffer,a1
  131.     move.w #nbvblzik-1,d6
  132. .loopreplay
  133.     movem.l d0-d7/a0-a6,-(sp)
  134.     jsr wvbl
  135.     movem.l (sp)+,d0-d7/a0-a6
  136.    
  137.     lea stateReg,a0
  138.  
  139.     moveq #nbregs-2,d7
  140. .loopAY
  141.     move.b (a1)+,d0
  142.     move.b (a0)+,AY
  143.     move.b d0,(AY+2)
  144.     dbf d7,.loopAY
  145.  
  146.     move.b (a1)+,d0
  147.     tst.b d0
  148.     beq.s .skip
  149.    
  150.     move.b (a0)+,AY
  151.     move.b d0,(AY+2)
  152. .skip
  153.  
  154.    
  155.     ;move.w #$2300,sr
  156.    
  157.     dbf d6,.loopreplay
  158.     rts
  159.  
  160. wvbl:       move.w $468.w,d0
  161. .1      cmp.w $468.w,d0
  162.         beq.s .1
  163.         cmp.b #$39+$80,$fffffc02.w
  164.         beq.w fin
  165.         rts
  166.  
  167. stateReg    dc.b 0,1,2,3,4,5,6,7,8,9,10,11,12,13
  168.  
  169.  
  170.  
  171. ;stateReg   dc.b 1,0,3,2,5,4,6,8,9,10,12,11,13
  172.  
  173. ;selectReg  dc.b 0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0
  174.  
  175.    
  176. buffer dc.b 0,1,2,3,4,5,6,7,8,9
  177.         even
  178.  
  179. music   incbin "0103_4.SND"
  180.  
  181.         BSS
  182. big_buffer  ds.b nbregs*nbvblzik
  183.         even
  184. endbig_buffer
  185.  
  186.         include "CRUNCH.S" = absurdie de l'infinitude de je sais plus quoi
  187.  
  188.         END
  189.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement