Game Graphics: Rasterization

Last time, I talked about racing the beam, a type of graphics used when memory was scarce. Now it’s time to step into the future with more memory and talk about what modern 2D games still do to this day: rasterization.

Just in time Memory

Continuing the trend set by racing the beam, rasterized graphics are also on a grid, just a much tinier one. Though not unique to rasterized, the “frame buffer” is the logical conclusion of bitmap mode fidelity: enough memory is allocated so that every pixel can have its own color. What’s different about a frame buffer is that everything is drawn before it is shown and, crucially, this doesn’t have to happen in the same order as the pixels are displayed. Rasterization draws entire shapes — triangles, lines and rectangles — into the frame buffer and the screen is typically updated all at once. Continue reading “Game Graphics: Rasterization”

PC-9801 system. (Credit: MH0301 - Own work, CC BY-SA 4.0)

The Strange World Of Japan’s PC-98 Computer Ecosystem

Despite the popularity of the IBM PC in the West during the 1980s, it had shortcomings that prevented it from flourishing in the Japanese market, most of all support for the Japanese language. This led to a sort of parallel universe in which NEC’s PC-9800 series (‘PC-98’) was the dominant personal computer, including its NEC µPD7220 display controller with its 4096-color palette. These computer systems led to a graphics style that persists to today, along with a whole ecosystem of games and applications that never left the PC-98. In an article by [Biz Davis] this software ecosystem, its art style and their lasting impact is explored.

Screenshots from X-Girl, a PC-98 game from 1994.
Screenshots from X-Girl, a PC-98 game from 1994.

Although the NEC PC-9800 series of computers was primarily focused on Japanese businesses with its release in the early 1980s, it found itself adopted for educational and hobby purposes as well. During the 1980s and early 1990s they faced little opposition from IBM PCs and clones, despite them all being x86-based systems running DOS. It wasn’t until the early 1990s that mostly US companies began to explicitly design computers to work for the Japanese market, leading to a gradual decline of the PC-9800 series PCs in the market.

Despite the last PC-98 system having been released in 2000 – with the last systems running some flavor of Windows – these systems and the software for them isn’t just a unique time capsule of this part of Japan’s history, but continues to see new software releases to this day. If you wish to experience this software for yourself, a number of open source PC-9800 emulators are available, including the nyan-tastic Neko Project II.

Top image: PC-9801 system. (Credit: MH0301 – Own work, CC BY-SA 4.0)

Open Source Scanner Scans The Slides

What do you get when you join a slide projector and a digital camera? Filmolimo, an open source slide scanner. The scanner uses an M5Stack Fire, an ESP32 development board. Thanks to the ESP32, you can control the device via WiFi.

All the project files, including KiCAD design files, are on GitHub. Of course, you will probably have to adapt things to your specific camera and slide projector. The PCB is double-sided and looks easy to put together. The board is mostly opto-isolation and interface between the controller and the equipment. The software allows you to change things like the time between slides, for example.

This is one of those projects you probably only need for a bit. Unless, of course, you regularly scan slides. You can farm it out to a service provider, but what fun is that? If you have a few hundred thousand slides, you might need to go for speed. If you just have a few, you can get by with a simple adapter.

A Web Server, The Sixteen Bit Way

If you were to talk about sixteen bit computing in retrocomputing circles, misty-eyed reminiscences of the ST or Amiga would emerge. Both fine platforms, but oddly the elephant in the 16-bit room has become a victim of its own success. DOS, the granddaddy of all PC operating systems, seems oddly overshadowed by its 68000-based competitors in a way it certainly wasn’t back in the day. Perhaps it’s the often-atrocious graphics when cards designed for business graphics were pressed into gaming service, but it’s easy to forget that DOS PCs were the powerhouses of their day. They still pack a punch even in 2023, as [Lunduke] is here to show us by running a DOS web server. Take that, nginx! Continue reading “A Web Server, The Sixteen Bit Way”

Audio Synthesizer Hooked Up With ChatGPT Interface

