x
This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
HPC:Factor Logo 
 
Latest Forum Activity

rom dumping on MIPS hpc's - now works - maybe can get USB host on nec 890? etc!!

1 2 3
cmonex Page Icon Posted 2007-08-18 1:46 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
time for my next new thread

i wrote a 20 lines dumper (before someone asks, no, not in ASM ) which now can dump the rom of my MIPS ce 2.11/hpc pro and CE3/hpc2000 hpc's.
will work on ce.net too. (at least i tested with ARM version)

the great thing: that the dumper uses physical addresses, so no need to know CE's virtual memory map... though, later, after using this dumper i realized this virtual map doesn't vary as much as with the ARM's. so maybe isn't such a big advantage for MIPS (unlike for ARM), still good.

the bad thing: 1) the reset vector is never the ROM start address. 2) even the official(? as in MIPS documents at mips.com) virtual/physical memory map is switched on some cpu's.

so, the start address for the ROM is not fixed... it is cpu dependent.

so, when i get some GUI up and running for it (to select start address, size, and destination file) i will properly release this dumper. right now it's just an exe that runs when you click on it and everything hard coded.

until then here is an attachment of the versions for the different cpu's, in this post.

usage:
d2_1e000000.exe: for 186Mhz vr4122 (JVC MP-C33), 200Mhz vr4131 (Sigmarion 2) and 129Mhz tx3922 (intermec 6651) cpu's. probably more Mhz versions are compatible than listed here.
d2_be000000.exe: for 168Mhz vr4121 (NEC 790, 880, Sigmarion 1)
d2_b8000000.exe: for 131Mhz vr4121 (NEC 770, 800)
d2_BFC00000.exe: usually not needed...for any vr4121 (or anything that uses this startup address), to dump reset vector to determine ROM start address (some MIPS ASM required to understand the dumped code). this will crash vr4122/vr4131 because it is not a valid physical address there - for example i had to remove the battery on my intermec to make it alive again!

the first two exe's will dump 32MB on to a \Storage Card (for non english devices use the card rename hack at http://www.hpcfactor.com/support/cesd/h/0011.asp ). file name dump10.nb.
the third exe will dump 24MB.
last one 32K into RAM.

oh, and 0x0 is RAM start on vr4121-168mhz/vr4122/vr4131/tx3922 (dumper not included now)

note: i will probably try SH3 dumping soon.

another bad thing: this won't work on CE 1.0 or CE 2.0. i could try using virtual addresses to dump, but then i would still need SetKMode, and that is not available for them. i hear jlime uses a hack (that is similar to SetKMode) to run the jlime bootloader on CE 2.0 - will look into that!

i've dumped eight devices so far: nec 770, nec 790, nec 800, nec 880, sig1, sig2, intermec 6651, jvc mp-c33
i've been unable to dump my vodafone messagecam (casio mc20b). it just throws fatal error at me in every version of the dumper... would be so cool to have that ce 2.12 rom..


WHAT IS THIS USEFUL FOR?

well, for one, i'll try extracting the hpc pro NEC 880 USB drivers from these dumped roms and try recreating them. btw, right now, i only have a hpc2000 nec 880, and a hpc pro nec 800 - if someone thinks the nec 800 usb drivers won't be good enough then please help me dump a hpc pro nec 880 rom. (or i'll find the original rom for mine)

or, i can try extracting hpc pro explorer.exe and removing the backup battery resources, so if a built in backup battery dies, the hpc pro device will not become too annoying to use!

or get neat apps from intermec, jvc, etc....... for one, jvc has neat usb drivers in ROM and cool apps in both intermec and JVC roms.

and so on

only two obstacles remain now: 1) i need to extract the compressed parts better in the dumped exes/dlls, because ce 2.11's compression seems to slightly differ from ce3's. 2) learn MIPS reloc table.

after that no more problems, we can do anything!

Edited by cmonex 2007-08-18 1:57 AM




Attachments
----------------
Attachments mipsdumpers.zip (4KB - 27 downloads)
 Top of the page
sophisticatedleaf Page Icon Posted 2007-08-18 2:19 AM
#
Avatar image of sophisticatedleaf
H/PC Elder

Posts:
2,294
Location:
Sunny California
Status:
What?
 Top of the page
CE Geek Page Icon Posted 2007-08-18 3:00 AM
#
Avatar image of CE Geek
Global Moderator
H/PC Oracle

Posts:
12,667
Location:
Southern California
Status:
There was some interesting discussion of this on the IRC channel #hpcfactor yesterday. cmonex spent a lot of time working on this - as much as I love my MIPS devices, I have to concede that MIPS ROM images are a major pain to deal with compared to those of ARM devices.

That said, I'm really excited about the possibility of bringing USB back to life in the NEC "890." If anyone can do it, cmonex can!
 Top of the page
cmonex Page Icon Posted 2007-08-18 4:32 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
well, yes, the pain was that i could not see why i was not able to access the standard reset vector on some mips devices while i could on others. took a while to find the tx3922 and the vr4131 datasheet.
...while on arm, you type in 0x0 and it dumps everything.

hope i can get this USB stuff working once. and more.

Edited by cmonex 2007-08-18 4:33 AM
 Top of the page
Geared2003 Page Icon Posted 2007-08-18 6:14 AM
#
Avatar image of Geared2003
H/PC Elite

Posts:
518
Location:
France
Status:
The Ce.net USB host drivers from Platform Builder do work on HPC2000: I installed these drivers on my Sigmarion 2 and they work very well. So i don't think it is necessary to extract them from ROM.
However, this new achievement is a very good news, because MIPS based CE devices are making a comeback. It might be interesting to extract some stuff from old Cassiopeia PPCs, like MS Reader for example.
Cmonex, how do extract the files from ROM after dumping it ? which PC tools do you use to extract the files from ROM ?

