mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
パッチコードを2種類にした。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/branches/20101202_Majikon_Patch@2984 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
0391ae6145
commit
0d87ebc851
@ -132,6 +132,7 @@ void BOOT_Init( void )
|
||||
// reg_PXI_MAINPINTF = 0x0000;
|
||||
}
|
||||
|
||||
|
||||
static u32 SearchBinary_Majikon( void )
|
||||
{
|
||||
u32 target_command_address = 0;
|
||||
@ -239,29 +240,57 @@ BOOL BOOT_WaitStart( void )
|
||||
if( target_address )
|
||||
{
|
||||
// ↓ MCU_SetCameraLedStatus( MCU_CAMERA_LED_ON ); 相当の処理
|
||||
u32 patch_core[] =
|
||||
u32 patch_core_arm[] =
|
||||
{
|
||||
0xE3A00000, 0xEA00004B, 0xE59F3134, 0xE5D31000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F2128, 0xE3A0104A,
|
||||
#ifndef MAJIKON_APP_CHECK_BY_CARD_PULLOUT_FUNC
|
||||
// カメラLED点灯
|
||||
0xE3A00000, 0xEA00004B, 0xE59F3140, 0xE5D31000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F2134, 0xE3A0104A,
|
||||
0xE5C21000, 0xE3A010C2, 0xE5C31000, 0xE5D21001,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE5D21001, 0xE2011010,
|
||||
0xE1B01241, 0x0A00003A, 0xE59F20F4, 0xE5D21000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F20E4, 0xE3A03000,
|
||||
0xE1B01241, 0x0A00003A, 0xE59F2100, 0xE5D21000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F20F0, 0xE3A03000,
|
||||
0xEA000000, 0xE5D21000, 0xE3530E15, 0xE2833001,
|
||||
0xBAFFFFFB, 0xE59F20CC, 0xE3A01031, 0xE5C21000,
|
||||
0xBAFFFFFB, 0xE59F20D8, 0xE3A01031, 0xE5C21000,
|
||||
0xE3A010C0, 0xE5C21001, 0xE5D21001, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE5D21001, 0xE2011010, 0xE1B01241,
|
||||
0x0A000023, 0xE59F2098, 0xE5D21000, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE59F2088, 0xE3A03000, 0xEA000000,
|
||||
0x0A000023, 0xE59F20A4, 0xE5D21000, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE59F2094, 0xE3A03000, 0xEA000000,
|
||||
0xE5D21000, 0xE3530E15, 0xE2833001, 0xBAFFFFFB,
|
||||
0xE59F2070, 0xE3A01001, 0xE5C21000, 0xE3A010C0,
|
||||
0xE59F207C, 0xE3A01001, 0xE5C21000, 0xE3A010C0,
|
||||
0xE5C21001, 0xE5D21001, 0xE3110080, 0x1AFFFFFC,
|
||||
0xE59F204C, 0xE3A03000, 0xEA000000, 0xE5D21000,
|
||||
0xE3530E15, 0xE2833001, 0xBAFFFFFB, 0xE59F2030,
|
||||
0xE59F2058, 0xE3A03000, 0xEA000000, 0xE5D21000,
|
||||
0xE3530E15, 0xE2833001, 0xBAFFFFFB, 0xE59F203C,
|
||||
0xE3A010C5, 0xE5C21000, 0xE5D21000, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE5D21000, 0xE2011010, 0xE1B01241,
|
||||
0x112FFF1E, 0xE2800001, 0xE3500008, 0xBAFFFFB1,
|
||||
0xEAFFFFFE, 0x04004501, 0x04004500,
|
||||
0x1A000002, 0xE2800001, 0xE3500008, 0xBAFFFFB1,
|
||||
0xE59F0010, 0xE3A01000, 0xE1C010B0, 0xEAFFFFFE,
|
||||
0x04004501, 0x04004500, 0x04000208,
|
||||
#else
|
||||
// 電源LEDが赤になる
|
||||
0xE3A00000, 0xEA00004B, 0xE59F3140, 0xE5D31000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F2134, 0xE3A0104A,
|
||||
0xE5C21000, 0xE3A010C2, 0xE5C31000, 0xE5D21001,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE5D21001, 0xE2011010,
|
||||
0xE1B01241, 0x0A00003A, 0xE59F2100, 0xE5D21000,
|
||||
0xE3110080, 0x1AFFFFFC, 0xE59F20F0, 0xE3A03000,
|
||||
0xEA000000, 0xE5D21000, 0xE3530E15, 0xE2833001,
|
||||
0xBAFFFFFB, 0xE59F20D8, 0xE3A01063, 0xE5C21000,
|
||||
0xE3A010C0, 0xE5C21001, 0xE5D21001, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE5D21001, 0xE2011010, 0xE1B01241,
|
||||
0x0A000023, 0xE59F20A4, 0xE5D21000, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE59F2094, 0xE3A03000, 0xEA000000,
|
||||
0xE5D21000, 0xE3530E15, 0xE2833001, 0xBAFFFFFB,
|
||||
0xE59F207C, 0xE3A01001, 0xE5C21000, 0xE3A010C0,
|
||||
0xE5C21001, 0xE5D21001, 0xE3110080, 0x1AFFFFFC,
|
||||
0xE59F2058, 0xE3A03000, 0xEA000000, 0xE5D21000,
|
||||
0xE3530E15, 0xE2833001, 0xBAFFFFFB, 0xE59F203C,
|
||||
0xE3A010C5, 0xE5C21000, 0xE5D21000, 0xE3110080,
|
||||
0x1AFFFFFC, 0xE5D21000, 0xE2011010, 0xE1B01241,
|
||||
0x1A000002, 0xE2800001, 0xE3500008, 0xBAFFFFB1,
|
||||
0xE59F0010, 0xE3A01000, 0xE1C010B0, 0xEAFFFFFE,
|
||||
0x04004501, 0x04004500, 0x04000208,
|
||||
#endif
|
||||
};
|
||||
|
||||
// ↓ パッチコードにジャンプするコード。処理が戻ってこなくていいのでPCの退避は行わない
|
||||
@ -270,9 +299,9 @@ BOOL BOOT_WaitStart( void )
|
||||
0xE51FF004, // ldr pc, [pc, #-4]
|
||||
0x02FFF800 // dcd 0x02fff800;
|
||||
};
|
||||
|
||||
|
||||
// カメラLED光らせる処理埋め込み
|
||||
MI_CpuCopy8( patch_core, (u32 *)MAJIKON_PATCH_ADDR, sizeof(patch_core));
|
||||
MI_CpuCopy8( patch_core_arm, (u32 *)MAJIKON_PATCH_ADDR, sizeof(patch_core_arm));
|
||||
|
||||
// カメラLED光らせる処理に飛ばす処理埋め込み
|
||||
MI_CpuCopy8( patch_jump, (u32 *)target_address, sizeof(patch_jump));
|
||||
|
||||
Loading…
Reference in New Issue
Block a user