Git Good, By Playing A Gamified Version Of Git

What better way to learn to use Git than a gamified interface that visualizes every change? That’s the idea behind Oh My Git! which aims to teach players all about the popular version control system that underpins so many modern software projects.

Git good, with a gameified git interface.

Sometimes the downside to a tool being so ubiquitous is that it tends to be taken for granted that everyone already knows how to use it, and those starting entirely from scratch can be left unsure where to begin. That’s what creators [bleeptrack] and [blinry] had in mind with Oh My Git! which is freely available for Linux, Windows, and macOS.

The idea is to use a fun playing-card interface to not only teach players the different features, but also to build intuitive familiarity for operations like merging and rebasing by visualizing in real-time the changes a player’s actions make.

The game is made with beginners in mind, with the first two (short) levels establishing that managing multiple versions of a file can quickly become unwieldy without help. Enter git — which the game explains is essentially a time machine — and it’s off to the races.

It might be aimed at beginners, but more advanced users can learn a helpful trick or two. The game isn’t some weird pseudo-git simulator, either. The back end uses real git repositories, with a real shell and git interface behind it all. Prefer to type commands in directly instead of using the playing card interface? Go right ahead!

Oh My Git! uses the free and open-source Godot game engine (not to be confused with the Godot machine, a chaos-based random number generator.)

The BR55 battle rifle held in its creator's hands during test firing

Making The Halo 2 Battle Rifle Real

We’ve just been shown a creation that definitely belongs on the list of impressive videogame replicas. This BR55 rifle built by [B Squared Mfg] not only looks exactly like its in-game Halo 2 counterpart, it’s also a fully functional firearm chambered in 5.56. The attention to detail even brings us a game-accurate electronic ammo counter.

The rifle and magazine communicate over three pins.

Unfortunately, the only information we have on the weapon currently is the video below. But he does at least go into detail about the practical aspects: caliber choice, the arduous journey of bolt carrier sourcing, and how the ammo counter works.

Each magazine has a potentiometer built into it to detect the number of rounds loaded, but there’s a bit of trickery involved. In the real world, there’s no way a magazine this size could hold the 36 rounds of ammunition depicted in the game, so for each shot fired, the counter subtracts three. It takes a little imagination, but this way it looks as close to the game version as possible.

There will be no published files due to legal concerns, but there’s nothing you couldn’t build yourself, as long as said legal concerns are sorted out for yourself. Depending on where you live, you might have to settle for building a Gauss gun in the same frame, we’ve even seen slimmer ones done commercially. Whatever you build, make sure you store it in a way others can’t access it easily — not all gun safes pass this test.

Continue reading “Making The Halo 2 Battle Rifle Real”

Exploring The Sega Saturn’s Wacky Architecture

Sega Saturn mainboard with main components labelled. More RAM is found on the bottom, as well. (Credit: Rodrigo Copetti)
Sega Saturn mainboard with main components labelled. More RAM is found on the bottom, as well. (Credit: Rodrigo Copetti)

In the annals of game console history, the Sega Saturn is probably the most convoluted system of all time, even giving the Playstation 3 a run for its rings. Also known as the system on which Sega beached itself before its Dreamcast swansong, it featured an incredible four CPUs, two video processors, multiple levels and types of RAM, all pushed onto game studios with virtually no software tools or plan how to use the thing. An introduction to this console’s architecture is provided by [Rodrigo Copetti], which gives a good idea of the harrowing task of developing for this system.

Launched in Japan in 1994 and North America and Europe in 1995, it featured a double-speed CD-ROM drive, Hitachi’s zippy new SH-2 CPU (times two) and some 3D processing grunt that was intended to let it compete with Sony’s Playstation. The video and sound solutions were all proprietary to Sega, with the two video processors (VDP1 & 2) handling parts of the rendering process which complicated its use for 3D tasks, along with its use of quadrilaterals instead of triangles as with the Playstation and Nintendo 64.

Although a lot of performance could be extracted from the Saturn’s idiosyncratic architecture, its high price and ultimately the competition with the Sony Playstation and the 1996 release of the Nintendo 64 would spell the end for the Saturn. Although the Dreamcast did not repeat the Saturn’s mistakes, it seems one commercial failure was enough to ruin Sega’s chances as a hardware developer.

Wico Boss Joystick Modded To Use Cherry MX Keyboard Switches

The Wico Boss joystick was one of the better designs of the 1980s. Yours truly had one, and put it through many brutal hours of Amiga-based gameplay. [Drygol] was recently asked if he could alter some of these sticks to be even clickier than stock, and jumped at the change to do some modding.

[Drygol]’s idea was to swap out the original microswitches in the sticks for keyboard switches instead. In particular, the idea was to use the Cherry MX Blues which have a particularly nice click to them. But this wasn’t just going to be a straight swap. Instead, since the hardware was retro and preservation was desired, the modification had to be reversible.

The result was a drop-in 3D-printed bracket that holds four Cherry switches around the joystick’s central bauble. Thus, when the stick is moved, it actuates the keyboard switches with a satisfying click. A 12mm tactile switch was also installed in the base to be activated by the fire button. Then, it was a simple matter of  tidying up some of the sticks during reassembly and wiring up the original cables to the new switches.

It’s a neat way to give an old-fashioned digital joystick a new lease on life. This would be a particularly great mod for tired sticks with worn out microswitches, too. Hilarious archaic marketing video after the break. They really are whacko for Wico.

Continue reading “Wico Boss Joystick Modded To Use Cherry MX Keyboard Switches”

Video Poker Takes Your Money In 10 Lines Of BASIC

It wasn’t easy, but [D. Scott Williamson] succeeded in implementing Jacks or Better Video Poker in 10 lines of BASIC, complete with flashing light and sound! Each round, one places a bet then plays a hand of 5-card draw, hoping to end up with Jacks or better.

This program is [Scott]’s entry into the 2024 BASIC 10 Liner Contest, which at this writing has concluded submissions and expects to announce results on April 6th 2024. Contestants may choose any 8-bit computer system BASIC, and must implement their program within ten lines of code (classically limited to 80 characters per line, but there are different categories with different constraints on line width.)

10 lines of BASIC is truly an exercise in information density.

We’ve seen impressive 10-line BASIC programs before, like this re-implementation of the E.T. video game. (Fun fact: while considered one of the worst video games of all time, there’s a compelling case to be made that while it was a flop, it was ahead of its time and mostly just misunderstood.)

These programs don’t look much like the typical BASIC programs many of us remember. They are exercises in information density, where every character counts. So we’re delighted to see [Scott] also provides a version of his code formatted and commented for better readability, and a logical overview that steps through each line.

He spends a little time talking about the various challenges, as well. For example, hand ranking required a clever solution. IF…THEN conditionals would rapidly consume the limited lines of code, so hands are ranked programmatically. The 52-card deck is also simulated, rather than simply generating random cards on the fly.

The result looks great, and you can watch it in action in the video, just under the page break. If this sort of challenge tweaks your interest, there’s plenty of time to get started on next year’s BASIC 10 Liner Contest. Fire up those emulators!

Continue reading “Video Poker Takes Your Money In 10 Lines Of BASIC”

Commodore CHESSmate Replica Runs On The ESP32

The Commodore CHESSmate chess computer might not be terribly well known, but that doesn’t make it any less worthy of being reproduced. If anything it is more important, as it gives more people an opportunity to use one of these devices, yet beyond a purely emulated experience the real user interface is harder to experience.

Internals of the reproduction Commodore ChessMate (Credit: Michael Gardi)

This is where [Michael Gardi]’s modernized replica provides a highly accessible version, consisting of a custom PCB with an ESP32 as the brains of the system. Although decidedly overkill next to the 6502 in the original CHESSmate, it makes the project far easier for others to assemble as it contains few components that shouldn’t be readily available.

The ESP32 is mounted on a small daughterboard which plugs into the main PCB with the buttons, LEDs and indicators. The whole stack is then inserted into the 3D printed reproduction case. These 3D models along with the ESP32 port of the CHESSmate firmware can be found in the GitHub repository, along with a minimalist frame and a ‘CHESSmate Lite’ version as alternative enclosure options for those who somehow don’t appreciate the delightful 1980s aesthetics.

We covered the Commodore CHESSmate last year, including a highly faithful reproduction built by [Hans Otten], which [Michael] read the day after meeting [Peter Jennings], the author of MicroChess (which the CHESSmate uses internally) at an event at York University. Taking this as a sign, he set to work on this particular project.

We’re not sure if there’s really a cosmic force directing [Michael] towards his next project, but if there is, we’d like to take this opportunity to thank it for doing a fantastic job so far.

A DIY handheld PONG game

DIY Pocket PONG Breaks The Mobile Spell

[Minikk], aka [Athul] is about to enter 10th grade and reports that they and their contemporaries are eschewing boring mobile games for 90s stuff and old games like PONG. Well, we already knew the 90s were back, but it’s nice to see that even older stuff is coming along with it. The kids are alright.

Whether you want to play alone or with a friend, it’s a classic to have in your pocket for sure. The brains behind this 70s-era operation is a Seeed Xiao ESP32-C3, which takes input from the two potentiometers and outputs the game on a 128 x 64 OLED. There’s also a small buzzer for when the ball hits the paddle, or you or your friend slips one past the goalie.

Our favorite part of this build has to be the DIY rivets that hold the OLED in place. [Athul] built posts into the enclosure that get heat-smashed into place with a soldering iron. Pretty neat, huh?

PONG is a specific thrill, certainly. How can it be more thrilling? Maybe with LEDs instead of a screen? Just a thought.