wxGui branch: [linux] Updated projects, added Utilities and x86emitter libraries.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1459 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
Jake.Stine 2009-07-03 20:12:33 +00:00
parent da691894c3
commit aceefaf812
19 changed files with 436 additions and 421 deletions

View File

@ -7,7 +7,7 @@
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="../../deps/debug/libbzip2-dbg" prefix_auto="1" extension_auto="1" />
<Option output="../../deps/debug/libbzip2" prefix_auto="1" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/debug" />
<Option type="2" />
@ -19,7 +19,7 @@
</Compiler>
</Target>
<Target title="Release">
<Option output="../../deps/libbzip2" prefix_auto="1" extension_auto="1" />
<Option output="../../deps/release/libbzip2" prefix_auto="1" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/release" />
<Option type="2" />
@ -35,7 +35,7 @@
</Linker>
</Target>
<Target title="Devel">
<Option output="../../deps/devel/libbzip2-dev" prefix_auto="1" extension_auto="1" />
<Option output="../../deps/devel/libbzip2" prefix_auto="1" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/devel" />
<Option type="2" />

View File

@ -7,7 +7,7 @@
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="../../deps/debug/zlib-dbg" prefix_auto="0" extension_auto="1" />
<Option output="../../deps/debug/zlib" prefix_auto="0" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/debug" />
<Option type="2" />
@ -20,7 +20,7 @@
</Compiler>
</Target>
<Target title="Release">
<Option output="../../deps/zlib" prefix_auto="0" extension_auto="1" />
<Option output="../../deps/release/zlib" prefix_auto="0" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/release" />
<Option type="2" />
@ -33,7 +33,7 @@
</Compiler>
</Target>
<Target title="Devel">
<Option output="../../deps/devel/zlib-dev" prefix_auto="0" extension_auto="1" />
<Option output="../../deps/devel/zlib" prefix_auto="0" extension_auto="1" />
<Option working_dir="" />
<Option object_output="./.objs/devel" />
<Option type="2" />

