PANORAMIC: MANUEL UTILISATEUR

POUR LA VERSION 0.9.28

PARTIE 7 - SYSTEME (DISQUES, EXCEL, SOURIS, MESSAGES, MIDI, DLL, ...)


1 - GESTION DES DISQUES

2 - GESTION D'EXCEL

3 - POSITION DE SOURIS ET ÉVÉNEMENTS DE SOURIS

4 - FENÊTRE MESSAGE

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

12 - GESTION DES ERREURS

13 - GESTION DU PRESSE-PAPIER

14 - ARCHIVAGE

15 - MAIL

16 - INFORMATIONS SUR LE SYSTÈME

17 - CREER DES FICHIERS EXECUTABLES AUTONOMES


1 - GESTION DES DISQUES

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.

Haut de page


2 - GESTION D'EXCEL

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.

Haut de page


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.

Haut de page


4 - FENÊTRE MESSAGE

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.

4.1 - Texte simple

MESSAGE T Visualise la ligne de texte T dans une fenêtre.

4.2 - Message à acquitter

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)

4.4 - Message de saisie

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.

7.5 - Titre

APPLICATION_TITLE T

Donne un titre à l'application et aux fenêtres MESSAGE.

Haut de page


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.

Haut de page


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.

Haut de page


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

Haut de page


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.

Haut de page


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.

Haut de page


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.

Haut de page


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.

Haut de page


12 - GESTION DES ERREURS

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.

Haut de page


13 - GESTION DU PRESSE-PAPIER

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$.

Haut de page


14 - ARCHIVAGE

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.

Haut de page


15 - MAIL

MAIL_SEND A,S,B

Envoie un e-mail d'objet S et de texte B à l'adresse A.

Haut de page


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.

Haut de page


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.

Haut de page


Dernière mise à jour: 25 juin 2018