Alt Codes

bobdigi's picture

How come character map doesn't show me alt codes for every glyph? And what's the logic behind the numeration?

hrant's picture

I think those codes are only for ASCII-8 characters. Note that the leading zero is a "trigger", so you really only have 1000 possible codes anyway. But only 0 to 255 are implemented. In fact try Alt-0321: you get "A". Because 321 = 65 (the code for "A") plus 256. So it's just cycling through (like how 370 degrees is the same as 10 degrees).

And logic?! :-)

hhp

bobdigi's picture

Perfect, thanks for the quick lesson!

Té Rowan's picture

Microsoft. Logic. Choose one.

The initial zero is a trigger allright, but for the incoming strokes to be interpreted as Windows-1252 or Unicode (on later and chromier Windowses) instead of CP437 or whatever your local DOS codepage is.

The zero may not be needed on DOS-less Windows (anything after XP, I think), but I don't know for sure.

hrant's picture

AFAIR doing codes without a leading zero goes to an alternative encoding, like EBCDIC or something.

BTW, I'm pretty sure the ASCII (even -8) arrangement predates Microsoft.

hhp

Té Rowan's picture

Nah... I don't think Microsoft ever did EBCDIC. Too IBMish, even for them. No, I'm sure the Win98 user manual said that without the zero, it went by the DOS code page, and my own checks seem to confirm that with Alt-165 returning Ñ and Alt-224 returning Ó, both proper for code page 850.

hrant's picture

Does that mean it lets you do those cute rules and borders?

hhp

Té Rowan's picture

When I shell out to DOS it does. In Windows I only get ASCII approximations. Guess that's to be expected, since Windows-1252 does not have the borders anyway.

hrant's picture

What if you switch to some sort of console font?

hhp

Theunis de Jong's picture

Arial Unicode contains and displays these characters, but of course it's a proportional font. Fortunally, Courier New works better:

-- gosh, I even could recall the Alt codes! Ah, those good old memories of creating user interfaces with these.

(BTW This is with InDesign on Windows 7.)

Té Rowan's picture

...our salad days, when we were still green to the world...

@Hrant – Nope, not even when I choose Terminal (an OEM/DOS font) in Notepad. Mind, the zero prefix does the trick, then.

Of course, the Win98 machine has accumulated all sorts of patches and stuff, and I can no longer remember if using the DOS codes worked fully on base Win98.

@Theunis – I recall (re)writing some UI routines in Turbo Pascal, which was of course the other language for the laity after GWBASIC.

Yuck. Never liked Microsoft-style BASICs. But then, I did own a QL.

hrant's picture

Theunis, way cool. We can start the next retro trend with this puppy. :-)

Reynir: Pascal, eh? I used to put up "Dijkstra is a Wimp" flyers at my school. When they tore them down I added a perfectly forged "Approved for posting by the School of Engineering and Computer Science"* stamp. That made 'em last much longer. I defended "goto" like there was no tomorrow; microcode is still only for the fully spined.

* An ironic acronym if there ever was one.

hhp

Theunis de Jong's picture

Té, have you tried Courier New? Strangely enough, Terminal doesn't work for me either, but CN does it, well, out of the retro-box! I didn't even had to select the OEM Charset first.

Wikipedia on Box Characters shows that Unicode nowadays includes rounded corners to match. And they added a little bit more order to the set ... My bottom line in the image shows codes 179 to 202 (ish), a pretty random order.

It would be cool to see the box set in a modern font -- matching the rest of the font in style, of course!

hrant's picture

Granjon would've had a field day with this.

hhp

Té Rowan's picture

Nope, CN is no help in '98. But since '98 is pre-Unicodification anyway...

Needed to look it up, but the CPC6128 at least had line-drawing characters with rounded corners. Well, as rounded as an 8×8 grid allows.

@hrant – According to later info, it was the editor of the piece, one N. Wirth, that changed the title to "GOTO Considered Harmful". Dijkstra's name was "A Case Against the GO TO Statement".

Turbo Pascal isn't a standard Pascal, but more like a Pascal in dungarees.

Syndicate content Syndicate content