···11# TODO List for gm112
2233+## For first blog post
44+35- [x] Make prerendering work for encrypted content (we're not trying to encrypt the data on the static site, just in the git repo lol)
46- [x] Add i18n support
57- [x] Move content into i18n friendly folder structure
···810- [ ] Add blog post content
911 - [ ] Finish blog post for February 27th
1012 - [ ] Start blog post for March 6th
1313+- [ ] Add Prose Img component for expanding image into full screen
1114- [ ] Add a nix flake for the project
1515+- [ ] Fix theme colors to use oklch lightness/darkness calculations for --ui-bg* and --ui-text-color* variables
1616+1717+## For later
1818+1919+- [ ] Create page editor view
2020+ - [ ] Expose only to dev mode
2121+ - [ ] Write / sync git
2222+ - [ ] Jiujutsu flow
2323+ - [ ] Page Preview
2424+- [ ] Move layers/modules into separate git repos and publish as npm packages
+35-3
content/blog/en/2026-02-27.md
···25252626Thankfully, I had already had been helping another friend of mine with their
2727own Game Boy project, Dearborn, which has a similar playstyle to 2D Zeldas.
2828+Aaron had been working on Dearborn, and then reached out to me to help with
2929+developing the game. Since we were in pre-production, we experimented with
3030+a couple of different ideas. One was a turned based combat system demo, which
3131+ended up being scrapped due to the original design being an action adventure
3232+style game. I cannot wait until Aaron is ready to show the world his game!
3333+3434+Christmas was approaching soon, so I made the decision to take
3535+the time to develop the action adventure mechanics into the game and fork off
3636+into our glorious rick roll for MAGFest. Mwahaha >: )
3737+2838It seemed like the perfect fit for building a version of the game that would
2929-rick roll the player! :D So, off I went to putting together the demo.
3939+rick roll the player! :D So, off I went to putting together the demo!
30403141### From Dearborn to Rick Roll
3242···3747like rocks removed. This process had taken roughly a few weeks of intermittently
3848devoting time to it.
39495050+### Getting to grips with an 8bit handheld
5151+5252+So one of the first requirements I had to handle was reworking the camera
5353+to scroll sections of the map in the same style as 2D Zeldas, and to
5454+implement a tile streaming mechanism for allowing for arbitrary map sizes.
5555+At this point I had forked GB Studio and began adding things to help with
5656+overcoming some of the rougher workflows for the type of game we were developing.
5757+5858+TODO: Finish this section
5959+6060+### Figuring out the audio situation
6161+4062For streaming the audio, originally I had written a simple bash script that
4163converted the WAV files into a C array. And then, I wrote a function that
4264DMA'd the array into the APU's Channel 3 effectively. The first atttempts
···5173instead no-ops. At this point, it was possible for the player to interact
5274with the game while they were being rick rolled. \:D
53757676+TOOD: Rework this section, and talk about setting up the audio.
7777+5478<details class="bg-info p-4">
5579 <summary>Click to see code! :D</summary>
5680···104128105129### Preregistering and hanging out for a bit
106130107107-{
131131+{
108132fit="cover"
109133quality="90"
110134width="500"
···138162139163### Flashing Game Boy Carts
140164141141-TODO: Add photo from flashing game boy carts
165165+{
166166+fit="cover"
167167+quality="90"
168168+width="500"
169169+height="500"
170170+class="size-64"
171171+alt="Day 1 in the food court"
172172+loading="lazy"
173173+}
142174143175We made it to the hotel room, and I plopped on the bed and busted
144176out the goods. >: ) Because of missing some of the object data, I decided