GEM: The Forgotten Graphical Desktop Pioneer

2025-09-18
GEM: The Forgotten Graphical Desktop Pioneer

This article recounts the legendary story of the GEM graphical desktop environment. Inspired by the Xerox Star, the Digital Research team, led by Lee Jay Lorenzen, overcame many obstacles to create the iconic interface for the Atari ST. GEM competed with Apple's Macintosh and was forced to modify due to “copying” accusations, ultimately failing in the commercial competition and becoming a forgotten part of computing history.

Read more

Optimizing UTF-8 Decoding with a Lookup Table: Branchless Approach

2025-09-06
Optimizing UTF-8 Decoding with a Lookup Table: Branchless Approach

This article explores optimizing UTF-8 decoding by using a lookup table to avoid branch prediction overhead. The author details creating a 256-byte lookup table that maps the lead byte of a UTF-8 sequence to its length. This replaces branching with simple array access, improving decoding efficiency. While adding a 256-byte memory cost, this approach can significantly boost performance in many scenarios.

Read more
Development Decoding Lookup Table

86-DOS: The Untold Story Behind the PC Revolution

2025-08-28
86-DOS: The Untold Story Behind the PC Revolution

In April 1980, a young programmer at Seattle Computer Products (SCP), Tim Paterson, began developing a small disk operating system, codenamed QDOS (Quick and Dirty Operating System), for the new Intel 8086-based board. This project, initially designed as a quick fix for SCP's 8086 computer, unexpectedly evolved into Microsoft's MS-DOS, dominating the PC industry for over a decade. The article details QDOS's development, including the controversy surrounding its compatibility with CP/M's API, and Microsoft's acquisition of QDOS and its renaming to MS-DOS. The simplicity and CP/M-inspired API of QDOS, despite the resulting controversy, allowed for a quick release and made it a cornerstone of the PC era.

Read more
Tech

The Rise and Fall of Two Microcomputer Pioneers: Sinclair and Kildall

2025-07-17
The Rise and Fall of Two Microcomputer Pioneers: Sinclair and Kildall

This article recounts the fascinating lives of Sir Clive Sinclair, a British electronics genius, and Gary Kildall, an American computer scientist, both pioneers of the microcomputer industry. Sinclair revolutionized home computing in the 1980s with his ZX Spectrum and other affordable computers, but ultimately failed due to poor business decisions. Kildall's CP/M operating system became the standard for business microcomputers, but he missed the chance to partner with IBM, leading to his company's eventual sale. Both men demonstrated exceptional technical skills alongside business shortcomings, making significant contributions to the microcomputer industry and offering valuable lessons for entrepreneurs.

Read more

Jupiter Ace: A Retro British Computer Killed by Forth?

2025-04-10
Jupiter Ace: A Retro British Computer Killed by Forth?

In 1982, a small home computer called the Jupiter Ace was launched in the UK. Its unique feature was the inclusion of Forth, not BASIC, in its ROM. This article explores why embedding BASIC in ROM was so crucial back then, and whether replacing it with Forth was the key reason for the Jupiter Ace's failure. While Forth offered technical advantages, like faster speed and suitability for professional software development, its steeper learning curve and the Ace's outdated hardware (3KB RAM, no color graphics) ultimately doomed it. Most users prioritized games and memory over programming language.

Read more
Tech

6502 Assembly: A Surprisingly Good Starting Point for Learning Assembly?

2025-02-06
6502 Assembly: A Surprisingly Good Starting Point for Learning Assembly?

Choosing a starting point for learning assembly language can be daunting. This article argues that the 6502 processor is surprisingly well-suited for beginners. While not widely used in modern applications, its simple instruction set (only 56 instructions) and abundance of learning resources make it ideal for grasping fundamental assembly concepts. Its history in classic computers like the Apple II and Commodore 64 provides a wealth of emulators and learning materials. The author recommends Easy 6502 and Visual6502.org as excellent learning resources, comparing it to the complexities of architectures like x86-64 and ARM, further highlighting the 6502's advantages for beginners.

Read more
Development