rem: t.align = ALIGN_CENTER;
add: t.align = ALIGN_LEFT;
context: ShowSummary (SUMMARY_DESC *pSD){	RECT r;	STAMP s;	if (pSD->year_index == 0)	{		// Unused save slot, draw 'Empty Game' message.		s.origin.x = s.origin.y = 0;		s.frame = SetAbsFrameIndex (pLocMenuState->ModuleFrame,				GetFrameCount (pLocMenuState->ModuleFrame) - 4);		DrawStamp (&s);		r.corner.x = 1;		r.corner.y = 141;		r.extent.width = SIS_SCREEN_WIDTH - 1;		r.extent.height = 7;		SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x00, 0x14), 0x01));		DrawFilledRectangle (&r);	}	else	{		// Game slot used, draw information about save game.		BYTE i;		RECT OldRect;		TEXT t;		QUEUE player_q;		CONTEXT OldContext;		SIS_STATE SaveSS;		UNICODE buf[80];		SaveSS = GlobData.SIS_state;		player_q = GLOBAL (built_ship_q);		OldContext = SetContext (StatusContext);		GetContextClipRect (&OldRect);		r.corner.x = SIS_ORG_X + ((SIS_SCREEN_WIDTH - STATUS_WIDTH) >> 1) +				SAFE_X - 16;//		r.corner.x = SIS_ORG_X + ((SIS_SCREEN_WIDTH - STATUS_WIDTH) >> 1);		r.corner.y = SIS_ORG_Y;		r.extent.width = STATUS_WIDTH;		r.extent.height = STATUS_HEIGHT;		SetContextClipRect (&r);		GlobData.SIS_state = pSD->SS;		InitQueue (&GLOBAL (built_ship_q),				MAX_BUILT_SHIPS, sizeof (SHIP_FRAGMENT));		for (i = 0; i < pSD->NumShips; ++i)			CloneShipFragment (pSD->ShipList[i], &GLOBAL (built_ship_q), 0);		DateToString (buf, pSD->month_index, pSD->day_index, pSD->year_index),		ClearSISRect (DRAW_SIS_DISPLAY);		DrawStatusMessage (buf);		UninitQueue (&GLOBAL (built_ship_q));		SetContextClipRect (&OldRect);		SetContext (SpaceContext);		BatchGraphics ();		DrawCargo (0);		s.origin.y = 13;		r.extent.width = r.extent.height = 16;		SetContextForeGroundColor (BLACK_COLOR);		for (i = 0; i < 4; ++i)		{			BYTE j;			s.origin.x = 140;			for (j = 0; j < 4; ++j)			{				if ((i << 2) + j >= pSD->NumDevices)				{					r.corner = s.origin;					DrawFilledRectangle (&r);				}				else				{					extern FRAME misc_data;					s.frame = SetAbsFrameIndex (							misc_data, 77 + pSD->DeviceList[(i << 2) + j]							);					DrawStamp (&s);				}				s.origin.x += 18;			}			s.origin.y += 18;		}		UnbatchGraphics ();		SetContextFont (StarConFont);		t.baseline.x = 173;		t.align = ALIGN_CENTER;		t.CharCount = (COUNT)~0;		t.pStr = buf;		if (pSD->Flags & AFTER_BOMB_INSTALLED)		{			s.origin.x = s.origin.y = 0;			s.frame = SetRelFrameIndex (					pLocMenuState->ModuleFrame, MAX_SAVED_GAMES * 2					);			DrawStamp (&s);			s.frame = IncFrameIndex (s.frame);			DrawStamp (&s);		}		else		{			SetContext (RadarContext);			GetContextClipRect (&OldRect);			r.corner.x = SIS_ORG_X + 10;			r.corner.y = SIS_ORG_Y + 84;			r.extent = OldRect.extent;			SetContextClipRect (&r);			ClearSemaphore (GraphicsSem);			InitLander ((unsigned char)(pSD->Flags | OVERRIDE_LANDER_FLAGS));			SetSemaphore (GraphicsSem);			SetContextClipRect (&OldRect);			SetContext (SpaceContext);			wsprintf (buf, "%lu", GLOBAL_SIS (ResUnits));			t.baseline.y = 102;			r.extent.width = 30;			r.extent.height = SHIP_NAME_HEIGHT;			r.corner.x = t.baseline.x - (r.extent.width >> 1);			r.corner.y = t.baseline.y - SHIP_NAME_HEIGHT + 1;			SetContextForeGroundColor (BLACK_COLOR);			DrawFilledRectangle (&r);			SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x10, 0x00, 0x10), 0x01));			font_DrawText (&t);			t.CharCount = (COUNT)~0;		}		t.baseline.y = 126;		wsprintf (buf, "%u", MAKE_WORD (pSD->MCreditLo, pSD->MCreditHi));		r.extent.width = 30;		r.extent.height = SHIP_NAME_HEIGHT;		r.corner.x = t.baseline.x - (r.extent.width >> 1);		r.corner.y = t.baseline.y - SHIP_NAME_HEIGHT + 1;		SetContextForeGroundColor (BLACK_COLOR);		DrawFilledRectangle (&r);		SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x10, 0x00, 0x10), 0x01));		font_DrawText (&t);				r.corner.x = 1;		r.corner.y = 141;		r.extent.width = SIS_SCREEN_WIDTH - 1;		r.extent.height = 7;		SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x00, 0x14), 0x01));		DrawFilledRectangle (&r);		t.baseline.x = r.corner.x + (SIS_MESSAGE_WIDTH >> 1);		t.baseline.y = r.corner.y + (r.extent.height - 1);		t.align = ALIGN_CENTER;		t.pStr = buf;		r.corner.x = LOGX_TO_UNIVERSE (GLOBAL_SIS (log_x));		r.corner.y = LOGY_TO_UNIVERSE (GLOBAL_SIS (log_y));		switch (pSD->Activity)		{			case IN_LAST_BATTLE:			case IN_INTERPLANETARY:			case IN_PLANET_ORBIT:			case IN_STARBASE:			{				BYTE QuasiState;				STAR_DESCPTR SDPtr;								QuasiState = GET_GAME_STATE (ARILOU_SPACE_SIDE);				SET_GAME_STATE (ARILOU_SPACE_SIDE, 0);				SDPtr = FindStar (NULL_PTR, &r.corner, 1, 1);				SET_GAME_STATE (ARILOU_SPACE_SIDE, QuasiState);				if (SDPtr)				{					GetClusterName (SDPtr, buf);					r.corner = SDPtr->star_pt;					break;				}			}			default:				buf[0] = '\0';				break;			case IN_HYPERSPACE:				wstrcpy (buf, GAME_STRING (NAVIGATION_STRING_BASE + 0));				break;			case IN_QUASISPACE:				wstrcpy (buf, GAME_STRING (NAVIGATION_STRING_BASE + 1));				break;		}		SetContextFont (TinyFont);		SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x1B, 0x00, 0x1B), 0x33));		t.CharCount = (COUNT)~0;		font_DrawText (&t);		t.baseline.x = SIS_SCREEN_WIDTH - 57 + 1 + (SIS_TITLE_WIDTH >> 1);		if (pSD->Activity == IN_STARBASE)			wstrcpy (buf, GAME_STRING (STARBASE_STRING_BASE));		else if (pSD->Activity == IN_PLANET_ORBIT)			wstrcpy (buf, GLOBAL_SIS (PlanetName));		else			wsprintf (buf, "%03u.%01u:%03u.%01u",					r.corner.x / 10, r.corner.x % 10,					r.corner.y / 10, r.corner.y % 10);		t.CharCount = (COUNT)~0;		font_DrawText (&t);				SetContext (OldContext);		GLOBAL (built_ship_q) = player_q;		GlobData.SIS_state = SaveSS;	}}