スポンサーサイト

-- -- --
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

SysclibForKernel について

2011 02 02
sysmem.prx 仕様変更による影響で書いた
FW 6.20で消滅している SysclibForKernel 関数の詳細

FW 6.20以降のプラグインでこららの関数を使用する際は
リンクエラーになるので対処が必要です
( Makefile で USE_KERNEL_LIBC を有効にしている場合のみ )

スポンサーサイト

メモリースティックの情報取得

2010 10 24

MSの空き/最大/使用済み 容量取得

typedef struct
{
	unsigned long clusters_max;
	unsigned long clusters_free;
	int sector_max;
	int sector_size;
	int sector_count;
}sDev_Disk_Info;


bool MsDiskInfo( sDev_Disk_Info *info )
{ 
 	if( !info ) return false;
	
	return (sceIoDevctl("ms0:",0x02425818,&info,4,NULL,0) >= 0);
}

void printMsInfo()
{
	sDev_Disk_Info info;

	memset(&info,0,sizeof(info));

	if( MsDiskInfo(&info) )
	{
		u64 smax	= (info.clusters_max  * info.sector_count) * info.sector_size;
		u64 sfree	= (info.clusters_free * info.sector_count) * info.sector_size;
		u64 sused	= smax - sfree;
		
		printf("%-20s : %d\n","clusters_max"	,info.clusters_max);
		printf("%-20s : %d\n","clusters_free"	,info.clusters_free);
		printf("%-20s : %d\n","sector_max"		,info.sector_max);
		printf("%-20s : %d\n","sector_size"		,info.sector_size);
		printf("%-20s : %d\n","sector_count"	,info.sector_count);
		printf("\n");
		
		printf("Max  :%llu\n", smax);
		printf("Free :%llu\n", sfree);
		printf("Used :%llu\n", sused);
	}
}

こんな感じで取得出来ます、ユーザーモードでも大丈夫です 201010241037_001.png
 | HOME | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。