Recreating A Homebrew Game System From 1987

We often take for granted how easy it is to get information in today’s modern, Internet-connected world. Especially around electronics projects, datasheets are generally a few clicks away, as are instructions for building almost anything. Not so in the late 80s where ordering physical catalogs of chips and their datasheets was generally required.

Mastering this landscape took a different skillset and far more determination than today, which is what makes the fact that a Japanese electronics hobbyist built a complete homebrew video game system from scratch in 1987 all the more impressive.[Alex] recently discovered this project and produced a replica of it with a few modern touches.

Continue reading “Recreating A Homebrew Game System From 1987”

Building A Minecraft Lantern For Halloween

Sometimes it’s fun to bring props from video games into the real world. [Hulk] has done just that with their latest Halloween build—creating a working replica of the lantern from Minecraft.

Key to the build is the 3D printed enclosure, which faithfully mimics the look of the in-game item. By virtue of Minecraft’s simplistic visual style, it’s a relatively straightforward print, without a lot of quirky geometry or difficult overhangs that might otherwise trip up your printer. It’s printed in six parts and assembled with acrylic lenses which act to diffuse the light coming from inside.

Electronically, an Arduino Nano runs the show. It’s hooked up to a pair of NeoPixel addressable LED rings, which provide rich RGB colors on demand. Rotary pots are installed on the enclosure to enable the color to be tuned to the user’s desire. Power is courtesy of an 18650 lithium-ion cell and a TP4056 module ensures the battery is kept happy when charging.

It’s a fun prop build, and one that would be the perfect addition to any Minecraft costume. Except for maybe a chicken jockey, because they don’t use lanterns. In any case, we’ve seen similar work before, too.

Continue reading “Building A Minecraft Lantern For Halloween”

Left: old and busted. Right: New hotness.

Game Of Theseus Gets Graphics Upgrade, Force Feedback 30 Years On

Indycar Racing 2 was a good game, back in 1995; in some ways, it was the Crysis of the Clinton years, in that most mortals could not run it to its full potential when it was new. Still, that potential was surely fairly limited, as we’re talking about a DOS game from 30 years ago. Sure, it was limited– but limits are meant to be broken, and games are made to be modded. [TedMeat] has made a video showing the updates. (Embedded below.)

It turns out there was a 3D-accelerated version sold with the short-lived Rendition graphics cards. That version is what let the community upscale everything to the absurd resolutions our modern monitors are capable of. Goodbye SVGA, hello HD. Specifically, [sharangad] has created a wrapper to translate the Rendition API to modern hardware. It doesn’t sound like higher-res textures have been modded in, in which case this looks spectacular for graphics designed in 1995. It’s not the latest Forza, but for what it is, it impresses.

The second hack [TedMeat] discusses is a mod by [GPLaps] that pulls physics values from game memory to throw to a modern force-feedback wheel, and it shows just how good the physics was in 1995. You really can feel what’s going on– stopping a skid before it starts, for example. That’s normal these days, but for the kids playing with a keyboard in 1995, it would have been totally mind-blowing.

As tipster [Keith Olson] put it: “What can I say? Fans gonna fan!” — and we’re just as grateful for that fact as we are for the tipoff. If you’re in a fandom that’s hacked its way to keep old favourites alive, we’d love to hear about it: submit a tip.

Continue reading “Game Of Theseus Gets Graphics Upgrade, Force Feedback 30 Years On”

A New Golden Age Of Browser Games

Arguably, the golden age of browser gaming occurred in the 00s mostly revolving around Adobe Flash. This was an era with high creativity and a low barrier of entry, and also decentralized from gatekeeping app stores. Sadly, these times have passed us by as the security concerns around Flash led to its discontinuation and most casual gamers have migrated to the app store for their fix. But that doesn’t stop some from continuing to bring gaming to the browser, even if those games were never intended for it in the first place like this browser port of Celeste.

