add gens style RAM tools; RAM watch somehow works, but RAM search doesn't work well for some reasons. I hope I'll fix it a little later.

This commit is contained in:
gocha 2009-10-08 07:04:41 +00:00
parent dfeff60615
commit 585cb80257
11 changed files with 3642 additions and 5 deletions

View File

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly
xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<assemblyIdentity
name="FCEUX"
processorArchitecture="x86"
version="1.0.0.0"
type="win32"/>
<description>FCEUX</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="x86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,32 @@
#ifndef RAM_SEARCH_H
#define RAM_SEARCH_H
extern char rs_type_size;
extern int ResultCount;
typedef unsigned int HWAddressType;
unsigned int sizeConv(unsigned int index,char size, char *prevSize = &rs_type_size, bool usePrev = false);
unsigned int GetRamValue(unsigned int Addr,char Size);
void prune(char Search, char Operater, char Type, int Value, int OperatorParameter);
void CompactAddrs();
void reset_address_info();
void signal_new_frame();
void signal_new_size();
void UpdateRamSearchTitleBar(int percent = 0);
void SetRamSearchUndoType(HWND hDlg, int type);
unsigned int ReadValueAtHardwareAddress(HWAddressType address, unsigned int size);
bool WriteValueAtHardwareAddress(HWAddressType address, unsigned int value, unsigned int size);
bool IsHardwareAddressValid(HWAddressType address);
extern int curr_ram_size;
extern bool noMisalign;
void ResetResults();
void CloseRamWindows(); //Close the Ram Search & Watch windows when rom closes
void ReopenRamWindows(); //Reopen them when a new Rom is loaded
void Update_RAM_Search(); //keeps RAM values up to date in the search and watch windows
extern HWND RamSearchHWnd;
extern LRESULT CALLBACK RamSearchProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
#endif

1178
src/drivers/win/ramwatch.cpp Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,48 @@
#ifndef RAMWATCH_H
#define RAMWATCH_H
bool ResetWatches();
void OpenRWRecentFile(int memwRFileNumber);
extern bool AutoRWLoad;
extern bool RWSaveWindowPos;
#define MAX_RECENT_WATCHES 5
extern char rw_recent_files[MAX_RECENT_WATCHES][1024];
extern bool AskSave();
extern int ramw_x;
extern int ramw_y;
extern bool RWfileChanged;
//Constants
#define AUTORWLOAD "RamWatchAutoLoad"
#define RWSAVEPOS "RamWatchSaveWindowPos"
#define RAMWX "RamwX"
#define RAMWY "RamwY"
// AddressWatcher is self-contained now
struct AddressWatcher
{
unsigned int Address; // hardware address
char Size;
char Type;
char* comment; // NULL means no comment, non-NULL means allocated comment
bool WrongEndian;
unsigned int CurValue;
};
#define MAX_WATCH_COUNT 256
extern AddressWatcher rswatches[MAX_WATCH_COUNT];
extern int WatchCount; // number of valid items in rswatches
extern char Watch_Dir[1024];
extern HWND RamWatchHWnd;
extern HACCEL RamWatchAccels;
bool InsertWatch(const AddressWatcher& Watch, char *Comment);
bool InsertWatch(const AddressWatcher& Watch, HWND parent=NULL); // asks user for comment
void Update_RAM_Watch();
bool Load_Watches(bool clear, const char* filename);
void RWAddRecentFile(const char *filename);
LRESULT CALLBACK RamWatchProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
extern HWND RamWatchHWnd;
#endif

View File

@ -7,7 +7,8 @@
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
@ -152,6 +153,8 @@ BEGIN
POPUP "&Tools"
BEGIN
MENUITEM "&Cheats...", MENU_CHEATS
MENUITEM "RAM Watch...", ID_RAM_WATCH
MENUITEM "RAM Search...", ID_RAM_SEARCH
MENUITEM "&Memory Watch...", MENU_MEMORY_WATCH
MENUITEM "&RAM Filter...", MENU_RAMFILTER
MENUITEM "&TAS Edit...", MENU_TASEDIT, INACTIVE
@ -388,6 +391,34 @@ BEGIN
END
END
RAMWATCH_MENU MENU
BEGIN
POPUP "File"
BEGIN
MENUITEM "&New list\tCtrl N", RAMMENU_FILE_NEW
MENUITEM "&Open...\tCtrl O", RAMMENU_FILE_OPEN
MENUITEM "&Save\tCtrl S", RAMMENU_FILE_SAVE
MENUITEM "Sa&ve As...\tCtrl Shift S", RAMMENU_FILE_SAVEAS
MENUITEM "&Append file...", RAMMENU_FILE_APPEND
MENUITEM "Recent", RAMMENU_FILE_RECENT
MENUITEM SEPARATOR
MENUITEM "Auto-&load", RAMMENU_FILE_AUTOLOAD
MENUITEM "Save Window Position", RAMMENU_FILE_SAVEWINDOW
MENUITEM SEPARATOR
MENUITEM "&Close\tAlt F4", IDCANCEL
END
POPUP "Watches"
BEGIN
MENUITEM "&New Watch\tN", IDC_C_WATCH
MENUITEM "&Edit Watch\tE", IDC_C_WATCH_EDIT
MENUITEM "&Remove Watch\tR", IDC_C_WATCH_REMOVE
MENUITEM "Duplicate Watch\tA", IDC_C_WATCH_DUPLICATE
MENUITEM SEPARATOR
MENUITEM "Move Up\tU", IDC_C_WATCH_UP
MENUITEM "Move Down\tD", IDC_C_WATCH_DOWN
END
END
/////////////////////////////////////////////////////////////////////////////
//
@ -1497,6 +1528,98 @@ BEGIN
GROUPBOX "Emulation",65430,196,236,178,32,WS_GROUP
END
IDD_RAMSEARCH DIALOGEX 0, 0, 287, 292
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION " RAM Search"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_RAMLIST,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_OWNERDATA | WS_BORDER | WS_TABSTOP,9,9,214,151,WS_EX_CLIENTEDGE
PUSHBUTTON "&Search",IDC_C_SEARCH,226,9,52,16
PUSHBUTTON "&Add Cheat",IDC_C_ADDCHEAT,226,145,52,16,WS_DISABLED
PUSHBUTTON "&Watch",IDC_C_WATCH,226,127,52,16
PUSHBUTTON "&Reset",IDC_C_RESET,226,27,52,16
PUSHBUTTON "&Eliminate",IDC_C_ELIMINATE,226,109,52,16
GROUPBOX "Comparison Operator",IDC_STATIC,10,166,102,118,0,WS_EX_TRANSPARENT
CONTROL "Less Than",IDC_LESSTHAN,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,178,95,11
CONTROL "Greater Than",IDC_MORETHAN,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,191,95,11
CONTROL "Less Than or Equal To",IDC_NOMORETHAN,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,204,95,11
CONTROL "Greater Than or Equal To",IDC_NOLESSTHAN,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,217,95,11
CONTROL "Equal To",IDC_EQUALTO,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,230,95,11
CONTROL "Not Equal To",IDC_DIFFERENTFROM,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,243,95,11
CONTROL "Different By:",IDC_DIFFERENTBY,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,256,52,11
CONTROL "Modulo",IDC_MODULO,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,14,269,35,11
EDITTEXT IDC_EDIT_DIFFBY,69,255,38,12,ES_UPPERCASE | ES_AUTOHSCROLL | WS_DISABLED
EDITTEXT IDC_EDIT_MODBY,51,267,38,12,ES_UPPERCASE | ES_AUTOHSCROLL | WS_DISABLED
GROUPBOX "Compare To / By",IDC_STATIC,118,166,153,58,0,WS_EX_TRANSPARENT
CONTROL "Previous Value",IDC_PREVIOUSVALUE,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,121,176,67,10
CONTROL "Specific Value:",IDC_SPECIFICVALUE,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,121,187,67,10
CONTROL "Specific Address:",IDC_SPECIFICADDRESS,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,121,198,67,10
CONTROL "Number of Changes:",IDC_NUMBEROFCHANGES,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,121,209,76,10
EDITTEXT IDC_EDIT_COMPAREVALUE,203,183,63,12,ES_UPPERCASE | ES_AUTOHSCROLL | WS_DISABLED
EDITTEXT IDC_EDIT_COMPAREADDRESS,203,195,63,12,ES_UPPERCASE | ES_AUTOHSCROLL | WS_DISABLED
EDITTEXT IDC_EDIT_COMPARECHANGES,203,207,63,12,ES_UPPERCASE | ES_AUTOHSCROLL | WS_DISABLED
GROUPBOX "Data Type / Display",IDC_STATIC,196,227,75,44,0,WS_EX_TRANSPARENT
CONTROL "Signed",IDC_SIGNED,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,200,237,67,9
CONTROL "Unsigned",IDC_UNSIGNED,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,200,248,67,9
CONTROL "Hexadecimal",IDC_HEX,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,200,259,67,9
CONTROL "Autosearch",IDC_C_AUTOSEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,200,273,52,11
GROUPBOX "Data Size",IDC_STATIC,117,227,73,57,0,WS_EX_TRANSPARENT
CONTROL "1 byte",IDC_1_BYTE,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,121,237,61,11
CONTROL "2 bytes",IDC_2_BYTES,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,121,248,61,11
CONTROL "4 bytes",IDC_4_BYTES,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,121,259,61,11
CONTROL "Check Misaligned",IDC_MISALIGN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,121,272,65,8
PUSHBUTTON "&Clear Change Counts",IDC_C_RESET_CHANGES,226,46,52,20,BS_MULTILINE
PUSHBUTTON "&Undo",IDC_C_UNDO,226,69,52,16,WS_DISABLED
LTEXT "Is",IDC_STATIC,92,270,12,8
END
IDD_RAMWATCH DIALOGEX 0, 0, 269, 298
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION " RAM Watch"
MENU RAMWATCH_MENU
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_WATCHLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_OWNERDATA | WS_BORDER | WS_TABSTOP,9,9,210,279,WS_EX_CLIENTEDGE
PUSHBUTTON "Edit",IDC_C_WATCH_EDIT,226,66,34,14
PUSHBUTTON "Remove",IDC_C_WATCH_REMOVE,226,83,34,14
PUSHBUTTON "New",IDC_C_WATCH,226,100,34,14
PUSHBUTTON "Duplicate",IDC_C_WATCH_DUPLICATE,226,117,34,14
PUSHBUTTON "Add Cheat",IDC_C_ADDCHEAT,222,140,42,16,WS_DISABLED
GROUPBOX "Watches",IDC_STATIC,222,11,42,125
CONTROL "",ID_WATCHES_UPDOWN,"msctls_updown32",WS_TABSTOP,232,23,19,36
END
IDD_EDITWATCH DIALOGEX 0, 0, 181, 95
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION " Edit Watch"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CTEXT "Address:",IDC_SPECIFICADDRESS,18,12,35,10
EDITTEXT IDC_EDIT_COMPAREADDRESS,55,10,65,12,ES_UPPERCASE | ES_AUTOHSCROLL
CTEXT "Notes:",IDC_PROMPT_TEXT,18,24,45,10
EDITTEXT IDC_PROMPT_EDIT,55,22,65,12,ES_AUTOHSCROLL
GROUPBOX "Data Type",IDC_STATIC,14,37,75,42,0,WS_EX_TRANSPARENT
CONTROL "&Signed",IDC_SIGNED,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,18,47,67,9
CONTROL "&Unsigned",IDC_UNSIGNED,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,18,57,67,9
CONTROL "&Hexadecimal",IDC_HEX,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,18,67,67,9
GROUPBOX "Data Size",IDC_STATIC,94,37,73,42,0,WS_EX_TRANSPARENT
CONTROL "&1 byte",IDC_1_BYTE,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,98,47,61,11
CONTROL "&2 bytes",IDC_2_BYTES,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,98,57,61,11
CONTROL "&4 bytes",IDC_4_BYTES,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,98,67,61,11
DEFPUSHBUTTON "&OK",IDOK,66,80,50,14
PUSHBUTTON "&Cancel",IDCANCEL,120,80,50,14
END
IDD_PROMPT DIALOG 0, 0, 186, 68
STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Input Prompt"
FONT 8, "Ms Shell Dlg 2"
BEGIN
DEFPUSHBUTTON "OK",IDOK,100,43,50,14
PUSHBUTTON "Cancel",IDCANCEL,37,42,50,14
EDITTEXT IDC_PROMPT_EDIT,10,15,167,14,ES_AUTOHSCROLL
END
/////////////////////////////////////////////////////////////////////////////
//
@ -1774,6 +1897,20 @@ BEGIN
"W", ACCEL_CTRL_W, VIRTKEY, CONTROL, NOINVERT
END
IDR_RWACCELERATOR ACCELERATORS
BEGIN
"N", RAMMENU_FILE_NEW, VIRTKEY, CONTROL
"O", RAMMENU_FILE_OPEN, VIRTKEY, CONTROL
"S", RAMMENU_FILE_SAVE, VIRTKEY, CONTROL
"S", RAMMENU_FILE_SAVEAS, VIRTKEY, SHIFT, CONTROL
"A", IDC_C_WATCH_DUPLICATE, VIRTKEY
"E", IDC_C_WATCH_EDIT, VIRTKEY
"D", IDC_C_WATCH_DOWN, VIRTKEY
"U", IDC_C_WATCH_UP, VIRTKEY
"N", IDC_C_WATCH, VIRTKEY
"R", IDC_C_WATCH_REMOVE, VIRTKEY
END
/////////////////////////////////////////////////////////////////////////////
//
@ -1791,7 +1928,8 @@ IDB_TE_ARROW BITMAP "res/te_arrow.bmp"
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

View File

@ -148,6 +148,11 @@
#define MENU_RECORD_AVI 151
#define MENU_STOP_AVI 152
#define MENU_EXIT 153
#define IDD_RAMSEARCH 154
#define IDD_RAMWATCH 155
#define IDD_EDITWATCH 156
#define IDD_PROMPT 157
#define IDR_RWACCELERATOR 158
#define MENU_RESET 200
#define BUTTON_ROMS 200
#define TXT_PAD1 200
@ -408,6 +413,49 @@
#define IDC_CHECK1 1203
#define CB_ENABLECONTEXTMENU 1203
#define IDC_VOLUMEGROUP 1204
#define IDC_RAMLIST 1205
#define IDC_C_SEARCH 1206
#define IDC_C_ADDCHEAT 1207
#define IDC_C_WATCH 1208
#define IDC_C_RESET 1209
#define IDC_C_ELIMINATE 1210
#define IDC_LESSTHAN 1211
#define IDC_MORETHAN 1212
#define IDC_NOMORETHAN 1213
#define IDC_NOLESSTHAN 1214
#define IDC_EQUALTO 1215
#define IDC_DIFFERENTFROM 1216
#define IDC_DIFFERENTBY 1217
#define IDC_MODULO 1218
#define IDC_EDIT_DIFFBY 1219
#define IDC_EDIT_MODBY 1220
#define IDC_PREVIOUSVALUE 1221
#define IDC_SPECIFICVALUE 1222
#define IDC_SPECIFICADDRESS 1223
#define IDC_NUMBEROFCHANGES 1224
#define IDC_EDIT_COMPAREVALUE 1225
#define IDC_EDIT_COMPAREADDRESS 1226
#define IDC_EDIT_COMPARECHANGES 1227
#define IDC_SIGNED 1228
#define IDC_UNSIGNED 1229
#define IDC_HEX 1230
#define IDC_C_AUTOSEARCH 1231
#define IDC_1_BYTE 1232
#define IDC_2_BYTES 1233
#define IDC_4_BYTES 1234
#define IDC_MISALIGN 1235
#define IDC_C_RESET_CHANGES 1236
#define IDC_C_UNDO 1237
#define IDC_WATCHLIST 1238
#define IDC_C_WATCH_EDIT 1239
#define IDC_C_WATCH_REMOVE 1240
#define IDC_C_WATCH_DUPLICATE 1241
#define ID_WATCHES_UPDOWN 1242
#define IDC_C_WATCH_UP 1243
#define IDC_C_WATCH_DOWN 1244
#define IDC_PROMPT_TEXT 1245
#define IDC_PROMPT_TEXT2 1246
#define IDC_PROMPT_EDIT 1247
#define MENU_NETWORK 40040
#define MENU_PALETTE 40041
#define MENU_SOUND 40042
@ -696,6 +744,18 @@
#define ID_NEWPPU 40365
#define ID_OLDPPU 40366
#define ID_CONFIG_SAVECONFIGFILE 40367
#define RAMMENU_FILE_AUTOLOAD 40368
#define RAMMENU_FILE_SAVEWINDOW 40369
#define RAMMENU_FILE_SAVE 40370
#define RAMMENU_FILE_SAVEAS 40371
#define RAMMENU_FILE_OPEN 40372
#define RAMMENU_FILE_APPEND 40373
#define RAMMENU_FILE_NEW 40374
#define RAMMENU_FILE_RECENT 40375
#define ID_RAM_SEARCH 40376
#define ID_RAM_WATCH 40377
#define RW_MENU_FIRST_RECENT_FILE 40380
#define RW_MENU_LAST_RECENT_FILE 40400
#define IDC_DEBUGGER_ICONTRAY 55535
#define MW_ValueLabel2 65423
#define MW_ValueLabel1 65426
@ -704,9 +764,9 @@
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 125
#define _APS_NEXT_COMMAND_VALUE 40368
#define _APS_NEXT_CONTROL_VALUE 1205
#define _APS_NEXT_RESOURCE_VALUE 159
#define _APS_NEXT_COMMAND_VALUE 40401
#define _APS_NEXT_CONTROL_VALUE 1248
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

