summaryrefslogtreecommitdiff
path: root/soh/include/variables.h
blob: 27ad4584d247d62740ecc8b81c4e31e30e308839 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
#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 const char gBuildVersion[];
	extern u16 gBuildVersionMajor;
	extern u16 gBuildVersionMinor;
	extern u16 gBuildVersionPatch;
	extern const char gGitBranch[];
    extern const char gGitCommitHash[];
	extern u8 gGitCommitTag[];
	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 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[PLAYER_MODELGROUP_MAX][PLAYER_MODELGROUPENTRY_MAX];
	extern Gfx* gPlayerLeftHandBgsDLs[];
	extern Gfx* gPlayerLeftHandOpenDLs[];
	extern Gfx* gPlayerLeftHandClosedDLs[];
	extern Gfx* gPlayerLeftHandBoomerangDLs[];
	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 u32 gUpgradeNegMasks[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 gSlotAgeReqs[];
	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[ENTR_MAX];
	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* gDebugCutsceneScript;
	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 gSfxDefaultPos;
	extern f32 gSfxDefaultFreqAndVolScale;
	extern s8 gSfxDefaultReverb;
	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 f32 triforcePieceScale;
	extern f32 mysteryItemScale;
	
	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 gVisMonoColor;
	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 ActiveSequence gActiveSeqs[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;
	extern GameState* gGameState;

#ifdef __cplusplus
};
#endif

#endif