mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Splat changes (#462)
* Merge changes from splat where it makes sense at this stage. * Update score, and script for what seems like new map file style. * format * Fix accidental inclusion of version specific details. * Match camera_init * Update Score * Near match for func_80046524 * Format * Woops, it's NON_MATCHING * Missed button pressed value * Work on documenting func_80046524 * MAtch func_80046524 * Match func_80046524 * Minor changes * Fix warnings in func_80046524 * format.py * Update README * Match func_800230D0 * Fix UB in mode_init_taj_race
This commit is contained in:
@@ -5,6 +5,10 @@
|
||||
#define TV_TYPE_PAL 0
|
||||
#define TV_TYPE_MPAL 2
|
||||
|
||||
#define OS_TV_TYPE_PAL 0
|
||||
#define OS_TV_TYPE_NTSC 1
|
||||
#define OS_TV_TYPE_MPAL 2
|
||||
|
||||
#define RESET_TYPE_COLD_RESET 0
|
||||
#define RESET_TYPE_NMI 1
|
||||
#define RESET_TYPE_BOOT_DISK 2
|
||||
|
||||
+2
-2
@@ -92,8 +92,8 @@ s32 osPiWriteIo(uintptr_t devAddr, u32 data);
|
||||
s32 osPiReadIo(uintptr_t devAddr, u32 *data);
|
||||
s32 osPiRawReadIo(u32 devAddr, u32 *data);
|
||||
|
||||
s32 osPiRawStartDma(s32 dir, u32 cart_addr, void *dram_addr, size_t size);
|
||||
s32 osEPiRawStartDma(OSPiHandle *piHandle, s32 dir, u32 cart_addr, void *dram_addr, size_t size);
|
||||
s32 __osPiRawStartDma(s32 dir, u32 cart_addr, void *dram_addr, size_t size);
|
||||
s32 __osEPiRawStartDma(OSPiHandle *piHandle, s32 dir, u32 cart_addr, void *dram_addr, size_t size);
|
||||
s32 osEPiRawWriteIo(OSPiHandle *, u32 , u32);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
#ifndef COMMON_H
|
||||
#define COMMON_H
|
||||
|
||||
#define VERSION_77 77 // NA / PAL V1
|
||||
#define VERSION_79 79 // Japan
|
||||
#define VERSION_80 80 // NA / PAL V1.1
|
||||
|
||||
#define REGION_NA 1
|
||||
#define REGION_PAL 2
|
||||
#define REGION_JP 3
|
||||
|
||||
#if defined(VERSION_us_v77)
|
||||
#define Func80019808Checksum 0x35281
|
||||
#define ViewportFuncChecksum 0x585E
|
||||
#define TractionTableChecksum 0x1C65B
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA597
|
||||
#define VERSION VERSION_77
|
||||
#define REGION REGION_NA
|
||||
#elif defined(VERSION_pal_v77)
|
||||
#define Func80019808Checksum 0x34E72
|
||||
#define ViewportFuncChecksum 0x59E5
|
||||
#define TractionTableChecksum 0x1C38F
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA6FF
|
||||
#define VERSION VERSION_77
|
||||
#define REGION REGION_PAL
|
||||
#elif defined(VERSION_jpn_v79)
|
||||
#define Func80019808Checksum 0x34EA6
|
||||
#define ViewportFuncChecksum 0x592D
|
||||
#define TractionTableChecksum 0x1C9EC
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA7C5
|
||||
#define VERSION VERSION_79
|
||||
#define REGION REGION_JP
|
||||
#elif defined(VERSION_us_v80)
|
||||
#define Func80019808Checksum 0x34B94
|
||||
#define ViewportFuncChecksum 0x5881
|
||||
#define TractionTableChecksum 0x1CA13
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA745
|
||||
#define VERSION VERSION_80
|
||||
#define REGION REGION_NA
|
||||
#elif defined(VERSION_pal_v80)
|
||||
#define Func80019808Checksum 0x3507C
|
||||
#define ViewportFuncChecksum 0x580A
|
||||
#define TractionTableChecksum 0x1CE40
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA6AF
|
||||
#define VERSION VERSION_80
|
||||
#define REGION REGION_PAL
|
||||
#else
|
||||
// Default to NA V1 if somehow we don't have a proper define.
|
||||
#define Func80019808Checksum 0x35281
|
||||
#define ViewportFuncChecksum 0x585E
|
||||
#define TractionTableChecksum 0x1C65B
|
||||
#define ObjLoopGoldenBalloonChecksum 0xA597
|
||||
#define VERSION VERSION_77
|
||||
#define REGION REGION_NA
|
||||
#endif
|
||||
|
||||
#endif // COMMON_H
|
||||
@@ -37,6 +37,13 @@
|
||||
#define STATIC_ASSERT(cond, msg) typedef char GLUE2(static_assertion_failed, __LINE__)[(cond) ? 1 : -1]
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define ALIGNED(x) __attribute__((aligned(x)))
|
||||
#else
|
||||
#define ALIGNED(x)
|
||||
#endif
|
||||
|
||||
// Align to 8-byte boundary for DMA requirements
|
||||
#ifdef __GNUC__
|
||||
#define ALIGNED8 __attribute__((aligned(8)))
|
||||
@@ -68,4 +75,12 @@
|
||||
// Used to make a u32 colour value look clearer. Transforms 0xFF0000FF to 255, 0, 0, 255
|
||||
#define COLOUR_RGBA32(r, g, b, a) (((r << 24) | (g << 16) | (b << 8) | a))
|
||||
|
||||
#define ALIGN8(val) (((val) + 7) & ~7)
|
||||
|
||||
#define STACK(stack, size) \
|
||||
u64 stack[ALIGN8(size) / sizeof(u64)]
|
||||
|
||||
#define STACK_START(stack) \
|
||||
((u8*)(stack) + sizeof(stack))
|
||||
|
||||
#endif
|
||||
|
||||
+1
-1
@@ -1368,7 +1368,7 @@ typedef struct Object_Racer {
|
||||
/* 0x1FA */ s8 drifting;
|
||||
/* 0x1FB */ s8 unk1FB;
|
||||
/* 0x1FC */ u8 unk1FC;
|
||||
/* 0x1FD */ s8 unk1FD;
|
||||
/* 0x1FD */ s8 cameraIndex;
|
||||
/* 0x1FE */ u8 unk1FE;
|
||||
/* 0x1FF */ u8 unk1FF;
|
||||
/* 0x200 */ s8 transitionTimer;
|
||||
|
||||
Reference in New Issue
Block a user