I own a Minipro TL866CS Universal Programmer and a PLCC44→DIP40 adapter with which I am capable of dumping a wide range of ROM chips (in PLCC44 packaging or up to 40 pin DIP packaging).
I live in São Paulo, Brazil. If you need help dumping ROMs or shipping a specific Brazilian device, you can contact me at email@example.com.
Even though the MAME/MESS project has been adopting a non-commercial additional licensing clause, I do allow commercial usage of my portion of all the code I ever contribute to the project according to the plain terms of the GPL license (version 2 or later). This is useful if you happen to use my code in another project or in case the other MAME/MESS developers happen to drop the non-commercial clause completely. I suggest that other developers consider doing the same.
Below are the devices I have been studying in order to create drivers in MESS:
Replicator 1 - I have access to the full machine. The MESS
driver displays the boot messages in the LCD, but the keypad still does not work. We also need to implement the AVR8 CPU core emulation by adding support to timers because the 3d printer firmware relies on that hardware feature for lots of things such as controlling the stepper motors. TO-DO: implement the SD card protocol on top of a bare file representing a memory block device and let the emulated device deal with file systems on top of it. New improvements usually are first developed at: https://github.com/felipesanches/mame/commits/makerbot_replicator1
C2642 VER. 5.121 REV.B - only PCB (seems to be the main PCB for an HP Deskjet 400). TO-DO: implement an initial MESS
HENRY (Pinhais-PR Brazil)
hprot REV.1 (firmware V.19) - I own the complete machine.
HENRY CARD I REV. 08A - only PCB.
HENRY CARD II Rev.6 - only PCB.
DARUMA (São Paulo - Brazil)
CHRONOS (Porto Alegre - Brazil)
ACC 300 - only PCB. TO-DO: implement an initial MESS
TECNBRAS (São Paulo - Brazil)
Casiowriter CW16 (electronic typewriter) - TO-DO: implement a driver sketch for MESS
. I did dump the ROM. It was not supported by my EPROM reader, but I hacked it and tried dumping each half of the memory by manually setting the state of the highest address pin and then dumping it using the dumping algorithm of another supported memory device. The lower half of the memory seems OK. I can see text strings in it. I am unsure about the other half. It may be a bad dump. We gotta figure it out and maybe re-dump it. (It uses the same CPU chip as SONY PVE500: the TLCS-Z80!
GC150ATA (LCD panel) - It contains an 8051 microcontroller and an interesting video chip. I've been trying to understand the firmware update mechanism that is supposedly available at an internal I²C port accessible via a connector in the motherboard. More info here
(in Brazilian Portuguese)
General New Feature Ideas
I have been wondering about a few things that could benefit the whole codebase in general, and not only specific drivers. Here I describe the ideas that I may implement someday, or maybe this can inspire some other developer to do so before I do it myself…