POUR LA VERSION 0.9.28
PARTIE 7 - SYSTEME (DISQUES, EXCEL, SOURIS, MESSAGES, MIDI, DLL, ...)
5 - EXÉCUTER UN PROGRAMME EXTERNE
6 - RÉCEPTION DES PARAMÈTRES PASSÉS
7 - NOTES INDIVIDUELLES EN MIDI
8 - APPEL D'UNE FONCTION DE DLL
9 - UTILISER LE PORT PARALLÈLE D'ENTRÉES-SORTIES
10 - UTILISER LE PORT SÉRIE D'ENTRÉES-SORTIES
11 - CHAINER UN PROGRAMME SOURCE
Des informations sur les disques peuvent être obtenues.
DISK_EXISTS(D) |
Retourne 1 si le disque D existe, 0 sinon. |
DISK_KILO_FREE(D) |
Retourne l'espace disponible sur le disque D. |
DISK_KILO_SIZE(D) |
Retourne la taille du disque D. |
Excel peut être lancé, arrêté. (Excel
est un logiciel Microsoft protégé par le droit d'auteur).
Une nouvelle feuille (fichier) peut être créée.
Il est possible de lire ou écrire dans n'importe quelle cellule d'un
fichier.
Il est possible d'ouvrir plusieurs feuilles (fichiers) par la commande EXCEL_FILE_NEW.
EXCEL_START | Démarre Microsoft Excel (si installé sur le système). |
EXCEL_STOP | Arrête Microsoft Excel. |
EXCEL_FILE_NEW N | Crée un nouveau fichier Excel numéro N (crée une nouvelle feuille). |
EXCEL_FILE_OPEN N, "Nom" | Ouvre le fichier Excel Nom et lui attribue le numéro N. |
EXCEL_FILE_CLOSE N | Ferme le fichier Excel numéro N. |
EXCEL_WRITE Cellule, T | Écrit T dans une cellule Excel. |
EXCEL_READ$ (Cellule) | Retourne le contenu d'une cellule Excel. |
3 - POSITION DE SOURIS ET ÉVÉNEMENTS DE SOURIS
Pour connaître en temps réel la position de curseur
de la souris sur un objet système et l'état des touches.
La position origine (X=0, Y=0) est la position du coin supérieur gauche
de l'objet.
L'objet utilisé est un SCENE3D
ou un PICTURE (aucune commande sur un
objet d'un autre type).
Ces mots-clés sont conçus pour développer beaucoup de jeux 2D et 3D !
MOUSE_X_POSITION(N) | Retourne la position en X de la souris sur l'objet numéro N. |
MOUSE_Y_POSITION(N) | Retourne la position en Y de la souris sur l'objet numéro N. |
MOUSE_RIGHT_DOWN(N) | Retourne 1 si le bouton droit de la souris est enfoncé sur l'objet numéro N, 0 sinon, puis remet cette valeur à 0. |
MOUSE_LEFT_DOWN(N) | Retourne 1 si le bouton gauche de la souris est enfoncé sur l'objet numéro N, 0 sinon, puis remet cette valeur à 0. |
MOUSE_RIGHT_UP(N) | Retourne 1 si le bouton droit de la souris est relâché sur l'objet numéro N, 0 sinon, puis remet cette valeur à 0. |
MOUSE_LEFT_UP(N) | Retourne 1 si le bouton gauche de la souris est relâché sur l'objet numéro N, 0 sinon, puis remet cette valeur à 0. |
MOUSE_X_RIGHT_DOWN(N) | Retourne la position en X de la souris quand le bouton droit de la souris est enfoncé sur l'objet numéro N. Sans objet si MOUSE_RIGHT_DOWN(N) vaut 0. |
MOUSE_Y_RIGHT_DOWN(N) | Retourne la position en Y de la souris quand le bouton droit de la souris est enfoncé sur l'objet numéro N. Sans objet si MOUSE_RIGHT_DOWN(N) vaut 0. |
MOUSE_X_LEFT_DOWN(N) | Retourne la position en X de la souris quand le bouton gauche de la souris est enfoncé sur l'objet numéro N. Sans objet si MOUSE_LEFT_DOWN(N) vaut 0. |
MOUSE_Y_LEFT_DOWN(N) | Retourne la position en Y de la souris quand le bouton gauche de la souris est enfoncé sur l'objet numéro N. Sans objet si MOUSE_LEFT_DOWN(N) vaut 0. |
MOUSE_X_RIGHT_UP(N) | Retourne la position en X de la souris quand le bouton droit de la souris est relâché sur l'objet numéro N. Sans objet si MOUSE_RIGHT_UP(N) vaut 0. |
MOUSE_Y_RIGHT_UP(N) | Retourne la position en Y de la souris quand le bouton droit de la souris est relaché sur l'objet numéro N. Sans objet si MOUSE_RIGHT_UP(N) vaut 0. |
MOUSE_X_LEFT_UP(N) | Retourne la position en X de la souris quand le bouton gauche de la souris est relâché sur l'objet numéro N. Sans objet si MOUSE_LEFT_UP(N) vaut 0. |
MOUSE_Y_LEFT_UP(N) | Retourne la position en Y de la souris quand le bouton gauche de la souris est relâché sur l'objet numéro N. Sans objet si MOUSE_LEFT_UP(N) vaut 0. |
Pour visualiser un texte dans une fenêtre à valider ou pour attendre une saisie de l'utilisateur.
Remarque : le programme est arrêté pendant l'affichage de la fenêtre (il attend la réponse) et reprend aussitôt que l'utilisateur ferme la fenêtre-message.
MESSAGE T | Visualise la ligne de texte T dans une fenêtre. |
Fonctions affichant une fenêtre à 1 bouton et qui
retourne:
0 quand l'utilisateur ferme la fenêtre en cliquant sur l'icône de fermeture
(croix rouge),
1 quand l'utilisateur ferme la fenêtre en cliquant sur le bouton OK.
MESSAGE_CONFIRMATION_OK() | Visualise un message de confirmation à acquitter (fenêtre avec un texte, un point d'interrogation et un bouton) |
MESSAGE_ERROR_OK() | Visualise un message d'erreur à acquitter (fenêtre avec un texte, un panneau rouge d'erreur et un bouton) |
MESSAGE_INFORMATION_OK() | Visualise un message d'information à acquitter (fenêtre avec un texte, un grand "I" et un bouton) |
MESSAGE_WARNING_OK() | Visualise un message d'avertissement à acquitter (fenêtre avec un texte, un point d'exclamation et un bouton) |
4.3 - Message à répondre par oui ou par non
Fonctions affichant une fenêtre à 2 boutons et
qui retournent:
0 quand l'utilisateur ferme la fenêtre en cliquant sur l'icône de fermeture
(croix rouge),
1 quand l'utilisateur ferme la fenêtre en cliquant sur le bouton YES,
2 quand l'utilisateur ferme la fenêtre en cliquant sur le bouton NO.
MESSAGE_CONFIRMATION_YES_NO() | Visualise un message de confirmation en demandant de répondre par oui ou par non (fenêtre avec un texte, un point d'interrogation et deux boutons) |
MESSAGE_ERROR_YES_NO() | Visualise un message d'erreur en demandant de répondre par oui ou par non (fenêtre avec un texte, un panneau rouge d'erreur et deux boutons) |
MESSAGE_INFORMATION_YES_NO() | Visualise un message d'information en demandant de répondre par oui ou par non (fenêtre avec un texte, un grand "I" et deux boutons) |
MESSAGE_WARNING_YES_NO() | Visualise un message d'avertissement en demandant de répondre par oui ou par non (fenêtre avec un texte, un point d'exclamation et deux boutons) |
MESSAGE_INPUT() | Visualise un message de saisie contenant un caption, un ALPHA, un EDIT et deux boutons. La réponse est lue dans MESSAGE_TEXT$(). |
MESSAGE_INPUT$() | Visualise un message de saisie contenant un caption, un ALPHA, un EDIT et deux boutons. La réponse retournée par la fonction. |
APPLICATION_TITLE T |
Donne un titre à l'application et aux fenêtres MESSAGE. |
5 - EXÉCUTER UN PROGRAMME EXTERNE
Il est possible d'exécuter un programme externe en lui
passant des paramètres.
Le programme appelant peut attendre ou pas la fin de l'exécution du programme
appelé.
EXECUTE "c:\MonPrg.exe" | Exécute le programme "c:\MonPrg.exe". |
EXECUTE "c:\MonPrg.exe|30 5" | Exécute le programme "c:\MonPrg.exe" et lui passe les paramètres 30 et 5. |
EXECUTE_WAIT "c:\MonPrg.exe" | Exécute le programme "c:\MonPrg.exe" et attend la fin. |
EXECUTE_WAIT "c:\MonPrg.exe|30 5" | Exécute le programme "c:\MonPrg.exe" en lui passant les paramètres 30 et 5 et attend la fin. |
6 - RÉCEPTION DES PARAMÈTRES PASSÉS
Pour utiliser les paramètres passés lors de l'appel de l'exécutable (EXE):
PARAM_NUMBER | Variable système qui retourne le nombre de paramètres passés lors de l'appel. |
PARAM_VALUE$(N) | Retourne la valeur du Nème paramètre passé lors de l'appel. |
7 - NOTES INDIVIDUELLES EN MIDI
Pour jouer des notes individuelles sur la carte son, il faut
d'abord allouer des ressources par MIDI_ON.
Les notes sont jouées par MIDI_PLAY. Le
volume peut être modifié par MIDI_VOLUME.
Quand les notes ont été jouées, on libère les ressources
par MIDI_OFF :
MIDI_ON | Démarre l'utilisation individuelle des notes sur la sortie MIDI. |
MIDI_PLAY N, T | Joue la note N de type T sur la sortie MIDI. |
MIDI_VOLUME V | Modifie le volume des notes jouées sur la sortie MIDI. |
MIDI_OFF | Arrête l'utilisation individuelle des notes sur la sortie MIDI. |
Dans la commande MIDI_PLAY N, T
N représente la note avec la convention MIDI ( 60 = Do, 62 = Ré,
...) et T représente sa durée
T est la durée de la note, de 0 à 11, définie comme suit:
T
|
Note
|
Durée en millisecondes
|
0
|
ronde
|
4000
|
1
|
ronde pointée
|
6000
|
2
|
blanche
|
2000
|
3
|
blanche pointée
|
3000
|
4
|
noire
|
1000
|
5
|
noire pointée
|
1500
|
6
|
croche pointée
|
500
|
7
|
ronde pointée
|
750
|
8
|
double croche
|
250
|
9
|
double croche pointée
|
375
|
10
|
triple croche
|
125
|
11
|
triple croche pointée
|
188
|
8 - APPEL D'UNE FONCTION DE DLL
Pour appeler une fonction contenue dans une DLL (Dynamic Link
Library c'est à dire "bibliothèque de liens dynamiques"), il
faut d'abord charger la DLL en mémoire par DLL_ON.
Les appels de fonctions se font par des commandes DLL_CALLn,
n étant le nombre de paramètres.
Quand la DLL n'est plus utile, la place qu'elle occupait en mémoire peut
être libérée par DLL_OFF.
DLL_ON D | Chargement en mémoire de la DLL D. |
DLL_CALL0(F) | Retourne la valeur fournie par la fonction F, appelée sans aucun paramètre. |
DLL_CALL1(F, P1) | Retourne la valeur fournie par la fonction F, appelée avec 1 paramètre. |
DLL_CALL2(F, P1, P2) | Retourne la valeur fournie par la fonction F, appelée avec 2 paramètres. |
DLL_CALL3(F, P1, P2, P3) | Retourne la valeur fournie par la fonction F, appelée avec 3 paramètres. |
DLL_CALL4(F, P1, P2, P3, P4) | Retourne la valeur fournie par la fonction F, appelée avec 4 paramètres. |
DLL_CALL5(F, P1, P2, P3, P4, P5) | Retourne la valeur fournie par la fonction F, appelée avec 5 paramètres. |
DLL_CALL6(F, P1, P2, P3, P4, P5, P6) | Retourne la valeur fournie par la fonction F, appelée avec 6 paramètres. |
DLL_OFF | Libère la mémoire. |
Pour certaines fonctions il peut être utile de passer en paramètre l'adresse d'une variable ou le handle d'un objet système:
ADR(V) | Retourne l'adresse de la variable V. |
HANDLE(N) | Retourne le handle de l'objet système numéro N. |
HANDLE_CANVAS(N) | Retourne le handle de la zone graphique de l'objet système numéro N. |
HANDLE_FORM(T$) |
Retourne le handle du FORM ayant T$ comme titre. |
HANDLE_APPLICATION | Retourne le handle de l'application courante. |
9 - UTILISER LE PORT PARALLÈLE D'ENTRÉES-SORTIES
Pour utiliser la prise imprimante comme moyen d'entrée-sortie.
Toute séquence d'utilisation du port parallèle doit commencer
par la commande PARALLEL_ON et se terminer par
PARALLEL_OFF.
La DLL inpout.dll est nécessaire.
En général, le port parallèle a ses sorties en 888 et ses entrées en 890.
PARALLEL_ON |
Début d'une séquence d'utilisation du port parallèle. |
PARALLEL_OUT N, V | Envoie la valeur V sur le port parallèle N. |
PARALLEL_INP(N) |
Retourne la valeur lue sur le port parallèle N. |
PARALLEL_OFF | Fin d'une séquence d'utilisation du port parallèle. |
10 - UTILISER LE PORT SÉRIE D'ENTRÉES-SORTIES
Pour utiliser la prise série comme moyen d'entrée-sortie.
Toute séquence d'utilisation du port série doit commencer par
la création d'un objet SERIAL.
SERIAL N |
Crée un objet système SERIAL et lui donne le numéro N comme référence. |
SERIAL_BAUDRATE N,R | Définit la vitesse en Bauds R de la liaison série numéro N. |
SERIAL_CLOSE N | Arrête les échanges de la liaison série numéro N. |
SERIAL_DATABITS N,D | Définit le nombre de bits de donnée D de la liaison série numéro N. |
SERIAL_OPEN N | Démarre les échanges de la liaison série numéro N. |
SERIAL_PARITY N,P | Définit les bits de parité P de la liaison série numéro N. |
SERIAL_PORT N,P | Définit le numéro de port de la liaison série numéro N. |
SERIAL_STOPBITS N,S | Définit le nombre de bits de stop S de la liaison série numéro N. |
SERIAL_WRITE N,V$ | Envoie la chaine de caractères V$ sur la liaison série numéro N. |
ON_RECEIVE N,L | Exécute le programme à partir du label L quand un caractère est reçu sur la liaison série numéro N. |
SERIAL_READ$(N) | Lit les caractères reçus sur la liaison série numéro N. |
SERIAL_PORT_EXISTS(X) | Retourne 1 si le port série numéro X existe, 0 sinon. |
11 - CHAINER UN PROGRAMME SOURCE
Il est possible de charger puis d'exécuter un programme source.
Dans ce cas, toutes les variables utilisées et tous les objets système, 3D, SPRITE sont détruits.
CHAIN F |
Enchaîne le source contenu dans le fichier F. |
Mode TRACE: examiner l'exécution dans un fichier de traçage.
TRACE_ON F |
Démarre le mode trace et crée le fichier texte F. |
TRACE_OFF |
Arrête le mode trace et ferme le fichier texte F. |
Saut en cas d'erreur.
ON_ERROR_GOTO L |
Si erreur, saute à la partie du programme qui commence par "L:" |
OFF_ERROR_GOTO |
Annule la commande ON_ERROR_GOTO. |
Description d'erreur.
ERROR_FRENCH |
Choisit le français comme langue de description d'erreur. |
ERROR_ENGLISH |
Choisit l'anglais comme langue de description d'erreur. |
ERROR_LINE |
Retourne le numéro de ligne de l'erreur. |
ERROR_NUMBER |
Retourne le numéro de l'erreur. |
ERROR_TYPE$ |
Retourne le type de l'erreur. |
CLIPBOARD_STRING_COPY S | Copie dans le presse-papier l' expression string S. |
V$=CLIPBOARD_STRING_PASTE | Colle le texte du presse-papier dans la variable string V$. |
ARCHIVER_ON |
Démarre l'archiveur. |
ARCHIVER_OFF |
Arrête l'archiveur. |
ARCHIVER_ADD D, F |
Archive les fichiers du répertoire D dans le fichier F. |
ARCHIVER_EXTRACT F, D |
Extrait le fichier archive F dans le répertoire D. |
MAIL_SEND A,S,B |
Envoie un e-mail d'objet S et de texte B à l'adresse A. |
16 -INFORMATIONS SUR LE SYSTÈME
VERSION$ |
Retourne la version de Panoramic. |
SYSTEM$ |
Retourne le système actuellement utilisé (Windows, Android, MACOS). |
ENVIRONMENT$ | Retourne l'environnement utilisé (Classic, Multiplf). |
NUMBER_TICKS | Retourne le nombre de millisecondes écoulées depuis le démarrage du système. |
17 - CRÉER DES FICHIERS EXÉCUTABLES AUTONOMES
Fichier / Exécutable (exe):
crée un fichier exécutable autonome (.EXE)
Fichier / Application (exe): crée
un fichier exécutable autonome (.EXE) contenant
vos fichiers TXT, JPG et BMP (application)
Pour utiliser de tels fichiers, il n'est pas nécessaire de posséder PANORAMIC.
Vous pouvez distribuer librement vos propres fichiers exécutables autonomes sans aucune redevance.
Dernière mise à jour: 25 juin 2018