PANORAMIC:
ADAPTATION D'UN SOURCE D'UN AUTE BASIC
PAGE PRINCIPALE /PAGE TUTORIELS
Voici la méthode que je propose pour transformer un ancien source écrit en Basic
1 - Faire apparaitre les LABELS
Les
sources possèdaient un numéro pour chaque ligne, A l'époque,
c'était obligatoire.
Aujourd'hui, on a besoin uniquement de repérer deux types de lignes:
-
celles qui sont le début d'un sous-programme, et qui sont appelées
par GOSUB,
- celles
auxquelles on accède par un GOTO.
Pour
cela, à chaque fois qu'on trouve GOTO n ou GOSUB n, on fait deux choses:
- on replace n par Ln dans GOTO n et GOSUB n qui deviennent respectivement GOTO
Ln et GOSUB Ln,
- on remplace le
numéro de ligne n par Ln:
A chaque fois qu'on rencontre un THEN n on le remplace par THEN GOTO n
2 - Eliminer les numéros de ligne
Ensuite, on élimine tous les numéros de lignes, devenus inutiles.
3 - Déclarer les LABELS
On déclare alors les labels.
4 - Adapter à la syntaxe de PANORAMIC
Puis on adapte le source obtenu à PANORAMIC par exemple:
- Les lignes du type INPUT "TEXTE";C sont remplacées par des lignes du type PRINT "TEXTE": PRINT C
- Les lignes du type PRINT "TEXTE";I sont remplacées par des lignes du type PRINT "TEXTE "+STR$(I)
- PRINT N$(Z(I)); : PRINT S(Z(I)) est changée en PRINT N$(Z(I)) + STR$(S(Z(I)))
- RESTORE 1026 est changé en RESTORE
5 - Déclarer les variables
On déclare les variables utilisées.
6 - Essayer d'exécuter et corriger de façon itérative, jusqu'à obtenir une exécution parfaite
On le lance et ça ne marche pas !
Car il y a encore quelques adaptations à faire, qu'on ne voit qu'à l'exécution.
Par exemple, un END pour le programme principal doit être ajouté AVANT un sous programme, sinon celui-ci s'exécute puis il y aura l'erreur "RETURN SANS GOSUB" à la tentative de l'exécution du RETURN.
Mise à jour : 10 novembre 2008