pcsx2/pcsx2
Jonathan Li 6f4ba08d4a pcsx2:windows: Fix stdout/stderr redirection
The current redirection code doesn't work on VS2015:
 - It relies on undefined behaviour (*stdout/*stderr = *fp)
 - stdin/stdout/stderr are not pre-opened when compiled with the v140*
   toolkits
 - It seems to be the reason PCSX2 fails to terminate properly.

Use a combination of named pipes and freopen to redirect stdout/stderr.

Note: The redirect stuff doesn't seem to work in debug builds, both
before and after the change.
2015-10-28 19:27:15 +00:00
..
CDVD CDVD: Initialze all class members 2015-10-25 14:11:43 +05:30
DebugTools pcsx2-debug: Initialize all class members 2015-10-25 10:11:18 +05:30
Docs Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
IPU Removed redundant initialisation code (covered in the resets), reverted a little pointless shuffling. 2014-08-15 14:09:18 +01:00
Linux gtk2: keyboard macro update 2014-12-10 22:09:21 +01:00
RDebug Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
System pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
Utilities Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
ZipTools pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
gui pcsx2|utilities: Remove Windows wx2.8 code 2015-10-28 00:02:11 +00:00
ps2 IOP Counter/IRQ: Misc Counter and IRQ handling changes based on NoCash documents for PS1. 2015-10-16 00:48:26 +01:00
windows pcsx2:windows: Fix stdout/stderr redirection 2015-10-28 19:27:15 +00:00
x86 pcsx2-ee: properly set the running variable 2015-10-28 14:25:12 +01:00
AsyncFileReader.h pcsx2: init members in constructor 2015-09-23 09:47:27 +02:00
CMakeLists.txt cmake: restore omit frame pointer optimization 2015-10-23 22:17:14 +02:00
COP0.cpp pcsx2:interpreter: always false condition 2015-09-11 20:01:01 +02:00
COP0.h * Rename cpuBranch[...] functions and vars to cpuEvent[...], which should be more clear and consistent as to their true purpose. (to clarify: events typically run during cpu branch instructions, but most branches don't actually have anything to do with whether or not there are events pending or events being run). 2010-09-05 15:38:14 +00:00
COP2.cpp VIF: Reworked the VU delays in to scheduled events to simulate VU run time without killing Metal Saga or Fahrenheit. Adjusted the COP checks on the VU's to use the same method as the VPU_STAT is never set essentially so the VU is never "running". 2012-04-07 01:48:34 +00:00
Cache.cpp Fix a possibility for out of bound accesses in logging within Cache.cpp 2014-07-03 00:24:16 -04:00
Cache.h Cache Emulation: Updated cache emulation for new VTLB, Dead or Alive 2 (Japanese Version only) now playable. You can enable this under the Recompiler options by ticking the "Enable EE Cache" box, however it will only work with the EE in Interpreter mode. Also fixed some cache bugs from the old implementation. 2011-02-17 21:27:24 +00:00
Common.h * Redid the VIFunpacker's wrapped memory address detection (a bit more compact now) 2010-08-24 17:53:27 +00:00
Config.h R5900: Add Overclock function for EE cycle rate. 2015-10-27 16:24:00 +05:30
Counters.cpp VSync/EE Counters: Fixes for Fatal Fury BA 1 & Legendz Gekitou! Saga Battle 2015-10-16 00:38:04 +01:00
Counters.h MAJOR: All new hwRead and hwWrite handlers (expect regressions). Details: 2010-08-31 05:22:26 +00:00
Dmac.h GIF: 2014-02-26 22:34:02 +00:00
Dump.cpp Make simplifcations in the disassembler optional 2014-08-19 15:45:50 +02:00
Dump.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
Elfheader.cpp pcsx2: Throw the exception 2015-10-07 00:37:40 +01:00
Elfheader.h pcsx2: Pass IsoFile parameter by reference 2015-10-05 20:02:31 +01:00
FPU.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
FiFo.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
GS.cpp GIF Unit: Stop multiple fires of FINISH IRQ's 2015-08-12 02:16:23 +01:00
GS.h Remove some slow, redundant memcpy implementations: memcpy_const/memcpy_qwc/memcpy_aligned. 2014-08-27 13:13:48 +10:00
GSState.cpp Refactoring: 2010-08-09 04:10:38 +00:00
GameDatabase.cpp Simplified loops by declaring iterators with 'auto' 2014-08-10 01:48:57 -07:00
GameDatabase.h pcsx2: replace wxStrtoul by ToUlong method 2014-09-27 11:50:31 +02:00
Gif.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
Gif.h Path3 Masking: Games should no longer need the EE Timing fix. General fixes for Need for Speed Underground 2 and other games affected by the change. Hopefully Outrun and Terminator 3 will be ok now too, no promises (as i don't have the games) 2012-05-23 16:22:03 +00:00
Gif_Logger.cpp Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
Gif_Unit.cpp GIF Unit: Stop multiple fires of FINISH IRQ's 2015-08-12 02:16:23 +01:00
Gif_Unit.h GIF Unit: Stop multiple fires of FINISH IRQ's 2015-08-12 02:16:23 +01:00
Hardware.h Merge const qualifiers and cleanups from ReorderingMTGS: Includes the VIF DIRECT changes, which seem to be stable this time. ;) 2010-07-22 12:20:11 +00:00
Hw.cpp Removed redundant initialisation code (covered in the resets), reverted a little pointless shuffling. 2014-08-15 14:09:18 +01:00
Hw.h Initial work on getting further with PSX mode. Because the PSX rules! 2014-03-06 23:00:09 +00:00
HwRead.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
HwWrite.cpp pcsx2/common: fix tons of warning spamming on clang 2014-07-05 00:08:48 +02:00
Interpreter.cpp pcsx2:tlb:goemon: allocation can be called from 2 places 2014-12-12 22:25:56 +01:00
IopBios.cpp pcsx2: add various default case statement 2014-07-12 12:59:23 +02:00
IopBios.h partially revert c5d2343f51 2014-07-12 13:30:34 +02:00
IopCommon.h You know that commit where I removed the GTE? Apparently I didn't. 2014-08-15 23:22:25 +01:00
IopCounters.cpp IOP Counters: Silly error fixed. 2015-10-17 12:52:49 +01:00
IopCounters.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
IopDma.cpp Initial work on getting further with PSX mode. Because the PSX rules! 2014-03-06 23:00:09 +00:00
IopDma.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
IopHw.cpp IOP Counter/IRQ: Misc Counter and IRQ handling changes based on NoCash documents for PS1. 2015-10-16 00:48:26 +01:00
IopHw.h Initial work on getting further with PSX mode. Because the PSX rules! 2014-03-06 23:00:09 +00:00
IopIrq.cpp Tests with Grandia Extreme's debugger suggest that SBUS interrupts *never* fire. 2012-03-14 13:10:14 +00:00
IopMem.cpp Remove redundant memzero_ptr. All compilers use SSE implementation anyway. 2014-08-17 23:23:55 +10:00
IopMem.h newHostVM: (WIP, may not run!) -- Applied host virtual memory mapping to the EE/IOP/VU main and on-chip memory banks. Added a new OO-based system allocator object for handling said virtual memory resources. Plus many code cleanups, and some added mess that needs to be cleaned up. 2010-11-15 14:05:02 +00:00
IopModuleNames.cpp Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
IopSio2.cpp pcsx2: avoid couple of out-of-bounds access 2015-09-10 14:20:51 +02:00
IopSio2.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
MMI.cpp eeInt: Fix logically dead code in PMFLH. 2015-10-04 13:34:37 +01:00
MTGS.cpp pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
MTVU.cpp pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
MTVU.h Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
Mdec.cpp spu2-x: Misc Alsa stuff. Added a few missing files into the pcsx2 codeblocks project. 2010-10-13 09:15:54 +00:00
Mdec.h Removed all trailing whitespace in *.c *.cpp *.h because it irritates me. 2010-04-25 00:31:27 +00:00
Memory.cpp pcsx2/common: fix tons of warning spamming on clang 2014-07-05 00:08:48 +02:00
Memory.h Removes the usage of __LINUX__ define 2014-08-03 13:20:36 -05:00
MemoryTypes.h newHostVM: (WIP, may not run!) -- Applied host virtual memory mapping to the EE/IOP/VU main and on-chip memory banks. Added a new OO-based system allocator object for handling said virtual memory resources. Plus many code cleanups, and some added mess that needs to be cleaned up. 2010-11-15 14:05:02 +00:00
MultipartFileReader.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
NakedAsm.h Removes the usage of __LINUX__ define 2014-08-03 13:20:36 -05:00
OutputIsoFile.cpp Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
Patch.cpp pcsx2: auto_ptr is deprecated in favor of unique_ptr 2015-10-19 13:41:34 +02:00
Patch.h patches: unify patch application verbosity 2015-02-21 16:19:24 +02:00
Patch_Memory.cpp Introduce end-of-line normalization 2015-08-04 23:52:48 +02:00
PathDefs.h Help button/window in debugger (Windows only) 2014-03-23 13:27:48 +01:00
Pcsx2Config.cpp Add option to enable/disable the filtering of the FolderMemoryCard. 2015-07-12 14:37:56 +02:00
PluginManager.cpp Merge pull request #657 from turtleli/wxwidgets3_switch 2015-07-29 14:16:02 +02:00
Plugins.h pcsx2: extend the size of plugin m_info array to avoid out-of-bounds 2015-09-25 21:00:16 +02:00
PrecompiledHeader.cpp [copyright] 2010-07-08 16:40:44 +00:00
PrecompiledHeader.h Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
R3000A.cpp Initial work on getting further with PSX mode. Because the PSX rules! 2014-03-06 23:00:09 +00:00
R3000A.h newHostVM: improving error handling and memory management (WIP) 2010-10-28 13:14:18 +00:00
R3000AInterpreter.cpp newHostVM: 2010-11-03 14:18:30 +00:00
R3000AOpcodeTables.cpp Scrapped abortive GTE (PSX GPU) support so that certain people can stop fiddling with untestable code. We don't know whether the PS2 even has a hardware GTE and thanks to the miracle that is source control we can revive this module if needed. 2014-08-15 16:47:42 +01:00
R5900.cpp pcsx2: init some variables 2015-07-10 22:35:26 +02:00
R5900.h pcsx2: generate an exception when recompilation failed 2015-10-20 18:23:38 +02:00
R5900Exceptions.h Mostly-new host exception system (host meaning the C++ / SEH exceptions, not the VM's PS2/MIPS exceptions). Main purpose is to make specifying diagnostic and end-user messages more sane. Secondary goal was to remove the need for C++ multiple and virtual inheritance, which are buggy in MSVC still, and problematic even when they aren't buggy. 2010-06-28 18:03:54 +00:00
R5900OpcodeImpl.cpp pcsx2: print a nice message when SYSCALL 2 is called 2015-10-26 17:53:25 +01:00
R5900OpcodeTables.cpp Fill in flags for most debugger relevant opcodes 2014-08-22 21:50:05 +02:00
R5900OpcodeTables.h Fill in flags for most debugger relevant opcodes 2014-08-22 21:50:05 +02:00
SPR.cpp Less verbose SPR stall control logging, avoids fps dives in ST:Voyager 2015-02-15 18:09:14 +01:00
SPR.h Remove init procedures from Hw.cpp 2014-08-15 14:17:35 +10:00
SamplProf.h pcsx2: don't use 0&& to remove code 2014-07-12 12:59:23 +02:00
SaveState.cpp Remove all custom memcpy usage from core pcsx2 and remove memcpy_fast from plugins. 2014-08-27 13:45:23 +10:00
SaveState.h GIF Unit: Stop multiple fires of FINISH IRQ's 2015-08-12 02:16:23 +01:00
ShiftJisToUnicode.cpp [copyright] 2010-07-09 15:36:09 +00:00
Sif.cpp Remove init procedures from Hw.cpp 2014-08-15 14:17:35 +10:00
Sif.h Remove all custom memcpy usage from core pcsx2 and remove memcpy_fast from plugins. 2014-08-27 13:45:23 +10:00
Sif0.cpp Sif: Limit/Mask transfer size to 1mb-16, thanks to jpd002 (Play!) for the fix! 2015-10-08 20:02:15 +01:00
Sif1.cpp Sif: Limit/Mask transfer size to 1mb-16, thanks to jpd002 (Play!) for the fix! 2015-10-08 20:02:15 +01:00
Sifcmd.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
Sio.cpp Clear memory card ejection timeout when a game boots. 2015-07-12 14:38:14 +02:00
Sio.h Clear memory card ejection timeout when a game boots. 2015-07-12 14:38:14 +02:00
SourceLog.cpp pcsx2 i18n: 2011-02-25 18:16:53 +00:00
SysForwardDefs.h dummy update to test the buildbot versioning 2015-01-29 15:14:00 +02:00
System.cpp pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
System.h sVU: add an option to remove it 2015-01-06 23:45:43 +01:00
VU.h microVU: 2013-03-11 21:54:05 +00:00
VU0.cpp -Bumped savestate version, forgot to do that in my last commit. 2012-04-07 12:27:19 +00:00
VU0micro.cpp VIF: EXPERIMENTAL, NOT SANITY CHECKED: Delayed VU execution until the next flush, mpg, microprogram call or (as a fallback) end of dma packet to deal with cases like MSCAL, UNPACK, MSCAL (expects the first program to receive the unpack data). 2012-09-05 20:13:50 +00:00
VU0microInterp.cpp microVU: 2013-03-11 21:54:05 +00:00
VU1micro.cpp VIF: EXPERIMENTAL, NOT SANITY CHECKED: Delayed VU execution until the next flush, mpg, microprogram call or (as a fallback) end of dma packet to deal with cases like MSCAL, UNPACK, MSCAL (expects the first program to receive the unpack data). 2012-09-05 20:13:50 +00:00
VU1microInterp.cpp VU Interpreter: Fix uninitialized scalar variable Coverity CID #146964. 2015-09-26 12:35:03 +01:00
VUflags.cpp Refactoring: 2010-08-09 04:10:38 +00:00
VUflags.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
VUmicro.cpp Add a dev notice for a tweak point with VU0 Macro/Micro updates. 2012-11-13 16:47:51 +00:00
VUmicro.h pcsx2|common: use DESTRUCTOR_CATCHALL to catch exception in various destructor 2015-09-23 09:47:27 +02:00
VUmicroMem.cpp pcsx2: Implemented Threaded VU1 :D 2011-08-12 02:31:49 +00:00
VUops.cpp pcsx2: avoid couple of out-of-bounds access 2015-09-10 14:20:51 +02:00
VUops.h General emulator memory work, regarding my new policy that most (or all) cpu and hardware registers should be standard globals, as it makes our lives a lot easier in general (and their memory footprint is small so it won't adversely affect the virtual memory availability of the host operating systems). Details: 2010-08-27 03:21:16 +00:00
Vif.cpp VIF MFifo: Simulate buffer filling time from Scratchpad. 2015-10-24 13:25:29 +01:00
Vif.h VIF: Put in a check to make sure VIF doesn't break during a FIFO write. 2013-02-18 21:17:35 +00:00
Vif0_Dma.cpp VIF-MFIFO: Fix for stalls on wait instructions, fixes Stuart Little 3 2015-06-27 22:47:44 +01:00
Vif1_Dma.cpp VIF-MFIFO: Fix for stalls on wait instructions, fixes Stuart Little 3 2015-06-27 22:47:44 +01:00
Vif1_MFIFO.cpp VIF MFifo: Simulate buffer filling time from Scratchpad. 2015-10-24 13:25:29 +01:00
Vif_Codes.cpp Vif: Fixed logically dead code (not that it mattered) 2015-09-26 13:55:50 +01:00
Vif_Dma.h Vif Unpacks: After further tests on the PS2, think i have these down. 2015-06-06 00:05:52 +01:00
Vif_Transfer.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
Vif_Unpack.cpp Vif Unpacks: After further tests on the PS2, think i have these down. 2015-06-06 00:05:52 +01:00
Vif_Unpack.h GCC compilation fixes. 2010-09-13 22:52:04 +00:00
cheatscpp.h Removed all trailing whitespace in *.c *.cpp *.h because it irritates me. 2010-04-25 00:31:27 +00:00
sif2.cpp Removed `using std::min/max` from PCH 2014-08-14 14:55:52 -07:00
sio_internal.h SIO: KrossX new changes for Memcards, seems ok on a test of random 10-15 random games, please report if any errors appear! 2013-12-29 21:57:17 +00:00
vtlb.cpp pcsx2-ee: properly set the running variable 2015-10-28 14:25:12 +01:00
vtlb.h pcsx2: initialize members in constructor of objects 2015-09-23 09:47:27 +02:00