Hacker News new | past | comments | ask | show | jobs | submit login
Topaz Unicode (gitlab.com/screwtapello)
129 points by todsacerdoti 9 months ago | hide | past | favorite | 29 comments



Nice. I worked at Commodore and was responsible (ish) for the new Topaz for OS 2.0. We had been told to replace Topaz with a sans-serif font, and we replaced it with a font originally called "Clear" that was on one of the Fred Fish disks.

There was a big argument over the lower-case L. It has a rightward curl at the base even though it's sans-serif. This is widely seen now, but we had a lot of pushback at the time.

Topaz shipped in an 8-point and 9-point version. As I mentioned, we used Clear, maybe with a few mods (ampersand maybe), but that only existed in 8-point. I drew Topaz 9 sans-serif by starting with Topaz 9, and shaving off the serifs, and making minor tweaks.


Hehe, thinking maybe the font we used was called "Clean", not "Clear".


I went looking. The font "Clean" that's part of the NewFonts package on Fish disk 34 is pretty much identical to the font I've seen that was included in 1.4 prototypes. Kinda similar to a proportional font that shipped with DPaint IV if I'm not mistaken


I think I'm blending two things then. I looked at a few old notes, and one of the devs replaced Topaz in Kickstart with what you see as the 1.4 font, as a way to kind of force the issue, since we hadn't really done any work to make or obtain a sans-serif font. Nobody wanted that font, which turned up the pressure.

I guess in addition to shaving the serifs off Topaz 9, I also did Topaz 8. And "Clean" was the source of the interim font, not of new Topaz. Memories fade, and thanks for the extra info.


This is the version of Topaz that came with KS (Kickstart) version 1.x. Commodore revised the font for KS 2.x: https://csdb.dk/gfx/releases/121000/121035.png


Nitpick: Topaz shipped with the Amiga 1000 in 1985.


As I understand it, the Kickstart ROM wasn't ready in time for the Amiga 1000's release, so you had to boot off a Kickstart disk which loaded the "permanent" resources into RAM, then swap to the Workbench disk which loaded the GUI. So although Topaz shipped with the Amiga 1000 (on floppy disk), I wasn't comfortable calling it part of the Amiga 1000 the way it was part of the Amiga 500.


That’s correct. I had a Kickstart 1.1 disk to boot from. I feel like the Kickstart on that floppy was as much a part of the A1000 as the Kickstart on the A500’s ROM was part of it. The only difference is was the media it loaded from.


"It's a single-size bitmap font, and most modern operating systems have dropped support for anything but TrueType and OpenType scalable fonts."

Not that I would recommend it or had an example where it was successfully done, but I think technically OpenType can contain bitmap fonts also.


OpenType can contain vector outlines, hinting instructions to align those outlines to pixel boundaries at low resolutions, and also pre-rendered bitmaps for systems that don't want to run the hinting VM for each glyph. Some tools will let you make an OpenType font with only pre-rendered bitmaps, but I think there's still systems that don't render such a font correctly, and also I don't think you can store multiple sizes of pre-rendered bitmaps, so you still only get one size. The technique used here (turning each source pixel into a vector square) renders just as crisply at the right size, and is more compatible.


Not an OpenType expert but there seem to be two ways to store bitmap data: EBDT and sbits. From what I understand, both can store different sizes. For the latter the Microsoft documentation is pretty clear: "A font can also include different bitmap data for different sizes (“strikes”)"

https://learn.microsoft.com/en-us/typography/opentype/spec/s...


I was hoping that would be the case!

Unfortunately, the bitmap font manipulation tools I'm using (monobit¹ and BitsNPicas²) do not support putting more than one strike into an OpenType wrapper. If there's some other tool that can do that assembly, I'd like to hear about it.

¹: https://github.com/robhagemans/monobit/

²: https://github.com/kreativekorp/bitsnpicas/


I have not tried it, but what I read from Fontforge's documentation sounds a lot like it could do it.

https://fontforge.org/docs/tutorial/editexample8.html

Also Glyphs 3 seems to support it. "Each glyph contains a single image file. However, images can be provided for different pixel sizes.". It's been years since I last worked with Glyphs and back then it was more of a creation tool than an editor. I don't know if that has changed.


tl;dr monospace bitmap font inspired from amiga 500. The page includes a picture. You can download a copy [0].

[0] https://gitlab.com/Screwtapello/topaz-unicode/-/jobs/6024060...


Wait a second, is this the same font used by QBASIC.EXE and EDIT.EXE?


This is Topaz, specifically the version used in the 1.x series of AmigaOS releases. It is very similar to the original IBM CGA/BIOS font but not identical.


The font names are edit.exe?

I always found it strange that fonts are executables and yet we hear so few uses of fonts as malware.

The Linux repo for Ms fonts seems like such a perfect way to get RCE on Linux computer due to the number of people that need some crappy Times New Roman for a paper submission requirement. They're even called TimesNewRoman.exe or Arial.exe.


Fonts are not executable files, those are the official redistributables by Microsoft to install those fonts on systems where they are missing. TrueType fonts are a highly complex file format though, so there have been plenty of RCEs due to broken font parsing in the past.


Fonts are not executables in the way you think they are. They do have code for hinting, but it is not executable in the sense of x86 or ARM code. It’s a custom bytecode designed for an interpreter. If a font is being distributed as an executable, that’s because someone’s wrapped it in an installer.


Maybe I misunderstand you: I believe they are saying that EDIT.EXE, an executable that edited text, used the Topaz font. Microsoft Word uses fonts, but those fonts aren't named "Word".


Yes and they're also extracted without execution if you install them on Linux. I believe they're self-extracting CABs


Nope. Microsoft had their own font that was different from Topaz.


Not quite. QBASIC.EXE/EDIT.EXE use the text mode ROM font. If you didn't load a specific font in DOS (e.g. to switch code pages), you'd get whatever your graphic card's ROM shipped with.


Fair, so I guess it was most often IBM’s font with those programs. It definitely wasn’t Topaz, though.


You’re right. Topaz is eerily familiar though, and I never used an Amiga. Wondering if a well-known MSDOS program used it. Turbo Pascal?


Those are text mode DOS programs and used whatever font was in the graphics card’s character ROM. Perhaps you’re thinking of IBM’s CGA or EGA fonts, which were somewhat similar.

https://int10h.org/oldschool-pc-fonts/fontlist/


I had a CGA graphics card, and it’s quite possible I’m remembering the CGA-2y font!


They were all similar in a lot of ways. There are only so many ways you can draw the Latin alphabet in an 8x8 grid. There were plenty of variants to be sure, with different baselines, serif vs sans, kinda of descenders, and all that. Still, it’s inevitable that several are going to look similar.

But Topaz was a Commodore font, and I’m sure no other OS distributed it.


If you're British, then you might recall 'The Chart Show' in the 80s/90s that used an Amiga interface as the overlay. Otherwise, it's pretty iconic..




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: