small bug fixes, finalize 2.0.3

This commit is contained in:
dborth 2008-10-01 23:10:30 +00:00
parent 41059552b3
commit 1e892254a7
9 changed files with 50 additions and 30 deletions

View File

@ -1,7 +1,7 @@
¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤
- FCE Ultra GX -
Version 2.0.2
Version 2.0.3
(Under GPL License)
¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸,ø¤°`°¤ø,¸¸,ø¤
@ -29,11 +29,12 @@ SNES9x GX and Genesis Plus GX projects.
|0O×øo· UPDATE HISTORY ·oø×O0|
`¨•¨¨¨¨¨ ¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨ ¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨ ¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨ ¨¨¨¨¨¨¨¨¨¨¨¨¨'
[What's New 2.0.3]
* VS game support (submitted by pakitovic)
* Complete rewrite of loading code - UNIF / NSF support, FDS games
load but don't run
[What's New 2.0.3 - October 1, 2008]
* Complete rewrite of loading code - FDS / UNIF / NSF support added!
* VS games work (coin insert submitted by pakitovic)
* Mapping of 'Special' commands - VS coin insert, FDS switch disk (default A)
* 480p and DVD now available for GameCube
* Improved stability - less crashes!
[What's New 2.0.2 - September 19, 2008]
* Fixed network freeze-up problem
@ -93,8 +94,8 @@ Loading / Running the Emulator:
Wii - Via Homebrew Channel:
--------------------
The most popular method of running homebrew on the Wii is through the Homebrew
Channel. If you already have the channel installed, just copy over the apps folder
included in the archive into the root of your SD card.
Channel. If you already have the channel installed, just copy over the apps
folder included in the archive into the root of your SD card.
Remember to also create the fceugx directory structure required. See above.
@ -132,6 +133,15 @@ You can load roms from DVD or SD card. If you create a bootable
DVD of FCEUGX you can put roms on the same DVD. You may save preferences and
game data to SD or Memory Card.
-=[ Famicom Disk System (FDS) ]=-
FCE Ultra GX supports loading FDS games. The FDS BIOS is required - put it
in your roms folder, and name it disksys.rom (should be 8 KB in size).
You can switch disks using the A button (by default). The mapped button
can be changed under Controller Configuration ('Special' button).
Compatibility is limited, so check that the game in question works on
FCE Ultra 0.98.12 for Windows before asking for help.
-=[ Supported Mappers ]=-
Mappers are the way the Nintendo handles switching from ROM/VROM so the more

View File

@ -15,8 +15,8 @@
void DefaultSettings ();
#define VERSIONNUM "2.0.2"
#define VERSIONSTR "FCE Ultra GX 2.0.2"
#define VERSIONNUM "2.0.3"
#define VERSIONSTR "FCE Ultra GX 2.0.3"
#define NOTSILENT 0
#define SILENT 1

View File

@ -162,7 +162,7 @@ ParseFATdirectory(int method)
* LoadFATFile
****************************************************************************/
int
LoadFATFile (char *filename, int length)
LoadFATFile ()
{
char zipbuffer[2048];
char filepath[MAXPATHLEN];
@ -199,11 +199,10 @@ LoadFATFile (char *filename, int length)
{
// Just load the file up
fseek(handle, 0, SEEK_END);
length = ftell(handle); // get filesize
size = ftell(handle); // get filesize
fseek(handle, 2048, SEEK_SET); // seek back to point where we left off
memcpy (nesrom, zipbuffer, 2048); // copy what we already read
fread (nesrom + 2048, 1, length - 2048, handle);
size = length;
fread (nesrom + 2048, 1, size - 2048, handle);
}
fclose (handle);
return size;

View File

@ -24,7 +24,7 @@
bool ChangeFATInterface(int method, bool silent);
int ParseFATdirectory(int method);
int LoadFATFile (char *filename, int length);
int LoadFATFile ();
int SaveBufferToFAT (char *filepath, int datasize, bool silent);
int LoadSaveBufferFromFAT (char *filepath, bool silent);
int LoadBufferFromFAT (char * buffer, char *filepath, bool silent);

View File

@ -300,30 +300,33 @@ int FileSelector (int method)
StripExt(romFilename, filelist[selection].filename);
ShowAction ((char *)"Loading...");
int size = 0;
switch (method)
{
case METHOD_SD:
case METHOD_USB:
LoadFATFile (filelist[selection].filename,
filelist[selection].length);
case METHOD_SD:
case METHOD_USB:
size = LoadFATFile();
break;
case METHOD_DVD:
case METHOD_DVD:
dvddir = filelist[selection].offset;
dvddirlength = filelist[selection].length;
LoadDVDFile (nesrom);
size = LoadDVDFile(nesrom);
break;
case METHOD_SMB:
LoadSMBFile (filelist[selection].filename,
filelist[selection].length);
case METHOD_SMB:
size = LoadSMBFile();
break;
}
if (GCMemROM(method) > 0)
if (size > 0)
{
return 1;
if(GCMemROM(method) > 0)
return 1;
else
return 0;
}
else
{

View File

@ -58,7 +58,7 @@ unsigned int ccpadmap[] = {
WPAD_CLASSIC_BUTTON_MINUS, WPAD_CLASSIC_BUTTON_PLUS,
WPAD_CLASSIC_BUTTON_UP, WPAD_CLASSIC_BUTTON_DOWN,
WPAD_CLASSIC_BUTTON_LEFT, WPAD_CLASSIC_BUTTON_RIGHT,
WPAD_CLASSIC_BUTTON_FULL_R // insert coin for VS games
WPAD_CLASSIC_BUTTON_A // insert coin for VS games
};
/*** Nunchuk + wiimote Padmap ***/
unsigned int ncpadmap[] = {

View File

@ -171,6 +171,7 @@ preparePrefsData (int method)
createXMLSetting("FSDisable", "Four Score", toStr(GCSettings.FSDisable));
createXMLSetting("zapper", "Zapper", toStr(GCSettings.zapper));
createXMLSetting("crosshair", "Zapper Crosshair", toStr(GCSettings.crosshair));
createXMLController(gcpadmap, "gcpadmap", "GameCube Pad");
createXMLController(wmpadmap, "wmpadmap", "Wiimote");
createXMLController(ccpadmap, "ccpadmap", "Classic Controller");
@ -253,9 +254,9 @@ decodePrefsData (int method)
char verMinor = version[15];
char verPoint = version[17];
if(verPoint < '2' && verMajor == '2') // less than version 2.0.2
if(verMajor == '2' && verPoint < '3') // less than version 2.0.3
return false; // reset settings
else if(verMajor > '2' || verMinor > '0' || verPoint > '2') // some future version
else if(verMajor > '2' || verMinor > '0' || verPoint > '3') // some future version
return false; // reset settings
// File Settings
@ -284,6 +285,7 @@ decodePrefsData (int method)
loadXMLSettingInt(&GCSettings.slimit, "slimit");
loadXMLSettingInt(&GCSettings.screenscaler, "screenscaler");
loadXMLSettingInt(&GCSettings.zapper, "zapper");
loadXMLSettingInt(&GCSettings.crosshair, "crosshair");
// Controller Settings
loadXMLController(gcpadmap, "gcpadmap");

View File

@ -79,12 +79,18 @@ ConnectShare (bool silent)
return false;
#endif
ShowAction ((char*) "Connecting...");
// check that all parameter have been set
if(strlen(GCSettings.smbuser) == 0 ||
strlen(GCSettings.smbpwd) == 0 ||
strlen(GCSettings.smbshare) == 0 ||
strlen(GCSettings.smbip) == 0)
{
if(!silent)
WaitPrompt((char*) "Invalid network settings. Check FCEUGX.xml.");
return false;
}
if(!networkInit)
networkInit = InitializeNetwork(silent);
@ -212,7 +218,7 @@ ParseSMBdirectory ()
* Load SMB file
****************************************************************************/
int
LoadSMBFile (char *filename, int length)
LoadSMBFile ()
{
char filepath[MAXPATHLEN];

View File

@ -18,7 +18,7 @@ bool ConnectShare (bool silent);
char * SMBPath(char * path);
int UpdateSMBdirname();
int ParseSMBdirectory ();
int LoadSMBFile (char *filename, int length);
int LoadSMBFile ();
int LoadSaveBufferFromSMB (char *filepath, bool silent);
int LoadBufferFromSMB (char * sbuffer, char *filepath, bool silent);
int SaveBufferToSMB (char *filepath, int datasize, bool silent);