Two methods may be used to remove a Bob. The first method uses the RemBob() macro. RemBob() causes the system to remove the Bob during the next call to DrawGList() (or two calls to DrawGList() if the system is double-buffered). RemBob() asks the system to remove the Bob at the next convenient time. See the description of the BOBSAWAY and BOBNIX flags above. It is called as follows: struct Bob myBob = {0}; RemBob(&myBob); The second method uses the RemIBob() routine. RemIBob() tells the system to remove this Bob immediately. For example: struct Bob myBob = {0}; struct RastPort rastport = {0}; struct ViewPort viewport = {0}; RemIBob(&myBob, &rastport, &viewport); This causes the system to erase the Bob from the drawing area and causes the immediate erasure of any other Bob that had been drawn subsequent to (and on top of) this one. The system then unlinks the Bob from the system GEL list. To redraw the Bobs that were drawn on top of the one just removed, another call to DrawGList() must be made.