Dump de la ROM du PC-1470U

Vous ne possédez pas l'original ? Découvrez la machine via l'émulation !

Modérateur : Politburo

Répondre
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Dump de la ROM du PC-1470U

Message par remy » 30 oct. 2019 14:48

Bonjour à tous,

Notre ami Dom a rentré un PC-1470U et s'est gentiment dévoué pour participer à une oeuvre de conservation du patrimoine mondial des pockets en dumpant sa ROM.

Il ya tellement longtemps que je n'ai pas dumpé une ROM de pocket à base de SC61860 que je dois me replonger dans mes archives...

D'aprés la bible de pocket (http://pocket.free.fr/html/sharp/pc-1470u_e.html):
il a un seul emplacement mémoire et a peut être 136Kb de ROM. c'est un dérivé du PC-1460.

Bien la ROM se compose d'une première partie (8KB) située à l'intérieur du cpu et normalement inaccessible par de simple peek.
Il faut utiliser un programme en LM pour copier à partir d'une instruction non documentée le contenue de la ROM interne du CPU vers la RAM. Une fois cela effectué, il est simple de l'exporter.
La seconde partie de la ROM est également un peu complexe à dumper car ce modèle utilise du bank switch afin de faire rentrer plus de 32Kb de ROM.
Il faut donc également un prog en LM pour switcher les bank et copier en RAM. Le faire en BASIC n'est pas possible car l'interpréteur BASIC passe son temps à switcher les bank et on ne peut donc être maître de la bank sur laquelle on se trouve lors de l'appel à PEEK.

Une fois les données en RAM facilement accessibles par peek, il convient de décider du moyen d'exporter les données.
Je vois deux solutions:
  • Un CSAVEM de la plage mémoire vers un wav sur un pc connecté à la CE-124 (ou autre). On a déjà des outils de conversion de wav en binaire pour ce format.
  • Une utilisation de l'interface série , ce pocket en étant équipé.
Les tâches à effectuer sont donc:
  1. Ajouter une carte mémoire d'au moins 16Kb au pocket.
  2. Le programme en LM pour copier les 8KB de la ROM interne du CPU vers la RAM. (facile, je vais le retrouver)
  3. Le memory map de la bête. Je pense qu'il est proche du 1450, 1475 ou 1425. Sur tous ces modèle la ROM est en &4000 par plage de 16KB.
  4. L'adresse mémoire permettant de switcher les ROM. Sur le 1475 et 1360 c'est [&3400-&35FF], sur les 1403 et 1425 c'est [&3C00-&3DFF]. Il faut donc investiguer
  5. Le programme en LM pour switcher les ROM et les copier en RAM. Je vais aussi trouver cela.
  6. Décider du canal d'exportation.
Voilà :-)
Tu vois Dom, je crois que tu ne savais pas dans quoi tu mettais le doigt... y a un peu de boulot :-)

A Suivre.
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 30 oct. 2019 15:19

Rhâaaa, Rémy m'a tuer... :)

Blague à part, une CE-124, j'ai, et une 16kb, j'ai aussi.
Il faut juste que je vérifie que j'arrive à sauver dans les deux sens entre le 1470 et mon ordi.
Ensuite, ben, on suivra le tuto...

En fait, y'a pas que le doigt qui va morfler, j'vais finir manchot moi ! ;-)
Image

Avatar de l’utilisateur
pir2
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4576
Inscription : 31 oct. 2006 16:08
Localisation : 67310 Westhoffen
Contact :

Re: Dump de la ROM du PC-1470U

Message par pir2 » 30 oct. 2019 15:24

Merci de prendre le relais Dom :)

Ceci dit, maintenant que j'ai testé le câble série/USB sur mes E550 et U6000, je suis prêt à continuer ;)

Iléou le programme en LM :?:
Image
Image

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 30 oct. 2019 15:44

Merci Pierre de prendre soin de mon bras 🙂
Image

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: Dump de la ROM du PC-1470U

Message par remy » 30 oct. 2019 15:56

Alors pour la ROM CPU, j'ai retrouvé le prog sur un site japonais.

Entrer le prog en LM suivant:

Code : Tout sélectionner

