[Minitel] dé-programmation d'obsolescence et reprogrammation

Si vous n'avez pas trouvé de catégorie correspondante ci-dessus, regroupe les discussions plus générales et à l'occasion peut aussi abriter un fil sur les vielles consoles de jeux.

Modérateurs : Papy.G, fneck, Carl

Répondre
Avatar du membre
Totor le Butor
Messages : 1265
Enregistré le : 07 sept. 2011 16:14
Localisation : Paris

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Totor le Butor » 14 janv. 2015 21:39

En haut à gauche tu as une ram statique en basse consommation 5101 L = 256 X 4 , 200µA pour la rétention d'info. Il y a la présence d'une petite diode à coté, c'est typique d'une ram alimentée en 5v et sauvegardée par un accu ou une pile, la diode empêchant alors la pile d'alimenter le reste de la carte, ce qui est moins orthodoxe c'est que la pile est à l'autre bout de la carte.

En haut à droite, ram statique 2114 = 1K X 4 donc 2 Ko en tout.
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 14 janv. 2015 22:01

6502man> Je ne vois pas ce que ça peut être d'autre, il faut bien un programme pour faire fonctionner le Microcontrôleur, et je ne vois pas d'autre composants Rom sur cette carte.
Dommage que le VDP ne soit pas aussi celui de la Videopac, ou au moins compatible (le µC est de même type). Pour le Hack, il est très faisable, mais la machine est bien moins puissante sur tous les points (fréquences d'horloge, mémoire max adressable, possibilités de la vidéo et du µC...).

ENMM> Nul besoin de détériorer une machine pour cela, à moins que ces modèles, à l'instar des Minitel5, soient particulièrement durs à ouvrir sans dommages.
Je ne sais pas si je l'ai déjà dit, mais pour le mode dialogue, suffit de brancher deux minitels sur une multiprise ou une rallonge, sur les prises femelles, la prise mâle restant dans le vide (dans deux prises d'une maison, ça marche aussi), sur un des deux, taper Fnct-M R, le F s'affiche en minuscule, puis prendre la ligne, sur l'autre, prendre la ligne aussi, et voilà! Tapez d'un côté, ça écrit de l'autre! Certains prétendent que ça passe par les lignes de box, je n'en serais pas étonné et aimerais tenter le truc sur longue distance un jour.

Totor> Bien vu, c'est le suffixe LC qui indique basse consommation? Je n'avais pas pensé à regarder les diodes, mais la résistance inverse de la pile suffit à encaisser les 5V entre ses bornes?
J'aimerais bien savoir quels réglages ou autres sont stockés dans cette mémoire, j'ai entendu parler du premier "cookie", sur certains minitels, un emplacement mémoire accessible à distance, mais invisible à l'utilisateur, avait été interdit sur les modèles suivants, peut-être est-ce cela, et alors, même éteindre la machine ne permettait pas de mettre à zéro cette mémoire? :shock:

En haut à droite, ce sont les chips, organisés en 1Kx16, le 9340/41 ayant un bus de données 16 bits
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
6502man
Messages : 8512
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par 6502man » 14 janv. 2015 22:49

Oui ca semble le plus plausible pour l'EPROM...

Pour la vidéo c'est quel processeur sur ce modèle ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
Totor le Butor
Messages : 1265
Enregistré le : 07 sept. 2011 16:14
Localisation : Paris

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Totor le Butor » 14 janv. 2015 23:13

C'est rigolo, cette histoire de données cachées dans le minitel, ça me rappelle effectivement quelque chose ...

Pour la diode et la pile, c'est simple il suffit de mettre une diode en série dans le + de la pile et de raccorder l’autre bout de la diode à la patte d'alim de la ram, quand la ram est alimentée en 5 V la diode empêche le retour du 5v vers la pile. Si on remplace la pile par un accu il suffit de mettre une résistance en // sur la diode et hop tu recharges l'accu avec le courant choisi suivant la valeur de la résistance :D .
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 14 janv. 2015 23:29

6502man> Pour la vidéo, c'est le VDP 9340 et 9341, ensemble supportant en gros les modes 40x24+1 et 40x20+1 identiques au 9345, mais avec seulement le jeu de caractère standard et mosaïques, pas de mode graphique 4 couleurs par fenêtre, maximum de 2KO de Ram adressable, contre 16KO pour le 9345 (32KO pour le 9347 du Minitel2), possibilité d'adjoindre un générateur de caractère, et jeux personnalisable en Ram ou Rom externe. Pas de mode 80 colonnes.

Totor> Merci de l'explication, elle pourrait m'être fort utile à l'avenir. ;)
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
6502man
Messages : 8512
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par 6502man » 14 janv. 2015 23:42

Très limité mais c'est ca qui peut être rigolo, faire le maximum avec rien :lol:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
ENMM
Messages : 802
Enregistré le : 09 août 2011 17:13
Localisation : Pays de Loire . ANGERS
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par ENMM » 16 janv. 2015 00:03

