[MODERATOR'S NOTE: This review was updated on Feb 21, 1994. Search for the text "[UPDATE:" to find updated information. -Dan]
Unlike its predecessor, "Das Amiga-Guru-Buch", the Amiga Guru Book is completely written in English.
Buchhaus Gonski Buchhandlung Bouvier Neumarkt 18a Am Hof 32 D-50667 Koeln D-53113 Bonn Voice: +49 (221) 20909-72/76 Voice: +49 (228) 72901-69 Fax: +49 (221) 20909-59 Fax: +49 (228) 72901-78 Hirsch & Wolf OHG Mainhattan-Data Mittelstrasse 33 Schoenbornring 14 D-56564 Neuwied D-63263 Neu-Isenburg Voice: +49 (2631) 8399-0 Voice: +49 (6102) 588-1 Fax: +49 (2631) 8399-31 Fax: +49 (6102) 51525 (VISA, Euro) (VISA, Euro, AmEx) DTM-Computersysteme Unlimited GmbH Dreiherrenstein 6a Kehrstrasse 23 D-65207 Wiesbaden D-65207 Wiesbaden Voice: +49 (6127) 4064 Voice: +49 (6127) 66555 Fax: +49 (6127) 66276 Fax: +49 (6127) 66636 (Euro) [UPDATE: The Amiga Guru Book is now available from these other distributors. - Dan] Periscope Attn: Cody Lee Discs, Tapes, Books 1717 W Kirby Ave Champaign, IL 61821 USA Voice: (217) 398-4237 Fax: (217) 398-4238 Someware 27 rue Gabriel Peri 59186 Anor France Voice: +33 27596000 Fax: +33 27595206 E-Mail: didierj@swad.adsp.sub.orgIf you live outside of these countries, please feel free to give any of the above listed dealers a call to find out whether they will send you a copy, and how much it will cost you. I have indicated which dealers will accept payment by Credit Card. Dealers accepting Eurocard will also accept MasterCard!
Hirsch & Wolf will definitely accept foreign orders, and payment via Credit Card. Pricing will depend on the method of shipment.
You should have a working C compiler and/or Assembler if you want to test or use the provided examples.
Although the book is published in Germany, it is written in English, so you will need to know the language. The writing style is technical and clear.
Ralph's writing style is generally concise and to the point, which makes the Guru Book good a technical lecture. However, he manages to slide in an ironic remark every once in a while to keep the reader amused. If you like his dry humor, you'll enjoy the chapter headings even more, since they feature hand-picked quotes taken from computer literature and various Amiga personalities.
The recommended way of reading the Guru Book is to work through it once to understand what is said where, and then return to the chapters you are interested in on a need-to-know basis. The large and well-organized index helps a lot when proceeding this way. Throughout the book, obsolete features have been marked with a superscript dagger symbol, while new AmigaDOS 2.0-only features are marked by double daggers.
The Guru Book is organized into three parts: "Programming", "System Internals" and "Amiga DOS". The first few chapters especially should be considered basic reading, as they help you to understand much of what's going on later in the book. Besides that, even this early in the book, you can find useful information like how to determine your program's stack size, system resources and such. The experienced programmer might want to skip this part, but it is really not recommended to do so, as he/she might miss some very interesting inside information about the Amiga internals.
Users of other programming languages might complain that the emphasis on C is too heavy for their taste. But as a matter of fact, the book's notes on C programming and especially the compiler comparisons between Aztec and SAS/C aren't superfluous at all. They give you a basic understanding of how those compilers handle things, which is quite useful if you want to port programs written in C --- like all of the examples provided in the book --- to another language, or if you want to interface existing code with your own programs.
This leads to a comparative description of SAS/C 5.x and Aztec C compiler switches, the contents of amiga.lib, and a chapter on ROMWack, a powerful, built-in remote debugging tool for probing the deep internals of the Amiga.
This part also includes a detailed description of the system startup and the meaning of the screen colors. Even the secret of the Amiga 1000's startup melody is revealed.
The description of the hardware is closed with a rundown on the way the CPUs of the Motorola 68000 family handle their exceptions.
Both Kickstart 1.3 and 2.0 dos.library functions are mentioned. All new functions which were introduced in OS 2.0 are clearly marked as such, so that the discerning programmer can adapt his/her programs so that they'll work on both versions of the system software.
The only drawback I was able to detect is the rather short chapter on the current filesystems. I would have liked to see more information about the new DCFS (Directory Caching File System), which was introduced with AmigaDOS 3.0. However, such information is still confidential and available to registered developers only.
The book also contains basic computer knowledge, such as a rundown of BCPL, the ISO 6429.2 character set, and internals of the Motorola CPUs. This gives the Amiga Guru Book a nice edge over the completion.
Ralph Babel's unique humor makes the book a good and interesting read. Each chapter of the book is introduced with a few funny and topical quotations taken from literature or the Net. The words of famous Amigans like Leo Schwab, Andy Finkel and Mike Sinz are quoted from the newsgroups net.micro.amiga and comp.sys.amiga, way back when the Amiga was first discussed on USENET.
Or take a look at the Software Failure right on the cover of the book. Can *you* make sense of "Error: 8703 80001 Task: C7E4D9E4"? (In case you can't, here's the answer in ROT13, as not to spoil your fun: Gur reebe pbqr vf bs pbhefr "qbf.yvoenel: Pna'g bcra rkrp.yvoenel". Gur pbqr vf n ovg zber qvssvphyg: vg'f gur fgevat "THEH" rapbqrq va RQPOVP.)
Chapter 6, "Reference Charts for SAC/C and Aztec C" is a bit outdated, since it describes SAS/C 5.x style command line switches, and version 6 is already available. However, the reference is still useful in conjunction with the examples given in Commodore's ROM Kernel manuals, because those rely heavily on SAS/C 5.10. All the examples in the Guru Book, though, have been designed for use with both SAS/C 5.x and 6.x, and Makefiles are supplied for both versions.
Throughout the Amiga Guru Book, you can find many interesting source code fragments and listings. Most of them are meant to illustrate the practical use of functions and techniques discussed in the code, but there are also fully functional and useful programs. The latter also contain checksums, which can be verified after you have typed in and compiled the supplied checksum program. I'd love to see them available on electronic media, since I'm usually too lazy to type them in myself. Ralph Babel himself has indicated that he currently doesn't plan to release the sources, as he fears that this would hurt the sales of the book when people would just pick up the sources.
My only gripe is that I would like to see more examples about how to handle AmigaDOS in all details. However, this is no real drawback, as all the DOS functions are well described and the references to ANSI C standard I/O are commented. You'll just have to work it out yourself.
As for reference works, the obvious comparisons are the ROM Kernel Reference Manuals from Addison-Wesley and The AmigaDOS Manual from Bantam. The Guru Book does its best to supplement the information contained in the former, and to replace the latter.
There have been many other attempts to write reference books for the Amiga, but not a single one matches the Amiga Guru Book in the richness of detail and depth of background.
You can contact the authors at:
Thomas Baetzler, Herrenstr. 62, 76133 Karlsruhe, FRG
Markus Illenseer, Kurt Schumacherstr. 16, 33613 Bielefeld,