That's what I thought too. And WordStar and WordPerfect predated this character set by a couple of years, and then MultiMate and Word after.
But googling screenshots of all of them, I can't find any use of this character in their rulers. It's all dots, numbers, and bracket symbols.
So I think the end of the article is right -- it's a delta triangle that, for various reasons, got corrupted into that shape:
> If even the actual Greek uppercase delta is, quite unmistakenly, rendered as a house, then the theory that DEL is just a badly formed uppercase Greek delta character with the bottom corners cut off (due to a lack of horizontal pixels) starts to seem more and more convincing.
Yup. There are also a ton of other Greek letters in row E used in math... and no uppercase delta, which you'd obviously want, even more than many of the others. The only reason they wouldn't have included it down there was because they already included it above, exactly because it's DELta.
It still doesn't answer why it's a short uppercase delta though... I can only guess there was a failure of communication somewhere between who chose the character set and who drew the pixels...
I agree; I always thought of it as a kind of cursor / pointer symbol. I used to do high ASCII art (nothing to write home about) and became pretty familiar with CP437, so I was wracking my brain trying to figure out what the "little house" was going to be.
I notice that cp437 has enspace, so I wonder if enspace combined with the "small house", is used to indicate the insertion point, or position between two characters when producing error messages.
Wow this is a beautiful article. I love Code page 437 - my first experiences with computers used it. I made two little things that are a homage to the pixelated and "cyberpunk" "screaming electron" "information superhighway" glory that is IBM Code Page 437:
1. Endless scrolling random Code Page 437 text: https://o0101.github.io/random/ (but it seems to be broken indicated by an overabundance of the non-existent "block question mark". Code here in case anyone wants to submit a fix :) : https://github.com/o0101/random)
2. Base-437 - a way to encode any binary file into faithful-to-code-page-437-glyphs that you can nevertheless throw into HTML no problemo: https://browserbox.github.io/Base437/This means, for instance, you can have a "data:image/png;base437,ëPNG♪◙→◙ ♪IHDR ◘♠ \r¿f ♦gAMA Åⁿa♣ cHRM z& Çä · ÇΦ u..." URI for an image. I just think it looks cool being able to see the content rather than base64 which hides it. Code: https://github.com/BrowserBox/Base437
I still have most of the 437 code points memorised. At one point, I made a simple program similar to xxd or od but which would dump the binary code ones in (Unicode) 437 representation instead of just dots. (NUL, space, and 0xFF are all blanks, so I used other Unicode code points for those.) A little bit similar to Base-437 above.
Linked in this article is VileR's excellent website <https://int10h.org/>. In fact, it is linked 8 times in this article. If this kind of thing interests you, I highly recommend following those links. VileR's site is probably the best resource we have today that preserves the various PC OEM fonts from a bygone technological era -- an era that lives on in the memories of those of us who first encountered these machines early in life.
I'm genuinely in awe of the time and effort VileR has poured into recovering each font, and their countless variants, from a wide range of ROMs. The site not only archives them all with incredible attention to detail, but also offers live previews, aspect ratio correction, and other thoughtful features that make exploring it a joy. I've spent countless hours there comparing different OEM fonts, and hunting down the best ones to use in my own work!
Back in the 1990s, my best friend at the time and I embarked on making computer games. He decided to make one for his dad, who was a baseball fan, including keying in statistics for all the players you could choose.
His computer was a PC-1 (5150) with CGA and 320K RAM (and a Microsoft mouse with green buttons and a steel ball, oddly enough), so he wrote the program in text mode. His dad used that computer to get through law school.
CHR$(127), as we called it, was used for home plate. He’s a doctor now.
Wow, it really goes in depth on the topic, in the beginning I was like "wtf am I even reading this" and after a while I was hooked by the writing style, the depth of the research and also the design of the website. Really, really cool.
Exactly this. Kept thinking, “you’re not getting this time back” … but kept reading anyway. And wasn’t disappointed by the lack of closure either. An essay worth the journey despite the end.
I seem to recall whether 0xE1 in codepage 437 is supposed to be a Greek lowercase beta (β) or a German sharp s (ẞ) is intentionally a bit fuzzy, so its perhaps they intended it to be both a delta and a dingbat.
I'm not really sure if a house fits it that much, wouldn't a generic "house" symbol have a chimney (although obviously, it's hard to fit one in with such a low resolution).
437 had quite a few “dual use” characters which were drawn to be mathematical symbols, but could be used to render (some) Greek text (poorly). It’s also notorious for having some accent marks, but not enough to fully represent most Western European languages; basically just German and Swedish.
Rather amusingly it had a Pesetas symbol for Spanish currency and numero signs an and o for abbreviations… but not a full enough set of accented characters to write everyday Spanish.
It's most likely meant to be Delta, as used in mathematics and science (which is typically smaller than the Greek letter). Not only is the Delta in the Greek character similarly shaped, but Lambda is similarly distorted in the greek character set. Likewise, A, N, V, Y, K (arguably), and W (arguably) are distorted.
Although originally the character Δ began life as 𐤃 (named dalet, meaning door) so it should be a door, not a house (he says with a wink) and that β should be the house (from 𐤁, bet, meaning house).
There’s a certain amount of “it just is” when it comes to non-textual characters. I remember being interviewed by a reporter from The Wall Street Journal about the claim that Wingdings had an antisemitic message secretly encoded in it because NYC output as the sequence skull and crossbones-star of David-thumbs up, but the choice of where those characters were encoded is purely a consequence of grouping similarly themed characters together (so, e.g., the star of David comes in the midst of a sequence of religious symbols).
Really good article! Personally it has me convinced that the 0x7F character was originally meant to be a delta, but whoever drew it did a poor enough job that it made other teams at IBM think it was supposed to be a house. As the article says, when you look in the PC BIOS source listing, there's a comment saying "DELTA" next to where the bitmap for the 0x7F character is defined. https://github.com/philspil66/IBM-PC-BIOS/blob/main/PCBIOS.A...
My guess: it's the "mode change" code found in various IBM punchcard encodings, punch 11-8-7, canonically represented by an upper-case delta.
It would make sense to render this somewhat differently from the regular Greek character. This may also explain why it's rendered differently in various manuals: once, as commonly represented in EBCDIC charts, as a delta, once, as it's actually represented in the on-screen character set.
I am pretty sure IBM's "DisplayWriter" word processor used the "small house" char for some kind of an indicator in the status line, maybe something to do with tabs. Here's a screenshot I found of DisplayWriter using that char: https://darrengoossens.wordpress.com/wp-content/uploads/2020...
I think those symbols were so underutilized, IBM didn't care about cementing their names. It's an ambiguous triangle. Use it as delta. Use it as a house. It doesn't matter because the programmers are the ones that give it true purpose.
This was a fantastic article. The ASCII art alone is worth a click.
What I remember from my experiences with terminals and printers (the only display devices available at the time) from 1978-1980 was that the 0x7F <DEL> character rendered as a checkered box. This correlates with (0xFF) Figure 5 in the article. This was common among all printers I worked with, Teletype, Epson, Okidata, TI, Printronix, and even IBM. Also all the Lear Siegler, Televideo, DEC, Hazeltine, terminals I used did something similar. Even the character ROMs in my Ferguson Big Board II, and Kaypro II used the same checkered box pattern.
> There is just one thing I cant't quite comprehend. Let's assume for a second that DEL was supposed to be delta. Did IBM seriously not try different ways of drawing a delta, before settling on the house glyph? With a little bit of effort, it is completely possible to draw a convincing delta, even in 8×8 pixel space.
But exactly the same argument applies to the Greek fonts where something that looks even more like a house is unmistakably intended to be delta, since it sits between gamma and epsilon. They could have made that looks like a triangle, but didn't.
Having been involved in some big projects my first instinct is that someone had to make a decision fast. IIRC the PC was designed in an 18-month skunkworks project.
I assume that someone had to meet a deadline, they were probably responsible for half a dozen other more important features, and there was a bleary-eyed team meeting where Chet asked “Any idea better than Dave’s house thing?” A bunch of people disagreed, no one had a markedly better idea than house thing, and it was memorialized with no one in the room remotely comprehending it would affect billions of PCs for the next 40 years.
It's a reference to Murnau's "Nosferatu" where a letter from Orlok is written in a strange ideographic language that includes a picture of a house, evidently relating Orlok's request to buy a house.
The line drawing characters were serious business. Because I love mazes. Though they were most often mis-used as menu borders. Novell achieved world domination with line drawing characters.
That immediately brings back memories (or more feelings) of playing [0]. It was, for a while, the only game my father had installed on his luggable, so I played it a lot as a small kid. I also think a did learn a lot of English from it.
Does anyone know why it’s “code page 437”? Like why 437? Was there 437 code pages before it? Does the 437 bit pattern map to something in the hardware? Was it a character rom part number?
It originates from the code page 37, which is the EBCDIC-based character set for US and Canada. At least initially EBCDIC code pages are numbered sequentially while PC DOS code pages were numbered more or less randomly; I have no clue why it is the code page 437 and not 337. (I can see why it is not 137 nor 237, as later code pages were numbered from 251.)
My first association for this symbol isn’t a house, but an indent marker, like here (“Right Indent Box” in particular): https://www.atlantiswordprocessor.com/en/help/images/ruler.p...
Or here as a tab stop in GeoWrite (in the top left, below the “file” menu): https://static.wikia.nocookie.net/commodore64/images/6/68/Ge...
Some mechanical typewriters had physical markers/stops that looked similar. The best I could find in a hurry: https://www.mrmrsvintagetypewriters.com/cdn/shop/files/DSC_7...
That's what I thought too. And WordStar and WordPerfect predated this character set by a couple of years, and then MultiMate and Word after.
But googling screenshots of all of them, I can't find any use of this character in their rulers. It's all dots, numbers, and bracket symbols.
So I think the end of the article is right -- it's a delta triangle that, for various reasons, got corrupted into that shape:
> If even the actual Greek uppercase delta is, quite unmistakenly, rendered as a house, then the theory that DEL is just a badly formed uppercase Greek delta character with the bottom corners cut off (due to a lack of horizontal pixels) starts to seem more and more convincing.
DEL = DELta
I think this explains why they chose to put it there, instead of one of the other free spaces. It's just too smart not to do it.
Yup. There are also a ton of other Greek letters in row E used in math... and no uppercase delta, which you'd obviously want, even more than many of the others. The only reason they wouldn't have included it down there was because they already included it above, exactly because it's DELta.
It still doesn't answer why it's a short uppercase delta though... I can only guess there was a failure of communication somewhere between who chose the character set and who drew the pixels...
Along with the rectangular pixels of the resolutions of the time, I think this makes sense.
I agree; I always thought of it as a kind of cursor / pointer symbol. I used to do high ASCII art (nothing to write home about) and became pretty familiar with CP437, so I was wracking my brain trying to figure out what the "little house" was going to be.
I notice that cp437 has enspace, so I wonder if enspace combined with the "small house", is used to indicate the insertion point, or position between two characters when producing error messages.
These are physical tab placement markers for IBM Selectric typewriters.
https://www.ebay.com/itm/176048131446
Wow this is a beautiful article. I love Code page 437 - my first experiences with computers used it. I made two little things that are a homage to the pixelated and "cyberpunk" "screaming electron" "information superhighway" glory that is IBM Code Page 437:
1. Endless scrolling random Code Page 437 text: https://o0101.github.io/random/ (but it seems to be broken indicated by an overabundance of the non-existent "block question mark". Code here in case anyone wants to submit a fix :) : https://github.com/o0101/random)
2. Base-437 - a way to encode any binary file into faithful-to-code-page-437-glyphs that you can nevertheless throw into HTML no problemo: https://browserbox.github.io/Base437/ This means, for instance, you can have a "data:image/png;base437,ëPNG♪◙→◙ ♪IHDR ◘♠ \r¿f ♦gAMA Åⁿa♣ cHRM z& Çä · ÇΦ u..." URI for an image. I just think it looks cool being able to see the content rather than base64 which hides it. Code: https://github.com/BrowserBox/Base437
I still have most of the 437 code points memorised. At one point, I made a simple program similar to xxd or od but which would dump the binary code ones in (Unicode) 437 representation instead of just dots. (NUL, space, and 0xFF are all blanks, so I used other Unicode code points for those.) A little bit similar to Base-437 above.
Linked in this article is VileR's excellent website <https://int10h.org/>. In fact, it is linked 8 times in this article. If this kind of thing interests you, I highly recommend following those links. VileR's site is probably the best resource we have today that preserves the various PC OEM fonts from a bygone technological era -- an era that lives on in the memories of those of us who first encountered these machines early in life.
I'm genuinely in awe of the time and effort VileR has poured into recovering each font, and their countless variants, from a wide range of ROMs. The site not only archives them all with incredible attention to detail, but also offers live previews, aspect ratio correction, and other thoughtful features that make exploring it a joy. I've spent countless hours there comparing different OEM fonts, and hunting down the best ones to use in my own work!
Back in the 1990s, my best friend at the time and I embarked on making computer games. He decided to make one for his dad, who was a baseball fan, including keying in statistics for all the players you could choose.
His computer was a PC-1 (5150) with CGA and 320K RAM (and a Microsoft mouse with green buttons and a steel ball, oddly enough), so he wrote the program in text mode. His dad used that computer to get through law school.
CHR$(127), as we called it, was used for home plate. He’s a doctor now.
Wow, it really goes in depth on the topic, in the beginning I was like "wtf am I even reading this" and after a while I was hooked by the writing style, the depth of the research and also the design of the website. Really, really cool.
Exactly this. Kept thinking, “you’re not getting this time back” … but kept reading anyway. And wasn’t disappointed by the lack of closure either. An essay worth the journey despite the end.
I seem to recall whether 0xE1 in codepage 437 is supposed to be a Greek lowercase beta (β) or a German sharp s (ẞ) is intentionally a bit fuzzy, so its perhaps they intended it to be both a delta and a dingbat.
I'm not really sure if a house fits it that much, wouldn't a generic "house" symbol have a chimney (although obviously, it's hard to fit one in with such a low resolution).
437 had quite a few “dual use” characters which were drawn to be mathematical symbols, but could be used to render (some) Greek text (poorly). It’s also notorious for having some accent marks, but not enough to fully represent most Western European languages; basically just German and Swedish.
Rather amusingly it had a Pesetas symbol for Spanish currency and numero signs an and o for abbreviations… but not a full enough set of accented characters to write everyday Spanish.
It's most likely meant to be Delta, as used in mathematics and science (which is typically smaller than the Greek letter). Not only is the Delta in the Greek character similarly shaped, but Lambda is similarly distorted in the greek character set. Likewise, A, N, V, Y, K (arguably), and W (arguably) are distorted.
Although originally the character Δ began life as 𐤃 (named dalet, meaning door) so it should be a door, not a house (he says with a wink) and that β should be the house (from 𐤁, bet, meaning house).
There’s a certain amount of “it just is” when it comes to non-textual characters. I remember being interviewed by a reporter from The Wall Street Journal about the claim that Wingdings had an antisemitic message secretly encoded in it because NYC output as the sequence skull and crossbones-star of David-thumbs up, but the choice of where those characters were encoded is purely a consequence of grouping similarly themed characters together (so, e.g., the star of David comes in the midst of a sequence of religious symbols).
In a future font (Webdings?) Microsoft deliberately set the letters NYC to be an eye, a heart, and a city skyline, in response to this kerfuffle.
Really good article! Personally it has me convinced that the 0x7F character was originally meant to be a delta, but whoever drew it did a poor enough job that it made other teams at IBM think it was supposed to be a house. As the article says, when you look in the PC BIOS source listing, there's a comment saying "DELTA" next to where the bitmap for the 0x7F character is defined. https://github.com/philspil66/IBM-PC-BIOS/blob/main/PCBIOS.A...
My guess: it's the "mode change" code found in various IBM punchcard encodings, punch 11-8-7, canonically represented by an upper-case delta.
It would make sense to render this somewhat differently from the regular Greek character. This may also explain why it's rendered differently in various manuals: once, as commonly represented in EBCDIC charts, as a delta, once, as it's actually represented in the on-screen character set.
One more theory - it could be a tabulator or cursor symbol (for word processing applications).
I am pretty sure IBM's "DisplayWriter" word processor used the "small house" char for some kind of an indicator in the status line, maybe something to do with tabs. Here's a screenshot I found of DisplayWriter using that char: https://darrengoossens.wordpress.com/wp-content/uploads/2020...
https://en.wikipedia.org/wiki/IBM_Displaywriter_System
That's what I always assumed it was, too.
Yup. That's what it looks like to me as well
I think those symbols were so underutilized, IBM didn't care about cementing their names. It's an ambiguous triangle. Use it as delta. Use it as a house. It doesn't matter because the programmers are the ones that give it true purpose.
This was a fantastic article. The ASCII art alone is worth a click.
What I remember from my experiences with terminals and printers (the only display devices available at the time) from 1978-1980 was that the 0x7F <DEL> character rendered as a checkered box. This correlates with (0xFF) Figure 5 in the article. This was common among all printers I worked with, Teletype, Epson, Okidata, TI, Printronix, and even IBM. Also all the Lear Siegler, Televideo, DEC, Hazeltine, terminals I used did something similar. Even the character ROMs in my Ferguson Big Board II, and Kaypro II used the same checkered box pattern.
(Author here) Yep, I also wrote another article digging into the history of the checkered box character:
https://blog.glyphdrawing.club/the-origins-of-del-0x7f-and-i...
> There is just one thing I cant't quite comprehend. Let's assume for a second that DEL was supposed to be delta. Did IBM seriously not try different ways of drawing a delta, before settling on the house glyph? With a little bit of effort, it is completely possible to draw a convincing delta, even in 8×8 pixel space.
But exactly the same argument applies to the Greek fonts where something that looks even more like a house is unmistakably intended to be delta, since it sits between gamma and epsilon. They could have made that looks like a triangle, but didn't.
Having been involved in some big projects my first instinct is that someone had to make a decision fast. IIRC the PC was designed in an 18-month skunkworks project.
I assume that someone had to meet a deadline, they were probably responsible for half a dozen other more important features, and there was a bleary-eyed team meeting where Chet asked “Any idea better than Dave’s house thing?” A bunch of people disagreed, no one had a markedly better idea than house thing, and it was memorialized with no one in the room remotely comprehending it would affect billions of PCs for the next 40 years.
Is there no one left to ask?
It's a reference to Murnau's "Nosferatu" where a letter from Orlok is written in a strange ideographic language that includes a picture of a house, evidently relating Orlok's request to buy a house.
because they couldn't fit a large house into 8x16.
The line drawing characters were serious business. Because I love mazes. Though they were most often mis-used as menu borders. Novell achieved world domination with line drawing characters.
That immediately brings back memories (or more feelings) of playing [0]. It was, for a while, the only game my father had installed on his luggable, so I played it a lot as a small kid. I also think a did learn a lot of English from it.
[0] https://en.wikipedia.org/wiki/Castle_Adventure
Looking at that font again makes me want to start up Nethack all of a sudden.
Article contents aside, I absolutely adore the styling in the site. It's such a lovely 00s vibe.
I noticed the article uses the Polyvers font (complete with bold capitals in the headings), which I haven't seen on the Internet. Wonder what that is.
EDIT: It seems to coexist with U001, which is "An Univers-like typeface that comes with GhostPDL made by URW++."
Wow, the “drj-mmc.ans” is absolutely impressive. At first I thought they applied some high-resolution mask but it really is just code page 437 text.
Does anyone know why it’s “code page 437”? Like why 437? Was there 437 code pages before it? Does the 437 bit pattern map to something in the hardware? Was it a character rom part number?
It originates from the code page 37, which is the EBCDIC-based character set for US and Canada. At least initially EBCDIC code pages are numbered sequentially while PC DOS code pages were numbered more or less randomly; I have no clue why it is the code page 437 and not 337. (I can see why it is not 137 nor 237, as later code pages were numbered from 251.)
There's a list of known code pages on Wikipedia[0]
0: https://en.wikipedia.org/wiki/Code_page
I think you’d want to compare the “other deltas” when rendered on a crappy CGA monitor. I’m not sure they’d be much better than the house.
Reminds me of compass UI indicators in modern FPS games.
House token in Monopoly (Board Game)
Not to be confused with the Hotel token (which wouldn't fit in a character)
[dead]
What about that it's 0x0111 1111? Could be a reference to hole punching