I recently took a look over a Bride of Pinbot pinball machine and noticed the head mechanism was malfunctioning. When you shoot a ball up the left ramp and into the face, it should rotate to the next face in the sequence and then return to the previous face for the next player. This wasn’t working correctly. The face was rotating, but rarely to the correct one.

Having never worked on a pinball machine before, this seemed like a good fault to get my feet wet. However, what started out as intending to fix a single small problem, snowballed…

I’m a Linux Gamer and for the most part I ignore games that are not released on Linux or at least run well in Wine, however I do have a back catalog of Windows only games from before Steam arrived on Linux.

Dual booting works, but it’s not all that convenient. Having read about the progress in GPU pass-through and project looking glass, I decided to have a go at setting up a Windows VM with GPU pass-through.

I had a strict criteria for this setup. I wanted to still use the dedicated GPU (dGPU) on the Linux Host for games and programs or in the Windows VM without having to reboot, run any scripts, log out or otherwise restart the X server.

Here’s how I accomplished that.

Whilst the frequency of the FPGA and Electron sound output matched, there was still something not quite right with the sound. A subtle difference between the two that I couldn’t quite put my finger on.

After hooking the oscilloscope up to both with the Electron’s speaker still connected, it became rather obvious.

I’ve finally managed to get my hands on an Acorn Electron and being able to compare frequency output between a real Electron and my FPGA implementation, the results were a little surprising.

I was expecting issues with the core on at least a few games that others had run into problems with. Specifically Joe Blade and Southern Belle and, well, expectations met :(

Whilst investigating issues with Joe Blade I happened on a short test program on the stardot forum. This highlighted differences between my core and the Electron in the way TX Empty and RX Full comm mode interrupts can fire.

Let’s Encrypt provide a useful alternative challenge protocol called DNS-01 which allows services to renew SSL certificates without accepting inbound connections from the Internet. This proves to be quite useful if you’re running LAN only services but still wish to deploy SSL internally via Let’s Encrypt.

There’s ample information about Let’s Encrypt and DNS-01 on-line but having recently configured it on FreeNAS I wanted to share my notes.

The Acorn core implementation progressed quite rapidly unlike how long it has taken me to write up my notes and publish these blog posts. The last remaining task for video generation was to support all the graphics/text modes as well as the colour palette.

This required another read through the advanced user guide to determine the pixel format for each mode/palette.

VSCode just gets better and better. I’ve been using it as my editor for the Acorn Electron replay core for a while now but always tabbed out to the terminal to run the build script and impact gui to program the FPGA.

No longer! This can all be done now from within VSCode via ctrl+shift+b to build and ctrl+shift+p to program the FPGA.