mirror of
https://github.com/zeldaret/tp
synced 2026-06-04 10:48:57 -04:00
big d_a_alink pass (#214)
* d_a_alink pass1 wip * more d_a_alink work * remove asm * more daalink work * 20% dol code decompiled * fixed some nonmatchings for building * a few daalink functions and labeling some HIO data
This commit is contained in:
@@ -805,6 +805,8 @@ SECTION_SDATA2 static f32 lit_4669 = -1.0f;
|
||||
#ifdef NONMATCHING
|
||||
// matches besides floats
|
||||
void dEvDtStaff_c::specialProcSound() {
|
||||
SoundData* data = (SoundData*)&mData;
|
||||
|
||||
int staffId = i_dComIfGp_evmng_getMyStaffId("SOUND", NULL, 0);
|
||||
if (staffId == -1) {
|
||||
return;
|
||||
@@ -843,7 +845,7 @@ void dEvDtStaff_c::specialProcSound() {
|
||||
specialProc_WaitProc(staffId);
|
||||
break;
|
||||
case 'NOMS':
|
||||
if (mSoundWait <= dDemo_c::getFrameNoMsg()) {
|
||||
if (data->timer <= dDemo_c::getFrameNoMsg()) {
|
||||
dComIfGp_evmng_cutEnd(staffId);
|
||||
}
|
||||
break;
|
||||
@@ -876,9 +878,9 @@ SECTION_DEAD static char const* const stringBase_80379E65 = "SCALE";
|
||||
|
||||
/* 80044CB8-80044EE4 03F5F8 022C+00 1/1 0/0 0/0 .text specialProcCreate__12dEvDtStaff_cFv
|
||||
*/
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
void dEvDtStaff_c::specialProcCreate() {
|
||||
// regalloc
|
||||
char* name;
|
||||
u32 arg;
|
||||
cXyz pos;
|
||||
@@ -1097,12 +1099,12 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
dStage_MapEvent_dt_c* mapEvent = dEvt_control_c::searchMapEventData(data->unk);
|
||||
if (mapEvent != NULL) {
|
||||
if (mapEvent->mType == 0) {
|
||||
data->mSoundWait = mapEvent->field_0x14;
|
||||
data->unk2 = mapEvent->field_0x14;
|
||||
} else {
|
||||
data->mSoundWait = -1;
|
||||
data->unk2 = -1;
|
||||
}
|
||||
} else {
|
||||
data->mSoundWait = 0;
|
||||
data->unk2 = 0;
|
||||
}
|
||||
break;
|
||||
case 'CAST':
|
||||
@@ -1176,9 +1178,9 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
case 'NEXT':
|
||||
break;
|
||||
case 'VIBR':
|
||||
if (data->mSoundWait > 0) {
|
||||
data->mSoundWait--;
|
||||
if (data->mSoundWait == 0) {
|
||||
if (data->unk2 > 0) {
|
||||
data->unk2--;
|
||||
if (data->unk2 == 0) {
|
||||
dComIfGp_getVibration().StopQuake(0x1F);
|
||||
}
|
||||
} else {
|
||||
@@ -1197,8 +1199,8 @@ void dEvDtStaff_c::specialProcDirector() {
|
||||
}
|
||||
break;
|
||||
case 'MAPT':
|
||||
data->mSoundWait--;
|
||||
if (data->mSoundWait <= 0) {
|
||||
data->unk2--;
|
||||
if (data->unk2 <= 0) {
|
||||
dComIfGp_evmng_cutEnd(staffId);
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user