Most Popular
1500 questions
82
votes
10 answers
How were the first ZX Spectrum games written?
Being a child of the 80s I loved my ZX Spectrum, did my best to learn BASIC but I felt like the games I was playing (Jetpac, Dizzy, Renegade etc) were perhaps not written using BASIC.
I wondered: how were these early games developed?
These days I've…
Remy Sharp
- 1,067
- 1
- 7
- 9
80
votes
14 answers
Back in the late 1980s, how was commercial software for 8-bit home computers developed?
When hobbyists wanted to write software for e.g. the Commodore 64, they either used the built-in BASIC interpreter (with all its limitations) or some native tools, like compilers for other languages or, most of the time, assemblers. This had a lot…
Felix Palmen
- 1,502
- 1
- 10
- 12
80
votes
9 answers
Why were CLIs typically light text on dark background, whereas GUIs typically use(d) dark text on light background?
My experience is that CLIs were typically shown with light text on a darker background. For example, the IBM PC would use white/light gray (depending on your point of view), amber or green (the latter two for monochrome monitors) on black unless the…
user
- 5,286
- 2
- 26
- 43
80
votes
7 answers
Who invented file extensions in file names?
Do we know when and where the idea of adding a suffix to filenames was conceived? I have found a lot of information about the history of specific file formats, but I am curious about when the need for separating files by type arose and who got the…
viggo
- 803
- 1
- 2
- 7
78
votes
4 answers
Why is Windows using CR+LF and Unix just LF when Unix is the older system?
Windows and MS-DOS use the control characters CR+LF (carriage return ASCII 13 followed by line feed ASCII 10) for new lines, while Unix uses just LF.
As far as I know CR+LF made sense for systems controlling a real teletypewriter, which has an…
allo
- 1,073
- 1
- 8
- 11
76
votes
2 answers
Why does the infamous "ENGAGERIDLEYMOTHERFUCKER" Metroid password break NES emulators?
For those who are unfamiliar, the original NES Metroid was one of many NES games to use passwords as a means to save progress.
Later, this password system was leveraged to create unusual effects in the game by inputting invalid passwords. One of…
Badasahog
- 4,031
- 3
- 24
- 61
76
votes
8 answers
Why did IBM make the PC BIOS source code public?
IBM released the IBM 5150 Technical Reference manual in August, 1981, and included in it the fully commented source code listing for the BIOS. I find this odd for two reasons:
IBM must have realized that creating a legal "clone" PC would be…
Brian H
- 60,767
- 20
- 200
- 362
76
votes
4 answers
What made Windows Me so crash-prone?
Many people remember this operating system as not exactly a walk in the park, namely that it could crash as early as during the installation phase or at unexpected times when the user wasn't doing anything particular. It left a bitter taste,…
Eric Cartman
- 6,760
- 5
- 35
- 59
76
votes
7 answers
Why wasn't ASCII designed with a contiguous alphanumeric character order?
Anyone who has dealt with strings at a low level (e.g., writing a parser in C), knows that doing so tends to involve frequent checks of—either manually, or through isalpha(), isalnum(), etc—whether a character is a case-insensitive alphabetic…
Will
- 763
- 1
- 5
- 9
75
votes
7 answers
What technological factors drove the rise of "high-speed" modems in the early 1990s?
The first inexpensive modem I ever purchased was a 300 baud direct-connect unit for the C64 User Port in late 1983. I recall that a couple of years later (1986), 1200 baud modems were affordable and I was able to make this significant (4X speed)…
Brian H
- 60,767
- 20
- 200
- 362
74
votes
8 answers
Which Linux or BSD distributions do still support i386, i486 or i586 CPUs?
Unfortunately Debian kicked out Pentium 1 (i586) CPU support from its 32-bit PC port (named i386 for historic circumstances) for its next stable release Debian 9 Stretch. (Then again they complain that there are no more devices validating the…
Axel Beckert
- 995
- 1
- 7
- 14
74
votes
7 answers
Why was the Kickstart 1.x "Insert floppy" graphic so bad?
Anyone who used an pre-Kickstart 2.0 Amiga will be very familiar with the "Insert Workbench floppy" image:
I realise that this is subjective, but the image has always stuck me as ... well, a bit ugly. Quite apart from the misshapen thumb and…
KenD
- 1,891
- 1
- 14
- 18
74
votes
5 answers
Why did C use the arrow (->) operator instead of reusing the dot (.) operator?
In the C programming language, the syntax to access the member of a structure is
structure.member
However, a member of a structure referenced by a pointer is written as
pointer->member
There's really no need for two different operators. The…
DrSheldon
- 15,979
- 5
- 49
- 113
72
votes
3 answers
Why did DOS use dollar-terminated strings?
According to a few tutorials I am seeing, DOS used dollar-terminated strings to write to the terminal. This seems to also be documented here on INT 21H.
AH = 09h - WRITE STRING TO STANDARD OUTPUT
Entry: DS:DX -> '$'-terminated string
Return: AL =…
Evan Carroll
- 3,398
- 2
- 16
- 45
71
votes
3 answers
Why did Unix use slash as the directory separator?
The Unix designers came from the GE/MIT Multics project, and Multics inspired some Unix features. In particular, Multics has a hierarchical filesystem, and so does Unix.
On Multics, pathnames were of the form:
>dir1>dir2>dir3>filename
but Unix…
Barmar
- 1,920
- 13
- 18