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 HOTSW_NO_MESSAGE // Printf抑制スイッチ
|
||||
//#define HOTSW_NO_MESSAGE // Printf抑制スイッチ
|
||||
|
||||
#ifdef HOTSW_NO_MESSAGE
|
||||
#ifndef SDK_FINALROM
|
||||
@ -94,7 +94,7 @@ extern "C" {
|
||||
#define START_SHIFT 31
|
||||
#define START_MASK 0x80000000
|
||||
|
||||
#define SCRAMBLE_MASK 0x00406000
|
||||
#define SCRAMBLE_MASK 0x1840e000
|
||||
|
||||
#define AddLatency2ToLatency1(param)\
|
||||
( (((param) & LATENCY2_MASK) \
|
||||
|
||||
@ -281,6 +281,10 @@ BOOL HOTSW_Boot(void)
|
||||
OS_TPrintf("Rom Emulation Data : 0x%04x\n",s_cbData.romEmuBuf[0]);
|
||||
if(s_cbData.debuggerFlg){
|
||||
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も確認。
|
||||
|
||||
@ -22,6 +22,7 @@
|
||||
|
||||
// define data-----------------------------------------------------------------
|
||||
#define CARD_BANNER_INDEX ( LAUNCHER_TITLE_LIST_NUM - 1 )
|
||||
#define GAME_COMMAND_PARAM_INDEX 0x60
|
||||
|
||||
// extern data-----------------------------------------------------------------
|
||||
// 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_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,7 +97,8 @@ typedef struct SYSM_work {
|
||||
OSLockWord lockCardRsc; // カードリソース排他制御用
|
||||
int cloneBootMode;
|
||||
u32 nCardID; // カードID
|
||||
|
||||
u32 gameCommondParam; // NTRのゲームコマンドパラメータ(NTRのROMヘッダのゲームコマンドパラメータに上書きする)
|
||||
|
||||
LauncherParam launcherParam;
|
||||
ISD_RomEmuInfo romEmuInfo;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user