Migrated the GraphicsLock to an ordinary mutex; it is used exclusively
for maintaining critical sections. git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@1253 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
Changes towards version 0.4:
|
||||
- Downgraded the GraphicsLock to an ordinary Mutex -Michael
|
||||
- Extra fallback for the unlikely situation that $HOME isn't set on a
|
||||
unix system. (#493) - SvdB
|
||||
- Accept spaces in --contentdir argument (#492) - SvdB
|
||||
|
||||
@@ -163,7 +163,7 @@ Battle (void)
|
||||
extern SIZE InitShips (void);
|
||||
void UninitShips (void);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetResourceIndex (hResIndex);
|
||||
|
||||
@@ -222,7 +222,7 @@ Battle (void)
|
||||
ScreenTransition (3, &r);
|
||||
}
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
if (nth_frame)
|
||||
TaskSwitch ();
|
||||
else
|
||||
@@ -231,7 +231,7 @@ Battle (void)
|
||||
NextTime = GetTimeCounter ();
|
||||
}
|
||||
ProcessInput ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
} while (GLOBAL (CurrentActivity) & IN_BATTLE);
|
||||
|
||||
AbortBattle:
|
||||
@@ -242,7 +242,7 @@ AbortBattle:
|
||||
UninitShips ();
|
||||
FreeBattleSong ();
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (num_ships < 0);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ DrawSISFrame (void)
|
||||
{
|
||||
RECT r;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
|
||||
BatchGraphics ();
|
||||
@@ -186,6 +186,6 @@ DrawSISFrame (void)
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnbatchGraphics ();
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
|
||||
@@ -205,10 +205,10 @@ ActivateStarShip (COUNT which_ship, SIZE state)
|
||||
|
||||
if (ShipRemoved)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (UNDEFINED_DELTA,
|
||||
UNDEFINED_DELTA, UNDEFINED_DELTA);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -293,10 +293,10 @@ ActivateStarShip (COUNT which_ship, SIZE state)
|
||||
);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (UNDEFINED_DELTA,
|
||||
UNDEFINED_DELTA, UNDEFINED_DELTA);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (i);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -89,7 +89,7 @@ int clock_task_func(void* data)
|
||||
}
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
{
|
||||
HEVENT hEvent;
|
||||
@@ -114,7 +114,7 @@ int clock_task_func(void* data)
|
||||
FreeEvent (hEvent);
|
||||
}
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
OnAutoPilot = (BOOLEAN)(
|
||||
@@ -126,7 +126,7 @@ int clock_task_func(void* data)
|
||||
{
|
||||
DWORD num_ticks;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
num_ticks = GetTimeCounter () - LastTime;
|
||||
if (!OnAutoPilot)
|
||||
{
|
||||
@@ -159,7 +159,7 @@ int clock_task_func(void* data)
|
||||
cycle_index = (cycle_index + 1) % NUM_CYCLES;
|
||||
delay_count = NUM_DELAYS;
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LastPilot = OnAutoPilot;
|
||||
LastTime += num_ticks;
|
||||
|
||||
+64
-64
@@ -870,10 +870,10 @@ int ambient_anim_task(void* data)
|
||||
while ((CommFrame = CommData.AlienFrame) == 0 && !Task_ReadState (task, TASK_EXIT))
|
||||
TaskSwitch ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
memset ((PSTR)&DisplayArray[0], 0, sizeof (DisplayArray));
|
||||
SetUpSequence (Sequencer);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
ActiveMask = 0;
|
||||
TalkAlarm = 0;
|
||||
@@ -902,7 +902,7 @@ int ambient_anim_task(void* data)
|
||||
|
||||
SleepThreadUntil (LastTime + ONE_SECOND / 120);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
CurTime = GetTimeCounter ();
|
||||
ElapsedTicks = CurTime - LastTime;
|
||||
@@ -1288,7 +1288,7 @@ int ambient_anim_task(void* data)
|
||||
UpdateSpeechGraphics (FALSE);
|
||||
}
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
xform_PLUT_step(ElapsedTicks);
|
||||
}
|
||||
FinishTask (task);
|
||||
@@ -1320,15 +1320,15 @@ SpewPhrases (COUNT wait_track)
|
||||
if (wait_track == 1 || wait_track == (COUNT)~0)
|
||||
{
|
||||
ResumeTrack ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
do
|
||||
{
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
which_track = PlayingTrack ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
} while (!which_track);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else if (which_track <= wait_track)
|
||||
@@ -1339,7 +1339,7 @@ SpewPhrases (COUNT wait_track)
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
break;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
/* FIXME: is this a ramnant of 128-tick clock?
|
||||
* with 120-tick clock this will sleep for 1 tick --
|
||||
* for 1/120th of a second; if ONE_SECOND is upgraded
|
||||
@@ -1354,7 +1354,7 @@ SpewPhrases (COUNT wait_track)
|
||||
UpdateInputState ();
|
||||
#endif
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (CurrentMenuState.cancel)
|
||||
{
|
||||
SetSliderImage (SetAbsFrameIndex (ActivityFrame, 8));
|
||||
@@ -1443,7 +1443,7 @@ AlienTalkSegue (COUNT wait_track)
|
||||
if ((GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
|| (CommData.AlienTransitionDesc.AnimFlags & TALK_INTRO))
|
||||
return;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (!pCurInputState->Initialized)
|
||||
{
|
||||
@@ -1505,9 +1505,9 @@ AlienTalkSegue (COUNT wait_track)
|
||||
pCurInputState->AnimTask = AssignTask (ambient_anim_task,
|
||||
3072, "ambient animations");
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SleepThreadUntil (TimeOut);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
LastActivity &= ~CHECK_LOAD;
|
||||
@@ -1526,9 +1526,9 @@ AlienTalkSegue (COUNT wait_track)
|
||||
CommData.AlienTalkDesc.AnimFlags |= WAIT_TALKING;
|
||||
while (CommData.AlienTalkDesc.AnimFlags & TALK_INTRO)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1544,7 +1544,7 @@ AlienTalkSegue (COUNT wait_track)
|
||||
CommData.AlienTalkDesc.AnimFlags |= PAUSE_TALKING;
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushInput ();
|
||||
while (AnyButtonPress (TRUE))
|
||||
TaskSwitch ();
|
||||
@@ -1579,7 +1579,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
if (CurrentMenuState.left)
|
||||
{
|
||||
FadeMusic (BACKGROUND_VOL, ONE_SECOND);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
CommData.AlienTransitionDesc.AnimFlags &= ~(TALK_INTRO | TALK_DONE);
|
||||
if (CommData.AlienTalkDesc.NumFrames)
|
||||
{
|
||||
@@ -1595,9 +1595,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
CommData.AlienTalkDesc.AnimFlags |= WAIT_TALKING;
|
||||
while (CommData.AlienTalkDesc.AnimFlags & TALK_INTRO)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1610,7 +1610,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
CommData.AlienTalkDesc.AnimFlags |= PAUSE_TALKING;
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushInput ();
|
||||
while (AnyButtonPress (TRUE))
|
||||
TaskSwitch ();
|
||||
@@ -1632,9 +1632,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
if (pES->top_response == (BYTE)~0)
|
||||
{
|
||||
pES->top_response = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RefreshResponses (pES);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (CurrentMenuState.select)
|
||||
@@ -1646,11 +1646,11 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
pES->phrase_buf_index);
|
||||
pES->phrase_buf[pES->phrase_buf_index++] = '\0';
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
FeedbackPlayerPhrase (pES->phrase_buf);
|
||||
StopTrack ();
|
||||
SetSliderImage (SetAbsFrameIndex (ActivityFrame, 2));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
FadeMusic (BACKGROUND_VOL, ONE_SECOND);
|
||||
|
||||
@@ -1676,21 +1676,21 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
DWORD CurTime;
|
||||
FONT fLast;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawSISComWindow ();
|
||||
FeedbackPlayerPhrase (pES->phrase_buf);
|
||||
summary = TRUE;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
CurTime = GetTimeCounter ();
|
||||
SleepThreadUntil (CurTime + ONE_SECOND / 30);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
r.corner.x = 0;
|
||||
r.corner.y = 0;
|
||||
r.extent.width = SIS_SCREEN_WIDTH;
|
||||
r.extent.height = SIS_SCREEN_HEIGHT - SLIDER_Y - SLIDER_HEIGHT + 2;
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x05, 0x00), 0x6E));
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SetContextBackGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x05, 0x00), 0x6E));
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x10, 0x00), 0x6B));
|
||||
@@ -1727,9 +1727,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
buffer[i] = '\0';
|
||||
temp++;
|
||||
t.pStr = buffer;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
t.baseline.y += DELTA_Y_SUMMARY;
|
||||
col++;
|
||||
if (col > MAX_COLS)
|
||||
@@ -1738,9 +1738,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
t.align = ALIGN_CENTER;
|
||||
t.pStr = "_MORE_";
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x17, 0x00), 0x01));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
col = 0;
|
||||
t.baseline.x = SAFE_X + 2;
|
||||
t.align = ALIGN_LEFT;
|
||||
@@ -1748,10 +1748,10 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
|
||||
WaitAnyButtonOrQuit (TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x05, 0x00), 0x6E));
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x10, 0x00), 0x6B));
|
||||
}
|
||||
}
|
||||
@@ -1760,9 +1760,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
break;
|
||||
|
||||
t.pStr = temp;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
t.baseline.y += DELTA_Y_SUMMARY;
|
||||
col++;
|
||||
if (col > MAX_COLS && curr->next != NULL)
|
||||
@@ -1772,9 +1772,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
t.align = ALIGN_CENTER;
|
||||
t.pStr = "_MORE_";
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x17, 0x00), 0x01));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
col = 0;
|
||||
t.baseline.x = SAFE_X + 2;
|
||||
t.align = ALIGN_LEFT;
|
||||
@@ -1782,22 +1782,22 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
|
||||
WaitAnyButtonOrQuit (TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x05, 0x00), 0x6E));
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x10, 0x00), 0x6B));
|
||||
}
|
||||
}
|
||||
|
||||
WaitAnyButtonOrQuit (TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContextFont (fLast);
|
||||
RefreshResponses (pES);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x00, 0x00, 0x00), 0x00));
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SummaryChange = TRUE;
|
||||
summary = FALSE;
|
||||
FlushInput ();
|
||||
@@ -1810,7 +1810,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
if (CurrentMenuState.left)
|
||||
{
|
||||
FadeMusic (BACKGROUND_VOL, ONE_SECOND);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
FeedbackPlayerPhrase (pES->phrase_buf);
|
||||
|
||||
CommData.AlienTransitionDesc.AnimFlags &= ~(TALK_INTRO | TALK_DONE);
|
||||
@@ -1828,9 +1828,9 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
CommData.AlienTalkDesc.AnimFlags |= WAIT_TALKING;
|
||||
while (CommData.AlienTalkDesc.AnimFlags & TALK_INTRO)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1847,7 +1847,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
RefreshResponses (pES);
|
||||
FadeMusic (FOREGROUND_VOL, ONE_SECOND);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushInput ();
|
||||
while (AnyButtonPress (TRUE))
|
||||
TaskSwitch ();
|
||||
@@ -1866,7 +1866,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
{
|
||||
COORD y;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
add_text (-2, &pES->response_list[pES->cur_response].response_text);
|
||||
|
||||
@@ -1884,20 +1884,20 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
RefreshResponses (pES);
|
||||
}
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
return (TRUE);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (pES->AnimTask)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
ConcludeTask (pES->AnimTask);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pES->AnimTask = 0;
|
||||
}
|
||||
CommData.AlienTransitionDesc.AnimFlags &= ~(TALK_INTRO | TALK_DONE);
|
||||
@@ -1906,7 +1906,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
DestroyContext (ReleaseContext (TaskContext));
|
||||
TaskContext = 0;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
FlushPLUTXForms ();
|
||||
ColorChange = FALSE;
|
||||
@@ -2020,15 +2020,15 @@ HailAlien (void)
|
||||
if (pMenuState == 0)
|
||||
{
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings ((BYTE)~0, 1);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
else /* in starbase */
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (GET_GAME_STATE (STARBASE_AVAILABLE))
|
||||
{
|
||||
DrawSISMessage (GAME_STRING (STARBASE_STRING_BASE + 1));
|
||||
@@ -2045,7 +2045,7 @@ HailAlien (void)
|
||||
DrawSISComWindow ();
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LastActivity |= CHECK_LOAD; /* prevent spurious input */
|
||||
(*CommData.init_encounter_func) ();
|
||||
@@ -2053,7 +2053,7 @@ HailAlien (void)
|
||||
if (!(GLOBAL (CurrentActivity) & (CHECK_ABORT | CHECK_LOAD)))
|
||||
(*CommData.uninit_encounter_func) ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
DestroyStringTable (ReleaseStringTable (CommData.ConversationPhrases));
|
||||
DestroyMusic ((MUSIC_REF)CommData.AlienSong);
|
||||
@@ -2078,7 +2078,7 @@ InitCommunication (RESOURCE which_comm)
|
||||
|
||||
last_subtitle = NULL;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (LastActivity & CHECK_LOAD)
|
||||
{
|
||||
@@ -2087,9 +2087,9 @@ InitCommunication (RESOURCE which_comm)
|
||||
{
|
||||
if (LOBYTE (LastActivity) == 0)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2147,7 +2147,7 @@ InitCommunication (RESOURCE which_comm)
|
||||
CommData = *LocDataPtr;
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (GET_GAME_STATE (BATTLE_SEGUE) == 0)
|
||||
status = HAIL;
|
||||
@@ -2161,7 +2161,7 @@ InitCommunication (RESOURCE which_comm)
|
||||
SET_GAME_STATE (BATTLE_SEGUE, 1);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (status == HAIL)
|
||||
{
|
||||
@@ -2175,7 +2175,7 @@ InitCommunication (RESOURCE which_comm)
|
||||
SetResourceIndex (hOldIndex);
|
||||
CloseResourceIndex (hIndex);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
status = 0;
|
||||
if (!(GLOBAL (CurrentActivity) & (CHECK_ABORT | CHECK_LOAD)))
|
||||
|
||||
@@ -216,10 +216,10 @@ NoRadioactives (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_A_NEW_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (LANDERS_LOST, 1);
|
||||
}
|
||||
@@ -227,26 +227,26 @@ NoRadioactives (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_ANOTHER_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (GIVEN_FUEL_BEFORE, 1);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel_again))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL_AGAIN);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (GLOBAL_SIS (ElementAmounts[RADIOACTIVE]))
|
||||
@@ -284,10 +284,10 @@ AskAfterRadios (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_A_NEW_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (LANDERS_LOST, 1);
|
||||
}
|
||||
@@ -295,26 +295,26 @@ AskAfterRadios (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_ANOTHER_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (GIVEN_FUEL_BEFORE, 1);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel_again))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL_AGAIN);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PLAYER_SAID (R, where_get_radios))
|
||||
{
|
||||
@@ -384,10 +384,10 @@ TellMoonBase (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_A_NEW_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (LANDERS_LOST, 1);
|
||||
}
|
||||
@@ -395,26 +395,26 @@ TellMoonBase (RESPONSE_REF R)
|
||||
{
|
||||
NPCPhrase (HERE_IS_ANOTHER_LANDER);
|
||||
++GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
DeltaSISGauges (4, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (GIVEN_FUEL_BEFORE, 1);
|
||||
}
|
||||
else if (PLAYER_SAID (R, need_fuel_again))
|
||||
{
|
||||
NPCPhrase (GIVE_FUEL_AGAIN);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 5 * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PLAYER_SAID (R, we_are_here_to_help))
|
||||
{
|
||||
@@ -576,9 +576,9 @@ GiveRadios (RESPONSE_REF R)
|
||||
NPCPhrase (FUEL_UP1);
|
||||
AlienTalkSegue (1);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
CommData.AlienAmbientArray[2].AnimFlags |= ANIM_DISABLED;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
XFormPLUT (GetColorMapAddress (
|
||||
SetAbsColorMapIndex (CommData.AlienColorMap, 0)
|
||||
|
||||
@@ -230,9 +230,9 @@ Buy (RESPONSE_REF Response)
|
||||
NPCPhrase (NOT_ENOUGH_ROOM);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-SHIP_CREW_COST, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SlaveryCount += SHIP_CREW_COST;
|
||||
ActivateStarShip (DRUUGE_SHIP, 1);
|
||||
|
||||
@@ -246,9 +246,9 @@ Buy (RESPONSE_REF Response)
|
||||
NPCPhrase (NOT_ENOUGH_CREW);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-ARTIFACT_CREW_COST, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SlaveryCount += ARTIFACT_CREW_COST;
|
||||
SET_GAME_STATE (ROSY_SPHERE_ON_SHIP, 1);
|
||||
SET_GAME_STATE (ROSY_SPHERE, 1);
|
||||
@@ -262,9 +262,9 @@ Buy (RESPONSE_REF Response)
|
||||
NPCPhrase (NOT_ENOUGH_CREW);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-ARTIFACT_CREW_COST, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SlaveryCount += ARTIFACT_CREW_COST;
|
||||
SET_GAME_STATE (ARTIFACT_2_ON_SHIP, 1);
|
||||
|
||||
@@ -277,9 +277,9 @@ Buy (RESPONSE_REF Response)
|
||||
NPCPhrase (NOT_ENOUGH_CREW);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-ARTIFACT_CREW_COST, 0, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SlaveryCount += ARTIFACT_CREW_COST;
|
||||
SET_GAME_STATE (ARTIFACT_3_ON_SHIP, 1);
|
||||
|
||||
@@ -293,10 +293,10 @@ Buy (RESPONSE_REF Response)
|
||||
NPCPhrase (NOT_ENOUGH_CREW);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-FUEL_CREW_COST,
|
||||
FUEL_CREW_COST * FUEL_TANK_SCALE, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SlaveryCount += FUEL_CREW_COST;
|
||||
|
||||
NPCPhrase (BOUGHT_FUEL);
|
||||
@@ -452,14 +452,14 @@ DoTransaction (RESPONSE_REF R)
|
||||
capacity -= GLOBAL_SIS (FuelOnBoard);
|
||||
f = (COUNT)((capacity + (FUEL_TANK_SCALE >> 1)) / FUEL_TANK_SCALE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
while (capacity > 0x3FFFL)
|
||||
{
|
||||
DeltaSISGauges (0, 0x3FFF, 0);
|
||||
capacity -= 0x3FFF;
|
||||
}
|
||||
DeltaSISGauges (0, (SIZE)capacity, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
NPCPhrase (FUEL0);
|
||||
NPCPhrase (-(int)f);
|
||||
|
||||
@@ -250,9 +250,9 @@ StripShip (COUNT fuel_required)
|
||||
if (fuel_required == 0)
|
||||
{
|
||||
GlobData.SIS_state = SIS_copy;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (UNDEFINED_DELTA, rescue_fuel, UNDEFINED_DELTA);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (fuel_required == (COUNT)~0)
|
||||
{
|
||||
@@ -276,9 +276,9 @@ StripShip (COUNT fuel_required)
|
||||
GLOBAL_SIS (ModuleSlots[i]) = EMPTY_SLOT + 2;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (UNDEFINED_DELTA, UNDEFINED_DELTA, UNDEFINED_DELTA);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (fuel_required)
|
||||
{
|
||||
@@ -384,9 +384,9 @@ StripShip (COUNT fuel_required)
|
||||
if (total == 0)
|
||||
{
|
||||
NPCPhrase (CHARITY);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, fuel_required, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (FALSE);
|
||||
}
|
||||
else
|
||||
@@ -567,9 +567,9 @@ DeltaCredit (SIZE delta_credit)
|
||||
Credit += delta_credit;
|
||||
SET_GAME_STATE (MELNORME_CREDIT0, LOBYTE (Credit));
|
||||
SET_GAME_STATE (MELNORME_CREDIT1, HIBYTE (Credit));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage ((UNICODE *)~0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -810,14 +810,14 @@ DoBuy (RESPONSE_REF R)
|
||||
NPCPhrase (GOT_FUEL);
|
||||
|
||||
f = (DWORD)needed_credit * FUEL_TANK_SCALE;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
while (f > 0x3FFFL)
|
||||
{
|
||||
DeltaSISGauges (0, 0x3FFF, 0);
|
||||
f -= 0x3FFF;
|
||||
}
|
||||
DeltaSISGauges (0, (SIZE)f, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
needed_credit *= (BIO_CREDIT_VALUE / 2);
|
||||
}
|
||||
@@ -1204,9 +1204,9 @@ DoSell (RESPONSE_REF R)
|
||||
} while (GLOBAL_SIS (TotalBioMass));
|
||||
SleepThread (ONE_SECOND / 2);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else /* if (R == sell_rainbow_locations) */
|
||||
{
|
||||
@@ -1836,9 +1836,9 @@ Intro (void)
|
||||
static COUNT
|
||||
uninit_melnorme (void)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -208,9 +208,9 @@ CombatIsInevitable (RESPONSE_REF R)
|
||||
|
||||
NPCPhrase (DESTRUCT_SEQUENCE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 0, race_bounty[SLYLANDRO_SHIP] >> 3);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SET_GAME_STATE (BATTLE_SEGUE, 0);
|
||||
}
|
||||
else
|
||||
|
||||
@@ -1654,9 +1654,9 @@ NormalStarbase (RESPONSE_REF R)
|
||||
NPCPhrase (GLOBAL_SHIP_NAME);
|
||||
NPCPhrase (STARBASE_IS_READY_C);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 0, 2500);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SET_GAME_STATE (STARBASE_MONTH,
|
||||
GLOBAL (GameClock.month_index));
|
||||
SET_GAME_STATE (STARBASE_DAY,
|
||||
@@ -1765,9 +1765,9 @@ SellMinerals (RESPONSE_REF R)
|
||||
Sleepy = FALSE;
|
||||
GLOBAL_SIS (ElementAmounts[i]) = 0;
|
||||
GLOBAL_SIS (TotalElementMass) -= amount;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, 0, amount * GLOBAL (ElementWorth[i]));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1776,10 +1776,10 @@ SellMinerals (RESPONSE_REF R)
|
||||
TaskSwitch ();
|
||||
TimeIn = GetTimeCounter ();
|
||||
DrawCargoStrings ((BYTE)i, (BYTE)i);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ShowRemainingCapacity ();
|
||||
DeltaSISGauges (0, 0, GLOBAL (ElementWorth[i]));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
} while (--amount);
|
||||
}
|
||||
if (Sleepy) {
|
||||
@@ -1789,9 +1789,9 @@ SellMinerals (RESPONSE_REF R)
|
||||
}
|
||||
SleepThread (ONE_SECOND / 2);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
// DrawStorageBays (FALSE);
|
||||
|
||||
if (total < 1000)
|
||||
|
||||
@@ -105,7 +105,7 @@ DoConfirmExit (void)
|
||||
if (CommData.ConversationPhrases && PlayingTrack ())
|
||||
PauseTrack ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (in_confirm)
|
||||
{
|
||||
result = FALSE;
|
||||
@@ -134,9 +134,9 @@ DoConfirmExit (void)
|
||||
// Releasing the lock lets the rotate_planet_task
|
||||
// draw a frame. PauseRotate can still allow one more frame
|
||||
// to be drawn, so it is safer to just not release the lock
|
||||
//UnlockCrossThreadMutex (GraphicsLock);
|
||||
//UnlockMutex (GraphicsLock);
|
||||
FlushGraphics ();
|
||||
//LockCrossThreadMutex (GraphicsLock);
|
||||
//LockMutex (GraphicsLock);
|
||||
|
||||
GLOBAL (CurrentActivity) |= CHECK_ABORT;
|
||||
FlushInput ();
|
||||
@@ -181,7 +181,7 @@ DoConfirmExit (void)
|
||||
FlushInput ();
|
||||
SetContext (oldContext);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (LOBYTE (GLOBAL (CurrentActivity)) != SUPER_MELEE)
|
||||
ResumeGameClock ();
|
||||
|
||||
@@ -54,7 +54,7 @@ Credits (void)
|
||||
if (hMusic)
|
||||
PlayMusic (hMusic, TRUE, 1);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
GetContextClipRect (&r);
|
||||
s.origin.x = s.origin.y = 0;
|
||||
@@ -81,19 +81,19 @@ Credits (void)
|
||||
UnbatchGraphics ();
|
||||
DestroyDrawable (ReleaseDrawable (f[i]));
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
while ((GetTimeCounter () - TimeIn < ONE_SECOND * 5) &&
|
||||
!(GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
{
|
||||
UpdateInputState ();
|
||||
SleepThreadUntil (ONE_SECOND / 20);
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
TimeIn = GetTimeCounter ();
|
||||
}
|
||||
|
||||
DestroyDrawable (ReleaseDrawable (f[0]));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
WaitAnyButtonOrQuit (FALSE);
|
||||
|
||||
@@ -139,7 +139,7 @@ OutTakes (void)
|
||||
optSubtitles = TRUE;
|
||||
sliderDisabled = TRUE;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0x0, 0x0, 0x0), 0x00));
|
||||
fade_buf[0] = FadeAllToColor;
|
||||
@@ -149,7 +149,7 @@ OutTakes (void)
|
||||
r.extent.width = SCREEN_WIDTH;
|
||||
r.extent.height = SCREEN_HEIGHT;
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
for (i = 0; (i < NUM_OUTTAKES) &&
|
||||
!(GLOBAL (CurrentActivity) & CHECK_ABORT); i++)
|
||||
|
||||
+28
-28
@@ -47,9 +47,9 @@ DoSelectAction (PMENU_STATE pMS)
|
||||
if (pMS->Initialized)
|
||||
{
|
||||
DrawMenuStateStrings (PM_CONVERSE, pMS->CurState);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
return ((BOOLEAN)pMS->Initialized);
|
||||
default:
|
||||
@@ -173,7 +173,7 @@ InitEncounter (void)
|
||||
extern FRAME planet[];
|
||||
MUSIC_REF MR;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
hOldIndex = SetResourceIndex (hResIndex);
|
||||
|
||||
@@ -183,12 +183,12 @@ InitEncounter (void)
|
||||
MR = LoadMusicInstance (REDALERT_MUSIC);
|
||||
PlayMusic (MR, FALSE, 1);
|
||||
SegueFrame = CaptureDrawable (LoadGraphic (SEGUE_PMAP_ANIM));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
while (PLRPlaying (MR))
|
||||
TaskSwitch ();
|
||||
StopMusic ();
|
||||
DestroyMusic (MR);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
s.origin.x = s.origin.y = 0;
|
||||
|
||||
SetTransitionSource (NULL);
|
||||
@@ -300,7 +300,7 @@ InitEncounter (void)
|
||||
|
||||
SetResourceIndex (hOldIndex);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
{
|
||||
MENU_STATE MenuState;
|
||||
@@ -309,15 +309,15 @@ InitEncounter (void)
|
||||
MenuState.Initialized = FALSE;
|
||||
|
||||
DrawMenuStateStrings (PM_CONVERSE, MenuState.CurState = HAIL);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DoInput ((PVOID)&MenuState, TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (MenuState.CurState);
|
||||
}
|
||||
@@ -357,10 +357,10 @@ DrawFadeText (UNICODE *str1, UNICODE *str2, BOOLEAN fade_in, PRECT
|
||||
{
|
||||
for (i = 0; i < (SIZE) NUM_FADES; ++i)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
if (AnyButtonPress (TRUE))
|
||||
i = NUM_FADES - 1;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContextForeGroundColor (fade_cycle[i]);
|
||||
font_DrawText (&t1);
|
||||
@@ -373,10 +373,10 @@ DrawFadeText (UNICODE *str1, UNICODE *str2, BOOLEAN fade_in, PRECT
|
||||
{
|
||||
for (i = NUM_FADES - 1; i >= 0; --i)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
if (AnyButtonPress (TRUE))
|
||||
i = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContextForeGroundColor (fade_cycle[i]);
|
||||
font_DrawText (&t1);
|
||||
@@ -397,7 +397,7 @@ UninitEncounter (void)
|
||||
|
||||
ships_killed = 0;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
free_gravity_well ();
|
||||
|
||||
if ((GLOBAL (CurrentActivity) & (CHECK_ABORT | CHECK_LOAD))
|
||||
@@ -478,9 +478,9 @@ UninitEncounter (void)
|
||||
VictoryState = 0;
|
||||
else
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
DrawSISMessage (NULL_PTR);
|
||||
if (LOBYTE (GLOBAL (CurrentActivity)) == IN_HYPERSPACE)
|
||||
@@ -601,9 +601,9 @@ UninitEncounter (void)
|
||||
Time = GetTimeCounter ();
|
||||
for (j = 0; j < NUM_SHIP_FADES; ++j)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
Sleepy = (BOOLEAN)!AnyButtonPress (TRUE);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (!Sleepy)
|
||||
break;
|
||||
|
||||
@@ -637,10 +637,10 @@ UninitEncounter (void)
|
||||
|
||||
FlushInput ();
|
||||
Time = GetTimeCounter () + (ONE_SECOND * 3);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
while (!(AnyButtonPress (TRUE)) && GetTimeCounter () < Time)
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (!CurrentInputState.p1_escape)
|
||||
{
|
||||
DrawFadeText (str1, str2, FALSE, &scavenge_r);
|
||||
@@ -668,11 +668,11 @@ UninitEncounter (void)
|
||||
&scavenge_r
|
||||
);
|
||||
Time = GetTimeCounter () + ONE_SECOND * 2;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
while (!(AnyButtonPress (TRUE))
|
||||
&& GetTimeCounter () < Time)
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (!CurrentInputState.p1_escape)
|
||||
DrawFadeText (str1, str2, FALSE, &scavenge_r);
|
||||
}
|
||||
@@ -691,7 +691,7 @@ UninitEncounter (void)
|
||||
}
|
||||
}
|
||||
ExitUninitEncounter:
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (ships_killed);
|
||||
}
|
||||
@@ -705,7 +705,7 @@ EncounterBattle (void)
|
||||
extern BOOLEAN LoadSC2Data (void);
|
||||
extern BOOLEAN FreeSC2Data (void);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (BATTLE_SEGUE, 1);
|
||||
|
||||
@@ -741,9 +741,9 @@ EncounterBattle (void)
|
||||
|
||||
GameSounds = CaptureSound (LoadSound (GAME_SOUNDS));
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
Battle ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
DestroySound (ReleaseSound (GameSounds));
|
||||
GameSounds = 0;
|
||||
@@ -769,6 +769,6 @@ EncounterBattle (void)
|
||||
|
||||
SetResourceIndex (hLastIndex);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
|
||||
@@ -79,13 +79,13 @@ Introduction (void)
|
||||
xform_buf[0] = FadeAllToBlack;
|
||||
SleepThreadUntil (XFormColorMap (
|
||||
(COLORMAPPTR) xform_buf, ONE_SECOND / 120));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
s.origin.x = s.origin.y = 0;
|
||||
s.frame = CaptureDrawable (LoadGraphic (TITLE_ANIM));
|
||||
DrawStamp (&s);
|
||||
DestroyDrawable (ReleaseDrawable (s.frame));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
xform_buf[0] = FadeAllToColor;
|
||||
TimeOut = XFormColorMap ((COLORMAPPTR)xform_buf, ONE_SECOND / 2);
|
||||
|
||||
+26
-26
@@ -163,9 +163,9 @@ FeedbackSetting (BYTE which_setting)
|
||||
break;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (buf);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
static void
|
||||
FeedbackQuit (BYTE which_setting)
|
||||
@@ -182,9 +182,9 @@ FeedbackQuit (BYTE which_setting)
|
||||
break;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (buf);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static BOOLEAN DoSettings (PMENU_STATE pMS);
|
||||
@@ -199,7 +199,7 @@ DrawDescriptionString (PMENU_STATE pMS, COUNT which_string, SIZE state)
|
||||
FONT Font;
|
||||
static BOOLEAN DoNaming (PMENU_STATE pMS);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
rel_index = (COUNT)(which_string - pMS->first_item.y);
|
||||
|
||||
@@ -276,7 +276,7 @@ DrawDescriptionString (PMENU_STATE pMS, COUNT which_string, SIZE state)
|
||||
TextRect (&lf, &text_r, char_deltas);
|
||||
if ((text_r.extent.width + 2) >= r.extent.width)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (FALSE);
|
||||
}
|
||||
|
||||
@@ -310,7 +310,7 @@ DrawDescriptionString (PMENU_STATE pMS, COUNT which_string, SIZE state)
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (TRUE);
|
||||
}
|
||||
|
||||
@@ -436,9 +436,9 @@ DoNaming (PMENU_STATE pMS)
|
||||
pMS->CurString = (STRING)&GD[0];
|
||||
DrawDescriptionString (pMS, pMS->CurState, 1);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (GAME_STRING (NAMING_STRING_BASE + 0));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
EnableCharacterMode ();
|
||||
DoInput (pMS, TRUE);
|
||||
@@ -513,9 +513,9 @@ DoSettings (PMENU_STATE pMS)
|
||||
|| (CurrentMenuState.select
|
||||
&& pMS->CurState == EXIT_MENU_SETTING))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->CurState = SETTINGS;
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
@@ -582,9 +582,9 @@ DoQuitMenu (PMENU_STATE pMS)
|
||||
|| (CurrentMenuState.select
|
||||
&& pMS->CurState == NO_QUIT_MENU))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->CurState = QUIT_GAME;
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
@@ -858,9 +858,9 @@ ShowSummary (SUMMARY_DESC *pSD)
|
||||
r.corner.y = SIS_ORG_Y + 84;
|
||||
r.extent = OldRect.extent;
|
||||
SetContextClipRect (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
InitLander ((unsigned char)(pSD->Flags | OVERRIDE_LANDER_FLAGS));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContextClipRect (&OldRect);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
@@ -1002,7 +1002,7 @@ DoPickGame (PMENU_STATE pMS)
|
||||
pMS->ModuleFrame = SetAbsFrameIndex (PlayFrame, 41);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetTransitionSource (NULL);
|
||||
BatchGraphics ();
|
||||
Restart:
|
||||
@@ -1037,7 +1037,7 @@ Restart:
|
||||
prev_save = pMS->CurState;
|
||||
if (pMS->delta_item == SAVE_GAME || pSD->year_index)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (pMS->delta_item == SAVE_GAME)
|
||||
{
|
||||
STAMP MsgStamp;
|
||||
@@ -1056,13 +1056,13 @@ Restart:
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
DrawStamp (&MsgStamp);
|
||||
DestroyDrawable (ReleaseDrawable (MsgStamp.frame));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SaveProblem ();
|
||||
|
||||
pMS->Initialized = FALSE;
|
||||
NewState = pMS->CurState;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
goto Restart;
|
||||
}
|
||||
@@ -1088,7 +1088,7 @@ Restart:
|
||||
GLOBAL (CurrentActivity) |= CHECK_LOAD;
|
||||
}
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->ModuleFrame = 0;
|
||||
pMS->CurState = (BYTE)pMS->delta_item;
|
||||
@@ -1137,7 +1137,7 @@ Restart:
|
||||
TEXT t;
|
||||
BYTE i, SHIFT;
|
||||
UNICODE buf[80],buf2[15];
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
BatchGraphics ();
|
||||
if (((SUMMARY_DESC *)pMS->CurString)[NewState].year_index != 0)
|
||||
@@ -1245,7 +1245,7 @@ ChangeGameSelection:
|
||||
UnbatchGraphics ();
|
||||
}
|
||||
SetFlashRect (0, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1268,7 +1268,7 @@ PickGame (PMENU_STATE pMS)
|
||||
TaskSwitch ();
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
|
||||
DlgStamp.origin.x = 0;
|
||||
@@ -1284,11 +1284,11 @@ PickGame (PMENU_STATE pMS)
|
||||
pMS->Initialized = FALSE;
|
||||
pMS->InputFunc = DoPickGame;
|
||||
pMS->CurString = (STRING)&desc_array[0];
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DoInput (pMS, TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pMS->Initialized = -1;
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
|
||||
@@ -1340,7 +1340,7 @@ PickGame (PMENU_STATE pMS)
|
||||
DestroyDrawable (ReleaseDrawable (DlgStamp.frame));
|
||||
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (retval);
|
||||
}
|
||||
|
||||
+10
-10
@@ -322,9 +322,9 @@ LoadHyperspace (void)
|
||||
{
|
||||
if (LOBYTE (LastActivity) == 0)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -360,9 +360,9 @@ LoadHyperspace (void)
|
||||
BOOLEAN
|
||||
FreeHyperspace (void)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SuspendGameClock ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
{
|
||||
FRAME F;
|
||||
@@ -1601,7 +1601,7 @@ UnbatchGraphics ();
|
||||
OldContext = SetContext (SpaceContext);
|
||||
OldColor = SetContextBackGroundColor (BLACK_COLOR);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SuspendGameClock ();
|
||||
|
||||
memset ((PMENU_STATE)&MenuState, 0, sizeof (MenuState));
|
||||
@@ -1610,13 +1610,13 @@ UnbatchGraphics ();
|
||||
MenuState.CurState = STARMAP + 1;
|
||||
|
||||
DrawMenuStateStrings (PM_STARMAP, STARMAP);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DoInput ((PVOID)&MenuState, TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
|
||||
SetContext (SpaceContext);
|
||||
@@ -1624,10 +1624,10 @@ UnbatchGraphics ();
|
||||
if (!(GLOBAL (CurrentActivity) & (CHECK_ABORT | CHECK_LOAD)))
|
||||
{
|
||||
ClearSISRect (CLEAR_SIS_RADAR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
WaitForNoInput (ONE_SECOND / 2);
|
||||
ResumeGameClock ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
SetContextBackGroundColor (OldColor);
|
||||
|
||||
@@ -51,13 +51,13 @@ Introduction (void)
|
||||
xform_buf[0] = FadeAllToBlack;
|
||||
SleepThreadUntil (XFormColorMap (
|
||||
(COLORMAPPTR)xform_buf, ONE_SECOND / 120));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
s.origin.x = s.origin.y = 0;
|
||||
s.frame = CaptureDrawable (LoadGraphic (TITLE_ANIM));
|
||||
DrawStamp (&s);
|
||||
DestroyDrawable (ReleaseDrawable (s.frame));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
FlushInput ();
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ VidPlay (VIDEO_REF VidRef, char *loopname, BOOLEAN uninit)
|
||||
|
||||
TFB_FadeClearScreen ();
|
||||
FlushInput ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
// play video in the center of the screen
|
||||
if (TFB_PlayVideo (VidRef, (SCREEN_WIDTH - vid->w) / 2,
|
||||
@@ -96,7 +96,7 @@ VidPlay (VIDEO_REF VidRef, char *loopname, BOOLEAN uninit)
|
||||
{
|
||||
ret = NO_FMV;
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
/* dodge compiler warnings */
|
||||
(void) loopname;
|
||||
|
||||
@@ -69,12 +69,12 @@ TFB_FadeClearScreen ()
|
||||
(COLORMAPPTR) xform_buf, ONE_SECOND / 2));
|
||||
|
||||
// paint black rect over screen
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
SetContextForeGroundColor (BUILD_COLOR (
|
||||
MAKE_RGB15 (0x0, 0x0, 0x0), 0x00));
|
||||
DrawFilledRectangle (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
// fade in black rect instantly
|
||||
xform_buf[0] = FadeAllToColor;
|
||||
@@ -152,12 +152,12 @@ ac_video_play_task (void* data)
|
||||
// draw the frame
|
||||
if (ret > 0)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
TFB_DrawScreen_Image (vid->frame,
|
||||
vid->dst_rect.corner.x, vid->dst_rect.corner.y,
|
||||
GSCALE_IDENTITY, NULL, TFB_SCREEN_MAIN);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushGraphics (); // needed to prevent half-frame updates
|
||||
}
|
||||
|
||||
@@ -209,12 +209,12 @@ video_play_task (void* data)
|
||||
SleepThreadUntil (vid->frame_time);
|
||||
vid->cur_frame = vid->decoder->cur_frame;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
TFB_DrawScreen_Image (vid->frame,
|
||||
vid->dst_rect.corner.x, vid->dst_rect.corner.y,
|
||||
GSCALE_IDENTITY, NULL, TFB_SCREEN_MAIN);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushGraphics (); // needed to prevent half-frame updates
|
||||
|
||||
ret = VideoDecoder_Decode (vid->decoder);
|
||||
|
||||
+49
-49
@@ -224,9 +224,9 @@ DrawPickFrame (PMELEE_STATE pMS)
|
||||
+ (ship_r.extent.height - r.extent.height));
|
||||
SetFrameHot (F, MAKE_HOT_SPOT (r.corner.x, r.corner.y));
|
||||
DrawMeleeIcon (27);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMeleeShipStrings (pMS, (BYTE)pMS->CurIndex);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -518,19 +518,19 @@ int flash_selection_func(void* data)
|
||||
#define FLASH_RATE (ONE_SECOND / 8)
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
Deselect (pMeleeState->MeleeOption);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SleepThreadUntil (TimeIn + FLASH_RATE);
|
||||
TimeIn = GetTimeCounter ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
Select (pMeleeState->MeleeOption);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SleepThreadUntil (TimeIn + FLASH_RATE);
|
||||
TimeIn = GetTimeCounter ();
|
||||
}
|
||||
@@ -571,7 +571,7 @@ DrawMeleeShipStrings (PMELEE_STATE pMS, BYTE NewStarShip)
|
||||
STARSHIPPTR StarShipPtr;
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
OldContext = SetContext (StatusContext);
|
||||
GetContextClipRect (&OldRect);
|
||||
@@ -630,7 +630,7 @@ DrawMeleeShipStrings (PMELEE_STATE pMS, BYTE NewStarShip)
|
||||
SetContextClipRect (&OldRect);
|
||||
SetContext (OldContext);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static COUNT
|
||||
@@ -846,7 +846,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
|
||||
if (!pMS->Initialized)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Select (pMS->MeleeOption);
|
||||
if ((pMS->TopTeamIndex = pMS->CurIndex) == (COUNT)~0)
|
||||
pMS->TopTeamIndex = pMS->CurIndex = 0;
|
||||
@@ -858,7 +858,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
DrawFileStrings (pMS, -1);
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->InputFunc = DoLoadTeam;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (CurrentMenuState.select | CurrentMenuState.cancel)
|
||||
{
|
||||
@@ -876,9 +876,9 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
RECT r;
|
||||
|
||||
GetFrameRect (SetAbsFrameIndex (MeleeFrame, 28), &r);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairMeleeFrame (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
InTime = GetTimeCounter ();
|
||||
}
|
||||
@@ -932,7 +932,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
|
||||
if (index != old_index)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if ((int)NewTop == (int)pMS->TopTeamIndex)
|
||||
Deselect (pMS->MeleeOption);
|
||||
else
|
||||
@@ -941,7 +941,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
DrawFileStrings (pMS, -1);
|
||||
}
|
||||
pMS->CurIndex = index;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1076,7 +1076,7 @@ DoSaveTeam (PMELEE_STATE pMS)
|
||||
|
||||
sprintf (file, "%s.mle", pMS->TeamImage[pMS->side].TeamName);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (ScreenContext);
|
||||
ConfirmSaveLoad (&MsgStamp);
|
||||
save_fp = res_OpenResFile (meleeDir, file, "wb");
|
||||
@@ -1097,7 +1097,7 @@ DoSaveTeam (PMELEE_STATE pMS)
|
||||
DrawStamp (&MsgStamp);
|
||||
DestroyDrawable (ReleaseDrawable (MsgStamp.frame));
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DeleteResFile (meleeDir, file);
|
||||
SaveProblem ();
|
||||
@@ -1110,7 +1110,7 @@ DoSaveTeam (PMELEE_STATE pMS)
|
||||
DrawStamp (&MsgStamp);
|
||||
DestroyDrawable (ReleaseDrawable (MsgStamp.frame));
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
return (save_fp != 0);
|
||||
@@ -1135,12 +1135,12 @@ DeleteCurrentShip (PMELEE_STATE pMS)
|
||||
|
||||
pMS->TeamImage[pMS->side].ShipList[pMS->row][pMS->col] = (BYTE)~0;
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
GetShipBox (&r, pMS->side, pMS->row, pMS->col);
|
||||
RepairMeleeFrame (&r);
|
||||
|
||||
DrawTeamString (pMS, 4);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
}
|
||||
|
||||
@@ -1177,12 +1177,12 @@ DoEdit (PMELEE_STATE pMS)
|
||||
|| (CurrentMenuState.right
|
||||
&& (pMS->col == NUM_MELEE_COLUMNS - 1 || pMS->row == NUM_MELEE_ROWS))))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (EDIT_MELEE);
|
||||
pMS->CurIndex = (COUNT)~0;
|
||||
pMS->MeleeOption = START_MELEE;
|
||||
pMS->InputFunc = DoMelee;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
InTime = GetTimeCounter ();
|
||||
}
|
||||
else if (pMS->row < NUM_MELEE_ROWS
|
||||
@@ -1213,7 +1213,7 @@ DoEdit (PMELEE_STATE pMS)
|
||||
if (pMS->CurIndex != (BYTE)~0)
|
||||
{
|
||||
UNICODE ch;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (pMS->Initialized == 1)
|
||||
{
|
||||
FlushInput ();
|
||||
@@ -1226,15 +1226,15 @@ DoEdit (PMELEE_STATE pMS)
|
||||
pMS->Initialized = 1;
|
||||
DisableCharacterMode ();
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (TRUE);
|
||||
}
|
||||
else if (CurrentMenuState.select)
|
||||
{
|
||||
pMS->CurIndex = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawTeamString (pMS, 1);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
EnableCharacterMode ();
|
||||
return (TRUE);
|
||||
}
|
||||
@@ -1282,7 +1282,7 @@ DoEdit (PMELEE_STATE pMS)
|
||||
|
||||
if (col != pMS->col || row != pMS->row || side != pMS->side)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (EDIT_MELEE);
|
||||
pMS->side = side;
|
||||
pMS->row = row;
|
||||
@@ -1291,7 +1291,7 @@ DoEdit (PMELEE_STATE pMS)
|
||||
pMS->CurIndex = (BYTE)~0;
|
||||
else
|
||||
pMS->CurIndex = pMS->TeamImage[side].ShipList[row][col];
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DrawMeleeShipStrings (pMS, (BYTE)(pMS->CurIndex));
|
||||
}
|
||||
@@ -1319,21 +1319,21 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
|
||||
if (pMS->Initialized == 0)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (EDIT_MELEE);
|
||||
pMS->InputFunc = DoPickShip;
|
||||
DrawPickFrame (pMS);
|
||||
pMS->Initialized = TRUE;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (EDIT_MELEE);
|
||||
pMS->Initialized = TRUE;
|
||||
AdvanceCursor (pMS);
|
||||
pMS->CurIndex = pMS->TeamImage[pMS->side].ShipList[pMS->row][pMS->col];
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DrawMeleeShipStrings (pMS, (BYTE)(pMS->CurIndex));
|
||||
}
|
||||
@@ -1353,10 +1353,10 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
UnlockStarShip (&master_q, hStarShip);
|
||||
|
||||
pMS->TeamImage[pMS->side].ShipList[pMS->row][pMS->col] = pMS->CurIndex;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawTeamString (pMS, 4);
|
||||
DrawShipBox (pMS, FALSE);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
AdvanceCursor (pMS);
|
||||
}
|
||||
|
||||
@@ -1364,9 +1364,9 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
RECT r;
|
||||
|
||||
GetFrameRect (SetAbsFrameIndex (MeleeFrame, 27), &r);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairMeleeFrame (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
pMS->CurIndex = pMS->TeamImage[pMS->side].ShipList[pMS->row][pMS->col];
|
||||
@@ -1416,10 +1416,10 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
|
||||
if (NewStarShip != pMS->CurIndex)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (EDIT_MELEE);
|
||||
pMS->CurIndex = NewStarShip;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMeleeShipStrings (pMS, NewStarShip);
|
||||
}
|
||||
}
|
||||
@@ -1469,9 +1469,9 @@ FreeMeleeInfo (PMELEE_STATE pMS)
|
||||
{
|
||||
if (pMS->flash_task)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Task_SetState (pMS->flash_task, TASK_EXIT);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMS->flash_task = 0;
|
||||
}
|
||||
DestroyDirEntryTable (ReleaseDirEntryTable (pMS->TeamDE));
|
||||
@@ -1591,9 +1591,9 @@ DoMelee (PMELEE_STATE pMS)
|
||||
{
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->MeleeOption = START_MELEE;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
InitMelee (pMS);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
{
|
||||
BYTE clut_buf[] = {FadeAllToColor};
|
||||
|
||||
@@ -1603,10 +1603,10 @@ DoMelee (PMELEE_STATE pMS)
|
||||
}
|
||||
else if (CurrentMenuState.cancel || CurrentMenuState.left)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
InTime = GetTimeCounter ();
|
||||
Deselect (pMS->MeleeOption);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMS->MeleeOption = EDIT_MELEE;
|
||||
pMS->Initialized = FALSE;
|
||||
if (CurrentMenuState.cancel)
|
||||
@@ -1644,11 +1644,11 @@ DoMelee (PMELEE_STATE pMS)
|
||||
|
||||
if (NewMeleeOption != pMS->MeleeOption)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Deselect (pMS->MeleeOption);
|
||||
pMS->MeleeOption = NewMeleeOption;
|
||||
Select (pMS->MeleeOption);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (CurrentMenuState.select || force_select)
|
||||
@@ -1665,9 +1665,9 @@ DoMelee (PMELEE_STATE pMS)
|
||||
|
||||
if (pMS->flash_task)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
Task_SetState (pMS->flash_task, TASK_EXIT);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMS->flash_task = 0;
|
||||
}
|
||||
|
||||
@@ -1681,9 +1681,9 @@ DoMelee (PMELEE_STATE pMS)
|
||||
}
|
||||
do
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BuildAndDrawShipList (pMS);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
WaitForSoundEnd (TFBSOUND_WAIT_ALL);
|
||||
|
||||
|
||||
@@ -516,7 +516,7 @@ DrawMenuStateStrings (BYTE beg_index, SWORD NewState)
|
||||
if (NewState <= end_index - beg_index)
|
||||
s.frame = SetAbsFrameIndex (PlayFrame, beg_index + NewState);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (StatusContext);
|
||||
GetContextClipRect (&r);
|
||||
s.origin.x = RADAR_X - r.corner.x;
|
||||
@@ -631,6 +631,6 @@ DrawMenuStateStrings (BYTE beg_index, SWORD NewState)
|
||||
&& flash_rect.extent.height == RADAR_HEIGHT)
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
|
||||
+25
-25
@@ -220,7 +220,7 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
|
||||
pMS->InputFunc = DoInstallModule;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContext (SpaceContext);
|
||||
ClearSISRect (CLEAR_SIS_RADAR);
|
||||
@@ -270,7 +270,7 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
}
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
@@ -354,15 +354,15 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
else
|
||||
{
|
||||
SetContext (StatusContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_FUEL, pMS->CurState = OUTFIT_MODULES);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
|
||||
pMS->InputFunc = DoOutfit;
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (motion)
|
||||
{
|
||||
@@ -408,7 +408,7 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
|| (NewItem >= GUN_WEAPON && NewItem <= CANNON_WEAPON
|
||||
&& pMS->delta_item > 0 && pMS->delta_item < 13)));
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (NewState < EMPTY_SLOT)
|
||||
{
|
||||
if (NewItem != pMS->CurState)
|
||||
@@ -505,7 +505,7 @@ InitFlash:
|
||||
else
|
||||
SetFlashRect (&pMS->flash_rect0, (FRAME)0);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
return (TRUE);
|
||||
@@ -519,7 +519,7 @@ ChangeFuelQuantity ()
|
||||
|
||||
if (CurrentMenuState.up)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
if (GetFTankCapacity (&r.corner) > GLOBAL_SIS (FuelOnBoard)
|
||||
&& GLOBAL_SIS (ResUnits) >=
|
||||
@@ -541,11 +541,11 @@ ChangeFuelQuantity ()
|
||||
GetGaugeRect (&r, FALSE);
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (CurrentMenuState.down)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
if (GLOBAL_SIS (FuelOnBoard))
|
||||
{
|
||||
@@ -563,7 +563,7 @@ ChangeFuelQuantity ()
|
||||
SetContext (StatusContext);
|
||||
GetGaugeRect (&r, FALSE);
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -600,7 +600,7 @@ DoOutfit (PMENU_STATE pMS)
|
||||
SetTransitionSource (NULL);
|
||||
BatchGraphics ();
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawSISMessage (GAME_STRING (STARBASE_STRING_BASE + 2));
|
||||
DrawSISTitle (GAME_STRING (STARBASE_STRING_BASE));
|
||||
|
||||
@@ -656,13 +656,13 @@ DoOutfit (PMENU_STATE pMS)
|
||||
DrawStamp ((PSTAMP)&s);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_FUEL, pMS->CurState);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawFlagshipName (FALSE);
|
||||
if (optWhichFonts == OPT_PC)
|
||||
DrawFlagshipStats ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
{
|
||||
RECT r;
|
||||
@@ -676,9 +676,9 @@ DoOutfit (PMENU_STATE pMS)
|
||||
PlayMusic (pMS->hMusic, TRUE, 1);
|
||||
UnbatchGraphics ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
GLOBAL_SIS (FuelOnBoard) =
|
||||
(GLOBAL_SIS (FuelOnBoard)
|
||||
@@ -695,9 +695,9 @@ DoOutfit (PMENU_STATE pMS)
|
||||
if (pMS->CurState == OUTFIT_DOFUEL)
|
||||
{
|
||||
pMS->CurState = OUTFIT_FUEL;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -719,18 +719,18 @@ ExitOutfit:
|
||||
RECT r;
|
||||
|
||||
pMS->CurState = OUTFIT_DOFUEL;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (StatusContext);
|
||||
GetGaugeRect (&r, FALSE);
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
case OUTFIT_DOFUEL:
|
||||
pMS->CurState = OUTFIT_FUEL;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
case OUTFIT_MODULES:
|
||||
pMS->CurState = EMPTY_SLOT + 2;
|
||||
@@ -746,9 +746,9 @@ ExitOutfit:
|
||||
if (GameOptions () == 0)
|
||||
goto ExitOutfit;
|
||||
DrawMenuStateStrings (PM_FUEL, pMS->CurState);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -119,7 +119,7 @@ GetMeleeStarShip (STARSHIPPTR LastStarShipPtr, COUNT which_player)
|
||||
|
||||
TimeOut = GetTimeCounter () + (ONE_SECOND * 4);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
UpdateInputState ();
|
||||
PressState = AnyButtonPress (TRUE);
|
||||
@@ -142,7 +142,7 @@ GetMeleeStarShip (STARSHIPPTR LastStarShipPtr, COUNT which_player)
|
||||
ConfirmExit ();
|
||||
*/
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
return (0);
|
||||
}
|
||||
@@ -243,7 +243,7 @@ GetMeleeStarShip (STARSHIPPTR LastStarShipPtr, COUNT which_player)
|
||||
col = new_col;
|
||||
|
||||
PlaySoundEffect (MenuSounds, 0, NotPositional (), NULL, 0);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ChangeSelection:
|
||||
flash_rect.corner.x = PICK_X_OFFS
|
||||
+ ((ICON_WIDTH + 2) * col);
|
||||
@@ -293,12 +293,12 @@ ChangeSelection:
|
||||
UnlockStarShip (&race_q[which_player], hBattleShip);
|
||||
}
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
|
||||
if (hBattleShip == 0)
|
||||
|
||||
@@ -44,7 +44,7 @@ DoPickBattleShip (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->InputFunc = DoPickBattleShip;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
goto ChangeSelection;
|
||||
}
|
||||
@@ -84,7 +84,7 @@ DoPickBattleShip (PMENU_STATE pMS)
|
||||
else if (new_row == NUM_PICK_SHIP_ROWS)
|
||||
new_row = 0;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
#ifdef NEVER
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0xA, 0xA, 0xA), 0x1D));
|
||||
@@ -211,7 +211,7 @@ ChangeSelection:
|
||||
|
||||
SetFlashRect ((RECT *)0, (FRAME)0);
|
||||
SetFlashRect (&pMS->flash_rect0, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -247,11 +247,11 @@ OldContext = SetContext (SpaceContext);
|
||||
MenuState.flash_rect1.corner = pick_r.corner;
|
||||
MenuState.flash_rect1.extent.width = 0;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMenuState = &MenuState;
|
||||
DoInput ((PVOID)&MenuState, TRUE);
|
||||
pMenuState = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ DrawCargoStrings (BYTE OldElement, BYTE NewElement)
|
||||
CONTEXT OldContext;
|
||||
UNICODE rt_amount_buf[10];
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
OldContext = SetContext (StatusContext);
|
||||
SetContextFont (TinyFont);
|
||||
@@ -272,7 +272,7 @@ DrawCargoStrings (BYTE OldElement, BYTE NewElement)
|
||||
|
||||
UnbatchGraphics ();
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static BOOLEAN
|
||||
@@ -299,9 +299,9 @@ DoDiscardCargo (PMENU_STATE pMS)
|
||||
}
|
||||
else if (cancel)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
@@ -312,10 +312,10 @@ DoDiscardCargo (PMENU_STATE pMS)
|
||||
--GLOBAL_SIS (ElementAmounts[pMS->CurState - 1]);
|
||||
DrawCargoStrings ((BYTE)(pMS->CurState - 1), (BYTE)(pMS->CurState - 1));
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
--GLOBAL_SIS (TotalElementMass);
|
||||
ShowRemainingCapacity ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -336,9 +336,9 @@ DoDiscardCargo (PMENU_STATE pMS)
|
||||
{
|
||||
SelectCargo:
|
||||
DrawCargoStrings ((BYTE)(pMS->CurState - 1), (BYTE)(NewState - 1));
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (GAME_STRING (NewState - 1 + (CARGO_STRING_BASE + 2)));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->CurState = NewState;
|
||||
}
|
||||
@@ -354,9 +354,9 @@ Cargo (PMENU_STATE pMS)
|
||||
--pMS->Initialized;
|
||||
pMS->CurState = 1;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage ((UNICODE *)~0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DoInput ((PVOID)pMS, TRUE);
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ DrawDevices (PMENU_STATE pMS, BYTE OldDevice, BYTE NewDevice)
|
||||
RECT r;
|
||||
PBYTE pDeviceMap;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContext (StatusContext);
|
||||
SetContextFont (TinyFont);
|
||||
@@ -174,7 +174,7 @@ DrawDevices (PMENU_STATE pMS, BYTE OldDevice, BYTE NewDevice)
|
||||
font_DrawText (&t);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static UWORD
|
||||
@@ -450,7 +450,7 @@ DoManipulateDevices (PMENU_STATE pMS)
|
||||
{
|
||||
UWORD status;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
status = DeviceFailed (
|
||||
((PBYTE)pMS->CurFrame)[pMS->CurState - 1]
|
||||
);
|
||||
@@ -461,7 +461,7 @@ DoManipulateDevices (PMENU_STATE pMS)
|
||||
else if (HIBYTE (status) == 0)
|
||||
PlaySoundEffect (SetAbsSoundIndex (MenuSounds, 3),
|
||||
0, NotPositional (), NULL, GAME_SOUND_PRIORITY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return ((BOOLEAN)NewState);
|
||||
}
|
||||
@@ -634,9 +634,9 @@ Devices (PMENU_STATE pMS)
|
||||
if (GLOBAL_SIS (CrewEnlisted) != (COUNT)~0
|
||||
&& !(GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (!GET_GAME_STATE (PORTAL_COUNTER)
|
||||
&& !(GLOBAL (CurrentActivity) & START_ENCOUNTER)
|
||||
|
||||
@@ -95,7 +95,7 @@ GenerateChmmr (BYTE control)
|
||||
{
|
||||
RECT r;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
pSolarSysState->SysInfo.PlanetInfo.LanderFont =
|
||||
CaptureFont (
|
||||
@@ -130,7 +130,7 @@ GenerateChmmr (BYTE control)
|
||||
));
|
||||
pSolarSysState->SysInfo.PlanetInfo.LanderFont = 0;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
||||
@@ -172,9 +172,9 @@ GenerateMycon (BYTE control)
|
||||
break;
|
||||
|
||||
SET_GAME_STATE (SUN_DEVICE_UNGUARDED, 1);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -333,9 +333,9 @@ GenerateOrz (BYTE control)
|
||||
if (OrzSurvivors)
|
||||
break;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ ZapToUrquanEncounter (void)
|
||||
dx = (SIZE)square_root ((long)dx * dx + (long)dy * dy)
|
||||
+ (FUEL_TANK_SCALE >> 1);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, -dx, 0);
|
||||
if (GLOBAL_SIS (FuelOnBoard) < 5 * FUEL_TANK_SCALE)
|
||||
{
|
||||
@@ -95,7 +95,7 @@ ZapToUrquanEncounter (void)
|
||||
}
|
||||
DrawSISMessage (NULL_PTR);
|
||||
DrawHyperCoords (EncounterPtr->SD.star_pt);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
UnlockEncounter (hEncounter);
|
||||
}
|
||||
|
||||
@@ -166,9 +166,9 @@ GenerateThradd (BYTE control)
|
||||
|| (!GET_GAME_STATE (HELIX_UNPROTECTED)
|
||||
&& (BYTE)(GET_GAME_STATE (THRADD_MISSION) - 1) >= 3))
|
||||
break;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (CurStarDescPtr->Index == AQUA_HELIX_DEFINED
|
||||
|
||||
@@ -200,9 +200,9 @@ GenerateUtwig (BYTE control)
|
||||
if (DruugeSurvivors)
|
||||
break;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SET_GAME_STATE (BOMB_UNPROTECTED, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -180,9 +180,9 @@ GenerateVUX (BYTE control)
|
||||
|| !GET_GAME_STATE (ZEX_IS_DEAD))
|
||||
break;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1215,7 +1215,7 @@ ScrollPlanetSide (SIZE dx, SIZE dy, SIZE CountDown)
|
||||
pSolarSysState->MenuState.flash_rect1.corner.y = HIWORD (TimeIn);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
|
||||
BatchGraphics ();
|
||||
@@ -1329,7 +1329,7 @@ ScrollPlanetSide (SIZE dx, SIZE dy, SIZE CountDown)
|
||||
UnbatchGraphics ();
|
||||
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -1353,7 +1353,7 @@ AnimateLaunch (FRAME farray, BOOLEAN ShowPlanetSide)
|
||||
RepairBackRect (&r);
|
||||
DrawStamp (&s);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
#if 0
|
||||
if (ShowPlanetSide)
|
||||
@@ -1370,7 +1370,7 @@ AnimateLaunch (FRAME farray, BOOLEAN ShowPlanetSide)
|
||||
SleepThreadUntil (Time + (ONE_SECOND / 22));
|
||||
Time = GetTimeCounter ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
} while (--num_frames);
|
||||
|
||||
GetFrameRect (s.frame, &r);
|
||||
@@ -1386,9 +1386,9 @@ InitPlanetSide (void)
|
||||
CONTEXT OldContext;
|
||||
DWORD Time;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (RadarContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
Time = GetTimeCounter ();
|
||||
|
||||
@@ -1397,9 +1397,9 @@ InitPlanetSide (void)
|
||||
s.frame = SetAbsFrameIndex (LanderFrame[0],
|
||||
(ANGLE_TO_FACING (FULL_CIRCLE) << 1) + 1);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SleepThread (ONE_SECOND / 15);
|
||||
Time = GetTimeCounter ();
|
||||
@@ -1409,10 +1409,10 @@ InitPlanetSide (void)
|
||||
{
|
||||
SleepThreadUntil (Time + ONE_SECOND / 30);
|
||||
Time = GetTimeCounter ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (-1, 0, 0);
|
||||
DeltaLanderCrew (1, 0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
SleepThreadUntil (Time + (ONE_SECOND / 15));
|
||||
@@ -1423,9 +1423,9 @@ InitPlanetSide (void)
|
||||
else
|
||||
s.frame = SetAbsFrameIndex (s.frame,
|
||||
(ANGLE_TO_FACING (FULL_CIRCLE) << 1) + 2);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SleepThreadUntil (Time + (ONE_SECOND / 15));
|
||||
Time = GetTimeCounter ();
|
||||
@@ -1436,18 +1436,18 @@ InitPlanetSide (void)
|
||||
{
|
||||
s.frame = SetAbsFrameIndex (s.frame,
|
||||
(ANGLE_TO_FACING (FULL_CIRCLE) << 1) + 3);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SleepThreadUntil (Time + (ONE_SECOND / 15));
|
||||
Time = GetTimeCounter ();
|
||||
|
||||
s.frame = IncFrameIndex (s.frame);
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (GET_GAME_STATE (IMPROVED_LANDER_CARGO))
|
||||
{
|
||||
@@ -1455,25 +1455,25 @@ InitPlanetSide (void)
|
||||
Time = GetTimeCounter ();
|
||||
|
||||
s.frame = SetAbsFrameIndex (s.frame, 59);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
#ifndef SPIN_ON_LAUNCH
|
||||
pSolarSysState->PauseRotate = 1;
|
||||
#endif
|
||||
SleepThreadUntil (Time + (ONE_SECOND / 15));
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
PlaySound (SetAbsSoundIndex (LanderSounds, LANDER_DEPARTS),
|
||||
NotPositional (), NULL, GAME_SOUND_PRIORITY + 1);
|
||||
SetContext (SpaceContext);
|
||||
AnimateLaunch (LanderFrame[5], FALSE);
|
||||
#ifdef SPIN_ON_LAUNCH
|
||||
pSolarSysState->PauseRotate = 1;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
#endif
|
||||
// Adjust pSolarSysState->MenuState.first_item by a random jitter.
|
||||
#define RANDOM_MISS 64
|
||||
@@ -1547,7 +1547,7 @@ InitPlanetSide (void)
|
||||
|
||||
SetContext (OldContext);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SET_GAME_STATE (PLANETARY_LANDING, 1);
|
||||
}
|
||||
@@ -1858,7 +1858,7 @@ ReturnToOrbit (PRECT pRect)
|
||||
{
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
SetContextClipRect (pRect);
|
||||
|
||||
@@ -1873,7 +1873,7 @@ ReturnToOrbit (PRECT pRect)
|
||||
|
||||
LoadIntoExtraScreen (pRect);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
// SetPlanetTilt (0);
|
||||
}
|
||||
@@ -1994,9 +1994,9 @@ PlanetSide (PMENU_STATE pMS)
|
||||
#endif /* NEVER */
|
||||
|
||||
--GLOBAL_SIS (NumLanders);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawLanders ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
ReturnToOrbit (&r);
|
||||
}
|
||||
@@ -2029,7 +2029,7 @@ PlanetSide (PMENU_STATE pMS)
|
||||
SleepThread (1);
|
||||
#endif
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
AnimateLaunch (LanderFrame[6], TRUE);
|
||||
@@ -2047,7 +2047,7 @@ PlanetSide (PMENU_STATE pMS)
|
||||
DrawStorageBays (FALSE);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
GLOBAL_SIS (TotalBioMass) += PSD.BiologicalLevel;
|
||||
}
|
||||
@@ -2090,7 +2090,7 @@ InitLander (BYTE LanderFlags)
|
||||
{
|
||||
RECT r;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContext (RadarContext);
|
||||
|
||||
@@ -2182,5 +2182,5 @@ InitLander (BYTE LanderFlags)
|
||||
|
||||
UnbatchGraphics ();
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
@@ -74,16 +74,17 @@ RotatePlanet (int x, int dx, int dy, COUNT scale_amt, UBYTE zoom_from, PRECT zoo
|
||||
dy += ((zoom_from & 0x02) ? 1 : -1) * dy * (base - scale_amt) / base;
|
||||
}
|
||||
|
||||
//LockCrossThreadMutex (GraphicsLock);
|
||||
//LockMutex (GraphicsLock);
|
||||
|
||||
// PauseRotate needs to be checked twice. It is first checked
|
||||
// at the rotate_planet_task function to bypass rendering the
|
||||
// planet (and thus slowinng down other parts of te code. It
|
||||
// is checked here because it is possile that PauseRotate was
|
||||
// set between then and now, and we don't want too push
|
||||
// anything onto the DrawQueue in that case. If the locking
|
||||
// operation is moved before the RenderLevelMasks call, one of
|
||||
// the two PauseRotate checks can be removed.
|
||||
|
||||
// PauseRotate needs to be checked twice. It is first
|
||||
// checked at the rotate_planet_task function to bypass
|
||||
// rendering the planet (and thus slowinng down other
|
||||
// parts of te code. It is checked here because it is possile
|
||||
// that PauseRotate was set between then and now, and we don't
|
||||
// want too push anything onto the DrawQueue in that case.
|
||||
// If the LockCrossThreadMutex is moved before the RenderLevelMasks call,
|
||||
// one of the two PauseRotate checks can be removed.
|
||||
//if (((PSOLARSYS_STATE volatile)pSolarSysState)->PauseRotate !=1)
|
||||
{
|
||||
OldContext = SetContext (SpaceContext);
|
||||
@@ -103,7 +104,7 @@ RotatePlanet (int x, int dx, int dy, COUNT scale_amt, UBYTE zoom_from, PRECT zoo
|
||||
UnbatchGraphics ();
|
||||
SetContext (OldContext);
|
||||
}
|
||||
//UnlockCrossThreadMutex (GraphicsLock);
|
||||
//UnlockMutex (GraphicsLock);
|
||||
if (scale_amt && scale_amt != base)
|
||||
{
|
||||
GetFrameRect (pFrame[num_frames - 1], zoomr);
|
||||
|
||||
@@ -61,7 +61,7 @@ void
|
||||
LoadPlanet (BOOLEAN IsDefined)
|
||||
{
|
||||
STAMP s;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
BatchGraphics ();
|
||||
SetTransitionSource (NULL);
|
||||
@@ -106,9 +106,9 @@ LoadPlanet (BOOLEAN IsDefined)
|
||||
{
|
||||
if (LOBYTE (LastActivity) == 0)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -146,7 +146,7 @@ LoadPlanet (BOOLEAN IsDefined)
|
||||
LoadIntoExtraScreen (&r);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (!PLRPlaying ((MUSIC_REF)~0))
|
||||
{
|
||||
@@ -173,7 +173,7 @@ LoadPlanet (BOOLEAN IsDefined)
|
||||
r.corner.y = SIS_ORG_Y;
|
||||
r.extent.width = SIS_SCREEN_WIDTH;
|
||||
r.extent.height = SIS_SCREEN_HEIGHT;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
oldContext = SetContext (SpaceContext);
|
||||
DrawStarBackGround (TRUE);
|
||||
SetContext (oldContext);
|
||||
@@ -183,7 +183,7 @@ LoadPlanet (BOOLEAN IsDefined)
|
||||
ScreenTransition (3, &r); // How does this work?
|
||||
UnbatchGraphics ();
|
||||
LoadIntoExtraScreen (&r);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -201,7 +201,7 @@ FreePlanet (void)
|
||||
}
|
||||
|
||||
StopMusic ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
for (i = 0; i < sizeof (pSolarSysState->PlanetSideFrame)
|
||||
/ sizeof (pSolarSysState->PlanetSideFrame[0]); ++i)
|
||||
@@ -253,6 +253,6 @@ FreePlanet (void)
|
||||
pSolarSysState->SysInfo.PlanetInfo.LanderFont = 0;
|
||||
pSolarSysState->PauseRotate = 0;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
|
||||
@@ -1418,7 +1418,7 @@ rotate_planet_task (void *data)
|
||||
// The PauseRotate needs to be placed after the lock,
|
||||
// to guarantee that PauseRotate doesn't change while waiting
|
||||
// to acquire the graphics lock
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (*(volatile UBYTE *)&pSS->PauseRotate !=1
|
||||
// if (((PSOLARSYS_STATE volatile)pSS)->MenuState.Initialized <= 3
|
||||
&& !(GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
@@ -1441,7 +1441,7 @@ rotate_planet_task (void *data)
|
||||
} else
|
||||
view_index++;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
// If this frame hasn't been generted, generate it
|
||||
if (! pSolarSysState->Orbit.isPFADefined[x]) {
|
||||
RenderLevelMasks (x);
|
||||
|
||||
@@ -73,7 +73,7 @@ flash_cursor_func(void *data)
|
||||
CONTEXT OldContext;
|
||||
|
||||
TimeIn = GetTimeCounter ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
|
||||
if (c == 0x00 || c == 0x1A)
|
||||
@@ -86,7 +86,7 @@ flash_cursor_func(void *data)
|
||||
SetContextForeGroundColor (OldColor);
|
||||
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SleepThreadUntil (TimeIn + (ONE_SECOND >> 4));
|
||||
}
|
||||
FinishTask (task);
|
||||
@@ -254,7 +254,7 @@ DrawStarMap (COUNT race_update, PRECT pClipRect)
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
draw_cursor = TRUE;
|
||||
}
|
||||
|
||||
@@ -528,7 +528,7 @@ wprintf ("%s\n", buf);
|
||||
}
|
||||
|
||||
if (draw_cursor)
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -558,9 +558,9 @@ EraseCursor (COORD curs_x, COORD curs_y)
|
||||
#else /* NEW */
|
||||
r.extent.height += r.corner.y & 1;
|
||||
r.corner.y &= ~1;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawStarMap (0, &r);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
#endif /* OLD */
|
||||
}
|
||||
|
||||
@@ -730,11 +730,11 @@ DoMoveCursor (PMENU_STATE pMS)
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
EraseCursor (pt.x, pt.y);
|
||||
// ClearDrawable ();
|
||||
DrawCursor (s.origin.x, s.origin.y);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
UpdateCursorInfo:
|
||||
@@ -798,7 +798,7 @@ UpdateCursorInfo:
|
||||
fuel_required = 0;
|
||||
else
|
||||
fuel_required = square_root (f) + (FUEL_TANK_SCALE >> 1);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawHyperCoords (pMenuState->first_item);
|
||||
if (last_buf == (UNICODE) ~0
|
||||
|| (buf[0] && !last_buf) || (!buf[0] && last_buf))
|
||||
@@ -811,7 +811,7 @@ UpdateCursorInfo:
|
||||
fuel_required / FUEL_TANK_SCALE,
|
||||
(fuel_required % FUEL_TANK_SCALE) / 10);
|
||||
DrawStatusMessage (buf);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1106,7 +1106,7 @@ DoStarMap (void)
|
||||
if (MenuState.first_item.x == ~0 && MenuState.first_item.y == ~0)
|
||||
MenuState.first_item = universe;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
|
||||
MenuState.InputFunc = DoMoveCursor;
|
||||
@@ -1117,7 +1117,7 @@ DoStarMap (void)
|
||||
if (GET_GAME_STATE (ARILOU_SPACE_SIDE) <= 1)
|
||||
UpdateMap ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
DrawStarMap (0, (PRECT)-1);
|
||||
transition_pending = FALSE;
|
||||
@@ -1132,7 +1132,7 @@ DoStarMap (void)
|
||||
UNIVERSE_TO_DISPY (pMenuState->first_item.y)
|
||||
);
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
OldMenuSounds = MenuSounds;
|
||||
MenuSounds = 0;
|
||||
@@ -1142,7 +1142,7 @@ DoStarMap (void)
|
||||
|
||||
pMenuState = 0;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
DrawHyperCoords (universe);
|
||||
DrawSISMessage (NULL_PTR);
|
||||
@@ -1166,7 +1166,7 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
else
|
||||
{
|
||||
BOOLEAN select = CurrentMenuState.select;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
while (*(volatile BYTE *)&pMS->CurState == 0
|
||||
&& (*(volatile SIZE *)&pMS->Initialized & 1)
|
||||
&& !(GLOBAL (CurrentActivity)
|
||||
@@ -1174,11 +1174,11 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
| CHECK_ABORT | CHECK_LOAD))
|
||||
&& GLOBAL_SIS (CrewEnlisted) != (COUNT)~0)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (pMS->CurState)
|
||||
{
|
||||
@@ -1199,9 +1199,9 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
{
|
||||
if (NewState != SCAN + 1 && NewState != (GAME_MENU) + 1)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
switch (NewState - 1)
|
||||
@@ -1247,7 +1247,7 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
{
|
||||
BOOLEAN AutoPilotSet;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (++pMS->Initialized > 3) {
|
||||
pSolarSysState->PauseRotate = 1;
|
||||
RepairSISBorder ();
|
||||
@@ -1258,7 +1258,7 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
if (LOBYTE (GLOBAL (CurrentActivity)) == IN_HYPERSPACE
|
||||
|| (GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
return (FALSE);
|
||||
}
|
||||
else if (pMS->Initialized <= 3)
|
||||
@@ -1266,16 +1266,16 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
ZoomSystem ();
|
||||
--pMS->Initialized;
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (!AutoPilotSet && pMS->Initialized >= 3)
|
||||
{
|
||||
LoadPlanet (FALSE);
|
||||
--pMS->Initialized;
|
||||
pSolarSysState->PauseRotate = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -1291,17 +1291,17 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
else if (pMS->flash_task)
|
||||
{
|
||||
FreePlanet ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
LoadSolarSys ();
|
||||
ValidateOrbits ();
|
||||
ZoomSystem ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pMS->CurState = 0;
|
||||
FlushInput ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1309,9 +1309,9 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
;
|
||||
else if (pMS->CurState)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
if (select)
|
||||
{
|
||||
if (optWhichMenu != OPT_PC)
|
||||
@@ -1322,9 +1322,9 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_STARMAP, -NAVIGATION);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ MakeReport (SOUND ReadOutSounds, UNICODE *pStr, COUNT StrLen)
|
||||
last_c = *pStr;
|
||||
|
||||
Sleepy = TRUE;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
FlushInput ();
|
||||
goto InitPageCell;
|
||||
@@ -148,9 +148,9 @@ MakeReport (SOUND ReadOutSounds, UNICODE *pStr, COUNT StrLen)
|
||||
font_DrawText (&t);
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
PlaySound (ReadOutSounds, NotPositional (), NULL, GAME_SOUND_PRIORITY);
|
||||
|
||||
@@ -174,7 +174,7 @@ MakeReport (SOUND ReadOutSounds, UNICODE *pStr, COUNT StrLen)
|
||||
else if (AnyButtonPress (TRUE))
|
||||
{
|
||||
Sleepy = FALSE;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
break;
|
||||
}
|
||||
@@ -198,7 +198,7 @@ MakeReport (SOUND ReadOutSounds, UNICODE *pStr, COUNT StrLen)
|
||||
if (!Sleepy)
|
||||
{
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (WaitAnyButtonOrQuit (TRUE))
|
||||
@@ -210,17 +210,17 @@ InitPageCell:
|
||||
row_cells = 0;
|
||||
if (StrLen)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (!Sleepy)
|
||||
BatchGraphics ();
|
||||
ClearReportArea();
|
||||
SetContextForeGroundColor (BUILD_COLOR (MAKE_RGB15 (0, 0x1F, 0), 0xFF));
|
||||
if (Sleepy)
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -268,11 +268,11 @@ DoDiscoveryReport (SOUND ReadOutSounds)
|
||||
#endif /* OLD */
|
||||
SetContext (OldContext);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
FlushInput ();
|
||||
while (AnyButtonPress (TRUE))
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (pMenuState)
|
||||
pMenuState->flash_rect0.corner = old_curs;
|
||||
|
||||
@@ -35,7 +35,7 @@ flash_ship_task(void *data)
|
||||
COLOR OldColor;
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
s.origin = pMenuState->first_item;
|
||||
StarShipPtr = (SHIP_FRAGMENTPTR)LockStarShip (
|
||||
&GLOBAL (built_ship_q),
|
||||
@@ -55,7 +55,7 @@ flash_ship_task(void *data)
|
||||
DrawFilledStamp (&s);
|
||||
SetContextForeGroundColor (OldColor);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
SleepThreadUntil (TimeIn + ONE_SECOND / 15);
|
||||
TimeIn = GetTimeCounter ();
|
||||
}
|
||||
@@ -212,9 +212,9 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
{
|
||||
pMS->CurFrame = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RosterCleanup (pMS);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
@@ -231,24 +231,24 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
|
||||
pMS->CurState = NewState = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (StatusContext);
|
||||
goto SelectSupport;
|
||||
}
|
||||
else if (cancel && !(pMS->CurState & SHIP_TOGGLE))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
RosterCleanup (pMS);
|
||||
pMS->CurFrame = 0;
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
else if (select || cancel)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pMS->CurState ^= SHIP_TOGGLE;
|
||||
if (!(pMS->CurState & SHIP_TOGGLE))
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
@@ -263,7 +263,7 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
SetContext (StatusContext);
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (pMS->CurState & SHIP_TOGGLE)
|
||||
{
|
||||
@@ -272,9 +272,9 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
sy = -1;
|
||||
if (GLOBAL_SIS (CrewEnlisted))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSupportCrew (1);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else if (down)
|
||||
@@ -283,9 +283,9 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
if (GLOBAL_SIS (CrewEnlisted)
|
||||
< GetCPodCapacity (NULL_PTR))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSupportCrew (-1);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -335,7 +335,7 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
|
||||
if (NewState != pMS->CurState)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (StatusContext);
|
||||
s.origin = pMS->first_item;
|
||||
StarShipPtr = (SHIP_FRAGMENTPTR)LockStarShip (
|
||||
@@ -354,7 +354,7 @@ SelectSupport:
|
||||
pMS->CurFrame = (FRAME)MatchSupportShip (pMS);
|
||||
|
||||
DeltaSupportCrew (0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->CurState = NewState;
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ EraseCoarseScan (void)
|
||||
const int leftScanOffset = 5;
|
||||
const int rightScanOffset = 50;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
r.corner.x = (SIS_SCREEN_WIDTH >> 1) - (160 >> 1);
|
||||
@@ -88,7 +88,7 @@ EraseCoarseScan (void)
|
||||
r.extent.width = rightScanWidth;
|
||||
RepairBackRect (&r);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -113,7 +113,7 @@ PrintCoarseScanPC (void)
|
||||
RECT r;
|
||||
UNICODE buf[40];
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
if (CurStarDescPtr->Index == SOL_DEFINED)
|
||||
@@ -176,7 +176,7 @@ PrintCoarseScanPC (void)
|
||||
SetContextFont (MicroFont);
|
||||
font_DrawText (&t);
|
||||
SetContextFont (TinyFont);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
#define LEFT_SIDE_BASELINE_X_PC 5
|
||||
#define RIGHT_SIDE_BASELINE_X_PC (SIS_SCREEN_WIDTH - 75)
|
||||
@@ -185,7 +185,7 @@ PrintCoarseScanPC (void)
|
||||
t.baseline.y = SCAN_BASELINE_Y_PC;
|
||||
t.align = ALIGN_LEFT;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Orbit: ", LEFT_SIDE_BASELINE_X_PC);
|
||||
temp = (SIZE)((pSolarSysState->SysInfo.PlanetInfo.PlanetToSunDist * 100L
|
||||
@@ -197,9 +197,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Atmo: ", LEFT_SIDE_BASELINE_X_PC);
|
||||
if (pSolarSysState->SysInfo.PlanetInfo.AtmoDensity == GAS_GIANT_ATMOSPHERE)
|
||||
@@ -218,18 +218,18 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Temp: ", LEFT_SIDE_BASELINE_X_PC);
|
||||
wsprintf (buf, "%d^ c", pSolarSysState->SysInfo.PlanetInfo.SurfaceTemperature);
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Weather: ", LEFT_SIDE_BASELINE_X_PC);
|
||||
if (pSolarSysState->SysInfo.PlanetInfo.AtmoDensity == 0)
|
||||
@@ -239,9 +239,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Tectonics: ", LEFT_SIDE_BASELINE_X_PC);
|
||||
if (PLANSIZE (pSolarSysState->SysInfo.PlanetInfo.PlanDataPtr->Type) == GAS_GIANT)
|
||||
@@ -250,11 +250,11 @@ PrintCoarseScanPC (void)
|
||||
wsprintf (buf, "Class %u", pSolarSysState->SysInfo.PlanetInfo.Tectonics + 1);
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
t.baseline.y = SCAN_BASELINE_Y_PC;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Mass: ", RIGHT_SIDE_BASELINE_X_PC);
|
||||
{
|
||||
@@ -274,9 +274,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Radius: ", RIGHT_SIDE_BASELINE_X_PC);
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.PlanetRadius) >= 10 * 100)
|
||||
@@ -286,9 +286,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Gravity: ", RIGHT_SIDE_BASELINE_X_PC);
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.SurfaceGravity) >= 10 * 100)
|
||||
@@ -302,9 +302,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Day: ", RIGHT_SIDE_BASELINE_X_PC);
|
||||
if (pSolarSysState->SysInfo.PlanetInfo.RotationPeriod < 240 * 10)
|
||||
@@ -321,9 +321,9 @@ PrintCoarseScanPC (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING_PC;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
PrintScanTitlePC (&t, &r, "Tilt: ", RIGHT_SIDE_BASELINE_X_PC);
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.AxialTilt) < 0)
|
||||
@@ -331,7 +331,7 @@ PrintCoarseScanPC (void)
|
||||
wsprintf (buf, "%u^", temp);
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -344,7 +344,7 @@ PrintCoarseScan3DO (void)
|
||||
UNICODE buf[40];
|
||||
extern FRAME SpaceJunkFrame;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
if (CurStarDescPtr->Index == SOL_DEFINED)
|
||||
@@ -411,7 +411,7 @@ PrintCoarseScan3DO (void)
|
||||
s.frame = SetAbsFrameIndex (SpaceJunkFrame, 20);
|
||||
DrawStamp (&s);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
#define LEFT_SIDE_BASELINE_X (27 + (16 - SAFE_X))
|
||||
#define RIGHT_SIDE_BASELINE_X (SIS_SCREEN_WIDTH - LEFT_SIDE_BASELINE_X)
|
||||
@@ -421,7 +421,7 @@ PrintCoarseScan3DO (void)
|
||||
t.baseline.y = SCAN_BASELINE_Y;
|
||||
t.align = ALIGN_LEFT;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
temp = (SIZE)((pSolarSysState->SysInfo.PlanetInfo.PlanetToSunDist * 100L
|
||||
+ (EARTH_RADIUS >> 1)) / EARTH_RADIUS);
|
||||
@@ -432,9 +432,9 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
if (pSolarSysState->SysInfo.PlanetInfo.AtmoDensity == GAS_GIANT_ATMOSPHERE)
|
||||
wsprintf (buf, "\x7f");
|
||||
@@ -450,26 +450,26 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
wsprintf (buf, "%d^", pSolarSysState->SysInfo.PlanetInfo.SurfaceTemperature);
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
wsprintf (buf, "<%u>", pSolarSysState->SysInfo.PlanetInfo.AtmoDensity == 0
|
||||
? 0 : (pSolarSysState->SysInfo.PlanetInfo.Weather + 1));
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
wsprintf (buf, "<%u>",
|
||||
PLANSIZE (
|
||||
@@ -478,13 +478,13 @@ PrintCoarseScan3DO (void)
|
||||
? 0 : (pSolarSysState->SysInfo.PlanetInfo.Tectonics + 1));
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
t.baseline.x = RIGHT_SIDE_BASELINE_X;
|
||||
t.baseline.y = SCAN_BASELINE_Y;
|
||||
t.align = ALIGN_RIGHT;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
{
|
||||
DWORD tr;
|
||||
@@ -503,9 +503,9 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.PlanetRadius) >= 10 * 100)
|
||||
wsprintf (buf, "%u.%u&", temp / 100, (temp / 10) % 10);
|
||||
@@ -514,9 +514,9 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.SurfaceGravity) >= 10 * 100)
|
||||
wsprintf (buf, "%u.%u&", temp / 100, (temp / 10) % 10);
|
||||
@@ -529,9 +529,9 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
if ((temp = pSolarSysState->SysInfo.PlanetInfo.AxialTilt) < 0)
|
||||
temp = -temp;
|
||||
@@ -539,9 +539,9 @@ PrintCoarseScan3DO (void)
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
t.baseline.y += SCAN_LEADING;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
t.pStr = buf;
|
||||
if (pSolarSysState->SysInfo.PlanetInfo.RotationPeriod < 240 * 10)
|
||||
{
|
||||
@@ -556,7 +556,7 @@ PrintCoarseScan3DO (void)
|
||||
}
|
||||
t.CharCount = (COUNT)~0;
|
||||
font_DrawText (&t);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -569,7 +569,7 @@ SetPlanetLoc (POINT new_pt)
|
||||
new_pt.x >>= MAG_SHIFT;
|
||||
new_pt.y >>= MAG_SHIFT;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScanContext);
|
||||
s.origin.x = pMenuState->flash_rect0.corner.x - (FLASH_WIDTH >> 1);
|
||||
s.origin.y = pMenuState->flash_rect0.corner.y - (FLASH_HEIGHT >> 1);
|
||||
@@ -583,7 +583,7 @@ SetPlanetLoc (POINT new_pt)
|
||||
r.extent.width = FLASH_WIDTH;
|
||||
r.extent.height = FLASH_HEIGHT;
|
||||
LoadDisplayPixmap (&r, pMenuState->flash_frame0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
TaskSwitch ();
|
||||
}
|
||||
@@ -609,7 +609,7 @@ flash_planet_loc_func(void *data)
|
||||
DWORD T;
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
T = GetTimeCounter ();
|
||||
if (p.Object.Stamp.origin.x != pMenuState->flash_rect0.corner.x
|
||||
|| p.Object.Stamp.origin.y != pMenuState->flash_rect0.corner.y)
|
||||
@@ -621,7 +621,7 @@ flash_planet_loc_func(void *data)
|
||||
{
|
||||
if (T < TimeIn)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
|
||||
continue;
|
||||
@@ -639,7 +639,7 @@ flash_planet_loc_func(void *data)
|
||||
SetContext (OldContext);
|
||||
|
||||
TimeIn = T + (ONE_SECOND >> 4);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
TaskSwitch ();
|
||||
}
|
||||
@@ -680,7 +680,7 @@ PickPlanetSide (PMENU_STATE pMS)
|
||||
|
||||
pMS->Initialized = TRUE;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScanContext);
|
||||
pMenuState->flash_rect0.corner.x =
|
||||
pSolarSysState->MenuState.first_item.x >> MAG_SHIFT;
|
||||
@@ -694,7 +694,7 @@ PickPlanetSide (PMENU_STATE pMS)
|
||||
LoadDisplayPixmap (&r, pMenuState->flash_frame0);
|
||||
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
InitLander (0);
|
||||
|
||||
@@ -709,9 +709,9 @@ PickPlanetSide (PMENU_STATE pMS)
|
||||
MenuSounds = (SOUND)pMS->CurFrame;
|
||||
pMS->CurFrame = 0;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
FlushInput ();
|
||||
if (pMenuState->flash_task)
|
||||
@@ -735,13 +735,13 @@ PickPlanetSide (PMENU_STATE pMS)
|
||||
|
||||
EraseCoarseScan ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (0, -(SIZE)fuel_required, 0);
|
||||
SetContext (ScanContext);
|
||||
s.origin = pMenuState->flash_rect0.corner;
|
||||
s.frame = SetAbsFrameIndex (misc_data, FLASH_INDEX);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
PlanetSide (pMS);
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
@@ -796,9 +796,9 @@ PickPlanetSide (PMENU_STATE pMS)
|
||||
}
|
||||
|
||||
DrawMenuStateStrings (PM_MIN_SCAN, DISPATCH_SHUTTLE);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
ExitPlanetSide:
|
||||
if (pMS->CurFrame)
|
||||
@@ -962,12 +962,12 @@ DoScan (PMENU_STATE pMS)
|
||||
}
|
||||
else if (cancel || (select && pMS->CurState == EXIT_SCAN))
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
BatchGraphics ();
|
||||
DrawPlanet (SIS_SCREEN_WIDTH - MAP_WIDTH, SIS_SCREEN_HEIGHT - MAP_HEIGHT, 0, 0);
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
EraseCoarseScan ();
|
||||
// DrawMenuStateStrings (PM_SCAN, SCAN);
|
||||
@@ -1004,18 +1004,18 @@ DoScan (PMENU_STATE pMS)
|
||||
GAME_STRING (NAVIGATION_STRING_BASE + 5),
|
||||
fuel_required / FUEL_TANK_SCALE,
|
||||
((fuel_required % FUEL_TANK_SCALE) + 5) / 10);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (CLEAR_SIS_RADAR);
|
||||
DrawStatusMessage (buf);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScanContext);
|
||||
BatchGraphics ();
|
||||
DrawPlanet (0, 0, 0, 0);
|
||||
DrawScannedObjects (FALSE);
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->Initialized = FALSE;
|
||||
pMS->CurFrame = 0;
|
||||
@@ -1048,7 +1048,7 @@ DoScan (PMENU_STATE pMS)
|
||||
pMS->delta_item = (SIZE)pSolarSysState->CurNode;
|
||||
t.pStr = GAME_STRING (SCAN_STRING_BASE + min_scan);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
r.corner.x = 0;
|
||||
r.corner.y = t.baseline.y - 10;
|
||||
@@ -1078,7 +1078,7 @@ DoScan (PMENU_STATE pMS)
|
||||
font_DrawText (&t);
|
||||
|
||||
SetContext (ScanContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
{
|
||||
DWORD rgb;
|
||||
@@ -1096,15 +1096,15 @@ DoScan (PMENU_STATE pMS)
|
||||
break;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
DrawPlanet (0, 0, 0, 0);
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
PressState = AnyButtonPress (TRUE);
|
||||
WaitTime = (ONE_SECOND << 1) / MAP_HEIGHT;
|
||||
// LockCrossThreadMutex (GraphicsLock);
|
||||
// LockMutex (GraphicsLock);
|
||||
TimeIn = GetTimeCounter ();
|
||||
for (i = 0; i < MAP_HEIGHT + NUM_FLASH_COLORS + 1; i++)
|
||||
{
|
||||
@@ -1116,7 +1116,7 @@ DoScan (PMENU_STATE pMS)
|
||||
}
|
||||
if (ButtonState)
|
||||
i = -i;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
DrawPlanet (0, 0, i, rgb);
|
||||
if (i < 0)
|
||||
@@ -1124,19 +1124,19 @@ DoScan (PMENU_STATE pMS)
|
||||
if (pMS->delta_item)
|
||||
DrawScannedStuff (i, min_scan);
|
||||
UnbatchGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
// FlushGraphics ();
|
||||
SleepThreadUntil (TimeIn + WaitTime);
|
||||
TimeIn = GetTimeCounter ();
|
||||
}
|
||||
// UnlockCrossThreadMutex (GraphicsLock);
|
||||
// UnlockMutex (GraphicsLock);
|
||||
pSolarSysState->Tint_rgb = 0;
|
||||
|
||||
}
|
||||
|
||||
} while (++min_scan <= max_scan);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
r.corner.x = 0;
|
||||
r.corner.y = (SIS_SCREEN_HEIGHT - MAP_HEIGHT - 7) - 10;
|
||||
@@ -1149,12 +1149,12 @@ DoScan (PMENU_STATE pMS)
|
||||
{
|
||||
DrawPlanet (0, 0, 0, 0);
|
||||
DrawScannedObjects (FALSE);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
DrawMenuStateStrings (PM_MIN_SCAN, pMS->CurState = DISPATCH_SHUTTLE);
|
||||
}
|
||||
else
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pSolarSysState->MenuState.Initialized -= 4;
|
||||
pSolarSysState->PauseRotate = 0;
|
||||
@@ -1208,7 +1208,7 @@ ScanSystem (void)
|
||||
pSolarSysState->MenuState.first_item.x = (MAP_WIDTH >> 1) << MAG_SHIFT;
|
||||
pSolarSysState->MenuState.first_item.y = (MAP_HEIGHT >> 1) << MAG_SHIFT;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ScanContext = CaptureContext (CreateContext ());
|
||||
SetContext (ScanContext);
|
||||
MenuState.flash_rect0.extent.width = FLASH_WIDTH;
|
||||
@@ -1224,7 +1224,7 @@ ScanSystem (void)
|
||||
r.extent.height = MAP_HEIGHT;
|
||||
SetContextClipRect (&r);
|
||||
DrawScannedObjects (FALSE);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
DrawMenuStateStrings (PM_MIN_SCAN, MenuState.CurState);
|
||||
@@ -1240,12 +1240,12 @@ ScanSystem (void)
|
||||
|
||||
if (ScanContext)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
DestroyDrawable (ReleaseDrawable (MenuState.flash_frame0));
|
||||
DestroyContext (ReleaseContext (ScanContext));
|
||||
ScanContext = 0;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -339,18 +339,18 @@ FreeSolarSys (void)
|
||||
{
|
||||
ConcludeTask (pSolarSysState->MenuState.flash_task);
|
||||
pSolarSysState->MenuState.flash_task = 0;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
if (!(GLOBAL (CurrentActivity) & (CHECK_ABORT | CHECK_LOAD)))
|
||||
{
|
||||
extern void SaveFlagshipState (void);
|
||||
|
||||
SaveFlagshipState ();
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
SetContext (SpaceContext);
|
||||
|
||||
@@ -358,7 +358,7 @@ FreeSolarSys (void)
|
||||
|
||||
// FreeIPData ();
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -1024,7 +1024,7 @@ int IPtask_func(void* data)
|
||||
RECT r;
|
||||
|
||||
InnerSystem = FALSE;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
while ((pSolarSysState->MenuState.Initialized > 1
|
||||
|| (GLOBAL (CurrentActivity)
|
||||
& (START_ENCOUNTER | END_INTERPLANETARY
|
||||
@@ -1033,15 +1033,15 @@ int IPtask_func(void* data)
|
||||
&& !Task_ReadState (task, TASK_EXIT))
|
||||
{
|
||||
select = cancel = FALSE;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
NextTime = GetTimeCounter ();
|
||||
}
|
||||
|
||||
if (Task_ReadState (task, TASK_EXIT))
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1163,7 +1163,7 @@ TheMess:
|
||||
}
|
||||
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (Task_ReadState (task, TASK_EXIT))
|
||||
{
|
||||
@@ -1190,20 +1190,20 @@ TheMess:
|
||||
MenuTransition = DEBOUNCE_DELAY;
|
||||
SuspendGameClock ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStatusMessage (NULL_PTR);
|
||||
if (LastActivity == CHECK_LOAD)
|
||||
pSolarSysState->MenuState.CurState = (ROSTER + 1) + 1;
|
||||
else
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_STARMAP, STARMAP);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pSolarSysState->MenuState.CurState = STARMAP + 1;
|
||||
}
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
FlushInput ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
FinishTask (task);
|
||||
@@ -1213,10 +1213,10 @@ TheMess:
|
||||
static void
|
||||
DrawInnerSystem (void)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawSISTitle (GLOBAL_SIS (PlanetName));
|
||||
DrawSystem (pSolarSysState->pBaseDesc->pPrevDesc->radius, TRUE);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
BOOLEAN
|
||||
@@ -1276,7 +1276,7 @@ StartGroups:
|
||||
{
|
||||
DrawMenuStateStrings (PM_STARMAP, -(PM_NAVIGATE - PM_SCAN));
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
RepairSISBorder ();
|
||||
|
||||
InitDisplayList ();
|
||||
@@ -1293,7 +1293,7 @@ StartGroups:
|
||||
pSolarSysState->MenuState.flash_task =
|
||||
AssignTask (IPtask_func, 6144,
|
||||
"flash solar system menu");
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (!PLRPlaying ((MUSIC_REF)~0) && LastActivity != CHECK_LOAD)
|
||||
{
|
||||
@@ -1308,14 +1308,14 @@ StartGroups:
|
||||
draw_sys_flags &= ~UNBATCH_SYS;
|
||||
UnbatchGraphics ();
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
while (pSolarSysState->SunDesc[0].radius == (MAX_ZOOM_RADIUS << 1))
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
TaskSwitch ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
XFormColorMap ((COLORMAPPTR)clut_buf, ONE_SECOND / 2);
|
||||
}
|
||||
}
|
||||
@@ -1368,11 +1368,11 @@ StartGroups:
|
||||
else
|
||||
{
|
||||
DrawMenuStateStrings (PM_SCAN, SCAN);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
pSolarSysState->MenuState.CurState = SCAN + 1;
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
FlushInput ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1383,11 +1383,11 @@ InitSolarSys (void)
|
||||
BOOLEAN InnerSystem;
|
||||
BOOLEAN Reentry;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
LoadIPData ();
|
||||
LoadLanderData ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pSolarSysState->MenuState.InputFunc = DoFlagshipCommands;
|
||||
|
||||
@@ -1440,9 +1440,9 @@ InitSolarSys (void)
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
ClearSISRect (DRAW_SIS_DISPLAY);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LastActivity &= ~CHECK_LOAD;
|
||||
}
|
||||
@@ -1451,12 +1451,12 @@ InitSolarSys (void)
|
||||
// Enabled graphics synchronization again, as in 3DO code originally.
|
||||
// This should fix the 'entering star' lockup/messed graphics problems.
|
||||
// 2002/11/30 by Mika
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawSISMessage (NULL_PTR);
|
||||
SetContext (SpaceContext);
|
||||
SetContextFGFrame (Screen);
|
||||
SetContextBackGroundColor (BLACK_COLOR);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
if (InnerSystem)
|
||||
{
|
||||
@@ -1473,9 +1473,9 @@ InitSolarSys (void)
|
||||
}
|
||||
else
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawHyperCoords (CurStarDescPtr->star_pt); /* Adjust position */
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
/* force a redraw */
|
||||
pSolarSysState->SunDesc[0].radius = MAX_ZOOM_RADIUS << 1;
|
||||
|
||||
@@ -53,7 +53,7 @@ DrawRestartMenu (BYTE OldState, BYTE NewState, FRAME f)
|
||||
TEXT t;
|
||||
UNICODE buf[64];
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (ScreenContext);
|
||||
r.corner.x = r.corner.y = r.extent.width = r.extent.height = 0;
|
||||
SetContextClipRect (&r);
|
||||
@@ -76,7 +76,7 @@ DrawRestartMenu (BYTE OldState, BYTE NewState, FRAME f)
|
||||
SetContextForeGroundColor (WHITE_COLOR);
|
||||
font_DrawText (&t);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
(void) OldState; /* Satisfying compiler (unused parameter) */
|
||||
}
|
||||
|
||||
@@ -155,9 +155,9 @@ else if (InputState & DEVICE_EXIT) return (FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
@@ -282,18 +282,18 @@ LastActivity = WON_LAST_BATTLE;
|
||||
BatchGraphics ();
|
||||
ClearDrawable ();
|
||||
FlushColorXForms ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
UnbatchGraphics ();
|
||||
|
||||
FlushInput ();
|
||||
GLOBAL (CurrentActivity) &= ~CHECK_ABORT;
|
||||
DoInput ((PVOID)&MenuState, TRUE);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)0, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DestroyDrawable (ReleaseDrawable (s.frame));
|
||||
|
||||
if (GLOBAL (CurrentActivity) == (ACTIVITY)~0)
|
||||
|
||||
@@ -209,11 +209,11 @@ SaveProblem (void)
|
||||
STAMP s;
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (SpaceContext);
|
||||
SaveProblemMessage (&s);
|
||||
FlushGraphics ();
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
while (AnyButtonPress (FALSE));
|
||||
do
|
||||
@@ -223,13 +223,13 @@ SaveProblem (void)
|
||||
} while (!(CurrentMenuState.select || CurrentMenuState.special ||
|
||||
(GLOBAL (CurrentActivity) & CHECK_ABORT)));
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
BatchGraphics ();
|
||||
DrawStamp (&s);
|
||||
UnbatchGraphics ();
|
||||
SetContext (OldContext);
|
||||
DestroyDrawable (ReleaseDrawable (s.frame));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ FONT StarConFont, MicroFont, TinyFont;
|
||||
QUEUE race_q[NUM_PLAYERS];
|
||||
SOUND MenuSounds, GameSounds;
|
||||
FRAME ActivityFrame, status, flagship_status, misc_data;
|
||||
CrossThreadMutex GraphicsLock;
|
||||
Mutex GraphicsLock;
|
||||
CondVar RenderingCond;
|
||||
STRING GameStrings;
|
||||
|
||||
|
||||
@@ -200,10 +200,10 @@ ship_preprocess (PELEMENT ElementPtr)
|
||||
InitIntersectStartPoint (ElementPtr);
|
||||
InitIntersectEndPoint (ElementPtr);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
ResumeGameClock ();
|
||||
SetGameClockRate (HYPERSPACE_CLOCK_RATE);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
if (hyper_transition (ElementPtr))
|
||||
return;
|
||||
|
||||
+36
-36
@@ -92,7 +92,7 @@ int hangar_anim_func (void* data)
|
||||
CONTEXT OldContext;
|
||||
RECT OldClipRect;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (ScreenContext);
|
||||
GetContextClipRect (&OldClipRect);
|
||||
SetContextClipRect (&ClipRect);
|
||||
@@ -103,7 +103,7 @@ int hangar_anim_func (void* data)
|
||||
|
||||
SetContextClipRect (&OldClipRect);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SleepThreadUntil (TimeIn + ONE_SECOND / HANGAR_ANIM_RATE);
|
||||
TimeIn = GetTimeCounter ();
|
||||
@@ -207,7 +207,7 @@ DrawRaceStrings (BYTE NewRaceItem)
|
||||
STAMP s;
|
||||
CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
OldContext = SetContext (StatusContext);
|
||||
GetContextClipRect (&r);
|
||||
@@ -272,7 +272,7 @@ DrawRaceStrings (BYTE NewRaceItem)
|
||||
}
|
||||
//SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
#define SHIP_WIN_WIDTH 34
|
||||
@@ -497,7 +497,7 @@ ShowCombatShip (COUNT which_window, SHIP_FRAGMENTPTR YankedStarShipPtr)
|
||||
while (AnyButtonPress (FALSE))
|
||||
TaskSwitch();
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (OffScreenContext);
|
||||
SetContextFGFrame (Screen);
|
||||
SetContextBackGroundColor (BLACK_COLOR);
|
||||
@@ -541,7 +541,7 @@ ShowCombatShip (COUNT which_window, SHIP_FRAGMENTPTR YankedStarShipPtr)
|
||||
UnbatchGraphics ();
|
||||
SetContextClipRect (NULL_PTR);
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -571,9 +571,9 @@ CrewTransaction (SIZE crew_delta)
|
||||
{
|
||||
GLOBAL (CrewCost) += 2;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_CREW, SHIPYARD_CREW);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -583,9 +583,9 @@ CrewTransaction (SIZE crew_delta)
|
||||
{
|
||||
GLOBAL (CrewCost) -= 2;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_CREW, SHIPYARD_CREW);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
if (!(ActivateStarShip (
|
||||
@@ -634,7 +634,7 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
pMS->CurState = MAKE_BYTE (0, 0xF);
|
||||
pMS->delta_item = 0;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
goto ChangeFlashRect;
|
||||
}
|
||||
@@ -710,7 +710,7 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
);
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
#ifdef WANT_SHIP_SPINS
|
||||
if (special)
|
||||
@@ -745,7 +745,7 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
COUNT Index;
|
||||
|
||||
// SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
if (!(pMS->delta_item & MODIFY_CREW_FLAG))
|
||||
{
|
||||
pMS->delta_item = MODIFY_CREW_FLAG;
|
||||
@@ -771,12 +771,12 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
{
|
||||
ShowCombatShip ((COUNT)pMS->CurState, (SHIP_FRAGMENTPTR)0);
|
||||
//Reset flash rectangle
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings (PM_CREW, SHIPYARD_CREW);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DeltaSISGauges (UNDEFINED_DELTA, UNDEFINED_DELTA,
|
||||
-((int)ShipCost[Index]));
|
||||
r.corner.x = pMS->flash_rect0.corner.x;
|
||||
@@ -786,7 +786,7 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
r.extent.height = 5;
|
||||
SetContext (SpaceContext);
|
||||
SetFlashRect (&r, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
return (TRUE);
|
||||
@@ -814,7 +814,7 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
|
||||
return (TRUE);
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
goto ChangeFlashRect;
|
||||
}
|
||||
else if (select || cancel)
|
||||
@@ -824,9 +824,9 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
&& StarShipPtr->ShipInfo.crew_level == 0)
|
||||
{
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
ShowCombatShip ((COUNT)pMS->CurState, StarShipPtr);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
UnlockStarShip (&GLOBAL (built_ship_q), hStarShip);
|
||||
RemoveQueue (&GLOBAL (built_ship_q), hStarShip);
|
||||
FreeStarShip (&GLOBAL (built_ship_q), hStarShip);
|
||||
@@ -998,13 +998,13 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
}
|
||||
else if (cancel)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
pMS->InputFunc = DoShipyard;
|
||||
DrawMenuStateStrings (PM_CREW, pMS->CurState = SHIPYARD_CREW);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (TRUE);
|
||||
}
|
||||
@@ -1031,7 +1031,7 @@ ChangeFlashRect:
|
||||
}
|
||||
SetFlashRect (&pMS->flash_rect0, (FRAME)0);
|
||||
}
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1044,7 +1044,7 @@ DrawBluePrint (PMENU_STATE pMS)
|
||||
COUNT num_frames;
|
||||
STAMP s;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
|
||||
pMS->ModuleFrame = CaptureDrawable (
|
||||
@@ -1155,7 +1155,7 @@ DrawBluePrint (PMENU_STATE pMS)
|
||||
DestroyDrawable (ReleaseDrawable (pMS->ModuleFrame));
|
||||
pMS->ModuleFrame = 0;
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -1220,16 +1220,16 @@ DoShipyard (PMENU_STATE pMS)
|
||||
BatchGraphics ();
|
||||
|
||||
DrawSISFrame ();
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawSISMessage (GAME_STRING (STARBASE_STRING_BASE + 3));
|
||||
DrawSISTitle (GAME_STRING (STARBASE_STRING_BASE));
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawBluePrint (pMS);
|
||||
pMS->ModuleFrame = s.frame;
|
||||
|
||||
DrawMenuStateStrings (PM_CREW, pMS->CurState = SHIPYARD_CREW);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
s.origin.x = s.origin.y = 0;
|
||||
#ifdef USE_3DO_HANGAR
|
||||
@@ -1261,12 +1261,12 @@ DoShipyard (PMENU_STATE pMS)
|
||||
PlayMusic (pMS->hMusic, TRUE, 1);
|
||||
UnbatchGraphics ();
|
||||
BeginHangarAnim (pMS);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
ShowCombatShip ((COUNT)~0, (SHIP_FRAGMENTPTR)0);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
pMS->Initialized = TRUE;
|
||||
@@ -1275,13 +1275,13 @@ DoShipyard (PMENU_STATE pMS)
|
||||
{
|
||||
ExitShipyard:
|
||||
EndHangarAnim (pMS);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DestroyDrawable (ReleaseDrawable (pMS->ModuleFrame));
|
||||
pMS->ModuleFrame = 0;
|
||||
pMS->CurFrame = 0;
|
||||
DestroyColorMap (ReleaseColorMap (pMS->CurString));
|
||||
pMS->CurString = 0;
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
@@ -1298,10 +1298,10 @@ ExitShipyard:
|
||||
if (GameOptions () == 0)
|
||||
goto ExitShipyard;
|
||||
DrawMenuStateStrings (PM_CREW, pMS->CurState);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect ((PRECT)~0L, (FRAME)0);
|
||||
BeginHangarAnim (pMS);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
+10
-10
@@ -73,9 +73,9 @@ ClearSISRect (BYTE ClearFlags)
|
||||
|
||||
if (ClearFlags & CLEAR_SIS_RADAR)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
DrawMenuStateStrings ((BYTE)~0, 1);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
#ifdef NEVER
|
||||
r.corner.x = RADAR_X - 1;
|
||||
r.corner.y = RADAR_Y - 1;
|
||||
@@ -812,7 +812,7 @@ DeltaSISGauges (SIZE crew_delta, SIZE fuel_delta, int resunit_delta)
|
||||
SUPPORT_SHIP_PTS
|
||||
};
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
for (hStarShip = GetHeadLink (&GLOBAL (built_ship_q)),
|
||||
pship_pos = ship_pos;
|
||||
hStarShip; hStarShip = hNextShip, ++pship_pos)
|
||||
@@ -828,16 +828,16 @@ DeltaSISGauges (SIZE crew_delta, SIZE fuel_delta, int resunit_delta)
|
||||
s.origin.x = pship_pos->x;
|
||||
s.origin.y = pship_pos->y;
|
||||
s.frame = StarShipPtr->ShipInfo.icons;
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
UnlockStarShip (
|
||||
&GLOBAL (built_ship_q),
|
||||
hStarShip
|
||||
);
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1313,7 +1313,7 @@ int flash_rect_func(void *data)
|
||||
&tmp_rect, strength, 4);
|
||||
}
|
||||
}
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (ScreenContext);
|
||||
SetContextClipRect (&cached_rect);
|
||||
// flash changed_can't be modified while GraphicSem is held
|
||||
@@ -1321,7 +1321,7 @@ int flash_rect_func(void *data)
|
||||
DrawStamp (pStamp);
|
||||
SetContextClipRect (NULL_PTR); // this will flush whatever
|
||||
SetContext (OldContext);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
FlushGraphics ();
|
||||
SleepThreadUntil (TimeIn + WaitTime);
|
||||
@@ -1391,9 +1391,9 @@ SetFlashRect (PRECT pRect, FRAME f)
|
||||
flash_rect1.extent.width = 0;
|
||||
if (flash_task)
|
||||
{
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
ConcludeTask (flash_task);
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
@@ -256,12 +256,12 @@ s.origin.x = SAFE_X, s.origin.y = SAFE_Y + 4;
|
||||
{
|
||||
//CONTEXT OldContext;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawStamp (&s);
|
||||
s.frame = IncFrameIndex (s.frame);
|
||||
if (s.frame == pMenuState->CurFrame)
|
||||
s.frame = IncFrameIndex (s.frame);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
SleepThreadUntil (TimeIn + (ONE_SECOND / 20));
|
||||
TimeIn = GetTimeCounter ();
|
||||
@@ -287,7 +287,7 @@ DoStarBase (PMENU_STATE pMS)
|
||||
LastActivity &= ~CHECK_LOAD;
|
||||
pMS->InputFunc = DoStarBase;
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
|
||||
if (pMS->hMusic)
|
||||
@@ -306,7 +306,7 @@ DoStarBase (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
SetContext (ScreenContext);
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
s.origin.x = s.origin.y = 0;
|
||||
s.origin.x = SAFE_X, s.origin.y = SAFE_Y + 4;
|
||||
@@ -314,7 +314,7 @@ s.origin.x = SAFE_X, s.origin.y = SAFE_Y + 4;
|
||||
pMS->CurFrame = s.frame;
|
||||
pMS->hMusic = LoadMusicInstance (STARBASE_MUSIC);
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetTransitionSource (NULL);
|
||||
BatchGraphics ();
|
||||
SetContextBackGroundColor (BLACK_COLOR);
|
||||
@@ -334,7 +334,7 @@ s.origin.x = SAFE_X, s.origin.y = SAFE_Y + 4;
|
||||
UnbatchGraphics ();
|
||||
pMS->flash_task = AssignTask (rotate_starbase, 4096,
|
||||
"rotate starbase");
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (CurrentMenuState.select
|
||||
|| GET_GAME_STATE (MOONBASE_ON_SHIP)
|
||||
@@ -410,9 +410,9 @@ ExitStarBase:
|
||||
|
||||
if (NewState != pMS->CurState)
|
||||
{
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
DrawBaseStateStrings (pMS->CurState, NewState);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMS->CurState = NewState;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,9 +59,9 @@ int arilou_gate_task(void* data)
|
||||
counter = 0;
|
||||
}
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SET_GAME_STATE (ARILOU_SPACE_COUNTER, counter);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
UnlockCrossThreadMutex (GLOBAL (GameClock.clock_lock));
|
||||
SleepThreadUntil (TimeIn + BATTLE_FRAME_RATE);
|
||||
@@ -980,9 +980,9 @@ sc = _simple_count;
|
||||
(int)_simple_count - (int)sc);
|
||||
#endif //TESTING
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (NULL_PTR, (FRAME)0);
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
LastActivity = GLOBAL (CurrentActivity);
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ extern BOOLEAN PagingEnabled;
|
||||
extern FRAME ActivityFrame;
|
||||
extern SOUND MenuSounds, GameSounds;
|
||||
extern QUEUE race_q[NUM_PLAYERS];
|
||||
extern CrossThreadMutex GraphicsLock;
|
||||
extern Mutex GraphicsLock;
|
||||
extern CondVar RenderingCond;
|
||||
extern STRING GameStrings;
|
||||
|
||||
|
||||
@@ -159,7 +159,7 @@ PauseGame (void)
|
||||
if (CommData.ConversationPhrases && PlayingTrack ())
|
||||
PauseTrack ();
|
||||
|
||||
LockCrossThreadMutex (GraphicsLock);
|
||||
LockMutex (GraphicsLock);
|
||||
OldContext = SetContext (ScreenContext);
|
||||
OldHot = SetFrameHot (Screen, MAKE_HOT_SPOT (0, 0));
|
||||
|
||||
@@ -174,9 +174,9 @@ PauseGame (void)
|
||||
// Releasing the lock lets the rotate_planet_task
|
||||
// draw a frame. PauseRotate can still allow one more frame
|
||||
// to be drawn, so it is safer to just not release the lock
|
||||
//UnlockCrossThreadMutex (GraphicsLock);
|
||||
//UnlockMutex (GraphicsLock);
|
||||
FlushGraphics ();
|
||||
//LockCrossThreadMutex (GraphicsLock);
|
||||
//LockMutex (GraphicsLock);
|
||||
|
||||
while (ImmediateInputState.pause)
|
||||
TaskSwitch ();
|
||||
@@ -208,7 +208,7 @@ PauseGame (void)
|
||||
do_subtitles ((void *)~0);
|
||||
}
|
||||
|
||||
UnlockCrossThreadMutex (GraphicsLock);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
TaskSwitch ();
|
||||
GLOBAL (CurrentActivity) &= ~CHECK_PAUSE;
|
||||
|
||||
+1
-1
@@ -348,7 +348,7 @@ main (int argc, char *argv[])
|
||||
InitTimeSystem ();
|
||||
InitTaskSystem ();
|
||||
|
||||
GraphicsLock = CreateCrossThreadMutex ("Graphics");
|
||||
GraphicsLock = CreateMutex (/*"Graphics"*/);
|
||||
RenderingCond = CreateCondVar ();
|
||||
|
||||
TFB_InitGraphics (gfxdriver, gfxflags, width, height, bpp);
|
||||
|
||||
Reference in New Issue
Block a user