committing basicbot rip-outage so i can test it at work
This commit is contained in:
parent
2777b935a8
commit
d7524bcdba
File diff suppressed because it is too large
Load Diff
|
@ -1,11 +0,0 @@
|
||||||
#ifndef _BASICBOT_H_
|
|
||||||
#define _BASICBOT_H_
|
|
||||||
#define BOT_MAXFRAMES 10000 // qfox: max number of frames to be computed per attempt...
|
|
||||||
#define BOT_STATEFILE "botstate" // the filename to save the current state to
|
|
||||||
void UpdateBasicBot();
|
|
||||||
void CreateBasicBot();
|
|
||||||
extern char *BasicBotDir;
|
|
||||||
void UpdateExternalButton();
|
|
||||||
int BotFrameSkip();
|
|
||||||
int BotFramePause();
|
|
||||||
#endif // _BASICBOT_H_
|
|
|
@ -1,210 +0,0 @@
|
||||||
#include "common.h"
|
|
||||||
#include "../../fceu.h" // BotInput
|
|
||||||
#include "basicbot2.h"
|
|
||||||
#include "../../input.h" // fceu_botmode() fceu_setbotmode() BOTMODES
|
|
||||||
#include <time.h> // random seed
|
|
||||||
|
|
||||||
// Static variables and functions are only used in this file
|
|
||||||
static HWND hwndBasicBot = 0; // GUI handle
|
|
||||||
// GUI values
|
|
||||||
static char * inputStrings[16]; // from gui
|
|
||||||
static int inputNumbers[16]; // temp: the values
|
|
||||||
static char * romString;
|
|
||||||
static char * commentString;
|
|
||||||
static char * scoreString[3][2]; // score[n][title/value]
|
|
||||||
|
|
||||||
// put all the inputs into an array for easy iterative access
|
|
||||||
// (indices are synced with the order of BotInput[1] inputs)
|
|
||||||
static int inputs[] = {
|
|
||||||
BOT_TF_A_1,
|
|
||||||
BOT_TF_B_1,
|
|
||||||
BOT_TF_SELECT_1,
|
|
||||||
BOT_TF_START_1,
|
|
||||||
BOT_TF_UP_1,
|
|
||||||
BOT_TF_DOWN_1,
|
|
||||||
BOT_TF_LEFT_1,
|
|
||||||
BOT_TF_RIGHT_1,
|
|
||||||
BOT_TF_A_2,
|
|
||||||
BOT_TF_B_2,
|
|
||||||
BOT_TF_SELECT_2,
|
|
||||||
BOT_TF_START_2,
|
|
||||||
BOT_TF_UP_2,
|
|
||||||
BOT_TF_DOWN_2,
|
|
||||||
BOT_TF_LEFT_2,
|
|
||||||
BOT_TF_RIGHT_2
|
|
||||||
};
|
|
||||||
|
|
||||||
void BotCreateBasicBot() {
|
|
||||||
if(hwndBasicBot) {
|
|
||||||
// If already open, give focus
|
|
||||||
SetFocus(hwndBasicBot);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// create window
|
|
||||||
hwndBasicBot = CreateDialog(fceu_hInstance,"BASICBOT2",NULL,WindowCallback);
|
|
||||||
// set title
|
|
||||||
SetWindowText(hwndBasicBot,"anything?");
|
|
||||||
// create menu
|
|
||||||
HMENU hmenu = LoadMenu(fceu_hInstance,"BASICBOTMENU");
|
|
||||||
// add menu to window
|
|
||||||
SetMenu(hwndBasicBot, hmenu);
|
|
||||||
// initialize the random generator
|
|
||||||
srand( (unsigned)time( NULL ) );
|
|
||||||
// set all inputs to 0
|
|
||||||
GetAllInputs();
|
|
||||||
}
|
|
||||||
FCEU_SetBotMode(BOTMODE_NEWBOT);
|
|
||||||
}
|
|
||||||
static void BotCloseBasicBot() {
|
|
||||||
if (hwndBasicBot) {
|
|
||||||
DestroyWindow(hwndBasicBot);
|
|
||||||
hwndBasicBot = 0;
|
|
||||||
}
|
|
||||||
FCEU_SetBotMode(BOTMODE_OFF);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static BOOL CALLBACK WindowCallback(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) {
|
|
||||||
switch (uMsg) {
|
|
||||||
case WM_INITDIALOG:
|
|
||||||
{
|
|
||||||
// cant change gui controls in this event
|
|
||||||
// seems to be a inherited "feature", for backwards
|
|
||||||
// compatibility.
|
|
||||||
SetWindowPos(
|
|
||||||
hwndDlg, // window handle
|
|
||||||
0, // z-index (ignored)
|
|
||||||
0,0, // x,y
|
|
||||||
0,0, // width,height (ignored, uses default)
|
|
||||||
SWP_NOSIZE|SWP_NOZORDER|SWP_NOOWNERZORDER // flags
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WM_MOVE:
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
};
|
|
||||||
case WM_CLOSE:
|
|
||||||
case WM_QUIT:
|
|
||||||
{
|
|
||||||
BotCloseBasicBot();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WM_COMMAND:
|
|
||||||
{
|
|
||||||
switch(HIWORD(wParam))
|
|
||||||
{
|
|
||||||
case BN_CLICKED: // mouse click on item in gui
|
|
||||||
{
|
|
||||||
switch(LOWORD(wParam))
|
|
||||||
{
|
|
||||||
case BOT_BUTTON_UPDATE:
|
|
||||||
{
|
|
||||||
GetAllInputs();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BOT_BUTTON_RUN:
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BOT_BUTTON_TEST:
|
|
||||||
{
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case BOT_MENU_CLOSE:
|
|
||||||
{
|
|
||||||
BotCloseBasicBot();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
break; // WM_COMMAND
|
|
||||||
}
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Called from main emulator loop
|
|
||||||
void BasicBotGetInput() {
|
|
||||||
if (FCEU_BotMode() != BOTMODE_NEWBOT) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
BotInput[0] = 1; // number of frames on the buffer (starts at BotInput[1])
|
|
||||||
BotInput[1] = 0; // reset first (and only) frame
|
|
||||||
for (int i=0;i<16;i++) {
|
|
||||||
if ((int)(((double)rand()/(double)RAND_MAX)*1000) < inputNumbers[i]) {
|
|
||||||
// Button flags:
|
|
||||||
// button - player 1 - player 2
|
|
||||||
// A 1 9
|
|
||||||
// B 2 10
|
|
||||||
// select 3 11
|
|
||||||
// start 4 12
|
|
||||||
// up 5 13
|
|
||||||
// down 6 14
|
|
||||||
// left 7 15
|
|
||||||
// right 8 16
|
|
||||||
// The input code will read the value of BotInput[1]
|
|
||||||
// If flag 17 is set, it will load a savestate, else
|
|
||||||
// it takes this input and puts the lower byte in 1
|
|
||||||
// and the upper byte in 2.
|
|
||||||
BotInput[1] |= 1 << i;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the length of a textfield ("edit control") or textarea
|
|
||||||
* It's more of a macro really.
|
|
||||||
* Returns 0 when an error occurs, the length of current
|
|
||||||
* contents in any other case (check LastError in case of 0)
|
|
||||||
*/
|
|
||||||
static unsigned int FieldLength(HWND winhandle,int controlid) {
|
|
||||||
HWND hwndItem = GetDlgItem(winhandle,controlid);
|
|
||||||
return SendMessage(hwndItem,WM_GETTEXTLENGTH,0,0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* wrapper functions
|
|
||||||
**/
|
|
||||||
static char * GetText(int controlid) {
|
|
||||||
unsigned int count = FieldLength(hwndBasicBot,controlid);
|
|
||||||
char *t = new char[count+1];
|
|
||||||
GetDlgItemTextA(hwndBasicBot,controlid,t,count+1);
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
static UINT GetInt(int controlid) {
|
|
||||||
BOOL * x = new BOOL();
|
|
||||||
return GetDlgItemInt(hwndBasicBot,controlid, x, true);
|
|
||||||
}
|
|
||||||
static void SetInt(int controlid, int value) {
|
|
||||||
SetDlgItemInt(hwndBasicBot, controlid, value, true);
|
|
||||||
}
|
|
||||||
static void SetText(int controlid, char * str) {
|
|
||||||
SetDlgItemTextA(hwndBasicBot, controlid, str);
|
|
||||||
}
|
|
||||||
|
|
||||||
// get data from all the inputs from the gui and store it
|
|
||||||
static void GetAllInputs() {
|
|
||||||
// for all 8 buttons, twice
|
|
||||||
for (int i=0; i<16; ++i) {
|
|
||||||
inputStrings[i] = GetText(inputs[i]);
|
|
||||||
inputNumbers[i] = GetInt(inputs[i]);
|
|
||||||
SetInt(inputs[i], inputNumbers[i]);
|
|
||||||
}
|
|
||||||
romString = GetText(BOT_TF_ROM);
|
|
||||||
commentString = GetText(BOT_TF_COMMENT);
|
|
||||||
scoreString[0][0] = GetText(BOT_TF_SCORE1_DESC);
|
|
||||||
scoreString[0][1] = GetText(BOT_TF_SCORE1_VALUE);
|
|
||||||
scoreString[1][0] = GetText(BOT_TF_SCORE2_DESC);
|
|
||||||
scoreString[1][1] = GetText(BOT_TF_SCORE2_VALUE);
|
|
||||||
scoreString[2][0] = GetText(BOT_TF_SCORE3_DESC);
|
|
||||||
scoreString[2][1] = GetText(BOT_TF_SCORE3_VALUE);
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
#ifndef _BASICBOT2_H_
|
|
||||||
#define _BASICBOT2_H_
|
|
||||||
// statics are only used in this file
|
|
||||||
void BotCreateBasicBot();
|
|
||||||
static BOOL CALLBACK WindowCallback(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
||||||
static void BotCloseWindow();
|
|
||||||
void BasicBotGetInput();
|
|
||||||
static unsigned int FieldLength(HWND winhandle,int controlid);
|
|
||||||
static char * GetText(int controlid);
|
|
||||||
static UINT GetInt(int controlid);
|
|
||||||
static void GetAllInputs();
|
|
||||||
#endif // _BASICBOT2_H_
|
|
|
@ -36,7 +36,6 @@
|
||||||
extern CFGSTRUCT NetplayConfig[];
|
extern CFGSTRUCT NetplayConfig[];
|
||||||
extern CFGSTRUCT InputConfig[];
|
extern CFGSTRUCT InputConfig[];
|
||||||
extern CFGSTRUCT HotkeyConfig[];
|
extern CFGSTRUCT HotkeyConfig[];
|
||||||
extern char *BasicBotDir;
|
|
||||||
extern int autoHoldKey, autoHoldClearKey;
|
extern int autoHoldKey, autoHoldClearKey;
|
||||||
|
|
||||||
extern uint8 gNoBGFillColor;
|
extern uint8 gNoBGFillColor;
|
||||||
|
@ -49,7 +48,6 @@ extern int MemFind_wndx, MemFind_wndy;
|
||||||
extern int NTViewPosX,NTViewPosY;
|
extern int NTViewPosX,NTViewPosY;
|
||||||
extern int PPUViewPosX,PPUViewPosY;
|
extern int PPUViewPosX,PPUViewPosY;
|
||||||
extern int MainWindow_wndx, MainWindow_wndy;
|
extern int MainWindow_wndx, MainWindow_wndy;
|
||||||
extern int BasicBot_wndx, BasicBot_wndy;
|
|
||||||
extern int MemWatch_wndx, MemWatch_wndy;
|
extern int MemWatch_wndx, MemWatch_wndy;
|
||||||
extern int Monitor_wndx, Monitor_wndy;
|
extern int Monitor_wndx, Monitor_wndy;
|
||||||
extern int Tracer_wndx, Tracer_wndy;
|
extern int Tracer_wndx, Tracer_wndy;
|
||||||
|
@ -99,7 +97,6 @@ static CFGSTRUCT fceuconfig[] = {
|
||||||
NACS("odcheats",directory_names[5]),
|
NACS("odcheats",directory_names[5]),
|
||||||
NACS("odmovies",directory_names[6]),
|
NACS("odmovies",directory_names[6]),
|
||||||
NACS("odmemwatch",directory_names[7]),
|
NACS("odmemwatch",directory_names[7]),
|
||||||
NACS("odbasicbot",directory_names[8]),
|
|
||||||
NACS("odmacro",directory_names[9]),
|
NACS("odmacro",directory_names[9]),
|
||||||
NACS("odinput",directory_names[10]),
|
NACS("odinput",directory_names[10]),
|
||||||
NACS("odlua",directory_names[11]),
|
NACS("odlua",directory_names[11]),
|
||||||
|
@ -153,7 +150,6 @@ static CFGSTRUCT fceuconfig[] = {
|
||||||
AC(frame_display),
|
AC(frame_display),
|
||||||
AC(input_display),
|
AC(input_display),
|
||||||
ACS(MemWatchDir),
|
ACS(MemWatchDir),
|
||||||
ACS(BasicBotDir),
|
|
||||||
AC(EnableBackgroundInput),
|
AC(EnableBackgroundInput),
|
||||||
AC(MemWatchLoadOnStart),
|
AC(MemWatchLoadOnStart),
|
||||||
AC(MemWatchLoadFileOnStart),
|
AC(MemWatchLoadFileOnStart),
|
||||||
|
@ -176,8 +172,6 @@ static CFGSTRUCT fceuconfig[] = {
|
||||||
AC(PPUViewPosY),
|
AC(PPUViewPosY),
|
||||||
AC(MainWindow_wndx),
|
AC(MainWindow_wndx),
|
||||||
AC(MainWindow_wndy),
|
AC(MainWindow_wndy),
|
||||||
AC(BasicBot_wndx),
|
|
||||||
AC(BasicBot_wndy),
|
|
||||||
AC(MemWatch_wndx),
|
AC(MemWatch_wndx),
|
||||||
AC(MemWatch_wndy),
|
AC(MemWatch_wndy),
|
||||||
AC(Monitor_wndx),
|
AC(Monitor_wndx),
|
||||||
|
|
|
@ -57,8 +57,6 @@
|
||||||
#include "tasedit.h"
|
#include "tasedit.h"
|
||||||
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "basicbot.h"
|
|
||||||
#include "basicbot2.h" // qfox: new bot
|
|
||||||
#include "args.h"
|
#include "args.h"
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "sound.h"
|
#include "sound.h"
|
||||||
|
@ -127,8 +125,8 @@ std::string BaseDirectory;
|
||||||
int PauseAfterLoad;
|
int PauseAfterLoad;
|
||||||
|
|
||||||
// Contains the names of the overridden standard directories
|
// Contains the names of the overridden standard directories
|
||||||
// in the order roms, nonvol, states, fdsrom, snaps, cheats, movies, memwatch, basicbot, macro, input presets, lua scripts, base
|
// in the order roms, nonvol, states, fdsrom, snaps, cheats, movies, memwatch, macro, input presets, lua scripts, base
|
||||||
char *directory_names[13] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
char *directory_names[13] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
||||||
|
|
||||||
//Handle of the main window.
|
//Handle of the main window.
|
||||||
HWND hAppWnd = 0;
|
HWND hAppWnd = 0;
|
||||||
|
@ -454,20 +452,6 @@ static void DriverKill(void)
|
||||||
HANDLE mapGameMemBlock;
|
HANDLE mapGameMemBlock;
|
||||||
HANDLE mapRAM;
|
HANDLE mapRAM;
|
||||||
|
|
||||||
// qfox: about BotInput
|
|
||||||
// If in botmode, BasicBot will put the input in this variable.
|
|
||||||
// FCEU_UpdateBot() in input.cpp will then fill the controller
|
|
||||||
// inputs according to this variable. The layout is as follows:
|
|
||||||
// bit 0-7 = player 1 controller
|
|
||||||
// bits 8-15 = player 2 controller
|
|
||||||
// bit 17 = load savestate 1 if set
|
|
||||||
// Order of these buttons bitwise:
|
|
||||||
// A B SELECT START UP DOWN LEFT RIGHT
|
|
||||||
// TODO: fix a new variable to tell the function to load a save
|
|
||||||
// state to allow the bot to compute four players (since
|
|
||||||
// there's not enough space to do so now)
|
|
||||||
uint32 *BotInput;
|
|
||||||
|
|
||||||
void win_AllocBuffers(uint8 **GameMemBlock, uint8 **RAM)
|
void win_AllocBuffers(uint8 **GameMemBlock, uint8 **RAM)
|
||||||
{
|
{
|
||||||
mapGameMemBlock = CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE, 0, 131072,"fceu.GameMemBlock");
|
mapGameMemBlock = CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE, 0, 131072,"fceu.GameMemBlock");
|
||||||
|
@ -491,13 +475,6 @@ void win_AllocBuffers(uint8 **GameMemBlock, uint8 **RAM)
|
||||||
*RAM = (uint8 *)MapViewOfFile(mapRAM, FILE_MAP_WRITE, 0, 0, 0);
|
*RAM = (uint8 *)MapViewOfFile(mapRAM, FILE_MAP_WRITE, 0, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Bot input
|
|
||||||
// qfox: tossed mapping alltogether
|
|
||||||
//mapBotInput = CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0, BOT_MAXFRAMES*sizeof(int), "fceu.BotInput");
|
|
||||||
//BotInput = (uint32 *) MapViewOfFile(mapBotInput, FILE_MAP_WRITE, 0, 0, 0);
|
|
||||||
// qfox: not working with a map anymore
|
|
||||||
BotInput = new uint32[BOT_MAXFRAMES];
|
|
||||||
BotInput[0] = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void win_FreeBuffers(uint8 *GameMemBlock, uint8 *RAM)
|
void win_FreeBuffers(uint8 *GameMemBlock, uint8 *RAM)
|
||||||
|
@ -525,9 +502,6 @@ void win_FreeBuffers(uint8 *GameMemBlock, uint8 *RAM)
|
||||||
free(GameMemBlock);
|
free(GameMemBlock);
|
||||||
GameMemBlock = NULL;
|
GameMemBlock = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
// qfox: not working with map anymore
|
|
||||||
delete BotInput;
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -695,14 +669,6 @@ doloopy:
|
||||||
int32 *sound=0; ///contains sound data buffer
|
int32 *sound=0; ///contains sound data buffer
|
||||||
int32 ssize=0; ///contains sound samples count
|
int32 ssize=0; ///contains sound samples count
|
||||||
|
|
||||||
#ifdef _USE_SHARED_MEMORY_
|
|
||||||
// press input like BasicBot tells you to
|
|
||||||
UpdateBasicBot(); // qfox: old bot
|
|
||||||
// same as above, for the new bot
|
|
||||||
BasicBotGetInput(); // qfox: new bot (uses same input variables and mechanism as old bot, for now)
|
|
||||||
FCEU_UpdateBot(); // qfox: shouldnt this be inside the sharedmemory ifdef?? (it is now, was below the endif)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
FCEUI_Emulate(&gfx, &sound, &ssize, 0); //emulate a single frame
|
FCEUI_Emulate(&gfx, &sound, &ssize, 0); //emulate a single frame
|
||||||
FCEUD_Update(gfx, sound, ssize); //update displays and debug tools
|
FCEUD_Update(gfx, sound, ssize); //update displays and debug tools
|
||||||
|
|
||||||
|
@ -1002,26 +968,6 @@ void win_debuggerLoop()
|
||||||
// Update the game and gamewindow with a new frame
|
// Update the game and gamewindow with a new frame
|
||||||
void FCEUD_Update(uint8 *XBuf, int32 *Buffer, int Count)
|
void FCEUD_Update(uint8 *XBuf, int32 *Buffer, int Count)
|
||||||
{
|
{
|
||||||
//mbg merge 7/19/06 - leaving this untouched but untested
|
|
||||||
//its probably not optimal
|
|
||||||
if(FCEU_BotMode() != BOTMODE_OFF) {
|
|
||||||
//this counts the number of frames we've skipped blitting
|
|
||||||
// qfox 09/17/06: for bot evaluation purposes, the number
|
|
||||||
// of frames to be skipped is set from the
|
|
||||||
// bot gui.
|
|
||||||
if(XBuf && (BotFramesSkipped++ >= BotFrameSkip()))
|
|
||||||
{
|
|
||||||
BotFramesSkipped = 0;
|
|
||||||
FCEUD_BlitScreen(XBuf);
|
|
||||||
// qfox 17/09/06: it can be wishfull for a coder to evaluate his bot.
|
|
||||||
// slowing it down can help here :) defaults at 0
|
|
||||||
if (BotFramePause() > 0) Sleep(BotFramePause());
|
|
||||||
}
|
|
||||||
UpdateFCEUWindow();
|
|
||||||
FCEUD_UpdateInput();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
win_SoundSetScale(fps_scale);
|
win_SoundSetScale(fps_scale);
|
||||||
|
|
||||||
//write all the sound we generated.
|
//write all the sound we generated.
|
||||||
|
|
|
@ -57,7 +57,6 @@ static const char *default_directory_names[12] = {
|
||||||
"cheats", // cheats
|
"cheats", // cheats
|
||||||
"movies", // movies
|
"movies", // movies
|
||||||
"tools", // memwatch
|
"tools", // memwatch
|
||||||
"tools", // basicbot
|
|
||||||
"tools", // macro
|
"tools", // macro
|
||||||
"tools", // input presets
|
"tools", // input presets
|
||||||
"tools" // lua scripts
|
"tools" // lua scripts
|
||||||
|
|
|
@ -101,9 +101,7 @@ BEGIN
|
||||||
MENUITEM "&Cheats...", MENU_CHEATS
|
MENUITEM "&Cheats...", MENU_CHEATS
|
||||||
MENUITEM "&Memory Watch...", MENU_MEMORY_WATCH
|
MENUITEM "&Memory Watch...", MENU_MEMORY_WATCH
|
||||||
MENUITEM "&RAM Filter...", MENU_RAMFILTER
|
MENUITEM "&RAM Filter...", MENU_RAMFILTER
|
||||||
MENUITEM "&Basic Bot...", MENU_BASIC_BOT
|
MENUITEM "TAS Edit", MENU_TASEDIT, INACTIVE
|
||||||
MENUITEM "New Basic Bot...", MENU_BASIC_BOT2
|
|
||||||
MENUITEM "TAS Edit", MENU_TASEDIT
|
|
||||||
MENUITEM "Convert FCM...", MENU_CONVERT_MOVIE
|
MENUITEM "Convert FCM...", MENU_CONVERT_MOVIE
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
POPUP "Autofire &Pattern"
|
POPUP "Autofire &Pattern"
|
||||||
|
@ -135,8 +133,6 @@ BEGIN
|
||||||
END
|
END
|
||||||
MENUITEM "&Alternate A and B", MENU_ALTERNATE_AB
|
MENUITEM "&Alternate A and B", MENU_ALTERNATE_AB
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "Use &External Input", MENU_EXTERNAL_INPUT
|
|
||||||
MENUITEM SEPARATOR
|
|
||||||
MENUITEM "Text Hooker", ID_TOOLS_TEXTHOOKER
|
MENUITEM "Text Hooker", ID_TOOLS_TEXTHOOKER
|
||||||
END
|
END
|
||||||
POPUP "&Debug"
|
POPUP "&Debug"
|
||||||
|
@ -836,181 +832,6 @@ BEGIN
|
||||||
LTEXT "Value",MW_ValueLabel2,231,7,19,8
|
LTEXT "Value",MW_ValueLabel2,231,7,19,8
|
||||||
END
|
END
|
||||||
|
|
||||||
BASICBOT DIALOGEX 0, 0, 536, 378
|
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
|
||||||
CAPTION "Basic Bot by qFox"
|
|
||||||
FONT 8, "MS Sans Serif", 0, 0, 0x0
|
|
||||||
BEGIN
|
|
||||||
PUSHBUTTON "Close",GUI_BOT_CLOSE,12,14,48,12
|
|
||||||
LTEXT "A",65421,72,54,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "B",65420,72,66,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Select",65419,72,78,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Start",65418,72,90,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Up",65417,72,102,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Down",65416,72,114,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Left",65415,72,126,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Right",65414,72,138,24,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Best attempt:",65413,318,182,42,8
|
|
||||||
EDITTEXT GUI_BOT_A_1,96,54,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_B_1,96,66,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SELECT_1,96,78,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_START_1,96,90,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_UP_1,96,102,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_DOWN_1,96,114,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_LEFT_1,96,126,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_RIGHT_1,96,138,102,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Invalid when:",65412,12,211,42,12,SS_CENTERIMAGE
|
|
||||||
EDITTEXT GUI_BOT_INVALID,60,210,180,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_X,264,210,41,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SCORE2,72,306,168,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SCORE3,72,318,168,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SCORE4,72,330,168,12,ES_AUTOHSCROLL
|
|
||||||
PUSHBUTTON "Save...",GUI_BOT_SAVE,12,36,48,12
|
|
||||||
PUSHBUTTON "Load...",GUI_BOT_LOAD,12,51,48,12
|
|
||||||
GROUPBOX "Results",65406,312,0,161,275
|
|
||||||
DEFPUSHBUTTON "Run!",GUI_BOT_RUN,169,10,42,12
|
|
||||||
PUSHBUTTON "Clear",GUI_BOT_CLEAR,12,66,48,12
|
|
||||||
EDITTEXT GUI_BOT_KEYS,318,192,150,80,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | NOT WS_BORDER | WS_VSCROLL | NOT WS_TABSTOP
|
|
||||||
PUSHBUTTON "Play Best",GUI_BOT_BEST,12,123,48,12
|
|
||||||
EDITTEXT GUI_BOT_EXTRA,252,325,216,42,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL
|
|
||||||
PUSHBUTTON "Test",GUI_BOT_TEST,12,86,48,12
|
|
||||||
PUSHBUTTON "Update",GUI_BOT_UPDATE,12,100,48,12
|
|
||||||
GROUPBOX "Control",IDC_STATIC,6,0,60,156
|
|
||||||
GROUPBOX "Input",IDC_STATIC,66,0,54,36
|
|
||||||
LTEXT "Debug:",65435,126,22,24,10,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "Error:",65437,214,11,20,10,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
GROUPBOX "Debug",IDC_STATIC,120,0,192,36,0,WS_EX_TRANSPARENT
|
|
||||||
EDITTEXT GUI_BOT_SCORE1,72,294,168,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "X:",65423,252,210,8,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
EDITTEXT GUI_BOT_Y,264,222,41,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Y:",65424,252,222,8,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
EDITTEXT GUI_BOT_Z,264,234,41,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Z:",65425,252,234,8,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
EDITTEXT GUI_BOT_P,264,246,41,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "P:",65426,252,246,8,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
EDITTEXT GUI_BOT_Q,264,258,41,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Q:",65427,252,258,8,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
PUSHBUTTON "Update",GUI_BOT_U,264,197,41,12
|
|
||||||
EDITTEXT GUI_BOT_COMMENTS,51,160,255,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Rom:",65429,12,172,36,12,SS_CENTERIMAGE
|
|
||||||
PUSHBUTTON "Values",GUI_BOT_VALUES,125,10,42,12
|
|
||||||
PUSHBUTTON "Reset",GUI_BOT_RESET,12,138,48,12
|
|
||||||
EDITTEXT GUI_BOT_OK,60,198,180,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "OK when:",IDC_STATIC,12,199,48,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "Rollback:",65430,12,224,42,12,SS_CENTERIMAGE | WS_DISABLED
|
|
||||||
EDITTEXT GUI_BOT_ROLLBACK,60,222,180,12,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
LTEXT "Max frames:",65431,12,236,42,12,SS_CENTERIMAGE | WS_DISABLED
|
|
||||||
EDITTEXT GUI_BOT_MAXFRAMES,60,234,180,12,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
GROUPBOX "Segment control",IDC_STATIC,6,186,240,90
|
|
||||||
LTEXT "Max attempts:",65432,12,247,48,12,SS_CENTERIMAGE
|
|
||||||
EDITTEXT GUI_BOT_MAXATTEMPTS,60,246,180,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Max segments:",65433,12,258,48,12,SS_CENTERIMAGE
|
|
||||||
EDITTEXT GUI_BOT_MAXSEGMENTS,60,258,180,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_A_2,204,54,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_B_2,204,66,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SELECT_2,204,78,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_START_2,204,90,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_UP_2,204,102,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_DOWN_2,204,114,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_LEFT_2,204,126,102,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_RIGHT_2,204,138,102,12,ES_AUTOHSCROLL
|
|
||||||
CTEXT "Player 1",IDC_STATIC,96,42,102,12,SS_CENTERIMAGE
|
|
||||||
CTEXT "Player 2",IDC_STATIC,204,42,102,12,SS_CENTERIMAGE
|
|
||||||
GROUPBOX "Input",IDC_STATIC,66,36,246,120
|
|
||||||
CONTROL "External",GUI_BOT_EXTERNAL,"Button",BS_AUTORADIOBUTTON,72,24,41,10
|
|
||||||
CONTROL "Normal",GUI_BOT_INTERNAL,"Button",BS_AUTORADIOBUTTON | WS_GROUP,72,12,38,10
|
|
||||||
GROUPBOX "Static variables",IDC_STATIC,246,186,66,90
|
|
||||||
GROUPBOX "Score",IDC_STATIC,6,276,240,96
|
|
||||||
EDITTEXT GUI_BOT_SCORE5,72,342,168,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SCORE6,72,354,168,12,ES_AUTOHSCROLL
|
|
||||||
GROUPBOX "Init frame code",IDC_STATIC,246,313,228,59
|
|
||||||
LTEXT "Attempt:",IDC_STATIC,318,84,24,8,SS_CENTERIMAGE
|
|
||||||
CTEXT "Last:",IDC_STATIC,362,59,29,8,SS_CENTERIMAGE
|
|
||||||
CTEXT "Best:",IDC_STATIC,390,60,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_ATTEMPT_LAST,348,84,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_ATTEMPT_BEST,390,84,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SCORE_LAST,348,110,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SCORE_BEST,390,110,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE1_LAST,348,121,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE1_BEST,390,121,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE2_LAST,348,133,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE2_BEST,390,133,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE3_LAST,348,145,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE3_BEST,390,145,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE4_LAST,348,156,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE4_BEST,390,156,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE5_LAST,348,169,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE5_BEST,390,169,36,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "",GUI_BOT_ERROR,238,12,70,10,SS_CENTERIMAGE
|
|
||||||
LTEXT "",GUI_BOT_DEBUG,156,22,152,10,SS_CENTERIMAGE
|
|
||||||
LTEXT "Attempts:",IDC_STATIC,362,6,30,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_ATTEMPTS,398,6,66,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "Frames:",IDC_STATIC,362,18,30,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_FRAMES,398,18,66,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "Frames:",IDC_STATIC,318,96,24,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_FRAMES_LAST,348,97,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_FRAMES_BEST,390,97,36,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "OK:",IDC_STATIC,362,30,13,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_OKS,398,30,66,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "Invalid:",IDC_STATIC,362,42,24,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_INVALIDS,398,42,66,8,SS_CENTERIMAGE
|
|
||||||
CTEXT "Prev seg:",IDC_STATIC,432,60,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_ATTEMPT_PREV,432,84,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SCORE_PREV,432,110,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE1_PREV,432,121,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE2_PREV,432,133,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE3_PREV,432,145,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE4_PREV,432,156,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_TIE5_PREV,432,169,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_FRAMES_PREV,432,97,36,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "Segment:",IDC_STATIC,318,73,32,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SEGMENT_LAST,348,72,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SEGMENT_BEST,390,72,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_SEGMENT_PREV,432,72,36,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "0",GUI_BOT_LB_PREV,456,180,12,8,SS_CENTERIMAGE
|
|
||||||
RTEXT "Lastbutton:",GUI_BOT_TIE5_PREV3,411,180,42,8,SS_CENTERIMAGE
|
|
||||||
EDITTEXT GUI_BOT_SKIPS,318,20,36,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_SLOW,318,44,36,12,ES_AUTOHSCROLL
|
|
||||||
CTEXT "Frameskip:",IDC_STATIC,319,10,36,10,SS_CENTERIMAGE
|
|
||||||
CTEXT "Delay:",IDC_STATIC,318,33,36,10,SS_CENTERIMAGE
|
|
||||||
PUSHBUTTON "Set",GUI_BOT_FRAMESKIP,319,59,34,9
|
|
||||||
LTEXT "6:",65434,12,354,8,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "5:",65428,12,342,8,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "4:",65408,12,330,8,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "3:",65409,12,318,8,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "2:",65410,12,306,8,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "1:",65411,12,294,8,12,SS_CENTERIMAGE
|
|
||||||
EDITTEXT GUI_BOT_TITLE1,24,294,42,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_TITLE2,24,306,42,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_TITLE3,24,318,42,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_TITLE4,24,330,42,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_TITLE5,24,342,42,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_TITLE6,24,354,42,12,ES_AUTOHSCROLL
|
|
||||||
CTEXT "Title",GUI_BOT_PART_LAST2,24,285,42,8,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
CTEXT "Condition",GUI_BOT_PART_LAST3,72,284,84,10,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
GROUPBOX "Results",IDC_STATIC,313,0,44,71
|
|
||||||
GROUPBOX "",IDC_STATIC,356,0,117,55
|
|
||||||
EDITTEXT GUI_BOT_ROMNAME,51,172,255,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Comments:",65439,12,160,36,12,SS_CENTERIMAGE
|
|
||||||
GROUPBOX "Init code",IDC_STATIC,246,276,228,36
|
|
||||||
EDITTEXT GUI_BOT_INIT_SEGMENT,315,298,153,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT GUI_BOT_INIT_ATTEMPT,315,286,153,12,ES_AUTOHSCROLL
|
|
||||||
LTEXT "Before Attempt:",GUI_BOT_ATTEMPT_LAST2,252,286,59,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "Before Segment:",GUI_BOT_INIT_PART2,252,298,62,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "1:",GUI_BOT_TITLEL1,318,110,24,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "2:",GUI_BOT_TITLEL2,318,121,24,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "3:",GUI_BOT_TITLEL3,318,133,24,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "4:",GUI_BOT_TITLEL4,318,145,24,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "5:",GUI_BOT_TITLEL5,318,156,24,8,SS_CENTERIMAGE
|
|
||||||
LTEXT "6:",GUI_BOT_TITLEL6,318,169,24,8,SS_CENTERIMAGE
|
|
||||||
PUSHBUTTON "",GUI_BOT_TITLES,12,288,6,6
|
|
||||||
LISTBOX GUI_BOT_COUNTERS,478,43,55,330,LBS_SORT | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
|
|
||||||
CONTROL "Counters",GUI_BOT_VARS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,482,19,44,10
|
|
||||||
PUSHBUTTON "Update",GUI_BOT_UPDATEVARS,481,30,52,9
|
|
||||||
CONTROL "",GUI_BOT_LOG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,477,6,8,10
|
|
||||||
LTEXT "Create Logfile",IDC_STATIC,488,5,46,11,SS_CENTERIMAGE
|
|
||||||
END
|
|
||||||
|
|
||||||
DEBUGGER DIALOGEX 54, 74, 547, 306
|
DEBUGGER DIALOGEX 54, 74, 547, 306
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_3DLOOK | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "6502 Debugger"
|
CAPTION "6502 Debugger"
|
||||||
|
@ -1484,58 +1305,6 @@ BEGIN
|
||||||
LTEXT "(Hex)",IDC_STATIC,226,34,19,8
|
LTEXT "(Hex)",IDC_STATIC,226,34,19,8
|
||||||
END
|
END
|
||||||
|
|
||||||
BASICBOT2 DIALOGEX 0, 0, 335, 316
|
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
|
||||||
CAPTION "Dialog"
|
|
||||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
|
||||||
BEGIN
|
|
||||||
EDITTEXT BOT_TF_ROM,44,5,281,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
EDITTEXT BOT_TF_COMMENT,44,19,281,12,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
LTEXT "Rom",IDC_STATIC,5,5,39,14,SS_CENTERIMAGE
|
|
||||||
LTEXT "Comment",IDC_STATIC,5,19,39,13,SS_CENTERIMAGE
|
|
||||||
PUSHBUTTON "Run",BOT_BUTTON_RUN,251,158,74,14,WS_DISABLED
|
|
||||||
LTEXT "Score 1",IDC_STATIC,5,158,39,14,SS_CENTERIMAGE
|
|
||||||
EDITTEXT BOT_TF_SCORE1_DESC,44,158,50,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
LTEXT "Score 2",IDC_STATIC,5,172,39,14,SS_CENTERIMAGE
|
|
||||||
EDITTEXT BOT_TF_SCORE2_DESC,44,172,50,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
EDITTEXT BOT_TF_SCORE2_VALUE,94,172,136,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
LTEXT "Score 3",IDC_STATIC,5,186,39,14,SS_CENTERIMAGE
|
|
||||||
EDITTEXT BOT_TF_SCORE3_DESC,44,186,50,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
EDITTEXT BOT_TF_SCORE3_VALUE,94,186,136,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
CTEXT "Description",IDC_STATIC,44,147,50,11,SS_CENTERIMAGE
|
|
||||||
EDITTEXT BOT_TF_SCORE1_VALUE,94,158,136,14,ES_AUTOHSCROLL | WS_DISABLED
|
|
||||||
CTEXT "Condition",IDC_STATIC,94,147,135,11,SS_CENTERIMAGE
|
|
||||||
CTEXT "Player 1 input",IDC_STATIC,45,33,136,11,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
LTEXT "A",IDC_STATIC,5,44,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "B",IDC_STATIC,5,57,40,12,SS_CENTERIMAGE
|
|
||||||
LTEXT "Select",IDC_STATIC,5,69,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "Start",IDC_STATIC,5,82,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "Up",IDC_STATIC,5,95,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "Down",IDC_STATIC,5,108,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "Left",IDC_STATIC,5,121,40,13,SS_CENTERIMAGE
|
|
||||||
LTEXT "Right",IDC_STATIC,5,134,40,13,SS_CENTERIMAGE
|
|
||||||
EDITTEXT BOT_TF_B_1,45,57,136,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_SELECT_1,45,69,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_START_1,45,82,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_UP_1,45,95,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_DOWN_1,45,108,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_LEFT_1,45,121,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_RIGHT_1,45,134,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_A_1,45,44,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_RIGHT_2,189,134,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_LEFT_2,189,121,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_DOWN_2,189,108,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_UP_2,189,95,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_START_2,189,82,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_SELECT_2,189,69,136,13,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_B_2,189,57,136,12,ES_AUTOHSCROLL
|
|
||||||
EDITTEXT BOT_TF_A_2,189,44,136,13,ES_AUTOHSCROLL
|
|
||||||
CTEXT "Player 2 input",IDC_STATIC,189,32,136,12,SS_CENTERIMAGE,WS_EX_TRANSPARENT
|
|
||||||
PUSHBUTTON "Update Inputs",BOT_BUTTON_UPDATE,251,186,74,14
|
|
||||||
PUSHBUTTON "TEST",BOT_BUTTON_TEST,251,172,74,14,WS_DISABLED
|
|
||||||
CTEXT "Use only numbers for now, chance 0-1000",IDC_STATIC,89,19,185,12,SS_CENTERIMAGE
|
|
||||||
END
|
|
||||||
|
|
||||||
IDD_LUA_ADD DIALOGEX 0, 0, 186, 66
|
IDD_LUA_ADD DIALOGEX 0, 0, 186, 66
|
||||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||||
CAPTION "Load Lua Script..."
|
CAPTION "Load Lua Script..."
|
||||||
|
@ -1689,37 +1458,6 @@ BEGIN
|
||||||
BOTTOMMARGIN, 171
|
BOTTOMMARGIN, 171
|
||||||
END
|
END
|
||||||
|
|
||||||
"BASICBOT2", DIALOG
|
|
||||||
BEGIN
|
|
||||||
LEFTMARGIN, 5
|
|
||||||
RIGHTMARGIN, 325
|
|
||||||
VERTGUIDE, 44
|
|
||||||
VERTGUIDE, 94
|
|
||||||
VERTGUIDE, 181
|
|
||||||
VERTGUIDE, 189
|
|
||||||
VERTGUIDE, 229
|
|
||||||
VERTGUIDE, 251
|
|
||||||
VERTGUIDE, 325
|
|
||||||
VERTGUIDE, 331
|
|
||||||
TOPMARGIN, 5
|
|
||||||
BOTTOMMARGIN, 306
|
|
||||||
HORZGUIDE, 19
|
|
||||||
HORZGUIDE, 31
|
|
||||||
HORZGUIDE, 44
|
|
||||||
HORZGUIDE, 57
|
|
||||||
HORZGUIDE, 69
|
|
||||||
HORZGUIDE, 82
|
|
||||||
HORZGUIDE, 95
|
|
||||||
HORZGUIDE, 108
|
|
||||||
HORZGUIDE, 121
|
|
||||||
HORZGUIDE, 134
|
|
||||||
HORZGUIDE, 147
|
|
||||||
HORZGUIDE, 158
|
|
||||||
HORZGUIDE, 172
|
|
||||||
HORZGUIDE, 186
|
|
||||||
HORZGUIDE, 200
|
|
||||||
END
|
|
||||||
|
|
||||||
"IDD_LUA_ADD", DIALOG
|
"IDD_LUA_ADD", DIALOG
|
||||||
BEGIN
|
BEGIN
|
||||||
LEFTMARGIN, 7
|
LEFTMARGIN, 7
|
||||||
|
@ -1834,42 +1572,6 @@ IDB_TE_ARROW BITMAP "res/te_arrow.bmp"
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
// Dutch (Netherlands) resources
|
|
||||||
|
|
||||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NLD)
|
|
||||||
#ifdef _WIN32
|
|
||||||
LANGUAGE LANG_DUTCH, SUBLANG_DUTCH
|
|
||||||
#pragma code_page(1252)
|
|
||||||
#endif //_WIN32
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
//
|
|
||||||
// Menu
|
|
||||||
//
|
|
||||||
|
|
||||||
BASICBOTMENU MENU
|
|
||||||
BEGIN
|
|
||||||
POPUP "File"
|
|
||||||
BEGIN
|
|
||||||
MENUITEM "Clear", ID_FILE_CLEAR, INACTIVE
|
|
||||||
MENUITEM "Load", ID_FILE_LOAD, INACTIVE
|
|
||||||
MENUITEM "Save", ID_FILE_SAVE40223, INACTIVE
|
|
||||||
MENUITEM "Close", BOT_MENU_CLOSE
|
|
||||||
END
|
|
||||||
MENUITEM "Play Best", ID_PLAYBEST, INACTIVE
|
|
||||||
MENUITEM "Reset", ID_RESET, INACTIVE
|
|
||||||
POPUP "Mode"
|
|
||||||
BEGIN
|
|
||||||
MENUITEM "Simple", ID_MODE_SIMPLE, CHECKED
|
|
||||||
MENUITEM "Advanced", ID_MODE_ADVANCED, INACTIVE
|
|
||||||
END
|
|
||||||
END
|
|
||||||
|
|
||||||
#endif // Dutch (Netherlands) resources
|
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef APSTUDIO_INVOKED
|
#ifndef APSTUDIO_INVOKED
|
||||||
/////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
|
@ -2,11 +2,9 @@
|
||||||
// Microsoft Visual C++ generated include file.
|
// Microsoft Visual C++ generated include file.
|
||||||
// Used by res.rc
|
// Used by res.rc
|
||||||
//
|
//
|
||||||
#define GUI_BOT_CLOSE 1
|
|
||||||
#define CLOSE_BUTTON 1
|
#define CLOSE_BUTTON 1
|
||||||
#define BUTTON_CLOSE 1
|
#define BUTTON_CLOSE 1
|
||||||
#define BTN_CLOSE 1
|
#define BTN_CLOSE 1
|
||||||
#define GUI_BOT_VALUES 2
|
|
||||||
#define BTN_CANCEL 2
|
#define BTN_CANCEL 2
|
||||||
#define MENU_OPEN_FILE 100
|
#define MENU_OPEN_FILE 100
|
||||||
#define EDIT_ROMS 100
|
#define EDIT_ROMS 100
|
||||||
|
@ -276,165 +274,59 @@
|
||||||
#define IDC_VIDEOCONFIG_NO8LIM 600
|
#define IDC_VIDEOCONFIG_NO8LIM 600
|
||||||
#define IDC_DEBUGGER_ROM_PATCHER 602
|
#define IDC_DEBUGGER_ROM_PATCHER 602
|
||||||
#define LIST_DEBUGGER_BOOKMARKS 701
|
#define LIST_DEBUGGER_BOOKMARKS 701
|
||||||
#define GUI_BOT_A_1 1000
|
|
||||||
#define IDC_EDIT_OFFSET 1000
|
#define IDC_EDIT_OFFSET 1000
|
||||||
#define IDC_GAME_GENIE_CODE 1000
|
#define IDC_GAME_GENIE_CODE 1000
|
||||||
#define IDC_MEMVIEWFIND_WHAT 1000
|
#define IDC_MEMVIEWFIND_WHAT 1000
|
||||||
#define IDC_BOOKMARK_DESCRIPTION 1000
|
#define IDC_BOOKMARK_DESCRIPTION 1000
|
||||||
#define GUI_BOT_B_1 1001
|
|
||||||
#define MW_ADDR00 1001
|
#define MW_ADDR00 1001
|
||||||
#define IDC_EDIT_FROM 1001
|
#define IDC_EDIT_FROM 1001
|
||||||
#define IDC_GAME_GENIE_ADDR 1001
|
#define IDC_GAME_GENIE_ADDR 1001
|
||||||
#define IDC_MEMVIEWFIND_TYPE_HEX 1001
|
#define IDC_MEMVIEWFIND_TYPE_HEX 1001
|
||||||
#define IDC_NTVIEW_MIRROR_HORIZONTAL 1001
|
#define IDC_NTVIEW_MIRROR_HORIZONTAL 1001
|
||||||
#define GUI_BOT_SELECT_1 1002
|
|
||||||
#define IDC_CHECK_STOPMOVIE 1002
|
#define IDC_CHECK_STOPMOVIE 1002
|
||||||
#define IDC_GAME_GENIE_COMP 1002
|
#define IDC_GAME_GENIE_COMP 1002
|
||||||
#define IDC_TRACER_STATS 1002
|
#define IDC_TRACER_STATS 1002
|
||||||
#define IDC_MEMVIEWFIND_TYPE_TEXT 1002
|
#define IDC_MEMVIEWFIND_TYPE_TEXT 1002
|
||||||
#define IDC_NTVIEW_MIRROR_VERTICAL 1002
|
#define IDC_NTVIEW_MIRROR_VERTICAL 1002
|
||||||
#define GUI_BOT_START_1 1003
|
|
||||||
#define LV_MAPPING 1003
|
#define LV_MAPPING 1003
|
||||||
#define IDC_EDIT_STOPFRAME 1003
|
#define IDC_EDIT_STOPFRAME 1003
|
||||||
#define IDC_GAME_GENIE_VAL 1003
|
#define IDC_GAME_GENIE_VAL 1003
|
||||||
#define IDC_MEMVIEWFIND_DIR_UP 1003
|
#define IDC_MEMVIEWFIND_DIR_UP 1003
|
||||||
#define IDC_NTVIEW_MIRROR_FOUR_SCREEN 1003
|
#define IDC_NTVIEW_MIRROR_FOUR_SCREEN 1003
|
||||||
#define GUI_BOT_UP_1 1004
|
|
||||||
#define MW_ADDR01 1004
|
#define MW_ADDR01 1004
|
||||||
#define IDC_LIST_GGADDRESSES 1004
|
#define IDC_LIST_GGADDRESSES 1004
|
||||||
#define IDC_MEMVIEWFIND_DIR_DOWN 1004
|
#define IDC_MEMVIEWFIND_DIR_DOWN 1004
|
||||||
#define IDC_NTVIEW_MIRROR_SS_TABLE_0 1004
|
#define IDC_NTVIEW_MIRROR_SS_TABLE_0 1004
|
||||||
#define GUI_BOT_DOWN_1 1005
|
|
||||||
#define IDC_BTN_ADD_TO_CHEATS 1005
|
#define IDC_BTN_ADD_TO_CHEATS 1005
|
||||||
#define IDC_MEMVIEWFIND_NEXT 1005
|
#define IDC_MEMVIEWFIND_NEXT 1005
|
||||||
#define IDC_NTVIEW_MIRROR_SS_TABLE_1 1005
|
#define IDC_NTVIEW_MIRROR_SS_TABLE_1 1005
|
||||||
#define GUI_BOT_LEFT_1 1006
|
|
||||||
#define IDC_NTVIEW_MIRROR_SS_TABLE_2 1006
|
#define IDC_NTVIEW_MIRROR_SS_TABLE_2 1006
|
||||||
#define GUI_BOT_RIGHT_1 1007
|
|
||||||
#define MW_ADDR02 1007
|
#define MW_ADDR02 1007
|
||||||
#define IDC_NTVIEW_MIRROR_SS_TABLE_3 1007
|
#define IDC_NTVIEW_MIRROR_SS_TABLE_3 1007
|
||||||
#define GUI_BOT_A_2 1008
|
|
||||||
#define IDC_NTVIEW_SHOW_SCROLL_LINES 1008
|
#define IDC_NTVIEW_SHOW_SCROLL_LINES 1008
|
||||||
#define GUI_BOT_INVALID 1009
|
|
||||||
#define GUI_BOT_X 1010
|
|
||||||
#define MW_ADDR03 1010
|
#define MW_ADDR03 1010
|
||||||
#define GUI_BOT_SCORE2 1011
|
|
||||||
#define GUI_BOT_SCORE3 1012
|
|
||||||
#define GUI_BOT_SCORE4 1013
|
|
||||||
#define MW_ADDR04 1013
|
#define MW_ADDR04 1013
|
||||||
#define GUI_BOT_SAVE 1014
|
|
||||||
#define GUI_BOT_LOAD 1015
|
|
||||||
#define GUI_BOT_RUN 1016
|
|
||||||
#define MW_ADDR05 1016
|
#define MW_ADDR05 1016
|
||||||
#define GUI_BOT_SCORE1 1017
|
|
||||||
#define GUI_BOT_Y 1018
|
|
||||||
#define GUI_BOT_KEYS 1019
|
|
||||||
#define MW_ADDR06 1019
|
#define MW_ADDR06 1019
|
||||||
#define GUI_BOT_EXTRA 1020
|
|
||||||
#define GUI_BOT_BEST 1021
|
|
||||||
#define GUI_BOT_Z 1022
|
|
||||||
#define MW_ADDR07 1022
|
#define MW_ADDR07 1022
|
||||||
#define GUI_BOT_COMMENTS 1023
|
|
||||||
#define GUI_BOT_UPDATE 1024
|
|
||||||
#define GUI_BOT_BOTMODE 1025
|
#define GUI_BOT_BOTMODE 1025
|
||||||
#define GUI_BOT_ROMNAME 1025
|
|
||||||
#define MW_ADDR08 1025
|
#define MW_ADDR08 1025
|
||||||
#define GUI_BOT_P 1026
|
|
||||||
#define GUI_BOT_Q 1027
|
|
||||||
#define GUI_BOT_TEST 1028
|
|
||||||
#define MW_ADDR09 1028
|
#define MW_ADDR09 1028
|
||||||
#define GUI_BOT_RESET 1029
|
|
||||||
#define GUI_BOT_ROLLBACK 1030
|
|
||||||
#define GUI_BOT_MAXFRAMES 1031
|
|
||||||
#define MW_ADDR10 1031
|
#define MW_ADDR10 1031
|
||||||
#define GUI_BOT_MAXATTEMPTS 1032
|
|
||||||
#define GUI_BOT_MAXSEGMENTS 1033
|
|
||||||
#define GUI_BOT_B_2 1034
|
|
||||||
#define MW_ADDR11 1034
|
#define MW_ADDR11 1034
|
||||||
#define GUI_BOT_INTERNAL 1035
|
|
||||||
#define GUI_BOT_CLEAR 1036
|
|
||||||
#define GUI_BOT_ATTEMPTS 1037
|
|
||||||
#define MW_ADDR12 1037
|
#define MW_ADDR12 1037
|
||||||
#define GUI_BOT_SELECT_2 1038
|
|
||||||
#define GUI_BOT_START_2 1039
|
|
||||||
#define GUI_BOT_EXTERNAL 1040
|
|
||||||
#define MW_ADDR13 1040
|
#define MW_ADDR13 1040
|
||||||
#define GUI_BOT_UP_2 1041
|
|
||||||
#define GUI_BOT_DOWN_2 1042
|
|
||||||
#define GUI_BOT_LEFT_2 1043
|
|
||||||
#define MW_ADDR14 1043
|
#define MW_ADDR14 1043
|
||||||
#define GUI_BOT_RIGHT_2 1044
|
|
||||||
#define GUI_BOT_SCORE5 1045
|
|
||||||
#define GUI_BOT_SCORE6 1046
|
|
||||||
#define MW_ADDR15 1046
|
#define MW_ADDR15 1046
|
||||||
#define GUI_BOT_INIT_SEGMENT 1047
|
|
||||||
#define GUI_BOT_INIT_ATTEMPT 1048
|
|
||||||
#define GUI_BOT_FRAMES 1049
|
|
||||||
#define MW_ADDR16 1049
|
#define MW_ADDR16 1049
|
||||||
#define GUI_BOT_U 1052
|
|
||||||
#define MW_ADDR17 1052
|
#define MW_ADDR17 1052
|
||||||
#define MW_ADDR18 1055
|
#define MW_ADDR18 1055
|
||||||
#define MW_ADDR19 1058
|
#define MW_ADDR19 1058
|
||||||
#define GUI_BOT_OK 1061
|
|
||||||
#define MW_ADDR20 1061
|
#define MW_ADDR20 1061
|
||||||
#define GUI_BOT_ATTEMPT_LAST 1062
|
|
||||||
#define GUI_BOT_ATTEMPT_BEST 1063
|
|
||||||
#define GUI_BOT_SCORE_LAST 1064
|
|
||||||
#define MW_ADDR21 1064
|
#define MW_ADDR21 1064
|
||||||
#define GUI_BOT_SCORE_BEST 1065
|
|
||||||
#define GUI_BOT_TIE1_LAST 1066
|
|
||||||
#define GUI_BOT_TIE1_BEST 1067
|
|
||||||
#define MW_ADDR22 1067
|
#define MW_ADDR22 1067
|
||||||
#define GUI_BOT_TIE2_BEST 1068
|
|
||||||
#define GUI_BOT_TIE3_BEST 1069
|
|
||||||
#define GUI_BOT_TIE4_BEST 1070
|
|
||||||
#define MW_ADDR23 1070
|
#define MW_ADDR23 1070
|
||||||
#define GUI_BOT_TIE5_BEST 1071
|
|
||||||
#define GUI_BOT_TIE2_LAST 1072
|
|
||||||
#define GUI_BOT_TIE3_LAST 1073
|
|
||||||
#define GUI_BOT_TIE4_LAST 1074
|
|
||||||
#define GUI_BOT_TIE5_LAST 1075
|
|
||||||
#define GUI_BOT_ATTEMPT_LAST2 1076
|
|
||||||
#define GUI_BOT_SKIPS 1077
|
|
||||||
#define GUI_BOT_FRAMES_LAST 1078
|
|
||||||
#define GUI_BOT_FRAMES_BEST 1079
|
|
||||||
#define GUI_BOT_OKS 1080
|
|
||||||
#define GUI_BOT_ATTEMPT_PREV 1081
|
|
||||||
#define GUI_BOT_INVALIDS 1082
|
|
||||||
#define GUI_BOT_SCORE_PREV 1083
|
|
||||||
#define GUI_BOT_TIE1_PREV 1084
|
|
||||||
#define GUI_BOT_TIE2_PREV 1085
|
|
||||||
#define GUI_BOT_TIE3_PREV 1086
|
|
||||||
#define GUI_BOT_TIE4_PREV 1087
|
|
||||||
#define GUI_BOT_TIE5_PREV 1088
|
|
||||||
#define GUI_BOT_FRAMES_PREV 1089
|
|
||||||
#define GUI_BOT_PART_LAST 1090
|
#define GUI_BOT_PART_LAST 1090
|
||||||
#define GUI_BOT_SEGMENT_BEST 1091
|
|
||||||
#define GUI_BOT_SEGMENT_LAST 1090
|
|
||||||
#define GUI_BOT_SEGMENT_PREV 1092
|
|
||||||
#define GUI_BOT_LB_PREV 1093
|
|
||||||
#define GUI_BOT_TIE5_PREV3 1094
|
|
||||||
#define GUI_BOT_SLOW 1095
|
|
||||||
#define GUI_BOT_FRAMESKIP 1096
|
|
||||||
#define GUI_BOT_PART_LAST2 1097
|
|
||||||
#define GUI_BOT_TITLE1 1098
|
|
||||||
#define GUI_BOT_TITLE2 1099
|
|
||||||
#define GUI_BOT_TITLE3 1100
|
|
||||||
#define GUI_BOT_TITLE4 1101
|
|
||||||
#define GUI_BOT_TITLE5 1102
|
|
||||||
#define GUI_BOT_TITLE6 1103
|
|
||||||
#define GUI_BOT_PART_LAST3 1104
|
|
||||||
#define GUI_BOT_INIT_PART2 1105
|
|
||||||
#define GUI_BOT_TITLEL1 1106
|
|
||||||
#define GUI_BOT_TITLES 1107
|
|
||||||
#define GUI_BOT_TITLEL2 1108
|
|
||||||
#define GUI_BOT_LOG 1109
|
|
||||||
#define GUI_BOT_TITLEL3 1110
|
|
||||||
#define GUI_BOT_TITLEL4 1111
|
|
||||||
#define GUI_BOT_TITLEL5 1112
|
|
||||||
#define GUI_BOT_TITLEL6 1113
|
|
||||||
#define GUI_BOT_COUNTERS 1114
|
|
||||||
#define GUI_BOT_UPDATEVARS 1115
|
|
||||||
#define BTN_ALLOW_LRUD 1117
|
#define BTN_ALLOW_LRUD 1117
|
||||||
#define BTN_PRESET_SET1 1119
|
#define BTN_PRESET_SET1 1119
|
||||||
#define BTN_PRESET_SET2 1120
|
#define BTN_PRESET_SET2 1120
|
||||||
|
@ -464,35 +356,7 @@
|
||||||
#define IDC_BUTTON8 1146
|
#define IDC_BUTTON8 1146
|
||||||
#define IDC_EDIT1 1147
|
#define IDC_EDIT1 1147
|
||||||
#define IDC_BUTTON9 1148
|
#define IDC_BUTTON9 1148
|
||||||
#define BOT_TF_COMMENT 1148
|
|
||||||
#define IDC_LIST2 1149
|
#define IDC_LIST2 1149
|
||||||
#define BOT_TF_A_1 1149
|
|
||||||
#define BOT_TF_B_1 1150
|
|
||||||
#define BOT_TF_SELECT_1 1152
|
|
||||||
#define BOT_TF_START_1 1153
|
|
||||||
#define BOT_TF_UP_1 1154
|
|
||||||
#define BOT_TF_DOWN_1 1156
|
|
||||||
#define BOT_TF_LEFT_1 1157
|
|
||||||
#define BOT_TF_RIGHT_1 1158
|
|
||||||
#define BOT_TF_A_2 1160
|
|
||||||
#define BOT_TF_B_2 1161
|
|
||||||
#define BOT_TF_SELECT_2 1162
|
|
||||||
#define BOT_TF_START_2 1163
|
|
||||||
#define BOT_TF_UP_2 1164
|
|
||||||
#define BOT_TF_DOWN_2 1165
|
|
||||||
#define BOT_TF_LEFT_2 1166
|
|
||||||
#define BOT_TF_RIGHT_2 1167
|
|
||||||
#define BOT_TF_SCORE1_DESC 1169
|
|
||||||
#define BOT_BUTTON_UPDATE 1171
|
|
||||||
#define BOT_BUTTON_RUN 1172
|
|
||||||
#define BOT_BUTTON_TEST 1173
|
|
||||||
#define BOT_TF_ROM 1174
|
|
||||||
#define GUI_BOT_VARS 1175
|
|
||||||
#define BOT_TF_SCORE1_VALUE 1176
|
|
||||||
#define BOT_TF_SCORE2_DESC 1181
|
|
||||||
#define BOT_TF_SCORE2_VALUE 1182
|
|
||||||
#define BOT_TF_SCORE3_DESC 1183
|
|
||||||
#define BOT_TF_SCORE3_VALUE 1184
|
|
||||||
#define MENU_NETWORK 40040
|
#define MENU_NETWORK 40040
|
||||||
#define MENU_PALETTE 40041
|
#define MENU_PALETTE 40041
|
||||||
#define MENU_SOUND 40042
|
#define MENU_SOUND 40042
|
||||||
|
@ -641,22 +505,11 @@
|
||||||
#define ID_FILE_CLOSECTRL40216 40216
|
#define ID_FILE_CLOSECTRL40216 40216
|
||||||
#define ID_MEMWVIEW_FILE_CLOSE 40217
|
#define ID_MEMWVIEW_FILE_CLOSE 40217
|
||||||
#define ID_FILE_CLOSE40218 40218
|
#define ID_FILE_CLOSE40218 40218
|
||||||
#define ID_TOOLS_NEWBASICBOT 40219
|
|
||||||
#define MENU_BASIC_BOT2 40220
|
#define MENU_BASIC_BOT2 40220
|
||||||
#define ID_FILE_CLEAR 40221
|
|
||||||
#define ID_FILE_LOAD 40222
|
|
||||||
#define ID_FILE_SAVE40223 40223
|
|
||||||
#define ID_MODE_SIMPLE 40224
|
|
||||||
#define ID_MODE_ADVANCED 40225
|
|
||||||
#define ID_PLAYBEST 40226
|
|
||||||
#define ID_RESET 40227
|
|
||||||
#define BOT_MENU_CLOSE 40228
|
|
||||||
#define ID_FILE_RUNLUASCRIPT 40229
|
#define ID_FILE_RUNLUASCRIPT 40229
|
||||||
#define ID_FILE_STOPLUASCRIPT 40230
|
#define ID_FILE_STOPLUASCRIPT 40230
|
||||||
#define MW_ValueLabel2 65423
|
#define MW_ValueLabel2 65423
|
||||||
#define MW_ValueLabel1 65426
|
#define MW_ValueLabel1 65426
|
||||||
#define GUI_BOT_DEBUG 65436
|
|
||||||
#define GUI_BOT_ERROR 65438
|
|
||||||
|
|
||||||
// Next default values for new objects
|
// Next default values for new objects
|
||||||
//
|
//
|
||||||
|
|
|
@ -41,8 +41,6 @@
|
||||||
#include "memview.h"
|
#include "memview.h"
|
||||||
#include "tracer.h"
|
#include "tracer.h"
|
||||||
#include "cdlogger.h"
|
#include "cdlogger.h"
|
||||||
#include "basicbot.h"
|
|
||||||
#include "basicbot2.h" // qfox: new bot
|
|
||||||
#include "throttle.h"
|
#include "throttle.h"
|
||||||
#include "monitor.h"
|
#include "monitor.h"
|
||||||
#include "tasedit.h"
|
#include "tasedit.h"
|
||||||
|
@ -93,7 +91,6 @@ const unsigned int MAX_NUMBER_OF_RECENT_FILES = sizeof(recent_files)/sizeof(*rec
|
||||||
// Exported variables
|
// Exported variables
|
||||||
HWND pwindow;
|
HWND pwindow;
|
||||||
int EnableBackgroundInput = 0;
|
int EnableBackgroundInput = 0;
|
||||||
int EnableExternalInput = 0;
|
|
||||||
int ismaximized = 0;
|
int ismaximized = 0;
|
||||||
|
|
||||||
//Menu handle of the main menu.
|
//Menu handle of the main menu.
|
||||||
|
@ -312,7 +309,6 @@ void UpdateCheckedMenuItems()
|
||||||
|
|
||||||
CheckMenuItem(fceumenu, MENU_BACKGROUND_INPUT, EnableBackgroundInput ? MF_CHECKED : MF_UNCHECKED);
|
CheckMenuItem(fceumenu, MENU_BACKGROUND_INPUT, EnableBackgroundInput ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu, MENU_ENABLE_AUTOSAVE, EnableAutosave ? MF_CHECKED : MF_UNCHECKED);
|
CheckMenuItem(fceumenu, MENU_ENABLE_AUTOSAVE, EnableAutosave ? MF_CHECKED : MF_UNCHECKED);
|
||||||
CheckMenuItem(fceumenu, MENU_EXTERNAL_INPUT, EnableExternalInput ? MF_CHECKED : MF_UNCHECKED);
|
|
||||||
|
|
||||||
int AutoFirePatternIDs[] = {
|
int AutoFirePatternIDs[] = {
|
||||||
MENU_AUTOFIRE_PATTERN_1,
|
MENU_AUTOFIRE_PATTERN_1,
|
||||||
|
@ -923,21 +919,6 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
DoTasEdit();
|
DoTasEdit();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MENU_EXTERNAL_INPUT:
|
|
||||||
// qfox: TODO: this should be looked into. treat true external input as special versus the bot input
|
|
||||||
// right now it is compatible with the old mode, but pressing this menuoption will turn off
|
|
||||||
// the new bot if on...
|
|
||||||
FCEU_SetBotMode(
|
|
||||||
(
|
|
||||||
(1^(FCEU_BotMode() == BOTMODE_OFF?0:1))==1?
|
|
||||||
BOTMODE_OLDBOT:
|
|
||||||
BOTMODE_OFF
|
|
||||||
)
|
|
||||||
);
|
|
||||||
EnableExternalInput = EnableExternalInput?0:1;
|
|
||||||
UpdateCheckedMenuItems(); break;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_HIDE_MENU:
|
case MENU_HIDE_MENU:
|
||||||
// Hide menu menu was selected
|
// Hide menu menu was selected
|
||||||
ToggleHideMenu();
|
ToggleHideMenu();
|
||||||
|
@ -1019,14 +1000,6 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
|
||||||
ConfigCheats(hWnd);
|
ConfigCheats(hWnd);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MENU_BASIC_BOT:
|
|
||||||
CreateBasicBot();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_BASIC_BOT2:
|
|
||||||
BotCreateBasicBot();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_DIRECTORIES:
|
case MENU_DIRECTORIES:
|
||||||
// Directories menu was selected
|
// Directories menu was selected
|
||||||
ConfigDirectories();
|
ConfigDirectories();
|
||||||
|
|
|
@ -543,7 +543,7 @@ void FCEUI_Emulate(uint8 **pXBuf, int32 **SoundBuf, int32 *SoundBufSize, int ski
|
||||||
|
|
||||||
if(EmulationPaused&2)
|
if(EmulationPaused&2)
|
||||||
EmulationPaused &= ~1; // clear paused flag temporarily (frame advance)
|
EmulationPaused &= ~1; // clear paused flag temporarily (frame advance)
|
||||||
else if((EmulationPaused&1) || FCEU_BotMode() != BOTMODE_OFF)
|
else if((EmulationPaused&1))
|
||||||
{
|
{
|
||||||
memcpy(XBuf, XBackBuf, 256*256);
|
memcpy(XBuf, XBackBuf, 256*256);
|
||||||
FCEU_PutImage();
|
FCEU_PutImage();
|
||||||
|
@ -554,11 +554,8 @@ void FCEUI_Emulate(uint8 **pXBuf, int32 **SoundBuf, int32 *SoundBufSize, int ski
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(FCEU_BotMode() == BOTMODE_OFF)
|
|
||||||
{
|
|
||||||
AutoFire();
|
AutoFire();
|
||||||
UpdateAutosave();
|
UpdateAutosave();
|
||||||
}
|
|
||||||
|
|
||||||
FCEU_LuaFrameBoundary();
|
FCEU_LuaFrameBoundary();
|
||||||
FCEU_UpdateInput();
|
FCEU_UpdateInput();
|
||||||
|
|
|
@ -40,9 +40,6 @@ extern uint8 MMC5HackSPMode;
|
||||||
extern uint8 MMC5HackSPScroll;
|
extern uint8 MMC5HackSPScroll;
|
||||||
extern uint8 MMC5HackSPPage;
|
extern uint8 MMC5HackSPPage;
|
||||||
|
|
||||||
#ifdef _USE_SHARED_MEMORY_
|
|
||||||
extern uint32 *BotInput;
|
|
||||||
#endif
|
|
||||||
extern uint8 *RAM; //shared memory modifications
|
extern uint8 *RAM; //shared memory modifications
|
||||||
extern uint8 *GameMemBlock; //shared memory modifications
|
extern uint8 *GameMemBlock; //shared memory modifications
|
||||||
|
|
||||||
|
|
|
@ -40,10 +40,6 @@
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#include "drivers/win/main.h"
|
#include "drivers/win/main.h"
|
||||||
// qfox: For UpdateExternalButton(), called when the
|
|
||||||
// botmode state changes, to update a label in gui.
|
|
||||||
#include "drivers/win/basicbot.h"
|
|
||||||
#include "drivers/win/basicbot2.h" // qfox: new bot
|
|
||||||
#include "drivers/win/memwatch.h"
|
#include "drivers/win/memwatch.h"
|
||||||
#include "drivers/win/cheat.h"
|
#include "drivers/win/cheat.h"
|
||||||
#include "drivers/win/debugger.h"
|
#include "drivers/win/debugger.h"
|
||||||
|
@ -85,8 +81,6 @@ static uint8 joy_readbit[2];
|
||||||
uint8 joy[4]={0,0,0,0}; //HACK - should be static but movie needs it
|
uint8 joy[4]={0,0,0,0}; //HACK - should be static but movie needs it
|
||||||
static uint8 LastStrobe;
|
static uint8 LastStrobe;
|
||||||
|
|
||||||
BOTMODES BotMode = BOTMODE_OFF;
|
|
||||||
|
|
||||||
#ifdef _USE_SHARED_MEMORY_
|
#ifdef _USE_SHARED_MEMORY_
|
||||||
static uint32 BotPointer = 0; //mbg merge 7/18/06 changed to uint32
|
static uint32 BotPointer = 0; //mbg merge 7/18/06 changed to uint32
|
||||||
#endif
|
#endif
|
||||||
|
@ -268,20 +262,6 @@ static void StrobeGP(int w)
|
||||||
static INPUTC GPC={ReadGP,0,StrobeGP,UpdateGP,0,0,LogGP,LoadGP};
|
static INPUTC GPC={ReadGP,0,StrobeGP,UpdateGP,0,0,LogGP,LoadGP};
|
||||||
static INPUTC GPCVS={ReadGPVS,0,StrobeGP,UpdateGP,0,0,LogGP,LoadGP};
|
static INPUTC GPCVS={ReadGPVS,0,StrobeGP,UpdateGP,0,0,LogGP,LoadGP};
|
||||||
|
|
||||||
BOTMODES FCEU_BotMode()
|
|
||||||
{
|
|
||||||
return BotMode;
|
|
||||||
}
|
|
||||||
|
|
||||||
void FCEU_SetBotMode(BOTMODES x)
|
|
||||||
{
|
|
||||||
BotMode = x;
|
|
||||||
#ifdef WIN32
|
|
||||||
// qfox: update gui in basicbot
|
|
||||||
UpdateExternalButton();
|
|
||||||
#endif // WIN32
|
|
||||||
}
|
|
||||||
|
|
||||||
void FCEU_DrawInput(uint8 *buf)
|
void FCEU_DrawInput(uint8 *buf)
|
||||||
{
|
{
|
||||||
for(int pad=0;pad<2;pad++)
|
for(int pad=0;pad<2;pad++)
|
||||||
|
@ -290,50 +270,11 @@ void FCEU_DrawInput(uint8 *buf)
|
||||||
portFC.driver->Draw(buf,portFC.attrib);
|
portFC.driver->Draw(buf,portFC.attrib);
|
||||||
}
|
}
|
||||||
|
|
||||||
void FCEU_UpdateBot()
|
|
||||||
{
|
|
||||||
#ifdef _USE_SHARED_MEMORY_
|
|
||||||
//This is the external input (aka bot) code
|
|
||||||
if(BotMode == BOTMODE_OFF)
|
|
||||||
return;
|
|
||||||
if(BotInput[0])
|
|
||||||
{
|
|
||||||
BotPointer++;
|
|
||||||
switch(BotInput[BotPointer] >> 16)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
joy[0] = BotInput[BotPointer] & 255;
|
|
||||||
joy[1] = BotInput[BotPointer] >> 8;
|
|
||||||
joy[2] = joy[3] = 0;
|
|
||||||
FCEUI_FrameAdvance();
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
FCEUI_LoadState(BOT_STATEFILE);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
//Bot input ends; let the world know we're done
|
|
||||||
if(BotPointer >= BotInput[0] || BotPointer >= BOT_MAXFRAMES-1)
|
|
||||||
{
|
|
||||||
BotInput[0] = 0;
|
|
||||||
BotPointer = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
BotPointer = 0;
|
|
||||||
joy[0] = joy[1] = joy[2] = joy[3] = 0;
|
|
||||||
}
|
|
||||||
#endif //_USE_SHARED_MEMORY_
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void FCEU_UpdateInput(void)
|
void FCEU_UpdateInput(void)
|
||||||
{
|
{
|
||||||
//tell all drivers to poll input and set up their logical states
|
//tell all drivers to poll input and set up their logical states
|
||||||
if(!FCEUMOV_Mode(MOVIEMODE_PLAY) && BotMode == BOTMODE_OFF)
|
if(!FCEUMOV_Mode(MOVIEMODE_PLAY))
|
||||||
{
|
{
|
||||||
for(int port=0;port<2;port++)
|
for(int port=0;port<2;port++)
|
||||||
joyports[port].driver->Update(port,joyports[port].ptr,joyports[port].attrib);
|
joyports[port].driver->Update(port,joyports[port].ptr,joyports[port].attrib);
|
||||||
|
|
|
@ -89,13 +89,6 @@ extern struct FCPORT
|
||||||
} portFC;
|
} portFC;
|
||||||
|
|
||||||
|
|
||||||
enum BOTMODES {
|
|
||||||
BOTMODE_OFF = 0,
|
|
||||||
BOTMODE_OLDBOT = 1,
|
|
||||||
BOTMODE_NEWBOT = 2
|
|
||||||
};
|
|
||||||
BOTMODES FCEU_BotMode(void);
|
|
||||||
void FCEU_SetBotMode(BOTMODES x);
|
|
||||||
void FCEU_DrawInput(uint8 *buf);
|
void FCEU_DrawInput(uint8 *buf);
|
||||||
void FCEU_UpdateInput(void);
|
void FCEU_UpdateInput(void);
|
||||||
void InitializeInput(void);
|
void InitializeInput(void);
|
||||||
|
|
|
@ -533,7 +533,7 @@ bool FCEUSS_Load(char *fname)
|
||||||
//If in bot mode, don't do a backup when loading.
|
//If in bot mode, don't do a backup when loading.
|
||||||
//Otherwise you eat at the hard disk, since so many
|
//Otherwise you eat at the hard disk, since so many
|
||||||
//states are being loaded.
|
//states are being loaded.
|
||||||
if(FCEUSS_LoadFP(st,FCEU_BotMode() != BOTMODE_OFF?SSLOADPARAM_NOBACKUP:SSLOADPARAM_BACKUP))
|
if(FCEUSS_LoadFP(st,SSLOADPARAM_BACKUP))
|
||||||
{
|
{
|
||||||
if(fname)
|
if(fname)
|
||||||
{
|
{
|
||||||
|
|
|
@ -747,40 +747,6 @@
|
||||||
RelativePath="..\src\drivers\win\aviout.cpp"
|
RelativePath="..\src\drivers\win\aviout.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
|
||||||
RelativePath="..\src\drivers\win\basicbot.cpp"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\src\drivers\win\basicbot.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\src\drivers\win\basicbot2.cpp"
|
|
||||||
>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Debug|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
<FileConfiguration
|
|
||||||
Name="Release|Win32"
|
|
||||||
>
|
|
||||||
<Tool
|
|
||||||
Name="VCCLCompilerTool"
|
|
||||||
ObjectFile="$(IntDir)\$(InputName)1.obj"
|
|
||||||
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
|
|
||||||
/>
|
|
||||||
</FileConfiguration>
|
|
||||||
</File>
|
|
||||||
<File
|
|
||||||
RelativePath="..\src\drivers\win\basicbot2.h"
|
|
||||||
>
|
|
||||||
</File>
|
|
||||||
<File
|
<File
|
||||||
RelativePath="..\src\drivers\win\cdlogger.cpp"
|
RelativePath="..\src\drivers\win\cdlogger.cpp"
|
||||||
>
|
>
|
||||||
|
@ -2460,7 +2426,7 @@
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="copy /y ..\src\auxlib.lua "$(OutDir)""
|
CommandLine="copy /y ..\src\auxlib.lua "$(OutDir)"
"
|
||||||
Outputs="$(OutDir)\auxlib.lua"
|
Outputs="$(OutDir)\auxlib.lua"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
|
@ -2469,7 +2435,7 @@
|
||||||
>
|
>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCCustomBuildTool"
|
Name="VCCustomBuildTool"
|
||||||
CommandLine="copy /y ..\src\auxlib.lua "$(OutDir)""
|
CommandLine="copy /y ..\src\auxlib.lua "$(OutDir)"
"
|
||||||
Outputs="$(OutDir)\auxlib.lua"
|
Outputs="$(OutDir)\auxlib.lua"
|
||||||
/>
|
/>
|
||||||
</FileConfiguration>
|
</FileConfiguration>
|
||||||
|
|
Loading…
Reference in New Issue