commit
4c6a5b5313
|
@ -4,5 +4,5 @@ image:
|
|||
- Ubuntu2004
|
||||
#- Ubuntu1804
|
||||
build_script:
|
||||
- cmd: msbuild "./vc/vc14_fceux.sln"
|
||||
- cmd: pipelines/win32_build.bat
|
||||
- sh: ./pipelines/linux_build.sh
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
use strict;
|
||||
|
||||
my $VERSION="2.2.4";
|
||||
my $VERSION="2.2.3";
|
||||
my $INSTALL_PREFIX="/tmp/fceux";
|
||||
my $CTL_FILENAME="$INSTALL_PREFIX/DEBIAN/control";
|
||||
my $ARCH="amd64";
|
||||
|
|
|
@ -113,3 +113,6 @@ echo '**************************************************************'
|
|||
echo 'Testing Install of Package'
|
||||
echo '**************************************************************'
|
||||
sudo dpkg -i /tmp/fceux-*.deb
|
||||
|
||||
echo 'Pushing Debian Package to Build Artifacts'
|
||||
appveyor PushArtifact /tmp/fceux-*.deb
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
|
||||
set PROJECT_ROOT=%~dp0..
|
||||
|
||||
REM echo %PROJECT_ROOT%
|
||||
|
||||
msbuild %PROJECT_ROOT%\vc\vc14_fceux.vcxproj
|
||||
|
||||
cd %PROJECT_ROOT%\vc
|
||||
|
||||
REM Copy Executable and dlls to output directory
|
||||
copy vc14_bin_Debug\fceux.exe ..\output\.
|
||||
copy vc14_bin_Debug\7z.dll ..\output\.
|
||||
|
||||
REM Create Zip Archive
|
||||
REM archive.bat
|
||||
cd %PROJECT_ROOT%\output
|
||||
..\vc\zip -X -9 -r ..\vc\fceux.zip fceux.exe fceux.chm taseditor.chm 7z.dll *.dll palettes luaScripts tools
|
||||
|
||||
cd %PROJECT_ROOT%
|
||||
|
||||
appveyor PushArtifact %PROJECT_ROOT%\vc\fceux.zip
|
||||
|
|
@ -145,12 +145,14 @@ public:
|
|||
|
||||
class ThreadData {
|
||||
public:
|
||||
ThreadData() { kill = dead = false; }
|
||||
ThreadData() { ds = NULL; kill = dead = false; }
|
||||
OAKRA_Module_OutputDS *ds;
|
||||
bool kill,dead;
|
||||
};
|
||||
|
||||
OAKRA_Module_OutputDS::OAKRA_Module_OutputDS() {
|
||||
OAKRA_Module_OutputDS::OAKRA_Module_OutputDS()
|
||||
{
|
||||
threadData = NULL;
|
||||
data = new Data();
|
||||
((Data *)data)->global = false;
|
||||
InitializeCriticalSection(&((Data *)data)->criticalSection);
|
||||
|
@ -179,6 +181,7 @@ OAKRA_Voice *OAKRA_Module_OutputDS::getVoice(OAKRA_Format &format, OAKRA_Module
|
|||
if(dsv->dead)
|
||||
{
|
||||
delete dsv;
|
||||
dsv = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -214,7 +217,7 @@ void OAKRA_Module_OutputDS::freeVoiceInternal(OAKRA_Voice *voice, bool internal)
|
|||
if(!internal)
|
||||
{
|
||||
delete voice;
|
||||
voice = 0;
|
||||
//voice = 0; // Assignment of function parameter has no effect outside the function, commenting out to avoid cppcheck warning
|
||||
}
|
||||
unlock();
|
||||
}
|
||||
|
|
|
@ -181,7 +181,7 @@ protected:
|
|||
public:
|
||||
|
||||
explicit InStream()
|
||||
: refCount(0)
|
||||
: refCount(0), size(0)
|
||||
{}
|
||||
};
|
||||
|
||||
|
@ -374,17 +374,21 @@ void initArchiveSystem()
|
|||
}
|
||||
}
|
||||
|
||||
static std::string wstringFromPROPVARIANT(BSTR bstr, bool& success) {
|
||||
static std::string wstringFromPROPVARIANT(BSTR bstr, bool& success)
|
||||
{
|
||||
std::string strret;
|
||||
std::wstring tempfname = bstr;
|
||||
int buflen = tempfname.size()*2;
|
||||
char* buf = new char[buflen];
|
||||
int ret = WideCharToMultiByte(CP_ACP,0,tempfname.c_str(),tempfname.size(),buf,buflen,0,0);
|
||||
if(ret == 0) {
|
||||
if (ret == 0)
|
||||
{
|
||||
delete[] buf;
|
||||
success = false;
|
||||
return strret;
|
||||
}
|
||||
buf[ret] = 0;
|
||||
std::string strret = buf;
|
||||
strret = buf;
|
||||
delete[] buf;
|
||||
success = true;
|
||||
return strret;
|
||||
|
@ -594,4 +598,4 @@ FCEUFILE* FCEUD_OpenArchive(ArchiveScanRecord& asr, std::string& fname, std::str
|
|||
FCEUFILE* FCEUD_OpenArchive(ArchiveScanRecord& asr, std::string& fname, std::string* innerFilename)
|
||||
{
|
||||
return FCEUD_OpenArchive(asr, fname, innerFilename, -1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -538,7 +538,7 @@ INT_PTR CALLBACK CheatConsoleCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARA
|
|||
break;
|
||||
case CHEAT_CONTEXT_POSSI_ADDTOMEMORYWATCH:
|
||||
{
|
||||
char addr[16] = { 0 };
|
||||
char addr[32] = { 0 };
|
||||
int sel = SendDlgItemMessage(hwndDlg, IDC_CHEAT_LIST_POSSIBILITIES, LVM_GETSELECTIONMARK, 0, 0);
|
||||
if (sel != -1)
|
||||
{
|
||||
|
@ -816,9 +816,9 @@ INT_PTR CALLBACK CheatConsoleCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARA
|
|||
if (strchr(buf, ':'))
|
||||
{
|
||||
if (strchr(buf, '?'))
|
||||
sscanf(buf, "%X:%X?%X", &a, &c, &v);
|
||||
sscanf(buf, "%X:%X?%X", (unsigned int*)&a, (unsigned int*)&c, (unsigned int*)&v);
|
||||
else
|
||||
sscanf(buf, "%X:%X", &a, &v);
|
||||
sscanf(buf, "%X:%X", (unsigned int*)&a, (unsigned int*)&v);
|
||||
}
|
||||
|
||||
SetDlgItemText(hwndDlg, IDC_CHEAT_ADDR, (LPCSTR)(a == -1 ? "" : U16ToStr(a)));
|
||||
|
@ -978,7 +978,7 @@ INT_PTR CALLBACK CheatConsoleCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARA
|
|||
break;
|
||||
case NM_DBLCLK:
|
||||
{
|
||||
char addr[16];
|
||||
char addr[32];
|
||||
sprintf(addr, "%04X", possiList[((NMITEMACTIVATE*)lParam)->iItem].addr);
|
||||
AddMemWatch(addr);
|
||||
}
|
||||
|
@ -1035,19 +1035,19 @@ void UpdateCheatListGroupBoxUI()
|
|||
char temp[64];
|
||||
if (FrozenAddressCount < 256)
|
||||
{
|
||||
sprintf(temp, "Active Cheats %d", FrozenAddressCount);
|
||||
sprintf(temp, "Active Cheats %u", FrozenAddressCount);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADD), TRUE);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADDFROMFILE), TRUE);
|
||||
}
|
||||
else if (FrozenAddressCount == 256)
|
||||
{
|
||||
sprintf(temp, "Active Cheats %d (Max Limit)", FrozenAddressCount);
|
||||
sprintf(temp, "Active Cheats %u (Max Limit)", FrozenAddressCount);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADD), FALSE);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADDFROMFILE), FALSE);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(temp, "%d Error: Too many cheats loaded!", FrozenAddressCount);
|
||||
sprintf(temp, "%u Error: Too many cheats loaded!", FrozenAddressCount);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADD), FALSE);
|
||||
EnableWindow(GetDlgItem(hCheat, IDC_BTN_CHEAT_ADDFROMFILE), FALSE);
|
||||
}
|
||||
|
|
|
@ -1454,7 +1454,7 @@ int GetComboBoxByteSize(HWND hwnd, UINT id, int* value)
|
|||
if (!GetComboBoxListItemData(hwnd, id, value, buf, true))
|
||||
{
|
||||
char buf2[4];
|
||||
if (sscanf(buf, "%d%[KMB]", value, buf2) < 2 || !strcmp(buf2, ""))
|
||||
if (sscanf(buf, "%d%3[KMB]", value, buf2) < 2 || !strcmp(buf2, ""))
|
||||
err = errors::FORMAT_ERR;
|
||||
else
|
||||
{
|
||||
|
@ -1524,15 +1524,15 @@ bool GetComboBoxListItemData(HWND hwnd, UINT id, int* value, char* buf, bool exa
|
|||
case IDC_VS_SYSTEM_COMBO:
|
||||
case IDC_VS_PPU_COMBO:
|
||||
case IDC_SYSTEM_EXTEND_COMBO:
|
||||
if (!(success = sscanf(buf, "$%X", value) > 0))
|
||||
if (!(success = sscanf(buf, "$%X", (unsigned int *)value) > 0))
|
||||
success = SearchByString(hwnd, id, value, buf);
|
||||
else
|
||||
SetDlgItemText(hwnd, id, buf);
|
||||
break;
|
||||
case IDC_INPUT_DEVICE_COMBO:
|
||||
if (success = sscanf(buf, "$%X", value) > 0)
|
||||
if (success = sscanf(buf, "$%X", (unsigned int *)value) > 0)
|
||||
{
|
||||
char buf2[3];
|
||||
char buf2[8];
|
||||
sprintf(buf2, "$%02X", *value);
|
||||
if (SendDlgItemMessage(hwnd, id, CB_SELECTSTRING, 0, (LPARAM)buf2) == CB_ERR)
|
||||
SetDlgItemText(hwnd, id, buf);
|
||||
|
@ -1694,4 +1694,4 @@ bool SearchByString(HWND hwnd, UINT id, int* value, char* buf)
|
|||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,11 +52,17 @@ struct AddressWatcher
|
|||
{
|
||||
unsigned int Address; // hardware address
|
||||
unsigned int CurValue;
|
||||
char* comment = NULL; // NULL means no comment, non-NULL means allocated comment
|
||||
char* comment; // NULL means no comment, non-NULL means allocated comment
|
||||
bool WrongEndian;
|
||||
char Size; //'d' = 4 bytes, 'w' = 2 bytes, 'b' = 1 byte, and 'S' means it's a separator.
|
||||
char Type;//'s' = signed integer, 'u' = unsigned, 'h' = hex, 'b' = binary, 'S' = separator
|
||||
short Cheats; // how many bytes are affected by cheat
|
||||
|
||||
AddressWatcher(void)
|
||||
{
|
||||
Address = 0; CurValue = 0; comment = NULL; WrongEndian = false;
|
||||
Size = 'b'; Type = 's'; Cheats = 0;
|
||||
}
|
||||
};
|
||||
|
||||
// the struct for communicating with add watch window
|
||||
|
|
|
@ -42,7 +42,7 @@ struct FCEUFILE {
|
|||
|
||||
FCEUFILE()
|
||||
: stream(0)
|
||||
, archiveCount(-1)
|
||||
, archiveCount(-1), archiveIndex(0), size(0), mode(READ)
|
||||
{}
|
||||
|
||||
~FCEUFILE()
|
||||
|
|
|
@ -484,6 +484,7 @@ static void SetInputStuff(int port)
|
|||
joyports[port].driver=FCEU_InitVirtualBoy(port);
|
||||
break;
|
||||
case SI_NONE:
|
||||
case SI_UNSET:
|
||||
joyports[port].driver=&DummyJPort;
|
||||
break;
|
||||
}
|
||||
|
@ -494,6 +495,7 @@ static void SetInputStuffFC()
|
|||
switch(portFC.type)
|
||||
{
|
||||
case SIFC_NONE:
|
||||
case SIFC_UNSET:
|
||||
portFC.driver=&DummyPortFC;
|
||||
break;
|
||||
case SIFC_ARKANOID:
|
||||
|
@ -721,7 +723,7 @@ const char* FCEUI_CommandTypeNames[]=
|
|||
"TAS Editor",
|
||||
};
|
||||
|
||||
static void CommandUnImpl(void);
|
||||
//static void CommandUnImpl(void);
|
||||
static void CommandToggleDip(void);
|
||||
static void CommandStateLoad(void);
|
||||
static void CommandStateSave(void);
|
||||
|
@ -938,10 +940,11 @@ void FCEUI_HandleEmuCommands(TestCommandState* testfn)
|
|||
}
|
||||
}
|
||||
|
||||
static void CommandUnImpl(void)
|
||||
{
|
||||
FCEU_DispMessage("command '%s' unimplemented.",0, FCEUI_CommandTable[i].name);
|
||||
}
|
||||
// Function not currently used
|
||||
//static void CommandUnImpl(void)
|
||||
//{
|
||||
// FCEU_DispMessage("command '%s' unimplemented.",0, FCEUI_CommandTable[i].name);
|
||||
//}
|
||||
|
||||
static void CommandToggleDip(void)
|
||||
{
|
||||
|
|
|
@ -74,7 +74,7 @@ struct INPUTCFC
|
|||
extern struct JOYPORT
|
||||
{
|
||||
JOYPORT(int _w)
|
||||
: w(_w)
|
||||
: w(_w), attrib(0), type(SI_UNSET), ptr(0), driver(0)
|
||||
{}
|
||||
|
||||
int w;
|
||||
|
|
|
@ -5,7 +5,7 @@ IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 GOTO UPXFailed
|
|||
cd ..\output
|
||||
..\vc\zip -X -9 -r ..\vc\fceux.zip fceux.exe fceux.chm taseditor.chm 7z.dll *.dll palettes luaScripts tools
|
||||
move /y ..\vc\fceux.exe .
|
||||
..\vc\zip -X -9 -r ..\vc\fceux.zip auxlib.lua
|
||||
REM ..\vc\zip -X -9 -r ..\vc\fceux.zip auxlib.lua
|
||||
cd ..
|
||||
REM vc\zip -X -9 -r vc\fceux.zip documentation
|
||||
cd vc
|
||||
|
|
Loading…
Reference in New Issue