Attention , les photos du Minitel sont celles d'un PROTOTYPE de développement . Désolé pour la confusion par rapport à un modèle standard de France Telecom.
Apple Computer collection : http//quartdepomme.fr

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 16 janv. 2015 01:06

Oui, mais ça ressemble à ce que l'on a pu voir sur certaines photos sur le Web, même dans les Minitels 1 du même constructeur (petit marron sans flèches au clavier), le VDP en deux composants, la pile (les piles), la Vram en 4 composants, et une SRam, on peut même voir qu'un emplacement est prévu probablement pour une Rom externe, mais impossible de savoir s'il s'agit d'un microcontrôleur MCS 48 ou 51 sur cette photo
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 27 févr. 2015 01:40

Voilà, je remonte ce topic, car j'ai écrit mon premier programme en code machine, mais ça ne fonctionne pas, le minitel affiche un écran blanc, marges noires, et des lignes dans la partie haute de l'écran, et ça buzze. :cry:
Le problème, c'est que j'ai "saisi" dans une Eprom ce programme à l'aide de cavaliers sur un breadboard, et déjà qu'il m'a fallu presque deux heures pour tout saisir, du coup, je n'ai pas vérifié la validité des saisies. :roll:
Comme j'ai le nez dedans, si ça se trouve, il y a une erreur énorme que je ne vois pas.
Il se pourrait que je me sois planté dans mes calculs d'adresses, notamment dans les sauts relatifs, aussi, comme j'ai écrit d'abord à la main sur papier, il se peut que des erreurs de copie se soient produites.
Ou alors, j'ai merdé la façon de gérer le 9345.

Code : Tout sélectionner

Projet Minitel:

00	80 3E	SJMP rel +3E	Saut inconditionnel relatif vers 40h pour laisser place aux vecteurs et plus si besoin.
…
40	75 81 80	Mov @81 #80	Déplacement de la pile hors ram adressable directement (80h)

Boucle affichage:

Init:
43	74 91	Mov a, #91			Mettre 91h en A (Nop)
45	90 80 28	Mov DPTR, #8028	Mettre addr en DPTR (R0 9345 +exec)
48	F0		MovX @DPTR, a		Envoyer A en adresse pointeur
49	74 95	Mov a, #95			Mettre 95h en A (VRM)
4B	F0		MovX @DPTR, a		Envoyer A en adresse pointeur
4C	E0		MovX a, @DPTR		Charger status 9345 en A
4D	30 E2 FD	JNB E2, rel -3		Vérifier état VS (bit E2 dans Acc) et saut ligne précédente

Envoi de valeurs au 9345:
50	74 12	Mov a, #36		mettre 36h en A
52	F8		Mov R0, a		mettre A en R0 (Nb boucles)
53	E8		Mov a, R0		charger R0 en A *début retour boucle*
54	04		Inc A			incrémenter A
55	11 CE	Acall 0CE		saut vers sous-routine
57	F5 82	Mov @82, a	Mettre A en DPL
59	E8		Mov a, R0		charger R0 en A
5A	11 CE	Acall 0CE		saut vers sous-routine
5C	F0		MovX @DPTR, a	Mov @DPTR
5D	18		Dec R0		Décrément R0
5E	D8 F3	DJNZ R0, Rel -13	Décrément et saut si différent de zéro en 53
60	80 C2	SJMP rel -62	Saut inconditionnel relatif vers 00

Sous-routine lookup table:
CE	83	MovC A,@A+PC
CF	22	Ret
D0	01	DB 00000001	KRF +inc +exec
D1	28	DB 00101000
D2	47	DB 01000111	C (G) -> R1
D3	21	DB 00100001
D4	01	DB 00000001	KRF +inc +exec
D5	28	DB 00101000
D6	2E	DB 00101110	C (.) -> R1
D7	21	DB 00100001
D8	01	DB 00000001	KRF +inc +exec
D9	28	DB 00101000
DA	79	DB 01111001	C (y) -> R1
DB	21	DB 00100001
DC	01	DB 00000001	KRF +inc +exec
DD	28	DB 00101000
DE	70	DB 01110000	C (p) -> R1
DF	21	DB 00100001
E0	01	DB 00000001	KRF +inc +exec
E1	28	DB 00101000
E2	61	DB 01100001	C (a) -> R1
E3	21	DB 00100001
E4	01	DB 00000001	KRF +Inc +exec
E5	28	DB 00101000
E6	50	DB 01010000	C (P) -> R1
E7	21	DB 00100001
E8	00	DB 00000000	B -> R2
E9	22	DB 00100010
EA	78	DB 01111000	A -> R3
EB	23	DB 00100011
EC	00	DB 00000000	X -> R7
ED	27	DB 00100111
EE	00	DB 00000000	Y -> R6
EF	26	DB 00100110
F0	87	DB 10000111	R1 -> ROR
F1	28	DB 00101000
F2	08	DB 00001000	Val ROR -> R1
F3	21	DB 00100001
F4	83	DB 10000011	R1 -> PAT
F5	28	DB 00101000
F6	17	DB 00010111	Val PAT -> R1
F7	21	DB 00100001
F8	82	DB 10000010	R1 -> MAT
F9	28	DB 00101000
FA	50	DB 01010000	Val MAT -> R1
FB	21	DB 00100001
FC	81	DB 10000001	R1 -> TGS
FD	28	DB 00101000
FE	10	DB 00010000	Val TGS -> R1
FF	21	DB 00100001
Edit: Ne vous affollez pas, j'ai peut-être juste un problème matériel, jai laissé /W flottant. :oops:
Si c'est pas ça, peut-être aussi que l'EEprom est trop lente, je l'ai piqué sur un système à base de 80196@16MHz, mais peut-être que les accès à ce chip ne se font pas à pleine vitesse.
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 27 févr. 2015 14:08

