Custom Dear ImGui Style Dear ImGui’s default style looked a bit tacky and ‘programmer art’-like to me, so I’ve made my own: I’ve tried to create a typical ‘dark mode’ theme while still keeping a high degree of contrast in order to maintain good legibility. Another focus of the style is technical and artistic minimalism,Continue reading “clownmdemu – frontend v0.4 & libretro v0.2”
Category Archives: Programming
clownmdemu – frontend v0.3.1
This is just a quick update to address some issues in the previous v0.3 release. Make FM Debugger More Compact The FM debugger was a bit ‘verbose’ in v0.3… As you can see, each channel was given its own window, which meant that it was a lot of effort to simply switch from one channelContinue reading “clownmdemu – frontend v0.3.1”
clownmdemu – frontend v0.3 & libretro v0.1.1
This update mostly affects the standalone frontend, but a couple of them also apply to the libretro core. Keyboard Rebinding One shortcoming of the standalone frontend is that it lacks keyboard rebinding: the W, A, S, and D keys will always control the Control Pad’s D-Pad, and so on. But not anymore! New to theContinue reading “clownmdemu – frontend v0.3 & libretro v0.1.1”
clownmdemu – frontend v0.2 & libretro v0.1
It’s been too long, but finally my emulator has an update! Since the first release, the emulator has been greatly optimised, some inaccuracies in the 68000 interpreter have been addressed, and the occasional missing CPU instruction has been added. Compatibility with games should be a bit better than before, but still not great as many essentialContinue reading “clownmdemu – frontend v0.2 & libretro v0.1”
clownmd5
Years ago, I wrote an MD5 hasher. For some reason, I never gave it a proper release, instead only including a copy of it in one or two of my projects. That’s finally changed, and I figured that I’d mark the occasion by giving a recap of its history here. It’s a bit more complexContinue reading “clownmd5”
The Tale of clownaudio – Part 4
“In the next part, I’ll cover the first step in clownaudio’s transition from a component in a Cave Story mod to a standalone audio library.” It’s almost two years late, but let’s continue where we left off: At this point in time, clownaudio was still just the nameless audio subsystem of my Ogg Vorbis musicContinue reading “The Tale of clownaudio – Part 4”
Git Split
My Mega Drive emulator has gotten pretty big: it has multiple core components (68000 emulator, Z80 emulator, YM2612 emulator, etc.) two separate frontends (a standalone SDL2/Dear Imgui frontend, and a libretro frontend), and even some tools which I never committed like a 68000 test suite and a performance benchmarker. This all creates a pretty bloatedContinue reading “Git Split”
Virtual 68 Katy
At last, it’s working! After writing the last blog post, I was able to find a test suite for the Motorola 68000, allowing me to verify the accuracy of my 68000 emulator. After addressing a number of inaccuracies, Linux could finally finish booting! The issue that was breaking kmalloc was the CMPA.W, ADDA.W, and SUBA.WContinue reading “Virtual 68 Katy”
(Almost) Emulating the 68 Katy
During a recent bout of illness I became fascinated with the concept of porting the Linux kernel to minimalist environments: it began when I stumbled upon this video of someone who had gotten Linux running on their RISC-V emulator, which made me wonder if I could do the same with my 68000 emulator. Unfortunately, IContinue reading “(Almost) Emulating the 68 Katy”
Making My Own Game Engine
Where the heck have I been lately? Starting yet another project, of course. Why an engine? Well, there’s only so much time I can spend poking around other people’s game engines before I start wanting to make my own… which in my case is about 10 years. Personally, I have a real hate boner forContinue reading “Making My Own Game Engine”