Back

Unearthing my 1996 windowed OS in machine code for Am29000 homebrew computer

102 points6 daysnanochess.org
fidotron32 minutes ago

How is the phrase "register window" not in this article? https://en.wikipedia.org/wiki/Register_window

"The AMD 29000 improved the design by allowing the windows to be of variable size, which helps utilization in the common case where fewer than eight registers are needed for a call. It also separated the registers into a global set of 64, and an additional 128 for the windows."

Amazing stuff. (Both the 29K and the article).

taolson4 hours ago

Wow, blast from the past! I was on the architecture / micro-architecture team for the 29K and 29050, and your story of writing and debugging the emulator brought up similar memories of working on the performance simulator for these chips.

Very impressive work -- congratulations!

rbanffy2 hours ago

Somewhere in my collection I have an AMD 29K-based tablet that was used in São Paulo's stock exchange trading floor. It had a huge IR LED array that, I assume, was used to transmit orders to receivers installed near the monitors. I managed to boot it from ROM, but it seemed the machine was waiting for the transmitter to send it its boot image.

Would have been an interesting project. Considering the size of the array, I'd be able to control all TVs from the building one block down.

sage9813 hours ago

Writing a windowing OS straight in machine code for the Am29000 is wild. The emulator debugging story is the part I would love expanded.

rob743 hours ago

> The AMD Am29000 processor came out in 1987, also announced as the world's fastest processor (do you see a meme here?) and it could process one instruction every cycle, so indeed it was fast.

The AMD 29k - the fastest CPU you never heard of? No, seriously, I am quite interested in computer hardware, and Computer Architecture by Patterson/Hennessy was required reading during my studies, but I can't say I ever heard of this CPU architecture, which is "based on the seminal Berkeley RISC" (according to https://en.wikipedia.org/wiki/AMD_Am29000). And it seems to have been quite widely used, but not in an actual computer (except for this one)...

AnotherGoodName3 hours ago

You might have heard of the x86 cpu the AMD K5 that competed against the Pentium?

Well that was basically an am29000 but with an x86 instruction decoder front end. The architecture was that good it was competitive 10years later.

Think of the am29000 as an incredibly influential research project that flowed into all of AMDs future CPUs in some way or another.

taolson1 hour ago

> Well that was basically an am29000 but with an x86 instruction decoder front end.

The K5 was based upon a 29K-family design, but it was actually an un-released superscalar project code-named "Jaguar", rather than just a 29K with an x86 decoder.

rob742 hours ago

Wow, I wasn't aware of that either! I didn't have an AMD K5 PC, but (IIRC) a K6-III - did that still have the same underlying architecture?

rbanffy2 hours ago

> Well that was basically an am29000 but with an x86 instruction decoder front end.

Sad. A 29K saddled with an ugly and kludgy ISA.

taolson2 hours ago

Yep, it wound up as the main CPU in a bunch of laser-printers, as well as Apple's 8*24GC QuickDraw accelerator card for the Macintosh, and as part of the flight-control computer on Boeing 777s, among many other embedded system designs.

kjs32 hours ago

It's the 'other' major processor that shipped with register windows along with SPARC and i960. Very popular in the embedded world.

dboreham1 hour ago

This is because history gets written by the victors.

gforce_de6 days ago

Thanks Oscar - as always, a very very nice writing style - a good read!

nanochess6 days ago

I'm glad you enjoyed it. It is my longest article so far and it took a lot of effort. Thank you!

cyberge995 hours ago

F 15 Strike Eagle, Infiltrator and 688 Attack Sub were some of my first games.

And then came Leisure Suit Larry and the tweenage years.

thataccount4 hours ago

Don't leave out F4U Secret Sortie: https://www.oldgame.cz/en/f4u-secret-sortie

bluedino4 hours ago

The breadboard computer from 1997 deserves it's own post.

pjmlp4 hours ago

Very interesting article, I wasn't aware of the Am29000.

rayoleary4 hours ago

You sir, are a rockstar!

smm112 hours ago

OP just casually dropped awesomeness on a Thursday.