Le Programme
MAKEHEX.BAS pour Thomson génère un nouveau programme BASIC qui contient deslignes de DATASCes lignes de DATAS correspondent aux valeurs hexadécimales
des octets d'unprogramme en langage machine .BINExemple pour transformer un fichier binaire (sur disquette ou cassette)et qui a été assemblé à partir
de l adresse memoire &H900010 REM MAKEHEX (c) THEOPHILE 20 CLS:PRINT" MAKEHEX "30 CLEAR ,$H8FFF: LET Q$=CHR$(34):LET TERM$=".BAS"35 REM saisir
le nom du fichier .BIN à incorporer40 INPUT "NOM DU FICHIER .BIN ";BIN$45 REM chargement en RAM du module binaire50 LOADM BIN$55 REM entrée du nom
du fichier .BAS qui contiendra le module binaire en DATA60 LINE INPUT "NOM DU FICHIER BASIC";BAS$70 OPEN "O",#1,BAS$+TERM$75 REM programme basic
debute par ligne 3000078 REM adresse premier octet module binaire dans DEB80 LET NL = 30000: LET DEB=&H900085 REM demande adresse de fin module
binaire90 INPUT "ADRESSE DE FIN (HEXA)";FIN$95 REM calcul nombre total octets module binaire100 LET N = VAL("$H"+FIN$)-DEB +1105 REM nombre de
ligne BASIC pleines110 LET J=N@100 : LET K = N MOD 100120 FOR I= 1 TO J130 LET C=(I-1)*100140 PRINT #1,STR$(NL+C)" DATA";Q$;145 REM
conversion/ecriture octets150 FOR I2 = 0 TO 99160 LET X$= HEX$(PEEK(DEB+C+I2))165 REM rajout de zéro si valeur hexa inf à 10170 IF LEN(X$)=1 THEN
PRINT#1,"0";180 PRINT#1,X$;190 NEXT I2200 PRINT#1,Q$210 NEXT I215 REM traitement derniere ligne220 LET C=(I-1)*100230 PRINT#1,STR$(NL+C)"
DATA";Q$;240 FOR I=0 TO (K-1)250 LET X$=HEX$(PEEK(DEB+C+I))260 IF LEN X$=1 THEN PRINT#1,"0";270 PRINT#1,X$;280 NEXT I290 PRINT#1,Q$295 REM creation
ligne fin de fichier300 PRINT#1,31999"DATA"Q$"FIN"Q$310 CLOSE #1320 ENDLorsque le module ne depasse pas 100 ou 200 octets il est ainsi pratiquede
le charger en memoire à partir d un programme basic qui lit lavaleur des octets en DATA et les charge ensuite en memoire à partird'une adresse
connue._____________________________________________________________________
MAKEHEX un grand classique
Des MO et des TO...
Modérateur : Politburo
Répondre
1 message
• Page 1 sur 1
Aller à
- MySilicium
- ↳ Présentation
- ↳ Général
- ↳ A quoi t'as joué hier ?
- ↳ Sondages
- ↳ Silicium in English
- ↳ Bistrot
- Transactions et Acquisitions
- ↳ Frimer - brag - dernières acquisitions
- ↳ Je donne, j'échange, j'achète et je vends [réservé aux membres actifs]
- ↳ Donne, Echange, Achète et Vends [réservé aux visiteurs de passage]
- Recherches diverses
- ↳ Recherche informations / technique / etc ... [pas de petites annonces ici]
- ↳ Liens en vrac
- ↳ Problèmes techniques
- ↳ Bibliographie
- ↳ Résolution de problèmes
- ↳ Bidouilles
- ↳ Transferts PC
- Systèmes 8bits, 16bits, 32bits, plein de bits, ...
- ↳ Tous les ordinateurs
- ↳ Toutes les consoles
- ↳ Tous les Pockets
- ↳ Amstrad
- ↳ Apple 8 et 16 bits
- ↳ Apple Lisa
- ↳ Apple Macintosh
- ↳ Atari 8bits
- ↳ Atari ST et compagnie
- ↳ Commodore 8bits
- ↳ Commodore Amiga
- ↳ Exelvision
- ↳ Goupil / Tandy
- ↳ Matra-Hachette Alice
- ↳ MSX
- ↳ NeXT
- ↳ Oric
- ↳ PDA
- ↳ Philips VG-5000
- ↳ Sinclair
- ↳ Squale (Apollo7)
- ↳ Tavernier
- ↳ Texas Instruments
- ↳ Thomson
- ↳ Victor & Hector
- ↳ Les Single Board Computers (SBC)
- ↳ Robots
- ↳ Bornes d'Arcade
- ↳ Flippers
- ↳ Emulateurs
- Divers
- ↳ Livres / Bouquins
- ↳ Idées
- ↳ Atari 800XLHD
- ↳ Ti99/4 light et Ti99/4 console
- Manifestations
- ↳ Vieumikro
- ↳ Infoticaires
- ↳ Pocketicaires
- ↳ Apple 2 France Festival
- ↳ Cyberbecue
- ↳ Retrogaming L'Union
- ↳ Autres manifestations
- Projets
- ↳ Silicium
- ↳ Les Guides : souscriptions
- ↳ Stock
- ↳ Partenariat avec la chaîne Youtube Lord Paddle