Eh bien, ça avance bien
Petite précision : le PC-1211 ne connaît pas LPRINT, ni LLIST d'ailleurs...
Son imprimante était activée par :
- - l'allumage de l'imprimante
- le positionnement de son commutateur "PRINT" sur ON
- deux pressions sur la touche "ON" du PC-1211
et elle intercepte alors les ordres PRINT et LIST pour les imprimer,
mais ne les affiche plus (et donc l'exécution des PRINT imprimés n'arrête plus le PC-1211 et dispense de l'appui sur ENTER). Seuls INPUT et PAUSE continuent à être affichés,
mais ne seront pas imprimés. Quant à LIST, sans argument il imprime
de la première ligne à la dernière, et avec argument il affiche la ligne demandée
sans l'imprimer... ça risque de ne pas être simple à simuler, ce genre de comportement
Dans le cadre d'une simulation, le plus simple (à défaut d'être rigoureusement fidèle à l'original) pour remplacer la procédure d'allumage de l'imprimante serait de rediriger les sorties de ces deux ordres sur le "papier" virtuel dès le branchement de la CE-122 sur le PC-1211 effectué.
Mais attention : l'afficheur du PC-1211 comporte 24 colonnes
et ignore les messages plus longs, alors que son imprimante CE-122 n'en compte que 16
mais passe à la ligne pour imprimer tous les caractères restant[s/i]... Ce qui fait que par exemple, un PRINT "CECI EST UN MESSAGE DE 36 CARACTERES" sera affiché tronqué "CECI EST UN MESSAGE DE 3" ou imprimé complet, mais en trois lignes : "CECI EST UN MESS" puis "AGE DE 36 CARACT" puis "ERES"
Pour information, voici la liste complète du vocabulaire du PC-1211 :
- - Fonctions : + - * / ^ SIN COS TAN ASN ACS ATN LOG LN EXP DMS DEG INT ABS SGN racine_carrée pi
- Ordres : AREAD BEEP CLEAR DEGREE END FOR TO STEP NEXT GOTO GOSUB RETURN GRAD IF THEN LET INPUT PAUSE PRINT RADIAN REM STOP USING
- Commandes : CONT DEBUG LIST MEM NEW RUN
- Cassette : CSAVE CLOAD CLOAD? CHAIN PRINT# INPUT# et la fonction cachée CLOAD1
J'ai mis en caractères gras le vocabulaire non encore simulé d'après ta liste. Pour info, DEBUG=TRON (pas de TROFF, mais CONT arrête ce mode de déboguage), CLOAD1=MERGE, racine_carrée et pi sont les signes car SQR et PI sont inconnus du PC-1211. Le reste obéit à la syntaxe habituelle de Sharp, sauf LIST (voir ci-dessus), USING qui s'applique à tous les PRINT à partir de la ligne sur laquelle il figure (y compris un PRINT situé avant le USING !) et qui ne connaît comme arguments que #.^ (comme un 1251, mais pas comme un 1500, par exemple).
Désolé de te mettre un peu plus de pain sur la planche, mais quand on voit ce que tu as déjà réalisé pour immortaliser virtuellement ce petit Sharp, c'est tellement tentant d'en demander plus ![Embarassed :oops:](./images/smilies/icon_redface.gif)
Et pour t'aider, je vais te donner la clef du succès d'après Sharp :
"La clé du succès resiole dans la de la programmation de l'unpisarionde la manchine d'Frequences rapprochees"
Avec cela, tu ne peux que réussir
(citation exacte -orthographe comprise- de l'avant-dernière phrase de l'avant-propos du Manuel d'initiation du Langage Basic du Sharp PC-1211, page 3)