e200: 00 03 10 e2 40 84 18 07
e208: 02 0f  34 02 ff 34 00 01
e210: 82 13 04 08 90 35 90 db
e218: 04 26 2f 0d 2f 12 37
e240: xx xx 00 e3 (xx xx is the start address of the transfer source)
e300 to F2FF (transfer destination area)
Pour la plage 0x0000-0x0fff:

Code : Tout sélectionner

POKE &E240,0,0
CALL &E200
CSAVEM &E300,&F2FF
Pour la plage 0x1000-0x1fff:

Code : Tout sélectionner

POKE &E241,0x10
CALL &E200
CSAVEM &E300,&F2FF
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: Dump de la ROM du PC-1470U

Message par remy » 30 oct. 2019 16:02

Pour la ROM externe, j'ai le programme très spécial de Simon (http://www.lehmayr.de/).
Il est fait pour le PC-1475 mais va peut-être fonctionner le le 1470U.
Il permet de dumper les bank en envoyant le résultat sur la sortie série en pilotant directement le port série pour obtenir une vitesse de 4800Bds. le Pocket est normalement limité à 1200bds.

Code : Tout sélectionner

10 POKE 63000,128,16,246,42,0,11,25,120,246,54,128,16,246,42,0,11,24,55,0
20 POKE 63019,0,0,0,0,0,0,0,0,0,0,0,16,246,21,87,218,17,20,87,132,219,218
30 POKE 63041,80,219,133,89,218,81,89,52,218,52,2,0,3,32,128,219,218,129,219
40 POKE 63060,91,218,91,120,247,31,102,255,56,12,133,89,218,132,89,0,1,134
50 POKE 63078,53,44,21,16,246,19,87,134,219,134,219,16,52,0,82,5,36,219,16
60 POKE 63097,52,0,35,82,134,89,3,4,120,247,50,52,120,246,195,218,34,116,1
70 POKE 63116,50,218,120,247,3,134,89,52,120,246,195,218,34,116,1,50,218,120
80 POKE 63134,247,3,4,133,89,218,81,89,52,218,52,16,246,23,87,218,17,22,87
90 POKE 63153,128,219,218,129,219,91,218,91,120,247,31,102,255,56,3,45,126
100 POKE 63170,55,34,116,2,48,89,3,15,131,70,34,116,2,48,218,219,34,116,2,48
110 POKE 63190,89,3,10,218,131,199,35,42,2,67,102,255,56,14,34,116,2,48,89
120 POKE 63209,3,48,131,68,218,55,44,18,34,116,2,48,89,3,65,131,68,218,3,10
130 POKE 63229,131,218,69,218,55,55,18,94,96,0,112,2,95,0,8,78,21,96,0,210
140 POKE 63249,58,3,112,2,95,65,78,21,41,12,96,0,95,55,218,129,219,199,58,11
150 POKE 63269,40,7,128,218,219,199,58,3,35,55,2,255,55,194,195,56,5,209,210
160 POKE 63288,45,6,55
La doc du programme:

Code : Tout sélectionner

Prepare pocket computer and connect serial cable.
OPEN
LOAD
Big PC:  load the code as basic installer directly into the pocket computer.
RUN
POKE 62995, Bank, LB_Startaddress, HB_Startaddr, LB_Endaddr, HB_Endaddr
; Remember: Bank is the ROM bank number 0-7 in area 0x4000-0x8000
; Endaddress has to be 0x8000, but it will send only up to 0x7fff. You can change that if you like.
CALL 63000 to run it.

The programm will immediately send the serial hex code with 4800 baud 1N8 config.
This is 4times faster than the built-in serial interface can do! The hex code ensures proper transmission.

Packed into this archive you find the extracted ROM of PC1475 as hex and binary.

Info about making this project:
It took merely 1,5-2 hours to create the project and dump the rom!

Greetz from Germany,
Simon
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 30 oct. 2019 22:45

