home *** CD-ROM | disk | FTP | other *** search
- {**************************************************************************}
- {* Voici un petit programme d'exemple d'intégration de mes routines *}
- {* dans un programme en pascal. *}
- {* *}
- {* L'ordre d'appel des fonctions est important. *}
- {* *}
- {* Programmé par Sébastien Granjoux *}
- {* Commencé le 06/01/93 *}
- {* Modification le 25/10/94 *}
-
- PROGRAM CRYSEXP;
-
- {$M 4096,0,8192} { Comme mes routines se chargent seules d'allouer la place
- mémoire nécessaire au chargement du MOD, il faut leur
- laisser de la place. }
-
-
- Uses CRYSTAL; { Utilise l'unité }
-
- VAR
- Fichier:STRING;
- Test:INTEGER;
- Irq,Dma:BYTE;
- Device,Dport:WORD;
-
- BEGIN
-
- Test:=USESPK; { Choisit les cartes sonores utilisables }
- Test:=USEDAC;
- Test:=USEADL;
- Test:=USESB;
- Test:=USEGUS;
-
- Fichier:='c:patega.mod'+chr(0); { J'utilise la convention du C qui est
- différentes de celle du pascal pour
- la représentation des chaines de
- de caractères. Elles doivent se
- terminer par 0 et commencer au
- premier caractère. }
-
- Dport:=0;
- Irq:=0;
- Dma:=0;
- Device:=THE_BEST;
-
- Test:=DETECTSND(Device,Dport,Irq,Dma); { Cherche la meilleur cartes sonore
- dans les variables
- d'environnements }
-
- Test:=FLOADMOD(Addr(Fichier[1])); { Charge le MOD. Le nom est passé sous
- la forme d'une chaine C }
-
- Test:=SETMOD(1800,Device,Dport,Irq,Dma); { Prepare la MOD à 18kHz avec la
- carte son trouvé }
-
- STARTMOD; { Commence la musique }
-
- { A partir de ce moment la musique commence à jouer, si vous ne voulez pas
- la dégrader (surtout avec le PC speaker) évité de bloquer les
- interruptions }
-
- REPEAT
- BEGIN
- ; { Ici vous pouvez appeler MAKEMOD }
- END
- UNTIL PORT[$60]<$80; { Beaucoup plus rapide qu'une fonction
- du genre de keypress et donc meilleur
- pour la qualité de la musique }
-
- STOPMOD; { Arrête la musique et remet le PC dans
- son état initial }
-
- UNLOADMOD; { Rend la mémoire utilisé pour charger
- le MOD au DOS }
-
- END.
-