Engin Cilasun
banner
sparsevoxel.bsky.social
Engin Cilasun
@sparsevoxel.bsky.social
Blizzard, Activision, Avalanche, Starbreeze, Simbin
(World of Warcraft / CoD Vanguard / JustCause3 & 4 / Rage / Syndicate / Race Pro)
github.com/ecilasun/tinysys
github.com/ecilasun/sandpiper_hw
@the_cilasun@mastodon.gamedev.place
u/Not_Computer
And finally, audio over HDMI is problem free too
November 17, 2025 at 2:20 AM
Quake is also running at a decent frame rate without prior can issues. I think all that’s left to do is to try to get a qemu version working and finish the darned enclosure so it can close properly 🤣
November 17, 2025 at 2:17 AM
That is just this tiny program:
November 17, 2025 at 2:04 AM
Testing out the video coprocessor with a short palette update program.
November 17, 2025 at 2:03 AM
Done with the video coprocessor instruction set for the time being, and it runs quite well so far.
I can now to Amiga-like copper effects on sandpiper.
I think I'm getting closer to being able to opensource this.
November 15, 2025 at 5:41 PM
Little bit of sandpiper time today.
I want to port a few more samples to the device and wrap up that copper unit.
September 16, 2025 at 1:27 AM
The complete enclosure. Slicer mess-up in some parts, I’ll fix later.
Feels just right in this form factor, slightly larger than a 60% keyboard :)
September 9, 2025 at 4:21 PM
Enclosure bottom plate fits. Now to start printing that top half…
September 8, 2025 at 11:02 PM
And ofc the enclosure is orange, too.
September 8, 2025 at 3:03 PM
“How else would they know it’s made in Orange County?”
September 8, 2025 at 3:01 PM
So far I have the 5 units working in unison.

VCP(video coprocessor), VPU(video processing unit), APU(audio processing unit) and PAL(color palette unit) and the CPU(dual ARM cores) sit on the same AXI bus.
The APU, VCP and VPU core logic are clocked at bus speed (166.6MHz)
September 1, 2025 at 10:41 PM
Almost there...
August 31, 2025 at 6:38 AM
Sandpiper is moving forward. Relocated the palette device to axi bus and I'm going to add a copper on the bus so it'll be easier to access everything from both the CPU and the VPU.
Going console-y
August 30, 2025 at 3:18 AM
Got u-boot to load my splash screen before anything else happens, could have also just memset to zero apparently.
Nice to not have to touch Linux kernel / drivers for a change, for once.
August 10, 2025 at 7:11 AM
I think this suffices for an initial test.
Getting this fabricated costs 180USD now thanks to price increases, so that makes this a 36USD keyboard + 3 port hub combo.
Not that bad really, but it could have been way cheaper.
August 10, 2025 at 1:34 AM
Something like so, still moving things around
August 9, 2025 at 11:20 PM
Looking at adding a 4-port USB hub today, with one hardwired to the keyboard. The hub connects to the FPGA board's USB port.
August 9, 2025 at 10:43 PM
Well that's the easy part. The real question is, how do they get out?
August 7, 2025 at 3:30 AM
How do 9 elephants get into a car?
August 7, 2025 at 3:20 AM
A transparent mockup (since I ran out of tough resin)
Brittle, but should hold to test putting one machine together.
August 5, 2025 at 11:41 PM
Things are coming along nicely. Also managed to fix my old 3D printer and printing a few mockups to see how they hold up.
August 5, 2025 at 2:34 AM
Made the enclosure much smaller today.
It still requires a large format printer (to not cause cuts), but on the bright side it doesn't require screws to hold together except for the 4x 1mm screws at the bottom for the FPGA board.
August 3, 2025 at 4:02 AM
Coding some samples on the sandpiper itself. Just got a 4:3 monitor to fit its display output.
Once I recover from this cold I’ll do more, now I have to get back to rest.
July 29, 2025 at 11:28 PM
Sandpiper is up and running with everything I wanted from software side.
One problem is that audio ticks way too fast, I have to allocate some time to fix it.
July 21, 2025 at 3:49 AM
The video/audio control register mappings can be obtained with two ioctl calls. The driver maps them to virtual memory at startup.
July 20, 2025 at 4:32 PM