Review - The Atari Compendium , By Jonathan White. ================================================== So, after scrabbling around for books on the Atari for ages, with the best ones going out of print, there is a real need for a GOOD Atari programmers reference. And, coming over the horizon on a 747 comes the Atari Compendium from SDS publishing in the US. So what is it? Well, you hold it in your hand and it feels like a housebrick. It's about 2 inches thick and it looks serious. The cover proudly proclaims it covers TOS 1.0 to 5.0 (more on that later) including GEM, TOS, MiNT, GDOS and 680x0. So, when you pick it up, it screams 'professional' rather than 'dabbler'. This opinion is reinforced on a quick flick through. This book will NOT teach you GEM programming. There are no tutorial sections and precious few examples. So, if you don't know GEM, this won't teach it to you. However, if you have a vague idea about GEM, this will tell you everything you need to know. I have yet to find any piece of programming info left out. It's certainly the most complete reference I've seen. Some of the topics it covers are.. AES,VDI,TOS (inc. Speedo GDOS) A-Line, BIOS, XBIOS, GEMDOS MiNT Falcon Hardware (yep - DSP,sound etc are all there, although again it won't teach you to program the DSP, once you know, it'll certainly help you get the best out of it) Atari Interface guidelines (it'd be nice if they stuck to 'em) COMPLETE Memory map of all machines, along with a list of ALL system variables The new (TOS 2+) drag & drop protocol GEM, IMG, RSC, FNT file formats Xcontrol CPX's The only thing the author admits to leaving out are MiNT loadable device drivers, so I think 99% of us will be OK.. So, taking a more detailed look, we can check how well it is organised. Is there an index (yes), are the functions referenced by name or Op- Code (both) and is it easy to get at the info you want.. Well the chapters are clearly separated, there's a detailed table of contents at the beginning and a 12 page index at the end. These are both OK, but as usual the choice of where things are is slightly subjective in the index - for example, some menu topics go under AES menus, rather than Menus. But I've never had to look in more than two places to find what I want. The explanatory texts (e.g the sections on the DSP hardware, the nature of message handling etc..) are neat, well laid out and easy to read, not too dense but still sticking to the point. Individual function references are organised in a standard way, very reminiscent of the way Borland lay out their PC compiler manuals. Each function has several sections.. Name (in big bold letters so it's easy to spot) Syntax (in standard C :- returntype Name (parameters) ) OpCode Availability (do you need a particular version of GEM /MiNT etc..) Parameters (what each parameter does) Binding (for you assembly language programmers out there) Return Value (what it means, not just what range it can take) Caveats (unforseen effects, bugs etc..) Comments (anything else you need to know) See Also ( a list of related functions) These sections themselves are somewhat variable in size. The list of return values for evnt_mesag goes on for several pages.. Nevertheless, having this standard layout means it's quite easy to get to exactly what you want pretty quickly, and the detail is such that I have yet to have to do a lot of flicking back and forth looking for particular things. Its usually all there with the function definition. So there we have it. A very detailed reference to the Atari hardware and Operating system range, even beyond what is currently in use. That's right - It even has info on the stuff Atari has in it's next OS release (when they get around to it) including - minimise buttons on windows, hierarchical menus, drop down list boxes, pop up menus, window toolbars etc, etc, etc. After you see this lot, you will WANT to upgrade when it comes out. Although incidentally, I've heard all this stuff is available to registered developers already. If that's the case, how do I get to be one?? Conclusion? Well, I've had it for six months or so, and I still haven't found anything missing. There are a few errors (it's 800 pages, whadayou expect??) but there is already an errata sheet available and the info is also in the second issue of the Atari Explorer OnLine Programming journal. I'll try and fish the relevant bit out and send it in if it's needed. You also get to register it for updates, although I didn't get the info that way, and I don't hold out any hope that I'll ever see much in the way of support. Unfortunately, Atari developers are just too few and skint to provide much of that, I'm afraid. The most telling point is that I haven't touched any of my other Atari refence books since I got it and I have quite a few. I guess that makes it a recommended buy. At œ40 it's the most expensive reference book I've seen for the Atari, but it's also the best. If you want to write good Atari software, this book WILL make your life easier. If you don't know how to program the Atari, get Tim Oren's GEM programming lessons (or read ours) and THEN buy this book. It may be the only one you ever need...