if (nFireButtons == 4 && (BurnDrvGetHardwareCode() & HARDWARE_PUBLIC_MASK) == HARDWARE_SNK_NEOGEO)
if (nFireButtons > 5) {// Create A1+B1 macro pgi->nInput = GIT_MACRO_AUTO; pgi->nType = BIT_DIGITAL; pgi->Macro.nMode = 0; sprintf(pgi->Macro.szName, "P%i A1+B1", nPlayer + 1); BurnDrvGetInputInfo(&bii, nPunchInputs[nPlayer][0]); pgi->Macro.pVal[0] = bii.pVal; pgi->Macro.nVal[0] = 1; BurnDrvGetInputInfo(&bii, nKickInputs[nPlayer][0]); pgi->Macro.pVal[1] = bii.pVal; pgi->Macro.nVal[1] = 1; nMacroCount++; pgi++;// Create A2+B2 macro pgi->nInput = GIT_MACRO_AUTO; pgi->nType = BIT_DIGITAL; pgi->Macro.nMode = 0; sprintf(pgi->Macro.szName, "P%i A2+B2", nPlayer + 1); BurnDrvGetInputInfo(&bii, nPunchInputs[nPlayer][1]); pgi->Macro.pVal[0] = bii.pVal; pgi->Macro.nVal[0] = 1; BurnDrvGetInputInfo(&bii, nKickInputs[nPlayer][1]); pgi->Macro.pVal[1] = bii.pVal; pgi->Macro.nVal[1] = 1; nMacroCount++; pgi++;// Create A3+B3 macro pgi->nInput = GIT_MACRO_AUTO; pgi->nType = BIT_DIGITAL; pgi->Macro.nMode = 0; sprintf(pgi->Macro.szName, "P%i A3+B3", nPlayer + 1); BurnDrvGetInputInfo(&bii, nPunchInputs[nPlayer][2]); pgi->Macro.pVal[0] = bii.pVal; pgi->Macro.nVal[0] = 1; BurnDrvGetInputInfo(&bii, nKickInputs[nPlayer][2]); pgi->Macro.pVal[1] = bii.pVal; pgi->Macro.nVal[1] = 1; nMacroCount++; pgi++; }