Document LoadMemberFrom[Open]NARC routines

This commit is contained in:
Rachel
2024-10-23 16:20:00 -07:00
parent d213734ab1
commit de256003a2
44 changed files with 168 additions and 172 deletions

View File

@@ -22,6 +22,12 @@ enum ImageMappingLayout {
IMAGE_MAPPING_LAYOUT_2D,
};
void *LoadCompressedMemberFromNARC(u32 narcID, u32 narcMemberIdx, u32 heapID);
void *LoadMemberFromNARC(u32 narcID, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd);
void *LoadMemberFromNARC_OutFileSize(u32 narcID, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd, u32 *fileSize);
void *LoadMemberFromOpenNARC(NARC *narc, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd);
void *LoadMemberFromOpenNARC_OutFileSize(NARC *narc, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd, u32 *fileSize);
u32 sub_02006E3C(u32 param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7);
void sub_02006E60(u32 param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7);
void sub_02006E84(u32 param0, u32 param1, int param2, u32 param3, u32 param4, u32 param5);
@@ -35,9 +41,6 @@ void *sub_02006F6C(u32 param0, u32 param1, BOOL param2, NNSG2dScreenData **param
void *sub_02006F88(u32 bankID, u32 memberIndex, NNSG2dPaletteData **param2, u32 param3);
void *sub_02006FA0(u32 param0, u32 param1, BOOL param2, NNSG2dCellDataBank **param3, u32 param4);
void *sub_02006FBC(u32 param0, u32 param1, BOOL param2, NNSG2dAnimBankData **param3, u32 param4);
void *sub_02006FD8(u32 param0, u32 param1, u32 param2);
void *sub_02006FE8(u32 param0, u32 param1, BOOL param2, u32 param3, int param4);
void *sub_02007068(u32 narcIndex, u32 fileIndex, BOOL param2, u32 heapID, int param4, u32 *fileSize);
u32 sub_020070E8(NARC *param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7);
void sub_0200710C(NARC *param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7);
void sub_02007130(NARC *param0, u32 param1, int param2, u32 param3, u32 param4, u32 param5);
@@ -49,7 +52,5 @@ void *sub_020071D0(NARC *param0, u32 param1, BOOL param2, NNSG2dScreenData **par
void *sub_020071EC(NARC *param0, u32 param1, NNSG2dPaletteData **param2, u32 param3);
void *sub_02007204(NARC *param0, u32 param1, BOOL param2, NNSG2dCellDataBank **param3, u32 param4);
void *sub_02007220(NARC *param0, u32 param1, BOOL param2, NNSG2dAnimBankData **param3, u32 param4);
void *sub_0200723C(NARC *param0, u32 param1, BOOL param2, u32 param3, int param4);
void *sub_02007250(NARC *param0, u32 param1, BOOL param2, u32 param3, int param4, u32 *param5);
#endif // POKEPLATINUM_GRAPHICS_H

View File

@@ -784,7 +784,7 @@ static void ov78_021D1604(ChooseStarter3DGraphics *param0, int param1, int param
static void ov78_021D1630(ChooseStarter3DGraphics *param0, int param1, int param2)
{
param0->unk_54 = sub_02006FE8(82, param1, 0, param2, 0);
param0->unk_54 = LoadMemberFromNARC(82, param1, 0, param2, 0);
param0->unk_58 = NNS_G3dGetMdlSet(param0->unk_54);
param0->unk_5C = NNS_G3dGetMdlByIdx(param0->unk_58, 0);
param0->unk_60 = NNS_G3dGetTex(param0->unk_54);
@@ -797,7 +797,7 @@ static void ov78_021D1630(ChooseStarter3DGraphics *param0, int param1, int param
static void ov78_021D1694(ChooseStarter3DGraphics *param0, int param1, int param2, NNSFndAllocator *param3)
{
param0->unk_64 = sub_02006FE8(82, param1, 0, param2, 0);
param0->unk_64 = LoadMemberFromNARC(82, param1, 0, param2, 0);
param0->unk_68 = NNS_G3dGetAnmByIdx(param0->unk_64, 0);
param0->unk_6C = NNS_G3dAllocAnmObj(param3, param0->unk_68, param0->unk_5C);

View File

@@ -16,13 +16,13 @@ static void Easy3DAnim_LoadInternal(Easy3DAnim *anim, const Easy3DModel *model,
void Easy3DModel_Load(Easy3DModel *model, u32 narcIndex, u32 memberIndex, u32 heapID)
{
model->data = sub_02006FE8(narcIndex, memberIndex, FALSE, heapID, 0);
model->data = LoadMemberFromNARC(narcIndex, memberIndex, FALSE, heapID, 0);
Easy3DModel_LoadInternal(model);
}
void Easy3DModel_LoadFrom(Easy3DModel *model, NARC *narc, u32 memberIndex, u32 heapID)
{
model->data = sub_0200723C(narc, memberIndex, FALSE, heapID, 0);
model->data = LoadMemberFromOpenNARC(narc, memberIndex, FALSE, heapID, 0);
Easy3DModel_LoadInternal(model);
}
@@ -59,7 +59,7 @@ void Easy3DModel_Release(Easy3DModel *model)
void Easy3DAnim_LoadFrom(Easy3DAnim *anim, const Easy3DModel *model, NARC *narc, u32 memberIndex, u32 heapID, NNSFndAllocator *allocator)
{
void *data = sub_0200723C(narc, memberIndex, FALSE, heapID, 0);
void *data = LoadMemberFromOpenNARC(narc, memberIndex, FALSE, heapID, 0);
Easy3DAnim_LoadInternal(anim, model, data, allocator);
anim->dataBorrowed = FALSE;

View File

@@ -22,13 +22,13 @@ static void *GetAnimBank(void *nanrBuffer, NNSG2dAnimBankData **outAnimBank);
u32 sub_02006E3C(u32 param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7)
{
void *v0 = sub_02006FE8(param0, param1, param6, param7, 0);
void *v0 = LoadMemberFromNARC(param0, param1, param6, param7, 0);
return LoadTilesToBgLayer(v0, param2, param3, param4, param5);
}
void sub_02006E60(u32 param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7)
{
void *v0 = sub_02006FE8(param0, param1, param6, param7, 1);
void *v0 = LoadMemberFromNARC(param0, param1, param6, param7, 1);
LoadTilemapToBgLayer(v0, param2, param3, param4, param5);
}
@@ -39,50 +39,50 @@ void sub_02006E84(u32 param0, u32 param1, int param2, u32 param3, u32 param4, u3
void sub_02006E9C(u32 param0, u32 param1, int param2, u32 param3, u32 param4, u32 param5, u32 param6)
{
void *v0 = sub_02006FE8(param0, param1, 0, param6, 1);
void *v0 = LoadMemberFromNARC(param0, param1, 0, param6, 1);
LoadPaletteWithSrcOffset(v0, param2, param3, param4, param5);
}
u32 sub_02006EC0(u32 param0, u32 param1, int param2, u32 param3, u32 param4, BOOL param5, u32 param6)
{
void *v0 = sub_02006FE8(param0, param1, param5, param6, 1);
void *v0 = LoadMemberFromNARC(param0, param1, param5, param6, 1);
return LoadObjectTiles(v0, param2, param3, param4);
}
void sub_02006EE0(u32 param0, u32 param1, NNS_G2D_VRAM_TYPE param2, u32 param3, u32 param4, NNSG2dImagePaletteProxy *param5)
{
void *v0 = sub_02006FE8(param0, param1, 0, param4, 1);
void *v0 = LoadMemberFromNARC(param0, param1, 0, param4, 1);
LoadPartialPalette(v0, param2, param3, param5);
}
u32 sub_02006F00(u32 param0, u32 param1, BOOL param2, int param3, u32 param4, NNS_G2D_VRAM_TYPE param5, u32 param6, u32 param7, NNSG2dImageProxy *param8)
{
void *v0 = sub_02006FE8(param0, param1, param2, param7, 1);
void *v0 = LoadMemberFromNARC(param0, param1, param2, param7, 1);
return LoadImageMapping(v0, param3, param4, param5, param6, param8);
}
void sub_02006F28(u32 param0, u32 param1, BOOL param2, int param3, u32 param4, NNS_G2D_VRAM_TYPE param5, u32 param6, u32 param7, NNSG2dImageProxy *param8)
{
void *v0 = sub_02006FE8(param0, param1, param2, param7, 1);
void *v0 = LoadMemberFromNARC(param0, param1, param2, param7, 1);
LoadImageMappingAndSetVramMode(v0, param3, param4, param5, param6, param8);
}
void *sub_02006F50(u32 param0, u32 param1, BOOL param2, NNSG2dCharacterData **param3, u32 param4)
{
void *v0 = sub_02006FE8(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromNARC(param0, param1, param2, param4, 0);
return GetCharacterData(v0, param3);
}
void *sub_02006F6C(u32 param0, u32 param1, BOOL param2, NNSG2dScreenData **param3, u32 param4)
{
void *v0 = sub_02006FE8(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromNARC(param0, param1, param2, param4, 0);
return GetScreenData(v0, param3);
}
void *sub_02006F88(u32 param0, u32 param1, NNSG2dPaletteData **param2, u32 param3)
{
void *v0 = sub_02006FE8(param0, param1, 0, param3, 0);
void *v0 = LoadMemberFromNARC(param0, param1, 0, param3, 0);
return GetPaletteData(v0, param2);
}
@@ -90,102 +90,100 @@ void *sub_02006FA0(u32 param0, u32 param1, BOOL param2, NNSG2dCellDataBank **par
{
void *v0;
v0 = sub_02006FE8(param0, param1, param2, param4, 0);
v0 = LoadMemberFromNARC(param0, param1, param2, param4, 0);
return GetCellBank(v0, param3);
}
void *sub_02006FBC(u32 param0, u32 param1, BOOL param2, NNSG2dAnimBankData **param3, u32 param4)
{
void *v0 = sub_02006FE8(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromNARC(param0, param1, param2, param4, 0);
return GetAnimBank(v0, param3);
}
void *sub_02006FD8(u32 param0, u32 param1, u32 param2)
void *LoadCompressedMemberFromNARC(u32 narcID, u32 narcMemberIdx, u32 heapID)
{
return sub_02006FE8(param0, param1, 1, param2, 0);
return LoadMemberFromNARC(narcID, narcMemberIdx, TRUE, heapID, FALSE);
}
void *sub_02006FE8(u32 param0, u32 param1, BOOL param2, u32 param3, int param4)
void *LoadMemberFromNARC(u32 narcID, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd)
{
void *v0;
void *data;
if (param2 || (param4 == 1)) {
v0 = Heap_AllocFromHeapAtEnd(param3, NARC_GetMemberSizeByIndexPair(param0, param1));
if (compressed || allocAtEnd == TRUE) {
data = Heap_AllocFromHeapAtEnd(heapID, NARC_GetMemberSizeByIndexPair(narcID, narcMemberIdx));
} else {
v0 = Heap_AllocFromHeap(param3, NARC_GetMemberSizeByIndexPair(param0, param1));
data = Heap_AllocFromHeap(heapID, NARC_GetMemberSizeByIndexPair(narcID, narcMemberIdx));
}
if (v0 != NULL) {
NARC_ReadWholeMemberByIndexPair(v0, param0, param1);
if (data != NULL) {
NARC_ReadWholeMemberByIndexPair(data, narcID, narcMemberIdx);
if (param2) {
void *v1;
if (compressed) {
void *uncompBuf;
if (param4 == 0) {
v1 = Heap_AllocFromHeap(param3, MI_GetUncompressedSize(v0));
if (allocAtEnd == FALSE) {
uncompBuf = Heap_AllocFromHeap(heapID, MI_GetUncompressedSize(data));
} else {
v1 = Heap_AllocFromHeapAtEnd(param3, MI_GetUncompressedSize(v0));
uncompBuf = Heap_AllocFromHeapAtEnd(heapID, MI_GetUncompressedSize(data));
}
if (v1) {
MI_UncompressLZ8(v0, v1);
Heap_FreeToHeap(v0);
if (uncompBuf) {
MI_UncompressLZ8(data, uncompBuf);
Heap_FreeToHeap(data);
}
v0 = v1;
data = uncompBuf;
}
}
return v0;
return data;
}
void *sub_02007068(u32 narcIndex, u32 fileIndex, BOOL param2, u32 heapID, int param4, u32 *fileSize)
void *LoadMemberFromNARC_OutFileSize(u32 narcID, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd, u32 *fileSize)
{
void *v0;
void *data;
*fileSize = NARC_GetMemberSizeByIndexPair(narcID, narcMemberIdx);
*fileSize = NARC_GetMemberSizeByIndexPair(narcIndex, fileIndex);
if (param2 || (param4 == 1)) {
v0 = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
if (compressed || allocAtEnd == TRUE) {
data = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
} else {
v0 = Heap_AllocFromHeap(heapID, *fileSize);
data = Heap_AllocFromHeap(heapID, *fileSize);
}
if (v0 != NULL) {
NARC_ReadWholeMemberByIndexPair(v0, narcIndex, fileIndex);
if (data != NULL) {
NARC_ReadWholeMemberByIndexPair(data, narcID, narcMemberIdx);
if (param2) {
void *v1;
if (compressed) {
*fileSize = MI_GetUncompressedSize(data);
*fileSize = MI_GetUncompressedSize(v0);
if (param4 == 0) {
v1 = Heap_AllocFromHeap(heapID, *fileSize);
void *uncompBuf;
if (allocAtEnd == FALSE) {
uncompBuf = Heap_AllocFromHeap(heapID, *fileSize);
} else {
v1 = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
uncompBuf = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
}
if (v1) {
MI_UncompressLZ8(v0, v1);
Heap_FreeToHeap(v0);
if (uncompBuf) {
MI_UncompressLZ8(data, uncompBuf);
Heap_FreeToHeap(data);
}
v0 = v1;
data = uncompBuf;
}
}
return v0;
return data;
}
u32 sub_020070E8(NARC *param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7)
{
void *v0 = sub_0200723C(param0, param1, param6, param7, 0);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param6, param7, 0);
return LoadTilesToBgLayer(v0, param2, param3, param4, param5);
}
void sub_0200710C(NARC *param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7)
{
void *v0 = sub_0200723C(param0, param1, param6, param7, 1);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param6, param7, 1);
LoadTilemapToBgLayer(v0, param2, param3, param4, param5);
}
@@ -196,37 +194,37 @@ void sub_02007130(NARC *param0, u32 param1, int param2, u32 param3, u32 param4,
void sub_02007148(NARC *param0, u32 param1, int param2, u32 param3, u32 param4, u32 param5, u32 param6)
{
void *v0 = sub_0200723C(param0, param1, 0, param6, 1);
void *v0 = LoadMemberFromOpenNARC(param0, param1, 0, param6, 1);
LoadPaletteWithSrcOffset(v0, param2, param3, param4, param5);
}
void sub_0200716C(NARC *param0, u32 param1, NNS_G2D_VRAM_TYPE param2, u32 param3, u32 param4, NNSG2dImagePaletteProxy *param5)
{
void *v0 = sub_0200723C(param0, param1, 0, param4, 1);
void *v0 = LoadMemberFromOpenNARC(param0, param1, 0, param4, 1);
LoadPartialPalette(v0, param2, param3, param5);
}
u32 sub_0200718C(NARC *param0, u32 param1, BOOL param2, int param3, u32 param4, NNS_G2D_VRAM_TYPE param5, u32 param6, u32 param7, NNSG2dImageProxy *param8)
{
void *v0 = sub_0200723C(param0, param1, param2, param7, 1);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param2, param7, 1);
return LoadImageMapping(v0, param3, param4, param5, param6, param8);
}
void *sub_020071B4(NARC *param0, u32 param1, BOOL param2, NNSG2dCharacterData **param3, u32 param4)
{
void *v0 = sub_0200723C(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param2, param4, 0);
return GetCharacterData(v0, param3);
}
void *sub_020071D0(NARC *param0, u32 param1, BOOL param2, NNSG2dScreenData **param3, u32 param4)
{
void *v0 = sub_0200723C(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param2, param4, 0);
return GetScreenData(v0, param3);
}
void *sub_020071EC(NARC *param0, u32 param1, NNSG2dPaletteData **param2, u32 param3)
{
void *v0 = sub_0200723C(param0, param1, 0, param3, 0);
void *v0 = LoadMemberFromOpenNARC(param0, param1, 0, param3, 0);
return GetPaletteData(v0, param2);
}
@@ -234,59 +232,56 @@ void *sub_02007204(NARC *param0, u32 param1, BOOL param2, NNSG2dCellDataBank **p
{
void *v0;
v0 = sub_0200723C(param0, param1, param2, param4, 0);
v0 = LoadMemberFromOpenNARC(param0, param1, param2, param4, 0);
return GetCellBank(v0, param3);
}
void *sub_02007220(NARC *param0, u32 param1, BOOL param2, NNSG2dAnimBankData **param3, u32 param4)
{
void *v0 = sub_0200723C(param0, param1, param2, param4, 0);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param2, param4, 0);
return GetAnimBank(v0, param3);
}
void *sub_0200723C(NARC *narc, u32 NarcFileIndex, BOOL param2, u32 param3, int param4)
void *LoadMemberFromOpenNARC(NARC *narc, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd)
{
u32 v0;
return sub_02007250(narc, NarcFileIndex, param2, param3, param4, &v0);
u32 tmp;
return LoadMemberFromOpenNARC_OutFileSize(narc, narcMemberIdx, compressed, heapID, allocAtEnd, &tmp);
}
void *sub_02007250(NARC *narc, u32 NarcFileIndex, BOOL param2, u32 param3, int param4, u32 *param5)
void *LoadMemberFromOpenNARC_OutFileSize(NARC *narc, u32 narcMemberIdx, BOOL compressed, u32 heapID, BOOL allocAtEnd, u32 *fileSize)
{
void *v0;
void *data;
*fileSize = NARC_GetMemberSize(narc, narcMemberIdx);
*param5 = NARC_GetMemberSize(narc, NarcFileIndex);
if (param2 || (param4 == 1)) {
v0 = Heap_AllocFromHeapAtEnd(param3, *param5);
if (compressed || allocAtEnd == TRUE) {
data = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
} else {
v0 = Heap_AllocFromHeap(param3, *param5);
data = Heap_AllocFromHeap(heapID, *fileSize);
}
if (v0 != NULL) {
NARC_ReadWholeMember(narc, NarcFileIndex, v0);
if (data != NULL) {
NARC_ReadWholeMember(narc, narcMemberIdx, data);
if (param2) {
void *v1;
if (compressed) {
*fileSize = MI_GetUncompressedSize(data);
*param5 = MI_GetUncompressedSize(v0);
if (param4 == 0) {
v1 = Heap_AllocFromHeap(param3, *param5);
void *uncompBuf;
if (allocAtEnd == FALSE) {
uncompBuf = Heap_AllocFromHeap(heapID, *fileSize);
} else {
v1 = Heap_AllocFromHeapAtEnd(param3, *param5);
uncompBuf = Heap_AllocFromHeapAtEnd(heapID, *fileSize);
}
if (v1) {
MI_UncompressLZ8(v0, v1);
Heap_FreeToHeap(v0);
if (uncompBuf) {
MI_UncompressLZ8(data, uncompBuf);
Heap_FreeToHeap(data);
}
v0 = v1;
data = uncompBuf;
}
}
return v0;
return data;
}
static u32 LoadTilesToBgLayer(void *ncgrBuffer, BgConfig *bgConfig, u32 bgLayer, u32 offset, u32 size)

View File

@@ -1443,7 +1443,7 @@ void ov5_021DF0CC(NARC *param0, u32 param1)
v1 = sub_02014784(Unk_ov5_02202120->unk_08);
Camera_SetClipping(FX32_ONE, FX32_ONE * 900, v1);
v0 = sub_0200723C(param0, param1, 0, 4, 0);
v0 = LoadMemberFromOpenNARC(param0, param1, 0, 4, 0);
sub_020144CC(Unk_ov5_02202120->unk_08, v0, 0 | 0, 0);
}

View File

@@ -147,7 +147,7 @@ static u32 ov5_021D53D4(u32 param0, UnkStruct_ov5_021D52F4 **param1)
char v7[256];
UnkStruct_ov5_021D52F4 *v8;
v4 = sub_02006FE8(176, param0, 0, 4, 0);
v4 = LoadMemberFromNARC(176, param0, 0, 4, 0);
v3 = v4;
v2 = 0;

View File

@@ -813,7 +813,7 @@ static void ov5_021D6290(SpriteResourceTable *param0, int param1, int param2)
void *v1;
v0 = SpriteResourceTable_GetArrayElement(param0, param1);
v1 = sub_02006FE8(65, param2, 0, 4, 1);
v1 = LoadMemberFromNARC(65, param2, 0, 4, 1);
SpriteResourceTable_LoadFromBinary(v1, v0, 4);
Heap_FreeToHeap(v1);

View File

@@ -200,7 +200,7 @@ static u16 *ov5_021F65FC(int heapID, int fileIndex, int *pokedexLength)
u32 pokedexSize;
u16 *pokedex;
pokedex = sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, fileIndex, 0, heapID, 0, &pokedexSize);
pokedex = LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, fileIndex, 0, heapID, 0, &pokedexSize);
*pokedexLength = pokedexSize / (sizeof(u16));
return pokedex;

View File

@@ -67,7 +67,7 @@ UnkStruct_ov6_02246204 *ov6_02246184(u32 param0, u32 param1)
v0 = Heap_AllocFromHeap(param0, sizeof(UnkStruct_ov6_02246204));
memset(v0, 0, sizeof(UnkStruct_ov6_02246204));
v0->unk_00 = sub_02006FE8(115, param1, 0, param0, 0);
v0->unk_00 = LoadMemberFromNARC(115, param1, 0, param0, 0);
v0->unk_10 = param0;
v0->unk_0C = param1;
v0->unk_04 = Pokemon_New(param0);

View File

@@ -619,7 +619,7 @@ static void ov6_022487F8(UnkStruct_ov5_021D1BEC *param0, FieldSystem *fieldSyste
Easy3DModel_LoadFrom(&v0->unk_00, v2, 8, 4);
for (v1 = 0; v1 < 4; v1++) {
v0->unk_CD0[v1] = sub_0200723C(v2, 4 + v1, 0, 4, 0);
v0->unk_CD0[v1] = LoadMemberFromOpenNARC(v2, 4 + v1, 0, 4, 0);
}
for (v1 = 0; v1 < 16; v1++) {

View File

@@ -28,5 +28,5 @@ u32 ov17_02252A70(const UnkStruct_02029C88 *param0, const u8 *param1)
u8 *ov17_02252A9C(u32 param0, u32 param1)
{
return sub_02006FE8(90, 3 + param1, 0, param0, 0);
return LoadMemberFromNARC(90, 3 + param1, 0, param0, 0);
}

View File

@@ -200,7 +200,7 @@ static void ov19_021D7C58(UnkStruct_ov19_021D8318 *param0, const UnkStruct_ov19_
{
void *v0;
v0 = sub_02006FE8(18, Unk_ov19_021E0178[param1->unk_01].unk_01, 1, 10, 1);
v0 = LoadMemberFromNARC(18, Unk_ov19_021E0178[param1->unk_01].unk_01, 1, 10, 1);
if (v0 != NULL) {
NNSG2dCharacterData *v1;
@@ -236,7 +236,7 @@ static void ov19_021D7D00(UnkStruct_ov19_021D8318 *param0, const UnkStruct_ov19_
{
void *v0;
v0 = sub_02006FE8(18, Unk_ov19_021E0178[param1->unk_01].unk_00, 1, 10, 1);
v0 = LoadMemberFromNARC(18, Unk_ov19_021E0178[param1->unk_01].unk_00, 1, 10, 1);
if (v0) {
u16 *v1;

View File

@@ -704,7 +704,7 @@ static u16 *Pokedex_Sorted_Array(int heapID, int pokedexSort, int *pokedexLength
GF_ASSERT(47 > pokedexSort);
pokedexDataNarcIndex = Pokedex_Data_NARC_Index();
pokedexSortedArray = sub_02007068(pokedexDataNarcIndex, 11 + pokedexSort, 0, heapID, 0, &pokedexSize);
pokedexSortedArray = LoadMemberFromNARC_OutFileSize(pokedexDataNarcIndex, 11 + pokedexSort, 0, heapID, 0, &pokedexSize);
*pokedexLength = pokedexSize / (sizeof(u16));
return pokedexSortedArray;

View File

@@ -50,7 +50,7 @@ void ov21_021D57B4(UnkStruct_ov21_021D5844 *param0, int param1, int param2, int
break;
}
param0->unk_00 = (int *)sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, v0 + param1, 0, param3, 0, &v1);
param0->unk_00 = (int *)LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, v0 + param1, 0, param3, 0, &v1);
param0->unk_04 = v1 / sizeof(int);
}
@@ -70,7 +70,7 @@ UnkStruct_ov21_021D5868 *ov21_021D5868(int param0, int *param1)
UnkStruct_ov21_021D5868 *v0;
u32 v1;
v0 = (UnkStruct_ov21_021D5868 *)sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, 0, 0, param0, 0, &v1);
v0 = (UnkStruct_ov21_021D5868 *)LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, 0, 0, param0, 0, &v1);
if (param1) {
*param1 = v1 / sizeof(UnkStruct_ov21_021D5868);
@@ -84,7 +84,7 @@ UnkStruct_ov21_021D5890 *ov21_021D5890(int param0, int *param1)
UnkStruct_ov21_021D5890 *v0;
u32 v1;
v0 = (UnkStruct_ov21_021D5890 *)sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, 2, 0, param0, 0, &v1);
v0 = (UnkStruct_ov21_021D5890 *)LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_ENC_PLATINUM, 2, 0, param0, 0, &v1);
if (param1) {
*param1 = v1 / sizeof(UnkStruct_ov21_021D5890);

View File

@@ -745,7 +745,7 @@ static void ov22_02255ACC(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
void *v2;
for (v0 = 0; v0 < 100; v0++) {
v2 = sub_0200723C(param0->unk_5C, v0 + 1, 0, 14, 1);
v2 = LoadMemberFromOpenNARC(param0->unk_5C, v0 + 1, 0, 14, 1);
GF_ASSERT(v2);
@@ -755,7 +755,7 @@ static void ov22_02255ACC(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
param1->unk_00[v1].unk_00 = param0->unk_00;
}
v2 = sub_0200723C(param0->unk_5C, 0, 0, 14, 1);
v2 = LoadMemberFromOpenNARC(param0->unk_5C, 0, 0, 14, 1);
ResourceCollection_Add(param1->unk_14, v2, 0);
NNS_G2dGetUnpackedPaletteData(v2, &param1->unk_08[0].unk_04);
@@ -771,14 +771,14 @@ static void ov22_02255B50(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
int v2;
for (v0 = 0; v0 < 18; v0++) {
v1 = sub_0200723C(param0->unk_5C, v0 + 206, 0, 14, 1);
v1 = LoadMemberFromOpenNARC(param0->unk_5C, v0 + 206, 0, 14, 1);
v2 = v0 + 100;
param1->unk_00[v2].unk_04 = ov22_02255340(param0, v1, v2);
param1->unk_00[v2].unk_00 = param0->unk_00;
v2 = v0 + 1;
v1 = sub_0200723C(param0->unk_5C, (v0) * 4 + 134 + 1, 0, 14, 1);
v1 = LoadMemberFromOpenNARC(param0->unk_5C, (v0) * 4 + 134 + 1, 0, 14, 1);
ResourceCollection_Add(param1->unk_14, v1, v2);
NNS_G2dGetUnpackedPaletteData(v1, &param1->unk_08[v2].unk_04);
@@ -791,7 +791,7 @@ static void ov22_02255B50(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
static void ov22_02255BF4(UnkStruct_ov22_0225A0E4 *param0, int param1)
{
param0->unk_30 = sub_0200723C(param0->unk_5C, 235, 0, param1, 0);
param0->unk_30 = LoadMemberFromOpenNARC(param0->unk_5C, 235, 0, param1, 0);
}
static void ov22_02255C14(UnkStruct_ov22_0225A0E4 *param0)

View File

@@ -27,7 +27,7 @@ void ov22_02259098(UnkStruct_ov22_0225A0E4 *param0, ArchivedSprite *param1)
void *v0;
NNSG2dCharacterData *v1;
v0 = sub_02006FE8(param1->archive, param1->character, 0, 14, 0);
v0 = LoadMemberFromNARC(param1->archive, param1->character, 0, 14, 0);
v1 = ov22_02255340(param0, v0, (100 + 18));
sub_020093A0((u8 *)v1->pRawData, param1->archive);
@@ -66,7 +66,7 @@ void ov22_022590D4(UnkStruct_020298D8 *param0, UnkStruct_02007768 *param1, Pokem
void *v4;
NNSG2dCharacterData *v5;
v4 = sub_02006FE8(param3->archive, param3->character, 0, param4, 0);
v4 = LoadMemberFromNARC(param3->archive, param3->character, 0, param4, 0);
NNS_G2dGetUnpackedCharacterData(v4, &v5);
sub_020093A0((u8 *)v5->pRawData, param3->archive);

View File

@@ -464,7 +464,7 @@ static void ov22_0225B5A8(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
v1 = v3;
if (ResourceCollection_IsIDUnused(param1->unk_10, v1) == 1) {
v2 = sub_0200723C(param0->unk_5C, v3 + 1, 0, param3, 1);
v2 = LoadMemberFromOpenNARC(param0->unk_5C, v3 + 1, 0, param3, 1);
ResourceCollection_Add(param1->unk_10, v2, v1);
NNS_G2dGetUnpackedCharacterData(v2, &param1->unk_00[v1].unk_04);
@@ -473,7 +473,7 @@ static void ov22_0225B5A8(UnkStruct_ov22_0225A0E4 *param0, UnkStruct_ov22_02255C
}
}
v2 = sub_0200723C(param0->unk_5C, 0, 0, param3, 1);
v2 = LoadMemberFromOpenNARC(param0->unk_5C, 0, 0, param3, 1);
ResourceCollection_Add(param1->unk_14, v2, 0);
NNS_G2dGetUnpackedPaletteData(v2, &param1->unk_08[0].unk_04);

View File

@@ -304,8 +304,8 @@ void ov25_02255950(UnkStruct_ov25_022558C4 *param0, u16 param1)
BOOL ov25_02255958(UnkStruct_ov25_02255958 *param0, u32 param1, u32 param2, u32 param3, int param4)
{
param0->unk_10 = param4;
param0->unk_00 = sub_02006FD8(param1, param2, param4);
param0->unk_04 = sub_02006FD8(param1, param3, param4);
param0->unk_00 = LoadCompressedMemberFromNARC(param1, param2, param4);
param0->unk_04 = LoadCompressedMemberFromNARC(param1, param3, param4);
if ((param0->unk_00 != NULL) && (param0->unk_04 != NULL)) {
if (!NNS_G2dGetUnpackedCellBank(param0->unk_00, &(param0->unk_08))) {

View File

@@ -192,7 +192,7 @@ u16 *ov62_Pokedex_Alphabetical(int heapID, int unused, int *pokedexLength)
u32 pokedexSize;
u16 *pokedexAlphabetical;
pokedexAlphabetical = sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 13, 0, heapID, 0, &pokedexSize);
pokedexAlphabetical = LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 13, 0, heapID, 0, &pokedexSize);
*pokedexLength = pokedexSize / sizeof(u16);
return pokedexAlphabetical;

View File

@@ -184,7 +184,7 @@ UnkStruct_ov66_02234548 *ov66_022343A8(u32 param0, u32 param1, u32 param2, u32 p
v4 = NARC_ctor(NARC_INDEX_GRAPHIC__WIFI_LOBBY_OTHER, param2);
{
v5 = sub_0200723C(v4, 127, 0, param3, 0);
v5 = LoadMemberFromOpenNARC(v4, 127, 0, param3, 0);
ResourceCollection_Add(v0->unk_00, v5, 127);
ov66_02231668(v5);
@@ -200,7 +200,7 @@ UnkStruct_ov66_02234548 *ov66_022343A8(u32 param0, u32 param1, u32 param2, u32 p
{
for (v6 = 0; v6 < 2; v6++) {
v5 = sub_0200723C(v3, Unk_ov66_02258B28[v6], 0, param3, 0);
v5 = LoadMemberFromOpenNARC(v3, Unk_ov66_02258B28[v6], 0, param3, 0);
ResourceCollection_Add(v0->unk_04, v5, Unk_ov66_02258B28[v6]);
}
}
@@ -227,7 +227,7 @@ UnkStruct_ov66_02234548 *ov66_022343A8(u32 param0, u32 param1, u32 param2, u32 p
v11 = 0;
}
v5 = sub_0200723C(v3, Unk_ov66_02258B38[v6].unk_02_0, 0, param3, 0);
v5 = LoadMemberFromOpenNARC(v3, Unk_ov66_02258B38[v6].unk_02_0, 0, param3, 0);
v9 = TextureResourceManager_AddTexture(v0->unk_08, v5, Unk_ov66_02258B38[v6].unk_02_0, v11, param3);
if (v11 == 1) {

View File

@@ -59,7 +59,7 @@ static void ov66_02234F2C(NARC *param0, u32 param1, u16 param2, u8 param3, fx32
u32 v3;
int v4;
v1 = sub_02007250(param0, 18, 0, param1, 0, &v3);
v1 = LoadMemberFromOpenNARC_OutFileSize(param0, 18, 0, param1, 0, &v3);
v2 = (UnkStruct_ov92_021D1530 *)v1;
v4 = v3 / 6;
@@ -81,7 +81,7 @@ static void ov66_02234F2C(NARC *param0, u32 param1, u16 param2, u8 param3, fx32
v9 = sub_020996D4(param2);
v8 = sub_02099764(v9);
v5 = sub_02007250(param0, v8, 0, param1, 0, &v7);
v5 = LoadMemberFromOpenNARC_OutFileSize(param0, v8, 0, param1, 0, &v7);
v6 = (UnkStruct_ov69_0225C980 *)v5;
v10 = v7 / 4;

View File

@@ -806,7 +806,7 @@ static void ov69_0225C980(UnkStruct_ov69_0225CA7C *param0, const UnkStruct_ov66_
u32 v3;
int v4, v5;
v1 = sub_02007250(v0, 18, 0, param2, 0, &v3);
v1 = LoadMemberFromOpenNARC_OutFileSize(v0, 18, 0, param2, 0, &v3);
v2 = (UnkStruct_ov92_021D1530 *)v1;
v5 = v3 / 6;
@@ -834,7 +834,7 @@ static void ov69_0225C980(UnkStruct_ov69_0225CA7C *param0, const UnkStruct_ov66_
while (v12 < v11) {
v9 = sub_02099764(v12);
v6 = sub_02007250(v0, v9, 0, param2, 0, &v8);
v6 = LoadMemberFromOpenNARC_OutFileSize(v0, v9, 0, param2, 0, &v8);
v7 = (UnkStruct_ov69_0225C980 *)v6;
v13 = v8 / 4;

View File

@@ -35,7 +35,7 @@ void ov70_0225C730(void **param0, NARC *param1, u32 param2, u32 param3)
NNSGfdPlttKey v4;
NNSG3dResTex *v5;
v1 = sub_0200723C(param1, param2, 0, param3, 1);
v1 = LoadMemberFromOpenNARC(param1, param2, 0, param3, 1);
{
v5 = NNS_G3dGetTex(v1);

View File

@@ -21,7 +21,7 @@ UnkStruct_ov70_0225C894 *ov70_0225C858(u32 param0)
v0 = Heap_AllocFromHeap(param0, sizeof(UnkStruct_ov70_0225C894));
v0->unk_00 = ov63_0222BCE8(35, 42, param0);
v1 = sub_02006FE8(174, 0, 0, param0, 1);
v1 = LoadMemberFromNARC(174, 0, 0, param0, 1);
ov63_0222BD50(v0->unk_00, v1);
Heap_FreeToHeap(v1);

View File

@@ -2638,7 +2638,7 @@ static void ov70_0225FDA0(UnkStruct_ov70_0225F350 *param0, UnkStruct_ov70_0225FA
if (v0 != 0) {
v2 = ov66_022316E8(v0);
v3 = sub_02006FE8(sub_0207C944(), sub_0207C908(v2), 1, param3, 1);
v3 = LoadMemberFromNARC(sub_0207C944(), sub_0207C908(v2), 1, param3, 1);
NNS_G2dGetUnpackedCharacterData(v3, &v4);

View File

@@ -564,7 +564,7 @@ static UnkStruct_ov70_02261418 *ov70_022613F4(int param0, int param1, u32 param2
v1 = (param1 * 5) + param0;
GF_ASSERT(v1 < (5 * 5));
v0 = sub_02006FE8(174, 1 + v1, 0, param2, 1);
v0 = LoadMemberFromNARC(174, 1 + v1, 0, param2, 1);
return v0;
}
@@ -787,7 +787,7 @@ static void ov70_0226174C(UnkStruct_ov70_022618C8 *param0, NARC *param1, NNSFndA
{
for (v0 = 0; v0 < 2; v0++) {
param0->unk_00[v0].data = sub_0200723C(param1, param3->unk_120[v0], 0, param4, 0);
param0->unk_00[v0].data = LoadMemberFromOpenNARC(param1, param3->unk_120[v0], 0, param4, 0);
param0->unk_00[v0].set = NNS_G3dGetMdlSet(param0->unk_00[v0].data);
param0->unk_00[v0].model = NNS_G3dGetMdlByIdx(param0->unk_00[v0].set, 0);
param0->unk_00[v0].texture = NNS_G3dGetTex(param0->unk_20[v0][0]);
@@ -954,7 +954,7 @@ static void ov70_02261B24(UnkStruct_ov70_02261BB4 *param0, NARC *param1, NNSFndA
for (v1 = 0; v1 < 3; v1++) {
if (param3->unk_48[v0][v1] != param3->unk_00[v0]) {
param0->unk_120[v0][v1] = sub_0200723C(param1, param3->unk_48[v0][v1], 0, param4, 0);
param0->unk_120[v0][v1] = LoadMemberFromOpenNARC(param1, param3->unk_48[v0][v1], 0, param4, 0);
} else {
param0->unk_120[v0][v1] = NULL;
}

View File

@@ -795,7 +795,7 @@ static void ov70_02269540(UnkStruct_ov70_02269204 *param0, NARC *param1, u32 par
int v0;
for (v0 = 0; v0 < 15; v0++) {
param0->unk_10550[v0].data = sub_0200723C(param1, 129 + v0, 0, param2, 0);
param0->unk_10550[v0].data = LoadMemberFromOpenNARC(param1, 129 + v0, 0, param2, 0);
param0->unk_10550[v0].set = NNS_G3dGetMdlSet(param0->unk_10550[v0].data);
param0->unk_10550[v0].model = NNS_G3dGetMdlByIdx(param0->unk_10550[v0].set, 0);
param0->unk_10550[v0].texture = NULL;

View File

@@ -701,7 +701,7 @@ static void ov71_0223B968(UnkStruct_ov71_0223B620 *param0, NARC *param1)
{
BOOL v7;
param0->unk_30B8 = sub_0200723C(param1, v4, 0, 25, 0);
param0->unk_30B8 = LoadMemberFromOpenNARC(param1, v4, 0, 25, 0);
GF_ASSERT(param0->unk_30B8 != NULL);
v7 = NNS_G2dGetUnpackedBGCharacterData(param0->unk_30B8, &param0->unk_30BC);
@@ -721,7 +721,7 @@ static void ov71_0223B968(UnkStruct_ov71_0223B620 *param0, NARC *param1)
{
BOOL v8;
param0->unk_30B8 = sub_0200723C(param1, Unk_ov71_0223D604[param0->unk_B4->unk_05], 0, 25, 0);
param0->unk_30B8 = LoadMemberFromOpenNARC(param1, Unk_ov71_0223D604[param0->unk_B4->unk_05], 0, 25, 0);
GF_ASSERT(param0->unk_30B8 != NULL);
v8 = NNS_G2dGetUnpackedBGCharacterData(param0->unk_30B8, &param0->unk_30BC);

View File

@@ -1174,7 +1174,7 @@ static void ov88_0223C44C(BgConfig *param0)
static void ov88_0223C488(NARC *param0, u32 param1, BgConfig *param2, u32 param3, u32 param4, u32 param5, BOOL param6, u32 param7)
{
void *v0 = sub_0200723C(param0, param1, param6, param7, 1);
void *v0 = LoadMemberFromOpenNARC(param0, param1, param6, param7, 1);
if (v0 != NULL) {
NNSG2dScreenData *v1;

View File

@@ -735,7 +735,7 @@ static void ov92_021D1530(UnkStruct_ov92_021D1B24 *param0)
u32 v3;
int v4, v5;
v1 = sub_02007250(v0, 18, 0, param0->unk_00, 0, &v3);
v1 = LoadMemberFromOpenNARC_OutFileSize(v0, 18, 0, param0->unk_00, 0, &v3);
v2 = (UnkStruct_ov92_021D1530 *)v1;
v5 = v3 / 6;
@@ -763,7 +763,7 @@ static void ov92_021D1530(UnkStruct_ov92_021D1B24 *param0)
while (v12 < v11) {
v9 = sub_02099764(v12);
v6 = sub_02007250(v0, v9, 0, param0->unk_00, 0, &v8);
v6 = LoadMemberFromOpenNARC_OutFileSize(v0, v9, 0, param0->unk_00, 0, &v8);
v7 = (UnkStruct_ov69_0225C980 *)v6;
v13 = v8 / 4;

View File

@@ -1013,7 +1013,7 @@ u16 *ov94_Pokedex_Alphabetical(int heapID, int unused, int *pokedexLength)
u32 pokedexSize;
u16 *pokedexAlphabetical;
pokedexAlphabetical = sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 13, 0, heapID, 0, &pokedexSize);
pokedexAlphabetical = LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 13, 0, heapID, 0, &pokedexSize);
*pokedexLength = pokedexSize / (sizeof(u16));
return pokedexAlphabetical;
@@ -1027,7 +1027,7 @@ u8 *ov94_02242548(int param0)
MI_CpuClearFast(v4, NATIONAL_DEX_COUNT + 1);
v3 = sub_02007068(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 12, 0, param0, 0, &v0);
v3 = LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__ZUKANLIST__ZKN_DATA__ZUKAN_DATA, 12, 0, param0, 0, &v0);
v1 = v0 / (sizeof(u16));
for (v2 = 0; v2 < v1; v2++) {

View File

@@ -142,7 +142,7 @@ UnkStruct_ov95_02247958 *ov95_022478B4(UnkStruct_ov95_0224773C *param0, int para
{
UnkStruct_ov95_02247958 *v0 = &param0->unk_18[param1];
v0->unk_00 = sub_02006FE8(param2, param3, 0, 58, 1);
v0->unk_00 = LoadMemberFromNARC(param2, param3, 0, 58, 1);
DC_FlushRange(v0->unk_00, NARC_GetMemberSizeByIndexPair(param2, param3));
if (v0->unk_00) {

View File

@@ -706,7 +706,7 @@ static int ov97_02230F20(UnkStruct_ov97_02230868 *param0, int param1, int param2
static void ov97_02230F58(UnkStruct_ov97_02230868 *param0, u32 param1, u32 param2, u32 param3)
{
NNSG2dScreenData *v0;
void *v1 = sub_02006FE8(116, param1, 1, param0->unk_00, 1);
void *v1 = LoadMemberFromNARC(116, param1, 1, param0->unk_00, 1);
NNS_G2dGetUnpackedScreenData(v1, &v0);

View File

@@ -676,7 +676,7 @@ void ov97_02238194(BgConfig *param0, UnkStruct_0202DF40 *param1)
{
NNSG2dScreenData *v3;
void *v4 = sub_02006FE8(116, 31, 1, v2->unk_08, 1);
void *v4 = LoadMemberFromNARC(116, 31, 1, v2->unk_08, 1);
NNS_G2dGetUnpackedScreenData(v4, &v3);

View File

@@ -1128,13 +1128,13 @@ static BOOL ov113_0225D938(int param0, int param1, CellActorData *param2, NARC *
}
if (PokemonHasOverworldFootprint(param0, param1, param6) == 1) {
v2 = sub_0200723C(param4, 3 + param0, 1, 118, 1);
v2 = LoadMemberFromOpenNARC(param4, 3 + param0, 1, 118, 1);
NNS_G2dGetUnpackedCharacterData(v2, &v3);
DC_FlushRange(v3->pRawData, 0x20 * 8);
v4 = &((u8 *)v3->pRawData)[0x20 * 4];
v5 = v3->pRawData;
} else {
v2 = sub_0200723C(param3, 16, 0, 118, 1);
v2 = LoadMemberFromOpenNARC(param3, 16, 0, 118, 1);
NNS_G2dGetUnpackedCharacterData(v2, &v3);
DC_FlushRange(v3->pRawData, 0x20 * 4);
v4 = v3->pRawData;

View File

@@ -568,7 +568,7 @@ static UnkStruct_ov113_0225E6B8 *ov113_0225E6B8(UnkStruct_ov113_0225DBCC *param0
static BOOL ov113_0225E774(UnkStruct_ov113_0225EB20 *param0, Easy3DModel *param1, NARC *param2, NARC *param3, const UnkStruct_ov113_02260818 *param4, BOOL param5)
{
param1->data = sub_0200723C(param2, 29, 0, 118, 0);
param1->data = LoadMemberFromOpenNARC(param2, 29, 0, 118, 0);
{
BOOL v0;
@@ -677,10 +677,10 @@ static void ov113_0225E920(NNSG3dResTex *param0, NARC *param1, NARC *param2, con
v1 = (u8 *)((u8 *)param0 + param0->texInfo.ofsTex);
if (v4 == 1) {
v2 = sub_0200723C(param2, 3 + param3->unk_02, 1, 118, 1);
v2 = LoadMemberFromOpenNARC(param2, 3 + param3->unk_02, 1, 118, 1);
NNS_G2dGetUnpackedCharacterData(v2, &v3);
} else {
v2 = sub_0200723C(param1, 16, 0, 118, 1);
v2 = LoadMemberFromOpenNARC(param1, 16, 0, 118, 1);
NNS_G2dGetUnpackedCharacterData(v2, &v3);
}

View File

@@ -529,7 +529,7 @@ static void ov115_02260ADC(UnkStruct_ov115_0226095C *param0, u32 param1)
u32 v0;
int v1;
param0->unk_48.unk_04 = sub_02007068(NARC_INDEX_APPLICATION__BUCKET__BALLSLOW_DATA, 0, 0, param1, 0, &v0);
param0->unk_48.unk_04 = LoadMemberFromNARC_OutFileSize(NARC_INDEX_APPLICATION__BUCKET__BALLSLOW_DATA, 0, 0, param1, 0, &v0);
param0->unk_48.unk_00 = v0 / sizeof(UnkStruct_ov115_02262DC4);
for (v1 = 0; v1 < param0->unk_08.unk_08; v1++) {

View File

@@ -128,36 +128,36 @@ short Pokedex_HeightWeightData_PokemonScale(const HeightWeightData *HWData, int
static int *Pokedex_Height_Array(NARC *pokedexDataNARC, int param1)
{
void *height = sub_0200723C(pokedexDataNARC, 0, 0, param1, 0);
void *height = LoadMemberFromOpenNARC(pokedexDataNARC, 0, 0, param1, 0);
return (int *)height;
}
static int *Pokedex_Weight_Array(NARC *pokedexDataNARC, int param1)
{
void *weight = sub_0200723C(pokedexDataNARC, 1, 0, param1, 0);
void *weight = LoadMemberFromOpenNARC(pokedexDataNARC, 1, 0, param1, 0);
return (int *)weight;
}
static void Pokedex_Comparison_Pos_M_Array(NARC *pokedexDataNARC, short **trainerPos, short **pokemonPos, int param3)
{
*trainerPos = (short *)sub_0200723C(pokedexDataNARC, 9, 0, param3, 0);
*pokemonPos = (short *)sub_0200723C(pokedexDataNARC, 10, 0, param3, 0);
*trainerPos = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 9, 0, param3, 0);
*pokemonPos = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 10, 0, param3, 0);
}
static void Pokedex_Comparison_Pos_F_Array(NARC *pokedexDataNARC, short **trainerPos, short **pokemonPos, int param3)
{
*trainerPos = (short *)sub_0200723C(pokedexDataNARC, 7, 0, param3, 0);
*pokemonPos = (short *)sub_0200723C(pokedexDataNARC, 8, 0, param3, 0);
*trainerPos = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 7, 0, param3, 0);
*pokemonPos = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 8, 0, param3, 0);
}
static void Pokedex_Comparison_Scale_M_Array(NARC *pokedexDataNARC, short **trainerScale, short **pokemonScale, int param3)
{
*trainerScale = (short *)sub_0200723C(pokedexDataNARC, 5, 0, param3, 0);
*pokemonScale = (short *)sub_0200723C(pokedexDataNARC, 6, 0, param3, 0);
*trainerScale = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 5, 0, param3, 0);
*pokemonScale = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 6, 0, param3, 0);
}
static void Pokedex_Comparison_Scale_F_Array(NARC *pokedexDataNARC, short **trainerScale, short **pokemonScale, int param3)
{
*trainerScale = (short *)sub_0200723C(pokedexDataNARC, 3, 0, param3, 0);
*pokemonScale = (short *)sub_0200723C(pokedexDataNARC, 4, 0, param3, 0);
*trainerScale = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 3, 0, param3, 0);
*pokemonScale = (short *)LoadMemberFromOpenNARC(pokedexDataNARC, 4, 0, param3, 0);
}

View File

@@ -824,7 +824,7 @@ static void SpriteResourceCollection_InitResFromFile(SpriteResourceCollection *s
static void SpriteResourceCollection_InitRes(SpriteResourceCollection *spriteResources, SpriteResource *spriteRes, int narcIdx, int memberIdx, BOOL compressed, int id, NNS_G2D_VRAM_TYPE vramType, int paletteIdx, enum SpriteResourceType type, enum HeapId heapID, BOOL allocAtEnd)
{
void *data = sub_02006FE8(narcIdx, memberIdx, compressed, heapID, allocAtEnd);
void *data = LoadMemberFromNARC(narcIdx, memberIdx, compressed, heapID, allocAtEnd);
spriteRes->rawResource = ResourceCollection_Add(spriteResources->collection, data, id);
spriteRes->type = type;

View File

@@ -349,7 +349,7 @@ UnkStruct_02014FB0 *sub_02014FB0(u32 heapID)
v0 = Heap_AllocFromHeap(heapID, sizeof(UnkStruct_02014FB0));
memset(v0, 0, sizeof(UnkStruct_02014FB0));
v0->unk_04 = sub_02007068(NARC_INDEX_RESOURCE__ENG__PMS_AIKOTOBA__PMS_AIKOTOBA, 0, 0, heapID, 0, &fileSize);
v0->unk_04 = LoadMemberFromNARC_OutFileSize(NARC_INDEX_RESOURCE__ENG__PMS_AIKOTOBA__PMS_AIKOTOBA, 0, 0, heapID, 0, &fileSize);
v0->unk_00 = fileSize / sizeof(u32);
return v0;

View File

@@ -456,7 +456,7 @@ static void sub_0205D0D8(UnkStruct_0205D094 *param0, int param1, u32 param2)
sub_0200A41C(param0->unk_18[0]);
sub_0200A684(param0->unk_18[1]);
v1 = sub_02006FE8(177, 4, 0, 4, 0);
v1 = LoadMemberFromNARC(177, 4, 0, 4, 0);
param0->unk_04 = sub_02009508(v1, 4, param0->unk_08[0], param0->unk_08[1], param0->unk_08[2], param0->unk_08[3], NULL, NULL);
Heap_FreeToHeap(v1);
@@ -470,7 +470,7 @@ static int sub_0205D1C4(SpriteResourceCollection *param0, SpriteResourceList **p
void *v3;
v0 = Heap_AllocFromHeapAtEnd(4, SpriteResourceTable_Size());
v3 = sub_02006FE8(177, param2, 0, 4, 0);
v3 = LoadMemberFromNARC(177, param2, 0, 4, 0);
SpriteResourceTable_LoadFromBinary(v3, v0, 4);
Heap_FreeToHeap(v3);

View File

@@ -55,7 +55,7 @@ void sub_02073848(UnkStruct_02073838 *param0, NNSG3dResFileHeader *param1, u32 p
void sub_0207389C(UnkStruct_02073838 *param0, u32 param1, NARC *param2, u32 param3, u32 param4, int param5)
{
NNSG3dResFileHeader *v0 = sub_0200723C(param2, param3, 0, param4, param5);
NNSG3dResFileHeader *v0 = LoadMemberFromOpenNARC(param2, param3, 0, param4, param5);
sub_02073848(param0, v0, param1);
}
@@ -139,7 +139,7 @@ void sub_020739A8(UnkStruct_02073974 *param0, UnkStruct_02073974 *param1, u32 pa
void sub_020739B4(UnkStruct_02073974 *param0, u32 param1, NARC *param2, u32 param3, u32 param4, int param5)
{
void *v0 = sub_0200723C(param2, param3, 0, param4, param5);
void *v0 = LoadMemberFromOpenNARC(param2, param3, 0, param4, param5);
sub_02073980(param0, v0, param1);
}

View File

@@ -122,7 +122,7 @@ void sub_02082DA8(GameWindowLayout *param0, u8 param1)
v3 = Pokemon_GetValue(v0, MON_DATA_FORM, NULL);
v1 = NARC_ctor(NARC_INDEX_POKETOOL__ICONGRA__PL_POKE_ICON, 12);
v4 = NNS_G2dGetImageLocation(SpriteActor_ImageProxy(param0->unk_704[param1].unk_24), NNS_G2D_VRAM_TYPE_2DMAIN);
v5 = sub_0200723C(v1, Pokemon_IconSpriteIndex(v0), 0, 12, 1);
v5 = LoadMemberFromOpenNARC(v1, Pokemon_IconSpriteIndex(v0), 0, 12, 1);
v7 = NNS_G2dGetUnpackedCharacterData(v5, &v6);
if (v7) {

View File

@@ -418,7 +418,7 @@ void sub_02094F04(UnkStruct_02095C48 *param0, int param1, int param2, int param3
break;
}
v9 = sub_02006FE8(90, 0, 0, param1, 1);
v9 = LoadMemberFromNARC(90, 0, 0, param1, 1);
v6 = NARC_GetMemberSizeByIndexPair(NARC_INDEX_CONTEST__DATA__CONTEST_DATA, 0) / sizeof(UnkStruct_ov6_02248BE8);
v2 = Heap_AllocFromHeapAtEnd(param1, v6 + 1);
@@ -530,7 +530,7 @@ void sub_020951B0(UnkStruct_02095C48 *param0, int param1)
int v4;
int v5;
v2 = sub_02006FE8(90, 2, 0, param1, 1);
v2 = LoadMemberFromNARC(90, 2, 0, param1, 1);
switch (param0->unk_00.unk_111) {
case 4:
@@ -694,7 +694,7 @@ void sub_020954F0(UnkStruct_02095C48 *param0, int param1, int param2, int param3
UnkStruct_020954F0 *v6;
u8 *v7, *v8;
v6 = sub_02006FE8(90, 1, 0, param1, 1);
v6 = LoadMemberFromNARC(90, 1, 0, param1, 1);
v5 = NARC_GetMemberSizeByIndexPair(NARC_INDEX_CONTEST__DATA__CONTEST_DATA, 1) / sizeof(UnkStruct_020954F0);
v7 = Heap_AllocFromHeapAtEnd(param1, v5 + 1);
v8 = Heap_AllocFromHeapAtEnd(param1, v5 + 1);