Ok, a bit of somewhat embarrassing, but kind-of cool history time.
Back in the early 1980’s, Microsoft got this rather grandiose idea of building a complete reference library of PC technology. The idea was to have a 5ish volume set covering topics like MS-DOS, CD-ROM’s (the CD-ROM was cutting edge technology at the time), Multimedia, etc. The collection of books was to be called the “Microsoft Reference Library”.
It was one of the first projects of the fledgling Microsoft Press division of Microsoft, a group that has done some remarkable projects over the years (many of the books I come back to again and again are Microsoft Press books).
The first volume in the Microsoft Encyclopedia was the MS-DOS® (Versions 1.0-3.2) Technical Reference Encyclopedia. As the introduction states: “This book was conceived as the ultimate resource for anyone writing applications for MS-DOS”. It included detailed API references, the official story of Microsoft and MS-DOS, details of all the MS-DOS command line utilities, etc. It’s a really remarkable book.
Unfortunately, however, there was a bit of a gotcha.
You see, the authors of the encyclopedia didn’t want to spend a huge amount of time pestering the MS-DOS development team while they were writing the book, especially since the MS-DOS team was heads down working on the various MS-DOS releases. So, in addition to the existing MS-DOS documentation (which was actually quite good), they got access to the source code to MS-DOS and proceeded to enhance the existing API documentation. One of the really cool things they did that they thought would be an incredible help was to write a flow chart of the internal data flow of every MS-DOS system call. Unfortunately, for some of the functions, they included a bunch of information that was Microsoft confidential. In addition, the encyclopedia included code examples that weren’t correct, and there were many inaccuracies in the text. Even though MS-Press had given copies to the MS-DOS team for review, somehow this wasn’t discovered until after the MS-DOS encyclopedia had gone to press. So Microsoft was forced to pull all the copies of the Encyclopedia from the shelves. As far as I know, no copies of the encyclopedia actually made it out of the warehouse. There were a couple of copies circulated around Microsoft internally, and somehow I managed to get a hold of one of the few remaining copies in existence, and it proudly lives on my bookshelf.
So if Microsoft pulled the MS-DOS Encyclopedia, why do people keep finding references to it on the web? Well, it turns out that the idea of an MS-DOS encyclopedia as a sort-of uber-reference book was a really good idea, even if the execution of the first version was flawed. So after the first version, MS Press went back to the drawing boards and totally re-created the MS-DOS encyclopedia. The new version had a very similar layout to the original, but was composed with the close cooperation of the MS-DOS team (I remember getting drafts every week for review). In addition, MS Press went out and got many of the top authors of MS-DOS books to provide the content. Looking at the authors biographies is a veritable who’s-who of programming authors at the time (Van Wolverton, Ray Duncan, Charles Petzold, Steve Bostwick, Chip Rabinowitz, etc). The new version is really a very nice piece of writing; I still go back to it from time to time.
It’s also fun to read the technical advisors section – it’s a fairly complete listing of all the MS-DOS developers that were still at Microsoft when it was writtenJ. At a minimum, to my knowledge, it’s the very first time my name appeared in an actual printed bookJ.