home *** CD-ROM | disk | FTP | other *** search
/ Fujiology Archive / fujiology_archive_v1_0.iso / !FALCON / NOCREW / MP2_0997.ZIP / mp2_0997 / src / matrix.s < prev    next >
Text File  |  1999-09-06  |  2KB  |  110 lines

  1. ;; matrix.s
  2. ;;
  3. ;; COPYRIGHT (c) 1998 by NoCrew Laboratories.
  4. ;;
  5. ;; Implements various devconnect calls.
  6.  
  7.     export    set_matrix_ext_full
  8.     export    set_matrix_ext_32000
  9.     export    set_matrix_ext_16000
  10.     export    set_matrix_ext_half
  11.     export    set_matrix_int_49170
  12.     export    set_matrix_int_32780
  13.     export    set_matrix_int_24585
  14.     export    set_matrix_int_16390
  15.     export    saveaudio
  16.     export    restoreaudio
  17.  
  18. set_matrix_ext_full:
  19.     move.l    #$63b42080,$ffff8930.w
  20. ;    move.l    #$63b42180,$ffff8930.w
  21. ;    move.l    #$63b42280,$ffff8930.w
  22. ;    move.l    #$63b42380,$ffff8930.w
  23.     move.w    #$0101,$ffff8934.w
  24.     rts
  25.  
  26. /* Only usable if external clock is 48KHz */
  27. set_matrix_ext_32000:
  28.     move.l    #$63b42080,$ffff8930.w
  29.     move.w    #$0201,$ffff8934.w
  30.     rts
  31.  
  32. /* Only usable if external clock is 48KHz */
  33. set_matrix_ext_16000:
  34.     move.l    #$63b42080,$ffff8930.w
  35.     move.w    #$0501,$ffff8934.w
  36.     rts
  37.  
  38. set_matrix_ext_half:
  39.     move.l    #$63b42080,$ffff8930.w
  40.     move.w    #$0301,$ffff8934.w
  41.     rts
  42.  
  43. set_matrix_int_49170:
  44.     move.l    #$01942080,$ffff8930.w
  45.     move.w    #$0001,$ffff8934.w
  46.     rts
  47.  
  48. set_matrix_int_32780:
  49.     move.l    #$01942080,$ffff8930.w
  50.     move.w    #$0002,$ffff8934.w
  51.     rts
  52.  
  53. set_matrix_int_24585:
  54.     move.l    #$01942080,$ffff8930.w
  55.     move.w    #$0003,$ffff8934.w
  56.     rts
  57.  
  58. set_matrix_int_16390:
  59.     move.l    #$01942080,$ffff8930.w
  60.     move.w    #$0005,$ffff8934.w
  61.     rts
  62.  
  63. saveaudio:
  64.     tst.w    audiosaved
  65.     bne.s    .skip
  66.     lea    saveaudiobuf(pc),a0
  67.     move.w    $ffff8930.w,(a0)+
  68.     move.w    $ffff8932.w,(a0)+
  69.     move.b    $ffff8934.w,(a0)+
  70.     move.b    $ffff8935.w,(a0)+
  71.     move.b    $ffff8936.w,(a0)+
  72.     move.b    $ffff8937.w,(a0)+
  73.     move.b    $ffff8938.w,(a0)+
  74. ;    move.b    $ffff8939.w,(a0)+
  75. ;    move.w    $ffff893a.w,(a0)+
  76.     move.b    $ffff893c.w,(a0)+
  77.     move.b    $ffff8941.w,(a0)+
  78.     move.b    $ffff8943.w,(a0)+
  79.     move.b    $ffff8900.w,(a0)+
  80.     move.b    $ffff8901.w,(a0)+
  81.     move.b    $ffff8920.w,(a0)+
  82.     move.b    $ffff8921.w,(a0)+
  83.     move.w    #1,audiosaved
  84. .skip:
  85.     rts
  86.  
  87. restoreaudio:
  88.     lea    saveaudiobuf(pc),a0
  89.     move.w    (a0)+,$ffff8930.w
  90.     move.w    (a0)+,$ffff8932.w
  91.     move.b    (a0)+,$ffff8934.w
  92.     move.b    (a0)+,$ffff8935.w
  93.     move.b    (a0)+,$ffff8936.w
  94.     move.b    (a0)+,$ffff8937.w
  95.     move.b    (a0)+,$ffff8938.w
  96. ;    move.b    (a0)+,$ffff8939.w
  97. ;    move.w    (a0)+,$ffff893a.w
  98.     move.b    (a0)+,$ffff893c.w
  99.     move.b    (a0)+,$ffff8941.w
  100.     move.b    (a0)+,$ffff8943.w
  101.     move.b    (a0)+,$ffff8900.w
  102.     move.b    (a0)+,$ffff8901.w
  103.     move.b    (a0)+,$ffff8920.w
  104.     move.b    (a0)+,$ffff8921.w
  105.     clr.w    audiosaved;
  106.     rts    
  107.     
  108. audiosaved:        dc.w    0
  109. saveaudiobuf:    ds.w    10
  110.