[APPLE 2] AppleSoft Basic soucis

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Répondre
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

[APPLE 2] AppleSoft Basic soucis

Message par Sappas »

Maintenant que j'ai récupéré ce que je voulais, j'ai décidé d'apprendre le basic pour l'Apple 2

Donc j'ai testé sur Apple 2e, 2c et 2c plus.

Sur le 2e, j'ai remarqué que le moniteur semblait plus complet étrangement
Bref il me renvoie un erreur sur la boucle Goto, undef d.

110 GR
130 COLOR=RND(16)
150 X=RND(40)
170 Y=RND(40)
190 PLOT X,Y
210 GOTO 130

C'est un exemple trouvé sur un blog, qui a été saisi sur un émulateur, un ami silicien l'a tapé dans un émulateur et ça fonctionne.

C'est certainement une bêtise, mais je ne vois pas...
J'aurais du mettre le code avec des balises, mais je ne sais pas faire
Bernouilli92
Messages : 1254
Inscription : 24 déc. 2021 09:46
Localisation : Région parisienne

Re: [APPLE 2] AppleSoft Basic soucis

Message par Bernouilli92 »

Tu as essayé de retaper la ligne 210?
Avatar de l’utilisateur
init_hello
Messages : 224
Inscription : 13 mars 2022 12:03
Localisation : Paris

Re: [APPLE 2] AppleSoft Basic soucis

Message par init_hello »

Bernouilli92 a raison, tu devrais essayer de retaper la ligne 210. Je suppose que le message d'erreur complet est "UNDEF'D STATEMENT". Cela signifie que l'instruction GOTO référence un numéro de ligne qui n'existe pas. A première vue ce n'est pas le cas, mais il est possible qu'en entrant ton programme au clavier, tu ais introduit un caractère de contrôle dans le numéro de ligne de ton GOTO. Ces caractères sont malheureusement invisibles lorsque tu listes le programme. Ce genre d'erreur de saisie difficile à repérer est fréquent avec l'Applesoft. Tiens-nous au courant !

Au fait il existe des quantités de bouquins facilement disponibles pour t'aider. Le BASIC Applesoft est très simple à apprendre, et même un peu rudimentaire en 2022 :-) Mais c'est rigolo pour écrire et tester très vite un petit programme.
Eric
Avatar de l’utilisateur
init_hello
Messages : 224
Inscription : 13 mars 2022 12:03
Localisation : Paris

Re: [APPLE 2] AppleSoft Basic soucis

Message par init_hello »

Autre chose, il n'y a pas de différence, ou si peu, entre les BASIC Applesoft des différents modèles (][, ][plus, //e ou //c). Par contre il existe 2 BASIC différents : le BASIC Applesoft est de loin le plus fréquemment utilisé, c'est celui qui est en ROM sur tous les modèles à partir du IIplus (prompt : ]). Il existe également le "Integer BASIC" ou BASIC entier (entier pour nombre entier, pas pour complet :mrgreen: ), plus ancien, présent en ROM sur l'Apple ][ original uniquement (prompt : >), et sur la disquette système DOS 3.3 (mais inutilisable par contre sous ProDOS).

Ton programme est en Integer BASIC, car la fonction RND sous Applesoft renvoie un nombre réel entre 0 et 1. Tel qu'il est écrit ce programme ne peut marcher que si RND renvoie un entier entre 0 et le paramètre de la fonction, ce qui est le cas en Integer BASIC. Mais ton message d'erreur "UNDEF'D STATEMENT" n'existe qu'en Applesoft, c'est donc cet interpréteur que tu as utilisé (c'est d'ailleurs celui qui est dans la ROM de ton //e)...

Si tu veux tester ton programme tel quel, la seule possibilité est de booter une disquette MASTER DOS 3.3, puis d'entrer la commande INT pour basculer en Integer BASIC. Le prompt ] est remplacé par > pour te confirmer que tu es bien en Integer BASIC. Sinon, si tu veux le faire fonctionner en BASIC Applesoft, il te faut modifier les lignes 130, 150 et 170.

Bon courage :-)

Autre chose : que voulais tu dire par "sur le IIe le moniteur semblait plus complet" ?
Eric
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [APPLE 2] AppleSoft Basic soucis