Celeste is an indie platformer where the player climbs a mysterious mountain while confronting her inner struggles. Originally meant for consoles and PC, a group of friends including [velzie], [bomberfish], and [Toshit] aka [r58Playz] took this as a challenge especially after seeing someone else’s half finished web port of this game. Most of the build revolves around WebAssembly (wasm) and around “cursed” .NET runtime hacks which also allow the port to run the community-made Everest mod loader. It uses a multithreaded and JIT compiling version of mono-wasm backported from .NET 10 to .NET 9 to maximize performance. The team actually first started by porting Terraria to the browser, and then moved on to this Celeste port from there.

The port of Celeste can be played here, and their port of Terraria is also available, although may not support a ton of Hackaday traffic so some patience is advised. There are also GitHub repositories for Celeste and Terraria as well.  With impressive ports of relatively modern games moving into the browser, perhaps we’re entering a new golden age of browser gaming; we’ve also seen things like Minecraft implemented in only HTML and CSS lately as well.

EmuDevz Is Literally A Software Game

The idea of gamifying all the things might have died down now that the current hype is shoving AI into all the things — but you’ve probably never seen it quite like EmuDevz, a game in which you develop an 8-bit emulator by [Rodrigo Alfonso].

There’s a lot of learning you’ll have to do along the way, about programming and how retro systems work, including diving into 6502 assembly code. Why 6502? Well, the emulator you’re working on (it’s partially-written at the start of the game; you need only debug and finish the job) is for a fantasy system called the NEEES “an antique game console released in 1983”. It’s the NEEES and not NES for two reasons. One, Nintendo has lawyers and they really, really know how to use them. Two, by creating a fantasy console that is not-quite-a-Famicom, the goalposts for EmuDevz can be moved a bit closer in.

Continue reading “EmuDevz Is Literally A Software Game”

Factorio Running On Mobile

As a video game, DOOM has achieved cult status not just for its legendary gameplay and milestone developments but also because it’s the piece of software that’s likely been ported to the most number of platforms. Almost everything with a processor can run the 1993 shooter, but as it ages, this becomes less of a challenge. More modern games are starting to move into this position, and Factorio may be taking a leading position. [Point Substantial] has gotten this game to run on a mobile phone.

The minimum system requirements for Factorio are enough to make this a challenge, especially compared to vintage title like DOOM. For Linux systems a dual-core processor and 8 GB of memory are needed, as well as something with at least 1 GB of VRAM. [Point_Substantial]’s Xiaomi Mi 9T almost meets these official minimum requirements, with the notable exception of RAM. This problem was solved by adding 6 GB of swap space to make up for the difference.

The real key to getting this running is that this phone doesn’t run Android, it runs the Linux-only postmarketOS. Since it’s a full-fledged Linux distribution rather than Android, it can run any software any other Linux computer can, including Steam. And it can also easily handle inputs for periphreals including a Switch Pro controller, which is important because this game doesn’t have touch inputs programmed natively.

The other tool that [Point_Substantial] needed was box86/box64, a translation layer to run x86 code on ARM. But with all the pieces in place it’s quite possible to run plenty of games semi-natively on a system like this. In fact, we’d argue it’s a shame that more phones don’t have support for Linux distributions like postmarketOS based on the latest news about Android.

Thanks to [Keith] for the tip!

Some assembly code

Programming Space Game For X86 In Assembly Without An Operating System

In this video our hacker [Inkbox] shows us how to create a computer game that runs directly on computer hardware, without an operating system!

[Inkbox] briefly explains what BIOS is, then covers how UEFI replaces it. He talks about the genesis of UEFI from Intel in the late 90s. After Intel’s implementation of UEFI was made open source it got picked up by the TianoCore community who make tools such as the TianoCore EDK II.

[Inkbox] explains that the UEFI implementation provides boot services and runtime services. Boot services include things such as loading memory management facilities or running other UEFI applications, and runtime services include things like system clock access and system reset. In addition to these services there are many more UEFI protocols that are available.

Continue reading “Programming Space Game For X86 In Assembly Without An Operating System”