One might wonder how the Russian falling-blocks game could do this, as unlike the previous examples it has a very small playing field. And indeed it’s not quite the Tetris you’re used to playing, but a version played over an infinite board. Then viewed as a continuous progression of the game it can be viewed as somewhat similar to the tape in a Turing machine.
The various moves and outcomes are referred to through a Tetris scripting language, so states can be represented by different sets of blocks and holes while logic elements can be be built up using the various shapes and the game logic. From those a computer can be built, represented entirely in Tetris moves and shapes. It’s a little mind-bending and we’d be lying if we said we understood every nuance of it, but seemingly it works well enough to run the game from within itself.. If it had the catchy music from the NES version, we’d declare it perfect.
[Sebastian] had a tricky problem to solve. Competitors in a Tetris tournament needed to stream video of their Game Boy screens, but no solution readily existed. For reasons of fairness, emulators were right out, and no modifications could be made to the Game Boys, either. Thus, [Sebastian] created the GB Interceptor, a Game Boy capture cartridge.
Thanks to the design of the Game Boy, there’s plenty of access to useful signals via the cartridge port itself. [Sebastian] realized that a non-invasive capture device could be built to sit in-between the Game Boy and a cart, and send video to a computer. Unfortunately, there’s no direct access to the video RAM via this port, but [Sebastian] figured out a nifty workaround.
The build uses a Raspberry Pi Pico. The chip’s two cores emulate the Game Boy’s CPU and Picture Processing Unit, respectively. Doing this, while having the chips keep up with what’s going on in the Game Boy, required overclocking the Pico to 225 MHz. The system works by capturing data from the cartridge’s memory bus, and follows along with the instructions being run by the Game Boy. By doing this, the Pico is able to populate its own copy of the video RAM. It then spits this out over USB, where it can be displayed and streamed online as desired.
There are some edge-case limitations, but for its intended purpose, the system works great. Currently, the hardware is usable on Linux and Windows, though it does require some fiddling in the latter case. Files are on Github for those eager to build their own. If you simply want to dump carts rather than stream from your Game Boy, we can help there, too. Video after the break.
The basic concept of the Tetris clock is that falling bricks stick together in the shape of numbers to display the time. In this case, the clock is based on the version created by [Brian Lough] which we featured previously. It relies on an RGB LED matrix as a display.
However, the build has had a few upgrades courtesy of [The Electronic Engineer]. With the help of an I2S audio breakout board, the clock can play sounds at various times of day. It’s currently set up with clips from various cartoons announcing lunch and coffee break times. There’s also a web interface added in for configuration purposes, and some text tickers too.
Computer memory is a problem that has been solved for many years. But early on, it was more than just a small problem. We’ve many of the different kinds at Hackaday over the years, and we’ll link to some of them later on. But one of the original types of memory was called Delay Line memory, which worked by waiting for a signal to propagate slow enough through a device that it was essentially stored in the device. This was highly inefficient, but still a neat concept- one that [Tom7] has taken to entirely new levels of amazing and impractical as seen in the video below the break.
Starting with a demonstration of orbiting chainsaws, he then moves on to explaining how radio propagation waves could be used to temporarily store data while it’s in transit. He missed the opportunity to call it cloud storage, but we’ll forgive him. Extrapolating that further, he decided to use the Entire Internet to store data without its permission, utilizing large ICMP packets and even making it available as block storage in Linux.
Not content to use the entire Internet to store a few kb of data, he moved on to several thousand virtualized NES game systems which are all playing “an inventory management survival horror game” commonly known as Tetris. [Tom7] deconstructs Tetris, analyzing its Random Number Generator, gaming the system to store data in virtual NES consoles by the thousands. What data did he store? The source code to Tetris for the NES. And what did he do with it? Well, he mounted it and ran the program, of course!
The last Harder Drive we’ll leave for those who want to watch the video, because it’s a bit on the “ewww gross!” side of things but is also a bit less successful due to some magic smoke being released.
If none of these things we’ve mentioned were enough, then watch the video for an excellent breakdown of the cost, efficiency, and even the harm to society. For fun, he also tosses blockchain into the mix to see how it fares against the Harder Drives. There’s also at least one easter egg in the video, and the whimsical discussion of engineering is both entertaining and inspiring. How would you implement a Harder Drive?
The idea of a tritium power cell is pretty straightforward: stick enough of the tiny glowing tubes to a photovoltaic panel and your DIY “nuclear battery” will generate energy for the next decade or so. Only problem is that the power produced, measured in a few microwatts, isn’t enough to do much with. But as [Ian Charnas] demonstrates in his latest video, you can eke some real-world use out of such a cell by storing up its power over a long enough period.
As with previous projects we’ve seen, [Ian] builds his cell by sandwiching an array of keychain-sized tritium tubes between two solar panels. Isolated from any outside light, power produced by the panels is the result of the weak green glow given off by the tube’s phosphorus coating as it gets bombarded with electrons. The panels are then used to charge a bank of thin-film solid state batteries, which are notable for their exceptionally low self-discharge rate.
Some quick math told [Ian] that a week of charging should build up enough of a charge to power a knock-off handheld Tetris game for about 10 minutes. Unfortunately, after waiting the prescribed amount of time, he got only a few seconds of runtime out of his hacked together power source.
His best guess is that he got a bad batch of thin-film batteries, but since he could no longer find the exact part number he used originally, he had to design a whole new PCB for the second attempt. After waiting two long months to switch the game on this time, he was able to play for nearly an hour before his homebrew nuclear energy source was depleted.
We wouldn’t consider this terribly practical from a gaming standpoint, but like the solar harvesting handheld game we covered last year, it’s an interesting demonstration of how even a minuscule amount of power can be put to work for intermittent applications. Here it’s a short bout of wonky Tetris, but the concept could just as easily be applied to an off-grid sensor.
It hardly seems possible, but engineer collective and split-flap display purveyors [Oat Foundry] were able to build a working implementation of Tetris on a 10 x 40 split-flap display in the span of a single day. Check it out in the video after the break.
This project is a bit understaffed in the details department, but we do know that [Oat Foundry] started with [Timur Bakibayev]’s open-source implementation of Tetris in Python and modified the draw function to work on a split-flap display. As you may have guessed, the biggest obstacle is the refresh rate and how it affects playability — particularly during those tense moments when a player rotates a piece before dropping it. Split-flaps flip quickly from on to off, but flipping back to on requires a full trip around through all the other characters.
We think this is nice work for a one-day build. Should they go further, we’d like to see the same things implemented as [Oat Foundry] does: a high score tracker and a preview of the next piece.
The nunchuck is meant to plug into a Wii controller and the connection is I2C, so that’s trivial to interface to an Arduino or other small microcontroller. The only issue is making the connection. We might have just snipped the wires, but [Brian] prefers to use a small breakout board that plugs into the stock connector and provides solder points for your own cable. There are options for the breakout boards, and [Brian] has his own design that you can get from OSHPark for about a buck for three boards. You can also just jam wire into the connector, but that’s not always robust.