Message par Sappas »

Je te remercie d'avoir pris le temps de me répondre, et tu as probablement tapé juste.

J'ai bien vu dans du code RND(1)*40, je me doutais d'un truc comme cela !

Et ça fonctionne !
Avatar de l’utilisateur
init_hello
Messages : 224
Inscription : 13 mars 2022 12:03
Localisation : Paris

Re: [APPLE 2] AppleSoft Basic soucis

Message par init_hello »

Cool !
Eric
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [APPLE 2] AppleSoft Basic soucis

Message par Sappas »

Maintenant je voudrais faire joujou avec TASC, toujours avec du code simple.

Plus je découvre le monde 8 bit apple, moins j'ai envie des autres 8 bit
Avatar de l’utilisateur
Leraptor06
Messages : 672
Inscription : 15 févr. 2022 10:34
Localisation : Mandelieu

Re: [APPLE 2] AppleSoft Basic soucis

Message par Leraptor06 »

Merci de ta réponse sur ce fil Éric, je m aperçois que je ne connais encore rien de l'Apple.
Bonne soirée
Jp
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [APPLE 2] AppleSoft Basic soucis

Message par Sappas »

Y a des gens qui y voient des objets ( de collection ) et faut dépasser ce stade... pour en apprécier la teneur...
Me concernant, je rêvais d'un Apple 2e ou 2c, quand j'avais 13 ou 14, mais pas du tout du TO7 ! 😂
J'ai réparé l'alimentation, j'ai réglé le lecteur à 299trs/min, nettoyage et go, j'ai découvert adt, j'ai fait des disquettes, je lis un peu les différents manuels de temps en temps...
D'ailleurs les manuels d'Apple 2, sont top ! Ceux des macintoshs sont moins bien, je pense que l'idée c'est pas besoin de manuel pour Mac, c'est presque idéologique ! Sauf pour les mentions légales et les décharges de responsabilité !
Le clavier du //e c'est top, par contre l'agencement des touches c'est d'époque !
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [APPLE 2] AppleSoft Basic soucis

Message par Sappas »

init_hello a écrit : 13 oct. 2022 19:54Cool !
Je vais faire appel à tes connaissances encore une fois, Quand je boote sans disquette PRODOS, j'arrive au Basic après un raccourci clavier, je peux tapper un programme mais comme je n'ai pas préchargé un DOS ou PRODOS, les commandes SAVE, CATALOG, LOAD sont inopérantes et je ne peux pas sauvegarder !
En revanche le Basic.system sur la disquette master, est il équivalent à celui de la rom ?
Avatar de l’utilisateur
init_hello
Messages : 224
Inscription : 13 mars 2022 12:03
Localisation : Paris

Re: [APPLE 2] AppleSoft Basic soucis

Message par init_hello »

Les commandes SAVE, CATALOG, LOAD et autres ne font pas partie du BASIC (entier ou Applesoft). Elles sont ajoutées à l'interpréteur par DOS ou ProDOS lorsque tu bootes la disquette. En ce qui concerne ProDOS, BASIC.SYSTEM n'est pas l'interpréteur BASIC. Le BASIC (Applesoft) est toujours résident en ROM. BASIC.SYSTEM est un composant de ProDOS dont le rôle est de lancer l'interpréteur BASIC Applesoft, et de gérer toutes les commandes additionnelles que tu cites. (Avant ProDOS cette partie n'était pas distincte du reste du DOS qui ne formait qu'un tout monolithique chargé au boot.)

Donc, si tu démarres ton Apple sans booter DOS ou ProDOS, tu n'as pas toutes les commandes permettant de sauvegarder tes programmes sur disquette. La seule solution disponible dans ce cas c'est la sauvegarde sur cassette (ou sur PC avec Audacity et un jack entre l'Apple et le PC, oui oui ça marche !) à l'aide de la commande SAVE (sans argument). C'est possible sur tous les modèles jusqu'au //e (le GS et le //c n'ont pas l'interface cassette).
Eric
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [APPLE 2] AppleSoft Basic soucis

Message par Sappas »

Merci beaucoup, tu as répondu à toutes mes questions !
Répondre