View File

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion major="1" minor="6" />
<Project>
<Option title="Utilities" />
<Option pch_mode="2" />
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="../../deps/debug/libUtilities.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/debug/" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="-Wall" />
<Add option="-g" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
<Add directory="../../include/Utilities" />
<Add directory="../../include" />
</Compiler>
</Target>
<Target title="Release">
<Option output="../../deps/release/libUtilities.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/release/" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="-O2" />
<Add option="-Wall" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --cflags`" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
<Target title="Devel">
<Option output="../../deps/devel/libUtilities.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/devel/" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
</Compiler>
</Target>
</Build>
<Unit filename="../../include/Utilities/Console.h" />
<Unit filename="../../include/Utilities/Dependencies.h" />
<Unit filename="../../include/Utilities/Exceptions.h" />
<Unit filename="../../include/Utilities/General.h" />
<Unit filename="../../include/Utilities/MemcpyFast.h" />
<Unit filename="../../include/Utilities/RedtapeWindows.h" />
<Unit filename="../../include/Utilities/SafeArray.h" />
<Unit filename="../../include/Utilities/StringHelpers.h" />
<Unit filename="../../include/Utilities/Threading.h" />
<Unit filename="../../include/Utilities/lnx_memzero.h" />
<Unit filename="../../include/Utilities/win_memzero.h" />
<Unit filename="../../include/intrin_x86.h" />
<Unit filename="../../src/Utilities/AlignedMalloc.cpp" />
<Unit filename="../../src/Utilities/Console.cpp" />
<Unit filename="../../src/Utilities/Exceptions.cpp" />
<Unit filename="../../src/Utilities/Linux/LnxHostSys.cpp" />
<Unit filename="../../src/Utilities/LnxMisc.cpp" />
<Unit filename="../../src/Utilities/LnxThreads.cpp" />
<Unit filename="../../src/Utilities/PrecompiledHeader.cpp" />
<Unit filename="../../src/Utilities/PrecompiledHeader.h" />
<Unit filename="../../src/Utilities/StringHelpers.cpp" />
<Unit filename="../../src/Utilities/ThreadTools.cpp" />
<Unit filename="../../src/Utilities/vssprintf.cpp" />
<Unit filename="../../src/Utilities/x86/MemcpyFast.S" />
<Extensions>
<envvars />
<code_completion>
<search_path add="/usr/include/wx-2.8" />
</code_completion>
<debugger />
</Extensions>
</Project>
</CodeBlocks_project_file>

View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion major="1" minor="6" />
<Project>
<Option title="x86emitter" />
<Option pch_mode="2" />
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="../../deps/debug/libx86emitter.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/debug/" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="-Wall" />
<Add option="-g" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --cflags`" />
</Compiler>
</Target>
<Target title="Release">
<Option output="../../deps/release/libx86emitter.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/release/" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="-O2" />
<Add option="-Wall" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --cflags`" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
<Target title="Devel">
<Option output="../../deps/devel/libx86emitter.a" prefix_auto="0" extension_auto="0" />
<Option working_dir="" />
<Option object_output="./.objs/devel" />
<Option type="2" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Compiler>
<Add option="-O2" />
<Add option="-Wall" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --cflags`" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
</Build>
<Compiler>
<Add directory="../../include/x86emitter" />
<Add directory="../../include" />
</Compiler>
<Unit filename="../../include/x86emitter/implement/dwshift.h" />
<Unit filename="../../include/x86emitter/implement/group1.h" />
<Unit filename="../../include/x86emitter/implement/group2.h" />
<Unit filename="../../include/x86emitter/implement/group3.h" />
<Unit filename="../../include/x86emitter/implement/helpers.h" />
<Unit filename="../../include/x86emitter/implement/incdec.h" />
<Unit filename="../../include/x86emitter/implement/jmpcall.h" />
<Unit filename="../../include/x86emitter/implement/movs.h" />
<Unit filename="../../include/x86emitter/implement/test.h" />
<Unit filename="../../include/x86emitter/implement/xchg.h" />
<Unit filename="../../include/x86emitter/implement/xmm/arithmetic.h" />
<Unit filename="../../include/x86emitter/implement/xmm/basehelpers.h" />
<Unit filename="../../include/x86emitter/implement/xmm/comparisons.h" />
<Unit filename="../../include/x86emitter/implement/xmm/moremovs.h" />
<Unit filename="../../include/x86emitter/implement/xmm/shufflepack.h" />
<Unit filename="../../include/x86emitter/inlines.inl" />
<Unit filename="../../include/x86emitter/instructions.h" />
<Unit filename="../../include/x86emitter/internal.h" />
<Unit filename="../../include/x86emitter/legacy_instructions.h" />
<Unit filename="../../include/x86emitter/legacy_internal.h" />
<Unit filename="../../include/x86emitter/legacy_types.h" />
<Unit filename="../../include/x86emitter/macros.h" />
<Unit filename="../../include/x86emitter/sse_helpers.h" />
<Unit filename="../../include/x86emitter/tools.h" />
<Unit filename="../../include/x86emitter/x86emitter.h" />
<Unit filename="../../include/x86emitter/x86types.h" />
<Unit filename="../../src/x86emitter/3dnow.cpp" />
<Unit filename="../../src/x86emitter/PrecompiledHeader.cpp" />
<Unit filename="../../src/x86emitter/PrecompiledHeader.h" />
<Unit filename="../../src/x86emitter/cpudetect.cpp" />
<Unit filename="../../src/x86emitter/fpu.cpp" />
<Unit filename="../../src/x86emitter/jmp.cpp" />
<Unit filename="../../src/x86emitter/legacy.cpp" />
<Unit filename="../../src/x86emitter/legacy_sse.cpp" />
<Unit filename="../../src/x86emitter/simd.cpp" />
<Unit filename="../../src/x86emitter/tools.cpp" />
<Unit filename="../../src/x86emitter/x86emitter.cpp" />
<Extensions>
<envvars />
<code_completion />
<debugger />
</Extensions>
</Project>
</CodeBlocks_project_file>

View File

@ -18,6 +18,9 @@
#pragma once
// must include wx/setup.h first, otherwise we get warnings/errors regarding __LINUX__
#include <wx/setup.h>
#include "Pcsx2Defs.h"
#include <wx/string.h>

View File

@ -89,9 +89,7 @@ namespace Console
{
ScopedLock locker( m_writelock );
vssprintf( m_format_buffer, fmt, args );
const char* cstr = m_format_buffer.c_str();
Write( fmt );
Write( m_format_buffer.c_str() );
}
__forceinline void __fastcall _WriteLn( const char* fmt, va_list args )

View File

