[net.micro.atari16] Book Review: GEM Programmer's Reference

mendoza@aero.ARPA (Lee Mendoza) (02/27/86)

<your flavorite line-eater offering here>

Book Review:  Atari ST GEM Programmer's Reference
Authors:      Norbert Szczepnowski and Bernd Gunther
Publisher:    Abacus Software
Price:        $19.95

Short review:  This is what the developer's kit should have included.

Long review:

    This book bills itself as "The complete guide to programming the ST
using the Graphics Environment Manager," and it is not too far off the
mark.  As with all of its predecessors, it starts off with the obligatory
heaping of praise on the Motorola MC 68000 and the ST.  The book is about
400 pages long, and is divided into four chapters:  GEM Organization in
the Atari ST; Programming with GEM; Inside GEM -- the VDI; and Inside GEM --
the AES.  Unlike "ST Internals," this book has an index.  There are three
appendices:  Overview of the VDI Functions; Overview of the AES Functions;
and the ever-popular 68000 Instructions.

Chapter 1:  GEM Organization in the Atari ST

     This chapter is a very short description of the interactions of the
components of GEM, and contains little usable information.  A description of
the limited multi-tasking ability of the ST is given.

Chapter 2:  Programming with GEM

     Another title for this chapter might well be "How to use your developer's
kit."  This chapter starts off with a short intro to C (I recommend sticking
with Kernighan and Ritchie) and branches off to assembly language.  As with
the Internals book, this book reflects the early developer systems which
included MINCE as the editor, and a short tutorial for MINCE is provided.
The individual programs that make up the C compiler are discussed (without
information about flags, if any) as is the AS68 assembler.  In all, this
chapter is a bit dated, but might be helpful to someone who has just gotten
their kit.

Chapter 3:  Inside GEM -- the VDI

     This chapter presents an Atari ST specific version of the VDI routines.
The VDI functions are divided by type (control, output, graphic, etc.) and
each description provides a summary of the input and output parameters and
a description of what they do.  The C type declarations and binding is
provided, and is followed by ST-specific remarks.  Where applicable, examples
of the graphics output are shown.  The chapter ends with several examples
coded in both C and assembler.  Many of these examples would appear to be
easily incorporated in other programs.

Chapter 4:  Inside GEM -- the AES

     In this chapter the AES is described in the same manner as the VDI is
described in chapter 3.  Many of the concepts are presented in a slightly
easier to understand form than the developer's kit.  The various types of
buttons are quite well described.  The method of defining structures for
use with the dialog boxes is quite nice, providing an easy alternative to
the Resource Construction Set.  Unfortunately, the RCS is not covered in
this book.  Once again, the chapter ends with some rather nice examples
in both C and assembler.

Summary

     "Atari ST GEM Programmer's Reference" provides a reasonably complete
discussion of programming in the GEM environment.  This book is a nice
addition to the documentation in the developer's kit, and would provide an
excellent source for those who wish to program the ST but don't have the
kit.  Together with "Atari ST Internals," most of the useful information
given in the developer's kit can be found, and found more easily.  I would
highly recommend this book; it's only failing is the lack of documentation
on the Resource Construction Set.

-----------------------------------------------------------------------------
Standard disclaimers about opinions above not representing, and my not working,
etc. etc.

Lee Mendoza
ARPA:  mendoza@aerospace.arpa