First post, by rpocc
Hi to all.
Today I would like to introduce here my complete Arduino project: PALDump, version 1.0 1.3
Couple of weeks ago I was trying to revive one of my VGA cards, specifically Hedaka OTIVGA, which I've obtained with one of its PAL chips pulled off. I was struggling searching for an easy to build PAL dumper and to my surprise I coudn't find any related project based on Arduino board. Some PAL-related topics were discussed even here, on Vogons, but neither of them seemed to be simple enough to build with basic DIY tools. So, I've started developing one from scratch and made it to the first working release which I've decided to make public.
It uses Arduino MEGA-2560 mainly due up to 23 needed pins while Uno and other MEGA328-based modules have only 19 (including one shared with Serial RX) which barely enough for PAL16L8 and not enough for PAL20L8.
Main features:
- Detection of tri-state outputs using the dedicated probe pin.
- Analysis of outputs. It reads each output pin and counts occurunces of each state for all 65K/1M of input combinations, detecting inputs, outputs, I/O or buffered outputs, and builds an internal table of active outputs as the boolean function outputs with addition of Output Enable functions per each buffered output.
- Analysis of inputs. It tests each pin that could be used as a logic input and detects if any change at this input doesn't affect output functions. Then it builds a table of usable inputs.
- Generation of the truth table. It generates the optimized truth table (with excluded unused inputs) in Berkeley format and transfers it via Serial port (USB/UART1) at 115200 bps.
The output can be fed directly to command-line tool Espresso, which in its turn will generate minimized logic equations, which in their respective turn, may be used almost as-is in pld projects for WinCUPL or other similar software.
During writing and testing this tool, I've dumped couple of PLAs from another OTIVGA card, tried to burn a restored .jed file to ATF16V8B and the board had successfully started with either of its chips replaced by the copy, so I believe this can pass as alpha-test.
It would be great if somebody having required equipment will make dumps of their PALs installed on old PC boards and share them with others. There's no yet such a thing as PLA database, similar to BIOS dumps database but it could appear. I've added first made dumps as examples at the project page and later willing to add more dumps from boards I own with specified identification.
The reason why such thing should exist is the same as BIOS dumps: for situations where there is a known board having a missing PAL. I've finally restored my Hedaka U8 after implementing missing functions presented on another OTIVGA board with different schematic. I'm curious to see a dump/equations from original U8 IC to compare it with mine. A set of ready-to-burn JED and PLD files for two versions os OTIVGA are included to the project page as well.