2014-08-20

Reading Emcotronic M1 roms

I have sucessfully read the roms from the M1 mainboard using the TOP853 rom programmer.

The process was surprisingly smooth. I was prepared for all sorts of problems along the way, but it just worked. Uncanny...

I ran the TOP853 software from virtualbox to read the roms into .bin files and then i used bokken from the ubuntu repos to parse and look at the files. This is how I did it:



Open the chip select dialog in TOP853.

Type in 27256 and select EPROM.

Select a long delay for reliable reading.

Start reading the chip into the buffer.

Save the buffer to .bin file.
 
Open bokken and select the .bin file.

You can browse the dis-assembled code.
 
You can view the strings table.
The plan ahead now is to buy a few replacement roms (modern variants with identical pin-out) and copy the images over and see if they work. Once they work I can start modifying the code slightly.

Figuring out what to change in the code and where might seem harder than it is. I thought about ho to do it and I came up with the idea that the strings tell me something about what the code does, so all I have to do is to follow the strings and see which code pushes the strings around. Next I just identify which strings relate to which functions (such as loading/saving MSD data) and hijack those routines by jumping to an unused location where I have some space for my own code.

Well in theory at least.

TOP853 rom writer under Ubuntu

The TOP853 rom programmer arrived a few days ago and I just had the chance to check it out.

Since I run Ubuntu as my primary desktop OS, I thought it would be nice to see if I could get it working there somehow. Unfortunately the programmer is married to a proprietary windows-only software, and installing that under wine was a futile endeavour.

I ended up installing a small XP 32bit image under virtualbox. I had to install guest additions, add my user to vboxuser group and reboot to have USB working. I identified the USB device by detaching it and reattaching it and seeing which entry in the list of devices changed in the vbox USB filter settings.

TOP853 running in XP 32bit in virtualbox under Ubuntu.

Mor on this soon.

2014-08-03

Emcotronic M1 EPROM + Static RAM + CPU

Small update on the EMCO.

After posting a few inquisitions on practicalmachinist.com and cnczone.com (major cnc related forums), without a single response at all I felt a bit discouraged. But to quote someone special; "When I get sad, I stop being sad and be awesome instead".

So now I have dragged out all the cards from the M1 computer and started probing them for intel (pun intended). It looks as though the card with the reset button at the back, called "R3D415000", or "Datacontroller" is the culprit.



Big picture
Unfortunately none of my cameras are operational at the moment, so only a stolen picture.


It features among other things the following IC chips:

I haven't bothered listing the rest of the chips as they seem to have lower level functions.

I have also ordered a cheap eprom programmer that supposedly handles the 27256 chips on this card. The plan is to read them in and look at the code (should be in x86 machine code, which there are lots of tools for). If I want to fiddle with it, I can probably write the possibly updated changes to more modern eeprom chips of the same spec that go into the sockets on the card. If I get anywhere with this, I will try to patch the code so that I can run my own subroutines attached to button clicks on one of the inert buttons in the display (there are at least two buttons with no symbol on them, that I guess are just legacy/future-proofing).