After my success with programming the 220V10 GAL for the User Port to drive the Sequencer display I thought I would see if I could add the code for ROM selection and remake my earlier ROM/User Port cartridge minimising the number of IC's on the PCB.

Changing the one on the left to the one on the right

I came up with two options based around the GAL package format, DIP and PLCC. The two board layouts take up the same space so there is no advantage to one over the just gives me experience of programming both packages.

Component side of both DIP and PLCC cartridge PCB's.

Assembling the DIP PCB and populating the ROM sockets with Stop Press and a programmed 22v10 GAL.

My first tests proved very successful, I could run my test programs to both read and write to the User Port and I tested the ROM sockets with various Electron ROMs; View, my PATGEN ROM and a few others.

Then came my last test and that was to run Stop Press to check the Mouse worked smoothly..and to my disappointment no mouse movment at all! The three mouse buttons work but no cursor movement. I must have a hardware or software conflict on the cartridge. I checked the circuit diagram and the board layout and I can't find any electrical errors although a couple of component placements could have been better to reduce track length. I now need to look at the logic of my GAL Program and build the PLCC version to see if it displays the same issue. As a note the original (red) cartridge works very smoothly with the mouse.

I completed the PLCC version and not surprisingly is behaved the same, reading inputs and writing outputs works ok but again when using a mouse there are no cursor movements. Back to the drawing board..

At the start of this journey to programming GAL's I used the pinout/layout of the 512KE2P User Port GAL to write the logic equations and to layout the PCB, this was so I could fall back on using the E2P GAL as a last resort. Whilst my program works well with the sequencer 4004 display it didn't with a mouse - must check the E2P User Port with a mouse!

Starting from scratch I re-programmed the GAL according to the basic User Port cartridge circuit and made a change to the circuit diagram. Making a temporary bodge to the PCB and using the newly re-programmed GAL it worked a treat.

Stop Press in Edit mode with the cursor present.

The circuit boards updated to v2.1 and v3.1 with the re-programmed GAL's.

I tested the User Port/Mouse combination across several Electron configurations to ensure there were no glitches. To do this I used both my own test programs to read and write data to the user port and Stop Press to test the mouse and the ROM sockets.

Electron configurations used:

Electron/Plus 1/Plus 6/RH ROM v1.33/Slogger Pegasus 400/Various ROMs in +6,,
Electron/OSTC/Minus 1/ARM/Slogger Pegasus 400,
Electron/Slogger MRB/Minus 1/ARM/Slogger Pegasus 400.
Electron/Slogger MRB/Plus 1/Plus 6/RH ROM v1.33/Pres AP3/4/Various ROMs in +6.

I also tested both cartridges with View and the AMX Support ROM checking the mouse operates correctly within View.

The Electron with the PLCC cartridge running Stop Press and editing a test page - spelling errors are deliberate!

If you would like to build one for yourself everything you need including the Gerbers, BOM, Circuit Diagram and the .jed file is here for the v2.1 PLCC version and here for the v3.1 DIP version.