Page 1 sur 2

[Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 05 sept. 2021 17:38
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

Edit 18/06/2023 : Nouvelle version v1.2.1-alpha avec prise en charge entête Nanoreseau.
Edit 19/06/2023 : Mise à jour de la PJ du post.

Fonctionnalités :

Code : Tout sélectionner

 - Ouverture et décodage des fichiers BAS binaires (via un dictionnaire de token éditable Basic 1, Basic 128/512, Nanoreseau)
 - Prise en charge des programmes protégés et ASCII
 - Ouverture des fichiers depuis un dossier mais également depuis les images FD, SD, QDD, K7, IMG, SAP et les archives ZIP (mini explorateur de fichier inclus)
 - Lecture des fichiers : Paragraphe, Fiches et Dossier, Palette, Images MAP, Polices ABC, ASM
 - Enregistrement (au format MO/TO binaire, ASCII ou protégé) sur lecteur ou image de disquette (FD, SD, QDD)
 - Export de certains formats : PAR en RTF, MAP en BMP/PNG/JPG, Fiches et dossiers en XLS
 - Opérations simples sur les disquettes (Création disquette, formater, ajouter/supprimer/renommer/exporter des lecteurs, exporter la disquette ou les fichiers)
 - Opérations simples sur les fichiers des disquettes (Dupliquer, Exporter, Supprimer, Renommer, Propriétés, Import brut, Copier/coller)
 - Explorateur de blocs de la disquette (lecture, export/import, nettoyage, échange de blocs, réservation de blocs) 
 - Prise en charge des fichiers Nanoréseau (création, modification, suppression entête Nanoréseau)
 
Historique des versions :

Code : Tout sélectionner

Version 1.2.1-alpha :
Ajouts :
- Prise en charge fichiers Nanoreseau (création, modification, suppression entête Nanoréseau)

Version 1.2.0-alpha :
Ajouts :
- Changement de nom du logiciel pour "MO/TO Exploitation de fichiers"
- Ajout du menu "?"
- Rationalisation du code interne
- Gestion du secteur de boot (DOS MO/TO, Bootsector 'FX_JavaDevBlog')
- Gestion du fichier de chargement/lancement automatique de CHG (LANCEUR.CHG)

Version 1.1.0-alpha :
Ajouts :
- Prise en charge support au format K7, SAP, IMG (lecture seule)
- Zapette de disquettes contenues dans d'un dossier (avec lecture dans les archives ZIP)
- Lecture / export des fichiers Paragraphe, Fiches et Dossier, Palette, Images, Polices ABC, ASM
- Copier/coller de fichiers sur la disquette (interne à l'application uniquement)
- Création d'images de disquette de plusieurs type/format avec ou sans DOS
- Gestion des lecteurs avec opérations simples (ajouter, supprimer, formater, exporter)
- Explorateur de blocs avec opérations simples (exporter, nettoyer, échanger, réserver)
- Prise en charge des tokens Basic 1 & 128/512 (bascule manuelle)
- Visualiseur HEXA pour les fichiers binaires

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

- Export fichiers PAR en RTF
- 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 de basculer de format (BAS, ASCII, PAR, MAP, etc)
- Editeur hexa
- Importer plusieurs fichiers
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.2.1-alpha :

Code : Tout sélectionner

e263aa27fa2dc695cc1dbc38b3e01590 *motobas.exe
N'hésitez pas à me faire vos retours sur cette discussion.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 05 sept. 2021 17:57
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.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 05 sept. 2021 18:35
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.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 05 sept. 2021 18:57
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

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 05 sept. 2021 19:53
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.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 16 oct. 2021 14:38
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.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 22 oct. 2021 17:59
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.

Re: [Thomson] Editeur de programme BAS pour PC

Publié : 29 oct. 2021 15:10
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.

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 28 déc. 2022 19:35
par DiscoSeb
Bonjour à tous,

Je viens de sortir une nouvelle version du programme (v1.2.0-alpha) avec pleins de nouvelles fonctionnalités + un changement du nom du programme pour MO/TO Exploitation de fichiers.

Le lien est sur le premier post.
Merci de me faire vos retours.

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 18 juin 2023 17:13
par DiscoSeb
Bonjour,

Une nouvelle version (version 1.2.1-alpha) prenant en charge les fichiers avec entête Nanoreseau (Ajout/modification/suppression de l'entête)
Le lien de téléchargement est sur le premier post.

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 18 juin 2023 19:47
par Iapetus
Great project :!:

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 18 juin 2023 20:33
par FabriceFABS
DiscoSeb a écrit : 18 juin 2023 17:13 Bonjour,

Une nouvelle version (version 1.2.1-alpha) prenant en charge les fichiers avec entête Nanoreseau (Ajout/modification/suppression de l'entête)
Le lien de téléchargement est sur le premier post.
Bonjour Seb,
Je ne connaissais pas ton appli, bravo et merci !
D'ailleurs, j'allais m'atteler à une moulinette en Python pour rajouter l'entête NR sur des fichiers ne l'ayant pas mais ton update arrive à point !
Capture du 2023-06-18 20-29-50.png
Capture du 2023-06-18 20-29-50.png (25.17 Kio) Consulté 2483 fois
Je vais regarder tout ça, en tous cas ça a l'air de bien marcher sous Linux avec Wine.
Capture du 2023-06-18 20-30-00.png
Capture du 2023-06-18 20-30-00.png (18.43 Kio) Consulté 2483 fois

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 19 juin 2023 08:20
par DiscoSeb
Merci pour le retour sous Linux/Wine :D
Attention, je viens de m'apercevoir que je n'avais pas modifié la pièce jointe du premier message :? : du coup tu n'as pas récupéré la dernière version avec la prise en charge des entêtes NR.
La pièce jointe est à présent à jour avec la bonne version.

Désolé pour le désagrément.

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 19 juin 2023 12:58
par FabriceFABS
T'inkiet'. C'est fait, encore merci !
Capture du 2023-06-19 12-34-45.png
Capture du 2023-06-19 12-34-45.png (25.28 Kio) Consulté 2406 fois
PS : On ne peut pas ouvrir auto.bat, est-ce normal ?
Il ne se passe rien au double-clic.
Capture du 2023-06-19 12-34-45.png
Capture du 2023-06-19 12-34-45.png (513.2 Kio) Consulté 2404 fois
Merci encore pour ce superbe utilitaire, A+

Re: [Thomson] MO/TO Exploitation de fichiers (ex Editeur de programme BAS pour PC)

Publié : 19 juin 2023 13:05
par Gege34
Merci pour la mise a jour avec le support des fichiers nanoréseau.