mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-16 22:58:09 +00:00
TINSEL: Get rid of some global variables
These were actually all "harmless" (i.e. where no obstructions to RTL support). Still good to get rid of 'em! svn-id: r54286
This commit is contained in:
parent
5a554e3dbe
commit
5ceb54d088
@ -236,8 +236,8 @@ void FadeInFast(SCNHANDLE noFadeTable[]) {
|
||||
|
||||
void PokeInTagColour() {
|
||||
if (SysVar(SV_TAGCOLOUR)) {
|
||||
static COLORREF c = GetActorRGB(-1); // FIXME: Avoid non-const global vars
|
||||
UpdateDACqueue(SysVar(SV_TAGCOLOUR), 1, &c);
|
||||
const COLORREF c = GetActorRGB(-1);
|
||||
UpdateDACqueue(SysVar(SV_TAGCOLOUR), c);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -119,9 +119,9 @@ void FettleFontPal(SCNHANDLE fontPal) {
|
||||
pImg->hImgPal = 0;
|
||||
|
||||
if (TinselV2 && SysVar(SV_TAGCOLOUR)) {
|
||||
static COLORREF c = GetActorRGB(-1); // FIXME: Avoid non-const global vars
|
||||
const COLORREF c = GetActorRGB(-1);
|
||||
SetTagColorRef(c);
|
||||
UpdateDACqueue(SysVar(SV_TAGCOLOUR), 1, &c);
|
||||
UpdateDACqueue(SysVar(SV_TAGCOLOUR), c);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -42,6 +42,7 @@ struct VIDEO_DAC_Q {
|
||||
union {
|
||||
SCNHANDLE hRGBarray; ///< handle of palette or
|
||||
COLORREF *pRGBarray; ///< list of palette colours
|
||||
COLORREF singleRGB;
|
||||
} pal;
|
||||
bool bHandle; ///< when set - use handle of palette
|
||||
int destDACindex; ///< start index of palette in video DAC
|
||||
@ -53,9 +54,6 @@ struct VIDEO_DAC_Q {
|
||||
|
||||
// FIXME: Avoid non-const global vars
|
||||
|
||||
/** background colour */
|
||||
static COLORREF bgndColour = BLACK;
|
||||
|
||||
/** palette allocator data */
|
||||
static PALQ palAllocData[NUM_PALETTES];
|
||||
|
||||
@ -138,8 +136,8 @@ void PalettesToVideoDAC() {
|
||||
|
||||
// while Q is not empty
|
||||
while (pDAChead != pDACtail) {
|
||||
PALETTE *pPalette; // pointer to hardware palette
|
||||
COLORREF *pColours; // pointer to list of RGB triples
|
||||
const PALETTE *pPalette; // pointer to hardware palette
|
||||
const COLORREF *pColours; // pointer to list of RGB triples
|
||||
|
||||
#ifdef DEBUG
|
||||
// make sure palette does not overlap
|
||||
@ -154,17 +152,20 @@ void PalettesToVideoDAC() {
|
||||
// we are using a palette handle
|
||||
|
||||
// get hardware palette pointer
|
||||
pPalette = (PALETTE *)LockMem(pDACtail->pal.hRGBarray);
|
||||
pPalette = (const PALETTE *)LockMem(pDACtail->pal.hRGBarray);
|
||||
|
||||
// get RGB pointer
|
||||
pColours = pPalette->palRGB;
|
||||
} else if (pDACtail->numColours == 1) {
|
||||
// we are using a single color palette
|
||||
pColours = &pDACtail->pal.singleRGB;
|
||||
} else {
|
||||
// we are using a palette pointer
|
||||
pColours = pDACtail->pal.pRGBarray;
|
||||
}
|
||||
|
||||
// update the system palette
|
||||
g_system->setPalette((byte *)pColours, pDACtail->destDACindex, pDACtail->numColours);
|
||||
g_system->setPalette((const byte *)pColours, pDACtail->destDACindex, pDACtail->numColours);
|
||||
|
||||
// update tail pointer
|
||||
pDACtail++;
|
||||
@ -232,7 +233,7 @@ void UpdateDACqueueHandle(int posInDAC, int numColours, SCNHANDLE hPalette) {
|
||||
/**
|
||||
* Places a palette in the video DAC queue.
|
||||
* @param posInDAC Position in video DAC
|
||||
* @param numColours, Number of colours in palette
|
||||
* @param numColours Number of colours in palette
|
||||
* @param pColours List of RGB triples
|
||||
*/
|
||||
void UpdateDACqueue(int posInDAC, int numColours, COLORREF *pColours) {
|
||||
@ -241,7 +242,34 @@ void UpdateDACqueue(int posInDAC, int numColours, COLORREF *pColours) {
|
||||
|
||||
pDAChead->destDACindex = posInDAC & ~PALETTE_MOVED; // set index in video DAC
|
||||
pDAChead->numColours = numColours; // set number of colours
|
||||
pDAChead->pal.pRGBarray = pColours; // set addr of palette
|
||||
if (numColours == 1)
|
||||
pDAChead->pal.singleRGB = *pColours; // set single color of which the "palette" consists
|
||||
else
|
||||
pDAChead->pal.pRGBarray = pColours; // set addr of palette
|
||||
pDAChead->bHandle = false; // we are not using a palette handle
|
||||
|
||||
// update head pointer
|
||||
++pDAChead;
|
||||
|
||||
#ifdef DEBUG
|
||||
if ((pDAChead-vidDACdata) > maxDACQ)
|
||||
maxDACQ = pDAChead-vidDACdata;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Places a "palette" consisting of a single color in the video DAC queue.
|
||||
* @param posInDAC Position in video DAC
|
||||
* @param color Single RGB triple
|
||||
*/
|
||||
void UpdateDACqueue(int posInDAC, COLORREF color) {
|
||||
// check Q overflow
|
||||
assert(pDAChead < vidDACdata + NUM_PALETTES);
|
||||
|
||||
pDAChead->destDACindex = posInDAC & ~PALETTE_MOVED; // set index in video DAC
|
||||
pDAChead->numColours = 1; // set number of colours
|
||||
pDAChead->pal.singleRGB = color; // set single color of which the "palette" consists
|
||||
pDAChead->bHandle = false; // we are not using a palette handle
|
||||
|
||||
// update head pointer
|
||||
@ -470,11 +498,8 @@ PALQ *GetNextPalette(PALQ *pStrtPal) {
|
||||
* @param colour Colour to set the background to
|
||||
*/
|
||||
void SetBgndColour(COLORREF colour) {
|
||||
// update background colour struct
|
||||
bgndColour = colour;
|
||||
|
||||
// Q the change to the video DAC
|
||||
UpdateDACqueue(BGND_DAC_INDEX, 1, &bgndColour);
|
||||
// update background colour struct by queuing the change to the video DAC
|
||||
UpdateDACqueue(BGND_DAC_INDEX, colour);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -482,7 +507,7 @@ void SetBgndColour(COLORREF colour) {
|
||||
* @param pPalQ Palette queue position
|
||||
* @param bFading Whether it is fading
|
||||
*/
|
||||
void FadingPalette(PPALQ pPalQ, bool bFading) {
|
||||
void FadingPalette(PALQ *pPalQ, bool bFading) {
|
||||
// validate palette Q pointer
|
||||
assert(pPalQ >= palAllocData && pPalQ <= palAllocData + NUM_PALETTES - 1);
|
||||
|
||||
@ -497,7 +522,7 @@ void FadingPalette(PPALQ pPalQ, bool bFading) {
|
||||
* palettes are fading.
|
||||
*/
|
||||
void NoFadingPalettes() {
|
||||
PPALQ pPalQ;
|
||||
PALQ *pPalQ;
|
||||
|
||||
for (pPalQ = palAllocData; pPalQ <= palAllocData + NUM_PALETTES - 1; pPalQ++) {
|
||||
pPalQ->bFading = false;
|
||||
@ -621,10 +646,7 @@ int TranslucentColour() {
|
||||
}
|
||||
|
||||
int HighlightColour() {
|
||||
static COLORREF cRef; // FIXME: Avoid non-const global vars
|
||||
|
||||
cRef = (COLORREF)SysVar(SYS_HighlightRGB);
|
||||
UpdateDACqueue(talkIndex, 1, &cRef);
|
||||
UpdateDACqueue(talkIndex, (COLORREF)SysVar(SYS_HighlightRGB));
|
||||
|
||||
return talkIndex;
|
||||
}
|
||||
|
@ -90,7 +90,6 @@ struct PALQ {
|
||||
bool bFading; // Whether or not fading
|
||||
COLORREF palRGB[MAX_COLOURS]; // actual palette colours
|
||||
};
|
||||
typedef PALQ *PPALQ;
|
||||
|
||||
#define PALETTE_MOVED 0x8000 // when this bit is set in the "posInDAC"
|
||||
// field - the palette entry has moved
|
||||
@ -123,6 +122,8 @@ void UpdateDACqueue( // places a palette in the video DAC queue
|
||||
int numColours, // number of colours in palette
|
||||
COLORREF *pColours); // list of RGB tripples
|
||||
|
||||
void UpdateDACqueue(int posInDAC, COLORREF color);
|
||||
|
||||
PALQ *AllocPalette( // allocate a new palette
|
||||
SCNHANDLE hNewPal); // palette to allocate
|
||||
|
||||
@ -144,7 +145,7 @@ COLORREF GetBgndColour(); // returns current background colour
|
||||
void SetBgndColour( // sets current background colour
|
||||
COLORREF colour); // colour to set the background to
|
||||
|
||||
void FadingPalette(PPALQ pPalQ, bool bFading);
|
||||
void FadingPalette(PALQ *pPalQ, bool bFading);
|
||||
|
||||
void CreateTranslucentPalette(SCNHANDLE BackPal);
|
||||
|
||||
|
@ -308,8 +308,6 @@ static int scrollNumber = 0; // used by scroll()
|
||||
|
||||
static bool bNotPointedRunning = false; // Used in Printobj and PrintObjPointed
|
||||
|
||||
static COLORREF s_talkfontColor = 0;
|
||||
|
||||
//----------------- FORWARD REFERENCES --------------------
|
||||
|
||||
static int HeldObject();
|
||||
@ -431,9 +429,8 @@ static void ScrollMonitorProcess(CORO_PARAM, const void *param) {
|
||||
* Poke supplied colour into the DAC queue.
|
||||
*/
|
||||
void SetTextPal(COLORREF col) {
|
||||
s_talkfontColor = col;
|
||||
SetTalkColourRef(col);
|
||||
UpdateDACqueue(TalkColour(), 1, &s_talkfontColor);
|
||||
UpdateDACqueue(TalkColour(), col);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user