1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-14 11:54:39 +00:00

Use intptr types in a few specific boot files (#1301)

* Add stdint.h with intptr_t and uinptr_t

* Use intptr types in dmamgr and yaz0

* Use intptr types in stackcheck

* Use intptr types in idle

* Run formatter

* Use pointers for StackEntry (+ minor type fix)
This commit is contained in:
Roman971 2022-07-12 18:47:25 +02:00 committed by GitHub
parent 2f07874a5f
commit 7564502b0b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 78 additions and 51 deletions

View file

@ -43,7 +43,7 @@ s32 DmaMgr_CompareName(const char* name1, const char* name2) {
return 0;
}
s32 DmaMgr_DmaRomToRam(u32 rom, void* ram, u32 size) {
s32 DmaMgr_DmaRomToRam(uintptr_t rom, void* ram, u32 size) {
OSIoMesg ioMsg;
OSMesgQueue queue;
OSMesg msg;
@ -143,7 +143,7 @@ s32 DmaMgr_DmaHandler(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction) {
return ret;
}
void DmaMgr_DmaFromDriveRom(void* ram, u32 rom, u32 size) {
void DmaMgr_DmaFromDriveRom(void* ram, uintptr_t rom, u32 size) {
OSPiHandle* handle = osDriveRomInit();
OSMesgQueue queue;
OSMesg msg;
@ -165,7 +165,7 @@ void DmaMgr_DmaFromDriveRom(void* ram, u32 rom, u32 size) {
}
void DmaMgr_Error(DmaRequest* req, const char* file, const char* errorName, const char* errorDesc) {
u32 vrom = req->vromAddr;
uintptr_t vrom = req->vromAddr;
void* ram = req->dramAddr;
u32 size = req->size;
char buff1[80];
@ -197,7 +197,7 @@ void DmaMgr_Error(DmaRequest* req, const char* file, const char* errorName, cons
Fault_AddHungupAndCrashImpl(buff1, buff2);
}
const char* DmaMgr_GetFileNameImpl(u32 vrom) {
const char* DmaMgr_GetFileNameImpl(uintptr_t vrom) {
DmaEntry* iter = gDmaDataTable;
const char** name = sDmaMgrFileNames;
@ -216,7 +216,7 @@ const char* DmaMgr_GetFileNameImpl(u32 vrom) {
#endif
}
const char* DmaMgr_GetFileName(u32 vrom) {
const char* DmaMgr_GetFileName(uintptr_t vrom) {
const char* ret = DmaMgr_GetFileNameImpl(vrom);
if (ret == NULL) {
@ -231,10 +231,10 @@ const char* DmaMgr_GetFileName(u32 vrom) {
}
void DmaMgr_ProcessMsg(DmaRequest* req) {
u32 vrom = req->vromAddr;
uintptr_t vrom = req->vromAddr;
void* ram = req->dramAddr;
u32 size = req->size;
u32 romStart;
uintptr_t romStart;
u32 romSize;
u8 found = false;
DmaEntry* iter;
@ -336,7 +336,8 @@ void DmaMgr_ThreadEntry(void* arg) {
osSyncPrintf("DMAマネージャスレッド実行終了\n");
}
s32 DmaMgr_SendRequestImpl(DmaRequest* req, void* ram, u32 vrom, u32 size, u32 unk, OSMesgQueue* queue, OSMesg msg) {
s32 DmaMgr_SendRequestImpl(DmaRequest* req, void* ram, uintptr_t vrom, u32 size, u32 unk, OSMesgQueue* queue,
OSMesg msg) {
static s32 sDmaMgrQueueFullLogged = 0;
if ((1 && (ram == NULL)) || (osMemSize < OS_K0_TO_PHYSICAL(ram) + size) || (vrom & 1) || (vrom > 0x4000000) ||
@ -366,7 +367,7 @@ s32 DmaMgr_SendRequestImpl(DmaRequest* req, void* ram, u32 vrom, u32 size, u32 u
return 0;
}
s32 DmaMgr_SendRequest0(void* ram, u32 vrom, u32 size) {
s32 DmaMgr_SendRequest0(void* ram, uintptr_t vrom, u32 size) {
DmaRequest req;
OSMesgQueue queue;
OSMesg msg;
@ -387,7 +388,7 @@ void DmaMgr_Init(void) {
s32 idx;
DmaEntry* iter;
DmaMgr_DmaRomToRam((u32)_dmadataSegmentRomStart, _dmadataSegmentStart,
DmaMgr_DmaRomToRam((uintptr_t)_dmadataSegmentRomStart, _dmadataSegmentStart,
(u32)(_dmadataSegmentRomEnd - _dmadataSegmentRomStart));
osSyncPrintf("dma_rom_ad[]\n");
@ -414,7 +415,7 @@ void DmaMgr_Init(void) {
}
}
if ((u32)_bootSegmentRomStart != gDmaDataTable[0].vromEnd) {
if ((uintptr_t)_bootSegmentRomStart != gDmaDataTable[0].vromEnd) {
osSyncPrintf("_bootSegmentRomStart(%08x) != dma_rom_ad[0].rom_b(%08x)\n", _bootSegmentRomStart,
gDmaDataTable[0].vromEnd);
Fault_AddHungupAndCrash("../z_std_dma.c", 1055);
@ -427,14 +428,14 @@ void DmaMgr_Init(void) {
osStartThread(&sDmaMgrThread);
}
s32 DmaMgr_SendRequest2(DmaRequest* req, void* ram, u32 vrom, u32 size, u32 unk5, OSMesgQueue* queue, OSMesg msg,
s32 DmaMgr_SendRequest2(DmaRequest* req, void* ram, uintptr_t vrom, u32 size, u32 unk5, OSMesgQueue* queue, OSMesg msg,
const char* file, s32 line) {
req->filename = file;
req->line = line;
return DmaMgr_SendRequestImpl(req, ram, vrom, size, unk5, queue, msg);
}
s32 DmaMgr_SendRequest1(void* ram, u32 vrom, u32 size, const char* file, s32 line) {
s32 DmaMgr_SendRequest1(void* ram, uintptr_t vrom, u32 size, const char* file, s32 line) {
DmaRequest req;
s32 ret;
OSMesgQueue queue;