s'appelant les uns les autres, par la commande "RUN [nom du programme]".
Cette commande fait un LOAD du programme et le RUN, bien pratique (basic 7)
Je fais de l'archéologie dans mes programmes sur K7 de 1986, pour le commodore 64.
J'ai retrouvé la version K7 de ces programmes. Et je fais la même chose sans cette commande qui n'existe pas en basic 2.
J'ai écrit cela:
Code : Tout sélectionner
40 POKE53280,0:POKE53281,0:PRINT"{clr}{down}{down}{cyan}"
50 PRINTTAB(10)"{rvson} CHARGEMENT EN COURS "
60 FORA=631TO640:READB:POKEA,B:NEXTA
70 DATA76,207,13,83,217,55,54,56,48,13
80 POKE198,10:PRINT"{black}"
90 FORTN=0TO400:NEXTTN:END
et je poke 10 valeurs dans le buffer clavier (631 et suite)
Je poke 10 dans 198, indique la taille utilisée dans le buffer, soit les 10 caractères placés.
Je mets les écritures en noir pour que plus rien ne soit lisible à l'écran.
Une boucle d'attente et fin du programme.
Le buffer clavier se vide alors à l'écran comme si on tapait les commandes, soit :
76+207+13 = abréviation de LOAD + "Enter"
La data cassette se remet en marche pour charger le programme suivant sur la bande.
A la fin du chargement, il rend la "main" (Ready)
Ensuite arrivent les autres caractères restant du buffer:
83+217 = abréviation de SYS, appel d'une routine en langage machine
55+54+56+48 = adresse de la routine soit 7680 (1E00) correspond à une adresse dans la RAM réservée au basic (0800-9FFF)
13 = "Enter" pour exécution
Le programme suivant s'exécute donc, en LM à partir de l'adresse 1E00
Je ne trouve PAS comment cela ce fait que le programme suivant (qui n'est pas en basic) de la K7 se soit chargé à cette adresse 1E00.
LOAD et SAVE du basic v2 n'ont pas de paramètres pour cela.
Je ne me souvient plus de la méthode que j'ai utilisé. Une idée?