@ -16,13 +16,15 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "PrecompiledHeader.h"
#include "../PrecompiledHeader.h"
#include <sys/mman.h>
#include <signal.h>
namespace HostSys
{
static const uptr m_pagemask = getpagesize()-1;
void *Mmap(uptr base, u32 size)
{
u8 *Mem;

View File

@ -18,6 +18,7 @@
#include "PrecompiledHeader.h"
#include "Threading.h"
#include "x86emitter/tools.h"
// Note: assuming multicore is safer because it forces the interlocked routines to use
// the LOCK prefix. The prefix works on single core CPUs fine (but is slow), but not
@ -75,98 +76,4 @@ namespace Threading
return NULL;
}
/////////////////////////////////////////////////////////////////////////
// Cross-platform atomic operations for GCC.
// These are much faster than the old versions for single core CPUs.
// Note, I've disabled the single core optimization, because pcsx2 shouldn't
// ever create threads on single core CPUs anyway.
__forceinline long pcsx2_InterlockedExchange(volatile long* Target, long Value)
{
long result;
/*
* The XCHG instruction always locks the bus with or without the
* LOCKED prefix. This makes it significantly slower than CMPXCHG on
* uni-processor machines. The Windows InterlockedExchange function
* is nearly 3 times faster than the XCHG instruction, so this routine
* is not yet very useful for speeding up pthreads.
*/
if( true ) //isMultiCore )
{
__asm__ __volatile__ (
"xchgl %2,%1"
:"=r" (result)
:"m" (*Target), "0" (Value));
}
else
{
/*
* Faster version of XCHG for uni-processor systems because
* it doesn't lock the bus. If an interrupt or context switch
* occurs between the movl and the cmpxchgl then the value in
* 'location' may have changed, in which case we will loop
* back to do the movl again.
*/
__asm__ __volatile__ (
"0:\n\t"
"movl %1,%%eax\n\t"
"cmpxchgl %2,%1\n\t"
"jnz 0b"
:"=&a" (result)
:"m" (*Target), "r" (Value));
}
return result;
}
__forceinline long pcsx2_InterlockedExchangeAdd(volatile long* Addend, long Value)
{
if( true ) //isMultiCore )
{
__asm__ __volatile__(
".intel_syntax noprefix\n"
"lock xadd [%0], eax\n"
".att_syntax\n" : : "r"(Addend), "a"(Value) : "memory");
}
else
{
__asm__ __volatile__(
".intel_syntax noprefix\n"
"xadd [%0], eax\n"
".att_syntax\n" : : "r"(Addend), "a"(Value) : "memory");
}
}
__forceinline long pcsx2_InterlockedCompareExchange(volatile long *dest, long value, long comp)
{
long result;
if( true ) //isMultiCore )
{
__asm__ __volatile__ (
"lock\n\t"
"cmpxchgl %2,%1" /* if (EAX == [location]) */
/* [location] = value */
/* else */
/* EAX = [location] */
:"=a" (result)
:"m" (*dest), "r" (value), "a" (comp));
}
else
{
__asm__ __volatile__ (
"cmpxchgl %2,%1" /* if (EAX == [location]) */
/* [location] = value */
/* else */
/* EAX = [location] */
:"=a" (result)
:"m" (*dest), "r" (value), "a" (comp));
}
return result;
}
}

View File