Euh Rémy, je vais passer pour une tanche mais comment je le rentre, le code LM ?
(c'est pas gagné avec moi....)
Image

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: Dump de la ROM du PC-1470U

Message par remy » 30 oct. 2019 22:58

Dom a écrit :
30 oct. 2019 22:45
Euh Rémy, je vais passer pour une tanche mais comment je le rentre, le code LM ?
(c'est pas gagné avec moi....)

Code : Tout sélectionner

POKE &e200, &00 ,&03,&10,&e2,&40,&84,&18,&07
et ainsi de suite
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 30 oct. 2019 23:04

Je suis trop con. Si si....
Bon, par contre, j'espère que tu n'es pas trop pressé...
Image

Avatar de l’utilisateur
bernouilli92
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4588
Inscription : 21 nov. 2012 14:03
Localisation : Ile de France

Re: Dump de la ROM du PC-1470U

Message par bernouilli92 » 30 oct. 2019 23:18

L’idéal sera d’avoir l’interface série pour transférer le programme depuis un PC.
HP, Casio, Sharp, Psion, quelques TI et divers autres

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 31 oct. 2019 12:01

bernouilli92 a écrit :
30 oct. 2019 23:18
L’idéal sera d’avoir l’interface série pour transférer le programme depuis un PC.
Malheureusement, je n'ai pas ça en stock :(
Je vais devoir passer par la CE-124...

Remy, petite question : comment je règle le SET MEM ?
En effet, j'ai 4 choix possibles :
- "1" : la mémoire utilisée est uniquement celle de la carte ram
- "2" : la mémoire utilisée est uniquement celle du 1470
- "B" : fusion de la mémoire du 1470 et de la carte en un seul espace
- "D" : la mémoire du 1470 pour les données et celle de la carte pour les programmes
Image

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: Dump de la ROM du PC-1470U

Message par remy » 31 oct. 2019 17:13

Le prog LM pour dumper la ROM interne du cpu n'utilise pas la carte mémoire.
Mais il va falloir réfléchir pour les autres ROM.
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 05 nov. 2019 17:48

Rémy, je ne t'ai pas oublié !
J'ai dumpé la rom cpu (enfin, je crois :-)).
Je l'ai exportée via la CE-124 en format wav.
Maintenant, j'en fait quoi ?
J'ai essayé de la convertir en quelque chose de lisible avec les pockets tools, mais je n'arrive à rien...
Une petite aide serait la bienvenue ;-)
Image

remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2038
Inscription : 13 mars 2006 16:39
Localisation : Issy
Contact :

Re: Dump de la ROM du PC-1470U

Message par remy » 05 nov. 2019 19:16

Mets le wav en partage quelque part. Je vais le convertir en binaire.

maintenant tu vas souffrir pour la rom principale.
Soit PIR2 utilise son cable et le prog pour le 1475, soit tu t'y colle via la CE-124....

voici la demarche:

Code : Tout sélectionner

Bank ROM (0x4000-0x7fff)
 
e200 : 02 00 10 34 00 52 00 03
e208 : 10 e2 40 84 18 07 02 0f
e210: 34 02 or 34 00 01 82 13
e218 : 04 08 90 35 90 db 04 26
e220: 2f 0d 2f 12 02 00 10 34
e228: 00 52 37
e240: xx xx 00 e3 (xx xx est l'adr de départ de la zone source à transférer)

e300 to f2ff est la zone cible
 
e201 est le numéro de bank a dumper
 
donc pour dumper la bank n

Code : Tout sélectionner

POKE &E201,n

POKE &E240,00,&40
CALL &E200
CSAVEM &E300,&F2FF

POKE &E240,00,&50
CALL &E200
CSAVEM &E300,&F2FF

POKE &E240,00,&60
CALL &E200
CSAVEM &E300,&F2FF

POKE &E240,00,&70
CALL &E200
CSAVEM &E300,&F2FF

et on répète tout cela pour les banques 0 à 7
32 fichiers wav au total !!!!!!

J'espère ne pas avoir fait d'erreurs :-)
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store

Avatar de l’utilisateur
Dom
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 817
Inscription : 26 oct. 2018 18:45
Localisation : Ile-de-France

Re: Dump de la ROM du PC-1470U

Message par Dom » 05 nov. 2019 19:29

Voilà le lien du wav pour la rom cpu : ici
Image

Répondre

Revenir vers « Emulateurs »