A screenshot of the world's first 64kB boomer shooter

QUOD Is A Quake-Like In Only 64kB

The demoscene is still alive and well, and the proof is in this truly awe-inspiring game demo by [daivuk] : a Quake-like “boomer shooter” squeezed into a Windows executable of only 64 kB he calls “QUOD”. We’ve included the full explanation video below, but before you check out all the technical details, consider playing the game. It’ll make his explanations even more impressive.

OK, what’s so impressive? Well, aside from the fact that this is a playable 3D shooter in 64kB, with multiple enemies, multiple levels, oodles of textures, running, jumping et cetera–it’s so Quake-like he’s using TrenchBroom to make the levels. Of course he’s reprocessing them into a more space-efficient, optimized format. Yeah, unlike the famous .kkrieger and a lot of other demos in the 64kB space, this isn’t all procedurally generated. [daivuk] did make his own image editing program for procedurally generated textures, though. Which makes sense: as a PNG, the QUOD logo is probably half the size of the (compressed) executable.

The low-poly models are created in Blender, and all created to be symmetric–having the engine mirror the meshes saves 50% of the vertex data. . Blender is just exporting half of a low-poly mesh; just as he wrote his own image editor, he has his own bespoke model tool. This allows tiling model elements, as well as handling bones and poses to keyframe the model’s animation.

Audio is treated similarly to textures and meshes: built up at runtime from stored data and a layered series of effects. When you realize all the sounds were put together in his sound tool from square and sine waves, it makes it very impressive. He’s also got an old-style tracker to create the music. All of these tools output byte arrays that get embedded directly in the game code.

The video also gets into some of his optimization techniques; we like his use of a map file and analyzing it with a python tool to find the exact size of game elements and test his optimizations thereby. One thing he notes is that his optmizations are all for space, not for speed. Except, perhaps, for one thing: [daivuk] created a new language and virtual machine for the game, which seems downright extravagant. It actually makes sense, though, as the virtual machine can be optimized for the limits of the game, as he explains starting at about 20 minutes into the video. Apparently it saved a whole 2kB, which seems like nothing these days but actually let [daivuk] fit an extra level into his 64kB limit. Sure, it’s still bigger than Quake13k–and how did we never cover that?–but you get a lot more game, too.

So, to recap: [daivuk] didn’t just make a game with an impressively tiny size on disk, he made the entire toolchain, and a language for it to boot. If you think this is overoptimized, check out Wolfenstien in 600 lines of AWK. Of course in spite of the 1980s file size, this needs modern hardware to run. You can get surprising graphics performance from a fraction of that, like this ATtiny sprite engine.

Thanks to [Keith Olson] for the tip, which probably took up more than 64kB on our tips line.

Continue reading “QUOD Is A Quake-Like In Only 64kB”

How To Restore Your 19th-Century Lancashire Boiler To Hold 120 PSI

The Industrial Revolution was powered by steam, with boilers being a crucial part of each steam engine, yet also one of the most dangerous elements due to the high pressures involved. The five Lancashire boilers at the Claymills Pumping Station are relatively benign in this regard, as they operate at a mere 80 PSI unlike e.g. high-pressure steam locomotives that can push 200 – 300 PSI. This doesn’t mean that refurbishing one of these boilers is an easy task and doesn’t involve plugging a lot of leaks, as the volunteers at this pumping station found out.

At this Victorian-era pumping station there are a total of five of these twin-flue Lancashire boilers, all about 90 years old after a 1930s-era replacement, with them all gradually being brought back into service. The subject of the video is boiler 1, which was last used in 1971 before the pumping station was decommissioned. Boilers 2 and 3 were known to be in a pretty bad condition, and they needed a replacement for boiler 5 as it was about to go down for maintenance soon.

Although the basic idea behind a Lancashire boiler is still to boil water to create steam, it’s engineered to do this as efficiently as possible to save fuel. This is why it has two flues where the burning coal deposits its thermal energy, which then goes on to heat the surrounding water. The resulting pressure from the steam also means that there are a lot of safeties to ensure that things do not get too spicy.

Continue reading “How To Restore Your 19th-Century Lancashire Boiler To Hold 120 PSI”

X-Ray A PCB Virtually

If you want to reverse engineer a PC board, you could do worse than X-ray it.  But thanks to [Philip Giacalone], you could just take a photo, load it into PCB Tracer, and annotate the images. You can see a few of a series of videos about the system below.

The tracer runs in your browser. It can let you mark traces, vias, components, and pads. You can annotate everything as you document it, and it can even call an AI model to help generate a schematic from the net list.

Continue reading “X-Ray A PCB Virtually”

ATABoy Is An Open Source USB Bridge For Old IDE Drives

