LIB2P9 : Copie le code d'une lib en P9

Le logiciel suivant vous permet de copier le code BASIC d'une librairie en P9, là ou les autres programmes du genre ne font que modifier les pointeurs de de la zone P9, rendant toute édition/modification impossible, et donc fatale (plantage grave avec ALL RESET obligatoire à la clé !).

Cette version, notre version “OISAC” va plus loin que n'importe quel autre programme existant :

  1. Le code généré (en P9) est éditable !
  2. Le DUMP du programme de fait via le MODE33 de la LIB0900, ce qui permet d'obtenir de meilleurs résultats en terme de copie, en dépit de l'apparente lenteur de l'importation du source (environ 1Ko/min).
  3. Préserve le MEMO.

Une fois le code de la librairie transféré en P9, vous pourrez donc l'éditer à loisir, et même le supprimer (NEW).

Fonctionnement

ATTENTION : Veillez à ce que la zone P9 soit vide. Faites un “NEW” pour la purger. Cette condition doit obligatoirement être remplie sous peine de planter la machine à l'issue de l'exécution du programme.
  • Mettez vous en MODE 0, et appelez la LIB de votre choix en tapant son numéro puis en appuyant sur la touche LIB.
  • Breakez l'exécution du programme.
  • Lancer le programme.
  • Il affiche le nom de la LIB à importer suivi d'un chiffre en parenthèses qui correspond au nombre d'étoiles qui s'afficheront lors du travail afin de vous donner une idée de l'importance de la tâche qui attend le programme. Plus y a d'étoiles, plus le traitement sera long

lib2p9_screen01.jpg

  • Répondez Y (Yes) et validez en appuyant sur la touche EXE.
  • Les étoiles s'affichent… la machine travaille…

lib2p9_screen02.jpg

  • Un BEEP est émis une fois le traitement terminé.
  • Rendez-vous en P9, le programme est là.

Listing

Affichage sur 32 colonnes (présentation identique à celle affichée à l'écran).

1 'OISAC'
10 DEFSEG=0:R=PEEK1715+PEEK1716*
256+PEEK1717*65536:P=PEEK1858+PE
EK1859*256:DEFSEG=20480:L$=CHR$(
13)+"DUMP ":FORJ=7TO12:L$=L$+CHR
$(PEEK(P+J)):NEXT:GOSUB100:AD=X:
S=PEEK(P+2)*4096:P=P+3:GOSUB100:
AF=X:D=AF-AD
15 CLS:PRINT"  [ OISAC 2008 ]-[ 
LIB -> P9 ]";L$;"(";D\128+1;") -
> P9 (Y/N):";:INPUT@1;R$
20 IFR$<>"Y"THEN99ELSEDEFSEG=0:P
=R-150:GOSUB100:D9=X:IFD>FRE1THE
NPRINT"RAM < LIB":END
30 P=1703:GOSUB100:DM=X:a=D9+D:X
=a:GOSUB200:P=R-147:GOSUB200:P=R
-165:GOSUB200:P=1706:GOSUB100:FM
=X:I=FM-DM:X=D9+D+I:GOSUB200
35 P=R-162:GOSUB200:P=1771:GOSUB
100:A=X:f=DM-1:e=I+f:o=a+I-1:POK
EP,204:POKEP+1,247:POKEP+2,5:GOS
UB2090
40 POKEP,A MOD256:POKEP+1,A\256:
POKEP+2,0
45 FORI=0TOD-1:DEFSEG=S:B=PEEK(A
D+I):DEFSEG=0:POKED9+I,B:IFI MOD
128=0THENPRINT"*";
50 NEXT
99 BEEP:END
100 X=PEEKP+PEEK(P+1)*256:RETURN
200 POKEP,X MOD256:POKEP+1,X\256
:RETURN

Téléchargement du source

lib2p9.cas : Dernière mise à jour 04.11.08 / 848 octets.

 
lib2p9.txt · Dernière modification: 2010/05/01 19:50 (édition externe) · [Anciennes révisions]
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki