home *** CD-ROM | disk | FTP | other *** search
/ Falcon 030 Power 2 / F030_POWER2.iso / ST_STE / DEMOS / CHIP_MSX / ADRIAN_D.ARJ / adrian_d / CLOWN2.S next >
Text File  |  1997-08-27  |  2KB  |  141 lines

  1. ; Loader for Clown'O'Mania Sound
  2. ; Sound by Adrian Dalecki(Starbyte)
  3. ; Ripped by Jacky of ACF/Alliance (HOHO!!!)
  4.  
  5.      section    text
  6. pre_set:
  7.     
  8.     move.l    4(a7),a5
  9.     move.l    a5,d0
  10.     move.l    $0c(a7),d0
  11.     add.l    $14(a7),d0
  12.     add.l    $1c(a7),d0
  13.     add.l    #$100,d0
  14.  
  15.     move.l    d0,-(sp)
  16.     move.l    a5,-(sp)
  17.     clr    -(sp)
  18.     move    #$4a,-(sp)
  19.     trap    #1
  20.     lea    12(sp),sp
  21.  
  22.     lea    stack,a7
  23. super_on:
  24.     clr.l    -(sp)
  25.     move    #$20,-(sp)
  26.     trap    #1
  27.     addq.l    #6,sp
  28.     move.l    d0,-(sp)
  29.  
  30. settings:
  31.     move.l    $44e,old_scr
  32.  
  33.     clr    -(sp)
  34.     move.l    #$f0000,-(sp)
  35.     move.l    #$f0000,-(sp)
  36.     move    #5,-(sp)
  37.     trap    #14
  38.     lea    12(sp),sp
  39.  
  40.     moveq    #1,d0
  41.     jsr     sound
  42.     
  43. irq_enable:
  44.     move.l    $120,old_hbl
  45.     move.l    $70,old_vbl+2
  46.     move.l    $118,old_mkb+2
  47.     move.b    $fffa07,mfp_07
  48.     move.b    $fffa09,mfp_09
  49.     move.b    $fffa0f,mfp_0f
  50.     move.b    $fffa11,mfp_11
  51.     move.b    $fffa1b,mfp_1b
  52.     bclr.b    #0,$fffa07
  53.     bclr.b    #5,$fffa09
  54.     move.l    #hbl,$120
  55.     move.l    #vbl,$70
  56.     move.l    #mkb,$118
  57.     bset.b    #0,$fffa07
  58.     bset.b    #0,$fffa13
  59.  
  60. main:
  61.     move    #$ff,-(sp)
  62.     move    #6,-(sp)
  63.     trap    #1
  64.     addq.l    #4,sp
  65.     tst    d0
  66.     beq    main
  67.  
  68. irq_disable:
  69.     move    sr,-(sp)
  70.     move    #$2700,sr
  71.     move.b    mfp_07,$fffa07
  72.     move.b    mfp_09,$fffa09
  73.     move.b    mfp_0f,$fffa0f
  74.     move.b    mfp_11,$fffa11
  75.     move.b    mfp_1b,$fffa1b
  76.     move.l    old_vbl+2,$70
  77.     move.l    old_mkb+2,$118
  78.     move.l    old_hbl,$120
  79.     move    (sp)+,sr
  80.  
  81. back_sets:
  82.     move    #$777,$ff8240
  83.     move    #$040,$ff8244
  84.  
  85.     clr    -(sp)
  86.     move.l    old_scr,-(sp)
  87.     move.l    old_scr,-(sp)
  88.     move    #5,-(sp)
  89.     trap    #14
  90.     lea    12(sp),sp
  91.  
  92. super_off:
  93.     move    #$20,-(sp)
  94.     trap    #1
  95.     addq.l    #6,sp
  96.  
  97. end:
  98.     clr    -(sp)
  99.     trap    #1
  100.  
  101. irq_routines:
  102.  
  103. mkb:
  104.     move    #$2500,sr
  105. old_mkb:
  106.     jmp    $ffffffff
  107.  
  108. vbl:
  109.     movem.l    d0-a6,savereg
  110.     
  111.     jsr     sound+6
  112.  
  113.     movem.l    savereg,d0-a6
  114.  
  115. old_vbl:    jmp    $ffffffff
  116. ;
  117.  
  118. hbl:
  119.     movem.l    d0-d7/a0-a6,savereg2
  120.     movem.l    savereg2,d0-d7/a0-a6
  121.  
  122.     bclr.b    #0,$fffa0f
  123.     rte
  124.  
  125.     section    data
  126. old_hbl:    dc.l    0
  127. old_scr:    dc.l    0
  128. mfp_07:    dc.b    0
  129. mfp_09:    dc.b    0
  130. mfp_0f:    dc.b    0
  131. mfp_11:    dc.b    0
  132. mfp_1b:    dc.b    0
  133.     even
  134. sound:    incbin    'clown2.snd'
  135.  
  136.     section    bss
  137. savereg:    ds.l    20
  138. savereg2:    ds.l    20
  139.     ds.b    1000
  140.     even
  141. stack: