[TO8] CPU et Fréquence

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Bernouilli92
Messages : 1254
Inscription : 24 déc. 2021 09:46
Localisation : Région parisienne

Re: [TO8] Remplacement CPU

Message par Bernouilli92 »

Merci pour vos réponses.
Effectivement je n'avais pas fait attention aux paramètres de PULS. Il y a PC dans les arguments. Donc il récupère le PC qui avait été mis sur la pile avant l'appel à la fonction et donc retourne à l'appel de la fonction. Astucieux.
Par contre, si la fonction ADDR n'est pas définie sur le 6803, cela veut dire que potentiellement ce programme peut planter sur un 6809.
Dernière modification par Bernouilli92 le 07 janv. 2023 23:41, modifié 2 fois.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [TO8] Remplacement CPU

Message par __sam__ »

Comme tout les Motorola, le 6809 est BIG-endian.

Oui le programme plante sur 6809 (enfin fait un truc pas défini). Tester exactement la présence d'un 6309, en particulier s'il est en mode "emulation 6809" n'est pas facile. Les infos sont les docs techniques:
* Technical Reference
* Programmer's Reference
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
Fred_72
Messages : 1131
Inscription : 22 mai 2019 13:10
Localisation : Sarthe

Re: [TO8] Remplacement CPU

Message par Fred_72 »

