Putting A MiSTer Marquee On A Better Display

Some MiSTer users put a small secondary “marquee” display on the FPGA board that can show information about the system such as the currently loaded core and what game it happens to be running. Generally these take the form of a small monochrome OLED display, likely the one most of us have sitting in a parts bin somewhere.

But [Erico Mendonca] wanted a something with a bit more style, so he’s come up with a firmware for the ESP32-C3 that connects to MiSTer’s existing secondary display protocol but works with slightly more visually impressive panels such as the round GC9A01 that so many hackers have been playing with as of late. If the whole circular display thing isn’t your…thing, you can even run the firmware on the Cheap Yellow Display for a turn-key rectangular experience.

Because [Erico] didn’t want to fiddle with anything on the MiSTer side of the equation, his firmware has to do the heavy lifting when it comes to the art that shows on the display. So there’s a web-based editor that lets you put together your own artwork to show on the marquee based on what command the MiSTer has actually sent out. Flashing the firmware on the ESP32 can be done through the browser as well, as is becoming increasingly common these days, making it relatively easy to get this project up and running.

With this project it’s also possible to control multiple client displays over WiFi from one system, just in case you wanted to show off what console you were booting up in multiple places.

We’re fans of the round display here at Hackaday, so it’s been great to see more folks putting them to use as of late.

Continue reading “Putting A MiSTer Marquee On A Better Display” →

Robot Picks Up Othello

Experience is a great teacher. Ask [Jeneus], who, in high school, tried to make a program that played Othello. It didn’t go well. But years later, the idea produced an impressive Othello robot. At first glance, the robot looks a bit like a 3D printer with an aluminum extrusion XYZ motion system. But there’s a lot more to it, not to mention the software to play the game. Check it out in the video below.

The Z-axis has a vacuum system that can pick up clear tokens and place them on the board. If you know the game, you might remember that on a real board, players have to flip the tokens as they “capture” pieces. The robot has a smarter way to go. The tokens are clear because they are lit with one of two colors. So flipping the token is a simple LED color change. The LEDs also flash a different color to show you where you can move.

The device uses laser-cut components and 3D printed parts in PLA and TPU. Of course, there is a camera for the computer — a Raspberry Pi — to see the board. Overall, a very nicely done project. We’ve seen several checker and chess robots. We wonder if some of them could also play Othello?

Continue reading “Robot Picks Up Othello” →

Hacking The Modern Tamagotchi With UART

Although not technically the first virtual pet, the Tamagotchi handhelds certainly popularized the idea and made it a worldwide phenomenon. In the late 90s it was hard to go out in public and not see them dangling from backpacks and belt loops. They turned out to be more than a passing fad, too. There have been Tamagotchis in various forms since then, and one of the latest, the Tamagotchi Paradise, is uniquely hackable thanks to this custom UART interface.

The build starts with a simple and inexpensive CH340G UART adapter with a built-in USB interface. A custom 3D printed enclosure is used to house the adapter and also help to expose the interface to the Tamagotchi. This is done by wiring three pins to nickel strips, which are threaded through slits in the case and looped back around to create a pogo-style adapter for the Tamagotchi’s custom dock. Normally this would be used to link to other Tamagotchis, but in this case the USB-to-UART adapter mimics it, allowing for all kinds of in-game shenanigans. The project’s creator [Squalius] shows it off by connecting it directly to a browser tool in Google Chrome.

Not only that, but this can also be used to modify the software running on the handheld entirely, with the video showing demos playing not only Super Mario but also DOOM (of course). This isn’t too surprising given that these games are built with modern 32-bit ARM microcontrollers. For the 90s purists, though, it probably won’t surprise anyone to know that these devices have been the subject of various hacks almost since they came out.

Continue reading “Hacking The Modern Tamagotchi With UART” →

Arduino Engine Runs Many Games

A few years ago, [Smashcat] ported a ZX Spectrum game called Manic Miner to the Arduino Uno. The Arduino has less memory than the original Spectrum did, so doing all this on an 8-bit microcontroller was no easy lift. Since then, parts of this original port have been adapted to produce a game engine, allowing [Smashcat] to port several other games to the Arduino Uno as well.

The engine is able to host a 2D map with the ability to scroll, at a resolution of 256×256, as well as up to nine sprites at the same time. The graphics are locked to 50 FPS, but only with a real Arduino Uno that has a crystal oscillator. Some replica boards do not have a timekeeping chip accurate enough to replicate the video signal, which is done without a framebuffer. That signal, as well as two PWM audio channels, are still generated directly as well, with only a few resistors needed to hook everything up to a monitor and a controller, including the option of using an NES controller.

With all of that running on the Arduino and it hooked up to the daughterboard that provides the controller interface as well as the resistors for the video signal to function and a driver for a speaker, the system now runs the original Manic Miner as well as three other games: Scramble, Space Invaders, and Pac Man.

