I have recently started a project that requires the ability to create a time-lapse video over a set duration. Looking at all the possible ways of achieving this I felt that a Raspberry Pi would be well suited for the job. In this post I will discuss how I went about setting up both a Raspberry Pi 3 Model B+ and Raspberry Pi Zero W with HypriotOS to run a Docker-based time-lapse camera Node application.
Over Christmas I found myself delving back into a bit of Clojure, one such problem I stumbled upon solving was allocating Secret Santas. In this post I will discuss how I went about grouping a given list of names based on certain criteria, and then correctly pairing up each person. From here, I will then highlight how I expanded upon the solution to allow these allocations to be distributed, hidden from prying eyes with a simple ROT13 substitution cipher.
Continuing on from the modifications made to pokered in the previous post, I noticed an interesting unused behaviour in the assembly code. It looked to be an unused debug function which gives the player Tsunekazu Ishihara’s favourite Pokémon. In this post I will document making this function accessible by talking to Mom in Pallet Town.
Over the Christmas break I found myself on a bit of a nostalgic gaming journey. Along with building a RetroPie, I dusted off my old Game Boy and decided to ‘catch them all’ one more time on Pokémon Red. Whilst playing, the developer in me started to contrive how a game like this was created, and better still could be changed. Enter pokered, a disassembly of Pokémon Red/Blue which has been organised so that an assembly code noice like myself can understand it. In this post I will go through compiling the ASM, tweaking the game to add ‘Super B’ button behaviour, and then running the compiled ROM on an actual handheld!
When writing show-notes for Three Devs and a Maybe it is tedious work to extract the associated show-link titles and generate a Markdown list from them. This is something that I have documented in the past, providing an automated solution to this problem. However, in this post I would like to discuss implementing such a command-line tool using Golang, creating self-reliant executables that can be cross-compiled for Mac, Windows and Linux.