Skip to content
Tech News
← Back to articles

Developer revives 1998 transputer C compiler for 64-bit macOS build

read original more articles
GoKawiil Brief

Oscar Toledo G. rediscovered a 1998-era transputer C compiler he wrote, originally built with DJGPP/G++ for 32-bit DOS systems, and attempted to compile it on a modern 64-bit Macbook Air M1. He found the old code mixed integers and pointers interchangeably, lacked function prototypes, and used int instead of FILE*, all of which broke under clang since pointers are now 64-bit while integers remain 32-bit. He traces these issues back to inherited Small-C conventions, such as storing structures in byte pools and packing words as two bytes, and concludes a design change is needed to make the compiler portable.

Why It Matters

GoKawiil's interpretation of the reporting above, not reported fact.

The account illustrates a common challenge in software preservation: code written for legacy 32-bit assumptions can silently break on modern 64-bit architectures in ways that go beyond simple recompilation, requiring structural redesign rather than quick fixes. This suggests broader lessons for maintaining or reviving old toolchains, especially those tied to historical hardware like transputers and the Am29000, where portability was never a design goal. The author's effort could serve as a case study for others attempting to modernize decades-old compiler codebases.

Key Takeaways

Source: nanochess.org — Óscar Toledo Gutiérrez, 2026-09-22

Published there as: “Making portable my unportable transputer C compiler”

Read the original report → The summary and analysis above are GoKawiil's own, written from reporting by the source above. Facts and quotes belong to the original publisher.