misc stuff
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5468 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
1883b32f33
commit
a0c44df6c0
|
@ -186,7 +186,7 @@ static int write_empty(FILE* file, u64 count)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SDCardCreate(u32 disk_size /*in MB*/, char* filename)
|
bool SDCardCreate(u64 disk_size /*in MB*/, char* filename)
|
||||||
{
|
{
|
||||||
int sectors_per_fat;
|
int sectors_per_fat;
|
||||||
int sectors_per_disk;
|
int sectors_per_disk;
|
||||||
|
|
|
@ -17,4 +17,4 @@
|
||||||
|
|
||||||
#include "Common.h"
|
#include "Common.h"
|
||||||
|
|
||||||
bool SDCardCreate(u32 disk_size /*in MB*/, char* filename);
|
bool SDCardCreate(u64 disk_size /*in MB*/, char* filename);
|
||||||
|
|
|
@ -19,22 +19,14 @@
|
||||||
#include "DSPIntExtOps.h"
|
#include "DSPIntExtOps.h"
|
||||||
|
|
||||||
// Extended opcodes do not exist on their own. These opcodes can only be
|
// Extended opcodes do not exist on their own. These opcodes can only be
|
||||||
// attached to opcodes that allow extending (8 lower bits of opcode not used by
|
// attached to opcodes that allow extending (8 (or 7) lower bits of opcode not used by
|
||||||
// opcode). Extended opcodes do not modify program counter $pc register.
|
// opcode). Extended opcodes do not modify program counter $pc register.
|
||||||
|
|
||||||
// Most of the suffixes increment or decrement one or more addressing registers
|
// Most of the suffixes increment or decrement one or more addressing registers
|
||||||
// (the first four, ARx). The increment/decrement is either 1, or the
|
// (the first four, ARx). The increment/decrement is either 1, or the
|
||||||
// corresponding "index" register (the second four, IXx). The addressing
|
// corresponding "index" register (the second four, IXx). The addressing
|
||||||
// registers will wrap in odd ways, dictated by the corresponding wrapping
|
// registers will wrap in odd ways, dictated by the corresponding wrapping
|
||||||
// register, WP0-3.
|
// register, WR0-3.
|
||||||
|
|
||||||
// The following should be applied as a decrement (and is applied by
|
|
||||||
// dsp_decrement_addr_reg):
|
|
||||||
// ar[i] = (ar[i] & wp[i]) == 0 ? ar[i] | wp[i] : ar[i] - 1;
|
|
||||||
// I have not found the corresponding algorithms for increments yet.
|
|
||||||
// It's gotta be fairly simple though. See R3123, R3125 in Google Code.
|
|
||||||
// (May have something to do with (ar[i] ^ wp[i]) == 0)
|
|
||||||
|
|
||||||
|
|
||||||
namespace DSPInterpreter
|
namespace DSPInterpreter
|
||||||
{
|
{
|
||||||
|
|
|
@ -57,6 +57,7 @@ inline bool dsp_SR_is_flag_set(int flag)
|
||||||
//
|
//
|
||||||
// increment, decrement 100% ok (as far as i can tell), increase, decrease still probs
|
// increment, decrement 100% ok (as far as i can tell), increase, decrease still probs
|
||||||
|
|
||||||
|
// NextPowerOf2()-1
|
||||||
inline u16 ToMask(u16 a)
|
inline u16 ToMask(u16 a)
|
||||||
{
|
{
|
||||||
a = a | (a >> 8);
|
a = a | (a >> 8);
|
||||||
|
|
|
@ -205,7 +205,6 @@ const DSPOPCTemplate opcodes[] =
|
||||||
{"SRS", 0x2800, 0xf800, DSPInterpreter::srs, NULL, 1, 2, {{P_MEM, 1, 0, 0, 0x00ff}, {P_REG18, 1, 0, 8, 0x0700}}, false, false},
|
{"SRS", 0x2800, 0xf800, DSPInterpreter::srs, NULL, 1, 2, {{P_MEM, 1, 0, 0, 0x00ff}, {P_REG18, 1, 0, 8, 0x0700}}, false, false},
|
||||||
|
|
||||||
// opcodes that can be extended
|
// opcodes that can be extended
|
||||||
// extended opcodes, note size of opcode will be set to 0
|
|
||||||
|
|
||||||
//3 - main opcode defined by 9 bits, extension defined by last 7 bits!!
|
//3 - main opcode defined by 9 bits, extension defined by last 7 bits!!
|
||||||
{"XORR", 0x3000, 0xfc80, DSPInterpreter::xorr, NULL, 1 , 2, {{P_ACCM, 1, 0, 8, 0x0100},{P_REG1A, 1, 0, 9, 0x0200}}, true, false},
|
{"XORR", 0x3000, 0xfc80, DSPInterpreter::xorr, NULL, 1 , 2, {{P_ACCM, 1, 0, 8, 0x0100},{P_REG1A, 1, 0, 9, 0x0200}}, true, false},
|
||||||
|
@ -303,6 +302,7 @@ const DSPOPCTemplate opcodes[] =
|
||||||
const DSPOPCTemplate cw =
|
const DSPOPCTemplate cw =
|
||||||
{"CW", 0x0000, 0x0000, NULL, NULL, 1, 1, {{P_VAL, 2, 0, 0, 0xffff}}, false, false};
|
{"CW", 0x0000, 0x0000, NULL, NULL, 1, 1, {{P_VAL, 2, 0, 0, 0xffff}}, false, false};
|
||||||
|
|
||||||
|
// extended opcodes
|
||||||
|
|
||||||
const DSPOPCTemplate opcodes_ext[] =
|
const DSPOPCTemplate opcodes_ext[] =
|
||||||
{
|
{
|
||||||
|
|
|
@ -40,6 +40,7 @@ IVolume::ECountry CountrySwitch(u8 CountryCode)
|
||||||
|
|
||||||
// NTSC
|
// NTSC
|
||||||
case 'E':
|
case 'E':
|
||||||
|
case 'Z': // Prince Of Persia - The Forgotten Sands (WII)
|
||||||
return IVolume::COUNTRY_USA;
|
return IVolume::COUNTRY_USA;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue