Schema du TO7/70

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Schema du TO7/70

Message par Daniel »

Zebulon a écrit : 07 déc. 2022 14:14 Ça semblait très prometteur mais je n'ai pas retrouvé le fil.
https://forum.system-cfg.com/viewtopic.php?f=1&t=12199
Daniel
L'obstacle augmente mon ardeur.
Zebulon
Messages : 2788
Inscription : 02 nov. 2020 14:03

Re: Schema du TO7/70

Message par Zebulon »

Merci Daniel. Mince l'auteur ne s'est pas reconnecté depuis février dernier. :(
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: Schema du TO7/70

Message par Fool-DupleX »

On ne peut pas changer l'adresse du JMP, par contre on peut remplacer la routine à cette adresse
Oui, en touillant la ROM donc. Mais sur toutes les autres machines, sauf TO7, on peut le faire en RAM, sans avoir besoin de touiller la ROM. J'imagine que les gars de Thomson se sont rendus compte que c'était pas une très bonne idée de ROMer les vecteurs.
Windless
Messages : 19
Inscription : 05 déc. 2022 19:48

Re: Schema du TO7/70

Message par Windless »

Ça semblait très prometteur mais je n'ai pas retrouvé le fil.
J'avais aussi imaginé cette solution, mais presser le bouton est délicat et le connecteur a l'intérieur est utilisable sans trop de risque.
Sauf que sur Thomson, les bons logiciels n'utilisent pas la ROM de toute manière (trop lente)
Je vois ça, je viens de perdre dix minutes a essayer de comprendre comment mettre un point d'arret et trouver les fonctions du moniteur en rom sur DCMOTO... pour finir par penser avoir compris que les PSET et LINE du basic n'utilisent pas les fonctions du moniteur ! (en tout cas, ca a marché direct quand j'ai essayé avec LOAD :) )
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: Schema du TO7/70

Message par Fool-DupleX »

Si, si, le basic utilise les routines du moniteur. Toutes. Et même celles de l'extra-moniteur s'il est disponible.
Windless
Messages : 19
Inscription : 05 déc. 2022 19:48

Re: Schema du TO7/70

Message par Windless »

ok, je veux bien un peu d'aide alors :)

Je suis parti de "la face cachée du TO7" pour avoir les adresses du moniteur. Page 133, j'ai trouvé PLOTXY : $E80F.

Dans DCMOTO (TO7/70 avec une cartouche Basic 128 1.0), outil -> mise au point, en E80F je trouve un JMP EEC6 et crée donc eux points d'arrêt :

Code : Tout sélectionner

Type : Exec
Bank : no
# : 00
Address : E80F et EEC6
Je clique sur "jusqu'au point d'arrêt"
Puis en basic :

Code : Tout sélectionner

PSET (0,0)

Le point s'affiche normalement, il ne se passe rien.
Si je change l'adresse du breakpoint par E803 (PUTCH d'après la même doc), quand j'appuie sur une touche j'ai bien un arrêt. LOADING en basic marche aussi avec le breakpoint sur K7CONT.
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: Schema du TO7/70

Message par Fool-DupleX »

Bon, déjà, tu consultes une doc sur le TO7, alors que ta machine est un TO7-70. Ca n'a rien à voir ou pas grand chose. Fort heureusement pour toi, les adresses de PLOTXY sont les mêmes sur les deux machines.

Je viens de faire un test avec la dernière version de DCMOTO, ça fonctionne avec le BASIC 1.0, mais pas avec le BASIC 128. Je ne m'en explique pas la raison et je me tourne vers Daniel. A moins que le BASIC 128 ait ses propres routines d'affichage, mais ça me surprend (-> extra-moniteur ?)

Edit : pour autant que je puisse en juger après quelques tests, on dirait bien que le BASIC 128 a sa propre routine d'affichage de point. A vérifier toutefois.

Edit 2 : le BASIC 128 sur TO7-70 incorpore l'extra-moniteur et ce dernier possède sa propre routine de point. La ROM système n'est donc pas appelée par le BASIC 128. Je suis donc surpris (à moitié, puisque j'avais suspecté l'extra-moniteur d'être la cause).
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Schema du TO7/70

Message par __sam__ »

Fool-DupleX a écrit : 08 déc. 2022 14:12 mais pas avec le BASIC 128. Je ne m'en explique pas la raison
Pourquoi ? C'est très simple: le basic 128 passe par l'extramon et pas le moniteur. Du coup tu peux faire des PSET en dehors de l'écran, bénéficier du clipping, n'affecter que certains bitplans, les modes OR les modes AND, etc, bref de toute l'api graphique avancée de l'extramon. J'avais découvert ca sur mon TO9 à l'époque en essayant de comprendre pourquoi PSET(-1,-1) ne plantait pas toujours suivant le basic.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
nouvelhermes
Messages : 401
Inscription : 22 juil. 2020 20:56

Re: Schema du TO7/70

Message par nouvelhermes »

Je m'excuse, je me trompe peut être, je ne suis pas un champion du désassemblage Thomson,

Mais je pense que un outil comme IDA PRO, est bien plus pratique qu'un désassemblage manuel, je m'en suis servi pour désassembler Oméga Planète Invisible, Vol Solo, et Las Vegas partie 3 (désassemblages très partiels en fait)

Le gros inconvénient est qu'il ne reconnait pas les instructions type CALL PUTC et et transforme en SWI, FCB $02 (ce qui oui pose un gros soucis).

Un deuxième inconvénient est pour les machines TO, la gestion des banques est malaisée.

En fait il faudrait écrire un module particulier pour Thomson, quelqu'un a-t-il déjà essayé ?
Windless
Messages : 19
Inscription : 05 déc. 2022 19:48

Re: Schema du TO7/70

Message par Windless »

La version gratuite d'ida ne gerait pas le 6809 la derniere fois que j'ai regardé, si ? Ghidra par contre doit le gérer et les plugin y sont plus faciles a faire que dans ida, mais de toute facon banques et analyse statique, ce n'est pas fait pour aller ensemble !
Fool-DupleX
Messages : 2284
Inscription : 06 avr. 2009 12:07

Re: Schema du TO7/70

Message par Fool-DupleX »

IDA Pro version payante fonctionne bien pour ce genre de tâche. Les banques ne sont pas vraiment un souci, on peut préfixer les instructions et utiliser la notion de segment d'IDA. Pour le SWI, je décode à la main, ça va très bien, mais vue la simplicité de l'instruction, on peut rajouter un décodage spécifique pour une macro, comme IDA le fait déjà pour les NOPs qui suivent un JMP sur deux octets sur le x86.

Ghidra propose le 6809, mais le plug-in est (ou était, la dernière fois que j'ai testé) complètement faux. Celui qui l'a écrit a pris modèle sur le 6800, pensant que c'est la même famille, mais pas du tout, le jeu d'instruction est différent.

A ma connaissance, si ça n'a pas bougé depuis, un vrai beau plug-in Ghidra serait bienvenu.
__yann__
Messages : 19
Inscription : 05 févr. 2022 16:05

Re: Schema du TO7/70

Message par __yann__ »

Fool-DupleX a écrit : 11 déc. 2022 10:10 Ghidra propose le 6809, mais le plug-in est (ou était, la dernière fois que j'ai testé) complètement faux. Celui qui l'a écrit a pris modèle sur le 6800, pensant que c'est la même famille, mais pas du tout, le jeu d'instruction est différent.

A ma connaissance, si ça n'a pas bougé depuis, un vrai beau plug-in Ghidra serait bienvenu.
J'utilise aussi Ghidra pour décompiler (IDA trop cher). Pratique mais le modèle de processeur est en effet inexact. Je me suis penché sur la description du processeur pour rectifier le tir mais la syntaxe est plutôt incompréhensible. Il faudrait que je prenne le temps ...
Répondre