Select a category to the left.



Light or dark? Choose how the site looks to you by clicking an image below.

Light Dark AMOLED


Preferred Language

All content on is originally in UK English. However, if content exists in your preferred language, it will display as that instead. Feel free to choose that below. This will require a page refresh to take effect.


"" details

Domain Name:
Site Version: 1.0.0
Last Updated: 2020/12/29
Programming, Tools, Software, and more.
Directly Booting MWIII without MWII (Steam)
Tuesday, November 7, 2023

I'll be brief on this post. MWIII requires a prior launch of MWII to run. Since these games are coded specifically to not run via clicking their EXE files, a few extra steps are taken to force execution. I'll provide two ways: an automated batch file, and a manual way if you don't trust me. 😉

This is for the Steam version of the game. And it relies on a steam.exe to boot up the game in the end. Given this blog post was written before the final release of the game came out, I may have to edit it to account for multiplayer layer on.

Continue Reading

Elgato 4K60 S+: A Technical Look
Monday, November 7, 2022

Recently, I wanted to record some Nintendo Switch gameplay. Since the built-in 720p recording feature is garbage for anything other than immediate highlights, I figured I'd sink some money into a device that can capture a full 1080p feed and record it.

I looked at some options. A close friend of mine uses an Elgato HD60 S+ to record gameplay and stream it over Discord. So it was an appealing choice after seeing it in action. But I wanted to future-proof myself. So I decided to get the Elgato 4K60 S+. The appeal here is that it can act like the HD60 S+, but can handle 4K HDR. It also is capable of operating on its own via recording to an SD card. This makes it a very convenient choice if you want to record something without having a PC around. Also, I don't have a free PCIe slot for some of the other choices Elgato offers.

Continue Reading

Action Replay DS (Part 3): Breakdown with working hardware
Saturday, August 6, 2022

Well, I didn't really intend on this being 3 parts, but here we are. So if you haven't read the previous parts, you probably should. Here are some links:

  • Part 1 - White Screen Brick Recovery
  • Part 2 - Firmware Flashing

Following Part 2, I went from having a frozen white screen "brick" of an Action Replay DS cartridge to having a working cartridge, just like how things were in 2007. I now have full access to working hardware. And I am able to flash any kind of firmware I want onto a physical ARDS cartridge utilising a trick with CFW. So I think it's now time to go and finish off the remaining research on how the thing works.

In Part 1, a lot of the recovery steps taken were based on guesses and looking at bytes in a hex editor. While I'm sure a lot of that research and guessing was correct (as I was able to recover all of my old codes), it would be nice to simplify it all down and organise it. Documentation, I guess. So, where do we start?

Continue Reading

Action Replay DS (Part 2): Firmware Flashing
Sunday, July 10, 2022

Following Part 1, I felt like the research done was sufficient. And it really was. I was able to recover the data from my Action Replay DS by dumping the cartridge and taking a look at what's inside. I even wrote programs to aid in extracting the data. So what's next?

I just feel like we can do better than that. It didn't sit well with me that I was restricted by a means of not being able to test this with hardware, because I was missing some pieces of the puzzle. But I want this story to have a proper ending, so it's time to fix that cartridge and get it working again. Once it's working, testing it and getting accurate data for documentation and archival purposes sounds like a great next step. Also, I would like to figure out what actually went wrong with my cartridge which started this series of blog posts. So, let's jump in.

Continue Reading

Action Replay DS (Part 1): White Screen Brick Recovery
Monday, June 20, 2022

In 2007, I got a hold of an Action Replay DS cartridge. As a kid, I used it not only to cheat, but to experiment and play around with games I had physical copies of. Don't worry. I didn't cheat online. Aside from them wiping out my saves, it was a pretty fun time. The way the cartridge worked was cool. It had an additional NDS cartridge slot on top. You would put your game in there. Apply the cheats in the interface that boots up, and then boot the game. The cheats will be applied and you can play the game normally.

Unfortunately, a few years after owning one, I managed to make that cartridge unusable. I have no idea how it actually happened. When I boot it, I am presented with a white screen and nothing else. On top of that, I don't have the cable that would let me connect the cartridge to my PC. So I am kind of out of luck, right? Well, not really. Let's look into it.

