home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 451-475 / apd463 / amos1.34_progs / music_player.amos / music_player.amosSourceCode
AMOS Source Code  |  1993-01-17  |  3KB  |  141 lines

  1. Screen Open 0,380,265,16,Lowres
  2. Double Buffer : Autoback 0
  3. Screen Offset 0,13,
  4. Curs Off : Hide : Cls 1 : Paper 0
  5. Palette ,$0 : Proc RBOW
  6. '
  7. Amos Lock 
  8. Global V0,V1,V2,V3,P0,P1,P2,P3
  9. Locate 0,1 : Centre " 'L' Load Music File"
  10. Locate 0,2 : Centre " '1' Filter Off"
  11. Locate 0,3 : Centre "'2' Filter On"
  12. Locate 0,5 : Centre " 'Q' Quit Player"
  13. Screen Copy Logic To Physic
  14. '
  15. Led Off 
  16. '
  17. Proc FLOAD
  18. '
  19. Do 
  20.    A$=Inkey$
  21.    If A$="l"
  22.       Proc FDOUT
  23.       Proc FLOAD
  24.    End If 
  25.    If A$="1" Then Led Off 
  26.    If A$="2" Then Led On 
  27.    If A$="q" Then Proc QT
  28.    A$=""
  29.    Proc EQU
  30. Loop 
  31. '
  32. Procedure FLOAD
  33.    Rainbow 0,0,250,280
  34.    Show 
  35.    FILE$=Fsel$("RAM:*.abk","","Select Music File","")
  36.    Hide 
  37.    Rainbow 0,0,36,280
  38.    Load FILE$
  39.    V0=0 : V1=0 : V2=0 : V3=0
  40.    P0=0 : P1=0 : P2=0 : P3=0
  41.    Proc FDIN
  42. End Proc
  43. '
  44. Procedure QT
  45.    Proc FDOUT
  46.    Amos Unlock 
  47.    Erase 3
  48.    Led On 
  49.    Default 
  50.    Edit 
  51. End Proc
  52. '
  53. Procedure FDIN
  54.    Music 1
  55.    Mvolume 0
  56.    For N=0 To 63
  57.       Mvolume N
  58.       Proc EQU
  59.    Next N
  60.    Wait 25
  61. End Proc
  62. '
  63. Procedure FDOUT
  64.    For N=63 To 0 Step -1
  65.       Mvolume N
  66.       Proc EQU
  67.    Next N
  68.    Cls 1,100,80 To 280,185
  69.    Screen Swap 
  70.    Wait 25
  71. End Proc
  72. '
  73. Procedure EQU
  74.    V0=Vumeter(0)
  75.    V1=Vumeter(1)
  76.    V2=Vumeter(2)
  77.    V3=Vumeter(3)
  78.    If V0=0 Then V0=1
  79.    If V1=0 Then V1=1
  80.    If V2=0 Then V2=1
  81.    If V3=0 Then V3=1
  82.    If V0>P0 Then P0=V0
  83.    If V1>P1 Then P1=V1
  84.    If V2>P2 Then P2=V2
  85.    If V3>P3 Then P3=V3
  86.    Cls 1,100,80 To 280,185 : Ink 0
  87.    Bar 220,180-(P0*1.5) To 235,180
  88.    Bar 145,180-(P1*1.5) To 160,180
  89.    Bar 170,180-(P2*1.5) To 185,180
  90.    Bar 195,180-(P3*1.5) To 210,180
  91.    Ink 1 : Bar 100,178 To 280,180
  92.    Dec P0 : Dec P1 : Dec P2 : Dec P3
  93.    Screen Swap 
  94.    Screen Copy Physic To Logic
  95. End Proc
  96. '
  97. Procedure RBOW
  98.    Set Rainbow 0,0,280,"","",""
  99.    Rainbow 0,0,36,280
  100.    Colour Back 0
  101.    Restore RDATA
  102.    For C=0 To 279 : Read CVA : Rain(0,C)=CVA
  103.    Next C : View 
  104.    RDATA:
  105.    Data $0,$0,$0,$0,$0,$0,$0,$0
  106.    Data $0,$0,$0,$0,$0,$0,$0,$0
  107.    Data $0,$0,$0,$0,$0,$0,$0,$0
  108.    Data $0,$0,$0,$0,$0,$0,$0,$0
  109.    Data $0,$0,$0,$0,$0,$0,$0,$0
  110.    Data $0,$0,$0,$0,$0,$0,$0,$0
  111.    Data $0,$0,$0,$0,$0,$0,$0,$0
  112.    Data $0,$0,$0,$0,$0,$0,$0,$0
  113.    Data $0,$0,$0,$0,$0,$0,$0,$0
  114.    Data $0,$0,$0,$0,$0,$0,$0,$0
  115.    Data $0,$0,$0,$0,$0,$0,$0,$0
  116.    Data $0,$0,$0,$0,$0,$0,$0,$0
  117.    Data $0,$0,$0,$0,$F40,$F40,$F40,$F40
  118.    Data $F40,$F40,$F40,$F50,$F50,$F50,$F50,$F50
  119.    Data $F50,$F50,$F50,$F60,$F60,$F60,$F60,$F60
  120.    Data $F60,$F60,$F60,$F70,$F70,$F70,$F70,$F70
  121.    Data $F70,$F70,$F70,$F80,$F80,$F80,$F80,$F80
  122.    Data $F80,$F80,$F80,$F90,$F90,$F90,$F90,$F90
  123.    Data $F90,$F90,$F90,$FA0,$FA0,$FA0,$FA0,$FA0
  124.    Data $FA0,$FA0,$FA0,$FB0,$FB0,$FB0,$FB0,$FB0
  125.    Data $FB0,$FB0,$FB0,$FC0,$FC0,$FC0,$FC0,$FC0
  126.    Data $FC0,$FC0,$FC0,$FD0,$FD0,$FD0,$FD0,$FD0
  127.    Data $FD0,$FD0,$FD0,$FE0,$FE0,$FE0,$FE0,$FE0
  128.    Data $FE0,$FE0,$FE0,$FF0,$FF0,$FF0,$FF0,$FF0
  129.    Data $FF0,$FF0,$FF0,$0,$0,$0,$0,$0
  130.    Data $0,$0,$0,$0,$0,$0,$0,$0
  131.    Data $0,$0,$0,$0,$0,$0,$0,$0
  132.    Data $0,$0,$0,$0,$0,$0,$0,$0
  133.    Data $0,$0,$0,$0,$0,$0,$0,$0
  134.    Data $0,$0,$0,$0,$0,$0,$0,$0
  135.    Data $0,$0,$0,$0,$0,$0,$0,$0
  136.    Data $0,$0,$0,$0,$0,$0,$0,$0
  137.    Data $0,$0,$0,$0,$0,$0,$0,$0
  138.    Data $0,$0,$0,$0,$0,$0,$0,$0
  139.    Data $0,$0,$0,$0,$0,$0,$0,$0
  140.    Data $0,$0,$0,$0,$0,$0,$0,$0
  141. End Proc