PCSX2 Playground rev 586 & GSDX 0.1.14 - 模擬器
![Gary avatar](/img/cat4.jpg)
By Gary
at 2009-01-14T12:40
at 2009-01-14T12:40
Table of Contents
PCSX2 Playground rev 586
rev 890 GSDX 0.1.14
http://re4rainbow.4shared.com/ Mirror: http://www.mediafire.com/re4rainbow
Legend: '//blah-blah-blah//' or '/blah-blah-blah/' is re4rainbow's comment.
Just FYI.
Quoted from: http://code.google.com/p/pcsx2-playground/source/list
rev 586: Disabled PCH for IPU.cpp -- it was causing problems that crashed
FFXII vids among others.
Moved Dynarec-related IPU const mem reads/writes to iIPU.cpp, and added some
__fastcall directives to various relevant functions and function pointers
(very small speedup).
rev 585: Squashed an MTGS bug that I strongly suspect was responsible for
MTGS problems reported in Issue 108.
rev 584: Fixed crash bug when running Cpu Config before starting emulation of
a game.
Enforced correct propagation of the GS window handle to pad plugins on
Esc/Resume.
rev 583: Found something that might very well be a bugfix for some crashing
problems stemming from changes made in r516.
rev 582: Added some new highly-optimized memset alternatives, located in
memzero.h (currently Win32-only). Since most uses of memset involve constant
values for both the length and destination parameters, it's possible to use a
function template to generate very precise inlined code. :)
Additionally, the new memset alternatives correctly save the XMM0 register,
which can be clobbered by MSVC's memset implementation.
Changed some code in iR5900's eventTest to use EAX instead of ECX (very small
speedup).
rev 581: Just noticed I made a nasty typo in VifDma.cpp from r577, which
probably made some games *very* unhappy.
rev 580: Optimized the iR5900's event test code, undoing the slowdown from
the previous revision and picking up another 1-2% on top of performance of
earlier revisions.
Applied gratuitous amounts of inlining to WinSysExec.cpp to ink out another
0.1% speed boost. heh
Fixed the double-keystroke bug when using certain combinations of Pad plugins.
Added JNS32 to the ix86 emitter.
*IMPORTANT* VM builds are STILL broken.
rev 579: fixed a typo from my last commit
rev 578: *EXPERIMENTAL* Switched the code over to a new method of exception
handlingwhich should be more efficient and easier to debug and, most
importantly, fixes a lot of the weird errors we've been getting since r488.
*NOTE: THIS IS REVISION WORKS ON VTLB ONLY -- VM BUILDS ARE CURRENTLY BROKEN*
If you like VM, do not try to compile or use this revision. The VM build
will crash anytime you try to load a savestate or exit/resume emulation.
(Interpreters and some other stuff are also broken too, but will be fixed
shortly)
rev 577: Updated savestates to version 0x12 (0x02 VTLB) -- added a couple
missing SIF vars and added support for cottonvibes' new VIregs structure
format in r576.
Fixed a few bugs in the GS-on-Close recovery system. It should work more and
crash less now.
Restructured the entire initialization process of Ps2 memory and cpu
resources. All emulation system resources are allocated when the app first
starts now, giving Pcsx2 the best possible chance to allocate needed Virtual
Memory resources. And *Hopefully* this resolves some memory corruption
issues that have persisted since r488.
Added several new functions to System.cpp as partof the new API:
SysAllocateMem(), SysAllocateDynarecs(), etc.
Created some new files: VU0microInterp.cpp and VU1microInterp.cpp, and
separated the VU cpus into their own "cpu" structure (they used to be grouped
in with the R5900, which made it awkward to work with them).
Turned off speed optimizations for the WinMain.cpp and WinSysExec.cpp files,
due to a compiler bug in MSVC that causes it to completely break codegen for
the RunExecute() function.
rev 576: VI regs needed padding to make them 128bit VU0 maps VU1's VI regs as
128bits to addr 0x4xx0 in VU0 mem, with only lower 16 bits valid, and the
upper 112bits are hardwired to 0.
i changed the 2 functions that deal with VU mem addresses to reflect the
changes (GET_VU_MEM() and recVUTransformAddr()) they also had a bug where
they weren't mapping VU1's VF regs to 0x4000.
i think i got all the VU mem functions that needed to be modified, if games
break with this revision then we know i missed one ><
rev 575: This'll at least get rid of the Linux compiler errors, though the
tons of linker errors, half of which are in assembly files, are still there.
rev 574: Various ZeroGS cleanups. A few things got mirrored from the dx
version to the opengl version, and vice-versa. A few defines became inlined
functions, and if statements became switch statements...
rev 573: Repaired some more of the Linux-side of things. It's the least I
can do for having constantly broken it. >_<
rev 572: Moved the EE's various opcode subsets into their own namespaces, as
per Cottonvibes' request (MMI, COP0, COP1), and fixed numerous compilation
errors in the debug builds while I was at it.
Improved the behavior of the VARG_PARAM thingie in release builds. It
generates a little bit more compact compiled code now.
rev 571: Added SysPrintfs to each VU opcode, to make debugging easier
(phew..) :p
rev 570: Re-enable a hack for the vm build. Fixes Fatal Frame 1 on that. VTLB
builds don't need it :)
rev 569: Removed some obsolete code regarding the EE's interrupt handler, and
added some lines to the Linux code to help it build correctly (I hope) under
the new namespace layout.
rev 568: Fix a few compiler errors in Linux. I'm still trying to figure out
the dependancy issues StringUtils is giving me, though, so doesn't compile in
Linux right now...
rev 567: Removed some obsolete #pragma warning() directives, and moved the
one useful one into the precomiled header so that it doesn't need to be
included into every file manually.
rev 566: Code cleanup Revision: Implemented COP0 and COP1 (FPU) opcodes in
the new opcode table system, rearranged namespaces to (hopefully!) make more
sense, deleted a bunch of unused or duplicated prototypes in headers, and
separated a few sections of general code into their own modules (such as
XMMfreezeRegs/MMXfreezeRegs found in iCore and iR5900-32 modules, and some
COP2-specific functions in VU0)
rev 565: minor recUpdateFlags changes
rev 564: minor VU recUpdateFlags() changes based on what Jake mentioned in
r560
--
rev 890 GSDX 0.1.14
http://re4rainbow.4shared.com/ Mirror: http://www.mediafire.com/re4rainbow
Legend: '//blah-blah-blah//' or '/blah-blah-blah/' is re4rainbow's comment.
Just FYI.
Quoted from: http://code.google.com/p/pcsx2-playground/source/list
rev 586: Disabled PCH for IPU.cpp -- it was causing problems that crashed
FFXII vids among others.
Moved Dynarec-related IPU const mem reads/writes to iIPU.cpp, and added some
__fastcall directives to various relevant functions and function pointers
(very small speedup).
rev 585: Squashed an MTGS bug that I strongly suspect was responsible for
MTGS problems reported in Issue 108.
rev 584: Fixed crash bug when running Cpu Config before starting emulation of
a game.
Enforced correct propagation of the GS window handle to pad plugins on
Esc/Resume.
rev 583: Found something that might very well be a bugfix for some crashing
problems stemming from changes made in r516.
rev 582: Added some new highly-optimized memset alternatives, located in
memzero.h (currently Win32-only). Since most uses of memset involve constant
values for both the length and destination parameters, it's possible to use a
function template to generate very precise inlined code. :)
Additionally, the new memset alternatives correctly save the XMM0 register,
which can be clobbered by MSVC's memset implementation.
Changed some code in iR5900's eventTest to use EAX instead of ECX (very small
speedup).
rev 581: Just noticed I made a nasty typo in VifDma.cpp from r577, which
probably made some games *very* unhappy.
rev 580: Optimized the iR5900's event test code, undoing the slowdown from
the previous revision and picking up another 1-2% on top of performance of
earlier revisions.
Applied gratuitous amounts of inlining to WinSysExec.cpp to ink out another
0.1% speed boost. heh
Fixed the double-keystroke bug when using certain combinations of Pad plugins.
Added JNS32 to the ix86 emitter.
*IMPORTANT* VM builds are STILL broken.
rev 579: fixed a typo from my last commit
rev 578: *EXPERIMENTAL* Switched the code over to a new method of exception
handlingwhich should be more efficient and easier to debug and, most
importantly, fixes a lot of the weird errors we've been getting since r488.
*NOTE: THIS IS REVISION WORKS ON VTLB ONLY -- VM BUILDS ARE CURRENTLY BROKEN*
If you like VM, do not try to compile or use this revision. The VM build
will crash anytime you try to load a savestate or exit/resume emulation.
(Interpreters and some other stuff are also broken too, but will be fixed
shortly)
rev 577: Updated savestates to version 0x12 (0x02 VTLB) -- added a couple
missing SIF vars and added support for cottonvibes' new VIregs structure
format in r576.
Fixed a few bugs in the GS-on-Close recovery system. It should work more and
crash less now.
Restructured the entire initialization process of Ps2 memory and cpu
resources. All emulation system resources are allocated when the app first
starts now, giving Pcsx2 the best possible chance to allocate needed Virtual
Memory resources. And *Hopefully* this resolves some memory corruption
issues that have persisted since r488.
Added several new functions to System.cpp as partof the new API:
SysAllocateMem(), SysAllocateDynarecs(), etc.
Created some new files: VU0microInterp.cpp and VU1microInterp.cpp, and
separated the VU cpus into their own "cpu" structure (they used to be grouped
in with the R5900, which made it awkward to work with them).
Turned off speed optimizations for the WinMain.cpp and WinSysExec.cpp files,
due to a compiler bug in MSVC that causes it to completely break codegen for
the RunExecute() function.
rev 576: VI regs needed padding to make them 128bit VU0 maps VU1's VI regs as
128bits to addr 0x4xx0 in VU0 mem, with only lower 16 bits valid, and the
upper 112bits are hardwired to 0.
i changed the 2 functions that deal with VU mem addresses to reflect the
changes (GET_VU_MEM() and recVUTransformAddr()) they also had a bug where
they weren't mapping VU1's VF regs to 0x4000.
i think i got all the VU mem functions that needed to be modified, if games
break with this revision then we know i missed one ><
rev 575: This'll at least get rid of the Linux compiler errors, though the
tons of linker errors, half of which are in assembly files, are still there.
rev 574: Various ZeroGS cleanups. A few things got mirrored from the dx
version to the opengl version, and vice-versa. A few defines became inlined
functions, and if statements became switch statements...
rev 573: Repaired some more of the Linux-side of things. It's the least I
can do for having constantly broken it. >_<
rev 572: Moved the EE's various opcode subsets into their own namespaces, as
per Cottonvibes' request (MMI, COP0, COP1), and fixed numerous compilation
errors in the debug builds while I was at it.
Improved the behavior of the VARG_PARAM thingie in release builds. It
generates a little bit more compact compiled code now.
rev 571: Added SysPrintfs to each VU opcode, to make debugging easier
(phew..) :p
rev 570: Re-enable a hack for the vm build. Fixes Fatal Frame 1 on that. VTLB
builds don't need it :)
rev 569: Removed some obsolete code regarding the EE's interrupt handler, and
added some lines to the Linux code to help it build correctly (I hope) under
the new namespace layout.
rev 568: Fix a few compiler errors in Linux. I'm still trying to figure out
the dependancy issues StringUtils is giving me, though, so doesn't compile in
Linux right now...
rev 567: Removed some obsolete #pragma warning() directives, and moved the
one useful one into the precomiled header so that it doesn't need to be
included into every file manually.
rev 566: Code cleanup Revision: Implemented COP0 and COP1 (FPU) opcodes in
the new opcode table system, rearranged namespaces to (hopefully!) make more
sense, deleted a bunch of unused or duplicated prototypes in headers, and
separated a few sections of general code into their own modules (such as
XMMfreezeRegs/MMXfreezeRegs found in iCore and iR5900-32 modules, and some
COP2-specific functions in VU0)
rev 565: minor recUpdateFlags changes
rev 564: minor VU recUpdateFlags() changes based on what Jake mentioned in
r560
--
Tags:
模擬器
All Comments
![Elma avatar](/img/girl5.jpg)
By Elma
at 2009-01-18T12:32
at 2009-01-18T12:32
Related Posts
怎樣把Rom燒成遊戲光碟
![Rebecca avatar](/img/woman-ring.jpg)
By Rebecca
at 2009-01-13T21:54
at 2009-01-13T21:54
求一款動作的大型電玩遊戲...
![Irma avatar](/img/girl3.jpg)
By Irma
at 2009-01-13T20:30
at 2009-01-13T20:30
NO$Zoomer 1.6.0.0b
![Kyle avatar](/img/girl3.jpg)
By Kyle
at 2009-01-13T20:21
at 2009-01-13T20:21
一款紅白機遊戲
![Oscar avatar](/img/cat4.jpg)
By Oscar
at 2009-01-13T17:39
at 2009-01-13T17:39
實錄(恥)麻將~超情色告白篇
![Delia avatar](/img/woman-ring.jpg)
By Delia
at 2009-01-13T15:08
at 2009-01-13T15:08