C'était un problème matériel, j'ai relié /W à VCC, et j'ai réussi à obtenir un affichage normal, mais avec le bip tout de même. Une seule fois, à présent, j'ai encore l'affichage bizarre (balayages en vrac). :?
Puis j'ai pas la rom d'origine sous la main pour tester.

Je me tâte à reporter tous les plots sur un breaboard, pour pouvoir ziguenailler et tester au multimètre au moins, mais comme il semble y avoir déjà des faux contacts l'EEprom direct dans le support tulipe. :roll:
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
6502man
Messages : 8512
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par 6502man » 06 mars 2015 23:04

Je suis de retour et je vois que tu t'amuse bien :D

Donc tu as réussi à obtenir un affichage correct ?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 07 mars 2015 23:19

Tout pourri, j'ai vérifié les timings, et normalement, ça devrait passer. :?
Est-ce que tu trouves que mon code est propre, ou y'a-t'il quelque chose qui coince?
Maintenant que j'ai mon support Plcc pour breadboard, je vais refaire la saisie directement dans le chip flash que je destinais au montage final, en essayant de ne pas faire d'erreurs cette fois!
Par contre, on a validé les communications V23 via lignes de Box. 8)
Et ma box est morte dans la nuit suivante. :mrgreen: Peut-être aucun rapport, ça faisait plus d'un mois que ça merdouillait grave. :roll:
Il y a des risques que je pourrisse le timing avec des bretelles allant du breadboard au support tulipe? :|
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Avatar du membre
6502man
Messages : 8512
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par 6502man » 08 mars 2015 00:26

Pour le code je vérifierais avec mon IDE mais la je ne l'ai pas avec moi ...

Pas cool pour la BOX :(

J'ai encore pas mal de messages de retard ....
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8512
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par 6502man » 08 mars 2015 23:31

Je viens de passer ton code dans mon assembleur en mode 8052 mais je n'obtiens pas les même code mnemo ???

et la ligne JNB j'ai supposé que tu teste le bit 7 de R0 donc cela devrait être :
JNB ACC.7, (saut)
30 E7 FC


la ligne 50 contient une erreur car en hexa tu la code : 74 12 alors que cela devrait être 74 36 ?

Voici le code hexa que j'ai obtenu avec mon assembleur MCU8051 IDE sous windows (dispo, si tu as besoin fait moi signe) :

Code : Tout sélectionner

80 3E                                          
                                               
                                               
                                               
75 51 80 74 91 90 80 28 F0 74 95 F0 E0 30 E7 FC
74 36 F8 E8 04 11 62 F5 52 E8 11 62 F0 18 D8 F3
80 FE 83 22 01 28 47 21 01 28 2E 21 01 28 79 21
01 28 70 21 01 28 61 21 01 28 50 21 00 22 78 23
00 27 00 26 87 28 08 21 83 28 17 21 82 28 50 21
81 28 10 21
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
Papy.G
Modérateur
Messages : 1651
Enregistré le : 10 juin 2014 13:40
Localisation : Nantes/La Roche sur Yon

Re: Minitel dé-programmation d'obsolescence et reprogrammation

Message par Papy.G » 10 mars 2015 00:43

Finalement, j'ai eu une box Crystal en remplacement de ma V5, du coup, le MBA ne met plus trois plombes à se connecter à la réactivation. Une semaine sans box, c'est pas insurmontable, et c'est moins chiant que quand la box se déconnecte intempestivement quand tu veux t'en servir.

Merci Phil, effectivement, mauvaise valeur mise dans la boucle en 50, et saut un octet trop court en 4D, par contre, pour le test JNB, c'est bien le bit 7 de l'accumulateur, qui contient alors l'octet diagnostique du 9345, que je veux tester, en adresse-bit E2.

En 43, c'est en 81 (SP) que je charge la valeur 80, tu as tapé 51 (Octet utilisateur).
En 57, c'est bien en 82 (DPL) que je charge la valeur de l'accumulateur, tu as tapé 52 (Octet utilisateur).
En 60, tu fais un saut court de seulement moins un octet (FE), au lieu de -62h, pour revenir au début du programme.

Je vais essayer de corriger dans l'EEprom, avant de tout me retaper dans les Flash, je vois ça demain.
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.

Répondre