Just a disclaimer, this blog post was typed progressively. I type as I figure out more things. So it won't just be a "this is this" and "that is that". So it might come across as disorganised. My apologies. But I do think it might be useful to some people to see how I come to some of the conclusions I do. And you see the journey I went across. It's a fun challenge to me. So know what you're getting into by reading this. My goals are to figure out how to salvage whatever data I could off the cartridge, and then figure out why the Action Replay DS froze in the first place.

Continue Reading

SpyHunter Playthrough (Production Procedure)
Saturday, June 19, 2021

SpyHunter is a great example of a reboot done correctly. The 1983 arcade classic got a reboot on the PS2 and other platforms in 2001 and it looked well ahead of its time. One thing that caught my eye earlier this year was that the reboot also featured a Japanese release, which hasn't been dumped. On top of that, I wanted to play this again in stunning 4K. So, time for another media project?

First, I had to get a dump of the Japanese Release. I found a used copy on eBay for $15. So I had that delivered and I dumped the disc myself via dd (Unix utility). After testing on PCSX2, it works just as well as the USA release. After that, I cranked the internal resolution up to 3840x2160 and went to work.

Continue Reading

Audio Recovery via Waveform Inversion and FFmpeg
Thursday, January 14, 2021

I wrote a post before regarding how I archive Zoom lecture recordings, whether I am teaching or someone else is. However, post-recording, those files sit in the vault unedited. It took a few months, but I discovered an issue with the audio in them. Funny. The times that I don't check audio prior to recording are the times it always goes wrong. It's Sod's law. With the audio messed up, and no chance to re-record, is recovery possible?

Let's analyse the situation. They are MKV files with a single video stream encoded via h264_nvenc. Ok, nothing wrong there. There's 3 audio streams saved as lossless FLAC. Here's the ffmpeg stderr output (yes, it goes to stderr) for one of the files:

Continue Reading

The Ultimate Zoom Lecture Recording
Friday, September 4, 2020

As a University graduate student and teaching assistant, I have to attend and teach classes. Due to the events of the COVID-19 pandemic, classes have now moved mostly online. Zoom just happened to be the platform of choice where most classes are being hosted.

Back when I physically attended classes, I was that one student who sat in the front row and recorded every lecture. I don't really go back and listen to them, but they are useful if you forgot details about an assignment or if you wanted to double check the due date on an assignment being changed. Though, to me, the main reason was data. I wanted data... and I wanted as much as possible. When I teach, I also record everything. No matter the perspective, online classes make this much much easier.

So, what did I do? My usual. Made a completely overkill setup to preserve as much data as possible and accomplish the ultimate Zoom lecture recording. Speaking dramatically aside... Before I get to discussing the details on the setup, let's talk about Zoom and some technical details about it. This'll be important for later on.

Continue Reading

Puyo Puyo Tetris's 50 replay limit... Shattered
Saturday, February 8, 2020

So recently I bought a game on Steam called Puyo Puyo Tetris. It's a crossover between... well... Puyo Puyo and Tetris! I've had a few good matches here and there with some friends and the game lets you save good matches as replays. With replays, you can go and rewatch gameplay at a later time. You can also slow down or speed up the gameplay as you wish when playing them back.

Okay that's a pretty useful feature right? Well it is useful until you hit the absurd 50 replay limit. For a PC port, I would've expected something like in Quake or Half-Life where the replays are stored in a separate file (and in an unlimited quantity), but unfortunately that isn't the case here. Nope, we're stuck with 50.

Continue Reading v3.0.0 - A well-needed refresh
Sunday, August 18, 2019

I have been a TA at University for around 3 years. From the very beginning, I made a website that serves as a 24/7 resource for students in courses I TA for. It contains lab hints, grading guides, files of code, etc that I write whenever I teach lab sections or host office hours.

However, the layout of the page has dated quite a bit since I first wrote it. Maybe it's time to give it a refresh? Sure! Why not!?

Introducing PENDUAL (In the event that this name choice isn't obvious...), a dual-theme setup consisting of a Light and (finally) a Dark theme! This isn't all I've changed though...

Continue Reading

Clara Nguyễn
Hi! I am a Vietnamese/Italian mix with a Master's Degree in Computer Science from UTK. I have been programming since I was 6 and love to write apps and tools to make people's lives easier. I also love to do photography and media production. Nice to meet you!
You can find me on these platforms!
Blog Links
Post Archive
Affiliates/Cool People
Nigoli's Blog
Raas's Blog