Edited by Geared2003 2007-08-18 6:15 AM
 Top of the page
cmonex Page Icon Posted 2007-08-18 7:30 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
hey, i wonder why you didnt make a post on that then before? can you post the drivers?

but, they won't fix the problem on the 890. it is unique: it lacks the low level usb drivers specific to its usb host hardware. that's because it's upgraded using a usb host less nec 790 rom.
so we need to get it out of the original 880 rom.
usbclik doesn't help either.

what cpu's do these casio's have? do you have access to a casio?

extracting: dumprom/dumpromx, but you need a different compression (cecompress) dll for ce 2.11 (i'm searching for one now). also, dumprom makes ARM PE headers, that also has to be fixed.

Edited by cmonex 2007-08-18 7:32 AM
 Top of the page
Geared2003 Page Icon Posted 2007-08-18 9:39 AM
#
Avatar image of Geared2003
H/PC Elite

Posts:
518
Location:
France
Status:
C:amie already mentioned these USB drivers 3 years ago:
http://www.hpcfactor.com/forums/forums/thread-view.asp?tid=89&start...

You can still download these drivers here:
http://www.softclub.jp/~zoro/ce/usb020522.lzh

To facilitate the process, I made a Reg File which can be imported with Tascal Regedit. Just copy the Dlls in Windows and import the Reg File: that's it.

I don't know why these drivers should not work on a 890, unless there is a difference in Coredll.dll ( which is very unlikely, because HPC2000 was a standard platform): so you should definitely try these drivers before trying anything else. Is the USB hardware detected with the 790 ROM ?

The Cassiopeia MIPS PPCs such as the E125 and EM500/505 were using a
NEC VR4122 processor (150 Mhz). And yes, I have got one at home: I can try to extract the ROM when I return home at the end of next week.



Attachments
----------------
Attachments EXPORTS.REG (0KB - 9 downloads)
 Top of the page
cmonex Page Icon Posted 2007-08-18 11:54 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
i already said why it wouldn't work (not a coredll issue). but to answer your question, repeating my previous post: no, the usb hardware is not detected, as said, the low level driver is missing.

i tried this driver just for the heck of it. of course did not work.

maybe this will show you that no high level usb drivers (such as the one you linked to) will fix it: if i insert some usb thing, for example my pendrive without installing any mass storage drivers, i get asked the driver name on my NEC 800 which has working low level drivers.
i do not get anything on the 890 (880 with hpc2000 790 rom chip) when inserting it. (yes, it worked with the original hpc pro rom on the same machine.)

as for dumping the casio: OK, try 1e000000 exe, but make a backup first.




p.s.: where did you get a usb host cable for the sig2?

Edited by cmonex 2007-08-18 12:01 PM
 Top of the page
Geared2003 Page Icon Posted 2007-08-18 3:34 PM
#
Avatar image of Geared2003
H/PC Elite

Posts:
518
Location:
France
Status:
The Sigmarion2 USB cable can be found at several US online shops : search for MC/PG-UK02. Wiredparadise.com seems to have it in stock.
 Top of the page
cmonex Page Icon Posted 2007-08-18 7:05 PM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
great, thanks.

BTW, if you manage to get a dump from the casio, then you can open it in a hexeditor and check if it has "ECEC" at offset 0x40. as long as it has CE3/ppc2000. if so then it is valid.

(if you have a ce 2.11/pspc casio, then you cannot validate it that way - a little more complicated)
 Top of the page
Geared2003 Page Icon Posted 2007-08-19 3:31 AM
#
Avatar image of Geared2003
H/PC Elite

Posts:
518
Location:
France
Status:
I'll check that as soon I can (probably saturday). If the ROM Dump is valid, I'll send it to you.
 Top of the page
takwu Page Icon Posted 2007-08-25 5:15 PM
#
Avatar image of takwu
H/PC Elder

Posts:
1,953
Location:
BC, Canada
Status:
I have a Casio E125 as well, running PPC2000. I can dump the ROM if Geared runs into problems. Hopefully this dump will give MIPS HPCs some useful PPC DLLs and EXEs
 Top of the page
cmonex Page Icon Posted 2007-08-26 12:42 AM
#
Avatar image of cmonex
H/PC Oracle

Posts:
16,175
Location:
Budapest, Hungary
Status:
neat, thanks

i wrote some cmd interface for the app since then to practice but i want to release a GUI one.. but, if someone wants a not hard coded version (can accept start address, size, file path) to experiment i can send it in email.
 Top of the page
takwu Page Icon Posted 2007-08-26 2:06 PM
#
Avatar image of takwu
H/PC Elder

Posts:
1,953
Location:
BC, Canada
Status:
hmm, how do you use GUI on CE without MFC? Is it the same as Win32? In any case, good luck cmonex
 Top of the page
Geared2003 Page Icon Posted 2007-08-26 2:59 PM
#
Avatar image of Geared2003
H/PC Elite

Posts:
518
Location:
France
Status:
Quote
takwu - 2007-08-24 11:15 PM

I have a Casio E125 as well, running PPC2000. I can dump the ROM if Geared runs into problems. Hopefully this dump will give MIPS HPCs some useful PPC DLLs and EXEs


If you can dump the E125 ROM, please do it: my ROM is in French, so I think an English version would be better for most people anyway...
 Top of the page
1 2 3
Jump to forum:
Seconds to generate: 0.234 - Cached queries : 72 - Executed queries : 11