mirror of
https://github.com/izzy2lost/dolphin.git
synced 2026-06-19 01:16:48 -07:00
Use brute force to link the software plugin.
Not yet functional. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7050 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
+4
-2
@@ -124,12 +124,15 @@ if sys.platform == 'darwin':
|
||||
env['CCFLAGS'] += ['-Xarch_i386', '-msse3', '-Xarch_x86_64', '-mssse3']
|
||||
env['CC'] = '/Developer/usr/bin/llvm-gcc'
|
||||
env['CXX'] = '/Developer/usr/bin/llvm-g++'
|
||||
#env['CC'] = 'clang'
|
||||
#env['CXX'] = 'clang++'
|
||||
env['CXXFLAGS'] += ['-x', 'objective-c++']
|
||||
env['FRAMEWORKS'] += ['AppKit', 'Carbon', 'CoreFoundation', 'CoreServices']
|
||||
env['FRAMEWORKS'] += ['AudioToolbox', 'AudioUnit', 'CoreAudio', 'WebKit']
|
||||
env['FRAMEWORKS'] += ['IOBluetooth', 'IOKit', 'OpenGL']
|
||||
env['LIBPATH'] += ['/usr/lib'] # XXX clang
|
||||
env['LINKFLAGS'] += ccld
|
||||
env['LINKFLAGS'] += ['-Wl,-dead_strip']
|
||||
env['LINKFLAGS'] += ['-Wl,-dead_strip', '-Wl,-dead_strip_dylibs']
|
||||
env['LINKFLAGS'] += ['-Wl,-pagezero_size,0x1000']
|
||||
env['LINKFLAGS'] += ['-Wl,-search_paths_first']
|
||||
|
||||
@@ -149,7 +152,6 @@ if sys.platform == 'darwin':
|
||||
wxconfig.ParseWXConfig(wxenv)
|
||||
env['CPPDEFINES'] += ['__WXOSX_COCOA__']
|
||||
env['CPPPATH'] += wxenv['CPPPATH']
|
||||
#env['LIBPATH'] += wxenv['LIBPATH']
|
||||
env['wxconfiglibs'] = wxenv['LIBS']
|
||||
|
||||
env['CPPPATH'] += ['#Externals']
|
||||
|
||||
@@ -23,7 +23,9 @@
|
||||
#include "../../../Plugins/Plugin_VideoDX11/Src/VideoBackend.h"
|
||||
#endif
|
||||
#include "../../../Plugins/Plugin_VideoOGL/Src/VideoBackend.h"
|
||||
//#include "../Plugins/Plugin_VideoSoftware/Src/VideoBackend.h"
|
||||
#ifndef _WIN32 // XXX
|
||||
#include "../../../Plugins/Plugin_VideoSoftware/Src/VideoBackend.h"
|
||||
#endif
|
||||
|
||||
std::vector<VideoBackend*> g_available_video_backends;
|
||||
VideoBackend* g_video_backend = NULL;
|
||||
@@ -36,7 +38,9 @@ void VideoBackend::PopulateList()
|
||||
g_available_video_backends.push_back(new DX11::VideoBackend);
|
||||
#endif
|
||||
g_available_video_backends.push_back(new OGL::VideoBackend);
|
||||
//g_available_video_backends.push_back(new SW::VideoBackend);
|
||||
#ifndef _WIN32 // XXX
|
||||
g_available_video_backends.push_back(new SW::VideoBackend);
|
||||
#endif
|
||||
|
||||
g_video_backend = g_available_video_backends.front();
|
||||
}
|
||||
|
||||
@@ -182,7 +182,7 @@ set(SRCS Src/ActionReplay.cpp
|
||||
Src/PowerPC/JitCommon/JitCache.cpp
|
||||
Src/PowerPC/JitCommon/Jit_Util.cpp)
|
||||
|
||||
set(LIBS bdisasm inputcommon videoogl lua sfml-network)
|
||||
set(LIBS bdisasm inputcommon videoogl videosoftware lua sfml-network)
|
||||
|
||||
if(WIN32)
|
||||
set(SRCS ${SRCS} Src/HW/BBA-TAP/TAP_Win32.cpp Src/stdafx.cpp
|
||||
|
||||
@@ -31,6 +31,7 @@ else:
|
||||
'ISOFile.cpp',
|
||||
'ISOProperties.cpp',
|
||||
'PatchAddEdit.cpp',
|
||||
'PHackSettings.cpp',
|
||||
'CheatsWindow.cpp',
|
||||
'MemcardManager.cpp',
|
||||
'MemoryCards/GCMemcard.cpp',
|
||||
@@ -49,7 +50,7 @@ else:
|
||||
|
||||
libs += ['debwx', 'debugger_ui_util', 'dolphinwx']
|
||||
|
||||
libs += ['core', 'common', 'discio', 'plugin_videoogl'] # 'plugin_videosoftware'
|
||||
libs += ['core', 'common', 'discio', 'plugin_videoogl', 'plugin_videosoftware']
|
||||
if env['HAVE_WX']:
|
||||
libs += ['videouicommon']
|
||||
libs += ['audiocommon', 'inputcommon', 'videocommon']
|
||||
@@ -58,8 +59,8 @@ libs += ['GLEW', 'SOIL', 'bdisasm', 'lua', 'lzo2', 'sfml-network', 'z']
|
||||
if sys.platform == 'win32':
|
||||
files += [ "stdafx.cpp" ]
|
||||
elif sys.platform == 'darwin':
|
||||
ldflags += [ '-Xarch_i386', '-Wl,-framework,QuickTime' ]
|
||||
ldflags += [ '-weak_framework', 'OpenCL' ]
|
||||
ldflags += ['-Wl,-framework,QuickTime', '-Wl,-no_arch_warnings']
|
||||
ldflags += ['-weak_framework', 'OpenCL']
|
||||
|
||||
exe = '#' + env['prefix'] + '/Dolphin.app/Contents/MacOS/Dolphin'
|
||||
|
||||
|
||||
@@ -510,7 +510,7 @@
|
||||
</File>
|
||||
</Filter>
|
||||
<File
|
||||
RelativePath=".\Src\main.cpp"
|
||||
RelativePath=".\Src\DSPTool.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
|
||||
@@ -4,7 +4,7 @@ Import('env')
|
||||
import sys
|
||||
|
||||
files = [
|
||||
'main.cpp',
|
||||
'DSPTool.cpp',
|
||||
]
|
||||
|
||||
libs = [
|
||||
|
||||
@@ -1,25 +1,24 @@
|
||||
set(SRCS Src/BPMemLoader.cpp
|
||||
Src/Clipper.cpp
|
||||
Src/CommandProcessor.cpp
|
||||
Src/SWCommandProcessor.cpp
|
||||
Src/CPMemLoader.cpp
|
||||
Src/DebugUtil.cpp
|
||||
Src/EfbCopy.cpp
|
||||
Src/EfbInterface.cpp
|
||||
Src/GLUtil.cpp
|
||||
Src/SWGLUtil.cpp
|
||||
Src/HwRasterizer.cpp
|
||||
Src/main.cpp
|
||||
Src/SWmain.cpp
|
||||
Src/OpcodeDecoder.cpp
|
||||
Src/PixelEngine.cpp
|
||||
Src/SWPixelEngine.cpp
|
||||
Src/Rasterizer.cpp
|
||||
Src/RasterFont.cpp
|
||||
Src/Renderer.cpp
|
||||
Src/SWRenderer.cpp
|
||||
Src/SetupUnit.cpp
|
||||
Src/Statistics.cpp
|
||||
Src/SWStatistics.cpp
|
||||
Src/Tev.cpp
|
||||
Src/TextureEncoder.cpp
|
||||
Src/TextureSampler.cpp
|
||||
Src/TransformUnit.cpp
|
||||
Src/VertexLoader.cpp
|
||||
Src/SWVertexLoader.cpp
|
||||
Src/SWVideoConfig.cpp
|
||||
Src/XFMemLoader.cpp)
|
||||
|
||||
|
||||
@@ -307,14 +307,6 @@
|
||||
RelativePath="..\..\Core\VideoCommon\Src\OpenCL\OCLTextureDecoder.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\RasterFont.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\RasterFont.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\Core\VideoCommon\Src\TextureDecoder.cpp"
|
||||
>
|
||||
@@ -369,11 +361,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\CommandProcessor.cpp"
|
||||
RelativePath=".\Src\SWCommandProcessor.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\CommandProcessor.h"
|
||||
RelativePath=".\Src\SWCommandProcessor.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -409,11 +401,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\GLUtil.cpp"
|
||||
RelativePath=".\Src\SWGLUtil.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\GLUtil.h"
|
||||
RelativePath=".\Src\SWGLUtil.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -445,11 +437,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\PixelEngine.cpp"
|
||||
RelativePath=".\Src\SWPixelEngine.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\PixelEngine.h"
|
||||
RelativePath=".\Src\SWPixelEngine.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -461,11 +453,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Renderer.cpp"
|
||||
RelativePath=".\Src\SWRenderer.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Renderer.h"
|
||||
RelativePath=".\Src\SWRenderer.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -477,11 +469,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Statistics.cpp"
|
||||
RelativePath=".\Src\SWStatistics.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\Statistics.h"
|
||||
RelativePath=".\Src\SWStatistics.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
@@ -569,11 +561,11 @@
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\VertexLoader.cpp"
|
||||
RelativePath=".\Src\SWVertexLoader.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Src\VertexLoader.h"
|
||||
RelativePath=".\Src\SWVertexLoader.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
|
||||
@@ -169,21 +169,21 @@
|
||||
<ItemGroup>
|
||||
<ClCompile Include="Src\BPMemLoader.cpp" />
|
||||
<ClCompile Include="Src\Clipper.cpp" />
|
||||
<ClCompile Include="Src\CommandProcessor.cpp" />
|
||||
<ClCompile Include="Src\SWCommandProcessor.cpp" />
|
||||
<ClCompile Include="Src\CPMemLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugUtil.cpp" />
|
||||
<ClCompile Include="Src\EfbCopy.cpp" />
|
||||
<ClCompile Include="Src\EfbInterface.cpp" />
|
||||
<ClCompile Include="Src\GLUtil.cpp" />
|
||||
<ClCompile Include="Src\SWGLUtil.cpp" />
|
||||
<ClCompile Include="Src\HwRasterizer.cpp" />
|
||||
<ClCompile Include="Src\main.cpp" />
|
||||
<ClCompile Include="Src\SWmain.cpp" />
|
||||
<ClCompile Include="Src\OpcodeDecoder.cpp" />
|
||||
<ClCompile Include="Src\PixelEngine.cpp" />
|
||||
<ClCompile Include="Src\SWPixelEngine.cpp" />
|
||||
<ClCompile Include="Src\RasterFont.cpp" />
|
||||
<ClCompile Include="Src\Rasterizer.cpp" />
|
||||
<ClCompile Include="Src\Renderer.cpp" />
|
||||
<ClCompile Include="Src\SWRenderer.cpp" />
|
||||
<ClCompile Include="Src\SetupUnit.cpp" />
|
||||
<ClCompile Include="Src\Statistics.cpp" />
|
||||
<ClCompile Include="Src\SWStatistics.cpp" />
|
||||
<ClCompile Include="Src\stdafx.cpp">
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
|
||||
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
|
||||
@@ -195,7 +195,7 @@
|
||||
<ClCompile Include="Src\TextureEncoder.cpp" />
|
||||
<ClCompile Include="Src\TextureSampler.cpp" />
|
||||
<ClCompile Include="Src\TransformUnit.cpp" />
|
||||
<ClCompile Include="Src\VertexLoader.cpp" />
|
||||
<ClCompile Include="Src\SWVertexLoader.cpp" />
|
||||
<ClCompile Include="Src\VideoConfigDialog.cpp" />
|
||||
<ClCompile Include="Src\Win32.cpp" />
|
||||
<ClCompile Include="Src\XFMemLoader.cpp" />
|
||||
@@ -203,22 +203,21 @@
|
||||
<ItemGroup>
|
||||
<ClInclude Include="Src\BPMemLoader.h" />
|
||||
<ClInclude Include="Src\Clipper.h" />
|
||||
<ClInclude Include="Src\CommandProcessor.h" />
|
||||
<ClInclude Include="Src\SWCommandProcessor.h" />
|
||||
<ClInclude Include="Src\CPMemLoader.h" />
|
||||
<ClInclude Include="Src\DebugUtil.h" />
|
||||
<ClInclude Include="Src\EfbCopy.h" />
|
||||
<ClInclude Include="Src\EfbInterface.h" />
|
||||
<ClInclude Include="Src\GLUtil.h" />
|
||||
<ClInclude Include="Src\SWGLUtil.h" />
|
||||
<ClInclude Include="Src\HwRasterizer.h" />
|
||||
<ClInclude Include="Src\main.h" />
|
||||
<ClInclude Include="Src\NativeVertexFormat.h" />
|
||||
<ClInclude Include="Src\OpcodeDecoder.h" />
|
||||
<ClInclude Include="Src\PixelEngine.h" />
|
||||
<ClInclude Include="Src\SWPixelEngine.h" />
|
||||
<ClInclude Include="Src\RasterFont.h" />
|
||||
<ClInclude Include="Src\Rasterizer.h" />
|
||||
<ClInclude Include="Src\Renderer.h" />
|
||||
<ClInclude Include="Src\SWRenderer.h" />
|
||||
<ClInclude Include="Src\SetupUnit.h" />
|
||||
<ClInclude Include="Src\Statistics.h" />
|
||||
<ClInclude Include="Src\SWStatistics.h" />
|
||||
<ClInclude Include="Src\stdafx.h" />
|
||||
<ClInclude Include="Src\SWVideoConfig.h" />
|
||||
<ClInclude Include="Src\Tev.h" />
|
||||
@@ -226,7 +225,7 @@
|
||||
<ClInclude Include="Src\TextureSampler.h" />
|
||||
<ClInclude Include="Src\TransformUnit.h" />
|
||||
<ClInclude Include="Src\Vec3.h" />
|
||||
<ClInclude Include="Src\VertexLoader.h" />
|
||||
<ClInclude Include="Src\SWVertexLoader.h" />
|
||||
<ClInclude Include="Src\VertexLoader_Position.h" />
|
||||
<ClInclude Include="Src\VideoBackend.h" />
|
||||
<ClInclude Include="Src\VideoConfigDialog.h" />
|
||||
|
||||
@@ -3,54 +3,50 @@
|
||||
<ItemGroup>
|
||||
<ClCompile Include="Src\BPMemLoader.cpp" />
|
||||
<ClCompile Include="Src\Clipper.cpp" />
|
||||
<ClCompile Include="Src\CommandProcessor.cpp" />
|
||||
<ClCompile Include="Src\SWCommandProcessor.cpp" />
|
||||
<ClCompile Include="Src\CPMemLoader.cpp" />
|
||||
<ClCompile Include="Src\DebugUtil.cpp" />
|
||||
<ClCompile Include="Src\EfbCopy.cpp" />
|
||||
<ClCompile Include="Src\EfbInterface.cpp" />
|
||||
<ClCompile Include="Src\GLUtil.cpp" />
|
||||
<ClCompile Include="Src\SWGLUtil.cpp" />
|
||||
<ClCompile Include="Src\HwRasterizer.cpp" />
|
||||
<ClCompile Include="Src\main.cpp" />
|
||||
<ClCompile Include="Src\SWmain.cpp" />
|
||||
<ClCompile Include="Src\OpcodeDecoder.cpp" />
|
||||
<ClCompile Include="Src\PixelEngine.cpp" />
|
||||
<ClCompile Include="Src\SWPixelEngine.cpp" />
|
||||
<ClCompile Include="Src\Rasterizer.cpp" />
|
||||
<ClCompile Include="Src\Renderer.cpp" />
|
||||
<ClCompile Include="Src\SWRenderer.cpp" />
|
||||
<ClCompile Include="Src\SetupUnit.cpp" />
|
||||
<ClCompile Include="Src\Statistics.cpp" />
|
||||
<ClCompile Include="Src\SWStatistics.cpp" />
|
||||
<ClCompile Include="Src\stdafx.cpp" />
|
||||
<ClCompile Include="Src\SWVideoConfig.cpp" />
|
||||
<ClCompile Include="Src\Tev.cpp" />
|
||||
<ClCompile Include="Src\TextureEncoder.cpp" />
|
||||
<ClCompile Include="Src\TextureSampler.cpp" />
|
||||
<ClCompile Include="Src\TransformUnit.cpp" />
|
||||
<ClCompile Include="Src\VertexLoader.cpp" />
|
||||
<ClCompile Include="Src\SWVertexLoader.cpp" />
|
||||
<ClCompile Include="Src\VideoConfigDialog.cpp" />
|
||||
<ClCompile Include="Src\XFMemLoader.cpp" />
|
||||
<ClCompile Include="Src\Win32.cpp">
|
||||
<Filter>Win32</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="Src\RasterFont.cpp">
|
||||
<Filter>Common</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="Src\BPMemLoader.h" />
|
||||
<ClInclude Include="Src\Clipper.h" />
|
||||
<ClInclude Include="Src\CommandProcessor.h" />
|
||||
<ClInclude Include="Src\SWCommandProcessor.h" />
|
||||
<ClInclude Include="Src\CPMemLoader.h" />
|
||||
<ClInclude Include="Src\DebugUtil.h" />
|
||||
<ClInclude Include="Src\EfbCopy.h" />
|
||||
<ClInclude Include="Src\EfbInterface.h" />
|
||||
<ClInclude Include="Src\GLUtil.h" />
|
||||
<ClInclude Include="Src\SWGLUtil.h" />
|
||||
<ClInclude Include="Src\HwRasterizer.h" />
|
||||
<ClInclude Include="Src\main.h" />
|
||||
<ClInclude Include="Src\NativeVertexFormat.h" />
|
||||
<ClInclude Include="Src\OpcodeDecoder.h" />
|
||||
<ClInclude Include="Src\PixelEngine.h" />
|
||||
<ClInclude Include="Src\SWPixelEngine.h" />
|
||||
<ClInclude Include="Src\Rasterizer.h" />
|
||||
<ClInclude Include="Src\Renderer.h" />
|
||||
<ClInclude Include="Src\SWRenderer.h" />
|
||||
<ClInclude Include="Src\SetupUnit.h" />
|
||||
<ClInclude Include="Src\Statistics.h" />
|
||||
<ClInclude Include="Src\SWStatistics.h" />
|
||||
<ClInclude Include="Src\stdafx.h" />
|
||||
<ClInclude Include="Src\SWVideoConfig.h" />
|
||||
<ClInclude Include="Src\Tev.h" />
|
||||
@@ -58,16 +54,13 @@
|
||||
<ClInclude Include="Src\TextureSampler.h" />
|
||||
<ClInclude Include="Src\TransformUnit.h" />
|
||||
<ClInclude Include="Src\Vec3.h" />
|
||||
<ClInclude Include="Src\VertexLoader.h" />
|
||||
<ClInclude Include="Src\SWVertexLoader.h" />
|
||||
<ClInclude Include="Src\VideoBackend.h" />
|
||||
<ClInclude Include="Src\VideoConfigDialog.h" />
|
||||
<ClInclude Include="Src\XFMemLoader.h" />
|
||||
<ClInclude Include="Src\Win32.h">
|
||||
<Filter>Win32</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Src\RasterFont.h">
|
||||
<Filter>Common</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Src\VertexLoader_Position.h">
|
||||
<Filter>Common</Filter>
|
||||
</ClInclude>
|
||||
@@ -84,4 +77,4 @@
|
||||
<UniqueIdentifier>{80e30848-1174-4168-a8f7-da2553f872b1}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
</Project>
|
||||
|
||||
@@ -16,12 +16,11 @@
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#include "../../../Core/VideoCommon/Src/VideoCommon.h"
|
||||
#include "main.h"
|
||||
|
||||
#include "BPMemLoader.h"
|
||||
#include "EfbCopy.h"
|
||||
#include "Rasterizer.h"
|
||||
#include "PixelEngine.h"
|
||||
#include "SWPixelEngine.h"
|
||||
#include "Tev.h"
|
||||
#include "../../../Core/VideoCommon/Src/TextureDecoder.h"
|
||||
#include "HW/Memmap.h"
|
||||
@@ -35,9 +34,7 @@ void InitBPMemory()
|
||||
bpmem.bpMask = 0xFFFFFF;
|
||||
}
|
||||
|
||||
void BPWritten(int address, int newvalue);
|
||||
|
||||
void LoadBPReg(u32 value)
|
||||
void SWLoadBPReg(u32 value)
|
||||
{
|
||||
//handle the mask register
|
||||
int address = value >> 24;
|
||||
@@ -50,10 +47,10 @@ void LoadBPReg(u32 value)
|
||||
if (address != 0xFE)
|
||||
bpmem.bpMask = 0xFFFFFF;
|
||||
|
||||
BPWritten(address, newval);
|
||||
SWBPWritten(address, newval);
|
||||
}
|
||||
|
||||
void BPWritten(int address, int newvalue)
|
||||
void SWBPWritten(int address, int newvalue)
|
||||
{
|
||||
switch (address)
|
||||
{
|
||||
@@ -66,7 +63,7 @@ void BPWritten(int address, int newvalue)
|
||||
switch (bpmem.drawdone & 0xFF)
|
||||
{
|
||||
case 0x02:
|
||||
PixelEngine::SetFinish(); // may generate interrupt
|
||||
SWPixelEngine::SetFinish(); // may generate interrupt
|
||||
DEBUG_LOG(VIDEO, "GXSetDrawDone SetPEFinish (value: 0x%02X)", (bpmem.drawdone & 0xFFFF));
|
||||
break;
|
||||
|
||||
@@ -77,22 +74,22 @@ void BPWritten(int address, int newvalue)
|
||||
break;
|
||||
case BPMEM_PE_TOKEN_ID: // Pixel Engine Token ID
|
||||
DEBUG_LOG(VIDEO, "SetPEToken 0x%04x", (bpmem.petoken & 0xFFFF));
|
||||
PixelEngine::SetToken(static_cast<u16>(bpmem.petokenint & 0xFFFF), false);
|
||||
SWPixelEngine::SetToken(static_cast<u16>(bpmem.petokenint & 0xFFFF), false);
|
||||
break;
|
||||
case BPMEM_PE_TOKEN_INT_ID: // Pixel Engine Interrupt Token ID
|
||||
DEBUG_LOG(VIDEO, "SetPEToken + INT 0x%04x", (bpmem.petokenint & 0xFFFF));
|
||||
PixelEngine::SetToken(static_cast<u16>(bpmem.petokenint & 0xFFFF), true);
|
||||
SWPixelEngine::SetToken(static_cast<u16>(bpmem.petokenint & 0xFFFF), true);
|
||||
break;
|
||||
case BPMEM_TRIGGER_EFB_COPY:
|
||||
EfbCopy::CopyEfb();
|
||||
break;
|
||||
case BPMEM_CLEARBBOX1:
|
||||
PixelEngine::pereg.boxRight = newvalue >> 10;
|
||||
PixelEngine::pereg.boxLeft = newvalue & 0x3ff;
|
||||
SWPixelEngine::pereg.boxRight = newvalue >> 10;
|
||||
SWPixelEngine::pereg.boxLeft = newvalue & 0x3ff;
|
||||
break;
|
||||
case BPMEM_CLEARBBOX2:
|
||||
PixelEngine::pereg.boxBottom = newvalue >> 10;
|
||||
PixelEngine::pereg.boxTop = newvalue & 0x3ff;
|
||||
SWPixelEngine::pereg.boxBottom = newvalue >> 10;
|
||||
SWPixelEngine::pereg.boxTop = newvalue & 0x3ff;
|
||||
break;
|
||||
case BPMEM_LOADTLUT0: // This one updates bpmem.tlutXferSrc, no need to do anything here.
|
||||
break;
|
||||
|
||||
@@ -24,5 +24,7 @@
|
||||
#include "../../../Core/VideoCommon/Src/BPMemory.h"
|
||||
|
||||
void InitBPMemory();
|
||||
void SWBPWritten(int address, int newvalue);
|
||||
void SWLoadBPReg(u32 value);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -30,8 +30,7 @@ TMatrixIndexB MatrixIndexB;
|
||||
TVtxDesc g_VtxDesc;
|
||||
VAT g_VtxAttr[8];
|
||||
|
||||
|
||||
void LoadCPReg(u32 sub_cmd, u32 value)
|
||||
void SWLoadCPReg(u32 sub_cmd, u32 value)
|
||||
{
|
||||
switch (sub_cmd & 0xF0)
|
||||
{
|
||||
@@ -79,4 +78,3 @@ void LoadCPReg(u32 sub_cmd, u32 value)
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -23,5 +23,6 @@
|
||||
|
||||
#include "../../../Core/VideoCommon/Src/CPMemory.h"
|
||||
|
||||
void SWLoadCPReg(u32 sub_cmd, u32 value);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -53,7 +53,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#include "NativeVertexFormat.h"
|
||||
#include "XFMemLoader.h"
|
||||
#include "BPMemLoader.h"
|
||||
#include "Statistics.h"
|
||||
#include "SWStatistics.h"
|
||||
|
||||
|
||||
namespace Clipper
|
||||
@@ -73,8 +73,8 @@ namespace Clipper
|
||||
|
||||
void SetViewOffset()
|
||||
{
|
||||
m_ViewOffset[0] = xfregs.viewport.xOrig - 342;
|
||||
m_ViewOffset[1] = xfregs.viewport.yOrig - 342;
|
||||
m_ViewOffset[0] = swxfregs.viewport.xOrig - 342;
|
||||
m_ViewOffset[1] = swxfregs.viewport.yOrig - 342;
|
||||
}
|
||||
|
||||
|
||||
@@ -209,7 +209,7 @@ namespace Clipper
|
||||
POLY_CLIP(CLIP_POS_Z_BIT, 0, 0, 0, 1);
|
||||
POLY_CLIP(CLIP_NEG_Z_BIT, 0, 0, 1, 1);
|
||||
|
||||
INCSTAT(stats.thisFrame.numTrianglesClipped);
|
||||
INCSTAT(swstats.thisFrame.numTrianglesClipped);
|
||||
|
||||
// transform the poly in inlist into triangles
|
||||
indices[0] = inlist[0];
|
||||
@@ -273,7 +273,7 @@ namespace Clipper
|
||||
|
||||
void ProcessTriangle(OutputVertexData *v0, OutputVertexData *v1, OutputVertexData *v2)
|
||||
{
|
||||
INCSTAT(stats.thisFrame.numTrianglesIn)
|
||||
INCSTAT(swstats.thisFrame.numTrianglesIn)
|
||||
|
||||
bool backface;
|
||||
|
||||
@@ -395,7 +395,7 @@ namespace Clipper
|
||||
|
||||
if(mask)
|
||||
{
|
||||
INCSTAT(stats.thisFrame.numTrianglesRejected)
|
||||
INCSTAT(swstats.thisFrame.numTrianglesRejected)
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -415,13 +415,13 @@ namespace Clipper
|
||||
|
||||
if ((bpmem.genMode.cullmode & 1) && !backface) // cull frontfacing
|
||||
{
|
||||
INCSTAT(stats.thisFrame.numTrianglesCulled)
|
||||
INCSTAT(swstats.thisFrame.numTrianglesCulled)
|
||||
return false;
|
||||
}
|
||||
|
||||
if ((bpmem.genMode.cullmode & 2) && backface) // cull backfacing
|
||||
{
|
||||
INCSTAT(stats.thisFrame.numTrianglesCulled)
|
||||
INCSTAT(swstats.thisFrame.numTrianglesCulled)
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -434,9 +434,9 @@ namespace Clipper
|
||||
Vec3 &screen = vertex->screenPosition;
|
||||
|
||||
float wInverse = 1.0f/projected.w;
|
||||
screen.x = projected.x * wInverse * xfregs.viewport.wd + m_ViewOffset[0];
|
||||
screen.y = projected.y * wInverse * xfregs.viewport.ht + m_ViewOffset[1];
|
||||
screen.z = projected.z * wInverse * xfregs.viewport.zRange + xfregs.viewport.farZ;
|
||||
screen.x = projected.x * wInverse * swxfregs.viewport.wd + m_ViewOffset[0];
|
||||
screen.y = projected.y * wInverse * swxfregs.viewport.ht + m_ViewOffset[1];
|
||||
screen.z = projected.z * wInverse * swxfregs.viewport.zRange + swxfregs.viewport.farZ;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -17,16 +17,15 @@
|
||||
|
||||
#include "Common.h"
|
||||
|
||||
#include "main.h"
|
||||
#include "DebugUtil.h"
|
||||
#include "BPMemLoader.h"
|
||||
#include "TextureSampler.h"
|
||||
#include "SWVideoConfig.h"
|
||||
#include "EfbInterface.h"
|
||||
#include "Statistics.h"
|
||||
#include "SWStatistics.h"
|
||||
#include "HwRasterizer.h"
|
||||
#include "StringUtil.h"
|
||||
#include "CommandProcessor.h"
|
||||
#include "SWCommandProcessor.h"
|
||||
#include "../../../Core/VideoCommon/Src/ImageWrite.h"
|
||||
#include "FileUtil.h"
|
||||
|
||||
@@ -114,7 +113,7 @@ void DumpActiveTextures()
|
||||
s32 maxLod = GetMaxTextureLod(texmap);
|
||||
for (s32 mip = 0; mip <= maxLod; ++mip)
|
||||
{
|
||||
SaveTexture(StringFromFormat("%star%i_ind%i_map%i_mip%i.tga", File::GetUserPath(D_DUMPTEXTURES_IDX), stats.thisFrame.numDrawnObjects, stageNum, texmap, mip).c_str(), texmap, mip);
|
||||
SaveTexture(StringFromFormat("%star%i_ind%i_map%i_mip%i.tga", File::GetUserPath(D_DUMPTEXTURES_IDX), swstats.thisFrame.numDrawnObjects, stageNum, texmap, mip).c_str(), texmap, mip);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -129,7 +128,7 @@ void DumpActiveTextures()
|
||||
s32 maxLod = GetMaxTextureLod(texmap);
|
||||
for (s32 mip = 0; mip <= maxLod; ++mip)
|
||||
{
|
||||
SaveTexture(StringFromFormat("%star%i_stage%i_map%i_mip%i.tga", File::GetUserPath(D_DUMPTEXTURES_IDX), stats.thisFrame.numDrawnObjects, stageNum, texmap, mip).c_str(), texmap, mip);
|
||||
SaveTexture(StringFromFormat("%star%i_stage%i_map%i_mip%i.tga", File::GetUserPath(D_DUMPTEXTURES_IDX), swstats.thisFrame.numDrawnObjects, stageNum, texmap, mip).c_str(), texmap, mip);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -216,7 +215,7 @@ void OnObjectBegin()
|
||||
{
|
||||
if (!g_bSkipCurrentFrame)
|
||||
{
|
||||
if (g_SWVideoConfig.bDumpTextures && stats.thisFrame.numDrawnObjects >= g_SWVideoConfig.drawStart && stats.thisFrame.numDrawnObjects < g_SWVideoConfig.drawEnd)
|
||||
if (g_SWVideoConfig.bDumpTextures && swstats.thisFrame.numDrawnObjects >= g_SWVideoConfig.drawStart && swstats.thisFrame.numDrawnObjects < g_SWVideoConfig.drawEnd)
|
||||
DumpActiveTextures();
|
||||
|
||||
if (g_SWVideoConfig.bHwRasterizer)
|
||||
@@ -231,8 +230,8 @@ void OnObjectEnd()
|
||||
{
|
||||
if (!g_bSkipCurrentFrame)
|
||||
{
|
||||
if (g_SWVideoConfig.bDumpObjects && stats.thisFrame.numDrawnObjects >= g_SWVideoConfig.drawStart && stats.thisFrame.numDrawnObjects < g_SWVideoConfig.drawEnd)
|
||||
DumpEfb(StringFromFormat("%sobject%i.tga", File::GetUserPath(D_DUMPFRAMES_IDX), stats.thisFrame.numDrawnObjects).c_str());
|
||||
if (g_SWVideoConfig.bDumpObjects && swstats.thisFrame.numDrawnObjects >= g_SWVideoConfig.drawStart && swstats.thisFrame.numDrawnObjects < g_SWVideoConfig.drawEnd)
|
||||
DumpEfb(StringFromFormat("%sobject%i.tga", File::GetUserPath(D_DUMPFRAMES_IDX), swstats.thisFrame.numDrawnObjects).c_str());
|
||||
|
||||
if (g_SWVideoConfig.bHwRasterizer || drawingHwTriangles)
|
||||
{
|
||||
@@ -246,12 +245,12 @@ void OnObjectEnd()
|
||||
{
|
||||
DrawnToBuffer[i] = false;
|
||||
(void)SaveTGA(StringFromFormat("%sobject%i_%s(%i).tga", File::GetUserPath(D_DUMPFRAMES_IDX),
|
||||
stats.thisFrame.numDrawnObjects, ObjectBufferName[i], i - BufferBase[i]).c_str(), EFB_WIDTH, EFB_HEIGHT, ObjectBuffer[i]);
|
||||
swstats.thisFrame.numDrawnObjects, ObjectBufferName[i], i - BufferBase[i]).c_str(), EFB_WIDTH, EFB_HEIGHT, ObjectBuffer[i]);
|
||||
memset(ObjectBuffer[i], 0, sizeof(ObjectBuffer[i]));
|
||||
}
|
||||
}
|
||||
|
||||
stats.thisFrame.numDrawnObjects++;
|
||||
swstats.thisFrame.numDrawnObjects++;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,8 +260,8 @@ void OnFrameEnd()
|
||||
{
|
||||
if (g_SWVideoConfig.bDumpFrames)
|
||||
{
|
||||
DumpEfb(StringFromFormat("%sframe%i_color.tga", File::GetUserPath(D_DUMPFRAMES_IDX), stats.frameCount).c_str());
|
||||
DumpDepth(StringFromFormat("%sframe%i_depth.tga", File::GetUserPath(D_DUMPFRAMES_IDX), stats.frameCount).c_str());
|
||||
DumpEfb(StringFromFormat("%sframe%i_color.tga", File::GetUserPath(D_DUMPFRAMES_IDX), swstats.frameCount).c_str());
|
||||
DumpDepth(StringFromFormat("%sframe%i_depth.tga", File::GetUserPath(D_DUMPFRAMES_IDX), swstats.frameCount).c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,18 +15,17 @@
|
||||
// Official SVN repository and contact information can be found at
|
||||
// http://code.google.com/p/dolphin-emu/
|
||||
|
||||
#include "main.h"
|
||||
#include "BPMemLoader.h"
|
||||
#include "EfbCopy.h"
|
||||
#include "EfbInterface.h"
|
||||
#include "Renderer.h"
|
||||
#include "SWRenderer.h"
|
||||
#include "TextureEncoder.h"
|
||||
#include "Statistics.h"
|
||||
#include "SWStatistics.h"
|
||||
#include "SWVideoConfig.h"
|
||||
#include "DebugUtil.h"
|
||||
#include "HwRasterizer.h"
|
||||
#include "CommandProcessor.h"
|
||||
#include "GLUtil.h"
|
||||
#include "SWCommandProcessor.h"
|
||||
#include "SWGLUtil.h"
|
||||
#include "HW/Memmap.h"
|
||||
#include "Core.h"
|
||||
|
||||
@@ -40,10 +39,10 @@ namespace EfbCopy
|
||||
{
|
||||
// copy to open gl for rendering
|
||||
EfbInterface::UpdateColorTexture();
|
||||
Renderer::DrawTexture(EfbInterface::efbColorTexture, EFB_WIDTH, EFB_HEIGHT);
|
||||
SWRenderer::DrawTexture(EfbInterface::efbColorTexture, EFB_WIDTH, EFB_HEIGHT);
|
||||
}
|
||||
|
||||
Renderer::SwapBuffer();
|
||||
SWRenderer::SwapBuffer();
|
||||
|
||||
}
|
||||
|
||||
@@ -88,7 +87,7 @@ namespace EfbCopy
|
||||
CopyToXfb();
|
||||
Core::Callback_VideoCopiedToXFB(false);
|
||||
|
||||
stats.frameCount++;
|
||||
swstats.frameCount++;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#include "EfbInterface.h"
|
||||
#include "BPMemLoader.h"
|
||||
#include "../../../Core/VideoCommon/Src/LookUpTables.h"
|
||||
#include "PixelEngine.h"
|
||||
#include "SWPixelEngine.h"
|
||||
|
||||
|
||||
u8 efb[EFB_WIDTH*EFB_HEIGHT*6];
|
||||
@@ -434,10 +434,10 @@ namespace EfbInterface
|
||||
SetPixelAlphaOnly(offset, dstClrPtr[ALP_C]);
|
||||
|
||||
// branchless bounding box update
|
||||
PixelEngine::pereg.boxLeft = PixelEngine::pereg.boxLeft>x?x:PixelEngine::pereg.boxLeft;
|
||||
PixelEngine::pereg.boxRight = PixelEngine::pereg.boxRight<x?x:PixelEngine::pereg.boxRight;
|
||||
PixelEngine::pereg.boxTop = PixelEngine::pereg.boxTop>y?y:PixelEngine::pereg.boxTop;
|
||||
PixelEngine::pereg.boxBottom = PixelEngine::pereg.boxBottom<y?y:PixelEngine::pereg.boxBottom;
|
||||
SWPixelEngine::pereg.boxLeft = SWPixelEngine::pereg.boxLeft>x?x:SWPixelEngine::pereg.boxLeft;
|
||||
SWPixelEngine::pereg.boxRight = SWPixelEngine::pereg.boxRight<x?x:SWPixelEngine::pereg.boxRight;
|
||||
SWPixelEngine::pereg.boxTop = SWPixelEngine::pereg.boxTop>y?y:SWPixelEngine::pereg.boxTop;
|
||||
SWPixelEngine::pereg.boxBottom = SWPixelEngine::pereg.boxBottom<y?y:SWPixelEngine::pereg.boxBottom;
|
||||
}
|
||||
|
||||
void SetColor(u16 x, u16 y, u8 *color)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#include "BPMemLoader.h"
|
||||
#include "HwRasterizer.h"
|
||||
#include "GLUtil.h"
|
||||
#include "SWGLUtil.h"
|
||||
#include "NativeVertexFormat.h"
|
||||
#include "DebugUtil.h"
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user