View File

@ -35,6 +35,8 @@
#include "input.h"
#include "fceu.h"
#include "ram_search.h"
#include "ramwatch.h"
#include "memwatch.h"
#include "ppuview.h"
#include "debugger.h"
@ -332,6 +334,8 @@ void updateGameDependentMenus(unsigned int enable)
MENU_CDLOGGER,
MENU_GAMEGENIEDECODER,
MENU_CHEATS,
ID_RAM_SEARCH,
ID_RAM_WATCH,
ID_TOOLS_TEXTHOOKER
};
@ -1337,6 +1341,15 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
else if (!(fileDropped.find(".lua") == string::npos) && (fileDropped.find(".lua") == fileDropped.length()-4))
FCEU_LoadLuaCode(ftmp);
//-------------------------------------------------------
//Check if memory watchlist file
//-------------------------------------------------------
else if (!(fileDropped.find(".wch") == string::npos) && (fileDropped.find(".wch") == fileDropped.length()-4)) {
if (GameInfo) {
SendMessage(hWnd, WM_COMMAND, (WPARAM)ID_RAM_WATCH,(LPARAM)(NULL));
Load_Watches(true, fileDropped.c_str());
}
}
//-------------------------------------------------------
//If not a movie, Load it as a ROM file
//-------------------------------------------------------
else
@ -1778,6 +1791,25 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
DoTextHooker();
break;
case ID_RAM_SEARCH:
if(!RamSearchHWnd)
{
reset_address_info();
RamSearchHWnd = CreateDialog(fceu_hInstance, MAKEINTRESOURCE(IDD_RAMSEARCH), hWnd, (DLGPROC) RamSearchProc);
}
else
SetForegroundWindow(RamSearchHWnd);
break;
case ID_RAM_WATCH:
if(!RamWatchHWnd)
{
RamWatchHWnd = CreateDialog(fceu_hInstance, MAKEINTRESOURCE(IDD_RAMWATCH), hWnd, (DLGPROC) RamWatchProc);
}
else
SetForegroundWindow(RamWatchHWnd);
break;
//Debug Menu-------------------------------------------------------------
case MENU_DEBUGGER:
DoDebug(0);

