heckmeck!

Nerd content and
cringe since 1999

Alexander Grupe
Losso/ATW

April 2025

Blog

2025-052025-03

Some link clearance while pondering about new projects… Earlier: What’s Cool? · What’s Cool? II

  • The origins of DEL (0x7F) and its Legacy in Amiga ASCII art
    On the Amiga, the non-printable DEL control code is mapped to a printable character and has thus been used extensively in ASCII art. Well-curated deep dive with lovely example pieces. Cool: My post on different Topaz versions is cited in Part 2! :)
  • The Other TOS System Font
    Speaking of font archeology: Here’s a compilation of subtle differences in the system font characters, but on the Atari ST. Gotta say, the TOS ROM fonts also have a lovely retro charm to them, and I’m envious of all the extra glyphs and the fact that they included font variants for 1:1 and 1:2 pixel ratios.
  • Inside Commodore Amiga’s History Part 2
    Another panel of ex-Commodorists held at VCF East 2025! Features some stories of the Amiga launch event with Andy Warhol and Debbie Harry, how the CDTV came to be, and much more. (They once hacked up an Amiga 500 in an SX-64 case – what?!)
  • Honest and Elitist Thoughts on Why Computers Were More Fun Before
    In one way or another, we’re all chasing that certain retro computing nostalgia, the thrill and amazement we felt back in the day. I for sure am! But why exactly? And what has changed since computers became omnipresent, incredibly powerful, and a commodity in everyone’s day-to-day lives? Funnily enough, these recollections and musings themselves manage to give me goosebumps. :)
  • Wie Amiga nach Deutschland kam: Geschichte von Peter Kittel, der bis zum Ende an Commodore glaubte
    (German) Christian Spanik im Gespräch mit Dr. Peter Kittel – ein Name, der mir als jungem Amiga-Fan natürlich seit jeher ein Begriff war! Ich war sogar ein bisschen Peter-Kittel-Fan und kurz davor, die eigentlich korrektere Eindeutschung „edieren“ statt „editieren“ zu übernehmen. Seine eigene Homepage wird übrigens bis heute aktualisiert und ist eine Fundgrube für allerlei Commodore-Geschichten und einiges mehr.

As expected, Revision 2025 was a blast again, and also as expected, I did not magically find enough time to finish the little entry I was working on.

I’m burning to check out all the amazing Amiga entries we had, but I’m also burning physically after all the buildup/teardown/infodesk work, so this will have to wait a bit…

I did, however, manage to do a belated release of a little birthday entry I did for JobJ’s demoparty event back in February: a numbers game. At the time, I was too stupid to send it to JobJ properly – who would have thought that Google Mail will filter out e-mails with a ZIP attachment containing a weird EXE file…? :)

Old school organizer Charlie was so kind and sneaked it into the test compo before the party (which included testing, recording, and scheduling the entry) – thanks a million for that!

With Revision’s deadlines looming and the party build-up starting tomorrow later today, my time budget for a potential size-coded Amiga release doesn’t look too good anymore… That’s life!

But at least I had some time to revisit my packer setup between my last work day before Easter and packing my luggage. Behold, the magic of known register contents at boot time across Kickstart versions!

Kickstart 1.2Kickstart 1.3Kickstart 2.04Kickstart 3.1
d000000000000000000000000000000809
d18000ffff8000ffff0000ffff00000808
d200000001000000010000000100000001
d300000000000000000000d6880000ad48
d400000000000000000000146800001520
d500000000000000000000000000000000
d6ffffffffffffffffffffffffffffffff
d700000000000000000000000000000000
a000001958000019580000dfb80000ed38
a100c014e600c014e20000d54c0000e2c4
a200c0185cffffffff0000d5300000e2a8
a300fe8b3a00fe86ee0000d54c0000e2c4
a4000015580000155800003e4c00002708
a500c014ba00c014b600000a4400000a74
a600c0027600c002760000146800001520
a700c014b600c014b200003e10000026cc
pc00001564000015640000dfc40000ed44

Note: Of course, this is not an exhaustive list; these are merely samples of the most common configuations: Amiga 500 with 512+512K RAM for 1.2 and 1.3, Amiga 500+ for 2.04, vanilla Amiga 1200 for 3.1

Warning: The values for d6 and d7 will differ if the bootblock is run after a guru meditation! For example, after this:

…d6 and d7 will contain 00000004 and 00c01570 instead of -1 and 0. Thanks to platon42 for the hint!

This gives us:

RegisterContents
d2Constant value 00000001
d5Constant value 00000000
d6Constant value ffffffff – see warning above!
d7Constant value 00000000 – see warning above!
a1IORequest, as specified by the OS
a6exec.library, as specified by the OS
pc12 bytes after the bootblock content as it was loaded from disk (i. e. 'DOS',0 followed by checksum and rootblock longwords)

