fix windows release build. fix windows inputconfig. fix a bug in 4x4 texture decoding introduced during c++ conversion.
This commit is contained in:
parent
121cfb01ac
commit
f11b11b18e
|
@ -5,11 +5,12 @@
|
|||
- Really minor memory access speed up (mainly added for clarity) [shash]
|
||||
- Added transparency and fixed material alpha support and alpha testing on the 3D core [shash]
|
||||
- Changed how depth initial values are calculated (fixes SM64DS skybox) [shash]
|
||||
- Added SSE2 version for matrix [CrazyMax]
|
||||
- Added SSE2 version for some matrix routines [CrazyMax]
|
||||
- Some fixes in core (New SMB don't freeze now) [CrazyMax]
|
||||
- Some optimizations in code [CrazyMax]
|
||||
- Make matrix 4x4 multiply routines use W-coordinate. [zeromus]
|
||||
- Add many matrix and vector functions to matrix.c [zeromus]
|
||||
- Convert to c++!
|
||||
Mac OS X port:
|
||||
- Fixed: Filenames and paths with unicode characters now work. [Jeff]
|
||||
- Fixed: Load state from file button works again. [Jeff]
|
||||
|
@ -25,7 +26,7 @@
|
|||
Windows port:
|
||||
- Removed the bug report link with a define, to avoid reports from betas/external builds [shash]
|
||||
- Added the version on window bar to recognize versions from screenshots [shash]
|
||||
- Changed graphics render core to DirectDraw (work fastest) [CrazyMax]
|
||||
- Changed graphics render core to DirectDraw (work faster) [CrazyMax]
|
||||
- Some fixes in 3D core OGL (fixed textures) [CrazyMax]
|
||||
- Added texture caching (speedup 3D core) [CrazyMax]
|
||||
- Fixes clear depth (ex. Castlevania now don't flipping) [NHerve]
|
||||
|
@ -35,7 +36,7 @@
|
|||
- Fix errors in matrix operations regarding projection mode and pos-vector mode [zeromus]
|
||||
- Fix error in command unpacking which caused some display lists to totally blow up [zeromus]
|
||||
- Render shadow volumes [zeromus]
|
||||
- Convert alpha and material values from [0,31] ranges to opengl ranges in a more precise way [zeromus]
|
||||
- Convert alpha and material values from [0,31], [0,7] etc ranges to opengl [0,maxint] ranges in a more precise way [zeromus]
|
||||
- Fix a race condition in NDS_3D_Reset and NDS_glInit [zeromus]
|
||||
- Add many of NHerve's improvements into OGLRender because I was trying to fix all the 3d issues. [zeromus]
|
||||
- Toon shading infrastructure and a demo implementation [zeromus]
|
||||
|
|
|
@ -244,18 +244,18 @@ BOOL CALLBACK ConfigView_Proc(HWND dialog,UINT komunikat,WPARAM wparam,LPARAM lp
|
|||
if (g_pKeyboard)
|
||||
for(i=0;i<48;i++)
|
||||
for(j=0;j<12;j++)
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)&tabkeytext[i]);
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)tabkeytext[i]);
|
||||
if (g_pJoystick)
|
||||
{
|
||||
for(i=0;i<4;i++)
|
||||
for(j=0;j<12;j++)
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)&tabkeytext[i+48]);
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)tabkeytext[i+48]);
|
||||
for(i=0;i<g_DIJoycap.dwButtons;i++)
|
||||
for(j=0;j<12;j++)
|
||||
{
|
||||
char buf[30];
|
||||
sprintf(buf,"Joystick B%i",i+1);
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)&buf);
|
||||
SendDlgItemMessage(dialog,key_combos[j],CB_ADDSTRING,0,(LPARAM)buf);
|
||||
}
|
||||
}
|
||||
SendDlgItemMessage(dialog,IDC_COMBO1,CB_SETCURSEL,KEY_UP,0);
|
||||
|
|
|
@ -735,6 +735,14 @@
|
|||
Name="MASM"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Release|Win32"
|
||||
ExcludedFromBuild="true"
|
||||
>
|
||||
<Tool
|
||||
Name="MASM"
|
||||
/>
|
||||
</FileConfiguration>
|
||||
<FileConfiguration
|
||||
Name="Debug|x64"
|
||||
ExcludedFromBuild="true"
|
||||
|
|
|
@ -816,6 +816,8 @@ __forceinline void setTexture(unsigned int format, unsigned int texpal)
|
|||
adr=(unsigned char *)(ARM9Mem.textureSlotAddr[txt_slot_current]+((format&0x3FFF)<<3));
|
||||
|
||||
i=texcache_start;
|
||||
|
||||
if(false)
|
||||
while (TRUE)
|
||||
{
|
||||
if (texcache_stop==i) break;
|
||||
|
@ -974,6 +976,8 @@ __forceinline void setTexture(unsigned int format, unsigned int texpal)
|
|||
else
|
||||
slot1=(unsigned short*)&ARM9Mem.textureSlotAddr[1][(texcache[i].frm&0x3FFF)<<2];
|
||||
|
||||
bool dead = false;
|
||||
|
||||
for (y = 0; y < (texcache[i].sizeY>>2); y ++)
|
||||
{
|
||||
u32 tmpPos[4]={(y<<2)*texcache[i].sizeX,((y<<2)+1)*texcache[i].sizeX,
|
||||
|
@ -1043,13 +1047,20 @@ __forceinline void setTexture(unsigned int format, unsigned int texpal)
|
|||
dst[currentPos+2] = tmp_col[(currRow>>4)&3];
|
||||
dst[currentPos+3] = tmp_col[(currRow>>6)&3];
|
||||
|
||||
if(dead) {
|
||||
dst[currentPos] = 0;
|
||||
dst[currentPos+1] = 0;
|
||||
dst[currentPos+2] = 0;
|
||||
dst[currentPos+3] = 0;
|
||||
}
|
||||
|
||||
txt_slot_current_size-=4;;
|
||||
if (txt_slot_current_size<=0)
|
||||
{
|
||||
//dead = true;
|
||||
txt_slot_current++;
|
||||
//zero 9/7/08 - changed *adr= to adr= while changing from c++. was that a bug?
|
||||
map=(unsigned int*)ARM9Mem.textureSlotAddr[txt_slot_current];
|
||||
//map-=txt_slot_size>>2; //zero 8/25/08 - I dont understand this. it broke my game.
|
||||
map-=txt_slot_size>>2; //this is weird, but necessary since we use map[d] above
|
||||
txt_slot_size=txt_slot_current_size=0x020000;
|
||||
}
|
||||
}
|
||||
|
@ -1092,7 +1103,6 @@ __forceinline void setTexture(unsigned int format, unsigned int texpal)
|
|||
if (txt_slot_current_size<=0)
|
||||
{
|
||||
txt_slot_current++;
|
||||
//zero 9/7/08 - changed *adr= to adr= while changing from c++. was that a bug?
|
||||
map=(unsigned short *)ARM9Mem.textureSlotAddr[txt_slot_current];
|
||||
map-=txt_slot_size>>1;
|
||||
txt_slot_size=txt_slot_current_size=0x020000;
|
||||
|
@ -1107,8 +1117,6 @@ __forceinline void setTexture(unsigned int format, unsigned int texpal)
|
|||
texcache[i].sizeX, texcache[i].sizeY, 0,
|
||||
GL_RGBA, GL_UNSIGNED_BYTE, texMAP);
|
||||
|
||||
DebugDumpTexture(i);
|
||||
|
||||
//============================================================================================
|
||||
|
||||
texcache_count=i;
|
||||
|
|
Loading…
Reference in New Issue