From 8f40e9bb554f94e954910614298d4bde759aaded Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Thu, 27 Mar 2008 08:10:38 +0000 Subject: [PATCH] =?UTF-8?q?mountInfo.c=E3=81=8C=E6=95=A3=E3=82=89=E3=81=B0?= =?UTF-8?q?=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E3=81=AE=E3=81=A7=E6=95=B4?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@982 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/libraries_sysmenu/sysmenu/ARM9/Makefile | 2 +- .../sysmenu/ARM9/src/mountInfo.c | 92 ------------------- .../sysmenu/common/src/mountInfo.c | 33 +++++++ 3 files changed, 34 insertions(+), 93 deletions(-) delete mode 100644 build/libraries_sysmenu/sysmenu/ARM9/src/mountInfo.c diff --git a/build/libraries_sysmenu/sysmenu/ARM9/Makefile b/build/libraries_sysmenu/sysmenu/ARM9/Makefile index 001f8c02..e9465a6b 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/Makefile +++ b/build/libraries_sysmenu/sysmenu/ARM9/Makefile @@ -31,13 +31,13 @@ REVISION_SRC = src/revision.c SRCS = sysmenu_lib.c \ util.c \ ninLogoFunc.c \ - mountInfo.c \ device.c \ keys.c \ title.c \ banner.c \ ../common/src/status.c \ ../common/src/pxi.c \ + ../common/src/mountInfo.c \ $(REVISION_SRC) diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/mountInfo.c b/build/libraries_sysmenu/sysmenu/ARM9/src/mountInfo.c deleted file mode 100644 index 361f44f2..00000000 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/mountInfo.c +++ /dev/null @@ -1,92 +0,0 @@ -/*---------------------------------------------------------------------------* - Project: TwlIPL - File: SYSM_lib.c - - Copyright 2007 Nintendo. All rights reserved. - - These coded instructions, statements, and computer programs contain - proprietary information of Nintendo of America Inc. and/or Nintendo - Company Ltd., and are protected by Federal copyright law. They may - not be disclosed to third parties or copied or duplicated in any form, - in whole or in part, without the prior written consent of Nintendo. - - $Date:: $ - $Rev$ - $Author$ - *---------------------------------------------------------------------------*/ - -#include -#include -#include -#include "internal_api.h" - -// define data----------------------------------------------------------------- -#define DEFAULT_MOUNT_LIST_NUM 7 -#define PRV_SAVE_DATA_MOUNT_INDEX 5 // プライベートセーブデータの s_defaultMountInfo リストインデックス -#define PUB_SAVE_DATA_MOUNT_INDEX 6 // パブリック セーブデータの s_defaultMountInfo リストインデックス - -#define TITLEID_APP_SYS_FLAG_SHIFT ( 32 + 0 ) -#define TITLEID_NOT_LAUNCH_FLAG_SHIFT ( 32 + 1 ) -#define TITLEID_MEDIA_NAND_FLAG_SHIFT ( 32 + 2 ) -#define TITLEID_APP_SYS_FLAG ( 1ULL << TITLEID_APP_SYS_FLAG_SHIFT ) -#define TITLEID_NOT_LAUNCH_FLAG ( 1ULL << TITLEID_NOT_LAUNCH_FLAG_SHIFT ) -#define TITLEID_MEDIA_NAND_FLAG ( 1ULL << TITLEID_MEDIA_NAND_FLAG_SHIFT ) - - -// extern data----------------------------------------------------------------- -// function's prototype-------------------------------------------------------- -static void SYSMi_SetBootSRLPath( LauncherBootType bootType, NAMTitleId titleID ); -static void SYSMi_SetMountInfoCore( LauncherBootType bootType, NAMTitleId titleID, OSMountInfo *pSrc ); -static void SYSMi_ModifySaveDataMount( LauncherBootType bootType, NAMTitleId titleID, OSMountInfo *pMountTgt ); -static void SYSMi_ModifySaveDataMountForLauncher( LauncherBootType bootType, NAMTitleId titleID, OSMountInfo *pMountTgt ); - -// global variable------------------------------------------------------------- -// static variable------------------------------------------------------------- -// const data------------------------------------------------------------------ - -// デフォルトマウント情報リスト -OSMountInfo s_defaultMountList[ DEFAULT_MOUNT_LIST_NUM ] ATTRIBUTE_ALIGN(4) = { -// drive device target pertitionIdx resource userPermission rsvA B archive path - { 'A', OS_MOUNT_DEVICE_SD, OS_MOUNT_TGT_ROOT, 0, OS_MOUNT_RSC_MMEM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "sdmc", "/" }, - { 'B', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_ROOT, 0, OS_MOUNT_RSC_WRAM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "nand", "/" }, // ユーザーアプリはこのアーカイブではWrite不可 - { 'C', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_ROOT, 1, OS_MOUNT_RSC_WRAM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "nand2", "/" }, // ユーザーアプリはこのアーカイブではWrite不可 - { 'D', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_DIR, 0, OS_MOUNT_RSC_MMEM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "shared2", "nand2:/shared2" }, - { 'E', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_DIR, 0, OS_MOUNT_RSC_MMEM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "photo", "nand2:/photo" }, - { 'F', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_FILE, 0, OS_MOUNT_RSC_MMEM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "dataPrv", NULL }, // NANDにセーブデータがないアプリの場合は、マウントされない。 - { 'G', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_FILE, 0, OS_MOUNT_RSC_MMEM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "dataPub", NULL }, // NANDにセーブデータがないアプリの場合は、マウントされない。 -}; - - -// ============================================================================ -// -// マウント情報セット -// -// ============================================================================ - -void SYSMi_SetBootSRLPathToWork2( TitleProperty *pBootTitle ) -{ - static char path[ FS_ENTRY_LONGNAME_MAX ]; - - switch( pBootTitle->flags.bootType ) - { - case LAUNCHER_BOOTTYPE_NAND: - if( NAM_GetTitleBootContentPathFast( path, pBootTitle->titleID ) != NAM_OK ) { - OS_TPrintf( "ERROR: BootContentPath Get failed.\n" ); - } - break; - case LAUNCHER_BOOTTYPE_TEMP: - STD_TSNPrintf( path, FS_ENTRY_LONGNAME_MAX, OS_TMP_APP_PATH, pBootTitle->titleID ); - break; - default: - path[ 0 ] = 0; -// STD_StrCpy( path, (const char*)"rom:" ); // ※SDK2623では、BootSRLPathを"rom:"としたらFSi_InitRomArchiveでNANDアプリ扱いされてアクセス例外で落ちる。 - break; - } - - if( path[ 0 ] ) { - STD_CopyLStringZeroFill( SYSMi_GetWork2()->bootContentPath, path, OS_MOUNT_PATH_LEN ); - }else { - MI_CpuClearFast( SYSMi_GetWork2()->bootContentPath, OS_MOUNT_PATH_LEN ); - } - OS_TPrintf( "boot SRL path : %s\n", SYSMi_GetWork2()->bootContentPath ); // ※OS_Init前で呼ぶとPrintfできないので注意。 -} diff --git a/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c b/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c index 2dc8eb84..2bef2ea7 100644 --- a/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c +++ b/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c @@ -20,6 +20,8 @@ #include #include "internal_api.h" +#ifndef SDK_ARM9 + // define data----------------------------------------------------------------- #define DEFAULT_MOUNT_LIST_NUM 9 #define NAND_MOUNT_INDEX 0 @@ -273,3 +275,34 @@ static void SYSMi_ModifySaveDataMountForLauncher( LauncherBootType bootType, NAM } } +#else //ARM9 + +void SYSMi_SetBootSRLPathToWork2( TitleProperty *pBootTitle ) +{ + static char path[ FS_ENTRY_LONGNAME_MAX ]; + + switch( pBootTitle->flags.bootType ) + { + case LAUNCHER_BOOTTYPE_NAND: + if( NAM_GetTitleBootContentPathFast( path, pBootTitle->titleID ) != NAM_OK ) { + OS_TPrintf( "ERROR: BootContentPath Get failed.\n" ); + } + break; + case LAUNCHER_BOOTTYPE_TEMP: + STD_TSNPrintf( path, FS_ENTRY_LONGNAME_MAX, OS_TMP_APP_PATH, pBootTitle->titleID ); + break; + default: + path[ 0 ] = 0; +// STD_StrCpy( path, (const char*)"rom:" ); // ※SDK2623では、BootSRLPathを"rom:"としたらFSi_InitRomArchiveでNANDアプリ扱いされてアクセス例外で落ちる。 + break; + } + + if( path[ 0 ] ) { + STD_CopyLStringZeroFill( SYSMi_GetWork2()->bootContentPath, path, OS_MOUNT_PATH_LEN ); + }else { + MI_CpuClearFast( SYSMi_GetWork2()->bootContentPath, OS_MOUNT_PATH_LEN ); + } + OS_TPrintf( "boot SRL path : %s\n", SYSMi_GetWork2()->bootContentPath ); // ※OS_Init前で呼ぶとPrintfできないので注意。 +} + +#endif //#ifndef SDK_ARM9 \ No newline at end of file