Nifty! Together with some register shuffling, we can then use these values to omit some constant initializations in the depacker code.

Shrinkler (source) – 4 bytes saved:

ShrinklerDecompress:
        ; Init range decoder state
        moveq.l #0,d2           ; omit, use d5 instead
        moveq.l #1,d3           ; omit, use d2 instead
        ...

ZX0 (source) – 2 bytes saved:

zx0_decompress:
        moveq.l #-128,d1        ; initialize empty bit queue
        moveq.l #-1,d2          ; omit, use d6 instead
        ...

I love that each of the constant values 0, 1, and -1 is useful! :)

For both packers, the bootblock on disk then starts like this:

        dc.b    'DOS',0
        dc.l    0               ; checksum will be inserted here
root:   dc.l    $20000          ; destinaton; normally 880 = rootblock
entry:  move.l  root(pc),aX     ; load destination address
        lea     packed(pc),aY   ; load packed data
        pea     (aX)            ; rts will jump into unpacked code
        ...                     ; decompress code starts here

New lore on “New Topaz” has dropped, i. e. the modernized sans-serif system font used in AmigaOS 2.0 and later.

Peter Cherna at VCF East 2025

During the “Inside Commodore Amiga’s History” discussion panel at VCF East 2025, ex-Commodore software engineer Peter Cherna talked a bit about the overall new look introduced in 2.0 (still called 1.4 when he started), and the new Topaz font in particular:

There was an agreement that we were going to have a sans-serif font – we still had the old Topaz in there – and then Kodiak Burns in California kind of forced the issue and picked a slightly ugly sans-serif font.

We found a font floating around on the not-internet at the time that was derived from Topaz. Basically, it was Topaz with all the serifs removed.

That’s how the weird 1.4 version that can be found in Kickstart 1.4 Alpha 18 came to be. Bob “Kodiak” Burns is the creator of the original Topaz fonts.

So I went and cleaned it all up and fixed a bunch of the letters and the lowercase “L” to make it not look like a vertical bar, and “I” has a little curl at the bottom. That was very contentious, a lot of people thought that it was wrong. I was very insistent because I wanted it to be distinctive for legibility.

Turns out it’s a big contribution to the personality of the new font as well.

Indeed! I remember being really excited of the modern new 2.0 look when I was a teenager, and New Topaz had a big part in that, with the new Amigas feeling way more professional and all. I loved working with New Topaz so much I even destested the old, “ugly” variant a bit – but not anymore! :)

The font that was “floating around” probably was a variant of clean.font. All the specimen I’ve seen on textfiles.com indeed have a vertical bar for the lowercase L.

Here’s a screenshot of Workbench 1.4 Alpha 15 running on Kickstart 1.4 Alpha 18. This seems to be an inbetween snapshot: The lowercase L already has its little curl, but the lowercase I hasn’t, and a lot of letters still look wonky.

Topaz in Kickstart 1.4 Alpha 18
Topaz 9 variant in the boot screen

Anyhow, don’t forget to watch the whole panel on Amiga Bill’s channel. They even have an original Amiga breadboard prototype on stage!

Let’s feel stupid, then

Weird: Google has notified me that search hits for “joys of feeling stupid” have gone through the roof! 250 search result clicks in a month is a lot, at least for this humble website.

I mean, it was nice blog post, but it is hardly what people are looking for when googling that, I suppose?! Even weirder: “joys of feeling stupid” doesn’t seem to be a comtemporary viral video, song, or article. What gives?

I don’t really know, but that’s okay. Fitting, even – the mystery of “joys of feeling stupid” making me feel… you know. :)

Update: Mystery solved!

A helpful visitor of this blog (thanks, beni!) pointed me to the source. It’s from an interview (in Turkish) with Beliz Günel, senior research scientist at Google DeepMind. Around 3:45, she mentions her mentor who…

…made me read one article, I remember it very much: “Joys of feeling stupid” I liked feeling stupid like that.
Screenshot from Kesişen Yollar’s YouTube channel

Now I want to dig up that article, too, of course! :) Since Günel graduated at Stanford, maybe it’s this article hosted at stanford.edu?

Hacker News featured a link to developer.chrome.com: “Select fields can now be styled” Interesting, let’s click this link! This is what I got:

Yes, that’s the whole page. Somewhat cool, just: Das Element and nothing else. Maybe the start of a Rammstein song? :) But I did expect to read more on the topic…

That “switch to English” button already gives a hint who’s at fault. The original English version of the page looks intact:

So, a “helpful” auto-translate service strikes again! This time, it’s not focused on mis-translating technical terms, though, but rather messing up the HTML markup… Danke! :)

previous next close