[Thomson] Editeur de programme BAS pour PC

Couvre tous les domaines de l'émulation ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Carl, Papy.G, fneck

DiscoSeb
Messages : 10
Inscription : 25 juil. 2021 16:05
Localisation : Yvelines

[Thomson] Editeur de programme BAS pour PC

Message par DiscoSeb »

Hello,

Je vous partage un développement réalisé il y a quelques années que j'ai réactualisé récemment : Il s'agit d'un éditeur de fichier BAS pour PC.
Je m'en sert pour explorer mes disquettes MO/TO transférées sur PC.

Image

La partie éditeur est très sommaire mais il permet entre autre de décoder en temps réel les fichiers BAS enregistrés nativement en binaire.

Fonctionnalités :

Code : Tout sélectionner

 - Ouverture et décodage des fichiers BAS binaires (via un dictionnaire éditable)
 - Prise en charge des programmes protégés (SAVE"xxxx",P) et ASCII
 - Ouverture des fichiers depuis un lecteur mais également depuis les images FD, SD, QDD (mini explorateur de fichier inclus)
 - Enregistrement (au format MO/TO binaire, ASCII ou protégé) sur lecteur ou image de disquette (FD, SD, QDD)
 - Opérations simples sur les fichiers de l'image de disquette (Dupliquer, Exporter, Supprimer, Renommer, Propriétés, Import brut)
 
Historique des versions :

Code : Tout sélectionner

Version 1.0.1-alpha :
Ajouts :
- Enregistrement des programmes (BAS et BAT) sur image de disquette (FD, SD, QDD)
- Import brut de fichiers sur la disquette (pas de conversion)
- Affichage de l'utilisation des blocs de la disquette
- Explorateur de disquette : Opérations simple sur les fichiers (Dupliquer, Exporter, Supprimer, Renommer, Propriétés)
- Explorateur de disquette : Affichage résumé d'utilisation de la disquette (Espace libre / utilisé, nombre de fichiers)
Corrections :
- Avertissement si le programme en cours d'édition est non sauvegardé lors du chargement d'un autre fichier
- Correction de bugs dans l'ouverture de fichier depuis disquette
- Refonte du processus de prise en charge des différents formats de disquette

Version 1.0.0-alpha :
Fonctionnalités :
- Ouverture et décodage des fichiers BAS binaires (via un dictionnaire éditable)
- Prise en charge des programmes protégés (SAVE"xxxx",P) et ASCII
- Ouverture des fichiers depuis un lecteur mais également depuis les images FD, QDD et SD (mini explorateur de fichier inclus)
- Enregistrement uniquement sur lecteur PC au format MO/TO (binaire), ASCII ou protégé
C'est une version alpha, donc soyez indulgeant et surtout n'enregistrez pas sur des images de disquette dont vous n'avez pas une sauvegarde au chaud.

TODO List :

Code : Tout sélectionner

- Lecture des fichiers PAR
- Export fichiers PAR en RTF
- Lecture des fichiers MAP
- Export des images MAP en BMP, PNG, JPG
- Import d'images (BMP, PNG, JPG à l'aide de l'outil de https://github.com/rodolphe74/teojpg)
- Permettre le copier/coller de fichiers sur la disquette (interne à l'application uniquement)
- Zapette de disquettes contenues dans d'un dossier
- Permettre de basculer de format (BAS, ASCII, PAR, MAP, etc)
- Editeur hexa
- Lecture des fichiers "datas" de fiches et dossiers
- Double clic sur le nom de la disquette (explorateur de disquette), copie le chemin complet de la disquette ou menu (copier le chemin complet, copier le nom de la disquette, ouvrir le dossier de la disquette)
- Explorateur de disquette : ajouter clic droits "Copier le nom du fichier"
- Exporter tous les fichiers de la disquette
- Importer plusieurs fichiers
- Lecture des fichiers ABC (caractor)
- Lecture et écriture des fichiers PAL (palette)
- Lecture & écriture des fichiers ASM (assembleur)
- Zapette de blocs de la disquette pour voir le contenu
Pas d'installation à prévoir ni de droits particulier (application portable)
(Le fichier est garanti sans virus néanmoins certains antivirus un peu capricieux peuvent faire remonter un faux positif à cause du langage Autoit utilisé...)

Checksum md5 de la version 1.0.1-alpha :

Code : Tout sélectionner

7bfaa7636904488777870b4d2dd9c958 *motobas.exe
N'hésitez pas à me faire vos retours sur cette discussion.
Pièces jointes
motobas-1.0.1-alpha.zip
(740.06 Kio) Téléchargé 21 fois
Dernière modification par DiscoSeb le 29 oct. 2021 15:23, modifié 3 fois.
Seb
jvernet
Messages : 2132
Inscription : 12 avr. 2007 10:59
Localisation : France 69

Re: [Thomson] Editeur de programme BAS pour PC

Message par jvernet »

Ca marche bien chez moi. La fonction (pas simple je suppose) pour réenregistrer dans l'image disque sera la prochaine chose à implanter.

Attention quand on selectionne un atre fichier dans l'image disque et que le fichier dans l'éditeur est modifié, ça ne prévient pas et on perd les modifs.
Daniel
Messages : 14417
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] Editeur de programme BAS pour PC

