Old News - 2009
[ 2011 | 2010 | 2009 | 2008 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 ]

Old News (8/16)

Summer came and went


Wow, time flies when you are having fun working hard.

I've developed a universal device reader/programmer for 8-bit memory chips. It has the following features:

  • Read mask ROMs, OTPROMs, EPROMs, EEPROMs
  • Read PROMs (mainly the larger variety)
  • Test SRAM
  • Read, write, erase flash memory
  • Read, write, erase, and test NVRAM
  • Control non-standard memory
  • Device sizes of 24, 28, 32, 36, 40 pins supported, +5V only
  • High speed USB interface
Here's a picture of the unit. On the solder side, the wire link in the upper right is to correct a mistake and the center two are to route two signals which I ran out of room for. There are also components underneath the two DIP sockets on both sides of the board. The holes are for standoffs so you can mount the reader in an enclosure. LEDs are provided to indicate power (red), a fault condition such when the power distribution switch overheats or is shorted (yellow), and when USB enumeration has completed (green).

The device reader assumes the target device has D0-D7 and A0-A13 in the standard location (some exceptions can be made) and uses a IDT7132 2Kx8 dual-port RAM to route eleven different inputs (RD,WR,CS,A14-A21) to eight pins of the device. This makes it simple to do things like swap A16 and /OE, merge signals such as /CE and /OE, and generally change the high-order address bus layout which is what differs the most between memory chips.

As a RAM is used to configure the pin assignments of the target device, there are no physical changes to make such as adjusting jumpers, switches, or family modules. Device descriptions are loaded from a human-readable configuration file so you can add new parts and comment how they operate. As always I'll make the source code available so devices with special requirements can be added.

Here's a list of devices which I have personally tested so far:

EPROM   27C128, 27C256, 27C512
        27C010, 27C020, 27C040, 27C080
        27C100, 27C1000, 27C2001, 27C4000
ROM     MB834000, MB838000, MB831001, MB832011
SRAM    HM62256, MB8464, M5M51008, AS6C4008
NVRAM   DS1230, DS1250, DS1265, DS1270
Flash   ST29EE010, Am29F010, Am29F040

I am quite pleased with the Fujitsu MB831001/MB832011 working as the inspiration for this project came from a need to get the MegaTech version of Great Football dumped for The Dumping Union. These chips have integrated ROM banking hardware with dedicated registers and manage their own address decoding. Previous dumps for MAME were made with my SMS Cartridge Reader, but for dealing with ROMs directly (rather than cartridges) a different solution was needed.

I used a Texas Instruments TPS2054 four-channel power distribution switch intended for USB hubs to route power to several pins. Unlike the ST890C I used in the PAL Device Reader, the TPS2054 doesn't need a resistor to limit the current flow and was better behaved during power-up. I also used a Microchip MCP130 reset generator after having problems with the Maxim DS1233. Both of these parts have functioned ideally and had very good documentation. I appreciate TI maintaining forums where people can get advice from their engineers, and for offering free samples of their newer chips.

The PAL device reader is still under construction, and while I've made some progress analyzing feedback use in some parts, it still does not work correctly with every case. I'm definitely on the right path now, but it will just take more time and more effort. All I can ask for is continued patience. :)

Old News (2/16)

Spring cleaning

Due to the constant stream of e-mail I received about broken links and webpage/file requests, I have finally fixed some areas:

If there was something you were looking for that isn't listed, remind me and I will upload it. Thank you to everyone who asked about doing this. :)

If you do not want to build the PAL reader, there is a very low-cost alternative for dumping combinatorial (not registered) PALs. You can construct an adapter that connects a 20-pin PAL to a 32-pin socket. By reading the PAL in a device programmer as a 27C020 EPROM you will get a 256K dump which the PAL analysis software can interpret.

Please note that while this has worked in some cases, because it relies on the operation of your device programmer the results cannot be guaranteed to be accurate. One person told me about several good dumps that were made with the adapter and just a few PALs gave weird results. When all the PALs were later redumped on the dedicated PAL reading hardware the correct dumps were still correct and the bad dumps were now read properly. Keep in mind that it is just a hack.

I've gotten some requests for another batch of Action Replay USB Link boards. In the new version under developing, I have revised the board to use less parts and believe I have found a solution to prevent the problem where the Saturn can be inadvertantly powered through the Comms Link port which interferes with booting. There is enough free space that I intend to add holes for standoffs and LEDs to indicate activity. You can never have enough blinking things on a circuit, and I am enjoying the convenience of SMT LEDs now that I have had a chance to use them in some other projects.

Old News (1/15)

Updates

I have finally organized all my electronics projects and tried to update them with the current files I had. Some projects are still incomplete, but I'll try to get everything finished up in time. No more searching through the old news for dead links now.

I purchased a Wing "Lucky Girl" PCB and was able to write a trojan to extract the internal ROM, thanks to the work of a fellow MAMEdev in figuring out how the external program ROM was encrypted. It used a Z180, just like Gaelco's Master Boy, but in a epoxy block with a rather huge pin count. No batteries inside, thankfully. I may have a chance to work with more Z180-based hardware in the future as well.

The third revision of the PAL reader has had an update to fix a problem where USB enumeration wouldn't always work. Check out the online instructions for a step-by-step guide of how to modify the PCB and new PIC firmware.

Current projects under development include:

  • Communications board for the PC-Engine using the new DLP-245R USB module.
  • USB-based RCA Studio 2 cartridge reader.
  • PAL programmer that interfaces directly with the PAL dumper.
The latter should help testing different configurations as the chip can be programmed then dumped in one step and without removing and inserting chips over and over.

Hope to update more often this year. :)


www.digits.com www.digits.com