Files
Project64-Legacy/Cheats.h
rgarciaz80 a40e398a1f Major overhaul to cheats, most processing has been moved to Cheats_Preprocessor
Cheat has received the ability to have Special Option (Address replacement) and Multiple Option (Both Address and Value replacement)
These are internal names for reference only, it will still use _O and .exten (cdb and rds respectively) for the files

The interface for the Cheat Manager also received a slight overhaul, it should better handle input (There were cases that caused crashes) and it takes into account the new formats (To disable/enable the interface buttons appropriately)

Cheat support for Ranges has been dropped, these were never used so I saw no reason to keep it

As always this is a work in progress and issues will be corrected as they are found.
2021-06-17 08:39:32 -05:00

55 lines
1.6 KiB
C

/*
* Project 64 - A Nintendo 64 emulator.
*
* (c) Copyright 2001 zilmar (zilmar@emulation64.com) and
* Jabo (jabo@emulation64.com).
*
* pj64 homepage: www.pj64.net
*
* Permission to use, copy, modify and distribute Project64 in both binary and
* source form, for non-commercial purposes, is hereby granted without fee,
* providing that this license information and copyright notice appear with
* all copies and any derived work.
*
* This software is provided 'as-is', without any express or implied
* warranty. In no event shall the authors be held liable for any damages
* arising from the use of this software.
*
* Project64 is freeware for PERSONAL USE only. Commercial users should
* seek permission of the copyright holders first. Commercial use includes
* charging money for Project64 or software derived from Project64.
*
* The copyright holders request that bug fixes and improvements to the code
* should be forwarded to them so if they want them.
*
*/
#ifndef CHEATS
#define CHEATS
#define MaxGSEntries 100
#define MaxCheats 500
typedef struct {
DWORD Command;
WORD Value;
} GAMESHARK_CODE;
typedef struct {
GAMESHARK_CODE Code[MaxGSEntries];
} CHEAT_CODES;
void ChangeRomCheats ( HWND hParent );
void CloseCheatWindow ( void );
void DisableAllCheats ( void );
void ApplyCheats ( void );
void LoadCheats ( void );
void ManageCheats ( HWND hParent );
void ApplyGSButton (void);
int ApplyCheatEntry (GAMESHARK_CODE * Code, BOOL Execute );
LRESULT CALLBACK Cheat_Proc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
// *** Add in Build 53
extern HWND hManageWindow;
#endif