A mod (jokingly) told me I had to make a Neo Geo Pocket emulator, so I intend to showcase the pain that has caused me. This was going to be a list of rants, but most of them were way too short, so enjoy this diary of things that made me go WTF instead. 10/18/2023 - Register Encoding I started work on this emulator recently. The TLCS-900/H is a really cool processor, but I want to personally murder whoever made the register encoding. My first encounter with it was this: Seems OK enough. 8 32-b...| kellanclark.github.io
I make too many of these to not be spamming r/EmudevMemes (which you should definitely check out).| kellanclark.github.io
In the process of High Level Emulating (HLE) the BIOS for my emulator, I noticed a lack of information on timings and unexpedted/undefined output. This page documents my (very limited) findings and gives me a place to rant about dumb things I found in the code. All code is from the disassembly at https://github.com/PikalaxALT/gba_bios SWI Functions Number Name Inputs Outputs 0x00 SoftReset none reset 0x01 RegisterRamReset none r0, r1, r2, r3 0x0B CpuSet r0, r1, r2 todo 0x0C CpuFastSet r0, r1,...| kellanclark.github.io
Hello and welcome. The only purpose of this post is to greet you when your site comes alive for the first time. This post will demonstrate some of the more common content & elements found in posts. Feel free to delete this post when you are ready to publish your first post. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Some great heading (h2) ...| kellanclark.github.io
Why did I do this? Check out the GitHub page Intro/Context What are LDM and STM? Notes on the pipeline Where do we even start? Register Map Some building blocks Numbers Writing the Interpreter Dispatch Moving the Data Pointer Modifying Data Output Input Loops A Secret 9th Command Bootstrapping for the GBA Additional Links Intro/Context Thanks to making the program counter a general purpose register (henceforth referred to as pc or r15) and showing its actual (i.e. pipelined) value instead of ...| kellanclark.github.io