Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_s_play.h
Go to the documentation of this file.
1#ifndef D_S_D_S_PLAY_H
2#define D_S_D_S_PLAY_H
3
4#include "d/d_s_play_env.h"
5#include "f_op/f_op_scene.h"
6#include "m_Do/m_Do_hostIO.h"
8
11
12class dScnPly_reg_childHIO_c : public JORReflexible {
13public:
14#if ENABLE_REGHIO
17
18 void genMessage(JORMContext*);
19#endif
20
21 /* 0x04 */ f32 mFloatReg[30];
22 /* 0x7C */ s16 mShortReg[10];
23};
24
25class dScnPly_reg_HIO_c : public JORReflexible {
26public:
27 virtual ~dScnPly_reg_HIO_c() {}
28
29#if ENABLE_REGHIO
30 void genMessage(JORMContext*);
31
32 /* 0x4 */ s8 id;
34#else
35 /* 0x4 */ u8 field_0x4[0x8 - 0x4];
36#endif
37};
38
40public:
42
43 void genMessage(JORMContext*);
44};
45
46class dScnPly_env_HIO_c : public JORReflexible {
47public:
48 virtual ~dScnPly_env_HIO_c() {}
49 void genMessage(JORMContext*);
50
51 /* 0x04 */ s8 field_0x4;
54};
55
56class dScnPly_preset_HIO_c : public JORReflexible {
57public:
59 void exePreset();
60
61 virtual void listenPropertyEvent(const JORPropertyEvent*);
62 virtual void genMessage(JORMContext*);
64
65 /* 0x0004 */ s8 field_0x4;
66 /* 0x0005 */ u8 field_0x5;
67 /* 0x0006 */ u8 mPresetData[10000];
68 /* 0x2716 */ u8 field_0x2716;
69 /* 0x2717 */ u8 field_0x2717;
70 /* 0x2718 */ u8 filename_buf[100];
71};
72
73class dScnPly_c : public scene_class {
74public:
75 s8 calcPauseTimer();
76 bool resetGame();
77 void offReset();
78
79 #if VERSION == VERSION_SHIELD_DEBUG
80 static s8 isPause() { return pauseTimer | nextPauseTimer; }
81 #else
82 static s8 isPause() { return pauseTimer; }
83 #endif
84 static void setPauseTimer(s8 time) { nextPauseTimer = time; }
85
86 static s8 pauseTimer;
87 static s8 nextPauseTimer;
88
89 #if DEBUG
90 void onDebugPause() {
91 debugPause = TRUE;
92 }
93
95 debugPause = FALSE;
96 }
97
98 static u8 debugPause;
99 #endif
100
104 /* 0x1D4 */ u8 field_0x1d4;
105};
106
109
110#if DEBUG
112#endif
113
122#if ENABLE_REGHIO
123// Morita
124#define TREG_F(i) g_regHIO.mChildReg[0].mFloatReg[i]
125#define TREG_S(i) g_regHIO.mChildReg[0].mShortReg[i]
126
127// Matsutani
128#define DREG_F(i) g_regHIO.mChildReg[1].mFloatReg[i]
129#define DREG_S(i) g_regHIO.mChildReg[1].mShortReg[i]
130
131// Iwawaki
132#define IREG_F(i) g_regHIO.mChildReg[2].mFloatReg[i]
133#define IREG_S(i) g_regHIO.mChildReg[2].mShortReg[i]
134
135// Sasa
136#define SREG_F(i) g_regHIO.mChildReg[3].mFloatReg[i]
137#define SREG_S(i) g_regHIO.mChildReg[3].mShortReg[i]
138
139// Umemiya
140#define UREG_F(i) g_regHIO.mChildReg[4].mFloatReg[i]
141#define UREG_S(i) g_regHIO.mChildReg[4].mShortReg[i]
142
143// Ogawa
144#define OREG_F(i) g_regHIO.mChildReg[5].mFloatReg[i]
145#define OREG_S(i) g_regHIO.mChildReg[5].mShortReg[i]
146
147// Sakaguchi
148#define YREG_F(i) g_regHIO.mChildReg[6].mFloatReg[i]
149#define YREG_S(i) g_regHIO.mChildReg[6].mShortReg[i]
150
151// Sakai
152#define KREG_F(i) g_regHIO.mChildReg[7].mFloatReg[i]
153#define KREG_S(i) g_regHIO.mChildReg[7].mShortReg[i]
154
155// Hara
156#define BREG_F(i) g_regHIO.mChildReg[8].mFloatReg[i]
157#define BREG_S(i) g_regHIO.mChildReg[8].mShortReg[i]
158
159// Sumiyoshi
160#define MREG_F(i) g_regHIO.mChildReg[9].mFloatReg[i]
161#define MREG_S(i) g_regHIO.mChildReg[9].mShortReg[i]
162
163// Takeshita
164#define AREG_F(i) g_regHIO.mChildReg[10].mFloatReg[i]
165#define AREG_S(i) g_regHIO.mChildReg[10].mShortReg[i]
166
167// Yoshida
168#define PREG_F(i) g_regHIO.mChildReg[11].mFloatReg[i]
169#define PREG_S(i) g_regHIO.mChildReg[11].mShortReg[i]
170
171// Noma
172#define NREG_F(i) g_regHIO.mChildReg[12].mFloatReg[i]
173#define NREG_S(i) g_regHIO.mChildReg[12].mShortReg[i]
174
175// Nishiwaki
176#define WREG_F(i) g_regHIO.mChildReg[13].mFloatReg[i]
177#define WREG_S(i) g_regHIO.mChildReg[13].mShortReg[i]
178
179// Masaro
180#define JREG_F(i) g_regHIO.mChildReg[14].mFloatReg[i]
181#define JREG_S(i) g_regHIO.mChildReg[14].mShortReg[i]
182
183// Hayakawa
184#define HREG_F(i) g_regHIO.mChildReg[15].mFloatReg[i]
185#define HREG_S(i) g_regHIO.mChildReg[15].mShortReg[i]
186
187// Sadamoto
188#define VREG_F(i) g_regHIO.mChildReg[16].mFloatReg[i]
189#define VREG_S(i) g_regHIO.mChildReg[16].mShortReg[i]
190
191// Nishikawa
192#define XREG_F(i) g_regHIO.mChildReg[17].mFloatReg[i]
193#define XREG_S(i) g_regHIO.mChildReg[17].mShortReg[i]
194
195// Suzuki
196#define ZREG_F(i) g_regHIO.mChildReg[18].mFloatReg[i]
197#define ZREG_S(i) g_regHIO.mChildReg[18].mShortReg[i]
198
199// Nakanishi
200#define nREG_F(i) g_regHIO.mChildReg[19].mFloatReg[i]
201#define nREG_S(i) g_regHIO.mChildReg[19].mShortReg[i]
202
203// Kuwajima
204#define kREG_F(i) g_regHIO.mChildReg[20].mFloatReg[i]
205#define kREG_S(i) g_regHIO.mChildReg[20].mShortReg[i]
206
207// Okajima
208#define oREG_F(i) g_regHIO.mChildReg[21].mFloatReg[i]
209#define oREG_S(i) g_regHIO.mChildReg[21].mShortReg[i]
210
211// Yamazaki
212#define yREG_F(i) g_regHIO.mChildReg[22].mFloatReg[i]
213#define yREG_S(i) g_regHIO.mChildReg[22].mShortReg[i]
214
215// Ashida
216#define aREG_F(i) g_regHIO.mChildReg[23].mFloatReg[i]
217#define aREG_S(i) g_regHIO.mChildReg[23].mShortReg[i]
218
219// Okada
220#define hREG_F(i) g_regHIO.mChildReg[24].mFloatReg[i]
221#define hREG_S(i) g_regHIO.mChildReg[24].mShortReg[i]
222
223// Takahashi
224#define tREG_F(i) g_regHIO.mChildReg[25].mFloatReg[i]
225#define tREG_S(i) g_regHIO.mChildReg[25].mShortReg[i]
226#else
227// Morita
228#define TREG_F(i) (0.0f)
229#define TREG_S(i) (0)
230
231// Matsutani
232#define DREG_F(i) (0.0f)
233#define DREG_S(i) (0)
234
235// Iwawaki
236#define IREG_F(i) (0.0f)
237#define IREG_S(i) (0)
238
239// Sasa
240#define SREG_F(i) (0.0f)
241#define SREG_S(i) (0)
242
243// Umemiya
244#define UREG_F(i) (0.0f)
245#define UREG_S(i) (0)
246
247// Ogawa
248#define OREG_F(i) (0.0f)
249#define OREG_S(i) (0)
250
251// Sakaguchi
252#define YREG_F(i) (0.0f)
253#define YREG_S(i) (0)
254
255// Sakai
256#define KREG_F(i) (0.0f)
257#define KREG_S(i) (0)
258
259// Hara
260#define BREG_F(i) (0.0f)
261#define BREG_S(i) (0)
262
263// Sumiyoshi
264#define MREG_F(i) (0.0f)
265#define MREG_S(i) (0)
266
267// Takeshita
268#define AREG_F(i) (0.0f)
269#define AREG_S(i) (0)
270
271// Yoshida
272#define PREG_F(i) (0.0f)
273#define PREG_S(i) (0)
274
275// Noma
276#define NREG_F(i) (0.0f)
277#define NREG_S(i) (0)
278
279// Nishiwaki
280#define WREG_F(i) (0.0f)
281#define WREG_S(i) (0)
282
283// Masaro
284#define JREG_F(i) (0.0f)
285#define JREG_S(i) (0)
286
287// Hayakawa
288#define HREG_F(i) (0.0f)
289#define HREG_S(i) (0)
290
291// Sadamoto
292#define VREG_F(i) (0.0f)
293#define VREG_S(i) (0)
294
295// Nishikawa
296#define XREG_F(i) (0.0f)
297#define XREG_S(i) (0)
298
299// Suzuki
300#define ZREG_F(i) (0.0f)
301#define ZREG_S(i) (0)
302
303// Nakanishi
304#define nREG_F(i) (0.0f)
305#define nREG_S(i) (0)
306
307// Kuwajima
308#define kREG_F(i) (0.0f)
309#define kREG_S(i) (0)
310
311// Okajima
312#define oREG_F(i) (0.0f)
313#define oREG_S(i) (0)
314
315// Yamazaki
316#define yREG_F(i) (0.0f)
317#define yREG_S(i) (0)
318
319// Ashida
320#define aREG_F(i) (0.0f)
321#define aREG_S(i) (0)
322
323// Okada
324#define hREG_F(i) (0.0f)
325#define hREG_S(i) (0)
326
327// Takahashi
328#define tREG_F(i) (0.0f)
329#define tREG_S(i) (0)
330#endif
331
332#endif /* D_S_D_S_PLAY_H */
Definition d_s_play.h:73
static s8 isPause()
Definition d_s_play.h:80
static s8 nextPauseTimer
Definition d_s_play.h:87
static void setPauseTimer(s8 time)
Definition d_s_play.h:84
request_of_phase_process_class field_0x1c4
Definition d_s_play.h:101
static u8 debugPause
Definition d_s_play.h:98
void onDebugPause()
Definition d_s_play.h:90
mDoDvdThd_toMainRam_c * sceneCommand
Definition d_s_play.h:102
u8 field_0x1d4
Definition d_s_play.h:104
mDoDvdThd_mountXArchive_c * field_0x1d0
Definition d_s_play.h:103
static s8 pauseTimer
Definition d_s_play.h:86
s8 calcPauseTimer()
Definition d_s_play.cpp:134
void offDebugPause()
Definition d_s_play.h:94
bool resetGame()
Definition d_s_play.cpp:1012
void offReset()
Definition d_s_play.cpp:1045
Definition d_s_play.h:46
dScnPly_env_otherHIO_c mOther
Definition d_s_play.h:52
void genMessage(JORMContext *)
Definition d_s_play.cpp:455
dScnPly_env_debugHIO_c mDebug
Definition d_s_play.h:53
s8 field_0x4
Definition d_s_play.h:51
virtual ~dScnPly_env_HIO_c()
Definition d_s_play.h:48
Definition d_s_play_env.h:55
Definition d_s_play_env.h:4
Definition d_s_play.h:39
virtual ~dScnPly_preLoad_HIO_c()
Definition d_s_play.h:41
void genMessage(JORMContext *)
Definition d_s_play.cpp:126
Definition d_s_play.h:56
u8 mPresetData[10000]
Definition d_s_play.h:67
virtual void genMessage(JORMContext *)
Definition d_s_play.cpp:253
s8 field_0x4
Definition d_s_play.h:65
u8 field_0x2717
Definition d_s_play.h:69
u8 field_0x5
Definition d_s_play.h:66
void exePreset()
Definition d_s_play.cpp:229
u8 filename_buf[100]
Definition d_s_play.h:70
dScnPly_preset_HIO_c()
Definition d_s_play.cpp:221
virtual ~dScnPly_preset_HIO_c()
Definition d_s_play.h:63
virtual void listenPropertyEvent(const JORPropertyEvent *)
Definition d_s_play.cpp:289
u8 field_0x2716
Definition d_s_play.h:68
Definition d_s_play.h:25
dScnPly_reg_childHIO_c mChildReg[26]
Definition d_s_play.h:33
void genMessage(JORMContext *)
Definition d_s_play.cpp:179
s8 id
Definition d_s_play.h:32
u8 field_0x4[0x8 - 0x4]
Definition d_s_play.h:35
virtual ~dScnPly_reg_HIO_c()
Definition d_s_play.h:27
Definition d_s_play.h:12
s16 mShortReg[10]
Definition d_s_play.h:22
f32 mFloatReg[30]
Definition d_s_play.h:21
void genMessage(JORMContext *)
Definition d_s_play.cpp:155
dScnPly_reg_childHIO_c()
Definition d_s_play.cpp:145
virtual ~dScnPly_reg_childHIO_c()
Definition d_s_play.h:16
Definition m_Do_dvd_thread.h:87
Definition m_Do_dvd_thread.h:114
Definition m_Do_hostIO.h:26
Definition f_op_scene.h:20
dScnPly_env_HIO_c g_envHIO
Definition d_s_play.cpp:1363
dScnPly_preset_HIO_c g_presetHIO
Definition d_s_play.cpp:1366
dScnPly_reg_HIO_c g_regHIO
Definition d_s_play.cpp:1361
Definition c_phase.h:19