diff options
| author | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2012-05-20 14:20:39 +0000 |
|---|---|---|
| committer | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2012-05-20 14:20:39 +0000 |
| commit | 9a63e315195a0dcd669d2df1c62142eaf740de7a (patch) | |
| tree | f13c2533386ef867f79aab648f910146beb2ffd6 /libpcsxcore | |
| parent | a603b0692f07a5dc9980b9e76c7cddfe57805c12 (diff) | |
| download | pcsxr-9a63e315195a0dcd669d2df1c62142eaf740de7a.tar.gz | |
Configuration->CPU->Widescreen (16:9, GTE Hack).
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@78188 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore')
| -rw-r--r-- | libpcsxcore/gte.c | 8 | ||||
| -rw-r--r-- | libpcsxcore/psxcommon.h | 1 |
2 files changed, 5 insertions, 4 deletions
diff --git a/libpcsxcore/gte.c b/libpcsxcore/gte.c index 1ce8fecf..3c9ea449 100644 --- a/libpcsxcore/gte.c +++ b/libpcsxcore/gte.c @@ -402,13 +402,13 @@ void gteRTPS() { quotient = limE(DIVIDE(gteH, gteSZ3)); gteSXY0 = gteSXY1; gteSXY1 = gteSXY2; - gteSX2 = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient)) >> 16); + gteSX2 = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient) * (Config.Widescreen ? 0.75 : 1)) >> 16); gteSY2 = limG2(F((s64)gteOFY + ((s64)gteIR2 * quotient)) >> 16); fquotient = flimE((float)(gteH << 16) / (float)gteSZ3); GPU_addVertex(gteSX2, gteSY2, - limG1_ia((s64)gteOFX + (s64)(gteIR1 * fquotient)), // TODO: MAC1 calc instead of IR1. + limG1_ia((s64)gteOFX + (s64)(gteIR1 * fquotient) * (Config.Widescreen ? 0.75 : 1)), // TODO: MAC1 calc instead of IR1. limG2_ia((s64)gteOFY + (s64)(gteIR2 * fquotient)), // TODO: MAC2 calc instead of IR2. ((s64)gteSZ3)); // TODO: MAC3 calc instead of SZ3. @@ -440,13 +440,13 @@ void gteRTPT() { gteIR3 = limB3(gteMAC3, 0); fSZ(v) = limD(gteMAC3); quotient = limE(DIVIDE(gteH, fSZ(v))); - fSX(v) = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient)) >> 16); + fSX(v) = limG1(F((s64)gteOFX + ((s64)gteIR1 * quotient) * (Config.Widescreen ? 0.75 : 1)) >> 16); fSY(v) = limG2(F((s64)gteOFY + ((s64)gteIR2 * quotient)) >> 16); fquotient = flimE((float)(gteH << 16) / (float)fSZ(v)); GPU_addVertex(fSX(v), fSY(v), - limG1_ia((s64)gteOFX + (s64)(gteIR1 * fquotient)), // TODO: MAC1 calc instead of IR1. + limG1_ia((s64)gteOFX + (s64)(gteIR1 * fquotient) * (Config.Widescreen ? 0.75 : 1)), // TODO: MAC1 calc instead of IR1. limG2_ia((s64)gteOFY + (s64)(gteIR2 * fquotient)), // TODO: MAC2 calc instead of IR2. ((s64)fSZ(v))); // TODO: MAC3 calc instead of fSZ(v). } diff --git a/libpcsxcore/psxcommon.h b/libpcsxcore/psxcommon.h index dbedc429..5aec4942 100644 --- a/libpcsxcore/psxcommon.h +++ b/libpcsxcore/psxcommon.h @@ -149,6 +149,7 @@ typedef struct { boolean RCntFix;
boolean UseNet;
boolean VSyncWA;
+ boolean Widescreen;
u8 Cpu; // CPU_DYNAREC or CPU_INTERPRETER
u8 PsxType; // PSX_TYPE_NTSC or PSX_TYPE_PAL
#ifdef _WIN32
|
