Comment j'ai découvert Alice

C'est le lieu des discussions diverses et variées, mais toujours en rapport avec le thème général du forum et dans l'esprit de celui-ci. Contient des rubriques électroniques.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Message par Patrice »

Fabien, il y a déjà un site dédié !
Celui de Daniel, très bien fait et complet, pour les discutions, le code,les bidouilles, etc ... je pense que cela peut être traité au niveau du forum.

Si Daniel est d'accord, lorsque la bidouille, le code, la doc technique sont au point, on peut simplement lui demander de l'ajouter sur son site.
Dernière modification par Patrice le 21 janv. 2008 18:24, modifié 1 fois.
Avatar de l’utilisateur
fneck
Site Admin
Messages : 17531
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Message par fneck »

Oui tu as raison, je disais ça parce que le site de Daniel parle essentiellement d'émulation et pas du tout du hard. Je ne sais pas si Daniel souhaiterai l'étendre à ce niveau, mais on peut lui poser la question.
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Daniel
Messages : 17424
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Message par Daniel »

fneck a écrit :Je ne sais pas si Daniel souhaiterai l'étendre à ce niveau, mais on peut lui poser la question.
Je ne l'ai pas fait pour ne pas concurrencer Romuald, qui a été le précurseur. Mais son site est à l'abandon depuis plusieurs années, alors pourquoi pas. Mon gros problème est le manque de temps, ou plus exactement le grand nombre de projets menés en parallèle. A trop entreprendre plus rien n'avance (comme un certain programme dctoolbox que Patrice connait bien, l'émulation du son de l'Hector, et plein d'autres sujets en hibernation).
En conclusion je suis partant pour héberger des pages techniques sur le site alice32.free.fr , mais je n'aurais pas le temps de les composer moi-même.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
fneck
Site Admin
Messages : 17531
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Message par fneck »

Daniel a écrit :Je ne l'ai pas fait pour ne pas concurrencer Romuald, qui a été le précurseur. Mais son site est à l'abandon depuis plusieurs années
...et attaqué par les pubs de tous les cotés :? , je pense que tu peux te lancer, tu ne violeras pas de copyright :D

Et voila comment nait un projet de plus pour 2008.
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Message par Patrice »

Carl a écrit :reste plus qu'à trouver un ancien de la division micro chez Matra !
Peut être J.F. Gallet, qui a fait parti de l'équipe de développement Matra des Alice 32 et 90 . :?: :(
:idea:
Pour revenir aux astuces et petits utilitaires, dans les années 1987-88 j'avais également rédigé 2 petits programmes toujours en basic l'un analysait les programmes en L.M. (l'entête après chargement en RAM du programme à analyser ou début et exécussion si la fonction SKIPF était utilisée), cet utilitaire affichait les adresses en hexa de début et de fin de chargement ainsi que l'adresse d'exécussion du programme en L.M. à désassembler et l'autre sauvegardait sur K7 un programme en L.M. avec les paramètres trouvés à l'aide de l'utilitaire précédent.
La duplication des programmes était ainsi grandement facilité pour la petite communauté d'Aliciens. Les seules contraintes étaient la nécessité de chronométrer la durée de blanc entre les différents modules composants un programme commercial (intro basic, présentation prog, prog lui-même) . :wink:
Pour ces tâches, j'utilisais également l'astuce n°1 bien évidemment. 8)

Pour résumer, cette technique était artisanale bien sûr, mais le but n'était pas de dupliquer à outrance, simplement de faire vivre cette communauté sans trop investir en soft .
Dernière modification par Patrice le 24 mars 2011 22:23, modifié 2 fois.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Message par Patrice »

fneck a écrit :Et si j'ai bien compris, tu as entièrement décortiqué la machine, hard et soft c'est cela?
En ce qui concerne le soft de Alice 32 ou 90, j'ai plutôt pratiqué le désassemblage focalisé sur une fonction ou une autre suivant la nécessité du moment tout en conservant systématiquement mes constats et découvertes au travers de notes manuscrites bien évidemment.

Pour être efficace, il aurait fallu disposer d'un désassembleur logique et à l'époque je ne disposais pas malheureusement de cet outil.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Debug550 pour Alice 32 et 90

Message par Patrice »

Année 2004, je renoue le contact avec mes ordinateurs Alice, lors d'un rangement de mon labo, ils se trouvaient stockés dans un carton sur une étagère.

Je les redécouvre avec nostalgie, les 3 bêtes de course après leur 15 années de sommeil et me voilà rattrapé par le démon de l'expérimentation.

Pour cette nouvelle aventure, je décide de me doter d'outils un peu plus performants pour mener à bien mes analyses et ayant développé par le passé des extensions mémoires, je décide d'écrire des utilitaires en L.M. qui seront installés dans la zone $1000 à $2FFF, puisque cette dernière est transparente pour le système, cela ouvrait des perspectives très intéressantes pour l'analyse et la sauvegarde du patrimoine que je voulais réaliser.

Je commence par écrire des petits utilitaires (Dump, Désassembleur, Csavem, copieur zone mémoire, déplacement zone RAM, etc ...) au départ tous ces utilitaires étaient indépendants, puis j'ai décidé de les rassembler en un seul programme (Debug) pour faciliter mes investigations à l'aide d'un genre de couteau suisse.

Pour le télécharger, c'est ici : http://fneck.dyndns.org/ftp/patrice/Alice/debug550

Ce programme se charge à partir de l'adresse $1000 et occupe 8 Ko .

il permet de :

- Dumper une zone quelconque comprise entre $0000 et $FFFF (en hexa et ASCII 16 octets par ligne)
- Désassembler (désassembleur immédiat) une zone quelconque RAM/ROM
- il comporte un éditeur ASCII et Hexadécimal
- il comporte un analyseur des paramètres de chargement des fichiers Bas, Obj,Tableaux Numériques et Source Assembleur
- Un convertisseur décimal <--> hexadécimal
- Une sauvegarde type Csavem (zone RAM/ROM quelconque)
- Un effaceur de zone RAM avec un code hexa au choix de $00 à $FF
- Recopie d'une zone ROM/RAM en RAM
- Déplacement d'une zone RAM avec nettoyage automatique de l'ancienne zone RAM déplacée
- Un Moniteur adapté à partir de celui de J.F. Gallet
- Une fonction de Recherche d'une suite de codes ASCII ou Hexa en RAM/ROM
- Un Comparareur de 2 zones RAM/ROM de même longueur
- Un Regénérateur de programme Basic après un NEW
- un Regénérateur de programme source ASM après une commande & à la place d'une commande %
Plus quelques commandes de paramètrages imprimante, ou d'aide à la rédaction de notices à l'aide de Textra de moindre necéssitées.

Cet utilitaire apporte en ce qui concerne la rédaction de programmes L.M. une aide précieuse car l'analyseur permet de connaitre les adresses début et fin pour le fichier source, le fichier objet ,le fichier exécutable et l'adresse de fin de pile label ainsi que le volume des fichiers source et exécutable et donc une connaissance précise de l'occupation mémoire (cartographie), alors que d'origine c'est très compliqué d'obtenir ces infos.
Concernant la sauvegarde, le vidage mémoire et le désassemblage, du fait de la zone de chargement de Debug550 hors de la zone système conventionnelle cela permet un degré de liberté et des performances beaucoup plus importants que s'il était installé dans la zone normale.

Cet utilitaire fonction également avec l'émulateur "DCAlice" de Daniel et celui de J. Tamer "MY First Alice 32" .

Voilà en ce qui concerne Debug550, j'espère avoir répondu clairement à la curiosité normale de certains des posteurs du forum.
Dernière modification par Patrice le 04 févr. 2008 15:39, modifié 7 fois.
Avatar de l’utilisateur
fneck
Site Admin
Messages : 17531
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Message par fneck »

Patrice a écrit :C'est Alice 4 Ko qui est le clone du MC-10 et non l'inverse
Tiens, en relisant ton post à la gloire d'Alice, je suis tombé sur cette phrase.
Tu en es sûr? Je me suis souvent posé la question sans trouver de réponses précises, à savoir qui a développé Alice, Tandy, Matra ou les deux ensembles?

Tu as des infos la dessus.
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Message par Patrice »

En 1983 Tandy commercialise la version MC-10 US (donc 1 clavier QWERTY, un modulateur couleur UHF et 4 Ko de RAM avec possibilité d'extension à 16 Ko+4 Ko soit 20 Ko au total), il y avait également l'imprimante thermique 32 caratères par ligne.
Dans le cadre du programme informatique Français: Informatique pour tous, Matra signe un contrat avec Tandy pour fabriquer sous licence le MC-10, il existe d'ailleurs une version déclinée en péritel du MC-10 et clavier AZERTY, puis vient à la même époque la version MC-10 aux couleurs de Matra le Alice 4 Ko (donc clone du MC-10) qui était le précurseur des Alices 32 et 90 qui ont été commercialisés à partir de fin 1984 pour le Alice 32 et février 1985 pour le Alice 90.

Pour résumer, c'est une étude Tandy à l'origine, puis la société Matra est repartie d'une base de cette étude (Basic Microsoft version 1.0 (c) 1982 et µp6803 uniquement) pour développer une nouvelle version un peu plus performante (augmentation RAM 8 Ko base Alice 32 et 32 Ko Alice 90, processeur vidéo plus performant MC 6847 devient EF 9345, inscrustation vidéo pour Alice 90 et taux d'intégration plus élevé donc fiabilité hard plus élevée pour ces 2 derniers modèles, fréquence horloge interne µp passe de ~0.89 Mhz à 1 Mhz, décalage Zone RAM de $4000 à $3000 et clavier de meilleur facture pour Alice 90).
Côté Soft ajout de l'éditeur assembleur, éditeur de ligne Basic, nouvelle gestion du processeur EF 9345, embryon d'un prog de sauvegarde L.M.
Enfin le contenu (soft) Rom de Alice 32 et Alice 90 ainsi que les Rom elles-mêmes sont totalement identiques.

