mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-29 21:02:18 -05:00
1fc6a2f08f
* save build version to savefile * adjust rando hash icons to use fade in/out * add dialog message support on the file select screen and display rando version warning * remove duplicated message functions and use stubbed play state instead for rando warning * add major/minor/patch version saving to file and compare against * use strncpy and memset for build version * don't show rando warning one copy/erase screens * review feedback * Add german and french translations for rando warning Co-authored-by: PurpleHato <linkvssangoku.jr@gmail.com> --------- Co-authored-by: PurpleHato <linkvssangoku.jr@gmail.com>
251 lines
7.9 KiB
C
251 lines
7.9 KiB
C
#ifndef VARIABLES_H
|
|
#define VARIABLES_H
|
|
|
|
#include "z64.h"
|
|
#include "segment_symbols.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
extern u32 osTvType;
|
|
extern u32 osRomBase;
|
|
extern u32 osResetType;
|
|
extern u32 osMemSize;
|
|
extern u8 osAppNmiBuffer[0x40];
|
|
|
|
extern u8 D_80009320[];
|
|
extern u8 D_800093F0[];
|
|
extern s8 D_80009430;
|
|
extern u32 D_80009460;
|
|
extern u32 gDmaMgrDmaBuffSize;
|
|
extern vu8 gViConfigUseDefault;
|
|
extern u8 gViConfigAdditionalScanLines;
|
|
extern u32 gViConfigFeatures;
|
|
extern f32 gViConfigXScale;
|
|
extern f32 gViConfigYScale;
|
|
extern OSPiHandle* gCartHandle;
|
|
extern u32 __osPiAccessQueueEnabled;
|
|
extern OSViMode osViModePalLan1;
|
|
extern s32 osViClock;
|
|
extern u32 __osShutdown;
|
|
extern OSHWIntr __OSGlobalIntMask;
|
|
extern OSThread* __osThreadTail[];
|
|
extern OSThread* __osRunQueue;
|
|
extern OSThread* __osActiveQueue;
|
|
extern OSThread* __osRunningThread;
|
|
extern OSThread* __osFaultedThread;
|
|
extern OSPiHandle* __osPiTable;
|
|
extern OSPiHandle* __osCurrentHandle[];
|
|
extern OSTimer* __osTimerList;
|
|
extern OSViMode osViModeNtscLan1;
|
|
extern OSViMode osViModeMpalLan1;
|
|
extern OSViContext* __osViCurr;
|
|
extern OSViContext* __osViNext;
|
|
extern OSViMode osViModeFpalLan1;
|
|
extern u32 __additional_scanline;
|
|
extern u8 gBuildVersion[];
|
|
extern s16 gBuildVersionMajor;
|
|
extern s16 gBuildVersionMinor;
|
|
extern s16 gBuildVersionPatch;
|
|
extern u8 gBuildTeam[];
|
|
extern u8 gBuildDate[];
|
|
extern u8 gBuildMakeOption[];
|
|
extern OSMesgQueue gPiMgrCmdQ;
|
|
extern OSViMode gViConfigMode;
|
|
extern u8 D_80013960;
|
|
extern OSMesgQueue __osPiAccessQueue;
|
|
extern OSPiHandle __Dom1SpeedParam;
|
|
extern OSPiHandle __Dom2SpeedParam;
|
|
extern OSTime __osCurrentTime;
|
|
extern u32 __osBaseCounter;
|
|
extern u32 __osViIntrCount;
|
|
extern u32 __osTimerCounter;
|
|
extern DmaEntry gDmaDataTable[0x60C];
|
|
extern u64 D_801120C0[];
|
|
extern u8 D_80113070[];
|
|
extern u64 gJpegUCode[];
|
|
extern EffectSsOverlay gEffectSsOverlayTable[EFFECT_SS_TYPE_MAX];
|
|
extern Gfx D_80116280[];
|
|
extern ActorOverlay gActorOverlayTable[ACTOR_ID_MAX]; // original name: "actor_dlftbls" 801162A0
|
|
extern s32 gMaxActorId; // original name: "MaxProfile"
|
|
extern s32 gDbgCamEnabled;
|
|
extern GameStateOverlay gGameStateOverlayTable[6];
|
|
extern u8 gWeatherMode;
|
|
extern u8 D_8011FB34;
|
|
extern u8 D_8011FB38;
|
|
extern u8 gSkyboxBlendingEnabled;
|
|
extern u16 gTimeIncrement;
|
|
extern struct_8011FC1C D_8011FC1C[][9];
|
|
extern SkyboxFile gSkyboxFiles[];
|
|
extern s32 gZeldaArenaLogSeverity;
|
|
extern MapData gMapDataTable;
|
|
extern s16 gSpoilingItems[3];
|
|
extern s16 gSpoilingItemReverts[3];
|
|
extern FlexSkeletonHeader* gPlayerSkelHeaders[2];
|
|
extern u8 gPlayerModelTypes[][5];
|
|
extern Gfx* D_80125DE8[];
|
|
extern Gfx* D_80125E08[];
|
|
extern Gfx* D_80125E18[];
|
|
extern Gfx* D_80125EF8[];
|
|
extern Gfx gCullBackDList[];
|
|
extern Gfx gCullFrontDList[];
|
|
extern Gfx gEmptyDL[];
|
|
extern u32 gBitFlags[32];
|
|
extern u16 gEquipMasks[4];
|
|
extern u16 gEquipNegMasks[4];
|
|
extern u32 gUpgradeMasks[8];
|
|
extern u8 gEquipShifts[4];
|
|
extern u8 gUpgradeShifts[8];
|
|
extern u16 gUpgradeCapacities[8][4];
|
|
extern u32 gGsFlagsMasks[4];
|
|
extern u32 gGsFlagsShifts[4];
|
|
extern void* gItemIcons[0x82];
|
|
extern u8 gItemAgeReqs[];
|
|
extern u8 gItemSlots[56];
|
|
extern void (*gSceneCmdHandlers[SCENE_CMD_ID_MAX])(PlayState*, SceneCmd*);
|
|
extern s16 gLinkObjectIds[2];
|
|
extern u32 gObjectTableSize;
|
|
extern RomFile gObjectTable[OBJECT_ID_MAX];
|
|
extern EntranceInfo gEntranceTable[1556];
|
|
extern SceneTableEntry gSceneTable[SCENE_ID_MAX];
|
|
extern u16 gSramSlotOffsets[];
|
|
// 4 16-colors palettes
|
|
extern u64 gMojiFontTLUTs[4][4]; // original name: "moji_tlut"
|
|
extern u64 gMojiFontTex[]; // original name: "font_ff"
|
|
extern KaleidoMgrOverlay gKaleidoMgrOverlayTable[KALEIDO_OVL_MAX];
|
|
extern KaleidoMgrOverlay* gKaleidoMgrCurOvl;
|
|
extern u8 gBossMarkState;
|
|
extern void* D_8012D1F0;
|
|
extern s32 gScreenWidth;
|
|
extern s32 gScreenHeight;
|
|
extern Mtx gMtxClear;
|
|
extern MtxF gMtxFClear;
|
|
extern u32 gIsCtrlr2Valid;
|
|
extern vu32 gIrqMgrResetStatus;
|
|
extern volatile OSTime gIrqMgrRetraceTime;
|
|
extern s16* gWaveSamples[9];
|
|
extern f32 gBendPitchOneOctaveFrequencies[256];
|
|
extern f32 gBendPitchTwoSemitonesFrequencies[256];
|
|
extern f32 gNoteFrequencies[];
|
|
extern u8 gDefaultShortNoteVelocityTable[16];
|
|
extern u8 gDefaultShortNoteGateTimeTable[16];
|
|
extern AdsrEnvelope gDefaultEnvelope[4];
|
|
extern NoteSubEu gZeroNoteSub;
|
|
extern NoteSubEu gDefaultNoteSub;
|
|
extern u16 gHeadsetPanQuantization[64];
|
|
extern s16 D_8012FBA8[];
|
|
extern f32 gHeadsetPanVolume[128];
|
|
extern f32 gStereoPanVolume[128];
|
|
extern f32 gDefaultPanVolume[128];
|
|
extern s16 sLowPassFilterData[16 * 8];
|
|
extern s16 sHighPassFilterData[15 * 8];
|
|
extern s32 gAudioContextInitalized;
|
|
extern u8 gIsLargeSoundBank[7];
|
|
extern u8 gChannelsPerBank[4][7];
|
|
extern u8 gUsedChannelsPerBank[4][7];
|
|
extern u8 gMorphaTransposeTable[16];
|
|
extern u8* gFrogsSongPtr;
|
|
extern OcarinaNote* gScarecrowCustomSongPtr;
|
|
extern u8* gScarecrowSpawnSongPtr;
|
|
extern OcarinaSongInfo gOcarinaSongNotes[];
|
|
extern SoundParams* gSoundParams[7];
|
|
extern char D_80133390[];
|
|
extern char D_80133398[];
|
|
extern SoundBankEntry* gSoundBanks[7];
|
|
extern u8 gSfxChannelLayout;
|
|
extern Vec3f D_801333D4;
|
|
extern f32 D_801333E0;
|
|
extern s8 D_801333E8;
|
|
extern u8 D_801333F0;
|
|
extern u8 gAudioSfxSwapOff;
|
|
extern u8 D_80133408;
|
|
extern u8 D_8013340C;
|
|
extern u8 gAudioSpecId;
|
|
extern u8 D_80133418;
|
|
extern AudioSpec gAudioSpecs[18];
|
|
extern s32 gOverlayLogSeverity;
|
|
extern s32 gSystemArenaLogSeverity;
|
|
extern u8 __osPfsInodeCacheBank;
|
|
extern s32 __osPfsLastChannel;
|
|
extern u8 gWalkSpeedToggle1;
|
|
extern u8 gWalkSpeedToggle2;
|
|
extern f32 iceTrapScale;
|
|
|
|
extern const s16 D_8014A6C0[];
|
|
#define gTatumsPerBeat (D_8014A6C0[1])
|
|
extern const AudioContextInitSizes D_8014A6C4;
|
|
extern s16 gOcarinaSongItemMap[];
|
|
extern u8 D_80155F50[];
|
|
extern u8 D_80157580[];
|
|
extern u8 D_801579A0[];
|
|
extern u64 gJpegUCodeData[];
|
|
|
|
extern SaveContext gSaveContext;
|
|
extern GameInfo* gGameInfo;
|
|
extern u16 D_8015FCC0;
|
|
extern u16 D_8015FCC2;
|
|
extern u16 D_8015FCC4;
|
|
extern u8 D_8015FCC8;
|
|
extern u8 gCustomLensFlareOn;
|
|
extern Vec3f gCustomLensFlarePos;
|
|
extern s16 gLensFlareScale;
|
|
extern f32 gLensFlareColorIntensity;
|
|
extern s16 gLensFlareScreenFillAlpha;
|
|
extern LightningStrike gLightningStrike;
|
|
extern MapData* gMapData;
|
|
extern f32 gBossMarkScale;
|
|
extern PauseMapMarksData* gLoadedPauseMarkDataTable;
|
|
extern s32 gTrnsnUnkState;
|
|
extern Color_RGBA8_u32 D_801614B0;
|
|
extern PreNmiBuff* gAppNmiBufferPtr;
|
|
extern SchedContext gSchedContext;
|
|
extern PadMgr gPadMgr;
|
|
extern uintptr_t gSegments[NUM_SEGMENTS];
|
|
extern volatile OSTime D_8016A520;
|
|
extern volatile OSTime D_8016A528;
|
|
extern volatile OSTime D_8016A530;
|
|
extern volatile OSTime D_8016A538;
|
|
extern volatile OSTime D_8016A540;
|
|
extern volatile OSTime D_8016A548;
|
|
extern volatile OSTime D_8016A550;
|
|
extern volatile OSTime D_8016A558;
|
|
extern volatile OSTime gRSPAudioTotalTime;
|
|
extern volatile OSTime gRSPGFXTotalTime;
|
|
extern volatile OSTime gRSPOtherTotalTime;
|
|
extern volatile OSTime gRDPTotalTime;
|
|
extern FaultThreadStruct gFaultStruct;
|
|
|
|
extern ActiveSound gActiveSounds[7][MAX_CHANNELS_PER_BANK]; // total size = 0xA8
|
|
extern u8 gSoundBankMuted[];
|
|
extern u8 D_801333F0;
|
|
extern u8 gAudioSfxSwapOff;
|
|
extern u16 gAudioSfxSwapSource[10];
|
|
extern u16 gAudioSfxSwapTarget[10];
|
|
extern u8 gAudioSfxSwapMode[10];
|
|
extern unk_D_8016E750 D_8016E750[4];
|
|
extern AudioContext gAudioContext;
|
|
extern void(*D_801755D0)(void);
|
|
|
|
extern u32 __osMalloc_FreeBlockTest_Enable;
|
|
extern Arena gSystemArena;
|
|
extern OSPifRam __osPifInternalBuff;
|
|
extern u8 __osContLastPoll;
|
|
extern u8 __osMaxControllers;
|
|
extern __OSInode __osPfsInodeCache;
|
|
extern OSPifRam gPifMempakBuf;
|
|
extern u16 gZBuffer[SCREEN_HEIGHT][SCREEN_WIDTH]; // 0x25800 bytes
|
|
extern u64 gGfxSPTaskOutputBuffer[0x3000]; // 0x18000 bytes
|
|
extern u8 gGfxSPTaskYieldBuffer[OS_YIELD_DATA_SIZE]; // 0xC00 bytes
|
|
extern u8 gGfxSPTaskStack[0x400]; // 0x400 bytes
|
|
extern GfxPool gGfxPools[2]; // 0x24820 bytes
|
|
extern u8* gAudioHeap;
|
|
extern u8* gSystemHeap;
|
|
|
|
#ifdef __cplusplus
|
|
};
|
|
#endif
|
|
|
|
#endif
|