mirror of
https://github.com/pret/pokeplatinum.git
synced 2026-10-02 14:31:06 -05:00
Document LoadMemberFrom[Open]NARC routines
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
169
src/graphics.c
169
src/graphics.c
@@ -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)
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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++) {
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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, ¶m1->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, ¶m1->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)
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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, ¶m1->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, ¶m1->unk_08[0].unk_04);
|
||||
|
||||
@@ -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))) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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, ¶m0->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, ¶m0->unk_30BC);
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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++) {
|
||||
|
||||
@@ -142,7 +142,7 @@ UnkStruct_ov95_02247958 *ov95_022478B4(UnkStruct_ov95_0224773C *param0, int para
|
||||
{
|
||||
UnkStruct_ov95_02247958 *v0 = ¶m0->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) {
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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++) {
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user