add: SetMenuSounds (MENU_SOUND_ARROWS, MENU_SOUND_SELECT);
context: DoShipyard (PMENU_STATE pMS){	BOOLEAN select, cancel;	if (GLOBAL (CurrentActivity) & CHECK_ABORT)		goto ExitShipyard;	select = CurrentMenuState.select;	cancel = CurrentMenuState.cancel;	if (!pMS->Initialized)	{		pMS->InputFunc = DoShipyard;		{			STAMP s;			RECT r, old_r;			s.frame = CaptureDrawable (					LoadGraphic (SHIPYARD_PMAP_ANIM)					);			pMS->CurString = CaptureColorMap (LoadColorMapFile (					contentDir, "lbm/dockpani.ct"));			pMS->hMusic = LoadMusicInstance (SHIPYARD_MUSIC);			SetTransitionSource (NULL);			BatchGraphics ();			DrawSISFrame ();			LockMutex (GraphicsLock);			DrawSISMessage (GAME_STRING (STARBASE_STRING_BASE + 3));			DrawSISTitle (GAME_STRING (STARBASE_STRING_BASE));			UnlockMutex (GraphicsLock);			DrawBluePrint (pMS);			pMS->ModuleFrame = s.frame;			DrawMenuStateStrings (PM_CREW, pMS->CurState = SHIPYARD_CREW);			LockMutex (GraphicsLock);			SetContext (SpaceContext);			s.origin.x = s.origin.y = 0;#ifdef USE_3DO_HANGAR			DrawStamp (&s);#else // PC hangar			// the PC ship dock needs to overwrite the border			// expand the clipping rect by 1 pixel			GetContextClipRect (&old_r);			r = old_r;			r.corner.x--;			r.extent.width += 2;			r.extent.height += 1;			SetContextClipRect (&r);			DrawStamp (&s);			SetContextClipRect (&old_r);#endif // USE_3DO_HANGAR						SetContextFont (TinyFont);			{				RECT r;								r.corner.x = 0;				r.corner.y = 0;				r.extent.width = SCREEN_WIDTH;				r.extent.height = SCREEN_HEIGHT;				ScreenTransition (3, &r);			}			PlayMusic (pMS->hMusic, TRUE, 1);			UnbatchGraphics ();			BeginHangarAnim (pMS);			UnlockMutex (GraphicsLock);			ShowCombatShip ((COUNT)~0, (SHIP_FRAGMENTPTR)0);			LockMutex (GraphicsLock);			SetFlashRect ((PRECT)~0L, (FRAME)0);			UnlockMutex (GraphicsLock);		}		pMS->Initialized = TRUE;	}	else if (cancel || (select && pMS->CurState == SHIPYARD_EXIT))	{ExitShipyard:		EndHangarAnim (pMS);		LockMutex (GraphicsLock);		DestroyDrawable (ReleaseDrawable (pMS->ModuleFrame));		pMS->ModuleFrame = 0;		pMS->CurFrame = 0;		DestroyColorMap (ReleaseColorMap (pMS->CurString));		pMS->CurString = 0;		UnlockMutex (GraphicsLock);		return (FALSE);	}	else if (select)	{		if (pMS->CurState != SHIPYARD_SAVELOAD)		{			pMS->Initialized = FALSE;			DoModifyShips (pMS);		}		else		{			EndHangarAnim (pMS);			if (GameOptions () == 0)				goto ExitShipyard;			DrawMenuStateStrings (PM_CREW, pMS->CurState);			LockMutex (GraphicsLock);			SetFlashRect ((PRECT)~0L, (FRAME)0);			BeginHangarAnim (pMS);			UnlockMutex (GraphicsLock);		}	}	else		DoMenuChooser (pMS, PM_CREW);	return (TRUE);}