A Steam Machine Clone For An Indeterminate But Possibly Low Cost

For various reasons, crypto mining has fallen to the wayside in recent years. Partially because it was never useful other than as a speculative investment and partially because other speculative investments have been more popular lately, there are all kinds of old mining hardware available at bargain prices. One of those is the Asrock AMD BC250, which is essentially a cut down Playstation 5 but which has almost everything built into it that a gaming PC would need to run Steam, and [ETA PRIME] shows us how to get this system set up.

The first steps are to provide the computer with power, an SSD, and a fan for cooling. It’s meant to be in a server rack so this part at least is pretty straightforward. After getting it powered up there are a few changes to make in the BIOS, mostly related to memory management. [ETA PRIME] is uzing Bazzite as an operating system which helps to get games up and running easily. It plays modern games and even AAA titles at respectable resolutions and framerates almost out-of-the-box, which perhaps shouldn’t be surprising since this APU has a six-core Zen 2 processor with a fairly powerful RDNA2 graphics card, all on one board.

It’s worth noting that this build is a few weeks old now, and the video has gotten popular enough that the BC250 cards that [ETA PRIME] was able to find for $100 are reported to be much more expensive now. Still, though, even at double or triple the price this might still be an attractive price point for a self-contained, fun, small computer that lets you game relatively easily and resembles the Steam Machine in concept. There are plenty of other builds based on old mining hardware as well, so don’t limit yourself to this one popular piece of hardware. This old mining rig, for example, made an excellent media server.

Continue reading “A Steam Machine Clone For An Indeterminate But Possibly Low Cost”

The Many-Sprites Interpretation Of Amiga Mechanics

The invention of sprites triggered a major shift in video game design, enabling games with independent moving objects and richer graphics despite the limitations of early video gaming hardware. As a result, hardware design was specifically built to manipulate sprites, and generally as new generations of hardware were produced the number of sprites a system could produce went up. But [Coding Secrets], who published games for the Commodore Amiga, used an interesting method to get this system to produce far more sprites at a single time than the hardware claimed to support.

This hack is demonstrated with [Coding Secrets]’s first published game on the Amiga, Leander. Normally the Amiga can only display up to eight sprites at once, but there is a coprocessor in the computer that allows for re-drawing sprites in different areas of the screen. It can wait for certain vertical and horizontal line positions and then execute certain instructions. This doesn’t allow unlimited sprites to be displayed, but as long as only eight are displayed on any given line the effect is similar. [Coding Secrets] used this trick to display the information bar with sprites, as well as many backgrounds, all simultaneously with the characters and enemies we’d normally recognize as sprites.

Of course, using built-in hardware to do something the computer was designed to do isn’t necessarily a hack, but it does demonstrate how intimate knowledge of the system could result in a much more in-depth and immersive experience even on hardware that was otherwise limited. It also wasn’t free to use this coprocessor; it stole processing time away from other tasks the game might otherwise have to perform, so it did take finesse as well. We’ve seen similar programming feats in other gaming projects like this one which gets Tetris running with only 1000 lines of code.

Continue reading “The Many-Sprites Interpretation Of Amiga Mechanics”

Internet-Connected Consoles Are Retro Now, And That Means Problems

A long time ago, there was a big difference between PC and console gaming. The former often came with headaches. You’d fight with drivers, struggle with crashes, and grow ever more frustrated dealing with CD piracy checks and endless patches and updates. Meanwhile, consoles offered the exact opposite experience—just slam in a cartridge, and go!

That beautiful feature fell away when consoles joined the Internet. Suddenly there were servers to sign in to and updates to download and a whole bunch of hoops to jump through before you even got to play a game. Now, those early generations of Internet-connected consoles are becoming retro, and that’s introduced a whole new set of problems now the infrastructure is dying or dead. Boot up and play? You must be joking!

Continue reading “Internet-Connected Consoles Are Retro Now, And That Means Problems”

Need For Speed Map IRL

When driving around in video games, whether racing games like Mario Kart or open-world games like GTA, the game often displays a mini map in the corner of the screen that shows where the vehicle is in relation to the rest of the playable area. This idea goes back well before the first in-vehicle GPS systems, and although these real-world mini maps are commonplace now, they don’t have the same feel as the mini maps from retro video games. [Garage Tinkering] set out to solve this problem, and do it on minimal hardware.