@ -154,6 +154,22 @@ namespace Threading
// define some overloads for InterlockedExchanges
// for commonly used types, like u32 and s32.
__forceinline long pcsx2_InterlockedExchange( volatile long* target, long srcval )
{
return _InterlockedExchange( target, srcval );
}
__forceinline long pcsx2_InterlockedCompareExchange( volatile long* target, long srcval, long comp )
{
// Use the pthreads-win32 implementation...
return _InterlockedCompareExchange( target, srcval, comp );
}
__forceinline long pcsx2_InterlockedExchangeAdd( volatile long* target, long srcval )
{
return _InterlockedExchangeAdd( target, srcval );
}
__forceinline void AtomicExchange( volatile u32& Target, u32 value )
{
pcsx2_InterlockedExchange( (volatile long*)&Target, value );

View File

@ -87,58 +87,5 @@ namespace Threading
return NULL;
}
// Note: assuming multicore is safer because it forces the interlocked routines to use
// the LOCK prefix. The prefix works on single core CPUs fine (but is slow), but not
// having the LOCK prefix is very bad indeed.
//////////////////////////////////////////////////////////////////////
// Win32 versions of InterlockedExchange.
// These are much faster than the Win32 Kernel versions thanks to inlining.
__forceinline long pcsx2_InterlockedExchange( volatile long* target, long srcval )
{
return _InterlockedExchange( target, srcval );
}
__forceinline long pcsx2_InterlockedCompareExchange( volatile long* target, long srcval, long comp )
{
// Use the pthreads-win32 implementation...
return _InterlockedCompareExchange( target, srcval, comp );
}
__forceinline long pcsx2_InterlockedExchangeAdd( volatile long* target, long srcval )
{
//long result;
// Use our own implementation...
// Pcsx2 won't use threads unless it's a multicore cpu, so no need to use
// the optimized single-core method.
if( true ) //ptw32_smp_system )
{
__asm
{
mov ecx,dword ptr [target]
mov eax,dword ptr [srcval]
lock xadd dword ptr [ecx],eax
// msvc smartly returns eax for us without so much as a compiler warning even...
//mov dword ptr [result], eax
}
}
else
{
__asm
{
mov ecx,dword ptr [target]
mov eax,dword ptr [srcval]
xadd dword ptr [ecx],eax
// msvc smartly returns eax for us without so much as a compiler warning even...
//mov dword ptr [result], eax
}
}
// return result;
}
}

View File

@ -460,7 +460,7 @@ static void cropzeros(char *buffer)
stop = buffer--;
while (*buffer == '0') buffer--;
if (*buffer == '.') buffer--;
while (*++buffer = *stop++);
while ( (*++buffer = *stop++) != 0 );
}
}

View File

@ -1,6 +1,9 @@
#ifndef EMITTER_PRECOMPILED_HEADER
#define EMITTER_PRECOMPILED_HEADER
// must include wx/setup.h first, otherwise we get warnings/errors regarding __LINUX__
#include <wx/setup.h>
#include "Pcsx2Defs.h"
#include <wx/string.h>

View File

@ -35,7 +35,7 @@ static s32 iCpuId( u32 cmd, u32 *regs )
xor ecx, ecx; // ecx should be zero for CPUID(4)
}
#else
__asm__ ( "xor ecx, ecx" );
__asm__ ( "xor %ecx, %ecx" );
#endif
__cpuid( (int*)regs, cmd );

View File

@ -109,8 +109,8 @@ static __forceinline ModSibStrict<ImmType> _mhlp2( x86IntRegType src1, x86IntReg
emitterT void cod##bits##M( uptr to ) { x##cod( ptr##bits[to] ); } \
emitterT void cod##bits##Rm( x86IntRegType to, uptr offset ) { x##cod( _mhlp<u##bits>(to) + offset ); }
//emitterT void cod##bits##RtoRmS( x86IntRegType to1, x86IntRegType to2, x86IntRegType from, int offset ) \
// { cod( _mhlp2<u##bits>(to1,to2) + offset, _reghlp<u##bits>(from) ); } \
//emitterT void cod##bits##RtoRmS( x86IntRegType to1, x86IntRegType to2, x86IntRegType from, int offset )
// { cod( _mhlp2<u##bits>(to1,to2) + offset, _reghlp<u##bits>(from) ); }
#define DEFINE_OPCODE_LEGACY( cod ) \
DEFINE_LEGACY_HELPER( cod, 32 ) \

View File

@ -174,9 +174,9 @@ namespace Internal
if( src.IsEmpty() ) return "empty";
switch( sizeof(T) )
{
case 1: return tbl_regnames_gpr8[ src.Id ];
case 2: return tbl_regnames_gpr16[ src.Id ];
case 4: return tbl_regnames_gpr32[ src.Id ];
case 1: return x86_regnames_gpr8[ src.Id ];
case 2: return x86_regnames_gpr16[ src.Id ];
case 4: return x86_regnames_gpr32[ src.Id ];
}
}

View File

