Where’s the last place you’d expect to be able to play a game on your computer? The word processing program? Image editor? How about your text editor? That’s right — you can fight your Fontemons in any program that makes use of fonts, because mad genius [Michael Mulet] has created a game that exists entirely within a single Open Type font file.
[Michael] has harnessed the power of ligatures to create a choose-your-own-adventure-style turn-based game that pokes fun at both Pokemon and various typeface names. You start by choosing between Papyromaniac, Verdanta, and Proggito and face off against enemies like Helvetikhan and Scourier.
This works because there are many ways to draw glyphs on a screen. [Michael] chose Type 2 Charstrings, which is a vector graphics format that Adobe created for PostScript. It can draw pixels with a series of move specifications that tell it to draw up, to the right, and then back down before closing off the pixel with an implicit operator that draws from the starting point to the ending point. [Michael] was able to create two shades of gray by drawing smaller versions of the pixels and making the image by combining white and black pixels.
If you just want to play the game, you can either download the .otf file or just try it out in the browser. You’re supposed to use ‘a’ and ‘b’ to make choices that advance the game, but we soon discovered that spamming other keys like ‘v’ and Enter will lead to strange places. If you play it straight, it takes about 20 minutes, but there are enough secrets built in to make it last five times as long. [Michael] was kind enough to create a tutorial for making font-based games, but if you just want to get going, the game engine is open source.
What other fun things can you do on that locked-down work computer? If it has Excel, you can use it to do animation or just kick back and watch a movie.
Here’s a neat little trick: take the jaggies out of scaled fonts on the fly! This technique is for use on graphic displays where you might want to scale your fonts up. Normally you’d just write a 2×2 block of pixels for every area where there would have been one pixel and boom, larger font. Problem is, that also multiplies each empty area and you end up with jagged edges in the transitions that really catch your eye.
[David Johnson-Davies] entered big-brain mode and did something much cleverer than the obvious solution of using multiple font files. Turns out if you analyze the smoothing problem you’ll realize that it’s only the angled areas that are to blame, horizontal and vertical scaling are nice and smooth. [David’s] fix looks for checker patterns in what’s being drawn, adding a single pixel in the blank spots to smooth out the edge incredibly well!
The technique has been packaged up in a simple function that [David] wrote to play nicely in the Arduino ecosystem. However, the routine is straightforward and would be quick to implement no matter the language or controller. Keep this one in your back pocket!
Now if all you have on hand is an HD44780 character LCD, that one’s arguably even more fun to hack around on just because you’re so limited on going beyond the hard-coded font set. We’ve seen amazing things like using the custom character slots to play Tetris.
We live in a strange time indeed. People who once eschewed direct interactions with fellow humans now crave it, but to limited avail. Almost every cashier at the few stores deigned essential enough to maintain operations are sealed away behind plastic shields, with the implication that the less time one spends lingering, the better. It’s enough to turn an introvert into an extrovert, at least until the barriers are gone.
We get the idea that the need to reach out and touch someone is behind [Niklas Roy]’s “Please Leave a Message”, an interactive art installation he set up in the front window of his Berlin shop. Conveniently located on a downtown street, his shop is perfectly positioned to attract foot traffic, and his display is designed to catch the eye and perhaps crack a smile. The device consists of a large wooden easel holding the guts from an old X-Y pen plotter, an Arduino and an ESP-8266, and a couple of drivers for the plotter’s steppers. Passers-by are encouraged to scan a QR code that accesses a web page served up by the ESP-8266, where they can type in a brief message. The plotter dutifully spells it out on a scroll of paper for all to see, using a very nice font that [Niklas] designed to be both readable and easily plotted. The video below shows it in action with real people; it seems to be a crowd-pleaser.
[Niklas] has been incredibly prolific, and we’ve covered many of his interactive art installations. Just search for his name and you’ll find everything from a pressure-washer dancing waters display to a plus-sized pinball machine.
Continue reading “How Much Is That Plotter In The Window?”
“Not as clumsy or random as Windows. An elegant terminal, for a more civilized age.” [Ben Kenobi] might well have said that about the Hewlett-Packard 264x-series of serial terminals, in use starting at just about the time the original installment of the Star Wars franchise was released. With their wide-screen CRTs and toaster-oven aesthetic, they were oddballs in the terminal market, and [CuriousMarc] has gone and made one even odder by converting an H-P 2645A to display the Aurebesh character set from the movies.
A look under the hood of this lovely bit of retrocomputing history makes one think the designers almost foresaw the need to add support for a made-up language nearly half a century later. The terminal has a backplane and bus for pluggable cards, one of which carries the ROMs that [Marc] extracted and reprogrammed with the Aurebesh characters. He had a little trouble at first, needing to bodge the chip select and forgetting that he had made other “special modifications” to the terminal. The video below shows the results, along with some fatherly mortification of his daughters and a suitable tribute to the lately late [Peter Mayhew], he who donned the Wookiee suit and made a seven-foot space Sasquatch lovable.
Need more for you “May the Fourth” fix? How about a clumsy and random blaster, a cosplay speeder bike, or a fleet of droids?
Continue reading “Vintage Terminal Converted For Galactic Use In Time For May The Fourth”
There is a huge variety of hardware out there with a font of some form or other baked into the ROM. If it’s got a display it needs a font, and invariably that font is stored as a raster. Finding these fonts is trivial – dump the ROM, render it as a bitmap, and voilà – there’s your font. However, what if you’re trying to dump the font from a vintage Apple 410 Color Plotter? It’s stored in a vector format, and your job just got a whole lot harder.
The problem with a vector font is that the letters aren’t stored as individual images, but as a series of instructions that, when parsed correctly, draw the character. This has many benefits for generating characters in all manner of different sizes, but makes the font itself much harder to find in a ROM dump. You’re looking for both the instructions that generate the characters, as well as the code used to draw them, if you want a full representation of the font.
The project begins by looking at what’s known about the plotter. The first part of any such job is always knowing where to look, of course. It’s quickly determined that the font is definitely stored in the main ROM, and that there is no other special vector drawing chip or ROMs on board. The article then steps through the search process, beginning with plaintext searches of the binary dump, before progressing to a full disassembly of the plotter firmware. After testing out various assumptions and working methodically, the vector data is found and eventually converted into a modern TrueType font.
In the end, the project is successful, and it’s a great guide on how to approach similar projects. The key is to lay out everything you know at the start, and use that to guide your search step by step, testing and discarding assumptions until you hit paydirt. We’ve seen similar works before, like this project to dump the voice from an ancient Chrysler Electronic Voice Alert.
In the open-source world, there are two main choices for PCB design: KiCad and gEDA. But if you’re tired of the boring Hershey fonts telling you which resistor is which, or if you need to comply with ISO 3098, there’s one clear choice: PCB-RND, the improved fork of gEDA’s PCB tool. Why?
Because PCB-RND now supports osifont, which supports a ridiculous number of languages. In addition to the usual suspects, like Azerbaijani through Vietnamese, support has also been added for legacy users, including those of Middle Earth, who build PCBs that can only be read when the thrush knocks by the setting sun of the last light on Durin’s Day.
And they haven’t stopped there. Looking forward to the Treaty of Organia in 2267, you can now create PCBs that are fully plqaD-HaSta compliant.
We’re glad to see these important steps made toward reaching out to underserved PCB-constructing communities. However, we’re appalled at the continuing lack of support for Rihannsu. This will have to be rectified by anyone who wants to push their projects in the Beta Quadrant.
After hour and hours spent in front of a terminal or IDE, a user begins to build a list of infuriating little things. That one pop-up box that happens every time you press that button by mistake. The noise the software makes when the compile fails. Or the horrible reality that your code just crashed because there wasn’t enough difference between uppercase ‘O’ and a zero. In comes the programming font.
The typical way to find a programming font is to troll forums for a user with a similar problem and see if they have a workable solution. [Koen Lageveen] went out and found nearly all of the free programming fonts out there and compiled a list. He then took one more step and wrote a web app that lets you test them out. Hopefully this will help those in the very real struggle for the perfect programming font. You can try out the tool for yourself, and if you really like it [Koen] has all the code up for it on his GitHub.
[via Hacker News]