Before getting to the hardware, though, the map itself needed to be created. [Garage Tinkering] is modeling his mini map on Need For Speed: Underground 2, including layers and waypoints. Through a combination of various open information sources he was able to put together an entire map of the UK and code it for main roads, side roads, waterways, and woodlands, as well as adding in waypoints like car parks, gas/petrol stations, and train stations, and coding their colors and gradients to match that of his favorite retro racing game.

To get this huge and detailed map onto small hardware isn’t an easy task, though. He’s using an ESP32 with a built-in circular screen, which means it can’t store the whole map at once. Instead, the map is split into a grid, each associated with a latitude and longitude, and only the grids that are needed are loaded at any one time. The major concession made for the sake of the hardware was to forgo rotating the grid squares to keep the car icon pointed “up”. Rotating the grids took too much processing power and made the map updates jittery, so instead, the map stays pointed north, and the car icon rotates. This isn’t completely faithful to the game, but it looks much better on this hardware.

The last step was to actually wire it all up, get real GPS data from a receiver, and fit it into the car for real-world use. [Garage Tinkering] has a 350Z that this is going into, which is also period-correct to recreate the aesthetics of this video game. Everything works as expected and loads smoothly, which probably shouldn’t be a surprise given how much time he spent working on the programming. If you’d rather take real-world data into a video game instead of video game data into the real world, we have also seen builds that do things like take Open Street Map data into Minecraft.

Thanks to [Keith] for the tip!

Continue reading “Need For Speed Map IRL”

FPGA Brings Antique Processor To Life

For the retro gaming enthusiast, nothing beats original hardware. The feel of the controllers and the exact timing of the original, non-emulated software provide a certain experience that’s difficult or impossible to replicate otherwise. To that end, [bit-hack] wanted to play the original EGA, 16-color version of The Secret of Monkey Island in a way that faithfully recreated the original and came up with this FPGA-based PC with a real NEC V20 powering it all.

The early 90s-style build is based on a low-power version of the V20 called the V20HL which makes it much easier to interface with a modern 3.3 V FPGA compared to the original 5 V chip. It’s still an IBM XT compatible PC though, with the FPGA tying together the retro processor to a 1 MB RAM module, a micro SD slot that acts as a hard disk drive, a digital-to-analog audio converter, and of course the PS/2 keyboard and mouse and VGA port. The mouse was one of the bigger challenges for [bit-hack] as original XT PCs of this era would have used a serial port instead.

With a custom PCB housed in a acrylic case, [bit-hack] has a modern looking recreation of an XT PC running an original processor and capable of using all of the period-correct peripherals that would have been used to play Monkey Island when it was first released.

FPGAs enable a ton of retrocomputing projects across a wide swath of platforms, and if you’re looking to get started the MiSTer FPGA project is a great resource.

Continue reading “FPGA Brings Antique Processor To Life”

Moving From Windows To FreeBSD As The Linux Chaos Alternative

Back in the innocent days of Windows 98 SE, I nearly switched to Linux on account of how satisfied I was with my Windows experience. This started with the Year of the Linux Desktop in 1999 that started with me purchasing a boxed copy of SuSE Linux and ended with me switching to Windows 2000. After this I continued tinkering with non-Windows OSes including QNX, BeOS, various BSDs, as well as Linux distributions that promised a ‘Windows-like’ desktop experience, such as Lindows.

Now that Windows 2000’s proud legacy has seen itself reduced to a rusting wreck resting on cinderblocks on Microsoft’s dying front lawn, the quiet discomfort that many Windows users have felt since Windows 7 was forcefully End-Of-Life-d has only increased. With it comes the uncomfortable notion that Windows as a viable desktop OS may be nearing its demise. Yet where to from here?

Although the recommendations from the peanut gallery seem to coalesce around Linux or Apple’s MacOS (formerly OS X), there are a few dissenting voices extolling the virtues of FreeBSD over both. There are definitely compelling reasons to pick FreeBSD over Linux, in addition to it being effectively MacOS’s cousin. Best of all is not having to deal with the Chaos Vortex that spawns whenever you dare to utter the question of ‘which Linux distro?’. Within the world of FreeBSD there is just FreeBSD, which makes for a remarkably coherent experience.

Continue reading “Moving From Windows To FreeBSD As The Linux Chaos Alternative”

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.