Refresh 7

This commit is contained in:
n64
2020-03-01 22:42:52 -05:00
parent 9a801cb96d
commit 06ec56df7f
414 changed files with 7706 additions and 10210 deletions

View File

@@ -6,7 +6,7 @@
/* Types */
typedef struct {
#ifndef VERSION_EU
#if !defined(VERSION_EU) && !defined(VERSION_SH)
u32 errStatus;
#endif
void *dramAddr;
@@ -22,7 +22,7 @@ typedef struct {
u16 blockNum; // 6
s32 sectorNum; // 8
uintptr_t devAddr; // c
#ifdef VERSION_EU
#if defined(VERSION_EU) || defined(VERSION_SH)
u32 unk10; //error status added moved to blockinfo
#endif
u32 bmCtlShadow; // 10
@@ -60,7 +60,7 @@ typedef struct {
/*0x08*/ void *dramAddr;
/*0x0C*/ uintptr_t devAddr;
/*0x10*/ size_t size;
#ifdef VERSION_EU
#if defined(VERSION_EU) || defined(VERSION_SH)
OSPiHandle *piHandle; // from the official definition
#endif
} OSIoMesg;

View File

@@ -211,7 +211,7 @@ extern const BehaviorScript bhvFish2[];
extern const BehaviorScript bhvFish3[];
extern const BehaviorScript bhvLargeFishGroup[];
extern const BehaviorScript bhvFishCommon[];
extern const BehaviorScript bhvFishGroup2[];
extern const BehaviorScript bhvFish[];
extern const BehaviorScript bhvWdwExpressElevator[];
extern const BehaviorScript bhvWdwExpressElevatorPlatform[];
extern const BehaviorScript bhvChirpChirp[];
@@ -285,19 +285,19 @@ extern const BehaviorScript bhvScuttlebugSpawn[];
extern const BehaviorScript bhvWhompKingBoss[];
extern const BehaviorScript bhvSmallWhomp[];
extern const BehaviorScript bhvWaterSplash[];
extern const BehaviorScript bhvWaterDrops[];
extern const BehaviorScript bhvWaterSurfaceWhiteWave[];
extern const BehaviorScript bhvObjectBubbleRipples[];
extern const BehaviorScript bhvSurfaceWaves[];
extern const BehaviorScript bhvWaterSurfaceWhiteWave2[];
extern const BehaviorScript bhvWavesGenerator[];
extern const BehaviorScript bhvSurfaceWaveShrinking[];
extern const BehaviorScript bhvWaterType[];
extern const BehaviorScript bhvWaveTrailOnSurface[];
extern const BehaviorScript bhvTinyWhiteWindParticle[];
extern const BehaviorScript bhvWindParticle[];
extern const BehaviorScript bhvSnowmanWindBlowing[];
extern const BehaviorScript bhvWalkingPenguin[];
extern const BehaviorScript bhvWaterDroplet[];
extern const BehaviorScript bhvWaterDropletSplash[];
extern const BehaviorScript bhvBubbleSplash[];
extern const BehaviorScript bhvIdleWaterWave[];
extern const BehaviorScript bhvObjectWaterSplash[];
extern const BehaviorScript bhvShallowWaterWave[];
extern const BehaviorScript bhvShallowWaterSplash[];
extern const BehaviorScript bhvObjectWaveTrail[];
extern const BehaviorScript bhvWaveTrail[];
extern const BehaviorScript bhvTinyStrongWindParticle[];
extern const BehaviorScript bhvStrongWindParticle[];
extern const BehaviorScript bhvSLSnowmanWind[];
extern const BehaviorScript bhvSLWalkingPenguin[];
extern const BehaviorScript bhvYellowBall[];
extern const BehaviorScript bhvMario[];
extern const BehaviorScript bhvToadMessage[];

34
include/eu_translation.h Normal file
View File

@@ -0,0 +1,34 @@
#ifndef EU_TRANSLATION_H
#define EU_TRANSLATION_H
#include "types.h"
// PAL changes most text to arrays for each language. This define allows these
// differences to be combined.
#ifdef VERSION_EU
#define LANGUAGE_ARRAY(cmd) cmd[LANGUAGE_FUNCTION]
#else
#define LANGUAGE_ARRAY(cmd) cmd
#endif
// EU translations are contained in three segment 0x19 compressed data blocks
extern u8 _translation_en_mio0SegmentRomStart[];
extern u8 _translation_en_mio0SegmentRomEnd[];
extern u8 _translation_fr_mio0SegmentRomStart[];
extern u8 _translation_fr_mio0SegmentRomEnd[];
extern u8 _translation_de_mio0SegmentRomStart[];
extern u8 _translation_de_mio0SegmentRomEnd[];
extern void *dialog_table_eu_en[];
extern void *course_name_table_eu_en[];
extern void *act_name_table_eu_en[];
extern void *dialog_table_eu_fr[];
extern void *course_name_table_eu_fr[];
extern void *act_name_table_eu_fr[];
extern void *dialog_table_eu_de[];
extern void *course_name_table_eu_de[];
extern void *act_name_table_eu_de[];
#endif /* EU_TRANSLATION_H */

View File

@@ -498,10 +498,10 @@
#define MODEL_WHITE_PARTICLE 0xA0 // white_particle_dl
#define MODEL_PEBBLE 0xA1 // pebble_seg3_dl_0301CB00
#define MODEL_LEAVES 0xA2 // leaves_geo
#define MODEL_WATER_WAVES 0xA3 // water_waves_geo
#define MODEL_WAVE_TRAIL 0xA3 // wave_trail_geo
#define MODEL_WHITE_PARTICLE_SMALL 0xA4 // white_particle_small_dl
#define MODEL_SPOT_ON_GROUND 0xA5 // spot_on_ground_geo
#define MODEL_WATER_WAVES_SURF 0xA6 // water_waves_surface_geo
#define MODEL_SMALL_WATER_SPLASH 0xA5 // small_water_splash_geo
#define MODEL_IDLE_WATER_WAVE 0xA6 // idle_water_wave_geo
#define MODEL_WATER_SPLASH 0xA7 // water_splash_geo
#define MODEL_BUBBLE 0xA8 // bubble_geo
// find me

View File

@@ -106,24 +106,26 @@
OBJ_MOVE_UNDERWATER_ON_GROUND)
/* oActiveParticleFlags */
#define ACTIVE_PARTICLE_0 0x00000001
#define ACTIVE_PARTICLE_3 0x00000008
#define ACTIVE_PARTICLE_4 0x00000010
#define ACTIVE_PARTICLE_5 0x00000020
#define ACTIVE_PARTICLE_6 0x00000040
#define ACTIVE_PARTICLE_7 0x00000080
#define ACTIVE_PARTICLE_8 0x00000100
#define ACTIVE_PARTICLE_9 0x00000200
#define ACTIVE_PARTICLE_10 0x00000400
#define ACTIVE_PARTICLE_11 0x00000800
#define ACTIVE_PARTICLE_12 0x00001000
#define ACTIVE_PARTICLE_13 0x00002000
#define ACTIVE_PARTICLE_14 0x00004000
#define ACTIVE_PARTICLE_15 0x00008000
#define ACTIVE_PARTICLE_16 0x00010000
#define ACTIVE_PARTICLE_17 0x00020000
#define ACTIVE_PARTICLE_18 0x00040000
#define ACTIVE_PARTICLE_19 0x00080000
#define ACTIVE_PARTICLE_0 (1 << 0) // 0x00000001
#define ACTIVE_PARTICLE_UNUSED_1 (1 << 1) // 0x00000002
#define ACTIVE_PARTICLE_UNUSED_2 (1 << 2) // 0x00000004
#define ACTIVE_PARTICLE_3 (1 << 3) // 0x00000008
#define ACTIVE_PARTICLE_4 (1 << 4) // 0x00000010
#define ACTIVE_PARTICLE_5 (1 << 5) // 0x00000020
#define ACTIVE_PARTICLE_6 (1 << 6) // 0x00000040
#define ACTIVE_PARTICLE_IDLE_WATER_WAVE (1 << 7) // 0x00000080
#define ACTIVE_PARTICLE_SHALLOW_WATER_WAVE (1 << 8) // 0x00000100
#define ACTIVE_PARTICLE_9 (1 << 9) // 0x00000200
#define ACTIVE_PARTICLE_WAVE_TRAIL (1 << 10) // 0x00000400
#define ACTIVE_PARTICLE_11 (1 << 11) // 0x00000800
#define ACTIVE_PARTICLE_SHALLOW_WATER_SPLASH (1 << 12) // 0x00001000
#define ACTIVE_PARTICLE_13 (1 << 13) // 0x00002000
#define ACTIVE_PARTICLE_14 (1 << 14) // 0x00004000
#define ACTIVE_PARTICLE_15 (1 << 15) // 0x00008000
#define ACTIVE_PARTICLE_16 (1 << 16) // 0x00010000
#define ACTIVE_PARTICLE_17 (1 << 17) // 0x00020000
#define ACTIVE_PARTICLE_18 (1 << 18) // 0x00040000
#define ACTIVE_PARTICLE_19 (1 << 19) // 0x00080000
/* oAction */
#define OBJ_ACT_LAVA_DEATH 100
@@ -197,6 +199,24 @@
#define BOBOMB_BUDDY_HAS_NOT_TALKED 0
#define BOBOMB_BUDDY_HAS_TALKED 2
/* Fish */
/* oAction */
#define FISH_ACT_INIT 0
#define FISH_ACT_ACTIVE 1
#define FISH_ACT_RESPAWN 2
/* Blue_Fish */
/* oAction */
#define BLUE_FISH_ACT_DIVE 0
#define BLUE_FISH_ACT_TURN 1
#define BLUE_FISH_ACT_ASCEND 2
#define BLUE_FISH_ACT_TURN_BACK 3
/* oAction: bhv_blue_fish_spawn_loop */
#define BLUE_FISH_ACT_SPAWN 0
#define BLUE_FISH_ACT_ROOM 1
#define BLUE_FISH_ACT_DUPLICATE 2
/* Cannon Trap Door */
/* oAction */
#define CANNON_TRAP_DOOR_ACT_CLOSED 0
@@ -733,10 +753,37 @@
#define PYRAMID_WALL_BP_POSITION_MIDDLE 1
#define PYRAMID_WALL_BP_POSITION_LOW 2
/* Tuxie */
/* Penguins (general) */
/* Walking sounds */
#define PENGUIN_WALK_BABY 0
#define PENGUIN_WALK_BIG 1
/* Animations */
#define PENGUIN_ANIM_WALK 0
#define PENGUIN_ANIM_IDLE 3
/* Racing penguin */
/* oAction */
#define RACING_PENGUIN_ACT_WAIT_FOR_MARIO 0
#define RACING_PENGUIN_ACT_SHOW_INIT_TEXT 1
#define RACING_PENGUIN_ACT_PREPARE_FOR_RACE 2
#define RACING_PENGUIN_ACT_RACE 3
#define RACING_PENGUIN_ACT_FINISH_RACE 4
#define RACING_PENGUIN_ACT_SHOW_FINAL_TEXT 5
/* SL walking penguin */
/* oAction */
#define SL_WALKING_PENGUIN_ACT_MOVING_FORWARDS 0
#define SL_WALKING_PENGUIN_ACT_TURNING_BACK 1
#define SL_WALKING_PENGUIN_ACT_RETURNING 2
#define SL_WALKING_PENGUIN_ACT_TURNING_FORWARDS 3
/* Snowman wind */
/* oSubAction */
#define SL_SNOWMAN_WIND_ACT_IDLE 0
#define SL_SNOWMAN_WIND_ACT_TALKING 1
#define SL_SNOWMAN_WIND_ACT_BLOWING 2
/* Water bomb */
/* oAction */
@@ -850,21 +897,17 @@
#define BIRD_BP_SPAWNED 0
#define BIRD_BP_SPAWNER 1
/* Racing penguin */
/* oAction */
#define RACING_PENGUIN_ACT_WAIT_FOR_MARIO 0
#define RACING_PENGUIN_ACT_SHOW_INIT_TEXT 1
#define RACING_PENGUIN_ACT_PREPARE_FOR_RACE 2
#define RACING_PENGUIN_ACT_RACE 3
#define RACING_PENGUIN_ACT_FINISH_RACE 4
#define RACING_PENGUIN_ACT_SHOW_FINAL_TEXT 5
/* Skeeter */
/* oAction */
#define SKEETER_ACT_IDLE 0
#define SKEETER_ACT_LUNGE 1
#define SKEETER_ACT_WALK 2
/* Snufit */
/* oAction */
#define SNUFIT_ACT_IDLE 0
#define SNUFIT_ACT_SHOOT 1
/* Tweester */
/* oAction */
#define TWEESTER_ACT_IDLE 0

View File

@@ -483,19 +483,19 @@
#define /*0x0F4*/ oFireSpitterScaleVel OBJECT_FIELD_F32(0x1B)
/* Blue Fish */
#define /*0x0F4*/ oBlueFishUnkF4 OBJECT_FIELD_F32(0x1B)
#define /*0x0F8*/ oBlueFishUnkF8 OBJECT_FIELD_S32(0x1C)
#define /*0x100*/ oBlueFishUnk100 OBJECT_FIELD_F32(0x1E)
#define /*0x0F4*/ oBlueFishRandomVel OBJECT_FIELD_F32(0x1B)
#define /*0x0F8*/ oBlueFishRandomTime OBJECT_FIELD_S32(0x1C)
#define /*0x100*/ oBlueFishRandomAngle OBJECT_FIELD_F32(0x1E)
/* Fish Group */
#define /*0x0F4*/ oFishGroupUnkF4 OBJECT_FIELD_F32(0x1B)
#define /*0x0F8*/ oFishGroupUnkF8 OBJECT_FIELD_F32(0x1C)
#define /*0x0FC*/ oFishGroupUnkFC OBJECT_FIELD_F32(0x1D)
#define /*0x100*/ oFishGroupUnk100 OBJECT_FIELD_S32(0x1E)
#define /*0x104*/ oFishGroupUnk104 OBJECT_FIELD_F32(0x1F)
#define /*0x108*/ oFishGroupUnk108 OBJECT_FIELD_F32(0x20)
#define /*0x10C*/ oFishGroupUnk10C OBJECT_FIELD_F32(0x21)
#define /*0x110*/ oFishGroupUnk110 OBJECT_FIELD_F32(0x22)
#define /*0x0F4*/ oFishWaterLevel OBJECT_FIELD_F32(0x1B)
#define /*0x0F8*/ oFishPosY OBJECT_FIELD_F32(0x1C)
#define /*0x0FC*/ oFishRandomOffset OBJECT_FIELD_F32(0x1D)
#define /*0x100*/ oFishRandomSpeed OBJECT_FIELD_S32(0x1E)
#define /*0x104*/ oFishRespawnDistance OBJECT_FIELD_F32(0x1F)
#define /*0x108*/ oFishRandomVel OBJECT_FIELD_F32(0x20)
#define /*0x10C*/ oFishDepthDistance OBJECT_FIELD_F32(0x21)
#define /*0x110*/ oFishActiveDistance OBJECT_FIELD_F32(0x22)
/* Flame */
#define /*0x0F4*/ oFlameUnkF4 OBJECT_FIELD_F32(0x1B)
@@ -752,11 +752,11 @@
#define /*0x108*/ oSmallPenguinUnk108 OBJECT_FIELD_F32(0x20)
#define /*0x110*/ oSmallPenguinUnk110 OBJECT_FIELD_S32(0x22)
/* Walking Penguin */
#define /*0x100*/ oWalkingPenguinUnk100 OBJECT_FIELD_F32(0x1E)
#define /*0x104*/ oWalkingPenguinUnk104 OBJECT_FIELD_F32(0x1F)
#define /*0x10C*/ oWalkingPenguinUnk10C OBJECT_FIELD_S32(0x21)
#define /*0x110*/ oWalkingPenguinUnk110 OBJECT_FIELD_S32(0x22)
/* SL Walking Penguin */
#define /*0x100*/ oSLWalkingPenguinWindCollisionXPos OBJECT_FIELD_F32(0x1E)
#define /*0x104*/ oSLWalkingPenguinWindCollisionZPos OBJECT_FIELD_F32(0x1F)
#define /*0x10C*/ oSLWalkingPenguinCurStep OBJECT_FIELD_S32(0x21)
#define /*0x110*/ oSLWalkingPenguinCurStepTimer OBJECT_FIELD_S32(0x22)
/* Piranha Plant */
#define /*0x0F4*/ oPiranhaPlantSleepMusicState OBJECT_FIELD_S32(0x1B)
@@ -884,19 +884,19 @@
#define /*0x0F4*/ oSnowmansHeadUnkF4 OBJECT_FIELD_S32(0x1B)
/* Snowman Wind Blowing */
#define /*0x0F4*/ oSnowmanWindBlowingUnkF4 OBJECT_FIELD_S32(0x1B)
#define /*0x0F4*/ oSLSnowmanWindOriginalYaw OBJECT_FIELD_S32(0x1B)
/* Snufit */
#define /*0x0F4*/ oSnufitUnkF4 OBJECT_FIELD_S32(0x1B)
#define /*0x0F8*/ oSnufitUnkF8 OBJECT_FIELD_F32(0x1C)
#define /*0x100*/ oSnufitUnk100 OBJECT_FIELD_S32(0x1E)
#define /*0x104*/ oSnufitUnk104 OBJECT_FIELD_S32(0x1F)
#define /*0x108*/ oSnufitUnk108 OBJECT_FIELD_S32(0x20)
#define /*0x10C*/ oSnufitUnk10C OBJECT_FIELD_S32(0x21)
#define /*0x1AC*/ oSnufitUnk1AC OBJECT_FIELD_S16(0x49, 0)
#define /*0x1AE*/ oSnufitUnk1AE OBJECT_FIELD_S16(0x49, + 1)
#define /*0x1B0*/ oSnufitUnk1B0 OBJECT_FIELD_S16(0x4A, 0)
#define /*0x1B2*/ oSnufitUnk1B2 OBJECT_FIELD_S16(0x4A, + 1)
#define /*0x0F4*/ oSnufitRecoil OBJECT_FIELD_S32(0x1B)
#define /*0x0F8*/ oSnufitScale OBJECT_FIELD_F32(0x1C)
#define /*0x100*/ oSnufitCircularPeriod OBJECT_FIELD_S32(0x1E)
#define /*0x104*/ oSnufitBodyScalePeriod OBJECT_FIELD_S32(0x1F)
#define /*0x108*/ oSnufitBodyBaseScale OBJECT_FIELD_S32(0x20)
#define /*0x10C*/ oSnufitBullets OBJECT_FIELD_S32(0x21)
#define /*0x1AC*/ oSnufitXOffset OBJECT_FIELD_S16(0x49, 0)
#define /*0x1AE*/ oSnufitYOffset OBJECT_FIELD_S16(0x49, + 1)
#define /*0x1B0*/ oSnufitZOffset OBJECT_FIELD_S16(0x4A, 0)
#define /*0x1B2*/ oSnufitBodyScale OBJECT_FIELD_S16(0x4A, + 1)
/* Spindel */
#define /*0x0F4*/ oSpindelUnkF4 OBJECT_FIELD_S32(0x1B)
@@ -1118,7 +1118,7 @@
#define /*0x0F8*/ oWaterRingMgrLastRingCollected OBJECT_FIELD_S32(0x1C)
/* Wave Trail */
#define /*0x0F8*/ oWaveTrailUnkF8 OBJECT_FIELD_F32(0x1C)
#define /*0x0F8*/ oWaveTrailSize OBJECT_FIELD_F32(0x1C)
/* Whirlpool */
#define /*0x0F4*/ oWhirlpoolInitFacePitch OBJECT_FIELD_S32(0x1B)
@@ -1130,7 +1130,7 @@
#define /*0x0FC*/ oWhitePuffUnkFC OBJECT_FIELD_S32(0x1D)
/* White Wind Particle */
#define /*0x0F4*/ oWhiteWindParticleUnkF4 OBJECT_FIELD_OBJ(0x1B)
#define /*0x0F4*/ oStrongWindParticlePenguinObj OBJECT_FIELD_OBJ(0x1B)
/* Whomp */
#define /*0x0F8*/ oWhompUnkF8 OBJECT_FIELD_S32(0x1C)

View File

@@ -22,6 +22,8 @@
#ifdef VERSION_EU
#define SEG_MAIN 0x80241800 // TODO: Investigate why it's different?
#elif defined(VERSION_SH)
#define SEG_MAIN 0x80249000
#else
#define SEG_MAIN 0x80246000
#endif

View File

@@ -88,26 +88,26 @@
#define WATER_STEP_CANCELLED 3
#define WATER_STEP_HIT_WALL 4
#define PARTICLE_DUST /* 0x00000001 */ (1 << 0)
#define PARTICLE_1 /* 0x00000002 */ (1 << 1)
#define PARTICLE_2 /* 0x00000004 */ (1 << 2)
#define PARTICLE_SPARKLES /* 0x00000008 */ (1 << 3)
#define PARTICLE_4 /* 0x00000010 */ (1 << 4)
#define PARTICLE_5 /* 0x00000020 */ (1 << 5)
#define PARTICLE_6 /* 0x00000040 */ (1 << 6)
#define PARTICLE_7 /* 0x00000080 */ (1 << 7)
#define PARTICLE_8 /* 0x00000100 */ (1 << 8)
#define PARTICLE_9 /* 0x00000200 */ (1 << 9)
#define PARTICLE_10 /* 0x00000400 */ (1 << 10)
#define PARTICLE_11 /* 0x00000800 */ (1 << 11)
#define PARTICLE_12 /* 0x00001000 */ (1 << 12)
#define PARTICLE_LEAVES /* 0x00002000 */ (1 << 13)
#define PARTICLE_14 /* 0x00004000 */ (1 << 14)
#define PARTICLE_15 /* 0x00008000 */ (1 << 15)
#define PARTICLE_16 /* 0x00010000 */ (1 << 16)
#define PARTICLE_17 /* 0x00020000 */ (1 << 17)
#define PARTICLE_18 /* 0x00040000 */ (1 << 18)
#define PARTICLE_19 /* 0x00080000 */ (1 << 19)
#define PARTICLE_DUST /* 0x00000001 */ (1 << 0)
#define PARTICLE_1 /* 0x00000002 */ (1 << 1)
#define PARTICLE_2 /* 0x00000004 */ (1 << 2)
#define PARTICLE_SPARKLES /* 0x00000008 */ (1 << 3)
#define PARTICLE_4 /* 0x00000010 */ (1 << 4)
#define PARTICLE_5 /* 0x00000020 */ (1 << 5)
#define PARTICLE_WATER_SPLASH /* 0x00000040 */ (1 << 6)
#define PARTICLE_IDLE_WATER_WAVE /* 0x00000080 */ (1 << 7)
#define PARTICLE_SHALLOW_WATER_WAVE /* 0x00000100 */ (1 << 8)
#define PARTICLE_9 /* 0x00000200 */ (1 << 9)
#define PARTICLE_WAVE_TRAIL /* 0x00000400 */ (1 << 10)
#define PARTICLE_11 /* 0x00000800 */ (1 << 11)
#define PARTICLE_SHALLOW_WATER_SPLASH /* 0x00001000 */ (1 << 12)
#define PARTICLE_LEAVES /* 0x00002000 */ (1 << 13)
#define PARTICLE_14 /* 0x00004000 */ (1 << 14)
#define PARTICLE_15 /* 0x00008000 */ (1 << 15)
#define PARTICLE_16 /* 0x00010000 */ (1 << 16)
#define PARTICLE_17 /* 0x00020000 */ (1 << 17)
#define PARTICLE_18 /* 0x00040000 */ (1 << 18)
#define PARTICLE_19 /* 0x00080000 */ (1 << 19)
#define MODEL_STATE_NOISE_ALPHA 0x180
#define MODEL_STATE_METAL 0x200

View File

@@ -25,7 +25,7 @@
#define TEXT_PAUSE _("PAUSE") // Pause text, Castle Courses
#define TEXT_HUD_CONGRATULATIONS _("CONGRATULATIONS") // Course Complete Text, Bowser Courses
#ifdef VERSION_JP
#if defined(VERSION_JP) || defined(VERSION_SH)
/**
* File Select Text