mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
(更新:Akabane Jumpei)
エミュレータを読んだ場合、ゲームモードでスクランブルをかけないように、 NTRのRomHeaderバッファのゲームコマンドパラメータ部分を修正するように変更。 (SlotBでエミュレータを読んだ場合のみ対応) git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@534 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
84bc885805
commit
d3ce60c97e
@ -23,7 +23,7 @@ extern "C" {
|
|||||||
|
|
||||||
|
|
||||||
// Define -------------------------------------------------------------------
|
// Define -------------------------------------------------------------------
|
||||||
#define HOTSW_NO_MESSAGE // Printf抑制スイッチ
|
//#define HOTSW_NO_MESSAGE // Printf抑制スイッチ
|
||||||
|
|
||||||
#ifdef HOTSW_NO_MESSAGE
|
#ifdef HOTSW_NO_MESSAGE
|
||||||
#ifndef SDK_FINALROM
|
#ifndef SDK_FINALROM
|
||||||
@ -94,7 +94,7 @@ extern "C" {
|
|||||||
#define START_SHIFT 31
|
#define START_SHIFT 31
|
||||||
#define START_MASK 0x80000000
|
#define START_MASK 0x80000000
|
||||||
|
|
||||||
#define SCRAMBLE_MASK 0x00406000
|
#define SCRAMBLE_MASK 0x1840e000
|
||||||
|
|
||||||
#define AddLatency2ToLatency1(param)\
|
#define AddLatency2ToLatency1(param)\
|
||||||
( (((param) & LATENCY2_MASK) \
|
( (((param) & LATENCY2_MASK) \
|
||||||
|
|||||||
@ -281,6 +281,10 @@ BOOL HOTSW_Boot(void)
|
|||||||
OS_TPrintf("Rom Emulation Data : 0x%04x\n",s_cbData.romEmuBuf[0]);
|
OS_TPrintf("Rom Emulation Data : 0x%04x\n",s_cbData.romEmuBuf[0]);
|
||||||
if(s_cbData.debuggerFlg){
|
if(s_cbData.debuggerFlg){
|
||||||
s_cbData.cardType = ROM_EMULATION;
|
s_cbData.cardType = ROM_EMULATION;
|
||||||
|
SYSMi_GetWork()->gameCommondParam = s_cbData.pBootSegBuf->rh.s.game_cmd_param & ~SCRAMBLE_MASK;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
SYSMi_GetWork()->gameCommondParam = s_cbData.pBootSegBuf->rh.s.game_cmd_param;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ROMヘッダCRCを算出してチェック。NintendoロゴCRCも確認。
|
// ROMヘッダCRCを算出してチェック。NintendoロゴCRCも確認。
|
||||||
|
|||||||
@ -22,6 +22,7 @@
|
|||||||
|
|
||||||
// define data-----------------------------------------------------------------
|
// define data-----------------------------------------------------------------
|
||||||
#define CARD_BANNER_INDEX ( LAUNCHER_TITLE_LIST_NUM - 1 )
|
#define CARD_BANNER_INDEX ( LAUNCHER_TITLE_LIST_NUM - 1 )
|
||||||
|
#define GAME_COMMAND_PARAM_INDEX 0x60
|
||||||
|
|
||||||
// extern data-----------------------------------------------------------------
|
// extern data-----------------------------------------------------------------
|
||||||
// function's prototype-------------------------------------------------------
|
// function's prototype-------------------------------------------------------
|
||||||
@ -509,6 +510,8 @@ static void SYSMi_Relocate( void )
|
|||||||
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_TWL_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_TWL_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
||||||
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
||||||
}
|
}
|
||||||
|
// NTR-ROMヘッダバッファのゲームコマンドパラメータを上書きする
|
||||||
|
*(vu32 *)(HW_ROM_HEADER_BUF + GAME_COMMAND_PARAM_INDEX) = SYSMi_GetWork()->gameCommondParam;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -97,6 +97,7 @@ typedef struct SYSM_work {
|
|||||||
OSLockWord lockCardRsc; // カードリソース排他制御用
|
OSLockWord lockCardRsc; // カードリソース排他制御用
|
||||||
int cloneBootMode;
|
int cloneBootMode;
|
||||||
u32 nCardID; // カードID
|
u32 nCardID; // カードID
|
||||||
|
u32 gameCommondParam; // NTRのゲームコマンドパラメータ(NTRのROMヘッダのゲームコマンドパラメータに上書きする)
|
||||||
|
|
||||||
LauncherParam launcherParam;
|
LauncherParam launcherParam;
|
||||||
ISD_RomEmuInfo romEmuInfo;
|
ISD_RomEmuInfo romEmuInfo;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user