@ -1,22 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_workspace_file>
<Workspace title="pcsx2_suite_2008 workspace">
<Project filename="../../plugins/zerogs/dx/Windows/zerogs_2008.cbp" />
<Project filename="../../plugins/CDVDiso/src/Windows/CDVDiso_vs2008.cbp" />
<Project filename="../../plugins/spu2-x/src/Windows/Spu2-X_vs2008.cbp" />
<Project filename="../../3rdparty/SoundTouch/SoundTouch.cbp" />
<Project filename="../../3rdparty/zlib/zlib.cbp" />
<Project filename="../../3rdparty/bzip2/bzip2.cbp" />
<Project filename="../../plugins/LilyPad/LilyPad_VC2008.cbp" />
<Project filename="../../plugins/zerospu2/Windows/ZeroSPU2_2008.cbp" />
<Project filename="../../plugins/xpad/xpad_vs2008.cbp" />
<Project filename="../../plugins/CDVDnull/Src/CDVDnull_vs2008.cbp" />
<Project filename="../../plugins/USBnull/Windows/USBnull_vc2008.cbp" />
<Project filename="../../plugins/FWnull/Windows/FWnull_vc2008.cbp" />
<Project filename="../../plugins/dev9null/src/DEV9null_vc2008.cbp" />
<Project filename="../../plugins/zeropad/Windows/ZeroPAD_2008.cbp" />
<Project filename="pcsx2.cbp" active="1">
<Depends filename="../../3rdparty/zlib/zlib.cbp" />
</Project>
<Project filename="../../common/build/Utilities/Utilities.cbp" />
<Project filename="../../common/build/x86emitter/x86emitter.cbp" />
<Project filename="../../3rdparty/SoundTouch/SoundTouch.cbp" />
<Project filename="../../3rdparty/zlib/zlib.cbp" />
<Project filename="../../3rdparty/bzip2/bzip2.cbp" />
</Workspace>
</CodeBlocks_workspace_file>

View File

