Comment écrire un programme Apple II BASIC dans votre navigateur Web
Avez-vous déjà voulu programmer un ordinateur vintage? Si vous utilisez le langage de programmation BASIC et exécutez une simulation du légendaire Apple II dans votre navigateur, c'est facile! Vous aurez une excellente idée de la programmation à la fin des années 70 et au début des années 80.
Bien sûr, si vous avez un vrai Apple II, vous pouvez également suivre. Sinon, nous utiliserons un émulateur Apple II pratique appelé Apple) (js créé par Will Scullin. Nous couvrirons les bases de BASIC et exécuterons deux programmes simples.
Sommaire
Pourquoi l'Apple II était si important
Introduit en 1977, l'Apple II a été lancé dans le cadre d'une classe de petits ordinateurs peu coûteux rendus possibles par la technologie des microprocesseurs. Ces ordinateurs personnels permettaient aux gens de posséder et d'utiliser leurs propres machines avec une relative facilité. Avant cela, la plupart des ordinateurs étaient chers et n'étaient détenus (ou partagés) que par de grandes organisations.
L'Apple II se démarque par son faible coût et ses graphismes couleur. Il avait également sept emplacements d'extension internes qui fonctionnaient avec le système de disquettes le moins cher du monde à l'époque, le Disk II. Le cofondateur d'Apple, Steve Wozniak, la magie de la conception de circuits a permis à toutes ces fonctionnalités de s'intégrer dans une petite machine de bureau avec un boîtier en plastique léger.
L'Apple II a été un succès éclatant pour Apple. Au cours de sa durée de vie d'environ 16 ans (arrêtée en 1993), la plate-forme Apple II a hébergé sept versions de la conception informatique originale de Wozniak. Un ordinateur Apple II typique était équipé de 48 ou 64 Ko de RAM et d'un processeur 6502 à 1,022 MHz. Vous pouvez programmer chaque modèle en BASIC.
Les bases de BASIC
De la fin des années 1970 au début des années 80, la plupart des ordinateurs personnels comprenaient un langage de programmation connu sous le nom de BASIC, acronyme de Beginners 'All-purpose Symbolic Instruction Code. BASIC a vu le jour en 1964 avec le système de partage du temps du Dartmouth College. Il est rapidement devenu un outil éducatif populaire pour l'informatique en raison de sa facilité d'utilisation.
L'Apple II a été livré avec deux versions principales de BASIC au fil des ans: Integer BASIC de Wozniak et Applesoft. Microsoft a créé Applesoft bien avant qu'il ne devienne célèbre pour Windows.
Pour cet article, nous avons utilisé Applesoft BASIC.
Quelques conseils de syntaxe
Chaque programme BASIC sur l'Apple II est composé de lignes de code. Chaque ligne a un numéro, et lorsqu'un programme est RUN, l'ordinateur exécute chaque ligne dans l'ordre numérique du plus petit au plus grand. Chaque ligne est entrée dans la mémoire de l'ordinateur en appuyant sur la touche Retour.
Ces trois commandes BASIC fondamentales seront toujours utiles.
- À tout moment pendant la programmation, vous pouvez voir le contenu de votre programme en tapant le
LIST
commander. - Pour démarrer un nouveau programme (effacer le programme actuel de la mémoire), tapez
NEW
. - Pour effacer l'écran, tapez
HOME
.
Si vous faites une erreur en tapant le programme, l'Apple II renverra une «ERREUR SYNTAXE» lors de l'exécution du programme et inclura un numéro de ligne où l'erreur s'est produite. Il suffit de retaper la ligne incriminée, en revérifiant les éventuelles fautes de frappe.
Je l'ai? Commençons.
Votre premier programme
Tout d'abord, nous allons écrire un programme très simple qui compte pour toujours. C’est un moyen rapide de tester si BASIC fonctionne correctement sur n’importe quel système.
Si vous avez un vrai Apple II, mettez-le sous tension. Assurez-vous d'utiliser une machine avec Applesoft dans la ROM, comme l'Apple II Plus ou une version ultérieure, ou un Apple II d'origine avec la carte de langue appropriée.
Si vous suivez sans véritable Apple II, ouvrez une nouvelle fenêtre de navigateur vers Apple) (émulateur js. Apple) (js utilise JavaScript pour simuler les circuits d'une vraie Apple II dans le logiciel. Fondamentalement, vous exécuterez un système Apple II complet dans un navigateur Web (cela fonctionne mieux dans Google Chrome).
Lorsque vous chargez l'émulateur pour la première fois (ou démarrez un Apple II sans système de disquette), vous voyez un écran comme celui illustré ci-dessous.
Appuyez ou cliquez sur «Réinitialiser».
Vous entendez un bip, puis voyez l'invite «)» avec un curseur clignotant.
À l'invite, tapez ce qui suit et appuyez sur Entrée (ou Retour) à la fin de chaque ligne:
10 X=X+1 20 PRINT X 30 GOTO 10
Si vous faites une erreur, utilisez simplement la touche fléchée gauche de votre clavier pour déplacer le curseur vers l'arrière et apporter des corrections. Les nouveaux caractères que vous tapez remplaceront les anciens. Vous pouvez également retaper la ligne entière.
Chaque fois que vous tapez une ligne de code avec un certain numéro de ligne, BASIC remplace tout ce qui était précédemment stocké sur ce numéro de ligne par la nouvelle entrée.
Lorsque vous utilisez BASIC sur un ancien système, comme l'Apple II, il est courant de numéroter les lignes par multiples de 10. Cela vous donne la possibilité d'ajouter de nouvelles lignes de code entre elles plus tard si nécessaire.
Ensuite, saisissez LIST
, puis appuyez sur Entrée (ou Retour) pour afficher la liste de votre programme.
Si vous vous retrouvez accidentellement avec des lignes dont vous n'avez pas besoin (par exemple, si vous avez tapé 32 au lieu de 30), tapez simplement le numéro de ligne et appuyez sur Entrée (ou Retour) pour le supprimer.
Si tout semble correct, il est temps d'exécuter votre programme. Type RUN
à l'invite), puis appuyez sur Entrée (Retour).
Le programme compte à la hausse d'une unité pour toujours et imprime chaque numéro sur une nouvelle ligne en bas de l'écran.
Pour arrêter le programme, appuyez sur Ctrl + C. Cette volonté BREAK
le programme, interrompant son exécution.
Alors, comment fonctionne ce programme? Décomposons-le ligne par ligne:
10 X=X+1 20 PRINT X 30 GOTO 10
- Ligne 10: Ici, nous disons au programme qu'une variable nommée «X» est égale à elle-même plus un. Au début du programme, «X» est égal à zéro. Ainsi, lors de sa première passe, le programme ajoute un à zéro, résultant en un.
- Ligne 20: Le programme utilisera le
PRINT
pour afficher le contenu de la variable «X» à l'écran. - Ligne 30: Nous utilisons le
GOTO
pour renvoyer le programme à la ligne 10 en boucle. La valeur de la variable «X» (maintenant incrémentée d'une unité) est réinjectée dans la ligne 10. Le programme répète ensuite ce processus pour toujours, en comptant d'une unité vers le haut, puis en imprimant le résultat dans chaque boucle.
Un programme d'entrée simple
Maintenant que vous avez goûté à taper, répertorier, exécuter et interrompre un programme, examinons celui qui peut faire quelque chose avec l'entrée que vous lui donnez.
Tout d'abord, tapez NEW
et appuyez sur Entrée (Retour). Cela efface notre dernier programme de la mémoire, afin que nous puissions recommencer à zéro.
Tapez la ligne suivante ligne par ligne, puis appuyez sur Entrée (Retour) à la fin de chaque:
10 PRINT "WHAT IS YOUR NAME?" 20 INPUT N$ 30 PRINT "HELLO, ";N$
Lorsque vous avez terminé, LIST
le programme pour vérifier que vous l'avez tapé correctement.
Type suivant RUN
et appuyez sur Entrée (Retour) pour l'exécuter. Le programme vous demandera de saisir un point d'interrogation ( ?
). Tapez votre nom et appuyez sur Entrée (Retour) pour répondre à la question.
Comme une sorte de magie noire obscure, le programme connaissait votre nom et vous a parlé! Comment cela a-t-il fonctionné? Jetons un œil à chaque ligne:
10 PRINT "WHAT IS YOUR NAME?" 20 INPUT N$ 30 PRINT "HELLO, ";N$
- Ligne 10: Le programme a affiché une ligne de texte à l'écran. Chaque ligne de texte que vous souhaitez
PRINT
doit être entre guillemets. - Ligne 20: Le programme demande
INPUT
de vous et stocke le résultat dans une variable appeléeN$
. Le signe dollar est l'abréviation de «chaîne». Chaque variable qui comprend des lettres doit être une variable de type chaîne. - Ligne 30: Le programme affiché
Hello
, suivi d'une virgule et d'un espace, puis imprimé le contenu de la variableN$
. Le point-virgule a dit au programme d'imprimerN$
sur la même ligne sans insérer de saut de ligne.
Gratter la surface
Maintenant que vous avez goûté au BASIC sur l'Apple II, vous pouvez dire à tous vos amis que vous avez programmé un ordinateur vintage! En fait, vous pouvez même dire Steve Wozniak sur Twitter.
Si vous souhaitez approfondir Applesoft BASIC, nous vous recommandons ce merveilleux didacticiel en ligne de Yuri Yakimenko. Cela va beaucoup plus en détail que nous n'en avons ici. Il existe également cette référence rapide et pratique des commandes Applesoft BASIC.
Une analyse complète du Manuel de programmation de base Apple II à partir de 1978 est également disponible. Il explique en détail comment enregistrer et charger vos programmes.
Des milliers de jeux et d'applications incroyables ont été programmés dans Applesoft au cours des 42 dernières années, de sorte que le ciel est la limite de ce que vous pouvez en faire. (En fait, la quantité de RAM dans votre machine est la limite, mais c'est tellement moins poétique.)
Pour tous les vétérans d'Apple II, nous aimerions entendre vos histoires sur l'utilisation de BASIC dans les commentaires. Bonne programmation!