The game engine itself is built to run on the Pimoroni PicoSystem, which is essentially a handheld gaming platform built around the RP2040 chip. The engine takes advantage of the multi-core nature of the RP2040, using the second core as a dedicated rasterizer to keep frames pumping out.
The basic game [Bernhard] built in the engine features 50 NPC characters and 50 further zombies, all running at the same time. Specs are impressive, with the engine’s included game simulating a “world” of 120 x 120 meters in size. As a maximum limit, the engine can handle a 2.56 x 2.56 km world, thanks to the use of 8-bit integers for directional data. However, limited storage space would make it difficult to achieve such a large world in practice.
We don’t get to see much of the gameplay in the YouTube video, but the quality of the graphics is impressive for such a cheap microcontroller. It seems within the bounds of possibility that an actual open-world game could be practical on the PicoSystem if only enough storage were available. Video after the break.
PostScript is the precursor to PDF, and at the time it was revolutionary. Coming out of Xerox’s PARC, the idea was to create device- and resolution-independent documents where all the characters, symbols, and graphics are described by their shapes instead of bitmaps. PostScript’s secret sauce was in how it went back to a pixel-based representation for end use on monitors or printers. It’s no exaggeration to say that this ended up revolutionizing the print industry, and it makes sense in the CHM’s collection.
Still, on the trade-secret front, you shouldn’t get too excited. Apparently the code released here only includes a first-draft version of Adobe’s font hinting algos, as evidenced by the early version number. Nonetheless, you’re free to dig into pretty readable C. For instance, vm.c contains the virtual machine that implements PostScript’s almost Forth-like language.
Of course, if you’d just like to mess around with PostScript, downloading a modern open-source interpreter like GhostScript probably makes a lot more sense. Even so, it’s fun to see the original codebase where it all started.
The project is a fork of the LaserDisc-focused ld-decode, started by [Chad Page] back in 2013, which readers may recall was used for the Domesday Duplicator — a device aimed to recover data from the BBC’s ancient Domesday LaserDiscs. VHS-Decode is designed to capture the raw RF signals straight out of a tape head, which are the most direct representation of the signals on the physical media. From there, these signals can be processed in various ways to best recover the original audio and video tracks. It’s much the same technique as is used by floppy disk recovery tools like the FluxEngine.
Despite the VHS name, the code currently works with several tape formats. VHS, S-VHS and U-Matic are supported in PAL and NTSC formats, while Betamax, Video8 and High8 tape capture remains a work in progress. Using the code requires a video tape player with test points or traces that make signals from the head accessible. Capturing those signals is achieved via a Domesday Duplicator hardware device, or alternatively a Conexant CX2388x analog-to-digital converter, often found in many old PCI TV tuner cards. Various techniques can then be used to turn the captured signals into watchable video files.
The lamp is constructed around an abstract sculptural form made in air-dry clay. Light is provided via a string of Neopixel RGBW LEDs. Run by an Adafruit Feather Huzzah, they’re programmed to trigger with the sunrise to provide a bright light in the morning on grey days when the outside world isn’t quite delivering the same. The Adafruit queries an online weather API to get the right sunrise time every day without requiring user intervention. The lamp can also be programmed to provide warm light during later hours.
Let’s say you’re working on an ESP32 project to send off to your grandma; something she can just plug in and it will start automatically monitoring her plant’s water levels. But you discover a critical flaw in the firmware and need to update it. Does she send it back? Do you walk her through dropping the update via the Arduino IDE OTA? The easiest way would be to plan and use something like esp_ghota, an OTA framework by [Justin Hammond].
OTA (Over-The-Air) updates are a fantastic feature of the ESP32, and we’ve covered libraries that make it easy. But compared to those earlier projects, esp_ghota takes a different approach. Rather than hosting a web server where someone can drop a binary, it looks at GitHub releases. [Justin] had to include a streaming JSON parser, as GitHub API responses tend to be beefy. The workflow is straightforward, push a new commit to your main branch on GitHub, and the action will trigger, building a few different versions. Your little plant watering reminder at your grandma’s will check every so often to see if a new version has been pushed and can update with rollback on littlefs, fatfs, and spiffs filesystems.
It’s an incredible project that we suspect will be very useful for many folks to update their projects. [Justin] even includes an example GitHub action and a sample ESP32 project.
Hydrogen has long been touted as a potential fuel of the future. While it’s failed to catch on in cars as batteries have taken a strong lead, it still holds great promise for larger vehicles like trucks.
Do you play Whamageddon? It’s a pastime for the month of December, something like the Game, in which you lose when you are exposed to the 1984 Wham! Christmas classic, Last Christmas. Such is the pervasive nature of Christmas music at this time of year, it’s extremely difficult not to encounter a bit of unexpected Wham! during the month. At Tkkrlab hackerspace in the Netherlands, they evidently take their Whamageddon seriously. Seriously enough it seems, to weaponise it, because one of their members has created a Wham! gun.
Starting with a compressed-air kit gun (we think that’s a sealant cartridge gun, for Anglophones) because of its comedy plastic-firearm-like appearance, they’ve put in an AliExpress audio sample player module and a speaker. Add a suitably hazard-warning paint job, and Wham! Any unwary visitor might be ambushed and lose their Whamageddon game before they can even pop the cap on a refreshing bottle of Club-Mate.
It’s all a bit of seasonal fun, but deadly serious if the dulcet tones of George Michael are anathema to you. Don’t get mad, get equal, never visit a Dutch hackerspace in December without first fixing your noise cancelling headphones.