win32: tileview: fix palette index display
This commit is contained in:
parent
60c5b06bc8
commit
b2610dfe11
|
@ -27,20 +27,33 @@
|
||||||
#include "../MMU.h"
|
#include "../MMU.h"
|
||||||
#include "../gpu.h"
|
#include "../gpu.h"
|
||||||
|
|
||||||
typedef struct
|
class tileview_struct
|
||||||
{
|
{
|
||||||
|
public:
|
||||||
|
tileview_struct()
|
||||||
|
: hwnd(NULL)
|
||||||
|
{}
|
||||||
|
|
||||||
u32 autoup_secs;
|
u32 autoup_secs;
|
||||||
bool autoup;
|
bool autoup;
|
||||||
|
|
||||||
HWND hwnd;
|
HWND hwnd;
|
||||||
u32 target;
|
u32 target;
|
||||||
u16 * pal;
|
u16 * pal;
|
||||||
s16 palnum;
|
void setPalnum(s16 num)
|
||||||
|
{
|
||||||
|
palnum = num;
|
||||||
|
if(hwnd == NULL) return;
|
||||||
|
char text[100];
|
||||||
|
sprintf(text, "Pal : %d", palnum);
|
||||||
|
SetDlgItemText(hwnd, IDC_PALNUM, text);
|
||||||
|
}
|
||||||
u16 tilenum;
|
u16 tilenum;
|
||||||
u8 coul;
|
u8 coul;
|
||||||
u32 x;
|
u32 x;
|
||||||
u32 y;
|
u32 y;
|
||||||
} tileview_struct;
|
s16 palnum;
|
||||||
|
};
|
||||||
|
|
||||||
tileview_struct *TileView = NULL;
|
tileview_struct *TileView = NULL;
|
||||||
|
|
||||||
|
@ -155,8 +168,6 @@ LRESULT TileViewBox_Pal256(HWND hwnd, tileview_struct * win, WPARAM wParam, LPAR
|
||||||
bitmap[x + (y*256) + (num*8) +(num2*256*8)] = pal[mem[x + (y*8) + (num*64) +(num2*2048)]];
|
bitmap[x + (y*256) + (num*8) +(num2*256*8)] = pal[mem[x + (y*8) + (num*64) +(num2*2048)]];
|
||||||
SetDIBitsToDevice(mem_dc, 0, 0, 256, 256, 0, 0, 0, 256, bitmap, (BITMAPINFO*)&bmi, DIB_RGB_COLORS);
|
SetDIBitsToDevice(mem_dc, 0, 0, 256, 256, 0, 0, 0, 256, bitmap, (BITMAPINFO*)&bmi, DIB_RGB_COLORS);
|
||||||
}
|
}
|
||||||
sprintf(text, "Pal : %d", win->palnum);
|
|
||||||
SetWindowText(GetDlgItem(hwnd, IDC_PALNUM), text);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
TextOut(mem_dc, 3, 3, "Il n'y a pas de palette", 23);
|
TextOut(mem_dc, 3, 3, "Il n'y a pas de palette", 23);
|
||||||
|
@ -231,8 +242,6 @@ LRESULT TileViewBox_Pal16(HWND hwnd, tileview_struct * win, WPARAM wParam, LPARA
|
||||||
}
|
}
|
||||||
SetDIBitsToDevice(mem_dc, 0, 0, 512, 256, 0, 0, 0, 256, bitmap, (BITMAPINFO*)&bmi, DIB_RGB_COLORS);
|
SetDIBitsToDevice(mem_dc, 0, 0, 512, 256, 0, 0, 0, 256, bitmap, (BITMAPINFO*)&bmi, DIB_RGB_COLORS);
|
||||||
}
|
}
|
||||||
sprintf(text, "Pal : %d", win->palnum);
|
|
||||||
SetWindowText(GetDlgItem(hwnd, IDC_PALNUM), text);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
TextOut(mem_dc, 3, 3, "Il n'y a pas de palette", 23);
|
TextOut(mem_dc, 3, 3, "Il n'y a pas de palette", 23);
|
||||||
|
@ -438,11 +447,13 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
++(TileView->palnum);
|
++(TileView->palnum);
|
||||||
if(TileView->palnum>15)
|
if(TileView->palnum>15)
|
||||||
TileView->palnum = 15;
|
TileView->palnum = 15;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
break;
|
break;
|
||||||
case SB_LINELEFT :
|
case SB_LINELEFT :
|
||||||
--(TileView->palnum);
|
--(TileView->palnum);
|
||||||
if(TileView->palnum<0)
|
if(TileView->palnum<0)
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
InvalidateRect(hwnd, NULL, FALSE);
|
InvalidateRect(hwnd, NULL, FALSE);
|
||||||
|
@ -563,24 +574,28 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 0 :
|
case 0 :
|
||||||
TileView->pal = (u16 *)MMU.ARM9_VMEM;
|
TileView->pal = (u16 *)MMU.ARM9_VMEM;
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
||||||
break;
|
break;
|
||||||
case 1 :
|
case 1 :
|
||||||
TileView->pal = ((u16 *)MMU.ARM9_VMEM) + 0x200;
|
TileView->pal = ((u16 *)MMU.ARM9_VMEM) + 0x200;
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
||||||
break;
|
break;
|
||||||
case 2 :
|
case 2 :
|
||||||
TileView->pal = (u16 *)MMU.ARM9_VMEM + 0x100;
|
TileView->pal = (u16 *)MMU.ARM9_VMEM + 0x100;
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
||||||
break;
|
break;
|
||||||
case 3 :
|
case 3 :
|
||||||
TileView->pal = ((u16 *)MMU.ARM9_VMEM) + 0x300;
|
TileView->pal = ((u16 *)MMU.ARM9_VMEM) + 0x300;
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
||||||
break;
|
break;
|
||||||
|
@ -590,6 +605,7 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 7 :
|
case 7 :
|
||||||
TileView->pal = ((u16 *)(MMU.ExtPal[0][sel-4]));
|
TileView->pal = ((u16 *)(MMU.ExtPal[0][sel-4]));
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_HIDE);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_HIDE);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), FALSE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), FALSE);
|
||||||
if(TileView->coul == 2)
|
if(TileView->coul == 2)
|
||||||
|
@ -605,6 +621,7 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 11 :
|
case 11 :
|
||||||
TileView->pal = ((u16 *)(MMU.ExtPal[1][sel-8]));
|
TileView->pal = ((u16 *)(MMU.ExtPal[1][sel-8]));
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_HIDE);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_HIDE);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), FALSE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), FALSE);
|
||||||
if(TileView->coul == 2)
|
if(TileView->coul == 2)
|
||||||
|
@ -618,6 +635,7 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 13 :
|
case 13 :
|
||||||
TileView->pal = ((u16 *)(MMU.ObjExtPal[0][sel-12]));
|
TileView->pal = ((u16 *)(MMU.ObjExtPal[0][sel-12]));
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
if(TileView->coul == 2)
|
if(TileView->coul == 2)
|
||||||
{
|
{
|
||||||
SendMessage(GetDlgItem(hwnd, IDC_256COUL), BM_SETCHECK, TRUE, 0);
|
SendMessage(GetDlgItem(hwnd, IDC_256COUL), BM_SETCHECK, TRUE, 0);
|
||||||
|
@ -629,6 +647,7 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 15 :
|
case 15 :
|
||||||
TileView->pal = ((u16 *)(MMU.ObjExtPal[1][sel-14]));
|
TileView->pal = ((u16 *)(MMU.ObjExtPal[1][sel-14]));
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
if(TileView->coul == 2)
|
if(TileView->coul == 2)
|
||||||
{
|
{
|
||||||
SendMessage(GetDlgItem(hwnd, IDC_256COUL), BM_SETCHECK, TRUE, 0);
|
SendMessage(GetDlgItem(hwnd, IDC_256COUL), BM_SETCHECK, TRUE, 0);
|
||||||
|
@ -642,6 +661,7 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
||||||
case 19 :
|
case 19 :
|
||||||
TileView->pal = ((u16 *)(MMU.texInfo.texPalSlot[sel-16]));
|
TileView->pal = ((u16 *)(MMU.texInfo.texPalSlot[sel-16]));
|
||||||
TileView->palnum = 0;
|
TileView->palnum = 0;
|
||||||
|
TileView->setPalnum(TileView->palnum);
|
||||||
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
ShowWindow(GetDlgItem(hwnd, IDC_16COUL), SW_SHOW);
|
||||||
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
EnableWindow(GetDlgItem(hwnd, IDC_16COUL), TRUE);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue