MCPcopy Create free account
hub / github.com/TASEmulators/fceux / FCEUI_CheatSearchEnd

Function FCEUI_CheatSearchEnd

src/cheat.cpp:785–848  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

783}
784
785void FCEUI_CheatSearchEnd(int type, uint8 v1, uint8 v2)
786{
787 uint32 x;
788
789 if(!CheatComp)
790 {
791 if(!InitCheatComp())
792 {
793 CheatMemErr();
794 return;
795 }
796 }
797
798 switch (type)
799 {
800 default:
801 case FCEU_SEARCH_SPECIFIC_CHANGE: // Change to a specific value
802 for (x = 0; x < 0x10000; ++x)
803 if (!(CheatComp[x] & CHEATC_NOSHOW) && (CheatComp[x] != v1 || CheatRPtrs[x >> 10][x] != v2))
804 CheatComp[x] |= CHEATC_EXCLUDED;
805 break;
806 case FCEU_SEARCH_RELATIVE_CHANGE: // Search for relative change (between values).
807 for (x = 0; x < 0x10000; x++)
808 if (!(CheatComp[x] & CHEATC_NOSHOW) && (CheatComp[x] != v1 || CAbs(CheatComp[x] - CheatRPtrs[x >> 10][x]) != v2))
809 CheatComp[x] |= CHEATC_EXCLUDED;
810 break;
811 case FCEU_SEARCH_PUERLY_RELATIVE_CHANGE: // Purely relative change.
812 for (x = 0x000; x<0x10000; x++)
813 if (!(CheatComp[x] & CHEATC_NOSHOW) && CAbs(CheatComp[x] - CheatRPtrs[x >> 10][x]) != v2)
814 CheatComp[x] |= CHEATC_EXCLUDED;
815 break;
816 case FCEU_SEARCH_ANY_CHANGE: // Any change.
817 for (x = 0x000; x < 0x10000; x++)
818 if (!(CheatComp[x] & CHEATC_NOSHOW) && CheatComp[x] == CheatRPtrs[x >> 10][x])
819 CheatComp[x] |= CHEATC_EXCLUDED;
820 break;
821 case FCEU_SEARCH_NEWVAL_KNOWN: // new value = known
822 for (x = 0x000; x < 0x10000; x++)
823 if (!(CheatComp[x] & CHEATC_NOSHOW) && CheatRPtrs[x >> 10][x] != v1)
824 CheatComp[x] |= CHEATC_EXCLUDED;
825 break;
826 case FCEU_SEARCH_NEWVAL_GT: // new value greater than
827 for (x = 0x000; x < 0x10000; x++)
828 if (!(CheatComp[x] & CHEATC_NOSHOW) && CheatComp[x] >= CheatRPtrs[x >> 10][x])
829 CheatComp[x] |= CHEATC_EXCLUDED;
830 break;
831 case FCEU_SEARCH_NEWVAL_LT: // new value less than
832 for (x = 0x000; x < 0x10000; x++)
833 if (!(CheatComp[x] & CHEATC_NOSHOW) && CheatComp[x] <= CheatRPtrs[x >> 10][x])
834 CheatComp[x] |= CHEATC_EXCLUDED;
835 break;
836 case FCEU_SEARCH_NEWVAL_GT_KNOWN: // new value greater than by known value
837 for (x = 0x000; x < 0x10000; x++)
838 if (!(CheatComp[x] & CHEATC_NOSHOW) && CheatRPtrs[x >> 10][x] - CheatComp[x] != v2)
839 CheatComp[x] |= CHEATC_EXCLUDED;
840 break;
841 case FCEU_SEARCH_NEWVAL_LT_KNOWN: // new value less than by known value
842 for (x = 0x000; x < 0x10000; x++)

Callers 12

CheatConsoleCallBFunction · 0.85
knownValueCallbackMethod · 0.85
equalValueCallbackMethod · 0.85
notEqualValueCallbackMethod · 0.85
lessThanValueCallbackMethod · 0.85
cheatSearchKnownFunction · 0.85
cheatSearchEqualFunction · 0.85
cheatSearchNotEqualFunction · 0.85
cheatSearchGreaterThanFunction · 0.85
cheatSearchLessThanFunction · 0.85
DoSearchFunction · 0.85

Calls 3

InitCheatCompFunction · 0.85
CheatMemErrFunction · 0.85
CAbsFunction · 0.85

Tested by

no test coverage detected