The engine and the rest of the code are available on a GitHub page as well, and there’s even a WebAssembly version available to run various pieces of the software without the specific hardware. The original ZX Spectrum was an interesting machine too that still inspires builds like this, despite it being well over 40 years old now.

Running A Philips CD-i Off USB-C

The Philips CD-i is a console with many shortcomings, and those include the power supply. For whatever reason, the engineering team decided it should use an 8P8C connector just like Ethernet. Thus, just like your Ethernet cables, it has that annoying problem of the tab snapping off all the time. [MattKC] wondered if the CD-i could benefit from a USB power upgrade instead, and set about making it a reality.

The plan was simple enough—get the CD-i running off of USB-C instead of the ungainly original power supply that shipped with the unit. Given the console runs almost exclusively off of 5 V power, it should have been pretty easy. Only, the original spec adds one little detail that makes things a bit harder. The console is designed to draw up to 3 A from the 5 V line, while also having a -5 V line at 0.2 A. If not for that negative supply, it would have been easy to run the unit off any old 15 W USB-C charger spitting out 5 V. That extra negative line complicates things, because while the negative line could be created with some supporting electronics, it’s hard to find that extra watt from most chargers. While there are plenty of higher-wattage USB-C chargers, the majority tend to use higher voltages to deliver the additional power, capping the 5 V output at 3 amps.

Thus, it was necessary to work a little harder. [MattKC] decided to build a board that would negotiate with a USB-C charger for 9 V operation to get the power budget necessary. This would then be stepped down to 5 V, while there would also be an inversion step to supply the -5 V line, too. A CH221K chip does the job of negotiating a 9 V USB-C power supply, while a TPSM84538 steps the voltage down to 5 V with the capacity to supply up to 5 A. An LT3580 chip then inverts this voltage for the 5 V line. There’s also a power switching circuit on board because the CD-i included some of that functionality in the original power brick.

If you’ve got a CD-i and you’re sick of fussing with the original power supply, this could be a great upgrade. We’ve also explored USB Power Delivery in detail before, if you need a primer.

DOOM Ported To A $30 Clamp Meter

DOOM. Boil it, mash it, stick it in a stew, it’s the game that runs on anything and everything. Now, the classic shooter is running on a rather unlikely target—a cheap clamp meter of very limited resources, thanks to the work of [Artur Bieniek].

The clamp meter in question is the FNIRSI DMC-100, which can be had for the low price of just $30 or so if you know where to look. It’s a far cry from the many thousands of dollars you’d pay for a heavy old 486-based machine back in 1993. [Artur] got the doomgeneric engine running on the Artery AT32F415 chip that runs the clamp meter.

The chip is pretty capable, with its 150 MHz clock speed, though the 32 KB of RAM posed rather a big limitation to the project. It may be one of the lowest RAM DOOM ports out there. Even with this limit, [Artur] was able to get Episode 1 of Freedoom: Phase 1 loaded on to the thing, including E1M1 to E1M9 along with the title screen, intermissions, the finale, the menu, and four save slots. Color graphics are displayed on the meter’s 320 x 240 screen, and there are even sound effects on the built-in buzzer. Controls are mapped to the rather curious choice of a DJI RC-N1 drone controller.

We’ve seen DOOM running on everything from desk phones to completely custom CPUs. These days you have to try pretty hard to find something it hasn’t already been ported to.

Continue reading “DOOM Ported To A $30 Clamp Meter” →

Sega Genesis Controllers On The Philips CD-i

The Philips CD-i was not popular upon its launch in 1991, and is barely acknowledged today. In the opinion of [MattKC], it had a particularly poor selection of controllers, too, and it’s often hard to find used examples anyway. To rectify this situation, he whipped up an adapter to let him use Sega Genesis controllers instead.

The benefit of the Genesis controller is that it uses DB-9 connectors that are readily available, and it’s got a simple pinout that is compatible with the Atari joystick port, too. It makes interfacing the controllers supremely easy. Converting the controllers required using a Arduino Pro Micro to read the Genesis pad and translate it into something suitable for the CD-i.

On the Sega controller side, the microcontroller just has to strobe one pin while reading the state of others to determine what all the buttons are doing. The CD-i, however, expects a serial data stream from the original Philips controllers. Thus, the microcontroller is set up to poll the Genesis controller, and then translate this into the serial commands for the CD-i. It gets a little complicated, because the CD-i wasn’t really built for game controllers, but mouse-like inputs instead. But it’s not too hard to get things working once you understand what the weird Philips console is looking for.

There aren’t really any good games on the CD-i, so this isn’t a project that the retro gaming masses will be flocking to. Still, if you have a CD-i and you want to hook up some controllers on the cheap, this might come in handy. Alternatively, you could also try the BlueRetro project.

Continue reading “Sega Genesis Controllers On The Philips CD-i” →