I have no background in electronics or programming. Everything I have learnt over the years has been through self teaching and the help from other kind people willing to lend a hand.

Jul 272017

Recently I’ve been working on some Windows based software to use the Data I/O 29 series programmers.
Its coming along well and I have a few people willing to test things out for me which has been great as its a pretty tedious task of trying things out and reporting back, rinse and repeat.
I captured a small video showing some progress.

The programmer itself isn’t all that hard to interface with as most of it is just issuing commands which are all outlined in the manual but there are a couple of things to deal with when it comes to uploading a file to the programmer.
I’ve also been collecting ID codes for programmers and modules so I can auto detect programmer and more importantly the module that is fitted. This allows me to auto populate a device list.
Ive tested this using a cheap USB to serial adapter and its been working fine.

 Posted by at 9:08 pm

[frsj8112] – Sega PCB 171-5468 reproduction PCB

 General, Projects  Comments Off on [frsj8112] – Sega PCB 171-5468 reproduction PCB
Jun 072017

A good friend of the site, frsj8112, has reproduced the MCU bypass PCB that Sega used on some of its games and he wanted to share his work.

The PCB’s can be ordered direct from OSHpark HERE

Huge thanks to frsj8112 for creating and sharing this. Im sure it will help many people out.

 Posted by at 7:58 pm

Data I/O 29A & Unipak2 repair log

 Equipment Repair Logs, Repair Logs  Comments Off on Data I/O 29A & Unipak2 repair log
Jun 072017

I bought this setup from a good friend quite a few months ago now. I knew it needed some attention when I bought it.
On power up I got this most of the time

No response from any inputs from the keypad.
The keyboard generates an interrupt for the 6802 CPU. Using the scope I could see the /IRQ signal was being asserted.
I checked all of the ROM’s and found no issue and also checked to surrounding logic and found no issue.
Looking around the main PCB I found a couple of problem areas.

As you can see, both of these chips had some corrosion. I replaced them but they made no difference to the problem I had so after a while I came to the conclusion the CPU must be bad.
Searching eBay turned up nothing UK based so I fired off an email to my friend, Purity to see if he had a spare I could buy. He had one and said I could have it.

And now I get this

Problem solved.
Next issue was with the Unipak 2 itself.
I could successfully select and read chips but the data being read back was a little wrong.
Reading a few carefully selected addresses of an EPROM I found that bits 2, 3, 4 & 5 were stuck high.
Looking at the schematics I quickly came to a potential problem area.

You can see from the schematic above that the LM339 comparator is responsible for those exact bits.
I removed the chip and tested it out of circuit. The chip failed and I ordered some new ones.

With a new one fitted everything was back to working status.

I’m really happy to finally have this in my collection and working.
Massive thank you to Purity for his generosity. He has been very kind to me recently and also a great help. I hope one day to be able to return the favor.

 Posted by at 5:17 pm

Hi-Lo ALL-LAB base unit PAL dumps added

 PAL Updates  Comments Off on Hi-Lo ALL-LAB base unit PAL dumps added
May 132017

I recently bought myself a Hi-Lo ALL-11 programmer. This unit uses the original ALL-LAB base unit to connect to the outside world and also as a power supply.
Inside there are four PALCE16V8 chip. Three of them are already dumped and are out in the wild HERE
The one at U9 is registered and there cannot be recreated using our usual methods. I suspect this is also why it hasn’t been dumped before.
As the device is a PALCE there is a good chance I could reset the security fuse by power glitching. This was successful and I was able to read out the fusemap without any issues.
The registered part looks like a 4 bit binary counter and the equations show that too so I am going to mark this as ‘Assumed Working’ for now. I haven’t tested as I really wanted to get the programmer back together for some playing around with.

All the ALL-LAB PAL’s are now dumped and a copy has also been sent to the site above for inclusion.

 Posted by at 2:48 pm

How to use JEDutil

 Guides  Comments Off on How to use JEDutil
Apr 292017

JEDutil is a program included with MAME.
While MAME doesn’t directly use PAL dumps for emulation it does look to load them if they are available. As each programmer has its own output format when reading these chips (some are really different, other not so much) there arose the need to have a standard.
Read here for more information

What can JEDutil do?

It can convert a programmer usable .jed file to a MAME usable .bin file
It can convert from the MAME usable .bin file back to a programmer usable .jed file
It can be used to view the equations of any support .jed or.bin file

To see a list of supported devices you use the “-viewlist” argument

To view equations use the “-view” argument

These equations show exactly how the outputs works in relation to any given input and I believe is self explanatory to those who are looking.
Here is what the file im using for this example looks like in a text editor

You can clearly see it was created using WinCUPL.

Here is what a JEDutil created .jed file will look like opened up in a text editor

It looks very similar to the WinCUPL created file and most programmers i’ve encountered can load these without issue. One exception to that (and there are certainly others too) is the Needham EMP-20 which seems to use its own binary format that is not compatible with the MAME format.

Here is what a MAME usable binary file for a .jed will look like in a hex editor

There are clear difference between the binary and jedec files and should be easy to spot if you are not 100% sure what you have got.

Converting a MAME binary to a Jedec file
If you want to use the PAL dumps found in MAME on real hardware then you MUST convert them from their binary format back into .jed format.
You need to use the “-convert” argument

Note the filename extensions used here. The output file must be .jed (or .pla) or the conversion will fail and you will see this useful message

Converting a Jedec file to a MAME binary
To convert a .jed file into a MAME .bin file you simply use the same command but swap the filename extensions.

This will create the binary file. The original .jed file will remain untouched.

The only time I can really think of anyone needing to convert to a MAME binary is if you are submitting your dumps for inclusion to MAME
I’ve yet to ever find a use for the Berkeley PLA conversion so I haven’t covered it in here but if required it should be straight forward enough to work out.

Other Errors
Occasionally you might see some more cryptic error messages when using JEDutil. While there are things you can do to try and get around these they might also be a sign of a corrupt file or one of incorrect format.
The Jedec file format has two checksums both found at the end of the file.
The first is the fusemap checksum and the second is the transmission checksum

In the example used above the fusemap checksum is “3E71”. I believe the “C” part is always present.
The transmission checksum is “D5F0”

The fusemap checksum is the 16bit sum of all the 8bit fuse values.
The transmission checksum is a little more. Using the same example as before

The transmission checksum is a 16 bit sum of all the ASCII characters between (and including) the STX and ETX markers.

If the fusemap checksum if incorrect but the transmission checksum is correct then you will get this message

If the transmission checksum is incorrect then you will get this message

I believe you will get this message even if there is a fusemap checksum error as well.
You can disable the transmission checksum by changing it to “0000”.

In the past if I got stuck working with a strange .jed file I have loaded it into my programmers software and saved it back. This rewrites all the checksums to be correct. Your milage may vary!

There may be other errors, maybe not. I’ve not come across any other to really bother myself about.

 Posted by at 3:03 pm