Pour l'imprimante, c'est juste la couleur qui passe de gris à rouge.

Voilà Fabien est-ce que cela répond à ta question ?
Dernière modification par Patrice le 24 mars 2011 22:24, modifié 1 fois.
Avatar de l’utilisateur
fneck
Site Admin
Messages : 17531
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Message par fneck »

Merci pour ces infos, c'est parfait. J'en saurai un peu plus ce soir 8)
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Avatar de l’utilisateur
6502man
Messages : 12329
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Message par 6502man »

Patrice a écrit :....l existe d'ailleurs une version déclinée en péritel du MC-10 et clavier AZERTY
J'ai les deux versions, je viens de me le rappeller en lisant ton poste :oops:

Un version US et un version FR, je me rappelle même plus les differences de clavier (j'ai les photos du FR, mais j'en avait pas fait a l'epoque pour l'US), a voir :?
Avatar de l’utilisateur
6502man
Messages : 12329
Inscription : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Debug550 pour Alice 32 et 90

Message par 6502man »

Patrice a écrit :Pour cette nouvelle aventure, je décide de me doter d'outils un peu plus performants pour mener à bien mes analyses et ayant développé par le passé des extensions mémoires.
Je suis curieux de savoir comment tu as fait pour obtenir l'acces à ces adresse memoire ?


Et y a t'il la possiblité de faire une cartouche avec un soft de plusieurs Ko (32,48,64) ?


Superbe travail, et le tout sur un vrai Alice, quel courage, chapo. :D
Avatar de l’utilisateur
fneck
Site Admin
Messages : 17531
Inscription : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Message par fneck »

Des photos du TRS-80 MC10 en version française et US
Fabien https://www.system-cfg.com
Les bonnes pratiques de l'utilisateur du forum viewtopic.php?f=14&t=3
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Re: Debug550 pour Alice 32 et 90

Message par Patrice »

6502man a écrit :Je suis curieux de savoir comment tu as fait pour obtenir l'acces à ces adresse memoire ?
Pour le Hard : Voir schémas sur le site de Daniel Coulom le dossier photos et schémas associés pour l'extension mémoire (décodage adresses mémoires), dans un avenir proche je vais joindre des schémas propres ainsi qu'un texte d'accompagnement sur le site DCalice pour cette extension.

Schéma de la modification de l'extension mémoire ici : http://fneck.dyndns.org/ftp/patrice/Alice/schema_mem

Pour le Soft : A l'aide de Debug550 (par exemple) Dump entre $0000 et $FFFF il y a comptage de $00 à $FF par page de 256 octets pour les zones accessibles pour implantation de RAM par exemple ensuite il n'y a plus qu'à réaliser le décodage d'adresses correspondantes associé à des RAM statiques.

Dump Alice ici : http://fneck.dyndns.org/ftp/patrice/Alice/dump


Et y a t'il la possiblité de faire une cartouche avec un soft de plusieurs Ko (32,48,64) ?

Oui pour 8 Ko de manière simple, j'ai d'ailleurs réalisé cette possibilité lorsque j'ai développé l'extension mémoire améliorée pour Alice 32 et 90.
J'utilise cette possibilité pour Debug550 que je stock dans une UVPROM type 2764 (8 Ko) et que je transfert dans la zone $1000 à $2FFF grâce à une petite routine de transfert par la pile système, en L.M. d'une douzaine d'instructions (24 octets) positionnée en fin de cette UVPROM de $AFE8 à $AFFF qui transfert et lance Debug550 à partir $1000.

Il suffit de taper en direct EXEC 45032 pour provoquer le transfert du programme et son exécution.

Pour les programmes Basic une autre petite routine à peine plus grande (33 instructions et 60 octets) réalise la même chose pour transfèrer le programme depuis l'UVPROM vers l'adresse $3346 ou autre ,le lancement s'effectuant par un classic RUN.
J'ai plusieurs programmes Basic stockés sur ce principe ,à noter que l'astuce du chargement fonctionne également dans cette configuration (cf [Wiki] Alice) !

La commande directe EXEC 44922 transfert le programme Basic à partir de l'adresse située en $0093 et $0094 et RUN pour l'exécution !
Dernière modification par Patrice le 04 févr. 2008 14:31, modifié 8 fois.
Avatar de l’utilisateur
Patrice
Messages : 1562
Inscription : 14 janv. 2008 10:42
Localisation : https://www.ville-saintes.fr/
Contact :

Message par Patrice »

fneck a écrit :Des photos du TRS-80 MC10 en version française et US
Bravo Fabien ! ces photos correspondent complètement à l'historique décrit ci-dessus .
La boucle est bouclée . 8)
Répondre