Message par Daniel »

Quelques suggestions pour la suite, en plus de celle de jvernet :

- Choix du BASIC utilisé : L'outil semble prévu pour le BASIC 512. Il faudrait pouvoir le paramétrer pour utiliser le BASIC 128 MO6 ou TO7/70, ou le BASIC 1.0 MO ou TO, avec ou sans le DOS.

- Avec l'option "Détection des inconnus" il y a (semble-t-il) l'affichage d'un message en cas d'erreur, mais la fenêtre est refermée tellement vite qu'il est impossible de le lire. Il faudrait laisser la fenêtre ouverte avec un bouton pour la refermer.

- Cette détection d'erreur de syntaxe pourrait être appliquée non seulement au chargement d'un programme, mais aussi au programme en cours d'édition.
Daniel
L'obstacle augmente mon ardeur.
DiscoSeb
Messages : 10
Inscription : 25 juil. 2021 16:05
Localisation : Yvelines

Re: [Thomson] Editeur de programme BAS pour PC

Message par DiscoSeb »

L'enregistrement dans l'image de disque est également dans ma todo list.

@jvernet : tu as raison, je vais afficher un message en cas de modification du programme en cours.

@Daniel :
La fenêtre qui s'affiche rapidement au chargement d'un fichier est uniquement une barre de progression (on la voit mieux sur les gros programmes avec le mode de détection activé).
Une fois le chargement complété, toutes les inconnues s'affichent dans la fenêtre "Liste des inconnues détectées lors du dernier chargement" du menu "Debug".
On y retrouve d'ailleurs le dictionnaire utilisé qui est il me semble commun à tous les MO/TO : Si tu as des exemples de fichier pour lesquels le programme ne semble pas complet, je suis preneur.

Merci pour vos premiers retours
Seb
Daniel
Messages : 14417
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] Editeur de programme BAS pour PC

Message par Daniel »

DiscoSeb a écrit : 05 sept. 2021 18:57 Si tu as des exemples de fichier pour lesquels le programme ne semble pas complet, je suis preneur.
Le dictionnaire semble être celui du BASIC 512. Il contient des tokens BASIC qui n'existent pas dans les autres versions. On peut donc créer des programmes qui ne pourront pas être exécutés en BASIC 128 ou en BASIC 1.0. Seuls l'émulateur ou la vraie machine peuvent garantir la validité du programme, d'autant plus qu'il y a de subtiles différences entre les TO et les MO pour une même version du BASIC.

L'éditeur pour PC est donc un moyen pratique pour écrire un programme, mais ne permet pas de vérifier la syntaxe.
Daniel
L'obstacle augmente mon ardeur.
DiscoSeb
Messages : 10
Inscription : 25 juil. 2021 16:05
Localisation : Yvelines

Re: [Thomson] Editeur de programme BAS pour PC

Message par DiscoSeb »

Je viens de mettre en ligne la version 1.0.1-alpha avec des corrections de nouvelles fonctionnalités.
Tous les détails sont dans le premier post.
Seb
Bentoc
Messages : 87
Inscription : 14 sept. 2019 13:35
Localisation : Var - France

Re: [Thomson] Editeur de programme BAS pour PC

Message par Bentoc »

Super initiative !

Il y a qq temps j'avais fait l'exercice de faire le mapping des codes du Basic 512 ici : https://www.bento8.fr/?p=54
(pour mon convertisseur "maison").

Le fait de pouvoir charger un fd et naviguer dans les fichiers et voir les tables d'allocation c'est top !

Quelques idées (qui dépassent le périmètre du basic ...) :
- le support des fichiers source .ASM
- permettre d'avoir une fenêtre de navigation alternative dans laquelle on clique sur les blocs au lieu de cliquer sur les fichiers. Dans le cas de disquettes corrompues (tables d'allocation hs), ça permettrait de lire le contenu .bas ou .asm encore présent sur disquette. On pourrait aussi récupérer des données de fichiers effacées.
DiscoSeb
Messages : 10
Inscription : 25 juil. 2021 16:05
Localisation : Yvelines

Re: [Thomson] Editeur de programme BAS pour PC

Message par DiscoSeb »

Merci pour ton retour :)

Je ne connaissait pas ton convertisseur, je vais y jeter un oeil.
J'ajoute tes points dans ma todo list.
Seb
Répondre