Voici le bout de code que j'utilise sur mon SBC à base de 6809/6309 pour détecter le CPU en place. Il ne fait pas planter le 6809.
(Je ne sais plus où je l'ai récupéré).

Code : Tout sélectionner

                         detect6309
c196 7f 7c 48           	clr MODE_CPU
c199 34 06              	pshs d
c19b 10 43              	fdb $1043
c19d e1 61              	cmpb 1,s
c19f 26 03              	bne detect1
c1a1 7c 7c 48           	inc MODE_CPU
                         detect1
c1a4 35 06              	puls d
c1a6 39                 	rts

; MODE_CPU=0 pour 6809 et 1 pour 6309
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [TO8] Remplacement CPU

Message par Daniel »

Le principe est simple : il faut trouver une instruction du 6309 inexistante sur 6809. Même si elle n'existe pas elle fait quelque chose. Il n'y a pratiquement aucune chance qu'elle fasse pareil que le 6309. Mais, pour que le programme ne plante pas, il faut que l'instruction ait la même longueur (le même nombre d'octets) avec les deux processeurs.

Avec $103089 ADR A,B je n'ai pas fait le bon choix : le 6809 exécute l'instruction non documentée $1030, il ne sait pas qu'il faut lire l'octet suivant, la suite du programme est décalée d'un octet et plante.

Avec $1043 COMD (inexistante sur 6809) la longueur de l'instruction est la même avec les deux processeurs. Le 6809 ne fait rien mais ne plante pas.
Daniel
L'obstacle augmente mon ardeur.
CrossmanBx
Messages : 142
Inscription : 25 oct. 2022 13:54

Re: [TO8] Remplacement CPU

Message par CrossmanBx »

Dans ma quête de trouver un 6309e non fake, j'avais passé plusieurs commandes sur différents revendeurs.
Un de ceux-ci vient de m'envoyer un HD63B09RP.
Je ne trouve aucune infos viables sur le net sur une version RP.
Pensez-vous que c'est un proc à horloge externe ?
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [TO8] Remplacement CPU

Message par Daniel »

Les 63B09 ont une fréquence maxi de 2 MHz, contre 3 MHz pour les 63C09.
Il n'y a pas d'horloge externe s'il n'y a pas de de E après 09. Je crois, sans en être absolument sûr, que R=compatible RoHS et P=boîtier plastique.
Les HD63B09ERP ont une horloge externe, la compatibilite RoHS et un boîtier plastique.
Daniel
L'obstacle augmente mon ardeur.
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: [TO8] Remplacement CPU

Message par hlide »

J'ai deux HD63C09ECP qui m'ont été donné avec d'autres "goodies" il y a certainement plus d'un an maintenant. En consultant le datasheet, je ne vois nul part que c'est du jeu d'instructions 6309. Le datasheet ne me décrit que du 6809. Du coup, je me demande ce qu'il en est en réalité.
IMG_20230111_212005_half.jpg
IMG_20230111_212005_half.jpg (855.98 Kio) Consulté 1535 fois
CrossmanBx
Messages : 142
Inscription : 25 oct. 2022 13:54

Re: [TO8] Remplacement CPU

Message par CrossmanBx »

C'est bien ce qu'il me semblait, merci Daniel, je ne trouvais pas d'infos pour le "R". Je me coucherai moins bête.
Plus qu'à ouvrir un nouveau litige sur Ali.
Pour info, le seul 6309 correcte que j'ai pu trouvé était sur eBay, via un vendeur allemand. Un peu moins de dix euros fdp compris.
Bien plus cher que sur Ali, mais on comprend pourquoi du coup.
CrossmanBx
Messages : 142
Inscription : 25 oct. 2022 13:54

Re: [TO8] Remplacement CPU

Message par CrossmanBx »

Je pense que tu as des vrais 6309 hlide. Après il faudrait les monter et tester une des routines décrites précédemment pour s'en assurer.
Daniel
Messages : 17316
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [TO8] Remplacement CPU

Message par Daniel »

hlide a écrit : 11 janv. 2023 21:28 En consultant le datasheet, je ne vois nul part que c'est du jeu d'instructions 6309. Le datasheet ne me décrit que du 6809.
L'information sur le mode natif et les nouvelles instructions du 6309 n'a jamais été publiée par Hitachi.
Elle a été découverte en avril 1988 par un magazine japonais.

Un peu plus tard Hirotsugu Kakugawa a posté plus de details sur les nouvelles fonctions du 6309 dans le groupe usenet comp.sys.m6809.
https://groups.google.com/g/comp.sys.m6 ... xCoMu_gyA4
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [TO8] Remplacement CPU

Message par __sam__ »

Les docs (non officielles) sont données dans mon message plus haut: https://forum.system-cfg.com/viewtopic. ... 21#p221321
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
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [TO8] Remplacement CPU

Message par Sappas »

jb_jb_fr a écrit : 04 janv. 2023 09:49
Petite précision:
J'ai passé mon TO9+ avec un 6309 pour une bonne raison: J'ai un projet (qui n'aboutit pas :( ) dont le but est de faire un TO9+ une tête de réseau pour le Nanoréseau. Et je ne voyais pas comment un TO9+ de base pouvait le faire vu la fréquence du réseau (moitié du CPU).
Il fallait donc forcément un proc plus rapide. Et j'ai réussi grâce au 6309. Mais l'exercice n'est pas évident.
Mais l'utilisation du 6309 est réellement visible pour la gestion de l’écran, qui prends un temps CPU dingue.
Les transferts de bloc, ainsi que les registres supplémentaires sont quand même un confort dans la programmation

Jacques (le pote à Fool)

Salut Jacques, pour ton projet de tête de réseau à base de 6309...

Et une carte acceleratrice ? Genre 6809 à 4Mhz ? avec Cache et sa gestion ?
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [TO8] Remplacement CPU

Message par Sappas »

Non pas possible ?
__sam__
Messages : 7923
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [TO8] Remplacement CPU

Message par __sam__ »

Les cartes accélératrice n'ont pas trop de sens sur le 6809 car la mémoire est synchrone avec le CPU. La mémoire fonctionnant à 1mhz en opposition de phase avec ce dernier briderait un CPU de 4mhz à attendre les 3/4 du temps pour y avoir accès.

Et le cache ne servirait à rien dans la mesure ou la mémoire des Thomson n'a pas de mode "burst" pour remplir les lignes de caches (plusieurs octets) d'un coup, sans compter que les codes auto-modifiables n'étant pas si rares dans les logiciels s'exécutant en RAM (les jeux), il y aurait une dévalidation fréquente du cache. Peine perdue :(

Et upgrader la mémoire pour la faire marcher à 4Mhz? Ca n'est pas non plus de sens car son refresh est l'ensemble des gate-array (systèmes + affichage) pour tenir compte de cette fréquence plus élevée. Il faudrait aussi changer de technologie de ROM pour répondre à cette fréquence (et on fait souvent appel aux routines en ROM sur thomson.) Ca reviendrait à reconcevoir une machine entière qui n'aura plus grand chose à voir avec un TO9+.

Autant mettre un PC en tête de réseau à ce compte là.
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
Sappas
Messages : 669
Inscription : 02 oct. 2022 18:11

Re: [TO8] Remplacement CPU

Message par Sappas »

Merci de t'être lancé dans l'exercice périlleux de la réponse, mais l'Atari ST et son 68000, ont les mêmes arguments que tu as avancé, pour le ST y a même la mémoire vidéo dans la Ram !
Répondre