From 0fdef7b7d78d5b4681e470f0dc8ae82cbd463a9c Mon Sep 17 00:00:00 2001 From: Gauvain 'GovanifY' Roussel-Tarbouriech Date: Sat, 19 Sep 2020 15:16:55 +0200 Subject: [PATCH] FW: removing initial references --- cmake/SelectPcsx2Plugins.cmake | 8 - common/include/PS2Edefs.h | 38 +- common/include/PluginCallbacks.h | 2 - pcsx2/Config.h | 1 - pcsx2/PluginManager.cpp | 48 --- pcsx2/Plugins.h | 2 - pcsx2/System/SysCoreThread.cpp | 3 + pcsx2/gui/SysState.cpp | 1 - plugins/CMakeLists.txt | 4 - plugins/FWnull/CMakeLists.txt | 58 --- plugins/FWnull/FW.cpp | 315 ---------------- plugins/FWnull/FW.h | 35 -- plugins/FWnull/License.txt | 342 ------------------ plugins/FWnull/ReadMe.txt | 34 -- plugins/FWnull/Windows/FWnull.vcxproj | 69 ---- plugins/FWnull/Windows/FWnull.vcxproj.filters | 37 -- plugins/FWnull/Windows/FireWireNull.def | 21 -- plugins/FWnull/Windows/ProjectRootDir.props | 15 - 18 files changed, 4 insertions(+), 1029 deletions(-) delete mode 100644 plugins/FWnull/CMakeLists.txt delete mode 100644 plugins/FWnull/FW.cpp delete mode 100644 plugins/FWnull/FW.h delete mode 100644 plugins/FWnull/License.txt delete mode 100644 plugins/FWnull/ReadMe.txt delete mode 100644 plugins/FWnull/Windows/FWnull.vcxproj delete mode 100644 plugins/FWnull/Windows/FWnull.vcxproj.filters delete mode 100644 plugins/FWnull/Windows/FireWireNull.def delete mode 100644 plugins/FWnull/Windows/ProjectRootDir.props diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake index 26344f75e6..7aa9fc8914 100644 --- a/cmake/SelectPcsx2Plugins.cmake +++ b/cmake/SelectPcsx2Plugins.cmake @@ -105,14 +105,6 @@ endif() endif() #--------------------------------------- -#--------------------------------------- -# FWnull -#--------------------------------------- -if(GTKn_FOUND) - set(FWnull TRUE) -endif() -#--------------------------------------- - #--------------------------------------- # GSnull #--------------------------------------- diff --git a/common/include/PS2Edefs.h b/common/include/PS2Edefs.h index 271d54bab2..bcde173aec 100644 --- a/common/include/PS2Edefs.h +++ b/common/include/PS2Edefs.h @@ -74,7 +74,7 @@ typedef struct _keyEvent /////////////////////////////////////////////////////////////////////// #if defined(GSdefs) || defined(PADdefs) || defined(SIOdefs) || \ - defined(SPU2defs) || defined(DEV9defs) || defined(USBdefs) || defined(FWdefs) + defined(SPU2defs) || defined(DEV9defs) || defined(USBdefs) #define COMMONdefs #endif @@ -84,7 +84,6 @@ typedef struct _keyEvent #define PS2E_LT_SPU2 0x04 #define PS2E_LT_DEV9 0x10 #define PS2E_LT_USB 0x20 -#define PS2E_LT_FW 0x40 #define PS2E_LT_SIO 0x80 // PS2EgetLibVersion2 (high 16 bits) @@ -93,7 +92,6 @@ typedef struct _keyEvent #define PS2E_SPU2_VERSION 0x0005 #define PS2E_DEV9_VERSION 0x0003 #define PS2E_USB_VERSION 0x0003 -#define PS2E_FW_VERSION 0x0002 #define PS2E_SIO_VERSION 0x0001 #ifdef COMMONdefs @@ -379,34 +377,6 @@ s32 CALLBACK USBtest(); #endif -/* FW plugin API */ - -// if this file is included with this define -// the next api will not be skipped by the compiler -#if defined(BUILTIN_FW_PLUGIN) || defined(BUILTIN_FW_PLUGIN) -// basic funcs - -// NOTE: The read/write functions CANNOT use XMM/MMX regs -// If you want to use them, need to save and restore current ones -s32 CALLBACK FWinit(); -s32 CALLBACK FWopen(void *pDsp); -void CALLBACK FWclose(); -void CALLBACK FWshutdown(); -void CALLBACK FWsetSettingsDir(const char *dir); -void CALLBACK FWsetLogDir(const char *dir); - -u32 CALLBACK FWread32(u32 addr); -void CALLBACK FWwrite32(u32 addr, u32 value); -void CALLBACK FWirqCallback(void (*callback)()); - -// extended funcs - -s32 CALLBACK FWfreeze(int mode, freezeData *data); -void CALLBACK FWconfigure(); -void CALLBACK FWabout(); -s32 CALLBACK FWtest(); -#endif - // might be useful for emulators #ifdef PLUGINtypedefs @@ -513,12 +483,6 @@ typedef void(CALLBACK *_USBasync)(u32 cycles); typedef void(CALLBACK *_USBirqCallback)(USBcallback callback); typedef USBhandler(CALLBACK *_USBirqHandler)(void); typedef void(CALLBACK *_USBsetRAM)(void *mem); - -//FW -typedef s32(CALLBACK *_FWopen)(void *pDsp); -typedef u32(CALLBACK *_FWread32)(u32 mem); -typedef void(CALLBACK *_FWwrite32)(u32 mem, u32 value); -typedef void(CALLBACK *_FWirqCallback)(void (*callback)()); #endif #ifdef PLUGINfuncs diff --git a/common/include/PluginCallbacks.h b/common/include/PluginCallbacks.h index 4742d7e6b6..bc19f87ed5 100644 --- a/common/include/PluginCallbacks.h +++ b/common/include/PluginCallbacks.h @@ -180,7 +180,6 @@ enum PS2E_ComponentTypes { PS2E_TYPE_SPU2, PS2E_TYPE_DEV9, PS2E_TYPE_USB, - PS2E_TYPE_FW, PS2E_TYPE_SIO, PS2E_TYPE_Mcd, }; @@ -191,7 +190,6 @@ enum PluginLibVersion { PS2E_VER_SPU2 = 0x1000, PS2E_VER_DEV9 = 0x1000, PS2E_VER_USB = 0x1000, - PS2E_VER_FW = 0x1000, PS2E_VER_SIO = 0x1000 }; diff --git a/pcsx2/Config.h b/pcsx2/Config.h index 8331a91327..2076b802ca 100644 --- a/pcsx2/Config.h +++ b/pcsx2/Config.h @@ -25,7 +25,6 @@ enum PluginsEnum_t PluginId_PAD, PluginId_SPU2, PluginId_USB, - PluginId_FW, PluginId_DEV9, PluginId_Count, diff --git a/pcsx2/PluginManager.cpp b/pcsx2/PluginManager.cpp index 763ab68c12..95bd3b70d7 100644 --- a/pcsx2/PluginManager.cpp +++ b/pcsx2/PluginManager.cpp @@ -83,7 +83,6 @@ const PluginInfo tbl_PluginInfo[] = { "PAD", PluginId_PAD, PS2E_LT_PAD, PS2E_PAD_VERSION }, { "SPU2", PluginId_SPU2, PS2E_LT_SPU2, PS2E_SPU2_VERSION }, { "USB", PluginId_USB, PS2E_LT_USB, PS2E_USB_VERSION }, - { "FW", PluginId_FW, PS2E_LT_FW, PS2E_FW_VERSION }, { "DEV9", PluginId_DEV9, PS2E_LT_DEV9, PS2E_DEV9_VERSION }, { NULL }, @@ -334,14 +333,6 @@ _USBirqHandler USBirqHandler; _USBsetRAM USBsetRAM; #endif -// FW -#ifndef BUILTIN_FW_PLUGIN -_FWopen FWopen; -_FWread32 FWread32; -_FWwrite32 FWwrite32; -_FWirqCallback FWirqCallback; -#endif - DEV9handler dev9Handler; USBhandler usbHandler; uptr pDsp[2]; @@ -535,30 +526,12 @@ static const LegacyApi_OptMethod s_MethMessOpt_USB[] = { NULL } }; -// ---------------------------------------------------------------------------- -// FW Mess! -// ---------------------------------------------------------------------------- -static const LegacyApi_ReqMethod s_MethMessReq_FW[] = -{ - { "FWopen", (vMeth**)&FWopen, NULL }, - { "FWread32", (vMeth**)&FWread32, NULL }, - { "FWwrite32", (vMeth**)&FWwrite32, NULL }, - { "FWirqCallback", (vMeth**)&FWirqCallback, NULL }, - { NULL } -}; - -static const LegacyApi_OptMethod s_MethMessOpt_FW[] = -{ - { NULL } -}; - static const LegacyApi_ReqMethod* const s_MethMessReq[] = { s_MethMessReq_GS, s_MethMessReq_PAD, s_MethMessReq_SPU2, s_MethMessReq_USB, - s_MethMessReq_FW, s_MethMessReq_DEV9 }; @@ -568,7 +541,6 @@ static const LegacyApi_OptMethod* const s_MethMessOpt[] = s_MethMessOpt_PAD, s_MethMessOpt_SPU2, s_MethMessOpt_USB, - s_MethMessOpt_FW, s_MethMessOpt_DEV9 }; @@ -741,9 +713,6 @@ void* StaticLibrary::GetSymbol(const wxString &name) #ifdef BUILTIN_USB_PLUGIN RETURN_COMMON_SYMBOL(USB); #endif -#ifdef BUILTIN_FW_PLUGIN - RETURN_COMMON_SYMBOL(FW); -#endif #undef RETURN_COMMON_SYMBOL @@ -807,9 +776,6 @@ SysCorePlugins::PluginStatus_t::PluginStatus_t( PluginsEnum_t _pid, const wxStri #endif #ifdef BUILTIN_USB_PLUGIN case PluginId_USB: -#endif -#ifdef BUILTIN_FW_PLUGIN - case PluginId_FW: #endif case PluginId_Count: IsStatic = true; @@ -1110,13 +1076,6 @@ bool SysCorePlugins::OpenPlugin_USB() return true; } -bool SysCorePlugins::OpenPlugin_FW() -{ - if( FWopen((void*)pDsp) ) return false; - FWirqCallback( fwIrq ); - return true; -} - bool SysCorePlugins::OpenPlugin_Mcd() { ScopedLock lock( m_mtx_PluginStatus ); @@ -1144,7 +1103,6 @@ void SysCorePlugins::Open( PluginsEnum_t pid ) case PluginId_PAD: result = OpenPlugin_PAD(); break; case PluginId_SPU2: result = OpenPlugin_SPU2(); break; case PluginId_USB: result = OpenPlugin_USB(); break; - case PluginId_FW: result = OpenPlugin_FW(); break; case PluginId_DEV9: result = OpenPlugin_DEV9(); break; jNO_DEFAULT; @@ -1232,11 +1190,6 @@ void SysCorePlugins::ClosePlugin_USB() _generalclose( PluginId_USB ); } -void SysCorePlugins::ClosePlugin_FW() -{ - _generalclose( PluginId_FW ); -} - void SysCorePlugins::ClosePlugin_Mcd() { ScopedLock lock( m_mtx_PluginStatus ); @@ -1258,7 +1211,6 @@ void SysCorePlugins::Close( PluginsEnum_t pid ) case PluginId_PAD: ClosePlugin_PAD(); break; case PluginId_SPU2: ClosePlugin_SPU2(); break; case PluginId_USB: ClosePlugin_USB(); break; - case PluginId_FW: ClosePlugin_FW(); break; case PluginId_DEV9: ClosePlugin_DEV9(); break; case PluginId_Mcd: ClosePlugin_Mcd(); break; diff --git a/pcsx2/Plugins.h b/pcsx2/Plugins.h index ab5b1dd775..626085b4e1 100644 --- a/pcsx2/Plugins.h +++ b/pcsx2/Plugins.h @@ -405,7 +405,6 @@ protected: virtual bool OpenPlugin_SPU2(); virtual bool OpenPlugin_DEV9(); virtual bool OpenPlugin_USB(); - virtual bool OpenPlugin_FW(); virtual bool OpenPlugin_Mcd(); void _generalclose( PluginsEnum_t pid ); @@ -415,7 +414,6 @@ protected: virtual void ClosePlugin_SPU2(); virtual void ClosePlugin_DEV9(); virtual void ClosePlugin_USB(); - virtual void ClosePlugin_FW(); virtual void ClosePlugin_Mcd(); friend class SysMtgsThread; diff --git a/pcsx2/System/SysCoreThread.cpp b/pcsx2/System/SysCoreThread.cpp index 09bdd255a6..09c922dea4 100644 --- a/pcsx2/System/SysCoreThread.cpp +++ b/pcsx2/System/SysCoreThread.cpp @@ -288,12 +288,14 @@ void SysCoreThread::OnSuspendInThread() { GetCorePlugins().Close(); DoCDVDclose(); + DoFWclose(); } void SysCoreThread::OnResumeInThread( bool isSuspended ) { GetCorePlugins().Open(); DoCDVDopen(); + DoFWopen(); } @@ -309,6 +311,7 @@ void SysCoreThread::OnCleanupInThread() // FIXME: temporary workaround for deadlock on exit, which actually should be a crash vu1Thread.WaitVU(); DoCDVDclose(); + DoFWclose(); GetCorePlugins().Close(); GetCorePlugins().Shutdown(); diff --git a/pcsx2/gui/SysState.cpp b/pcsx2/gui/SysState.cpp index 80cc8d1310..0cbc309de1 100644 --- a/pcsx2/gui/SysState.cpp +++ b/pcsx2/gui/SysState.cpp @@ -265,7 +265,6 @@ static const std::unique_ptr SavestateEntries[] = { std::unique_ptr(new PluginSavestateEntry( PluginId_PAD )), std::unique_ptr(new PluginSavestateEntry( PluginId_SPU2 )), std::unique_ptr(new PluginSavestateEntry( PluginId_USB )), - std::unique_ptr(new PluginSavestateEntry( PluginId_FW )), std::unique_ptr(new PluginSavestateEntry( PluginId_DEV9 )) }; diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 172d4155e2..fb0c8b0fc0 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -14,10 +14,6 @@ if(EXISTS "${CMAKE_SOURCE_DIR}/plugins/dev9ghzdrk" AND dev9ghzdrk) add_subdirectory(dev9ghzdrk) endif() -if(EXISTS "${CMAKE_SOURCE_DIR}/plugins/FWnull" AND FWnull) - add_subdirectory(FWnull) -endif() - if(EXISTS "${CMAKE_SOURCE_DIR}/plugins/GSdx" AND GSdx) add_subdirectory(GSdx) endif() diff --git a/plugins/FWnull/CMakeLists.txt b/plugins/FWnull/CMakeLists.txt deleted file mode 100644 index 6b391ba622..0000000000 --- a/plugins/FWnull/CMakeLists.txt +++ /dev/null @@ -1,58 +0,0 @@ -# Check that people use the good file -if(NOT TOP_CMAKE_WAS_SOURCED) - message(FATAL_ERROR " - You did not 'cmake' the good CMakeLists.txt file. Use the one in the top dir. - It is advice to delete all wrongly generated cmake stuff => CMakeFiles & CMakeCache.txt") -endif() - - -# plugin name -set(Output FWnull-0.7.0) - -set(FWnullFinalFlags - -fvisibility=hidden - -Wall - -Wno-parentheses - ) - -# FWnull sources -set(FWnullSources - FW.cpp) - -# FWnull headers -set(FWnullHeaders - FW.h) - -# FWnull Linux sources -set(FWnullLinuxSources -) - -# FWnull Linux headers -set(FWnullLinuxHeaders -) - -# FWnull Windows sources -set(FWnullWindowsSources - Windows/FireWireNull.def -) - -# FWnull Windows headers -set(FWnullWindowsHeaders -) - -set(FWnullFinalSources - ${FWnullSources} - ${FWnullHeaders} - ${FWnullLinuxSources} - ${FWnullLinuxHeaders} -) - -set(FWnullFinalLibs - ${wxWidgets_LIBRARIES} -) - -if(BUILTIN_FW) - add_pcsx2_lib(${Output} "${FWnullFinalSources}" "${FWnullFinalLibs}" "${FWnullFinalFlags}") -else() - add_pcsx2_plugin(${Output} "${FWnullFinalSources}" "${FWnullFinalLibs}" "${FWnullFinalFlags}") -endif() diff --git a/plugins/FWnull/FW.cpp b/plugins/FWnull/FW.cpp deleted file mode 100644 index e2f7761a95..0000000000 --- a/plugins/FWnull/FW.cpp +++ /dev/null @@ -1,315 +0,0 @@ -/* FWnull - * Copyright (C) 2004-2010 PCSX2 Dev Team - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA - */ - -#include -#include -using namespace std; - -#include "FW.h" -#include "svnrev.h" -#include "null/config.inl" - -const u8 version = PS2E_FW_VERSION; -const u8 revision = 0; -const u8 build = 7; // increase that with each version - -static char libraryName[256]; - -string s_strIniPath = "inis"; -string s_strLogPath = "logs"; - -u8 phyregs[16]; -s8 *fwregs; - -void (*FWirq)(); - -EXPORT_C_(void) -FWconfigure() -{ - const std::string ini_path = s_strIniPath + "/FWnull.ini"; - LoadConfig(ini_path); - ConfigureLogging(); - SaveConfig(ini_path); -} - -void LogInit() -{ - const std::string LogFile(s_strLogPath + "/FWnull.log"); - g_plugin_log.Open(LogFile); -} - -EXPORT_C_(void) -FWsetLogDir(const char *dir) -{ - // Get the path to the log directory. - s_strLogPath = (dir == NULL) ? "logs" : dir; - - // Reload the log file after updated the path - g_plugin_log.Close(); - LogInit(); -} - -EXPORT_C_(u32) -PS2EgetLibType() -{ - return PS2E_LT_FW; -} - -EXPORT_C_(const char *) -PS2EgetLibName() -{ - snprintf(libraryName, 255, "FWnull Driver %lld%s", SVN_REV, SVN_MODS ? "m" : ""); - return libraryName; -} - -EXPORT_C_(u32) -PS2EgetLibVersion2(u32 type) -{ - return (version << 16) | (revision << 8) | build; -} - -EXPORT_C_(s32) -FWinit() -{ - LoadConfig(s_strIniPath + "/FWnull.ini"); - LogInit(); - g_plugin_log.WriteLn("FWnull plugin version %d,%d", revision, build); - g_plugin_log.WriteLn("Initializing FWnull"); - - memset(phyregs, 0, sizeof(phyregs)); - // Initializing our registers. - fwregs = (s8 *)calloc(0x10000, 1); - if (fwregs == NULL) { - g_plugin_log.Message("Error allocating Memory"); - return -1; - } - return 0; -} - -EXPORT_C_(void) -FWshutdown() -{ - // Freeing the registers. - free(fwregs); - fwregs = NULL; - - g_plugin_log.Close(); -} - -EXPORT_C_(s32) -FWopen(void *pDsp) -{ - g_plugin_log.WriteLn("Opening FWnull."); - - return 0; -} - -EXPORT_C_(void) -FWclose() -{ - // Close the plugin. - g_plugin_log.WriteLn("Closing FWnull."); -} - -void PHYWrite() -{ - u8 reg = (PHYACC >> 8) & 0xf; - u8 data = PHYACC & 0xff; - - phyregs[reg] = data; - - PHYACC &= ~0x4000ffff; -} - -void PHYRead() -{ - u8 reg = (PHYACC >> 24) & 0xf; - - PHYACC &= ~0x80000000; - - PHYACC |= phyregs[reg] | (reg << 8); - - if (fwRu32(0x8424) & 0x40000000) //RRx interrupt mask - { - fwRu32(0x8420) |= 0x40000000; - FWirq(); - } -} -EXPORT_C_(u32) -FWread32(u32 addr) -{ - u32 ret = 0; - - switch (addr) { - //Node ID Register the top part is default, bottom part i got from my ps2 - case 0x1f808400: - ret = /*(0x3ff << 22) | 1;*/ 0xffc00001; - break; - // Control Register 2 - case 0x1f808410: - ret = fwRu32(addr); //SCLK OK (Needs to be set when FW is "Ready" - break; - //Interrupt 0 Register - case 0x1f808420: - ret = fwRu32(addr); - break; - - //Dunno what this is, but my home console always returns this value 0x10000001 - //Seems to be related to the Node ID however (does some sort of compare/check) - case 0x1f80847c: - ret = 0x10000001; - break; - - // Include other relevant 32 bit addresses we need to catch here. - default: - // By default, read fwregs. - ret = fwRu32(addr); - break; - } - - g_plugin_log.WriteLn("FW read mem 0x%x: 0x%x", addr, ret); - - return ret; -} - -EXPORT_C_(void) -FWwrite32(u32 addr, u32 value) -{ - switch (addr) { - // Include other memory locations we want to catch here. - // For example: - // - // case 0x1f808400: - // case 0x1f808414: - // case 0x1f808420: - // case 0x1f808428: - // case 0x1f808430: - // - - //PHY access - case 0x1f808414: - //If in read mode (top bit set) we read the PHY register requested then set the RRx interrupt if it's enabled - //Im presuming we send that back to pcsx2 then. This register stores the result, plus whatever was written (minus the read/write flag - fwRu32(addr) = value; //R/W Bit cleaned in underneath function - if (value & 0x40000000) //Writing to PHY - { - PHYWrite(); - } else if (value & 0x80000000) //Reading from PHY - { - PHYRead(); - } - break; - - //Control Register 0 - case 0x1f808408: - //This enables different functions of the link interface - //Just straight writes, should brobably struct these later. - //Default written settings (on unreal tournament) are - //Urcv M = 1 - //RSP 0 = 1 - //Retlim = 0xF - //Cyc Tmr En = 1 - //Bus ID Rst = 1 - //Rcv Self ID = 1 - fwRu32(addr) = value; - // if((value & 0x800000) && (fwRu32(0x842C) & 0x2)) - // { - // fwRu32(0x8428) |= 0x2; - // FWirq(); - // } - fwRu32(addr) &= ~0x800000; - break; - //Control Register 2 - case 0x1f808410: // fwRu32(addr) = value; break; - //Ignore writes to this for now, apart from 0x2 which is Link Power Enable - //0x8 is SCLK OK (Ready) which should be set for emulation - fwRu32(addr) = 0x8 /*| value & 0x2*/; - break; - //Interrupt 0 Register - case 0x1f808420: - //Interrupt 1 Register - case 0x1f808428: - //Interrupt 2 Register - case 0x1f808430: - //Writes of 1 clear the corresponding bits - fwRu32(addr) &= ~value; - break; - //Interrupt 0 Register Mask - case 0x1f808424: - //Interrupt 1 Register Mask - case 0x1f80842C: - //Interrupt 2 Register Mask - case 0x1f808434: - //These are direct writes (as it's a mask!) - fwRu32(addr) = value; - break; - //DMA Control and Status Register 0 - case 0x1f8084B8: - fwRu32(addr) = value; - break; - //DMA Control and Status Register 1 - case 0x1f808538: - fwRu32(addr) = value; - break; - default: - // By default, just write it to fwregs. - fwRu32(addr) = value; - break; - } - g_plugin_log.WriteLn("FW write mem 0x%x: 0x%x", addr, value); -} - -EXPORT_C_(void) -FWirqCallback(void (*callback)()) -{ - // Register FWirq, so we can trigger an interrupt with it later. - FWirq = callback; -} - -EXPORT_C_(void) -FWsetSettingsDir(const char *dir) -{ - // Find out from pcsx2 where we are supposed to put our ini file. - s_strIniPath = (dir == NULL) ? "inis" : dir; -} - -EXPORT_C_(s32) -FWfreeze(int mode, freezeData *data) -{ - // This should store or retrieve any information, for if emulation - // gets suspended, or for savestates. - switch (mode) { - case FREEZE_LOAD: - // Load previously saved data. - break; - case FREEZE_SAVE: - // Save data. - break; - case FREEZE_SIZE: - // return the size of the data. - break; - } - return 0; -} - -EXPORT_C_(s32) -FWtest() -{ - // 0 if the plugin works, non-0 if it doesn't. - return 0; -} diff --git a/plugins/FWnull/FW.h b/plugins/FWnull/FW.h deleted file mode 100644 index b5da41d5f4..0000000000 --- a/plugins/FWnull/FW.h +++ /dev/null @@ -1,35 +0,0 @@ -/* FWnull - * Copyright (C) 2004-20010 PCSX2 Dev Team - * - * PCSX2 is free software: you can redistribute it and/or modify it under the terms - * of the GNU Lesser General Public License as published by the Free Software Found- - * ation, either version 3 of the License, or (at your option) any later version. - * - * PCSX2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; - * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along with PCSX2. - * If not, see . - */ - -#ifndef __FW_H__ -#define __FW_H__ - -#include - -#define FWdefs -#include "PS2Edefs.h" -#include "PS2Eext.h" - -// Our main memory storage, and defines for accessing it. -extern s8 *fwregs; -#define fwRs32(mem) (*(s32 *)&fwregs[(mem)&0xffff]) -#define fwRu32(mem) (*(u32 *)&fwregs[(mem)&0xffff]) - -//PHY Access Address for ease of use :P -#define PHYACC fwRu32(0x8414) - -extern void (*FWirq)(); - -#endif diff --git a/plugins/FWnull/License.txt b/plugins/FWnull/License.txt deleted file mode 100644 index 1bcc46f53a..0000000000 --- a/plugins/FWnull/License.txt +++ /dev/null @@ -1,342 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. - - diff --git a/plugins/FWnull/ReadMe.txt b/plugins/FWnull/ReadMe.txt deleted file mode 100644 index af19ffa308..0000000000 --- a/plugins/FWnull/ReadMe.txt +++ /dev/null @@ -1,34 +0,0 @@ -FireWire v0.3 -------------- - - This is an extension to use with play station2 emulators - as PCSX2 (only one right now). - The plugin is free open source code. - -Usage: ------ - Place the file "FireWirePlugin.so" (linux) or "FireWirePlugin.dll" (win32) - at the Plugin directory of the Emulator to use it. - -Changes: -------- - v0.4: -*Added vsnet2005 beta1 support. 64bit dll should work okay (not tested yet!) - - v0.3: - *up to specs 0.5.5 - *added logging option and ini saving - - v0.2: - *new specs - v0.1: - * First Release - * Tested with Pcsx2 - -Authors: -------- - shadow - linuzappz - - - diff --git a/plugins/FWnull/Windows/FWnull.vcxproj b/plugins/FWnull/Windows/FWnull.vcxproj deleted file mode 100644 index 6c013afdd0..0000000000 --- a/plugins/FWnull/Windows/FWnull.vcxproj +++ /dev/null @@ -1,69 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - - {3D0EB14D-32F3-4D82-9C6D-B806ADBB859C} - - - - DynamicLibrary - $(DefaultPlatformToolset) - MultiByte - true - true - false - - - - - - - - - - - - - - AllRules.ruleset - - - - FireWireNull.def - MachineX86 - MachineX64 - - - - - - - - - - - - - - - - - diff --git a/plugins/FWnull/Windows/FWnull.vcxproj.filters b/plugins/FWnull/Windows/FWnull.vcxproj.filters deleted file mode 100644 index 2586a12ea4..0000000000 --- a/plugins/FWnull/Windows/FWnull.vcxproj.filters +++ /dev/null @@ -1,37 +0,0 @@ - - - - - {9f8ea85e-c353-4a00-870a-573daa04f2d4} - cpp;c;cxx;def;odl;idl;hpj;bat;asm - - - {5090ab82-143a-459e-b92d-5bdb2847f6bc} - h;hpp;hxx;hm;inl;inc - - - {df8b3ed3-4204-43dd-9ddb-17f06e45b699} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe - - - - - Source Files - - - - - Header Files - - - - - Resource Files - - - - - Resource Files - - - \ No newline at end of file diff --git a/plugins/FWnull/Windows/FireWireNull.def b/plugins/FWnull/Windows/FireWireNull.def deleted file mode 100644 index cf5cc7f107..0000000000 --- a/plugins/FWnull/Windows/FireWireNull.def +++ /dev/null @@ -1,21 +0,0 @@ -; FireWire.def : Declares the module parameters for the DLL. - -;LIBRARY "FWnull" - -EXPORTS - ; Explicit exports can go here - PS2EgetLibType @2 - PS2EgetLibName @3 - PS2EgetLibVersion2 @4 - FWinit @5 - FWshutdown @6 - FWopen @7 - FWclose @8 - FWread32 @11 - FWwrite32 @14 - FWirqCallback @15 - FWconfigure @17 - FWtest @18 - - FWsetSettingsDir - FWsetLogDir diff --git a/plugins/FWnull/Windows/ProjectRootDir.props b/plugins/FWnull/Windows/ProjectRootDir.props deleted file mode 100644 index 423e907385..0000000000 --- a/plugins/FWnull/Windows/ProjectRootDir.props +++ /dev/null @@ -1,15 +0,0 @@ - - - - $(ProjectRootDir)\..\.. - $(SvnRootDir)\common - - - <_ProjectFileVersion>10.0.30128.1 - - - - $(SvnRootDir) - - - \ No newline at end of file