You can get an IDE to USB bridge from all the usual sources, but you may find those fail on the older drives in your collection– apparently they require drives using logical block addressing, which did not become standard until the mid-1990s. Some while some older drives got in on the LBA game early, you were more likely to see Cylinder-Head-Sector (CHS) addressing. That’s why [JJ Dasher], a.k.a [redruM0381] created ATABoy, an open-source IDE bridge that can handle the oldest drives that fit on the bus.

The heart of the build is an RP2350, which serves as both IDE and USB host controller. To computer, after a little bit of setup, the drive attached to ATABoy shows up as a regular USB mass storage device. A little bit of setup is to be expected with drives of this vintage, you may remember. Luckily [JJ] included a handy BIOS-themed configuration utility that can be accessed through any serial console. He says you’ll usually be able to get away with “Auto Detect & Set Geometry,” but if you need to plug in the CHS values yourself, well, it’ll feel just like old times. Seeing is believing, so check it out in the demo video embedded below.

Though the custom PCB has a USB-C connector, and the USB-C standard could provide enough power for ye olde spinning rust drives, [JJ] didn’t include any power delivery with ATABoy. If you’re using it with a desktop, you can use the PSU in the box; MOLEX hasn’t changed. If you’re on a laptop, you’ll need another power supply– perhaps this USB-C powered benchtop unit.

If you’re using a Raspberry Pi or similar SBC, go ahead and skip USB entirely–the GIPO can do PATA IDE. Continue reading “ATABoy Is An Open Source USB Bridge For Old IDE Drives”

Tech In Plain Sight: Projection Clocks

You wake up in the middle of the night. Is it time to get up? Well, you can look at the nightstand clock. Unless your partner is in the way. Whoops. Even then, without your glasses, the time is just a fuzzball of light. You could ask Alexa, but that’s sure to wake your partner, too. The answer is a projection clock. In its modern form, it shoots a digital time display on a wall or ceiling with digits so large that you don’t need your glasses. If you can see the ceiling, you can tell what time it is.

New Tech

A modern invention, of course. No, not really. According to [Roger Russel], a UK patent in 1909 used an analog clock face and lightbulbs to project the clock face and hands on the ceiling. Unfortunately, [Roger’s] website is no more, but the Wayback Machine is on the job. You can see a device of the same type at the British Museum.

A modern projection clock on the ceiling.

In 1938, [Leendert Prins] filed for a patent on a similar projection clock. Sometimes known as “ceiling clocks” or “night clocks,” these devices often have a regular clock visible as well as a way to project the time. In the old days, this was often an image of a translucent analog clock lit up by light bulbs. In the modern era, it is almost always either LEDs or an LCD with a halogen backlight. Of course, there are many variations. A clock might use numbers on a rotating drum with a lamp behind it, for example.

Development

It isn’t hard to imagine someone putting a pocket watch in a magic lantern as a prototype. In general, some bright light source has to pass through a condenser lens. The light then travels through the LCD or translucent clock face. Finally, a projector lens expands the image.

We couldn’t find much about the actual history of old projection clocks outside of [Roger’s] defunct website. But if you can project an image and build a clock, all you need is the idea to combine them.

Continue reading “Tech In Plain Sight: Projection Clocks”

Nuclear Waste Remediation By Proton Beam

One of the issues with nuclear power plants is that they produce long-lived radioactive waste. Storing spent nuclear fuel is a real problem. However, researchers at the Department of Energy’s Thomas Jefferson National Accelerator Facility have made strides not only to produce more electricity from spent fuel but also to break it down into shorter-lived nuclear waste. [Aman Tripathi] shares the details about NEWTON, a program to fire high-energy protons at a target to produce a flood of neutrons that can interact with nuclear waste. You can read the original press release, too.

Short-lived, of course, is a relative term. Unprocessed spent fuel may be dangerous for about 100,000 years. After the proposed processing, the danger period is down to “only” 300 years. On the plus side, the process generates a lot of heat, which you can convert to electricity in the usual way.

Continue reading “Nuclear Waste Remediation By Proton Beam”

How Safe Are Old Airbags, Anyway?

Automotive airbags are key safety devices that aim to reduce injuries and mortality in the event of motor vehicle accidents. These rapidly-inflating cushions act to soften the blow of an impact, catching occupants of the vehicle and preventing them from hitting hard parts of the vehicle’s interior.

Airbags are rigorously tested to perform as faultlessly as possible under all conditions. However, no system is perfect, and every automotive component has an expected service life. The question is—how old is too old when it comes to airbags? The answer is not exactly straightforward.
Continue reading “How Safe Are Old Airbags, Anyway?”