View File

@ -66,6 +66,8 @@
#include "drivers/win/main.h"
#include "drivers/win/cheat.h"
#include "drivers/win/texthook.h"
#include "drivers/win/ram_search.h"
#include "drivers/win/ramwatch.h"
#include "drivers/win/memwatch.h"
#include "drivers/win/tracer.h"
#else
@ -647,6 +649,7 @@ void FCEUI_Emulate(uint8 **pXBuf, int32 **SoundBuf, int32 *SoundBufSize, int ski
//These Windows only dialogs need to be updated only once per frame so they are included here
UpdateCheatList();
UpdateTextHooker();
Update_RAM_Search(); // Update_RAM_Watch() is also called.
RamChange();
UpdateLogWindow();
//FCEUI_AviVideoUpdate(XBuf);

View File

@ -1232,6 +1232,22 @@
RelativePath="..\src\drivers\win\pref.h"
>
</File>
<File
RelativePath="..\src\drivers\win\ram_search.cpp"
>
</File>
<File
RelativePath="..\src\drivers\win\ram_search.h"
>
</File>
<File
RelativePath="..\src\drivers\win\ramwatch.cpp"
>
</File>
<File
RelativePath="..\src\drivers\win\ramwatch.h"
>
</File>
<File
RelativePath="..\src\drivers\win\replay.cpp"
>

View File

@ -84,6 +84,7 @@
/>
<Tool
Name="VCManifestTool"
AdditionalManifestFiles="$(ProjectDir)../src/drivers/win/fceu_x86.manifest"
VerboseOutput="true"
/>
<Tool
@ -249,6 +250,7 @@
/>
<Tool
Name="VCManifestTool"
AdditionalManifestFiles="$(ProjectDir)../src/drivers/win/fceu_x86.manifest"
/>
<Tool
Name="VCXDCMakeTool"
@ -1225,6 +1227,22 @@
RelativePath="..\src\drivers\win\pref.h"
>
</File>
<File
RelativePath="..\src\drivers\win\ram_search.cpp"
>
</File>
<File
RelativePath="..\src\drivers\win\ram_search.h"
>
</File>
<File
RelativePath="..\src\drivers\win\ramwatch.cpp"
>
</File>
<File
RelativePath="..\src\drivers\win\ramwatch.h"
>
</File>
<File
RelativePath="..\src\drivers\win\replay.cpp"
>