mirror of
https://github.com/rvtr/twl_wrapsdk.git
synced 2025-10-31 06:11:10 -04:00
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@155 4ee2a332-4b2b-5046-8439-1ba90f034370
40 lines
852 B
C
40 lines
852 B
C
|
|
#include "arch.h"
|
|
|
|
|
|
/*---------------------------------------------------------
|
|
エントリヘッダからエントリのサイズを求める
|
|
--------------------------------------------------------*/
|
|
u32 AR_GetEntrySize( ArchHdr* ArHdr)
|
|
{
|
|
u16 i;
|
|
u32 digit = 1;
|
|
u32 size = 0;
|
|
|
|
/*----- 何桁あるか調べる -----*/
|
|
for( i=0; i<10; i++) {
|
|
if( ArHdr->ar_size[i] == 0x20) {
|
|
break;
|
|
}else{
|
|
digit *= 10;
|
|
}
|
|
}
|
|
digit /= 10;
|
|
/*----------------------------*/
|
|
|
|
/*----- サイズを算出する -----*/
|
|
for( i=0; i<10; i++) {
|
|
size += (*(((u8*)(ArHdr->ar_size))+i) - 0x30) * digit; //charをu8に変換
|
|
if( digit == 1) {
|
|
break;
|
|
}else{
|
|
digit /= 10;
|
|
}
|
|
}
|
|
/*----------------------------*/
|
|
|
|
return size;
|
|
}
|
|
|
|
|