.key LineaParametro
.bra {
.ket }

;
; $VER: GMPlay-Handler 1.3 (7.1.97)
;
; Questo programma é designato per suonare file MIDI con GMPlay semplicemente
; e velocemente... Più veloce con un MC68060 ;-)
;
; GMPlay-Handler accetta un parametro, quest deve essere un file MIDI.
; Se avete qualsiasi problema scrivete all'autore!
;
; Changes:
;
; 1.2: Arresta ogni procedura di GMPlay avviando e suonando la canzone successiva.
;
; 1.3: Ho eliminato un bug nel filetype MIDI per Directory Opus 5.
;      Adesso accetta un file MIDI con spazi nel nome.
;
; Author :
;               K B I T    of
;      ___              _______,        ___               ____
;    g#####x            ########        ##F             _g####m_
;   0########           ########        ##F            J########_
;  d##"   X##K  ww  ww,   J##      _awwJ##F   _www_    ##@   "###  aww__
;  ##F     0##  ##  ##F   J##     g#######F  d#####_  0##      ##L 0####L
; J##      J##  ##  ##F   J##    J##@""###F J##@@###  ###      ##Q 0####F
; J##L     j##  ##  ##F   J##    d##    ##F 0#F   ##L ##Q      ### 0##F"
;  ##&     0##  ##  ##F   J##    0##    ##F ##F   ##F 0##_    J##F 0##
;  9###__a0##F  ##KJ##F   J##    ]##K__d##F 0##__g##   ###w__w###  0##
;   ########F   ######F   J##     ########F  ######F   `########   0##
;    "####@"    *##@##F   J##      ####M##F   *###"      #####P    0##
;
;  E-mail:
;          kbit@arrakis.es (Javier Fuentes)
;
;  WWW Page:
;            www.arrakis.es/~kbit (There are other scripts...)
;
;  IRC:
;       ¿?.undernet.org     #iberamiga    kbit
;       irc.arrakis.es      #croms        kbit
;

Failat 25

SET GMPlayVersion GMPlay-HANDLER V1.3

ECHO $GMPlayVersion - Copyright (c) 1997 Javier Fuentes (Kbit / OuTdoOr)
ECHO Traduzione Italiana di Francesco Mancuso (mcfrank@mediatel.it) [05/01/97]
ECHO ""

IF NOT EXISTS GM:
   ECHO GMPlay deve essere in GM:
   SKIP Final
ENDIF

IF EXISTS ENVARC:GMPlay-HANDLERPrefs/GMPlayParametros
   SET GMPlayParametros `TYPE ENVARC:GMPlay-HANDLERPrefs/GMPlayParametros`
ELSE
   MAKEDIR >NIL: ENVARC:GMPlay-HANDLERPrefs
ENDIF

LAB PideFichero

IF "{LineaParametro}" EQ ""
   SET GMPlayFICHERO `REQUESTFILE TITLE "Selezionate il file MIDI" POSITIVE "Eccolo!" NEGATIVE "Annulla" NOICONS`
ELSE
   SET GMPlayFICHERO {LineaParametro}
ENDIF

IF NOT EXISTS "$GMPlayFICHERO"
   ECHO Il file non esiste
   SKIP Final
ENDIF

IF EXISTS ENVARC:GMPlay-HANDLERPrefs/Noreq
   SKIP EjecutarGMPlay
ENDIF

   IF EXISTS ENVARC:GMPlay-HANDLERPrefs/GMPlayParametros
      SET GMPlayPrefijados `REQUESTCHOICE TITLE "$GMPlayVersion" BODY "Posso usare gli ultimi valori?" GADGETS Si.. No "Si... Ed abilita la modalità Nessun requester"`
   ENDIF
   IF $GMPlayPrefijados EQ 1
      UNSET GMPlayPrefijados
      SKIP EjecutarGMPlay
   ELSE

      IF $GMPlayPrefijados EQ 0
         UNSET GMPlayPrefijados
         ECHO "Kbit/OuTdoOr" TO ENVARC:GMPlay-HANDLERPrefs/Noreq
         REQUESTCHOICE >NIL: TITLE "$GMPlayVersion" BODY "La modalità Nessun requester é abilitata..." GADGETS "...Cancella ENVARC:GMPlay-HANDLERPrefs/Noreq per disabilitarlo"
         SKIP EjecutarGMPlay
      ENDIF

   ENDIF

   UNSET GMPlayPrefijados

ENDIF

SET GMPlayParametros VOL 450 VERBOSE
SET GMPlayFREQ `REQUESTCHOICE TITLE "$GMPlayVersion" BODY "Frequenza campionamento (Hz)" GADGETS 14433 21649 28867 36083 43300`

IF $GMPlayFREQ EQ 0
   SET GMPlayParametros $GMPlayParametros FREQ=43300
ELSE

   IF $GMPlayFREQ EQ 1
      SET GMPlayParametros $GMPlayParametros FREQ=14433
   ELSE

      IF $GMPlayFREQ EQ 2
         SET GMPlayParametros $GMPlayParametros FREQ=21649
      ELSE

         IF $GMPlayFREQ EQ 3
            SET GMPlayParametros $GMPlayParametros FREQ=28867
         ELSE

            IF $GMPlayFREQ EQ 4
               SET GMPlayParametros $GMPlayParametros FREQ=36083
            ENDIF

         ENDIF

      ENDIF

   ENDIF

ENDIF

UNSET GMPlayFREQ

SET GMPlayPolifonia `REQUESTCHOICE TITLE "$GMPlayVersion" BODY "Polifonia" GADGETS 4 8 16 24 32`

IF $GMPlayPolifonia EQ 0
   SET GMPlayParametros $GMPlayParametros POLY 32
ELSE

   IF $GMPlayPolifonia EQ 1
      SET GMPlayParametros $GMPlayParametros POLY 4
   ELSE

      IF $GMPlayPolifonia EQ 2
         SET GMPlayParametros $GMPlayParametros POLY 8
      ELSE

         IF $GMPlayPolifonia EQ 3
            SET GMPlayParametros $GMPlayParametros POLY 16
         ELSE

            IF $GMPlayPolifonia EQ 4
               SET GMPlayParametros $GMPlayParametros POLY 24
            ENDIF

         ENDIF

      ENDIF

   ENDIF

ENDIF

UNSET GMPlayPolifonia
SET GMPlayFiltro `REQUESTCHOICE TITLE "$GMPlayVersion" BODY "Posso abilitare i filtri?" GADGETS Si.. No`

IF $GMPlayFiltro EQ 0
   SET GMPlayParametros $GMPlayParametros NFL
   ELSE
   SET GMPlayParametros $GMPlayParametros FL
ENDIF

UNSET GMPlayFiltro
ECHO $GMPlayParametros TO ENVARC:GMPlay-HANDLERPrefs/GMPlayParametros

LAB EjecutarGMPlay

Break >NIL: `Status COM GMPlay` ALL
Break >NIL: `Status COM GM:GMPlay` ALL

GM:GMPlay $GMPlayParametros "$GMPlayFICHERO"
UNSET GMPlayFICHERO

IF "{LineaParametro}" EQ ""
   SKIP PideFichero BACK
ENDIF

LAB Final

ECHO ""
ECHO E-Mail:
ECHO " kbit@arrakis.es"
ECHO WWW Page:
ECHO " http://www.arrakis.es/~kbit"

UNSET GMPlayVersion
UNSET GMPlayParametros
