ROM Dumping

Anyone used Propellor to dump ROMs from vintage chips. Microvision etc that use the TMS1000 chip. Thanks
Charles Harris


  • Peter JakackiPeter Jakacki Posts: 9,205
    edited 2020-01-12 - 09:31:09
    Hooking up a ROM to I/O and reading it is very easy but bear in mind that the Prop is 3.3V and ROMs are normally 5V. While the ROM inputs are designed to be TTL compatible which means they accept anything above 2V as a logic high, you will need current limit resistors on the data bus as the output levels are 5V.

    If you connect the ROM data bus via 3k3 resistors to P0..P7 and up to 16-bits of address to P8..P23 for instance, and tie the OE low, then here is 2 lines of Tachyon code that will copy 32k of ROM into the upper part of the EEPROM (as a demo). With another line or two you could save it into a file on an SD card instead.
    : ROM@ ( addr — data )		8<< $FF_FF00 OURCLR OUTSET P@ $FF AND ;
    : CLONE						$8000 FOR I ROM@ I $8000 + EC! NEXT ;

    with another line you can make the ROM a memory device that the various DUMP utilities can handle
    : ROM   DMP: ROM@ ROM@ ROM@ ;

    Then when you dump memory you can specify the ROM instead like this:
    0 $400 ROM DUMP
    Normally it's hub memory that gets dumped and that is also the default after every dump operation.

    The first ROM@ is for bytes, and I just dummied up the 16-bit and 32-bit versions as you probably wouldn't use them although they are very simple to create from ROM@ itself.
  • As Peter posted, it's relatively simple to do. I dumped the contents of many EPROM's from instruments when I got my first P1 board. The only thing I did different from what Peter suggested was to use a pair of binary counters to save on I/O pins. IIRC they were 74HC393's.
  • Hi Guys

    Thanks for informative messages. Appreciated.
    Who has done a actual dump from a TMS1000 ? these have a masked program accessible via Test Mode apparently. What result do you get. Copy or part copy ok. Anyone in New Zealand done this.

  • AFAIA the TMS1000 "ROM" is internal masked ROM and the only way to "read" it is to strip the chip back to the die and do it the long hard bit by bit visual way. So your question is specifically about the TMS1000 although external "ROMs" are very easy to read.
Sign In or Register to comment.