mirror of
https://github.com/zeldaret/tp
synced 2026-08-19 13:54:02 -04:00
some more wii tests/improvements (#2512)
* some more wii tests/improvements * merge Z2AudioCS changes
This commit is contained in:
@@ -5,13 +5,156 @@
|
||||
|
||||
#include "SSystem/SComponent/c_API_controller_pad.h"
|
||||
#include "m_Do/m_Do_controller_pad.h"
|
||||
#include "global.h"
|
||||
|
||||
#if PLATFORM_WII
|
||||
#include "m_Do/m_Re_controller_pad.h"
|
||||
#endif
|
||||
|
||||
/* 8026328C-802632AC 25DBCC 0020+00 0/0 3/3 0/0 .text cAPICPad_recalibrate__Fv */
|
||||
void cAPICPad_recalibrate() {
|
||||
mDoCPd_c::recalibrate();
|
||||
|
||||
#if PLATFORM_WII
|
||||
mReCPd::stopMoter();
|
||||
#endif
|
||||
}
|
||||
|
||||
/* 802632AC-802632C8 25DBEC 001C+00 0/0 3/3 1/1 .text cAPICPad_ANY_BUTTON__FUl */
|
||||
u32 cAPICPad_ANY_BUTTON(u32 portNo) {
|
||||
return mDoCPd_c::getTrig(portNo) & (PAD_BUTTON_A | PAD_BUTTON_B | PAD_BUTTON_START);
|
||||
}
|
||||
|
||||
#if PLATFORM_WII
|
||||
u32 cAPICPad_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHold(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_Z_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldUp(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_R_BUTTON(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_L_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldZ1(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_A_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldA(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_B_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldB(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_X_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldRight(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_Y_BUTTON(u32 i_padNo) {
|
||||
return mReCPd::getHoldLeft(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrig(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_Z_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigUp(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_R_TRIGGER(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_UP_TRIGGER(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_DOWN_TRIGGER(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_LEFT_TRIGGER(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_RIGHT_TRIGGER(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 cAPICPad_L_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigZ1(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_A_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigA(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_B_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigB(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_X_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigRight(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_Y_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigLeft(i_padNo);
|
||||
}
|
||||
|
||||
u32 cAPICPad_START_TRIGGER(u32 i_padNo) {
|
||||
return mReCPd::getTrigStart(i_padNo);
|
||||
}
|
||||
|
||||
f32 cAPICPad_X_STICK(u32 i_padNo) {
|
||||
return mReCPd::getPad(i_padNo).field_0x4[0].ex_status.fs.stick.x;
|
||||
}
|
||||
|
||||
f32 cAPICPad_X_STICK_3D(u32 i_padNo) {
|
||||
return mReCPd::getPad(i_padNo).m_stick3D;
|
||||
}
|
||||
|
||||
f32 cAPICPad_Y_STICK(u32 i_padNo) {
|
||||
return mReCPd::getPad(i_padNo).field_0x4[0].ex_status.fs.stick.y;
|
||||
}
|
||||
|
||||
f32 cAPICPad_VALUE_STICK(u32 i_padNo) {
|
||||
return mReCPd::getPad(i_padNo).m_stickValue;
|
||||
}
|
||||
|
||||
s16 cAPICPad_ANGLE_STICK(u32 i_padNo) {
|
||||
return mReCPd::getPad(i_padNo).m_stickAngle;
|
||||
}
|
||||
|
||||
s16 cAPICPad_ANGLE_STICK_3D(u32 i_padNo) {
|
||||
return mReCPd::getFSStickAngle3DRev(i_padNo);
|
||||
}
|
||||
|
||||
f32 cAPICPad_X_SUBSTICK(u32 i_padNo) {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
f32 cAPICPad_Y_SUBSTICK(u32 i_padNo) {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
f32 cAPICPad_VALUE_SUBSTICK(u32 i_padNo) {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
s16 cAPICPad_ANGLE_SUBSTICK(u32 i_padNo) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
f32 cAPICPad_L_ANALOG(u32 i_padNo) {
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
f32 cAPICPad_R_ANALOG(u32 i_padNo) {
|
||||
return 0.0f;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//
|
||||
|
||||
#include "Z2AudioLib/Z2LinkMgr.h"
|
||||
#include "Z2AudioCSD\Z2AudioCS.h"
|
||||
#include "Z2AudioLib\Z2AudioCS.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
|
||||
/* 802C321C-802C3220 2BDB5C 0004+00 0/0 1/1 0/0 .text setLinkGroupInfo__14Z2CreatureLinkFUc */
|
||||
|
||||
@@ -4173,12 +4173,23 @@ static fopAc_ac_c* daAlink_searchPortal(fopAc_ac_c* i_actor, void* i_data) {
|
||||
|
||||
/* 8011F658-8011F7D8 119F98 0180+00 1/1 0/0 0/0 .text checkAcceptWarp__9daAlink_cFv */
|
||||
bool daAlink_c::checkAcceptWarp() {
|
||||
#if VERSION != VERSION_WII_USA_R0
|
||||
cM3dGPla plane;
|
||||
#endif
|
||||
|
||||
if (mLinkAcch.ChkGroundHit() && !checkModeFlg(MODE_PLAYER_FLY) &&
|
||||
!checkNoResetFlg0(FLG0_UNDERWATER))
|
||||
if (mLinkAcch.ChkGroundHit() && !checkModeFlg(MODE_PLAYER_FLY)
|
||||
#if VERSION != VERSION_WII_USA_R0
|
||||
&& !checkNoResetFlg0(FLG0_UNDERWATER)
|
||||
#endif
|
||||
)
|
||||
{
|
||||
if (!getSlidePolygon(&plane) && !checkForestOldCentury()) {
|
||||
if (
|
||||
#if VERSION != VERSION_WII_USA_R0
|
||||
!getSlidePolygon(&plane) &&
|
||||
#endif
|
||||
!checkForestOldCentury()
|
||||
)
|
||||
{
|
||||
if (checkMidnaRide() || ((daMidna_c*)getMidnaActor())->checkPortalObjRide()) {
|
||||
if ((checkField() || checkCastleTown()) && !checkStageName("R_SP161")) {
|
||||
if ((checkWolf() && (checkModeFlg(MODE_UNK_1000) ||
|
||||
|
||||
+203
-9
@@ -1,5 +1,12 @@
|
||||
#include "d/d_home_button.h"
|
||||
#include "JSystem/JFramework/JFWDisplay.h"
|
||||
#include "Z2AudioLib/Z2AudioCS.h"
|
||||
#include "Z2AudioLib/Z2AudioMgr.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "m_Do/m_Do_Reset.h"
|
||||
#include "m_Do/m_Do_graphic.h"
|
||||
#include "m_Do/m_Do_lib.h"
|
||||
#include "m_Do/m_Re_controller_pad.h"
|
||||
|
||||
int SECallback(int param_0, int param_1) {
|
||||
if (param_0 == 5) {
|
||||
@@ -11,6 +18,40 @@ int SECallback(int param_0, int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
// NONMATCHING - stack
|
||||
void drawCallback(J2DOrthoGraph& param_0, void* param_1) {
|
||||
Mtx sp8;
|
||||
if (mDoGph_gInf_c::isWide()) {
|
||||
MTXOrtho(sp8, 228.0f, -228.0f, -416.0f, 416.0f, 0.0f, 500.0f);
|
||||
} else {
|
||||
MTXOrtho(sp8, 228.0f, -228.0f, -304.0f, 304.0f, 0.0f, 500.0f);
|
||||
}
|
||||
|
||||
GXSetProjection(sp8, GX_ORTHOGRAPHIC);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxAttrFmt(GX_VTXFMT4, GX_VA_POS, GX_POS_XY, GX_F32, 0);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT4, GX_VA_CLR0, GX_CLR_RGB, GX_RGB8, 0);
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT);
|
||||
GXSetNumChans(1);
|
||||
GXSetNumTexGens(0);
|
||||
GXSetNumTevStages(1);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0);
|
||||
GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR);
|
||||
GXSetBlendMode(GX_BM_NONE, GX_BL_ZERO, GX_BL_ZERO, GX_LO_CLEAR);
|
||||
GXSetZMode(GX_ENABLE, GX_LEQUAL, GX_ENABLE);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXLoadPosMtxImm(g_mDoMtx_identity, 3);
|
||||
GXSetCurrentMtx(3);
|
||||
|
||||
HBMDraw();
|
||||
}
|
||||
|
||||
dHomeButton_c* dHomeButton_c::m_myObj;
|
||||
|
||||
u8 dHomeButton_c::lbl_8053A724;
|
||||
u8 dHomeButton_c::lbl_8053A725;
|
||||
|
||||
void dHomeButton_c::create_(int param_0, void* param_1) {
|
||||
initCursorPos();
|
||||
initHomeButtonInfo(param_0, param_1);
|
||||
@@ -22,34 +63,187 @@ void dHomeButton_c::create_(int param_0, void* param_1) {
|
||||
HBMCreate(&m_info);
|
||||
}
|
||||
|
||||
// NONMATCHING
|
||||
int dHomeButton_c::execute_() {
|
||||
// NONMATCHING
|
||||
if (m_myObj == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
calcCursorPos();
|
||||
|
||||
if (field_0x7c == 0 && !mDoRst::isReset()) {
|
||||
bool var_r30 = false;
|
||||
for (u32 i = 0; i < 4; i++) {
|
||||
if (mReCPd::chkDevTypeValid(i) && mReCPd::getTrigHome(i)) {
|
||||
var_r30 = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (var_r30) {
|
||||
mReCPd::enableDpd(0);
|
||||
Z2AudioCS::disconnect(0);
|
||||
|
||||
HBMSetAdjustFlag(mDoGph_gInf_c::isWide());
|
||||
HBMInit();
|
||||
|
||||
mDoGph_gInf_c::setTickRate(OS_TIMER_CLOCK / 60);
|
||||
field_0x7c = 1;
|
||||
lbl_8053A724 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (field_0x7c) {
|
||||
if (lbl_8053A724 == 0 && mDoRst::isReset()) {
|
||||
HBMStartBlackOut();
|
||||
onReset();
|
||||
}
|
||||
|
||||
if (HBMCalc(&m_controllerData) >= HBM_SELECT_HOMEBTN) {
|
||||
int selectBtn = HBMGetSelectBtnNum();
|
||||
if (selectBtn == HBM_SELECT_BTN1) {
|
||||
mDoRst::onReturnToMenu();
|
||||
onReset();
|
||||
} else if (selectBtn == HBM_SELECT_BTN2) {
|
||||
mDoRst_resetCallBack(-1, NULL);
|
||||
onReset();
|
||||
}
|
||||
|
||||
Z2AudioCS::connect(0);
|
||||
mDoGph_gInf_c::setTickRate(field_0x78);
|
||||
field_0x7c = 0;
|
||||
mReCPd::setExtensionCallback();
|
||||
} else {
|
||||
drawCapture(0xFF, drawCallback, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
return field_0x7c;
|
||||
}
|
||||
|
||||
void dHomeButton_c::initHomeButtonInfo(int param_0, void* param_1) {
|
||||
// NONMATCHING
|
||||
void dHomeButton_c::initHomeButtonInfo(int param_0, void* i_layoutBuf) {
|
||||
m_info.layoutBuf = i_layoutBuf;
|
||||
m_info.spkSeBuf = dComIfG_getObjectRes("HomeBtn", "SpeakerSe.arc");
|
||||
m_info.msgBuf = dComIfG_getObjectRes("HomeBtn", "home.csv");
|
||||
m_info.configBuf = dComIfG_getObjectRes("HomeBtn", "config.txt");
|
||||
m_info.sound_callback = SECallback;
|
||||
m_info.backFlag = 0;
|
||||
m_info.region = param_0;
|
||||
m_info.cursor = 0;
|
||||
|
||||
m_info.adjust.x = 1.3684211f;
|
||||
m_info.adjust.y = 1.0f;
|
||||
m_info.frameDelta = 1.0f;
|
||||
}
|
||||
|
||||
void dHomeButton_c::initCursorPos() {
|
||||
// NONMATCHING
|
||||
for (int i = 0; i < 4; i++) {
|
||||
m_controllerData.wiiCon[i].pos.x = 0.0f;
|
||||
m_controllerData.wiiCon[i].pos.y = 0.0f;
|
||||
m_controllerData.wiiCon[i].use_devtype = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void dHomeButton_c::calcCursorPos() {
|
||||
// NONMATCHING
|
||||
for (u32 i = 0; i < 4; i++) {
|
||||
WPADDeviceType sp8;
|
||||
WPADResult result = WPADProbe(i, &sp8);
|
||||
|
||||
if (result == -2 || result == -3 || result == 0) {
|
||||
m_controllerData.wiiCon[i].kpad = &mReCPd::m_pad[i].field_0x4[0];
|
||||
} else {
|
||||
m_controllerData.wiiCon[i].kpad = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void dHomeButton_c::onReset() {
|
||||
// NONMATCHING
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
lbl_8053A724 = 1;
|
||||
}
|
||||
|
||||
void dHomeButton_c::create(int param_0, void* param_1) {
|
||||
// NONMATCHING
|
||||
m_myObj = new dHomeButton_c();
|
||||
m_myObj->create_(param_0, param_1);
|
||||
}
|
||||
|
||||
int dHomeButton_c::execute() {
|
||||
// NONMATCHING
|
||||
if (m_myObj) {
|
||||
return m_myObj->execute_();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// NONMATCHING
|
||||
void dHomeButton_c::drawCapture(u8 param_0, void (*param_1)(J2DOrthoGraph&, void*), void* param_2) {
|
||||
// NONMATCHING
|
||||
if (lbl_8053A725 == 0) {
|
||||
GXSetTexCopySrc(0, 0, 640, 456);
|
||||
GXSetTexCopyDst(640, 456, (GXTexFmt)mDoGph_gInf_c::m_fullFrameBufferTimg->format, GX_FALSE);
|
||||
GXCopyTex(mDoGph_gInf_c::m_fullFrameBufferTex, GX_FALSE);
|
||||
lbl_8053A725 = 1;
|
||||
}
|
||||
|
||||
JFWDisplay::getManager()->setClearColor(g_clearColor);
|
||||
mDoGph_gInf_c::beginRender();
|
||||
GXSetAlphaUpdate(GX_DISABLE);
|
||||
j3dSys.drawInit();
|
||||
|
||||
J2DOrthoGraph sp30(0.0f, 0.0f, 640.0f, 456.0f, -1.0f, 1.0f);
|
||||
sp30.setOrtho(JGeometry::TBox2<f32>(mDoGph_gInf_c::getMinXF(), mDoGph_gInf_c::getMinYF(),
|
||||
mDoGph_gInf_c::getMinXF() + mDoGph_gInf_c::getWidthF(),
|
||||
mDoGph_gInf_c::getMinYF() + mDoGph_gInf_c::getHeightF()),
|
||||
-1.0f, 1.0f);
|
||||
sp30.setPort();
|
||||
|
||||
dComIfGp_setCurrentGrafPort(&sp30);
|
||||
mDoLib_setResTimgObj(mDoGph_gInf_c::m_fullFrameBufferTimg,
|
||||
&mDoGph_gInf_c::m_fullFrameBufferTexObj, 0, NULL);
|
||||
|
||||
GXLoadTexObj(&mDoGph_gInf_c::m_fullFrameBufferTexObj, GX_TEXMAP0);
|
||||
GXSetNumChans(0);
|
||||
GXSetNumIndStages(0);
|
||||
GXSetNumTexGens(1);
|
||||
GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 60);
|
||||
GXSetNumTevStages(1);
|
||||
|
||||
GXColor sp14 = {0, 0, 0, param_0};
|
||||
GXSetTevColor(GX_TEVREG0, sp14);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_TEXC, GX_CC_A0, GX_CC_ZERO);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetZCompLoc(GX_TRUE);
|
||||
GXSetZMode(GX_DISABLE, GX_ALWAYS, GX_DISABLE);
|
||||
GXSetBlendMode(GX_BM_NONE, GX_BL_SRCALPHA, GX_BL_ONE, GX_LO_CLEAR);
|
||||
GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_OR, GX_ALWAYS, 0);
|
||||
GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, g_clearColor);
|
||||
GXSetFogRangeAdj(GX_DISABLE, 0, NULL);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXSetDither(GX_TRUE);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XY, GX_F32, 0);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_TEX_ST, GX_S8, 0);
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
|
||||
GXPosition2f32(mDoGph_gInf_c::getMinXF(), mDoGph_gInf_c::getMinYF());
|
||||
GXTexCoord2u8(0, 0);
|
||||
|
||||
GXPosition2f32(mDoGph_gInf_c::getMaxXF(), mDoGph_gInf_c::getMinYF());
|
||||
GXTexCoord2u8(1, 0);
|
||||
|
||||
GXPosition2f32(mDoGph_gInf_c::getMaxXF(), mDoGph_gInf_c::getMaxYF());
|
||||
GXTexCoord2u8(1, 1);
|
||||
|
||||
GXPosition2f32(mDoGph_gInf_c::getMinXF(), mDoGph_gInf_c::getMaxYF());
|
||||
GXTexCoord2u8(0, 1);
|
||||
|
||||
if (param_1 != NULL) {
|
||||
param_1(sp30, param_2);
|
||||
}
|
||||
|
||||
JFWDisplay::getManager()->endRender();
|
||||
JFWDisplay::getManager()->setFader(NULL);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,350 @@
|
||||
#include "m_Do/m_Re_controller_pad.h"
|
||||
#include "Z2AudioLib/Z2AudioCS.h"
|
||||
|
||||
mReCPd::Pad mReCPd::m_pad[4];
|
||||
WPADInfo mReCPd::m_pad_info[4];
|
||||
|
||||
void mReCPd::Pad::Acc::clean() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::Acc::changeStts(u32, bool) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::Acc::calcSwingVec() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::Acc::calcSttsRem() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::Acc::calcSttsFs() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::clean() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::cleanOneTime() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::copyRemAcc() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::copyFSAcc() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::cleanTrig() {
|
||||
m_remAcc.m_swing = 0;
|
||||
m_FSAcc.m_swing = 0;
|
||||
|
||||
for (int i = 0; i < 10; i++) {
|
||||
field_0x4[i].trig = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void mReCPd::Pad::cleanHold() {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
field_0x4[i].hold = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void mReCPd::Pad::cleanRelease() {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
field_0x4[i].release = 0;
|
||||
}
|
||||
}
|
||||
|
||||
void mReCPd::Pad::clearUpDown() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpdBox(Vec2*, Vec2*, f32, f32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpdOld() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::enableDpd(u32 param_0) {
|
||||
KPADEnableDPD(param_0);
|
||||
}
|
||||
|
||||
void mReCPd::disableDpd(u32 param_0) {
|
||||
KPADDisableDPD(param_0);
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpd2DPos() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpdRatioPos() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpdPlayCirPos() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::Pad::calcDpdPlayBoxPos() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::onConnect(u32 i_padNo) {
|
||||
m_pad[i_padNo].field_0x1dd4 = 1;
|
||||
m_pad[i_padNo].field_0x1e04 = 1;
|
||||
}
|
||||
|
||||
static void l_mReCPd_extensionCallback(s32 i_padNo, s32 param_1) {
|
||||
Z2AudioCS::extensionProcess(i_padNo, param_1);
|
||||
mReCPd::m_pad[i_padNo].field_0x1dec = param_1;
|
||||
mReCPd::m_pad[i_padNo].field_0x1df0 = 1;
|
||||
}
|
||||
|
||||
void mReCPd::setExtensionCallback() {
|
||||
WPADSetExtensionCallback(0, l_mReCPd_extensionCallback);
|
||||
}
|
||||
|
||||
void mReCPd::onGetInfoAsync(u32 i_padNo) {
|
||||
m_pad[i_padNo].field_0x1ddd = 1;
|
||||
m_pad[i_padNo].field_0x1de0 = 1800;
|
||||
}
|
||||
|
||||
void mReCPd::create() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::startMoterWave(motorWave_t*, u8*, bool) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::startMoterWave(int, u8*, bool) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::stopMoterWave(motorWave_t*) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::stopMoterWave(int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::updateMoterWave() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::stopMoter() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getLowBat(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::setLowBat(u32, int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::onLowBatChk(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::procNoData(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::read() {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::calibrateDist(int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getDpd2DPos(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getDpdRatioPos(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getDpdRatioBoxPos(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::chkDpdOk(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::chkDpdValid(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::chkDpdPosIn(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADAcc(u32, Vec*, int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getAngleXy(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getAngleZy(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADAccValue(u32, int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADAccValueMax(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADAccSpeed(u32, int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADAccSpeedMax(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADFsAccValue(u32, int) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::getKPADFsAccValueMax(u32) {
|
||||
|
||||
}
|
||||
|
||||
s16 mReCPd::getFSStickAngle3DRev(u32) {
|
||||
|
||||
}
|
||||
|
||||
void mReCPd::calcUnderVec(Pad::Acc*, f32) {
|
||||
|
||||
}
|
||||
|
||||
u32 mReCPd::getHoldB(u32 i_padNo) {
|
||||
return m_pad[i_padNo].field_0x4[0].hold & WPAD_BUTTON_B;
|
||||
}
|
||||
|
||||
u32 mReCPd::getHoldMinus(u32 i_padNo) {
|
||||
if (chkSwingBlock(i_padNo)) {
|
||||
return 0;
|
||||
} else {
|
||||
return m_pad[i_padNo].field_0x4[0].hold & WPAD_BUTTON_MINUS;
|
||||
}
|
||||
}
|
||||
|
||||
u32 mReCPd::getHoldPlus(u32 i_padNo) {
|
||||
if (chkSwingBlock(i_padNo)) {
|
||||
return 0;
|
||||
} else {
|
||||
return m_pad[i_padNo].field_0x4[0].hold & WPAD_BUTTON_PLUS;
|
||||
}
|
||||
}
|
||||
|
||||
u32 mReCPd::getHoldZ1(u32 i_padNo) {
|
||||
return m_pad[i_padNo].field_0x4[0].hold & WPAD_BUTTON_Z;
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigB(u32 i_padNo) {
|
||||
return m_pad[i_padNo].field_0x4[0].trig & WPAD_BUTTON_B;
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigMinus(u32 i_padNo) {
|
||||
if (chkSwingBlock(i_padNo)) {
|
||||
return 0;
|
||||
} else {
|
||||
return m_pad[i_padNo].field_0x4[0].trig & WPAD_BUTTON_MINUS;
|
||||
}
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigHome(u32 i_padNo) {
|
||||
if (chkSwingBlock(i_padNo)) {
|
||||
return 0;
|
||||
} else {
|
||||
return m_pad[i_padNo].field_0x4[0].trig & WPAD_BUTTON_HOME;
|
||||
}
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigPlus(u32 i_padNo) {
|
||||
if (chkSwingBlock(i_padNo)) {
|
||||
return 0;
|
||||
} else {
|
||||
return m_pad[i_padNo].field_0x4[0].trig & WPAD_BUTTON_PLUS;
|
||||
}
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigZ1(u32 i_padNo) {
|
||||
return m_pad[i_padNo].field_0x4[0].trig & WPAD_BUTTON_Z;
|
||||
}
|
||||
|
||||
u32 mReCPd::chkSwingBlock(u32 i_padNo) {
|
||||
return m_pad[i_padNo].m_swingBlock > 0;
|
||||
}
|
||||
|
||||
u32 mReCPd::getTrigSwing(u32 i_padNo) {
|
||||
return m_pad[i_padNo].m_remAcc.m_swing;
|
||||
}
|
||||
|
||||
Vec2& mReCPd::getSwingVec(u32 i_padNo) {
|
||||
return m_pad[i_padNo].m_remAcc.m_swingVec;
|
||||
}
|
||||
|
||||
u32 mReCPd::chkSimpleProbe(u32 i_padNo) {
|
||||
if (m_pad[i_padNo].field_0x1dd4 == 0) {
|
||||
return 0;
|
||||
} else if (m_pad[i_padNo].field_0x1dfc + 3 <= 2) {
|
||||
return 0;
|
||||
} else if (m_pad[i_padNo].field_0x1df8 == 0xFD || m_pad[i_padNo].field_0x1df8 == 0xFF) {
|
||||
return 0;
|
||||
} else {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
BOOL mReCPd::chkDevTypeValid(u32 i_padNo) {
|
||||
if (!chkSimpleProbe(i_padNo)) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (m_pad[i_padNo].field_0x1df4 < 20 && m_pad[i_padNo].field_0x1de4 == 0xFF && m_pad[i_padNo].field_0x1de8 != 0) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u32 mReCPd::getFSTrigSwing(u32 i_padNo) {
|
||||
return m_pad[i_padNo].m_FSAcc.m_swing;
|
||||
}
|
||||
|
||||
int mReCPd::m_cal_value;
|
||||
|
||||
void mReCPd::plusCalValue() {
|
||||
m_cal_value++;
|
||||
if (m_cal_value >= 2) {
|
||||
m_cal_value = 2;
|
||||
}
|
||||
}
|
||||
|
||||
void mReCPd::minusCalValue() {
|
||||
m_cal_value--;
|
||||
if (m_cal_value <= -2) {
|
||||
m_cal_value = -2;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user