When re-creating CSGads.c with GadToolsBox, there are a few minor changes you must make. The following are diffs between the original (<) and altered (>) versions along with some comments. ============================================================================== 25c25 < struct Screen *Scr = NULL; --- > extern struct Screen *Scr; ! Scr is declared in CSMain as "IntuitionBase->FirstScreen", so declare it as ! extern here. You should also comment out the "extern Struct Screen" ! declaration in CSGads.h ============================================================================== 40d39 < (UBYTE *)"-------", ! GadToolsBox insists on two labels for Cycle gadgets, Intuition doesn't care ! won't hurt to leave this in, but removed it to eliminate confusion. ============================================================================== 117c116 < (GTCY_Labels), (ULONG)&CYCLE_GAD0Labels[ 0 ], (TAG_DONE), --- > (GTCY_Labels), (ULONG)&CYCLE_GAD0Labels[ 0 ],(GA_Disabled), TRUE, (TAG_DONE), ! GadToolsBox won't save the cycle gadget as being disabled (a bug ??), need ! to disable it here. ============================================================================== 140,141c139,140 < if ( ! ( Scr = LockPubScreen( PubScreenName ))) < return( 1L ); --- > /* if ( ! ( Scr = LockPubScreen( PubScreenName ))) > return( 1L );*/ ! ColorSaver doesn't currently use LockPubScreen, so comment this out ============================================================================== 184a184,185 > ColorSaverGTags[1] = Scr->BitMap.Depth; > ! This allows ColorSaver to popup with the right number of palette entries for ! the depth of the current screen. ! ! >>>> WARNING <<<< You *MUST* keep the Palette gadget as the first entry ! in the GTags list for this to work! ! ==============================================================================