
Intel 80386 Reference Programmer's Manual - Arun2009
http://pdos.csail.mit.edu/6.828/2005/readings/i386/toc.htm
======
batou
Ugh this brings back memories. After spending 1988-92 on ARM stuff (Acorn) I
ended up doing something on DOS with assembly, well MASM. x86 was horrible in
the 16-bit segmented mode. I finished the job off in Turbo Pascal in the end.
To this day it scares me and I hadn't delved lower than C since.

Edit: I've still got a copy of MS DOS encyclopaedia sitting on my bookshelf
actually. Signed by Gates. Ebay time!

------
raverbashing
The Intel manuals have become ever increasing in size

I remember around 2000 it was 3 manuals, last time I checked it was 5 or 6

New instructions, new functionality (virtualization) etc

But the old manuals still have a lot of relevant stuff, especially if you want
to work at the low-level (like switching to protected mode, page tables, etc)

~~~
ajross
I think it's technically seven now, though I know of no one with a paper copy.
My not-quite-current PDF copy of the SDM splits its 3289 pages into three
volumes, with volumes 2 and 3 being split into A, B and C subvolumes.

And yes, virtually everything remains compatible. So if you want to write a 32
bit code generator and don't need access to newer features (synchronization
primitives are the most important bits that were added later, also stuff like
vector instructions, etc...) that 30-year-old document is all you need.

~~~
cbd1984
If you limit yourself to the 16-bit subset, you can use manuals that are even
older.

And if you give up binary portability and restrict yourself to the source
portability which helped sell people on the 8086 and the 8088 to begin with,
you can use a manual for an 8080 processor and convert the code to the
earliest 16-bit subset, prior to the expansions the 80286 brought.

And if that's too recent for you, you can move to the IBM mainframe series
derived from the System/360 architecture, and use layer upon layer of
emulation to run software written in the Johnson administration.

Screw diamonds: _Legacy systems_ are forever.

~~~
raverbashing
Yes, you can stick to 16-bit and keep using 640k of RAM, segments and offsets

No, thank you

------
bcheung
I used to know that manual inside and out. Very nostalgic. I still have the
original 8086 manual. Entire instruction set, plus pin layout, thermal specs,
... everything in one small manual.

