How to do machine ROM dumps?

페이지 1/2
| 2

By ali6x944

Master (196)

ali6x944의 아바타

25-04-2019, 14:49

hi again dear MSX community,
I was wondering how to make ROM dumps for MSX computers with non-standard ROM chips i.e chips that can not be identified as belonging to a certain family 27xxx or 39xxx or something of that nature.
this would later be used to document internal software and character ROMs as well as exploring the possibility of future hacking of such ROMs.
will be interested to hear your input.

Login or 등록 to post comments

By SkalTura

Master (192)

SkalTura의 아바타

29-04-2019, 15:04

Some Eeprom programmers can auto-detect the type of ROM.
Or just select the largest type and see how much "blank" space is in the file.

By NYYRIKKI

Enlighted (5362)

NYYRIKKI의 아바타

29-04-2019, 18:19

Usually users just save the data to disk or cassette without thinking about the physical connectivity. There are lot of tools to select for saving the ROMs from your machine. All emulators need such ROM dumps, so ie. fMSX emulator has delivered a tool to dump your own ROMs already from early 90's. Other options include ie. getrom.bin or saverom.com

Most of the MSX ROMs have been disassembled and documented already, but naturally it is good idea to compare the dumped ROMs with known ROMs database... Every now and then someone finds some previously unknown version although it becomes more rare each year.

By ali6x944

Master (196)

ali6x944의 아바타

29-04-2019, 20:18

SkalTura wrote:

Some Eeprom programmers can auto-detect the type of ROM.
Or just select the largest type and see how much "blank" space is in the file.

That is the first thing I did, using my trusty MiniPro TL866CS, I tested both for a blank check and tried to read it, and the programmer couldn't identify it nor read anything of it.
@NYYRIKKI it was easy to find Japanese or western machines with ROM dumps, sadly Arabic machines are pretty neglected and obscure in this regard...
also, I can't use the floppy drive because this specific machine is faulty with no video out and no floppy, an AX-350II am working on, however, I may do that on my AX-370.
so far, I have a ROM dump of AX-200M that has the standard AM27256 in a .HEX file format that I will be uploading tonight hopefully Smile

By ali6x944

Master (196)

ali6x944의 아바타

30-04-2019, 19:59

it is a rather complex situation TBH...
Eek!

By RetroTechie

Paragon (1563)

RetroTechie의 아바타

01-05-2019, 06:25

Imho the only reliable way to dump ROMs is remove them from a machine, place in a dedicated reader (such as an EPROM programmer, purpose-built cartridge etc), and read a chip that way. After verifying pinout through markings on the chip & connections in the machine. Practically all system ROMs I have, have been saved that way. Exactly BECAUSE

NYYRIKKI wrote:

Usually users just save the data to disk or cassette without thinking about the physical connectivity.

Take eg. a cartridge that has ROM in 4000-BFFFh area. Read out using software, program into a 27C256, put in place of the ROM in that cartridge, and you have roughly 50% chance it won't work (depending on what's connected to the highest address line on the ROM socket). FDC registers masking a few bytes from a diskROM, etc. Just a few examples.

Only exception is when you know how a ROM is connected in the machine, know its type & pinout, know that nothing interferes when read out through software, know how the data maps to what you'd program into a (flash?) EPROM, and format contents of that file accordingly. In the 27C256 example above, that could mean swapping both halves of the file's contents. If a cartridge builder had fun & swapped data or address lines around, that would be a 'fun' job software wise. LOL!

Note that getting this right is mostly relevant for hardware modders. For emulation purposes, it's more a matter of what's convenient. But it's not difficult for an emulator to use ROM data as layed out in actual chips. So why do any other way & create unnecessary confusion?

SkalTura wrote:

Some Eeprom programmers can auto-detect the type of ROM.

That's because some EPROMs have a self-ID function, and some programmer hardware supports that. But afaik this is limited to programmable devices: some EPROMs, and most (all?) flash EPROMs. Not mask-programmed ROMs (data hardwired in the silicon). And for none self-IDing chips, perhaps some programmer software can read bigger & smaller (EP)ROMs in the exact same way, and then apply some heuristics to figure out what size device was read.

By ali6x944

Master (196)

ali6x944의 아바타

02-05-2019, 11:49

@RetroTechie, do mask ROMs follow a certain standard when it comes to the pinout? if not, is it possible to extract any useful info from them? if so, how?
in the machine -I am working on- I would assume that the ROM is of the masked variant, because of both the writing and the fact that the chip has no UV window.

By ali6x944

Master (196)

ali6x944의 아바타

05-05-2019, 12:37

how can you identify the pinout of mask ROMs?

By sd_snatcher

Prophet (3047)

sd_snatcher의 아바타

05-05-2019, 15:32

ali6x944 wrote:

how can you identify the pinout of mask ROMs?

Tip: Use this cross reference guide.

By RetroTechie

Paragon (1563)

RetroTechie의 아바타

06-05-2019, 07:55

Pinout can ALWAYS be determined by checking how an IC is connected in a machine. And for an (EP)ROM that's easy. You just have power/ground, a number of address lines, data lines (8 in our case), and 1 or 2 chip selects. Don't need a datasheet for that.

Just use your Google-fu. Smile2 In case of doubt, just post IC markings here. Or better yet: a photo of those markings. First letters before type number usually indicate manufacturer (D.. = Nec, MB.. = Fujitsu, etc). Number in a type often indicates # of Kbits or Mbits.

ali6x944 wrote:

in the machine -I am working on- I would assume that the ROM is of the masked variant, because of both the writing and the fact that the chip has no UV window.

If it's mass-produced then mask ROM is what you'll find. Exceptions are usually firmware unique to some model. Note that programmable parts without UV window exist (Flash -duh-, EEPROM, or One-Time-Programmable EPROM). But use of such parts in home computers is very rare afaik. Even then you could still identify that through its markings.

Btw - no schematic available for that machine of yours?

By ali6x944

Master (196)

ali6x944의 아바타

06-05-2019, 18:08

@ sd_snatcher, thanks for the link it is going to be helpful.
@ RetroTechie, sadly no schematic is available for the AX-350II, however, I have found similar service manuals for other Yamaha models to be specific the CX-5MII and it's variants, unfortunately, the CX-5MII is closer to the AX-200M than it is to the AX-350II.
this is a photo of the marking:

https://drive.google.com/file/d/1mZOlJpnGYvCmnyXcEbCInpZqzPP...
and the markings are:
8748KY; in the small font, probably a date code.
XD025C0-052; in large font, probably the ROM rev number similar to what I saw on the AX-200M ROM.

페이지 1/2
| 2