pcsx2/common/include/Utilities
avihal@gmail.com 9c234de3ec Portable mode: now allows fully custom folders, but still allows relocation of pcsx2 folder without breaking (install mode unmodified).
Details:
The major differences between install and portable modes should now be:
1. Portable mode doesn't use the registry at all.
2. Portable mode uses the folders inside pcsx2 folder as default (install mode has some default at "my documents").
3. Portable mode tries to save relative paths at the ini file where possible*.

Specifically, portable mode now allows to select custom folders for plugins, bios, etc via the standard UI, which allows using several portable pcsx2 folder sharing the same resources (bios, iso, memcards, etc).

* Relative paths where possible = the following sequence (thanks to pseudonym for the brilliant idea):
1. If the file/folder is inside pcsx2 folder, it's saved as completely relative (to pcsx2.exe)
2. Else, if the file/folder is at the same drive as pcsx2.exe, it's saved as absolute path without the drive letter (e.g. /ISO/...)
3. Else, saved as absolute path, including the drive letter (for linux, without drive letter naturally).

This allows to create a removable drive with (one or more) pcsx2 folder on it, configure all the files/folders to point to the same drive (ISOs, save states, etc), and then take this drive, plug it into another computer (where it will be assigned with a different drive letter), and everything will continue working.

Please test it if you can. Bugs here can be inconvenient...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4507 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-29 17:41:11 +00:00
..
Assertions.h wxIsoFile branch: (needs linux testing) 2010-10-18 01:40:49 +00:00
CheckedStaticBox.h UI: 2010-06-24 20:30:36 +00:00
Console.h Introducing a mostly revamped Tracelog and Console log system. Various console log sources can now be toggled on/off on the fly, allowing end users to enable more verbose logging when they encounter problems. Both console and trace sources can be given automatic prefixing. 2010-08-06 05:46:09 +00:00
Dependencies.h wxSavestates branch: (partially sync'd with trunk**) 2010-12-14 07:28:05 +00:00
EventSource.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
EventSource.inl Refactoring: 2010-08-09 04:10:38 +00:00
Exceptions.h wxSavestates branch: (partially sync'd with trunk**) 2010-12-14 07:28:05 +00:00
FixedPointTypes.h wxIsoFile: And a couple more compiler fixes. 2010-10-18 16:09:00 +00:00
FixedPointTypes.inl Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
General.h * Added code to detect amount of physical ram installed on the host computer. 2010-11-23 21:32:52 +00:00
HashMap.h [copyright] 2010-07-08 16:40:44 +00:00
IniInterface.h Portable mode: now allows fully custom folders, but still allows relocation of pcsx2 folder without breaking (install mode unmodified). 2011-03-29 17:41:11 +00:00
MemcpyFast.h ReorderingMTGS: More tweaks to asm memcpy files (made code changes to Linux side, comment changes to Win32 side). 2010-07-17 15:03:45 +00:00
MemsetFast.inl Merge newHostVM branch. Feature overview: 2010-11-17 05:49:11 +00:00
PageFaultSource.h Minor cleanups for the new virtual memory alloc/reserve system: 2010-12-30 06:21:07 +00:00
Path.h Portable mode: now allows fully custom folders, but still allows relocation of pcsx2 folder without breaking (install mode unmodified). 2011-03-29 17:41:11 +00:00
PersistentThread.h Introducing a mostly revamped Tracelog and Console log system. Various console log sources can now be toggled on/off on the fly, allowing end users to enable more verbose logging when they encounter problems. Both console and trace sources can be given automatic prefixing. 2010-08-06 05:46:09 +00:00
RedtapeWindows.h Copyright 2010 : PCSX2 and plugins! (notable exception: didn't update copyright info in any Gabest plugins) 2010-05-03 14:08:02 +00:00
RwMutex.h Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
SafeArray.h wxSavestates: 2010-11-22 16:24:54 +00:00
SafeArray.inl newHostVM: More error/exception handling WIP stuff. 2010-10-29 02:49:01 +00:00
ScopedAlloc.h wxSavestates: savestates now include game serial code, and a ps2z extension (which can be linked to any zip-supporting tool, like winzip or 7zip). This branch is ready for extensive testing. :) 2010-12-14 15:09:22 +00:00
ScopedPtr.h Major Settings Changes! 2011-01-10 17:48:25 +00:00
ScopedPtrMT.h * Documented some of the event/threading proxy class and its underlying event queue. 2010-12-27 15:25:39 +00:00
StringHelpers.h * Solution file updates for zzogl (adds needed dependencies) 2010-12-28 04:14:47 +00:00
Threading.h Trace Logging: 2010-08-16 15:01:13 +00:00
ThreadingDialogs.h Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
TlsVariable.inl Introducing a mostly revamped Tracelog and Console log system. Various console log sources can now be toggled on/off on the fly, allowing end users to enable more verbose logging when they encounter problems. Both console and trace sources can be given automatic prefixing. 2010-08-06 05:46:09 +00:00
TraceLog.h Trace Logging: 2010-08-16 15:01:13 +00:00
lnx_memzero.h Refactoring: 2010-08-09 04:10:38 +00:00
pxCheckBox.h UI: 2010-06-18 02:44:27 +00:00
pxEvents.h Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
pxForwardDefs.h Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
pxRadioPanel.h UI: Switched from the old 'native' text labels to a new custom draw text label that should (hopefully!) be a lot better about positioning and wrapping text, and fitting to windows and what-not. Also gets rid of my nasty "ideal width" hack I originally used to fix-size some of the dialogs. 2010-06-04 08:00:19 +00:00
pxStaticText.h UI / Cmdline: 2010-06-21 04:04:32 +00:00
pxStreams.h Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself. 2011-03-25 05:06:49 +00:00
win_memzero.h Refactoring: 2010-08-09 04:10:38 +00:00
wxAppWithHelpers.h Trace Logging: 2010-08-16 15:01:13 +00:00
wxBaseTools.h Converted the GameDB to use wxWidgets classes. 2010-06-09 17:37:11 +00:00
wxGuiTools.h Minor i18n-related bugfixes. 2010-12-12 07:43:21 +00:00