[Minitel] dé-programmation d'obsolescence et reprogrammation
Modérateurs : Papy.G, fneck, Carl
- Totor le Butor
- Messages : 2237
- Inscription : 07 sept. 2011 16:14
- Localisation : Paris - Mezels
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
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 .
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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?
En haut à droite, ce sont les chips, organisés en 1Kx16, le 9340/41 ayant un bus de données 16 bits
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?
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.
Demandez-en plus, ou faites-le vous-même.
Re: Minitel dé-programmation d'obsolescence et reprogrammation
Oui ca semble le plus plausible pour l'EPROM...
Pour la vidéo c'est quel processeur sur ce modèle ?
Pour la vidéo c'est quel processeur sur ce modèle ?
- Totor le Butor
- Messages : 2237
- Inscription : 07 sept. 2011 16:14
- Localisation : Paris - Mezels
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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 .
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 .
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
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.
Demandez-en plus, ou faites-le vous-même.
Re: Minitel dé-programmation d'obsolescence et reprogrammation
Très limité mais c'est ca qui peut être rigolo, faire le maximum avec rien
- ENMM
- Messages : 1002
- Inscription : 09 août 2011 17:13
- Localisation : Pays de Loire . ANGERS
- Contact :
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
Demandez-en plus, ou faites-le vous-même.
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
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.
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.
Edit: Ne vous affollez pas, j'ai peut-être juste un problème matériel, jai laissé /W flottant.
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.
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.
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
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.
Demandez-en plus, ou faites-le vous-même.
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
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.
Soyez exigeants, ne vous contentez pas de ce que l'on vous vend.
Demandez-en plus, ou faites-le vous-même.
Demandez-en plus, ou faites-le vous-même.
Re: Minitel dé-programmation d'obsolescence et reprogrammation
Je suis de retour et je vois que tu t'amuse bien
Donc tu as réussi à obtenir un affichage correct ?
Donc tu as réussi à obtenir un affichage correct ?
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
Et ma box est morte dans la nuit suivante. Peut-être aucun rapport, ça faisait plus d'un mois que ça merdouillait grave.
Il y a des risques que je pourrisse le timing avec des bretelles allant du breadboard au support tulipe?
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.
Et ma box est morte dans la nuit suivante. Peut-être aucun rapport, ça faisait plus d'un mois que ça merdouillait grave.
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.
Demandez-en plus, ou faites-le vous-même.
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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 ....
Pas cool pour la BOX
J'ai encore pas mal de messages de retard ....
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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) :
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
- Papy.G
- Modérateur
- Messages : 3054
- Inscription : 10 juin 2014 13:40
- Localisation : Haute-Garonne/Gers
Re: Minitel dé-programmation d'obsolescence et reprogrammation
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.
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.
Demandez-en plus, ou faites-le vous-même.