How I built a C compiler and web browser for the Am29000

How I developed an Am29000 C compiler and web browser

How I built a C compiler and web browser for the Am29000

Oscar Toledo G. recounts how, at age 20, he wrote a C compiler and a web browser for his homebrew Am29000 computer. Faced with the processor's many registers and a machine with only 512 KB of RAM, he adapted his existing transputer compiler, building a register allocator and a dynamic expression tree. He also created a windowed operating system in machine code, and the article details the compiler's development, including code excerpts and the challenges of bootstrapping without a suitable compiler.

I couldn’t code new functions without devising a careful memory planning, how to move the code to make space, or worst, relocate several jumps and introducing unexpected bugs because I missed one change.
  1. jacquesm

    Fascinating. DJ Delorie rates a mention, I wonder how he's doing, I owe him a good chunk of my career.

    This reads very much like the same journey I made recently when reviving my old OS, only Oscar went much further than I did and wrote a working browser as well, which - even though the browsers back then were much simpler - is extremely impressive. I still have a stack of disks from those days, I should probably find a way to read them to see what's on there.

    edit: I sent DJ Delorie a short note, I should have done that years ago, without him I would have never managed.

  2. dboreham

    This part brought back memories from an even older time:

    "Worst, it required two more programs: Flex and Bison."

    In the early 80s I had the idea to port a C compiler to a new machine (I forget if this was K&R or pcc, but those were the only two C compilers you could get the source for at the time, legal issues aside...). At some point I had that same realization: uhh...this thing needs two other pretty big things: yacc and lex. The "first catch your fish" of compilers: "first port the parser-generators".

  3. dmitrygr

    Oscar Toledo, you are simply insane (in a good day). I bow my head in respect at the completely pointless and insanely impressive result.

More from this day

2026-08-17