Flips the XFB around and some other things
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@881 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
a3a948ac1d
commit
1972f9bf70
|
@ -86,7 +86,7 @@ Spin Jump Gravity - Normal Speed
|
||||||
00B80454 08000000
|
00B80454 08000000
|
||||||
4240E10C 058E3EB3
|
4240E10C 058E3EB3
|
||||||
|
|
||||||
+Insane heat waves Crazy colors everywhere!
|
Insane heat waves Crazy colors everywhere!
|
||||||
00B80485 08000000
|
00B80485 08000000
|
||||||
043AA070 41200000
|
043AA070 41200000
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ Hold A to swim fast
|
||||||
123ED84A 00000100
|
123ED84A 00000100
|
||||||
0435D548 41900000
|
0435D548 41900000
|
||||||
|
|
||||||
+Run/Swim/Crawl fast Hold A
|
Run/Swim/Crawl fast Hold A
|
||||||
01E06820 08000000
|
01E06820 08000000
|
||||||
4A3ED84A 00000100
|
4A3ED84A 00000100
|
||||||
0435CEEC 42480000
|
0435CEEC 42480000
|
||||||
|
|
|
@ -56,7 +56,7 @@ Super Hookshot
|
||||||
123ED84A 00000140
|
123ED84A 00000140
|
||||||
040F2898 8001004C
|
040F2898 8001004C
|
||||||
|
|
||||||
+Teleport to Fire Mountain up R Y
|
Teleport to Fire Mountain up R Y
|
||||||
01E05660 08000000
|
01E05660 08000000
|
||||||
4A3ED84A 00000828
|
4A3ED84A 00000828
|
||||||
043E440C 482F85A1
|
043E440C 482F85A1
|
||||||
|
@ -69,7 +69,7 @@ Hold A to swim fast
|
||||||
123ED84A 00000100
|
123ED84A 00000100
|
||||||
0435D548 41900000
|
0435D548 41900000
|
||||||
|
|
||||||
+Run/Swim/Crawl fast Hold A
|
Run/Swim/Crawl fast Hold A
|
||||||
01E06820 08000000
|
01E06820 08000000
|
||||||
4A3ED84A 00000100
|
4A3ED84A 00000100
|
||||||
0435CEEC 42480000
|
0435CEEC 42480000
|
||||||
|
@ -412,7 +412,7 @@ Have Complete Triforce USE THIS CODE AFTER BEATING THE TOWER OF THE GODS
|
||||||
01E019B8 08000000
|
01E019B8 08000000
|
||||||
003C4CC6 000000FF
|
003C4CC6 000000FF
|
||||||
|
|
||||||
+Press R to Jump
|
Press R to Jump
|
||||||
01E019BB 08000000
|
01E019BB 08000000
|
||||||
0A3ED84A 00000020
|
0A3ED84A 00000020
|
||||||
863E4410 00000001
|
863E4410 00000001
|
||||||
|
|
|
@ -261,13 +261,14 @@ namespace
|
||||||
|
|
||||||
// it is very risky to mix _SECURE_SCL=0 and _SECURE_SCL=1 compiled libraries
|
// it is very risky to mix _SECURE_SCL=0 and _SECURE_SCL=1 compiled libraries
|
||||||
// it is possible that you overwrite memory if you do it
|
// it is possible that you overwrite memory if you do it
|
||||||
|
#ifdef _WIN32
|
||||||
#ifndef _SECURE_SCL
|
#ifndef _SECURE_SCL
|
||||||
#error Please define _SECURE_SCL=0 in the project settings
|
#error Please define _SECURE_SCL=0 in the project settings
|
||||||
#else
|
#else
|
||||||
template <bool> struct CompileTimeAssert;
|
template <bool> struct CompileTimeAssert;
|
||||||
template<> struct CompileTimeAssert<true> {};
|
template<> struct CompileTimeAssert<true> {};
|
||||||
CompileTimeAssert<_SECURE_SCL==0> x;
|
CompileTimeAssert<_SECURE_SCL==0> x;
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,6 +44,9 @@ void Init()
|
||||||
g_Channels[0].AddDevice(EXIDEVICE_MEMORYCARD_A, 0);
|
g_Channels[0].AddDevice(EXIDEVICE_MEMORYCARD_A, 0);
|
||||||
g_Channels[0].AddDevice(EXIDEVICE_IPL, 1);
|
g_Channels[0].AddDevice(EXIDEVICE_IPL, 1);
|
||||||
g_Channels[1].AddDevice(EXIDEVICE_MEMORYCARD_B, 0);
|
g_Channels[1].AddDevice(EXIDEVICE_MEMORYCARD_B, 0);
|
||||||
|
#if 0
|
||||||
|
g_Channels[0].AddDevice(EXIDEVICE_ETH, 2);
|
||||||
|
#endif
|
||||||
//g_Channels[1].AddDevice(EXIDEVICE_MIC, 0);
|
//g_Channels[1].AddDevice(EXIDEVICE_MIC, 0);
|
||||||
g_Channels[2].AddDevice(EXIDEVICE_AD16, 0);
|
g_Channels[2].AddDevice(EXIDEVICE_AD16, 0);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,9 @@
|
||||||
#include "EXI_DeviceMemoryCard.h"
|
#include "EXI_DeviceMemoryCard.h"
|
||||||
#include "EXI_DeviceAD16.h"
|
#include "EXI_DeviceAD16.h"
|
||||||
#include "EXI_DeviceMic.h"
|
#include "EXI_DeviceMic.h"
|
||||||
|
#if 0
|
||||||
|
#include "EXI_DeviceEthernet.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "../Core.h"
|
#include "../Core.h"
|
||||||
|
|
||||||
|
@ -148,6 +151,11 @@ IEXIDevice* EXIDevice_Create(TEXIDevices _EXIDevice)
|
||||||
case EXIDEVICE_MIC:
|
case EXIDEVICE_MIC:
|
||||||
return new CEXIMic(1);
|
return new CEXIMic(1);
|
||||||
break;
|
break;
|
||||||
|
#if 0
|
||||||
|
case EXIDEVICE_ETH:
|
||||||
|
return new CEXIETHERNET();
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,6 +55,7 @@ enum TEXIDevices
|
||||||
EXIDEVICE_IPL,
|
EXIDEVICE_IPL,
|
||||||
EXIDEVICE_AD16,
|
EXIDEVICE_AD16,
|
||||||
EXIDEVICE_MIC,
|
EXIDEVICE_MIC,
|
||||||
|
EXIDEVICE_ETH,
|
||||||
};
|
};
|
||||||
|
|
||||||
extern IEXIDevice* EXIDevice_Create(TEXIDevices _EXIDevice);
|
extern IEXIDevice* EXIDevice_Create(TEXIDevices _EXIDevice);
|
||||||
|
|
|
@ -43,7 +43,7 @@ CEXIMic::CEXIMic(int _Index)
|
||||||
//status = MC_STATUS_BUSY | MC_STATUS_UNLOCKED | MC_STATUS_READY;
|
//status = MC_STATUS_BUSY | MC_STATUS_UNLOCKED | MC_STATUS_READY;
|
||||||
m_uPosition = 0;
|
m_uPosition = 0;
|
||||||
formatDelay = 0;
|
formatDelay = 0;
|
||||||
ID= 0x0a000000;
|
ID = 0x0a000000;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -109,8 +109,14 @@ void CEXIMic::TransferByte(u8 &byte)
|
||||||
break;
|
break;
|
||||||
case cmdStatus:
|
case cmdStatus:
|
||||||
{
|
{
|
||||||
u16 Status = 0x0; // 0x80 if you want button pressed forever
|
byte = (u8)(Status.U16 >> (24-(((m_uPosition - 2) & 3) * 8)));
|
||||||
byte = (u8)(Status >> (24-(((m_uPosition-2) & 3) * 8)));
|
}
|
||||||
|
break;
|
||||||
|
case cmdSetStatus:
|
||||||
|
{
|
||||||
|
Status.U8[m_uPosition - 1] = byte;
|
||||||
|
if(m_uPosition == 2)
|
||||||
|
printf("Status is 0x%04x\n", Status.U16);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -34,7 +34,7 @@ private:
|
||||||
{
|
{
|
||||||
cmdID = 0x00,
|
cmdID = 0x00,
|
||||||
cmdStatus = 0x40,
|
cmdStatus = 0x40,
|
||||||
cmdArrayToBuffer = 0x53,
|
cmdSetStatus = 0x80,
|
||||||
cmdSetInterrupt = 0x81,
|
cmdSetInterrupt = 0x81,
|
||||||
cmdWriteBuffer = 0x82,
|
cmdWriteBuffer = 0x82,
|
||||||
cmdReadStatus = 0x83,
|
cmdReadStatus = 0x83,
|
||||||
|
@ -53,10 +53,15 @@ private:
|
||||||
int interruptSwitch;
|
int interruptSwitch;
|
||||||
bool m_bInterruptSet;
|
bool m_bInterruptSet;
|
||||||
int command;
|
int command;
|
||||||
int status;
|
union uStatus
|
||||||
|
{
|
||||||
|
u16 U16;
|
||||||
|
u8 U8[2];
|
||||||
|
};
|
||||||
int Index;
|
int Index;
|
||||||
u32 m_uPosition;
|
u32 m_uPosition;
|
||||||
u32 formatDelay;
|
u32 formatDelay;
|
||||||
|
uStatus Status;
|
||||||
|
|
||||||
//! memory card parameters
|
//! memory card parameters
|
||||||
unsigned int ID;
|
unsigned int ID;
|
||||||
|
|
|
@ -144,10 +144,10 @@ void XFB_Draw(u8 *xfb_in_ram, u32 width, u32 height, s32 yOffset)
|
||||||
GL_REPORT_ERRORD();
|
GL_REPORT_ERRORD();
|
||||||
|
|
||||||
glBegin(GL_QUADS);
|
glBegin(GL_QUADS);
|
||||||
glTexCoord2f(width, height + yOffset); glVertex2f(-1,-1);
|
glTexCoord2f(width, height + yOffset); glVertex2f(1,-1);
|
||||||
glTexCoord2f(width, 0 + yOffset); glVertex2f(-1,1);
|
glTexCoord2f(width, 0 + yOffset); glVertex2f(1,1);
|
||||||
glTexCoord2f(0, 0 + yOffset); glVertex2f(1,1);
|
glTexCoord2f(0, 0 + yOffset); glVertex2f(-1,1);
|
||||||
glTexCoord2f(0, height + yOffset); glVertex2f(1,-1);
|
glTexCoord2f(0, height + yOffset); glVertex2f(-1,-1);
|
||||||
glEnd();
|
glEnd();
|
||||||
|
|
||||||
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0);
|
glBindTexture(GL_TEXTURE_RECTANGLE_ARB, 0);
|
||||||
|
|
Loading…
Reference in New Issue