@ -28,7 +28,9 @@
</ResourceCompiler>
<Linker>
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
<Add library="$(SvnRootDir)/deps/debug/zlib-dbg.a" />
<Add library="$(SvnRootDir)/deps/debug/zlib.a" />
<Add library="$(SvnRootDir)/deps/debug/libx86emitter.a" />
<Add library="$(SvnRootDir)/deps/debug/libUtilities.a" />
</Linker>
</Target>
<Target title="Devel">
@ -53,7 +55,9 @@
</ResourceCompiler>
<Linker>
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=yes --libs`" />
<Add library="$(SvnRootDir)/deps/devel/zlib-dev.a" />
<Add library="$(SvnRootDir)/deps/devel/zlib.a" />
<Add library="$(SvnRootDir)/deps/devel/libx86emitter.a" />
<Add library="$(SvnRootDir)/deps/devel/libUtilities.a" />
</Linker>
</Target>
<Target title="Release">
@ -77,7 +81,9 @@
<Linker>
<Add option="-s" />
<Add option="`wx-config --version=2.8 --static=no --unicode=yes --debug=no --libs`" />
<Add library="$(SvnRootDir)/deps/zlib.a" />
<Add library="$(SvnRootDir)/deps/release/zlib.a" />
<Add library="$(SvnRootDir)/deps/release/libx86emitter.a" />
<Add library="$(SvnRootDir)/deps/release/libUtilities.a" />
</Linker>
</Target>
<Environment>
@ -102,22 +108,16 @@
<Unit filename="../../common/include/Pcsx2Config.h" />
<Unit filename="../../common/include/Pcsx2Defs.h" />
<Unit filename="../../common/include/Pcsx2Types.h" />
<Unit filename="../AlignedMalloc.cpp" />
<Unit filename="../CDVD.cpp" />
<Unit filename="../CDVD.h" />
<Unit filename="../CDVDiso.cpp" />
<Unit filename="../CDVDiso.h" />
<Unit filename="../CDVDisodrv.cpp" />
<Unit filename="../CDVDisodrv.h" />
<Unit filename="../COP0.cpp" />
<Unit filename="../COP2.cpp" />
<Unit filename="../Cache.cpp" />
<Unit filename="../Cache.h" />
<Unit filename="../CdRom.cpp" />
<Unit filename="../CdRom.h" />
<Unit filename="../Common.h" />
<Unit filename="../Config.h" />
<Unit filename="../Console.cpp" />
<Unit filename="../Counters.cpp" />
<Unit filename="../Counters.h" />
<Unit filename="../DebugTools/Debug.h" />
@ -182,8 +182,6 @@
<Unit filename="../IopSio2.cpp" />
<Unit filename="../IopSio2.h" />
<Unit filename="../Linux/HostGui.cpp" />
<Unit filename="../Linux/LnxMisc.cpp" />
<Unit filename="../Linux/LnxThreads.cpp" />
<Unit filename="../Linux/memzero.h" />
<Unit filename="../MMI.cpp" />
<Unit filename="../MTGS.cpp" />
@ -257,11 +255,9 @@
<Unit filename="../SourceLog.cpp" />
<Unit filename="../Stats.cpp" />
<Unit filename="../Stats.h" />
<Unit filename="../StringUtils.cpp" />
<Unit filename="../StringUtils.h" />
<Unit filename="../System.cpp" />
<Unit filename="../System.h" />
<Unit filename="../ThreadTools.cpp" />
<Unit filename="../Threading.h" />
<Unit filename="../Utilities/AsciiFile.h" />
<Unit filename="../Utilities/FileUtils.cpp" />
@ -283,42 +279,24 @@
<Unit filename="../VifDma.cpp" />
<Unit filename="../VifDma.h" />
<Unit filename="../pcsxAbout.bmp" />
<Unit filename="../rdebug/deci2.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_dbgp.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_dbgp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_dcmp.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_dcmp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_drfp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_iloadp.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_iloadp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_netmp.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_netmp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_ttyp.cpp">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../rdebug/deci2_ttyp.h">
<Option target="&lt;{~None~}&gt;" />
</Unit>
@ -328,18 +306,13 @@
<Unit filename="../tinyxml/tinyxml.h" />
<Unit filename="../tinyxml/tinyxmlerror.cpp" />
<Unit filename="../tinyxml/tinyxmlparser.cpp" />
<Unit filename="../vssprintf.cpp" />
<Unit filename="../vtlb.cpp" />
<Unit filename="../vtlb.h" />
<Unit filename="../x86/BaseblockEx.cpp" />
<Unit filename="../x86/BaseblockEx.h" />
<Unit filename="../x86/aMicroVU.S">
<Option target="&lt;{~None~}&gt;" />
</Unit>
<Unit filename="../x86/aR3000A.S" />
<Unit filename="../x86/aVUzerorec.S" />
<Unit filename="../x86/aVif.S" />
<Unit filename="../x86/fast_routines.S" />
<Unit filename="../x86/iCOP0.cpp" />
<Unit filename="../x86/iCOP0.h" />
<Unit filename="../x86/iCOP2.cpp" />
@ -401,23 +374,14 @@
<Unit filename="../x86/ix86/implement/xmm/comparisons.h" />
<Unit filename="../x86/ix86/implement/xmm/moremovs.h" />
<Unit filename="../x86/ix86/implement/xmm/shufflepack.h" />
<Unit filename="../x86/ix86/ix86.cpp" />
<Unit filename="../x86/ix86/ix86.h" />
<Unit filename="../x86/ix86/ix86_3dnow.cpp" />
<Unit filename="../x86/ix86/ix86_cpudetect.cpp" />
<Unit filename="../x86/ix86/ix86_fpu.cpp" />
<Unit filename="../x86/ix86/ix86_inlines.inl" />
<Unit filename="../x86/ix86/ix86_instructions.h" />
<Unit filename="../x86/ix86/ix86_internal.h" />
<Unit filename="../x86/ix86/ix86_jmp.cpp" />
<Unit filename="../x86/ix86/ix86_legacy.cpp" />
<Unit filename="../x86/ix86/ix86_legacy_instructions.h" />
<Unit filename="../x86/ix86/ix86_legacy_internal.h" />
<Unit filename="../x86/ix86/ix86_legacy_sse.cpp" />
<Unit filename="../x86/ix86/ix86_legacy_types.h" />
<Unit filename="../x86/ix86/ix86_simd.cpp" />
<Unit filename="../x86/ix86/ix86_sse_helpers.h" />
<Unit filename="../x86/ix86/ix86_tools.cpp" />
<Unit filename="../x86/ix86/ix86_types.h" />
<Unit filename="../x86/ix86/ix86_writers.inl" />
<Unit filename="../x86/microVU.cpp" />

View File

@ -116,8 +116,6 @@ void __fastcall iopHwWrite8_Page3( u32 addr, mem8_t val )
if( addr == 0x1f80380c ) // STDOUT
{
bool flush = false;
// Terminate lines on CR or full buffers, and ignore \n's if the string contents
// are empty (otherwise terminate on \n too!)
if( ( val == '\r' ) || ( g_pbufi == 1023 ) ||