ChatGPT is being asked to handle all kinds of weird tasks, from determining whether written text was created by an AI, to answering homework questions, and much more. It’s good at some of these tasks, and absolutely incapable of others. [Filipe dos Santos Branco] and [Edward Gu] had an out of the box idea, though. What if ChatGPT could do something musical?

They built a system that, at the press of a button, would query ChatGPT for a 10-note melody in a given musical key. Once the note sequence is generated by the large language model, it’s played out by a PWM-based synthesizer running on a Raspberry Pi Pico.

Ultimately, ChatGPT is no musical genius. It’s simply picking a bunch of notes from a list that are known to work together melodically; that’s the whole point of musical keys. It would have been wild if it generated some riffs on the level of Stairway to Heaven or Spontaneous Devotion, but that might be asking for too much.

Here’s the question, though. If you trained a large language model, but got it to digest sheet music instead of written texts… could it learn to write music in various genres and styles? If someone isn’t working on that already, there’s surely an entire PhD you could get out of that idea alone. We should talk!

In any case, it’s one of the more creative projects from the ever-popular ECE 4760 class at Cornell. We’ve featured a bunch of projects from the class over the years, and noted how the course now runs on the RP2040. Continue reading “Audio Synthesizer Hooked Up With ChatGPT Interface”

The Tech That Died In 2023

We don’t indulge too often in looking back, but [Chloe Albanesisu] at PC Magazine did and wrote the tech obituary for all the tech gadgets and services that died over this past year. Some of the entries are a bit predictable: Twitter died to be replaced by X, which is exactly like it, only different. Others we hardly noticed, like Netflix stopping its DVD shipments.

Google Glass died again, but this time it was the enterprise edition. Amazon gave up on both donating money through shopping and print subscriptions via Kindle.

Glass wasn’t the only Google casualty. Gmail lost its basic HTML version and shut down its smart whiteboard product, Jamboard. They also sold off their Internet domain business in an effort to focus on core businesses. Other notable Google shutdowns include their popular podcast app and Usenet support for Groups. Oh, and don’t forget their experiment in offering Pixels phones as a subscription. That’s done, too.

As you might expect, PC Magazine’s list is a bit consumer-oriented. What hacker-centric products and services vanished this year that you’ll miss? The Sculpteo Marketplace? XYZ Printing? Start up companies collapsed in 2023 at an alarming rate, but you didn’t hear about most of them. Were there any you were especially disappointed about? Let us know in the comments.

Building A Rad Super Capacitor RC Plane

[Tom Stanton] is a fan of things like rubber band planes, and has built many of his own air-powered models over the years. Now, he’s built a model powered by a supercapacitor for a thoroughly modern twist on stored-energy flying toys.

It’s not a wholly original idea; [Tom] was inspired by a toy he bought off-the-shelf. His idea, though, was to make one that could be hand-cranked to charge it to make it more like the rubber-band planes of old. He thus built his own geared generator for the job using a big pile of magnets and 3D printed components. It’s capable of putting out around 17 volts when cranked at a reasonable speed. Hooked up to the toy plane, his hand-crank generator was able to fully charge the plane in just a few turns.

His generator was really overkill for the small toy, though. Thus, he elected to build himself a much larger supercapacitor-powered model. He wired up a pack of six supercapacitors in series, designed for roughly 18 volts. The pack was given balance leads to ensure that no individual capacitor was charged beyond its 3.0 V rating. The pack was placed inside a nice aerodynamic printed fuselage. The plane was then given a brushless motor and prop, speed controller, servos, and an RC receiver. Indeed, far from a simple throwable model, it’s a fully flyable RC plane.

The plane is quite a capable flyer with plenty of power, but a fairly short run time of just under two minutes. Though, with that said, it can be recharged in just about that same amount of time thanks to its supercapacitor power supply. [Tom] reckons it should be capable of a 1:1 crank time to flight time ratio in ideal conditions.

Supercapacitors are super cool, but we don’t see enough of them. They’ve popped up here and there, and obviously have many important applications, but we’re not sure they’ve had a real killer app in the consumer space. XV Racers were killer fun, though. Continue reading “Building A Rad Super Capacitor RC Plane”