Commit Graph

2886 Commits

Author SHA1 Message Date
refraction efe1e665ee Minor EE Cache emulation changes (No fixes)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4609 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-30 22:19:20 +00:00
refraction e615fe1c08 Added GameFix for Transformers and Test Drive Unlimited to solve the slow booting issue, Test Drive is now playable at least :P. Also tidied up a small bit of VIF DIRECT/HL, no functional changes made.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4608 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-30 18:30:31 +00:00
gregory.hainaut@gmail.com 033ecabcf2 zerospu2: fix an issue with gcc 4-6 (note some gcc 4.6 optimization breaks pcsx2...)
i18n: allow to translate a part of system default for the language selection.

Rational: In case system default is incorrect, we will still get an english part (with the unknow-language translation)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4603 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-29 21:02:31 +00:00
avihal@gmail.com 39c8fe121a CDVD plugin submenu disable: code cleanup to allow easier future modifications.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4580 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-16 20:36:53 +00:00
avihal@gmail.com 8858a5c57c CDVD plugin submenu: now only enabled when "Plugin" is selected.
Hopefully allow less initial confusion (the CDVD plugin is not used by default and it will mostly stay that way, so disabled unless chosen).
Note: the Iso selector sub menu is always enabled because even when the Plugin is selected as source, selecting an ISO via the selector switches to the internal Iso reader.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4578 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-16 09:35:42 +00:00
ramapcsx2 cfe376491e Patch by Firnis:
He wrote his own, faster replacement for std::vector and used it for the EE and IOP block managers.
This cuts down compiling time for some blocks from nearly 1 second to ~ 0.1 - 0.3 seconds.
With this shorter compiling time, audio and framerate should be more stable when changing levels in a game, for example.

Thanks a bunch, Firnis ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4572 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-13 16:32:47 +00:00
gregory.hainaut@gmail.com 0f3f204ba7 pcsx2 gui: support revision number in various place with cmake linux build
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4571 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-12 16:24:41 +00:00
refraction 80e540c70b Partially removed partialqwc stuff from SPR. As the DMA ignore is no a gamefix this isn't required any more, also it broke Sega Superstar Tennis ;p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4564 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-09 20:21:09 +00:00
ramapcsx2 1bfd8cfd0c Small console message change.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4563 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-09 14:53:33 +00:00
gregory.hainaut@gmail.com b51ac8d779 gsdx: add also a check of m_windows to play it self.
pcsx2: add a define to print the revision number with cmake


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4560 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-09 08:39:54 +00:00
ramapcsx2 5d200881a4 Small console printout consistency change. All the GSWindow prints look like this :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4556 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-09 01:40:23 +00:00
ramapcsx2 a9640366ab Fixing a few problems with the docs. /trunk commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4554 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-08 22:33:07 +00:00
ramapcsx2 56bb1c50b4 More changes to the docs. /trunk commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4551 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-07 21:03:32 +00:00
refraction 5f7d5d5acf Forgot to check the trunk
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4550 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-07 20:22:31 +00:00
ramapcsx2 4e2df1039a Docs update also for /trunk.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4547 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-07 18:13:54 +00:00
ramapcsx2 c7adfc0199 Adding Shadow Lady (Lana) to the list of contributors. Was a bit overdue, sorry :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4543 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-07 13:34:00 +00:00
avihal@gmail.com 490b5f6a7f GS Window: image move: changing KB shortcuts to CTRL+ALT+ normal arrows (and + NUMPAD-/ for reset).
Using ctrl + numpad 2/4/6/8/5 seem to not work on all systems. This might be a wxWidgets issue. Please read the commit comments for r4537 for some details.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4538 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-06 19:50:38 +00:00
avihal@gmail.com b4d0eddc7c GS window: allow full manual image control (had zoom already, now adding move, stretch).
The following controls are KB only (no GUI) and they don't save nor load from the ini (thus always reset when starting pcsx2).
New KB commands:
Move image: CTRL + NUMPAD 8/2/4/6 for up/down/left/right. CTRL + NUMPAD 5 resets to center.
Vertical stretch: CTRL+ALT+ NUMPAD PLUS/MINUS/* for stretch/shrink/reset.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4537 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-06 15:54:15 +00:00
avihal@gmail.com e307c7d9c5 Forgot Zoom tooltip update. Mehh...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4536 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-06 09:30:39 +00:00
avihal@gmail.com c38c5ce72a GS Window: Zoom Keyboard control: Now works with CTRL/CMD (leaves the numpad keys available for the pad plugin).
Zoom In: CTRL + NUMPAD-PLUS
Zoom Out: CTRL + NUMPAD-MINUS
Toggle 100%/Auto-zoom: CTRL + NUMPAD-*

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4534 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-06 08:03:13 +00:00
avihal@gmail.com 921c2352ef GS Window: Add proper zoom control and get rid of the "automatic" 4-pixel zoom in stretch-mode.
Zoom = 100: Exact fit to window without cropping anything.
Zoom above/below 100: Zoom In/Out.
Zoom = 0: Automatic zoom in until the black-bars are gone.
Keyboard: NUMPAD-PLUS: Zoom-In, NUMPAD-MINUS: Zoom-Out, NUMPAD-*: Toggle 100/0

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4531 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-05 15:28:49 +00:00
avihal@gmail.com 20e6dc39e1 GS window: F6 now properly cycles aspect ratios (previously was internal to GSdx only, now affects actual CSX2's config)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4530 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-05 11:30:07 +00:00
refraction 15f7b2b6d8 Slightly safer way of handling filling writes in the Dynarec, disabled a debug message i don't think we need any more.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4528 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-02 21:18:14 +00:00
refraction 44a1d17c9d Small optimization for partial unpacks, won't make a noticable difference, but every little helps :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4527 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-02 20:16:00 +00:00
refraction ec41e24228 Small unpack bug with interpreted/partial transfers in fill mode (probably REALLY uncommon).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4526 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-02 19:23:20 +00:00
avihal@gmail.com b65a70033d Resent ISO list menu: Items order reversed such the the most recent ones appear at the top.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4524 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-02 08:09:36 +00:00
avihal@gmail.com f76e0e1d0d Recent ISO list menu: Fixed: if the number of ISOs grow beyond RecentIsoCount, the menu gets b0rked (broken behavior). Strangely, this bug was there since r3878 or earlier...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4523 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-02 07:26:12 +00:00
refraction d30a2dbd10 VIF: Fix for Donald Duck Quack Attack - vifcmd errors caused by VIF not stopping on reset. It would be nice to find out the actually 100% behaviour of FBRST, information is limited.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4520 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-01 14:58:23 +00:00
refraction 55f79ec54e VIF: Fix for Downhill Domination introduced in r3762.
For future reference:
Clearing registers on VIF reset = bad! That operation is designed to stop VIF Processing its current data, nothing more.
More importantly it causes me a great headache as it took me 2 days to find this >.<

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4519 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-01 13:44:01 +00:00
cottonvibes 0fef0e4e6c microVU - more cleanups
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4515 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-31 05:31:33 +00:00
cottonvibes 69896ce034 microVU cleanups (mostly changing pointers to references)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4514 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-31 03:08:48 +00:00
ramapcsx2 6dcccff206 Added a new gamefix to make ignoring of DMAC writes when it's busy optional.
This should be mandatory but (most probably) timing issues make this break more games than it fixes.
Notable exception: Mana Khemia 1 (going "off campus"), so I added it to the auto gamefix database (Only NTSC so far, anyone got the PAL CRCs?).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4512 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-30 10:54:43 +00:00
avihal@gmail.com fc9bc494ad Game fixes panel: hopefully clearer text.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4511 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-30 08:26:30 +00:00
gregory.hainaut@gmail.com 738346bc8b i18n: add some missing strings. Remove SetDiagMsg one.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4509 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-29 18:21:54 +00:00
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
sudonim1 97ce1783eb Suppress expected error during first time wizard when a plugin does not implement optional API functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4506 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-29 16:13:08 +00:00
ramapcsx2 b5138f64eb Minor fix for managed Vsync.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4499 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-27 22:16:48 +00:00
avihal@gmail.com 205c7c1782 First time wizard (both portable and install modes):
1. Create inis and bios folder before then can be accessed (e.g. configure plugins, open the bios folder via "open in explorer").
2. Small fix for the "open in explorer" error dialog if a folder doesn't exist (path text was sometimes cut off)
3. Default base directory (AppRoot() - used for plugins/themes/langs) is now the pcsx2.exe folder and not CWD (probably only affects developers, but still nicer).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4496 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-27 04:06:33 +00:00
gregory.hainaut@gmail.com c2266c3edc linux compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4492 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-26 12:28:12 +00:00
avihal@gmail.com 42fe45e66a Recent Iso list: 1. Iso that don't exist are grayed out at the menu. 2. in portable mode, Iso files are saved as relative if they're inside pcsx2 folder, or in parallel to it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4491 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-26 07:02:46 +00:00
gregory.hainaut@gmail.com 95e2ed9f21 linux compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4490 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 18:10:09 +00:00
avihal@gmail.com 981f67ee01 Portable mode: standard install can now be converted to portable.
Note: All files outside of pcsx2.exe folder (e.g. snapshots, memcards, bios, saved states, etc at "my documents" folder) are NOT copied automatically to the pcsx2 relative folders. So, if converting from standard install to portable and you want to keep those files, you have to copy them manually.

Bottom line: if portable mode is preferred/required, it's best to start in portable. This way no files are ever written outside of pcsx2.exe main folder (at least, that's how it should work).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4489 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 07:21:59 +00:00
sudonim1 22c1b30ed6 Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself.
Please set up auto-props in your svn client.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4488 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 05:06:49 +00:00
avihal@gmail.com 7f9f6590b7 1. Portable mode: Fixed (for real!).
2. Game database: now always loads from pcsx2 folder (was using cwd)

details:
Portable mode: folders and file names at the ini now always saved relative in portable mode -> pcsx2 folder can be moved around, renamed, etc, and everything keeps running as normal.

Note: last elf/iso folder paths are kept absolute at the ini, and so are the last/recent iso file names. This is to allow moving pcsx2 folder around without needing to select them again. The case of putting the ISO files inside the pcsx2 folder and expecting it to work when moving the folder around is still not solved for now (but the iso can always be selected manually). Maybe will get fixed soon.

Reminder: to run in portable mode, create an empty file named "portable.ini" at the pcsx2.exe folder.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4485 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 04:47:21 +00:00
sudonim1 e26693f5d4 Changed plugin API back to system locale for paths since only two plugins (lilypad and spu2-x) were specifically expecting UTF-8 and handling it correctly and breaking them is easier than fixing all the others for now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4483 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 00:45:43 +00:00
ramapcsx2 d4f95b004b i18n:
Fallbacks for all WX-listed German locales.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4482 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-24 10:19:22 +00:00
ramapcsx2 a48ff8a9ef Whops :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4481 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-24 04:38:28 +00:00
ramapcsx2 e5a564ed10 First round of installer fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4480 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-24 04:34:46 +00:00
ramapcsx2 d08a70252b Renamed "Enable Patches" into "Automatic Gamefixes" to make it very clear what the option does.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4478 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-23 21:27:37 +00:00
avihal@gmail.com c44e5752f6 1. presets: mVU flag hack moved from preset #3 to preset #2 (preset #3 now only changes ee cycle rate to 1 click).
2. Selecting ISO from the list when current source is plugin: menu now updates properly (previously: would stay at plugin).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4477 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-23 20:01:56 +00:00
ramapcsx2 6b70c34470 Changed the gamefixes panel text to include a note about being automatically applied by default.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4476 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-23 19:34:43 +00:00
ramapcsx2 6a008eeaaf Removed the mVU "MinMax" speedhack. It wasn't very useful and broke a few games.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4475 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-23 19:19:45 +00:00
gregory.hainaut@gmail.com 2395a67e66 i18n: Add new fallback for language
swedish fi -> swedish
portuguese -> brazilian portuguese


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4472 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-22 19:53:47 +00:00
ramapcsx2 3f6244894c Various console log changes. Made it a bit more colorful, too :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4470 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-22 01:38:13 +00:00
ramapcsx2 5b31bec3b6 Minor change:
Removed unused items from the menus (patches and some debug items). Those will be implemented later.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4469 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-22 00:24:51 +00:00
ramapcsx2 7271ab1bdf Adding avih to the list of coders and a special mention for Jake :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4468 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-21 23:25:02 +00:00
avihal@gmail.com ec19e9738e MCD manager: console print fix when creating a card without assigning it to a slot.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4467 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-21 22:48:20 +00:00
avihal@gmail.com 530f40091e Save-state: Shift-F3 now loads the backup save (if exists)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4464 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-21 07:38:47 +00:00
avihal@gmail.com 15efbf2dd3 Patch by pseudonim: Disable the state load/save menus when no active VM.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4463 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-20 12:32:54 +00:00
avihal@gmail.com b72971408c Save-state: gracefully handle state load/save when the VM isn't at a valid state (was crashing on load state before running anything if a bios savestate existed)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4462 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-20 11:19:00 +00:00
avihal@gmail.com bebea985ce Save-state: 1. Added load from backup. 2. Removed save/load "Other..." (not connected to anything anyway)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4461 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-20 08:01:16 +00:00
avihal@gmail.com eccbf165b9 MCD manager: enable the "create new card" button/context menu also when no item is selected and for the [-- Unused cards --] item.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4460 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-20 05:08:23 +00:00
avihal@gmail.com 2628a03cdd MCD manager: should be final.
1. Restored multitap 1/2 checkboxes to the main menu.
2. Console messages now appear only on apply and only for active cards.
3. Shorter confirmation message for "duplicate card".

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4458 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-19 20:55:55 +00:00
arcum42 13e2213f95 Fix a crash when creating memory cards in Linux. Change the warnings when compiling GSdx in Linux to be a little less annoying.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4456 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-19 06:44:22 +00:00
avihal@gmail.com 441ded0788 MCD manager: remove port-status and related button/context-menu.
- Following rama's suggestion, and because cards can now be easily ejected/inserted, there's no more need for enabling/disabling the port. It also makes it easier to use (less configuration), and resembles the real PS2 counterpart more closely (a card can either be used or not used and that's it).
- For consistency, the MCD manager now automatically ejects cards which are "disabled" (Note: multitap cards can still be internally enabled when MT is disabled, but they not used because MT is disabled).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4453 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-18 17:34:08 +00:00
ramapcsx2 a698e2ff5d Forced MTGS to obey the max queued frames limit even when the frame limiter is disabled.
Fixes games becoming unresponsive to input commands in software rendering.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4452 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-18 16:52:56 +00:00
avihal@gmail.com c41d6a5c7e MCD manager:
1. A card at a can be dragged from a port and dropped at any empty area of the list to eject it (previously: only to an existing list line).
2. "Card:" label should fit to text size also on translation (possibly a wxWidgets bug, seem to be bypassed now).
TODO: remove the many console messages when it's considered stable.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4450 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-18 05:58:11 +00:00
avihal@gmail.com 269f030778 Memory card manager: should be functionally complete. Feedback will be appreciated.
Major new: insert-from/remove-to file system files.
New: context menu and buttons for the new functionality (including copy which was only available via drag and drop).
Mod: slight text changes (finally should be ready for translations).
Mod: slight cleanup of functionality:
- 'Copy' changed to 'Duplicate', and can be invoked on any card, or via drag and drop to an empty port.
- drag and drop of cards: from a port to the filesystem = eject card (not swap).
- drag and drop of cards: from the filesystem to a port = insert the card to the port.

While it's functionally complete (I hope), I'm not 100% happy with the GUI. Better GUI would have been 2 separate lists (ps2 ports, unused cards) and cards can be moved between the lists. However, creating another list control, laying it out and handling the interactions between the two lists would have been a headache (even more than it already was). The major case which is hampered by the combined list is when the user has many cards on the filesystem, and he wants to insert it to a port, but the ports are way up the list so a scroll is required. This case is handled by the "Insert card" button which is available for any card on the filesystem (prompts the user to select a target port).

Let me know what you think.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4447 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-17 18:41:59 +00:00
ramapcsx2 d586454111 Stopped the TLB miss log spam in release builds. Freezing gui's aren't so nice :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4445 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-17 15:42:49 +00:00
refraction 288176e23d *cough* you didn't see that
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4439 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-15 20:04:28 +00:00
refraction edaf9beba8 FF12 Ingame menu fix - MFIFO games generally compare VIF TADR to SPR MADR to find out when it's finished, copying part packets from SPR can be a hazard in this scenario, so we're making sure now that the whole packet has gone over before MFIFO VIF/GIF resumes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4438 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-15 20:03:03 +00:00
refraction 07a5e43492 Fix for Ratchet & Clank TLB Misses, turns out the whole hammering DMAs to see when things finish are more cycle tight than i imagined, now we have no delay for the last QW
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4437 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-15 16:54:13 +00:00
avihal@gmail.com 2bc2464ca8 MCD auto-eject (loadstate, mcd manager): Added maximum timeout.
- Before: The card was reinserted after it was accessed X times (X is 128).
- After: We add another timeout limit: if card was accessed at least Y times and since then Z ms have elapsed, reinsert.
- Previous limit still stays.
Currently, X stays 128, Y is set to 2 times, and Z is set to 1800ms (if a game polls the card once a sec, it will see it reinserted on the 5th access = 4s after the initial access).

Y and Z might need some fine tunning and testing with more games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4435 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-15 03:02:16 +00:00
ramapcsx2 8bc8c768f4 Changing some default layout spacings for the memcard manager.
Prolly still not final :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4434 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-15 00:10:30 +00:00
avihal@gmail.com c75334bc11 MCD manager: refinements and improvements:
1. automatic apply of create/delete/copy/rename without the annoying "do this and that" dialogs.
2. auto-eject/insert mcd after mcd changes (useful especially when replacing one enabled-and-used card with another).
3. double-click/enter a line at the list invokes rename/create
4. only disabled ports are gray (easier to look at - previously: also empty)
5. when creating a new card, enter (at the name selection box) is enough to continue
6. list now stretched properly with the page.
7. Automatic creation of mcd file when opening the manager and a card is enabled but doesn't exist (easier to manage, would've been created on boot anyway).
8. as a result, now properly handles initial post-install/setup state.
9. auto eject/insert of mcd now displays at the console (also for loadstate, if applicable)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4433 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-14 21:20:23 +00:00
ramapcsx2 b301b9a7e3 Changed "Suspend" to "Pause", as per request.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4432 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-14 20:00:41 +00:00
gregory.hainaut@gmail.com 5e9930a9dc i18n: news string for translators.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4427 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-13 10:33:19 +00:00
arcum42 2d5ade6016 Linux compilation fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4425 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 23:19:49 +00:00
avihal@gmail.com 2471c483bc Memory cards manager: allow custom file names (create/rename/copy), still without assigning arbitrary MCD files at the folder. TODO: 1. allow assigning arbitrary files at the folder. 2. GUI cleanups (text alignment on some messages, MCD list vertical stretch..) 3. code cleanups (remove all commented/unused code).
This is a relatively big change of the MCD manager, so I'd appreciate feedback (functionality, translations, bugs, etc).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4423 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 22:58:28 +00:00
sudonim1 47b3b57bee GUI: added an event for panels to use to inform the configuration dialog that the configuration has changed by means other than the user directly editing something.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4420 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 22:17:53 +00:00
cottonvibes 8f6151945d microVU: fix gcc compilation (probably)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4417 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 20:10:28 +00:00
cottonvibes c4d8356a1b microVU: more cleanups (mostly just change pointers to references)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4415 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 08:02:21 +00:00
arcum42 6c8dc7bcb6 Add an extern for the Linux side of things...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4413 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 07:19:25 +00:00
cottonvibes ed35dcac17 microVU: Minor changes/cleanups
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4412 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-12 05:41:33 +00:00
avihal@gmail.com b332a254f4 Memory cards manager: bugfixes (all of them when multitap 1 is disabled) + better internal terminology:
Terminology:
Port (used only for presentation): actual PS2 port: 1-based index  (1 or 2 or multitap X port Y, whrere X is 1/2 and Y is 1/2/3/4 )
list-view-index: the running index (0-based) on the MCD viewable list (first always 0, last is always <num-items-on-the-list>-1).
Slot: pcsx2 internal slot representation. the slots are always fixed as follows:
slot 0: port 1 (or multitap 1 port 1 if multitap 1 is enabled)
slot 1: port 2 (or multitap 2 port 1 if multitap 2 is enabled)
slots 2,3,4: multitap 1: remaining 3 ports
slots 5,6,7: multitap 2: remaining 3 ports

The terms view-index and slot were used interchangeably (and always called 'slot'), and this was causing many bugs when multitap 1 is disabled (because on that specific case the view index doesn't align with the slot - because the multitap 1 items are not on the list). It should now be easier to follow the code and further modify it.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4410 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-10 21:41:50 +00:00
ramapcsx2 f1b8b05043 Moved the "Print CDVD info" menu item to console logs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4409 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-10 16:57:14 +00:00
refraction 5cd321e6ff Fix for Justice League Heroes not going ingame.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4408 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-10 16:35:01 +00:00
avihal@gmail.com c1e844b7f7 Memory card manager: fixes and improvements:
1. Bugfix: when multitap 1 was disabled, multitap 2 slots were not showing at all on dialog load (were showing only after disable+enable of MT2).
2. Bugfix: when multitap 1 was disabled and refreshing the list, multitap 2 slots were showing (the disabled) multitap 1 slots,
3. Improvement: the "Slot" column title is renamed to "PS2 Location", and now contains a proper name instead of an unuseful number.
4. MCD manager is now resizable (though the mcd list only gets resized horizontally for now, but I did make it slightly higher to allow the maximum 8 slots without vertical scroll - on my system)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4406 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-08 03:44:15 +00:00
avihal@gmail.com 92977728c1 GUI cleanups
1. "backup save-states" removed from the MCD manager and added to the system menu (checkbox) just below "Save State".
2. removed multitap 1/2 from the config menu (now only available on MCD manager - this setting doesn't affect pads anyway).
3. Following rama's advice, vsync and auto-vsync are now both forced to off for all presets (and grayed-out when using presets).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4405 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-08 03:37:44 +00:00
cottonvibes b2319c7636 microVU: Fix constant recompilation problem in Street Fighter EX3
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4403 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 21:07:45 +00:00
cottonvibes 7893daa1a4 microVU: Merge some changes I did in the ReorderingMTGS branch with trunk.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4402 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 20:06:49 +00:00
avihal@gmail.com 209112ba3d 1. Removed Exclusive-mode checkbox from GS-window-panel (wasn't working anyway).
2. Removed vsync from presets.

details:
1. the exclusive-full-screen checkbox isn't connected to anything, AppConfig doesn't store this value, and the (GSsetExclusive) API is never used from PCSX2 (but seem to be supported by GSdx).
2. Now both vsync and auto-vsync are excluded from the presets (both never grayed out and never affected by the presets)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4401 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 19:41:40 +00:00
gregory.hainaut@gmail.com 5bf6aaf339 i18n: Use a big in D in the code too... Probably impact only linux user
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4400 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 19:36:34 +00:00
avihal@gmail.com 9f8f25fef2 Menu: recent-ISO-list (dynamic list with automatic menu IDs) was clashing with other fixed menu IDs (specifically, the first item on the recent ISOs list got an "automatic" id of 100 (decimal) which happened to clash with multitap 2 menu item. Result: when clicking multitap2 menu item, the first iso gets selected instead - multitap2 menu was b0rked).
Solution: reserve 100 IDs for the recent ISO list and use them.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4396 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 16:58:24 +00:00
cottonvibes bfc4ab8e7d microVU: minor changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4395 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-07 02:35:57 +00:00
gregory.hainaut@gmail.com cd615ed906 pcsx2 gui: (will love review and big test)
* Really save the reg-setting (ie the plugigns folder path)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4392 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-05 21:20:52 +00:00
gregory.hainaut@gmail.com 7e62a13131 pcsx2 gui:
* Fix log folder path selection.
* half fix the plugin folder path selection. Ie the use default selection.
  However the register setting must be saved after the path updates.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4391 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-05 19:02:57 +00:00
gregory.hainaut@gmail.com 1d25812100 i18n:forgot one string in the aboutbox
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4390 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-05 16:58:24 +00:00
gregory.hainaut@gmail.com 5c0a0f978e i18n:
* allow to translate the about box
* Fix a crash when wx did not support the default locale


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4389 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-05 11:50:11 +00:00
ramapcsx2 c16cd99dd4 A few fixes for some situations I didn't consider.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4387 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-03 19:20:38 +00:00
ramapcsx2 b824ec5610 New feature!
There's a new option in the GS window configuration that allows a "managed Vsync".
This new option will dynamically toggle Vsync based on the current frame rate.
If the game runs at full speed, it turns Vsync on. If it drops below full speed, Vsync is turned off.

This effectively allows Vsync to be enabled in most games while avoiding the huge performance penalty
it usually causes whenever the FPS drop below full speed.

Note that the feature currently only works nicely with GSdx DX10/11 HW rendering.
The other renderers and plugins will either ignore the Vsync switches or they'll show an
annoying black frame on each switch.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4386 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-03 18:32:29 +00:00
gregory.hainaut@gmail.com 525175ba70 i18n: add a missing default case statement ...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4379 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-27 15:02:21 +00:00
gregory.hainaut@gmail.com 5d424623d7 i18n:
* Add a language detection fallback. The purpose is to use a nearly identical language when the requested one is not translated.
Rational: it would reduce translation burden and avoid the cloning of po files which will be difficult to maintain properly.
* Delete previous cloning of some chineses locales


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4377 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-27 09:07:23 +00:00
ramapcsx2 4615daf357 Various translations related fixes and removed another log.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4374 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 21:55:02 +00:00
ramapcsx2 2e04d9c6af - Fixed an assert in the first time wizard and added a note about the portable.ini
- Removed some more Console messages
- Changed the SIF struct "free" function to "sif_free" to avoid confusing the debug malloc libs

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4372 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 19:02:25 +00:00
ramapcsx2 c47e1ed6e9 Couple clarifications and fixed warnings.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4367 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 03:20:58 +00:00
ramapcsx2 697f78afe6 Made 2 spamming logs go to DbgCon and fixed a few compiler warnings.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4364 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 01:18:56 +00:00
ramapcsx2 3d20bb48a8 Removed an old hack for resumes from suspended states that caused GS plugins to open twice.
This should help with occasional crashes when pressing F9 or when configuring the GS plugin while emulation runs. (Thanks for helping with this, Jake :) )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4363 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-26 00:41:31 +00:00
ramapcsx2 c86fff7760 Memcard Manager:
- Suspend emulation when opening the manager. Avoids all kinds of file access permission trouble.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4362 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-25 20:20:04 +00:00
ramapcsx2 d1371e85f6 Consistency update for r4356:
Clear all settings now deletes the RunWizard entry in both install modes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4361 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-25 19:51:11 +00:00
gregory.hainaut@gmail.com 2223b97fa1 pcsx2 i18n:
* Translate more stuff in various place
* Fix issue with pot generation on linux namely empty string & quote in asm comment
* add missing key on generate_pot script. Note: it also updates the po files with latest pot modification
* regenerate new pot & po files.

Translator note: previous Tertiary pot miss half of the strings.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4359 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-25 18:16:53 +00:00
ramapcsx2 253cd9becf Changed how portable install handles "Clear all settings" so it doesn't remove the portable.ini anymore.
Instead it resets the flag for running the first time wizard.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4356 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-24 21:50:17 +00:00
refraction c368a6a422 Updated the FFX Video Fix, should work again now. Added DMA End log messages to DMA logging. Hopefully one day someone will reverse engineer the FFX video code so we can see if we are really doing something really wrong or if the code is just dire >.<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4354 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-24 11:07:13 +00:00
ramapcsx2 6af6a424ba Exclude the EE timing hack from presets as it breaks text in the BIOS (interesting!) and is reported to cause a few slowdowns even.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4353 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-24 06:34:08 +00:00
ramapcsx2 ba4bc4529d Memcard Memcard Manager:
- Cosmetic fix to some messages. Don't start the slot numbering with 0 but with 1.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4352 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-24 06:24:16 +00:00
ramapcsx2 c619e81efd Memcard Manager:
- Fixed drag and drop not updating the "Enabled" flag. This meant some changes to the oop design choice (removal of some const qualifiers). Hope you don't mind, Jake :p
- Added abort query for overwriting memcards when in copy mode (drag and drop with ctrl pressed on Windows).
- Changed the sizing a bit so the table fits into the dialog here.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4351 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-24 05:45:53 +00:00
ramapcsx2 40e719ef3a Patch to the memcard manager from ValDanX.
It used to overwrite formatted memory cards before this, oops :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4348 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-23 23:38:04 +00:00
refraction b2cf9d026f MFIFO fixed Guitar Hero Videos, another case of developers assuming SPR1 will be finished before SPR0 gets to the data being written >.<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4343 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-22 22:19:21 +00:00
refraction f205fa09af Corrected a couple of English descrepancies as pointed out in Issue 952. Noting SuperVU is correct. sVU doesn't mean it should be superVU, it just looks nicer as sVU than SVU, especially when coding.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4340 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-22 19:24:17 +00:00
ramapcsx2 8c0dea6a89 GUI:
- Fix a duplicated "Open in Explorer" button in standard install mode.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4333 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-21 21:48:35 +00:00
ramapcsx2 0b3a1eee8c This one wasn't needed afteral :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4314 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-18 14:23:17 +00:00
refraction 85899961be Path3 Masking: Fix for Resident Evil Dead Aim (also fixed the occasional glitch i mentioned in my last Path3 commit)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4310 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-17 22:06:10 +00:00
refraction dde94adec3 Cache Emulation: Updated cache emulation for new VTLB, Dead or Alive 2 (Japanese Version only) now playable. You can enable this under the Recompiler options by ticking the "Enable EE Cache" box, however it will only work with the EE in Interpreter mode. Also fixed some cache bugs from the old implementation.
Note: Once DoA2 is ingame (start of fight), you can switch to the EE Rec until the fight is over with good speed! Hopefully one day someone will be brave enough to implement it on the rec side so you dont have to mess about :P

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4309 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-17 21:27:24 +00:00
ramapcsx2 dea0f37ca9 Minor changes:
- Added an EE roundmode patch entry for AR Tonelico 2 that fixes a fall through floor bug
- Disabled an exception in the ISO file reader. It now continues working when it runs into incomplete game rips (may need a review).
- Disabled 2 annoying logs :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4307 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-17 17:05:53 +00:00
avihal@gmail.com 428675b3d0 Patch from Jake.Stine: portable/registered install modes fixes:
-----------------------
(Jake:) here's my final patch for the pcsx2 inis and portable mode stuff:
it removes the ability to modify paths in portable mode (patchs are fixed to cwd anyway). Paths are still displayed for user convenience, read-only.
Also fixes some minor bugs and annoyances reported by users.
That should pretty well clean up most of what I broke when I rused the portable install feature in a few weeks ago.
May want to review it first, I still haven't had much time or inclination to do my usual amount of code quality control.
-----------------------
(avih:) I tested it briefly and nothing seemed horribly broken (read: looks OK after little testing). Didn't do a proper code review though.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4297 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-13 21:00:36 +00:00
gabest11 1e6f280021 - more project cleanups and small code changes, also added the psx emu interface again
- someone should check __xgetbv under linux (avx/fma detection)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4295 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-12 21:45:16 +00:00
gregory.hainaut@gmail.com db948003df cmake: add a PACKAGE_MODE option to reduce the burden of packaging
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4289 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-12 10:37:44 +00:00
refraction e2d36a53a4 Small Hack to prevent games which check the QWC/MADR for the end of a DMA transfer (instead of the BUSY flag, why???) from start writing the next transfer before the previous had finished, causing errors in some cases after the DMA write while busy prevention was added (Street Racing Syndicate)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4282 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-02 10:10:04 +00:00
refraction ba765e1d22 Fixup Spiderman and Killzone from r4278
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4281 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-01 19:21:53 +00:00
refraction 3fb753d463 PATH3 Masking: Tweaks mainly for Path3Masking to fix TOCA3, This is the best Path3 masking is ever going to get, there might be an occasional glitch, but nothing major *fingers crossed*, Now have the ability to log Path3 stuff seperately which will help if problems do arise.
Cleaned up Gifdma a little, removing duplicate code. Disabled a few console writes we dont nee really.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4278 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-02-01 01:24:37 +00:00
avihal@gmail.com dd66d3ac5f Presets slider: added minimum size (there were complaints that it's barely visible in Linux).
If you happen to test it on linux, please let me know that the presets controls appear and are usable (checkbox, the word 'Preset', a slider that can be set to 6 positions, and a colored preset name)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4277 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-30 20:14:16 +00:00
gregory.hainaut@gmail.com 1205f01700 pcsx2 gui: do not call swap iso when isofile did not change.
Note: the code avoids some locking which turn into deadlock with GSOpen1 plugins.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4273 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-29 19:48:44 +00:00
gabest11 de3bc5ed24 added missing ConfigIcon_Appearance.h to the project file
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4271 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-28 16:40:09 +00:00
gabest11 4cd3e3a552 - fixed VS2010 project files and added configuration for AVX
- ConfigIcon_Appearance.h seems to be missing

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4270 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-28 08:21:05 +00:00
gregory.hainaut@gmail.com 006fb4e8cb pcsx2 gui: really postpone appsavesettings the first time
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4269 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-27 19:30:32 +00:00
refraction 7c7b565693 GIF MFIFO: Wrapping of MADR and TADR when transferring from the ring itself. Fixes Front Mission 4
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4268 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-26 22:46:26 +00:00
refraction 53ae262649 Fix for the Gungrave everybody wanted. Was a small programming error in GIF MFIFO, now fixed :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4267 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-26 22:12:25 +00:00
gregory.hainaut@gmail.com 1b3d135b18 pcsx2 gui: move around the "folders" panel. Remove an useless menu
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4266 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-26 12:02:30 +00:00
ramapcsx2 1b209e265b Reverting R4258.
Didn't know we actually *do* save information now in pcsx2_portable.ini :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4262 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-25 17:42:15 +00:00
ramapcsx2 8e7bfec5a2 And a small one last:
Changed a warning many users misunderstood as *Serious Problem* so it sounds (lots) less severe ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4260 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-24 19:28:49 +00:00
ramapcsx2 37e4a3a114 - Added missing FrameSkip gui code so skipping works now when you select it ;)
(Implementation is a bit clunky. Might change it later to look a bit nicer, might not.)
- Changed a few more dialog layouts a bit.
- Prevent changes to the PAL/NTSC "base frame rate" in release builds. 
(It's still possible to edit via pcsx2.ini or in devel/debug builds. And yeah, sorry Shadow Lady :p )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4259 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-24 19:19:16 +00:00
ramapcsx2 4647bdadd9 Portable-install change: Renamed the file PCSX2 looks for to know when it should run in portable mode.
The new file name is simply "portable_install" (no file extension).
Since it doesn't have an extension anymore it won't look like there's something to configure in it.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4258 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-24 18:57:06 +00:00
ramapcsx2 ac865c74ad Removed FTZ and DAZ options from the EE and VU panels.
PS2 behavior is the same / close to always on, so having them optional got pointless.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4257 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-24 18:39:33 +00:00
gregory.hainaut@gmail.com 002398a798 pcsx2 gui: restore the "folders" panel in Appearance menu
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4256 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-23 18:02:17 +00:00
avihal@gmail.com 9e485b447e Configuration dialog: The 'Apply' button is now disabled when the dialog is opened (was only being disabled after clicking it, rest of the dialogs were behaving ok).
- The automatic disabled Apply on open didn't work for SysConfigDialog because GSWindowPanel and VideoPanel were using SetValue for text boxes when they initialize, which triggered a "SomethingChanged" event (it captures, among others, the wxEVT_COMMAND_TEXT_UPDATED event which is also triggered by SetValue for text boxes). The solution, per wxWindows docs, is to use ChangeValue instead, which doesn't trigger this event.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4254 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-23 01:53:01 +00:00
gregory.hainaut@gmail.com f273f6c9b2 pcsx2: i18n: move Langs folder relatively to the application root instead of user data.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4253 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 21:59:58 +00:00
gregory.hainaut@gmail.com 06fbb06b30 i18n: Fix assertion crash of my previous commit. I recreate all logics for the folder option to avoid issue with jNO_DEFAULT
Note: now it will be easy to add a folder selection in the appearance panel (if still exists, it does not appear on my system)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4252 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 21:21:31 +00:00
avihal@gmail.com f19dc6f9fb Presets: Bugfix: 'Enable Patches' system-menu item is now properly aligned with presets behavior.
- previously: was always not-grayed-out even if presets were enabled, and would get applied on only next restart if set only by preset.
- Also, the presets system now nicely supports menu items too.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4251 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 20:40:04 +00:00
gregory.hainaut@gmail.com e70f374335 i18n: on linux seach l10n file also in Langs directory
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4248 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 14:50:05 +00:00
avihal@gmail.com b24ffa885c Patch from Jake: Make sure both ini files are created together when changing/setting settings folder. previously: vm.ini creation was skipped here.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4247 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 14:38:32 +00:00
avihal@gmail.com 45f08e7630 Presets: better semantics on arguments.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4246 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 13:50:26 +00:00
avihal@gmail.com fdd9dd807e Patch from Jake: On some scenarios EmuCore config would be saved to both vm.ini and ui.ini.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4242 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-22 04:19:07 +00:00
refraction abf620141b Added some extra "how much in VIF fifo" checks, removed a silly one, fixes Gungrave
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4241 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-21 16:24:54 +00:00
refraction e607fa4ee8 Fixed long standing bug with Syphon Filter - The Omega Strain involved in the handing of Filling Writes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4240 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-21 15:58:55 +00:00
refraction 07bb54acc4 Fix for GTC Africa Jerkyness (Placement issue), Fix for Aura for Laura demo causing graphical errors, was multiplying VU Cycles by BIAS twice, not really clever :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4239 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-21 15:17:29 +00:00
avihal@gmail.com 6d4fd157b8 Presets: Bug fixes, code cleanups, better documentation:
1. Bugfix: Some configs were affected by presets although they shouldn't have (e.g. MultitapEnabled and few more).
2. Bugfix: GUI: moving the presets slider was forcing unaffected values to last applied settings (would override settings changes which took place at the GUI while presets are enabled, e.g. most GSWindow options).
3. Better code resilience for future SysConfigDialog panels which might not be affected by presets.
4. Removed unused code and improved comments.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4237 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-20 00:32:34 +00:00
ramapcsx2 3d6ac25f3c Fix the apply button not graying out anymore like it used to.
This is a patch from Jake.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4236 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-18 00:58:54 +00:00
Jake.Stine fefe0fa0a1 i18n: moved a couple more messages to the pcsx2_tertiary pot file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4234 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-17 16:52:45 +00:00
Jake.Stine bbf417b0d7 i18n: simplified some message allocations for the new presets system.
DevNote: pxE's are meant for long/multiline messages only, not individual words. :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4233 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-17 16:49:07 +00:00
ramapcsx2 2930472b23 Fixed small bug that prevented the slow motion toggle to work. Shift + Tab now enters slow motion.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4232 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-17 16:07:35 +00:00
avihal@gmail.com 09c846c39b Presets: Now the first preset is numbered "1" (was 0). 0 based index is not for mere mortals..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4227 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-17 00:42:36 +00:00
Jake.Stine 003c40d96a Several bugfixes for the new portable install mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4212 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-15 20:35:05 +00:00
Jake.Stine 33336ab958 Major settings bugs from the last few earlier commits fixed here. Sorry folks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4208 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-13 23:20:23 +00:00
Jake.Stine a6a0197cb2 Bugfixes to the new pcsx2-vm / pcsx2-ui split ini system (WIP). Also fixed minor formatting errors in the intro wizard page.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4207 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-13 20:33:13 +00:00
avihal@gmail.com 7fe180015e Indentation: Converted some spaces to tabs under pcsx2/gui.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4205 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-12 18:36:19 +00:00
Jake.Stine 5386779b82 * Added a --portable command line option to force portable mode operation. (same thing as adding pcsx2_portable.ini)
* Removed the old and complicated first page for the wizard.  New page just has a language selector and some links to the CSX2 configuration guide and FAQ.  The usermode/settings stuff has been supplanted by the simpler portable mode feature.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4204 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-12 17:13:21 +00:00
Jake.Stine 3f948fa4fa Compilation error fix and updated about box credits a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4203 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-12 07:30:17 +00:00
avihal@gmail.com 76ac40c614 Re-enable Double-click toggles Full-screen, added a checkbox on the GS Window config panel (default = enabled).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4202 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-11 22:18:15 +00:00
avihal@gmail.com 80e9d9077f Fixes for issue 915 (comments 24/26/27): 1. Presets slider i18n name icons were all "!Panel:". 2. Speed hacks sliders got broken (reverted the code to pre- r4181).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4201 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-11 21:52:21 +00:00
Jake.Stine bd0990f9cb Minor tweak to savestates to help improve threaded responsiveness. May or may not work as expected (thread scheduling doesn't always behave in a consistent manner). Shouldn't hurt in any case.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4200 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-11 14:47:37 +00:00
arcum42 249f5594d3 Linux compilation fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4199 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-11 09:39:42 +00:00
Jake.Stine df6f1b03f7 Major Settings Changes!
* PCSX2 now splits settings into two files: pcsx2-ui.ini and pcsx2-vm.ini.  The former is user interface clutter (window positions, confirmation dialogs, etc).  The latter is virtual machine settings, speed hacks, game fixes, etc.
 * Added support for PORTABLE INSTALLS!!  Portable install is currently manually enabled by adding an empty "pcsx2-portable.ini" to the install location of PCSX2.  Portable installs should run seamlessly from any flash drive, etc. (and will usually need Admin rights)
 * PCSX2 install location and plugins folders are stored in the registry now (unless portable install is enabled, in which case no registry is used).

Notes:
 * A button to enable portable installs from within PCSX2 is planned.
 * NSIS installer will hopefully be upgraded to allow for a portable install option as well.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4198 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-10 17:48:25 +00:00
avihal@gmail.com 61b5194ccd Presets GUI consistency fix: Speedhacks 'Restore Defaults' resulted in grayed-out controls if last applied settings include presets enabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4184 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-09 00:12:38 +00:00
avihal@gmail.com 0042843525 PCSX2: Presets: 1. GUI consistency. 2. Fine tuned presets.
The presets system is hopefully done, code wise. Fine-tunning the presets themselves may still take place.

- GUI behavior should be as follows:
1. Overall: any changes made to the GUI without clicking Apply or OK would be discarded (on ESC or Cancel or close ([X])).
2. On 'Presets' unchecked: As long as the config dialog is open, the GUI stays with the values of the current preset (alternative behavior is available with #define PRESETS_USE_APPLIED_CONFIG_ON_UNCHECK).

--> NOTE: OK/Cancel/Apply buttons are never disabled. This is also true for r3768. Needs fixing one day.

- Fine tuned presets with some help from rama and pseudonim. Current Presets are as follows (each preset adds to the previous one):

1 - Safest          : Default settings + Individual speed hacks unticked (to make it visually clearer they're not used).
2 - Safe (faster)   : Recommended speed hacks minus vuFlagHack.
3 - Balanced        : enable vuFlagHack, enable EE timing hack, EE cycle rate to 1 click.
4 - Aggressive      : VU cycle steal to 1 click, enable (m)vuBlockHack, VU clamp mode to 'none'.
5 - Aggressive plus : EE cycle rate to 2 clicks (maximum).
6 - Mostly Harmful  : VU cycle steal to 2 clicks (maximum-1).

Note: The GUI consistency stuff turned out harder than I thought. I intentionally left in the code some commented out Console.WriteLN calls which should help debugging in case it's needed, but they should be removed eventually. I'd appreciate some regression tests and possibly code review for the entire presets system. Thanks.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4183 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-08 23:40:57 +00:00
avihal@gmail.com 9bc27cc7e4 [Safe WIP] Presets: PCSX2 configuration for dummies:
- When Presets are disabled: Nothing changes compared to earlier pcsx2 versions.
- When enabled: All important config options are grayed out, and a slider is used to select 1 of 6 overall config presets, 
  in the range of safest (and slowest) emulation, through trying to balance compatibility and speed, to way-too-many-hacks.
- TODO: 1. Resolve UI inconcistencies ("Cancel" button). 2. Fine-tune the presets. 3. Slight refactoring.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4182 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-06 23:52:04 +00:00
avihal@gmail.com 865cf083f8 Disabling the code for full-screen toggle by double click. It makes pcsx2 unusable for people who use mouse input. I'll re-enable it later together with a user option to disable it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4181 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-06 21:03:14 +00:00
avihal@gmail.com fc7fe0bbcd GSdx: Double-click now toggles full screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4180 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-06 20:26:10 +00:00
gregory.hainaut@gmail.com ff33680e5c cmake: use absolute path for resources file. (issue 930)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4178 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-05 18:55:33 +00:00
Jake.Stine 267b3bd90d API change: Simplified handling of app/emu config defaults handling. Got rid of the mandatory "defaults" override -- LoadSave APIs for Pcsx2Config and EmuConfig now use the current settings of the class instead.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4177 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-01-04 22:49:58 +00:00
Jake.Stine f76e901c64 Minor cleanups for the new virtual memory alloc/reserve system:
* Moved VIF dynamic recompiler buffers to the recompilers section of PCSX2.
 * Using RecompiledCodeReserve for the VIF SSE functions.
 * Minor bugfixes to VirtualMemory class implementations.
 * Improved error handling and error message display.
 * [TODO] : implement a call to cpuShutdown() to clean up VIF unpack/SSE reserves.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4169 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-30 06:21:07 +00:00
Jake.Stine 4c3e22e831 * Solution file updates for zzogl (adds needed dependencies)
* A couple i18n fixes listed in Issue 915, relating to dialog message formatting for a couple specific messages.
DevNote:
  * Added some missing operator+() stuff for the pxsFmt string formatter.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4160 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-28 04:14:47 +00:00
Jake.Stine a7fcc3929e * Documented some of the event/threading proxy class and its underlying event queue.
* Simplified and improved (slightly) the savestate memory cleanup on error/cancellation.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4158 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-27 15:25:39 +00:00
arcum42 7e9cf5a340 Fix a few non-POD type warnings.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4154 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-27 10:05:59 +00:00
arcum42 0297a6d364 Various changes to avoid using deprecated Gtk+ code. Gtk+ 3.0 is slated to remove most of the currently deprecated calls...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4139 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-24 23:58:56 +00:00
Jake.Stine 718b04a20d Integrated new wxSavestates. Features:
* Savestates are now 'proper' zip archives, which can be opened by any zip tool such as 7zip or winrar.  PS2 virtual machine memory components are stored as individual files (such as eemem.bin, iopmem.bin, etc), and can be extracted, modified, and re-packed easily (maybe fun for hacking!)
 * Savestate filenames are now based on a combination of serial code and CRC, ex: SLUS-12345_(0D386A2).00.p2s
 * Savestates made during the BIOS will have meaningful CRC codes now, instead of 0000000.
 * Minor improvements to error handling.
 * Better support for unicode and internationalized windows installs.
 * Prep work for eventual screenshots embedded into savestates (WIP)
 * Changed i18n macros around a bit to help differentiate out some of the lesser needed translation items. gettext po/pot file updates will be forthcoming.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4132 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-23 06:03:49 +00:00
Jake.Stine 79caa6c665 wxSavestates branch: sync with trunk, preparing for re-integration.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4130 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-23 05:17:39 +00:00
arcum42 def52f300e spu2-x: compilation fix; pcsx2: fix the codeblock project; zzogl-pg: Add some comments and debugging code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4122 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-22 10:43:20 +00:00
ramapcsx2 402a52bbc6 Small fix to logging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4114 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-20 21:36:06 +00:00
Jake.Stine ccc88e38b6 wxSavestates: fix for GCC compilation error.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4101 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-19 08:45:54 +00:00
Jake.Stine 262dc135fa wxSavestates: BIOs boot/running status is now correctly displayed in the console titlebar.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4098 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-15 04:45:43 +00:00
Jake.Stine bbb1c8a94a wxSavestates: Fixed Bios CRC calculations and improved robustness against saving multiple states at once (hackfix). Console title still doesn't display the BIOS label properly ... not sure yet the good way to remedy that one.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4097 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-15 00:04:23 +00:00
Jake.Stine a728cfee96 wxSavestates: many bugfixes!! *now* it's ready for testing. :p
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4096 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-14 22:41:02 +00:00
gregory.hainaut@gmail.com b39546fe81 cmake: rework the resource stuff. Avoid rebuild and files are clear by cmake.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4095 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-14 21:44:12 +00:00
Jake.Stine 9eddbb5845 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. :)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4092 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-14 15:09:22 +00:00
Jake.Stine daf47b50a0 wxSavestates branch: (partially sync'd with trunk**)
* Finished up zipfile-style savestate implementation
 * Simplified BaseSaveState class, and removed lots of now-unneeded code.
 * Prepared the i18n stuff for a pcsx2_Dev.pot file (WIP), and sorted more stuff to pcsx2_Tertiary.pot.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4091 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-14 07:28:05 +00:00
Jake.Stine 83e343b593 * Bugfix for Recent Iso List (it stopped remembering stuff a couple revs ago).
* Doing some configuration panel additions and cleanups (UI/theme-related) -- WIP.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4090 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-14 07:18:09 +00:00
Jake.Stine 21c022542f Minor i18n-related bugfixes.
* "Browse" option in recent iso menu should translate now.
 * Dialogs and config panels remember their positions more reliably (when using X or alt-F4 to close PCSX2, for example).
 * Preliminary language selector dialog (available in debug builds only).  Will finish it up later.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4088 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-12 07:43:21 +00:00
cottonvibes e38a0ba32d microVU: minor changes
- Added mVUcacheInitReserve and mVUcacheMaxReserve constant values for now which can be tinkered with until we implement runtime user-modifiable cache reserve-sizes.
- Improved the "microVU - cached program" printouts on dev builds.

pcsx2:
- Fixed the typos in SysOutOfMemory_EmergencyResponse()

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4087 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-12 06:38:17 +00:00
Jake.Stine fe5212696d GCC compilation fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4085 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-11 11:01:27 +00:00
cottonvibes 835127b69e microVU: Implemented indirect jump address caching (speedup)
Indirect jumps (JR/JALR) get a table which stores the previously jumped-to x86 code entry points, and this table is indexed by the jump-to PC address.
If current jump is jumping to a previously jumped-to address, the table will have an entry-point, but before it is returned, the microProgram for which the entry point belongs to must be validated to see if it matches the current contents of VU memory.
The program validation check is remembered and doesn't need to be performed again until after a micro memory clear (which happens when vif writes to vu micro memory).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4083 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-11 04:44:25 +00:00
Jake.Stine 6f289bedaf i18n:
* Fixed command line help display for non-english (invoked via --help)
 * Startup/wizard now uses default operating system language when possible.
 * Added a language 'Apply' button to the first time wizard, which applies new translations immediately.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4082 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-11 01:03:10 +00:00
refraction 41fc6feaf7 Fixes for Ikusa, Kinetica and Need for Speed Underground, should all be working again (or as good as before r3274)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4081 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-11 00:29:20 +00:00
Jake.Stine 2b9e609529 i18n: more minor bugfixes to handling of Chinese dialects/sub-languages, and some bug fixes to language enumeration and language settings ini stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4080 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-10 01:28:43 +00:00
Jake.Stine d9fdecd176 i18n: Remove some redundant/legacy wxWidgets language codes, in particular regarding Traditional/Taiwan Chinese.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4079 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-08 03:56:08 +00:00
refraction fa76cfdeca Hack for Midway (Thanks guys!) games, as to show their muppetry in coding, i have left big dev warnings everytime it hits their cockup. On a more serious note, Solves the issue of a failing COP Condition they are trying to achieve.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4077 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-06 21:40:36 +00:00
Jake.Stine 5c54b8279e i18n:
* fixed a bug that caused certain confirmation dialogs to not remember their choices, when user had non-english language.
 * Added wxWidgets-provided strings for a few things, such as Next, Back, and OK / Apply / Cancel.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4076 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-04 15:23:15 +00:00
refraction 0478382cb1 missed DMVector in last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4075 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-03 23:41:03 +00:00
refraction a7676a2b26 IPU hack removal - Well, still one bit i'm not sure on, but everything else should be correct. Hack was due to differences between IPU and the MPEG standard.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4074 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-03 23:36:51 +00:00
Jake.Stine f2c0ff23a9 PCSX2, GSdx (patch from avih): Fix broken backward/forward compatibility regarding GSgetTitleInfo
* PCSX2: Added GSgetTileinfo2 and deprecated=removed GSgetTitleInfo
 * GSdx: moved to the new GSgetTitleInfo2
 * New PCSX2 with new GSdx will have the new functionality, all other combos remain with old functionality.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4073 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-03 21:18:29 +00:00
Jake.Stine 49527d952c Plugin API for GS: Changed the new GSgetTitleInfo callback to use a more sensible parameter passing system.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4072 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-03 03:45:34 +00:00
Jake.Stine aaaa71e13b Minor fixes for the earlier GSdx titlebar feature.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4071 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-03 03:04:55 +00:00
ramapcsx2 1b1f112533 Avih (of Firefox plugin "Smoothwheel" fame ;) ) worked on bringing back that extended GSdx information we lost in the merge to the new WX Gui.
Here's his changelog:

GSdx, PCSX2: Fixed broken GS info at the title bar
* If the plugin doesn't support the API, PCSX2 will display only the image mode (progressive/interlaced field/frame), NON i18n!
* If the plugin does support the API, PCSX2 will not display the image mode, and instead display the info from the plugin
* GSdx now properly sends title info: resolution, image mode, deinterlace mode (weave - bff, etc)
* To enable the full GSdx title info as it used to work before it got broken: uncomment //#define GSTITLEINFO_API_FORCE_VERBOSE at GS.h of GSdx.
NOTE: When using an older pcsx2.exe with newer GS plugin, the title would contain duplicate image mode info. All other combos work fine.
* PCSX2 still displays the performance info, etc in the title bar.

Thanks a bunch for bringing this information back, Avih! :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4070 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-02 22:48:56 +00:00
Jake.Stine cc9461471b i18n: fixes for po filenames (they didn't match the ones in the wiki)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4068 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-02 19:38:18 +00:00
arcum42 f1c05a7f65 Fix up Linux after the latest commits.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4066 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-02 10:41:20 +00:00
Jake.Stine 9bcff9f3d5 Internationalization fix-ups. PCSX2 0.9.7 should *finally* be ready for translations. Whew.
* Also did some work on re-introducing the game database dialog.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4063 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-12-02 08:15:11 +00:00
refraction d5e60af439 DMA: Disallow MADR/QWC/TADR writes while the DMA is busy, solves the Mana Khemia voodooness
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4061 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-29 20:33:22 +00:00
arcum42 5da2f7cecd Correct an assertion. and remove an unused variable.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4060 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-28 07:23:24 +00:00
refraction 533bb0846b IPU: Gave IPU0/Internal IPU a sense of timing rather than the whole lot being dumped out instantly then interrupted later, fixes issues with data being left in the fifo (mana khemia) and the IPU outstripping the other dma's (FFX Mess/Tearing on Digital Devil Saga videos). Will remove the hack later and clean up once im totally happy its ok.
Note: This is technically still a hack, but it shouldnt break anything like the existing hack does, also it's closer to how it should be than anything we've done previous.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4058 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-27 00:11:52 +00:00
refraction 5f1ccc767e Fixed a bug in partial DIRECT/HL transfers, Fixes Ape Escape hang going ingame.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4057 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-26 20:50:28 +00:00
refraction 3d4c0f6158 Workaround for Ape Escape Million Monkey's. SIGNAL causes issues with Path1, this should avoid it for now until someone has a better idea :P Explination given in both XG_KICK's
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4054 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-24 22:23:57 +00:00
refraction 9e4041a8e3 Took out the code i accidently put back in from testing
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4053 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-24 20:37:37 +00:00
refraction e37d6b2905 Fix for Sonic Mega Collection, amazing how missing one small little detail can change things!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4052 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-24 20:36:33 +00:00
Jake.Stine 21f75b58db * Added code to detect amount of physical ram installed on the host computer.
* Added logging of host operating system and physical ram to startup.
 * Removed "PhysicalCores" stuff from both x86emitter and startup logs -- physical cores is losing its relevance with all the new AMD and Intel chip designs.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4048 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-23 21:32:52 +00:00
refraction 9f52e30c06 Fix for what i hope is the last Tekken Tag bug i find! I'd actually already done this on the VIF side due to another game, but didn't do this side. Fixes it tho ;p Happy smashing of each others faces in..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4044 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-22 19:52:11 +00:00
Jake.Stine 6dcdf9cfa9 wxSavestates:
* Basic savestate loading/saving working now (needs testing).
 * No support for screenshots embedded into the savestate (yet).

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4043 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-22 16:24:54 +00:00
ramapcsx2 f99ca6f4f6 New option to backup the old, existing savestate when creating a new one.
Hopefully not too buggy :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4042 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-21 12:35:59 +00:00
ramapcsx2 941bc36f24 Game Database Editor not needed yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4041 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-21 09:11:42 +00:00
refraction d8e80ff5fd Fixed bug in Vif Unpack Recompiler causing Guitar Hero 3 to crash on the memorycard screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4040 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 21:33:21 +00:00
refraction 86fab4e955 *Insert Profanity here*
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4039 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 20:37:11 +00:00
refraction 71142dfd7f Take 3 and done *i hope!* comments for r4035-r4038 in here please!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4038 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 20:07:57 +00:00
refraction 9979fe30e3 Fixed monumental cockup from my big commit, it shows, product placement really does work!! FFXII now works again, at normal speed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4037 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 19:47:06 +00:00
refraction 80663917b1 This is part of r4035, you just "Thought" you saw a new revision..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4036 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 16:32:48 +00:00
refraction 96ef86f560 - Standardized DMA Source chains, all DMA's now act exactly the same (within reason) Explanation for this in Hw.cpp. Consequently this fixed a hack id done for FFX videos (Not the one there is a game fix for)
- Slight tweak to Path3 masking, an overlooked situation where Path3 can wait between GIFTags.
- Improved the stability of MFIFO on both sides greatly for games such at Tekken Tag (which boots again) Gran Turismo 4 and FF7 Dirge of Cerberus.

I'm expecting *Something* to break, so please report it here if something does, please make sure it is THIS revision.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4035 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-19 16:29:28 +00:00
Jake.Stine 1dfc69670d wxSavestates branch: still nothing to see here (yet)...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4034 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-18 13:01:38 +00:00
Jake.Stine 5efe38b270 wxSavestates branch: (WIP, does not compile yet)
* Preliminary implementation of wx-based zip support (using wxZipInputStream and wxZipOutputStream).

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxSavestates@4033 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-17 14:06:51 +00:00
Jake.Stine 2ee6b7abc6 Merge newHostVM branch. Feature overview:
* PCSX2 uses significantly less memory when starting.
 * Overall memory use reduced (mildly for some games, significantly for most).
 * EE and IOP main memory are now fixed at 0x20000000 and 0x24000000 -- useful when using external cheat apps.
 * Properly implemented the 'Shutdown' menu option -- Shutdown now unloads the entire PS2 virtual machine and reduced PCSX2's memory footprint to bare minimums.
 * Some more meaningful errors for when memory is a problem (out of memory, low virtual memory, etc).
 * Bugfix for pxsFmt when formatting long/large strings (over 1k)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4029 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-17 05:49:11 +00:00
Jake.Stine a9d7f24884 Internal Iso: Only search for dual layer once.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4027 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-17 04:57:45 +00:00
Jake.Stine 0692ab1bc5 newHostVM: Linux fixes.
* Removed some missing / obsolete files from codeblocks projects.
 * Fixed a segfault on exit
 * Implemented a platform-consistent pointer value string formatter (%p has no defined standard)

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4026 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-17 03:18:36 +00:00
Jake.Stine 63b254c8bd newHostVM:
* Applied the new RecompiledCodeReserve to the VIF recompilers (saves another 4-8mb of memory, depending on game).
 * Fixed a bug in pxsFmt / FastFormatUnicode (string formatting).
 * Final round of error handling cleanups.

(branch is basically ready for re-integration -- needs some testin for obvious/show stopping bugs, thanks!)

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4025 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-16 15:58:42 +00:00
Jake.Stine 127ca00492 newHostVM: Sync with trunk (r4010-4019)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4024 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-16 12:02:38 +00:00
Jake.Stine 2ca8278c65 newHostVM: Some Linux compilation fixes, warning removals.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4023 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-16 05:32:31 +00:00
Jake.Stine 9a0a89aa13 newHostVM: Cleanups, improved error messages.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4022 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-16 04:53:52 +00:00
Jake.Stine 239c9f83d8 newHostVM: (Restored booting) -
* Added some bounds checking to debug builds for VTLB mappings.
 * Fixed a VU mapping bug that caused boot crashing
 * Fixed some startup, shutdown, and reset resource management.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4021 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-16 00:22:18 +00:00
Jake.Stine be1a590464 newHostVM: (WIP, may not run!) -- Applied host virtual memory mapping to the EE/IOP/VU main and on-chip memory banks. Added a new OO-based system allocator object for handling said virtual memory resources. Plus many code cleanups, and some added mess that needs to be cleaned up.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4020 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-15 14:05:02 +00:00
refraction 2b0f47260a Fixed the bug i made on my killzone commit, all games appear to work now that were broken, sorry about that!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4019 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-14 12:25:02 +00:00
refraction d87d13e155 -Fix for killzone.
-Did same code for VIF0 just to standardize things a little.

If this breaks anything let me know, and make sure it is this revision please.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4013 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-11 21:48:55 +00:00
refraction 0bf97480b7 Fix/Bodge for Clock Tower 3 black screens. GT4 now boots again. Explanation for bodge in the edit :) I am still alive here, just :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4012 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-10 22:38:09 +00:00
Jake.Stine bd31411a4c Bugfix for CDVDiso memory corruption, which caused random problems when loading specific types of iso images (most commonly MDF types, but could have been a problem on others as well).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4010 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-09 13:36:12 +00:00
Jake.Stine f1024dad91 newHostVM: Fix for savestates!
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4004 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-07 00:04:53 +00:00
Jake.Stine d6de2e3942 newHostVM: Made use of the new SpatialArrayReserve for the EE/R5900 recompiler. Reduces the recompiler's lookup tables from ~40mb to a mere 1-3mb.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@4003 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-06 16:25:40 +00:00
Jake.Stine 3bdf62fa0e newHostVM: Sync with trunk (r3972-r3993)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3995 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-05 01:39:25 +00:00
Jake.Stine a7726871dc newHostVM: More exception / error handling mess.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3994 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-05 01:33:01 +00:00
Jake.Stine dc7f00d05e newHostVM:
* Preliminary implementation for the SpatialArrayReserve class, which will be used for recompiler lookup tables (large portions of these tables are never used by many games).  Will put it to use and test it soon.
 * Finished implementation of TryResize method for reservations, which will be used by PCSX2 if the operating system runs low on ram.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3992 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-03 17:37:29 +00:00
Jake.Stine 5579350d22 newHostVM:
* Moved profiler management to the RecompiledCodeReserve class.
 * Improved error handling some more.
 * Numerous minor cleanups.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3991 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-11-03 14:18:30 +00:00
ramapcsx2 08623978b1 Hackfix the Mana Khemia 1 "off campus" problem.
No one is sure yet how it actually works on the real console though.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3982 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-29 16:11:02 +00:00
Jake.Stine 4eab3c5899 disc image support bugfix for games that have non-conforming SYSTEM.CNF contents (invalid or missing ISO filesystem version numbers, typically specified as ';1' after the filename).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3981 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-29 12:51:04 +00:00
Jake.Stine bd8127f75e newHostVM: More error/exception handling WIP stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3980 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-29 02:49:01 +00:00
Jake.Stine b568256653 newHostVM: improving error handling and memory management (WIP)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3979 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-28 13:14:18 +00:00
Jake.Stine 283224290d newHostVM: Fix linux/gcc compilation errors. PCSX2 doesn't work yet tho -- crashes on startup and I don't have a proper debug environment setup to trace and troubleshoot it.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3977 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-27 23:58:10 +00:00
Jake.Stine 4bee22a4cd newHostVM branch: Implemented VM reservation feature for all recompilers.
* SuperVU note: SuperVU recompiler now uses two separate 8mb caches for VU0 and VU1 (needed in order to simplify/saneify the reserve/alloc stages of pcsx2 app startup).
 * Added MemsetFast.inl, which houses SSE intrinsic versions of memset and memzero, for use on aligned data targets.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3975 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-27 19:18:46 +00:00
Jake.Stine 5e2724bdc3 * (Issue 734) Configuring plugins from the First Time Wizard should work better now (plugins options changes wouldn't stick)
* Security fix for Windows: Forced plugin filenames to be absolute paths, which resolves issues with windows' default path search order for DLLs, and hopefully avoids some errors for users who have installed Microsoft's Improved DLL Security patch.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3974 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-27 15:16:14 +00:00
Jake.Stine bed33749b5 newHostVM branch: (now boots games!)
* EE and IOP recompilers are using the new RecompiledCodeReserve class.
 * PS2 main memory should typically be located at 0x20000000 (code still need some cleanups)

VU0/VU1 recompilers will be implemented soon.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3959 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-22 19:47:02 +00:00
Jake.Stine 01541f2c92 newHostVM branch: work-in-progress stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/newHostVM@3958 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-22 16:23:52 +00:00
Jake.Stine aba50c4bf7 wxIsoFile: fixed support for dumpfiles.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxIsoFile@3954 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-21 15:06:57 +00:00
Jake.Stine ca9e250837 wxIsoFile: And a couple more compiler fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxIsoFile@3942 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-18 16:09:00 +00:00
Jake.Stine 2b4d7cc384 wxIsoFile branch: (needs linux testing)
* Convert IsoFileFormats.cpp into a class.
 * Use wxFile and wxFileInputStream instead of windows/posix specific file functions.
 * Added new ScopedAlloc classes, which are very simple dependency-free templates for exception-safe allocations.
 * FastFormatString: Improved performance ad fixed an obscure bug.
 * Drag&Drop (UI) - Improved the friendliness and responsiveness, so that PCSX2 doesn't end up tying up an explorer window while it prompts the user or issues error messages.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxIsoFile@3934 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-18 01:40:49 +00:00
arcum42 33214df091 spu2-x: Misc Alsa stuff. Added a few missing files into the pcsx2 codeblocks project.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3917 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-13 09:15:54 +00:00
Jake.Stine fc99f79aac Minor tweaks to assist in comparing new and old DMAC behaviors:
* VIF now sends a 128 bit tag instead of a 64 bit tag (lower 64 bits masked to 0 -- this should mimic real hardware behavior more closely)
 * Added more GIFtag logging info

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3916 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-12 12:15:57 +00:00
Jake.Stine 2d9d3a6b5c trunk/stable: logging additions for VPU's VIFcodes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3914 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-11 13:55:28 +00:00
Jake.Stine c7850c2fad Likely fix for Issue 825: converted NVM/MEC file routines to unicode (fixes "file cannot be created" errors for users who's names are not english)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3876 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-05 13:19:53 +00:00
Jake.Stine 46b526976f Linux: Compilation fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3874 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-04 22:03:25 +00:00
Jake.Stine 1dd9f8d0d4 Fix for some general slowness in Release builds, accidentally introduced in r3724
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3872 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-04 18:18:10 +00:00
Jake.Stine 02d5ed7f45 * Implemented GIF PATH/TAG logging option.
* Some other EE/Core logging additions and formatting tweaks.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3870 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-04 17:22:54 +00:00
Jake.Stine e63314f545 * Bugfix for Issue 850 - memorycards being deleted when swapping slots.
* Preliminary work done for Issue 735 : allowing specified custom memorycard filenames.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3869 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-10-04 17:12:28 +00:00
Jake.Stine 8f95d0626f ... simplified code for the last bugfix. :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3858 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-29 13:51:17 +00:00
Jake.Stine 21a147563e UI bugfix for speedhacks being improperly applied even when speedhacks were disabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3857 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-29 13:48:36 +00:00
ramapcsx2 fd0647cc02 Made the installer create a cheats directory as per request.
Remove the sVU is broken warning, since it's been functionally restored.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3855 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-28 22:02:42 +00:00
Jake.Stine 7ad0ef4fb4 * Disable Ok/Apply/Cancel buttons on dialogs while settings are being applied, prevents potential deadlock when accidentally double-clicking the buttons.
* Add preliminary code for selectively disabling spam-heavy hardware registers


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3853 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-28 20:00:17 +00:00
sudonim1 0bb42e1331 Fix the VU interpreter (and occasionally sVU) addressing change from r3697.
Fix an sVU regression from way back in r3549 (God of War, Tales of the Abyss).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3850 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-28 19:07:17 +00:00
Jake.Stine f6a7c33559 Bugfix for rounding/clamping mode patches not being applied (and possibly some other obscure cpu settings bugs as well).
Cause: there were accidentally 2 instances of 'Recompiler' in the Pcsx2 emulator settings structure.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3843 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-26 19:51:54 +00:00
ramapcsx2 c7257797a1 Made some more mVU messages tied to verbose flag.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3842 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-26 19:02:13 +00:00
Jake.Stine c396684e07 * Fix a bug that prevented devel/verbose console logs from being logged in Release builds.
* Switch microVU's cache logs to DevCon (verbose only).  TODO: Make a vuPerfLog for them someday.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3841 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-26 17:41:57 +00:00
ramapcsx2 666d800d83 - Enable patches is now on by default.
- Changed some configuration text, warning now that sVU is broken.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3840 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-26 17:31:23 +00:00
Jake.Stine e24ceba0e1 IPU:
* Fix a potentially obscure bug in ipuCSC (color space conversion) which would have caused PCSX2 to hang on certain types of rare partial transfers.
 * Remove some more dead code and structure data from the mpeg library.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3833 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-25 05:36:30 +00:00
Jake.Stine 9ebace0a8d IPU: Cleanups and simplifications, and removed a whole lot of code that was force-setting ipu0dma's STR to 0 and/or flushing the FIFO for no reason. Tested tons of games, couldn't find any regressions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3831 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-24 23:48:33 +00:00
Jake.Stine 36d1503581 Converted IOP to use a static/global hardware register allocation. (same as I did for the EE a few weeks ago).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3826 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-23 19:44:55 +00:00
Jake.Stine cfca4ccdd0 IPU Fix for Haunting Grounds (in-game cinemas skipped after 1 second). Bug was caused by the internal buffer of the IPU (2 QWC) not being refilled properly in rare circumstances.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3824 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-23 15:24:45 +00:00
Jake.Stine 5fd2cf97d3 Made some minor tweaks to SIF to test some theories and fix some broken-looking code -- please report any regressions. Also commented some of SIF and IPU stuff. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3812 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-20 12:47:17 +00:00
arcum42 d06838c4a5 Compilation fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3795 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-18 05:29:05 +00:00
Jake.Stine 47cf781130 IPU : Removed the MPEG internal 32 bit buffer and all associated logic for "rewinding" bits out of the buffer and back into the IPU's internal 2QWC buffer. Simplifies IPU's bitstreaming code quite a bit, but isn't really much faster (yet).
(savestate version upgraded)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3788 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-17 13:10:54 +00:00
arcum42 38aecf4ae0 Minor compilation fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3782 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-17 00:12:15 +00:00
Jake.Stine d4310e0b86 IPU fix for GUST games
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3777 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-16 11:04:35 +00:00
Jake.Stine 1c75440a6c IPU optimizations -- use SSE for FIFO reads/writes, and streamlined IPUdma0 /IPUdma1 feeds a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3771 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-15 17:11:24 +00:00
Jake.Stine 752034c519 Bugfix for Tri-ace games and possibly others (bug introduced in r3762, caused by missing 'vifRegs.num is actually 256' checks)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3765 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-14 00:39:40 +00:00
Jake.Stine 4671428593 ... and update the savestate version, since I changed all the vif containers around.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3764 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-13 23:05:14 +00:00
Jake.Stine 59ebdf3e60 GCC compilation fixes.
(note to devs: a sure-fire fix for GCC's templated function problems is to typecast the templated function to itself explicitly -- works nicely for all versions of GCC and the ?: operator as well).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3763 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-13 22:52:04 +00:00
Jake.Stine 2f8f86a3eb Significant VIFunpack retooling. Interpreters are considerably more efficient, and Recompilers are slightly more efficient. Details:
* All remaining code for handling partial/fragmented unpacks removed.
 * vifRegs.NUM is now accurately simulated when queuing data from fragmented unpacks.
 * Reduced the VIFunpack fragment buffer from 1MB to 4KB (max size of an unpack due to NUM being limited to 8 bits).
 * Removed vif/vifRegs globals formally used by VIF interpreters (everything relies on the templated vifIdx now -- simpler and faster!)
 * g_vifMask vars are integrated into vifStruct.
 * All VIF mask register stuff uses the SSE-friendly vifStruct.MaskRow/Col vars now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3762 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-13 21:13:10 +00:00
gregory.hainaut@gmail.com e2cb52becf cmake:
* Link zz with libjpeg. Well it seems to get the library from another place, but better be safe for the future.
* Use -pthread as a default option (again to be safer)
* Warn about breaking of strict aliasing rule 


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3761 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-13 15:26:04 +00:00
Jake.Stine da9c955135 * Simplified VIFunpack's C-based interpreters (removed ODD size handlers and unused data)
* Fixed V2/V3 unpacks to behave same as the SSE unpacks (matches undefined PS2 behaviors)
 * Removed legacy vifUnpacker (haven't needed it for any regression testing in forever).
 * Move some VIF MARK console spam to DevCon (Ape Escape 3)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3746 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-10 13:16:50 +00:00
Jake.Stine 14513cecb9 Fix for some major slowdowns present in dev/debug modes when using trace logging features.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3745 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-10 11:38:11 +00:00
Jake.Stine 7bfe167405 (u64*) [compilation error fix]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3744 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-09 09:47:13 +00:00
Jake.Stine 372478c0ec Remove some obsolete code relating to VIF/GIF FIFOs (hwRead/Write handlers always intercept them now, so saving values back to the eeHw register mirror is ineffective).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3741 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-08 11:34:39 +00:00
Jake.Stine e246d617ef Minor fix from yesterday's IPU refactoring (fixes some homebrew stuffs)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3738 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-06 16:58:10 +00:00
Jake.Stine 3cfd0c68af * Rename cpuBranch[...] functions and vars to cpuEvent[...], which should be more clear and consistent as to their true purpose. (to clarify: events typically run during cpu branch instructions, but most branches don't actually have anything to do with whether or not there are events pending or events being run).
* Add some missing & ~0x0f address alignment stuff to odd-size FIFO reads/writes (thanks gregory)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3730 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-05 15:38:14 +00:00
Jake.Stine 1698382065 Simplified CPU-level exception behavior:
* Both INTC and DMAC exceptions are now issued together when possible (0x400 | 0x800 to the CAUSE register, respectively)
 * CPU exceptions are checked on every event now, instead of using scheduled interrupts on bits 30/31.  This removes the need to constantly reschedule events during interrupt-disabled states.
 * CPU exception test is moved to the top of the EE event test.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3728 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-05 15:11:19 +00:00
Jake.Stine 02b390b0e1 Changed SIF and IPU macros for hw register mappings into references. (-> into .)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3727 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-05 02:51:36 +00:00
Jake.Stine 935159ed8e IPU: Split IPU DMA stuff out into its own file, and add missing region info (got left out AGAIN >_<) and a potentially important bit of IPU information to the savestate.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3726 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-05 00:36:03 +00:00
Jake.Stine 46b89abb72 * Move the GIF register handlers from dmac to hwRead/hwWrite (like the VIF registers they aren't actually DMA-related).
* Minor cleanups to trace logging and FastFormat string stuff.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3724 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-04 14:11:50 +00:00
cottonvibes 147e4b8409 microVU:
- Fixed xmm reg corruption when calling console print functions from recompiler (win-vista+ clobber some xmm regs)
- Tweaked and commented regalloc class

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3723 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-03 05:02:03 +00:00
Jake.Stine 12dbebcfd9 microVU: clear contents of microBlock on creation to avoid false cache misses.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3720 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-02 12:33:45 +00:00
gregory.hainaut@gmail.com df7708a37b pcsx2 Hw read/write: Instantiate _hwread32 template because it is used in HwWrite.cpp. It avoids link error when compiler inline template.
Note: inline the _hwread &  _hwwrite functions could be a good idea.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3719 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-02 08:28:24 +00:00
Jake.Stine 96855850f3 microVU: bugfix for prev revision (.r and .flag member mixup); and removed an unneeded check against exactMatch.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3718 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-02 02:38:54 +00:00
Jake.Stine 76d639ff39 microVU:
* Remove need for packed structs through use of unions.
 * Streamlined the microBlockManager's linked list (less heap allocs and simpler interations).
 * Use two 32 bit compares for fast block compares, instead of 6-7 individual u8 compares.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3717 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-01 16:15:18 +00:00
arcum42 1ded55f4cf Hack around Linux compilation issues for the moment.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3716 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-01 10:48:43 +00:00
cottonvibes 009d6ba5e6 microVU:
- Code refactoring (mostly changing macros to functions/constants...)
- Made it so the disable-regAlloc option flushes every 32bit instruction, instead of every 64bit instruction (upper+lower instruction pair)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3713 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-01 04:57:10 +00:00
cottonvibes 807bd9659c pcsx2 mmi: apparently msvc does an unsigned compare jump when you have:
int src; if (src < 0xffff8000) {}
so solution is either use (int)0xffff8000 or -0x8000...
it also doesn't seem to print out warnings about this either D:

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3712 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-09-01 02:03:10 +00:00
Jake.Stine 27a3f11278 Remove some code from DMAC.h and into LegacyDmac.cpp (these changes are mostly related to the new dmac prep on the other branch, but I'm doing them here to help keep major refactoring differences and merge conflicts to a minimum between the two branches).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3710 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 21:22:39 +00:00
Jake.Stine 0bb377511b Uninitialized variable fix in ScopedLock as found by Gregory, and a few more minor -> to . conversions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3708 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 16:40:25 +00:00
Jake.Stine 1edb900405 Changed a few more -> to . for consistency.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3707 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 13:06:53 +00:00
arcum42 fe347c2c04 Fix Linux compilation, fix a potential crash, and add a build target I find useful occassionally.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3706 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 09:31:47 +00:00
Jake.Stine bcac59ee4f Linux/GCC fixes. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3705 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 05:47:54 +00:00
Jake.Stine 003da7d287 MAJOR: All new hwRead and hwWrite handlers (expect regressions). Details:
* Writes via 16 and 8 bit ops now use 32-bit read/modify/write operations by default; which should enable nearly complete support for all such operations (instead of the formerly spotty coverage before).
 * Eliminated almost all former 8/16-bit specific register operations.  All code shares the same 32 bit handlers now.
 * Completely revamped the developer trace logs for hardware registers!  *ALL* registers are logged now, complete with address, name, and value being read/written (and nicely formatted!).
 * Handlers are now fully page-based using templated functions (minor speedup)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3704 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 05:22:26 +00:00
Jake.Stine 1cac8d3948 * Added subdivided content to the u128 type (changed it from a struct to a union, added _u32[4], _u16[8], etc).
* Added ToString methods to the u128 type.
* Bugfixes for the FastFormat string utilities, namely when writing UTF8 content via the UTF16 formatter.
* MSVC: Removed obsolete disabling of unsigned/signed mismatch warning (4018)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3703 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-31 05:14:00 +00:00
gregory.hainaut@gmail.com 393333456c PCSX2 VU: Linux compilation fix and force 16 bytes alignement for VURegs
Spu2x: Use a standard destructor (POD safe stuff). Fix various segmentation faults (Issue 846)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3702 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-30 20:39:04 +00:00
sudonim1 b5472c80ec sVU: same address translation fix as in r3697
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3700 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-30 18:26:36 +00:00
cottonvibes f438a8c8a3 pcsx2 MMI: another fix for PMFHL_CLAMP.
The dst param was never being modified since it was being passed by value instead of by reference. This leads me to believe the rest of MMI.cpp is probably riddled with errors too.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3698 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-29 05:13:12 +00:00
sudonim1 fcc6f30489 mVU, VU interpreter: fix arc the lad, freakstyle (VU1 register mapping / memory wrapping)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3697 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-27 21:25:21 +00:00
gregory.hainaut@gmail.com 72ca36954b pcsx2 MMI: u16 -> u32 for src parameter of PMFHL_CLAMP.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3696 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-27 17:51:40 +00:00
gregory.hainaut@gmail.com 07e7995464 pcsx2: Fix tons of warning (no return statement)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3695 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-27 15:49:44 +00:00
Jake.Stine bda94b16cd General emulator memory work, regarding my new policy that most (or all) cpu and hardware registers should be standard globals, as it makes our lives a lot easier in general (and their memory footprint is small so it won't adversely affect the virtual memory availability of the host operating systems). Details:
* Removed the hacky g_pVU1 pointer, which required VU1 cpu registers to be part of VU0.  Replaced it with a standard VU1 variable (mimics all other CPU registers, which are standard static vars).  We were using translation functions/tables for all VU0 memory operations anyway, so this was a no-brainer.
 * Removed code from microVU that was only there to help deal with the fact that g_pVU1 was annoying.
 * Turned eeMem->HW into a static global array eeHw [64k].

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3692 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-27 03:21:16 +00:00
Jake.Stine 70cd51a64b A 'nice' fix for GCC's fickle dislike of packed structs. 1) the VU registers struct no longer needs packed (the unions ensure proper packing); 2) introduction of 128-bit UQ/SQ members.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3689 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-25 15:32:17 +00:00
cottonvibes 0300f5a80e microVU: Added some logs to dev builds for checking rare cases. (VU programs that wrap around VU memory, and VU0 micro-programs that access VU1's registers by its mem-mapping at 0x4xxx)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3688 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-25 00:57:51 +00:00
Jake.Stine d19cc9d951 Eh, more VU interpreter cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3687 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-24 21:38:05 +00:00
Jake.Stine 3a8e904525 Fix GCC compilation error from prev commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3686 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-24 18:12:19 +00:00
Jake.Stine a0389c4d18 * Redid the VIFunpacker's wrapped memory address detection (a bit more compact now)
* More VU interpreter cleanups  (VU0micro.cpp and VU1micro.cpp are just about ready for permanent removal now).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3685 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-24 17:53:27 +00:00
ramapcsx2 18663acf57 - Warn about disk emulation software on CDVD file access failure. Seems to be a too common problem people run into.
- Minor log change for SPU2-X.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3681 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-23 12:10:55 +00:00
Jake.Stine 17df6e218c VU interpreters: removed redundant VU memory masking (this also caused the VU0's memory map of VU1 regs to fail), and improved inlining a little bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3680 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-23 08:30:10 +00:00
sudonim1 4da64590d9 Geh, forgot to save after writing a comment.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3674 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-21 14:51:20 +00:00
sudonim1 8aee9f652d Very nasty quick fix for sVU and VU interpreter regression in r3648. I have no idea why it's desirable to be able to move the VU registers structure after initialisation and a proper fix allowing for this is going to messy. Needs Jake's attention.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3673 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-21 14:50:45 +00:00
Jake.Stine d4d98d9f62 microVU:
* Removed a DevCon from one of the mVU dispatchers and replaced it with an assertion (minor speedup for Release builds).
 * minor refactoring, encouraging mVU toward using class members and away from using quite so many macros.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3648 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-17 04:18:39 +00:00
Jake.Stine 6afa5ba769 Ok the last fix for GCC exploited a bug in MSVC's handling of taking the address of templated functions (one I've run into before). So I gave up and reverted to non-template code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3647 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-17 01:52:12 +00:00
Jake.Stine 6a18d4f50a GCC/Linux compilation fix for VTLB code modifications made earlier. These thanks to two apparently separate bugs, one in GCC 4.0-4.4 and another related one in 4.5. Sigh.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3646 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-17 01:37:19 +00:00
ramapcsx2 6798f27d4d Found and fixed the issue causing some FFX battles to hang since ~400 revs ago.
The same problem caused the hang in Phantasy Star 4 when pressing pause.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3645 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-16 18:04:05 +00:00
Jake.Stine a8e406523b Improved EE/VTLB memory management: Removes various psM/psR/psS/psH pointers and replaces them with a single unified eeMem pointer. Members of eeMem correspond to Main, Scratchpad, Hardware, etc. This simplifies the EE's memory allocation, improves compiler optimization, gets rid of some macro mess, and allows templated code to deduce the size of memory buffers automatically.
* Includes a minor tweak to DMAC.h - removed tDMA_TADR / tDMA_MADR / etc. and replaced them with a single tDMAC_ADDR class.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3644 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-16 15:57:01 +00:00
Jake.Stine 91851c6222 Trace Logging:
* Cleaned up trace logging and switched from C++ initializers to C-style const arrays.  Kinda mixed on which I like better, but decided to go with the general rule of thumb that a bit less C++ weirdness is probably a good thing.
 * Removed __assume() feature from pxFail and pxFailDev, due to the likeliness of unwanted/unexpected compiler behavior (MSVC only).  To hint the compiler that code should be unreachable, explicitly use pxAssume(false).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3643 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-16 15:01:13 +00:00
ramapcsx2 d05dcc48f7 Fix a typo in the wait loop detection hack.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3641 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-14 23:47:44 +00:00
ramapcsx2 a0f3f4b904 Re-fix Def Jam Fight for NY.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3636 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-12 19:58:19 +00:00
arcum42 a586d8364e pcsx2: Get Linux compiling.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3635 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-12 11:28:22 +00:00
refraction 09b52156d7 Im sure this got in there by error back when the OPH stuff revert went on.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3634 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-11 09:49:57 +00:00
refraction 45b7a18c8b Missed a couple of bits :P
Small OPH/APATH clear which shouldn't have been there.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3633 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-11 09:48:43 +00:00
refraction 81dc6726d0 VIF MFIFO:
- Proper fix for FF7 DoC. 
- Changed the handlng of .inprogress to be cleared/set with ANDs and ORs (could probably change this to a structure later), it could have interfered with MFIFO functionality.
-Un-bool'd a function in MFIFO which really didnt need to be bool'd, causing pointless passing around of data.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3632 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-11 09:16:12 +00:00
ramapcsx2 e97c68e832 Added a minor hack to MFIFO interrupt timing. Fixes FF7 DoC.
Long interrupt delays are always bad, no matter how true it is to actual console behavior.
(Issue with running code in block slices.)
Also removed outdated hacks for Devil May Cry PAL :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3629 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-10 10:04:17 +00:00
gregory.hainaut fa793cca25 cmake:
* move machine optimization in the global setup. In same time use i686 instead of i486
* Also build the debug with fvisibility=hidden No reason to use it only on devel. (actually same as codeblock)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3628 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-09 19:05:02 +00:00
Jake.Stine 20adde44a6 PCSX2/EEcore:
* Now using SSE for all hardware register reads and writes (mainly MFIFO stuff) [don't expect a speedup, really -- its more of a code simplification in this case].
 * [refactoring] Changed the EE Memory (vtlb) to use the u128 type instead of u64 for the 128-bit loads/stores (see mem128_t typedef)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3626 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-09 15:42:13 +00:00
arcum42 c425ece009 'static' and 'extern' do not mix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3625 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-09 09:19:50 +00:00
Jake.Stine 8375b0a989 Refactoring:
* Added __fi and __ri, which are abbreviations for __forceinline and __releaseinline.
 * Added some static qualifiers to functions in mVU, MMI ops, and others where appropriate.
 * Removed some unnecessary __fastcall qualifiers (since GCC gets funny sometimes when you combine __fastcall and inlining).
 * Made _1mb, _16mb, _1gb values common to all emulation code (moved from newVif/mvu to Common.h) -- they're useful! :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3624 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-09 04:10:38 +00:00
ramapcsx2 aa8c007af3 Pseudonym found missing register allocation flushes in our recompiler loads / stores.
This is fixed now.
(Devil May Cry 1 fixed)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3622 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-08 18:05:16 +00:00
Jake.Stine 8160056911 Bugfix: EE and IOP consoles were piping through printf formatting, causing occasional crashes (introduced in r3609)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3621 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-08 16:19:37 +00:00
sudonim1 d7a09fa4d7 IOP: Deleted micro-optimisation in what's already not a speed critical recompiler which was corrupting code in experimental modifications.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3620 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-07 13:47:02 +00:00
arcum42 4cccc7a3b1 Apply the same visibility flags from CMake to CodeBlocks. GSnull: Remove some legacy gif code. Hook up the register code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3618 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-07 05:46:25 +00:00
Jake.Stine 4528621d5c Enable IOP stdout and Kprintf HLE intercepts in Release mode builds.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3616 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-06 19:15:43 +00:00
Jake.Stine 912872af80 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.
DevNotes:  DevCon logs are now available in *Release* builds as well as Devel builds, and can be enabled from the Console window's "Sources" menu.  They are disabled by default in Release builds, and are always enabled regardless of the ini setting in devel builds.  Debug logs are still strictly available in debug builds only.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3609 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-06 05:46:09 +00:00
Jake.Stine 28ba6d7520 More GCC fixes for SafeArray (changes to the BoundsCheck macro fix some meaningless warnings, not really important otherwise).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3607 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-05 12:48:49 +00:00
Jake.Stine 892eb3f2c6 Dreaded IPU bug FOUND and SQISHED! -- this is the bug that was corrupting memory for all these years. ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3603 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-05 03:25:25 +00:00
Jake.Stine d88cf47adb Linux: Likely fix for gcc errors compiling SafeArray
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3602 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-05 01:39:31 +00:00
Jake.Stine c439d1bef2 Minor refactoring; doing this just to help minimize the changelog spam of the next commit (not that it'll help much)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3600 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-04 19:10:41 +00:00
sudonim1 f022819747 IPU: Fixed bad IPU_CMD handling (using the same memory for read and write values).
Unlikely to help any games, just spotted this when rama was debugging one with an unrelated problem.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3598 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-04 16:56:25 +00:00
ramapcsx2 181836b5d4 SPU2-X:
- Remove the DSound output module hardware buffer option which caused more harm than good.

Also fixed that IOPx2 hack leftover.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3597 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-04 16:14:37 +00:00
Jake.Stine e5f87e068b Changed the FastFormatString functions into nifty little classes that use TLS for their buffer workspaces. Result: a fully concurrent printf with zero malloc/free overhead. Use the pxsFmt macro for them -- which is a fully working alternative to wxsFormat().
(pxsFmt has been applied to console/logging only for now.  Will apply it to more later, once the code is confirmed stable)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3596 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-03 22:18:19 +00:00
ramapcsx2 c2e687ad27 Removed the IOPx2 cycle hack. It's been superseded by the Wait Cycle Detection hack anyway.
Replaced the empty space with a (imo :p) more useful "Fast CDVD access" hack. 
This one will enable users to cut loading times in most games but there
are some incompatibilities as well.
HDLoader compatibility lists will list incompatible games with a "needs MODE 1" (or similar).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3595 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-03 18:12:22 +00:00
gregory.hainaut 9987f673b3 IPU (linux): mangle asm label. Need for inlining (if link time optimization works one day).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3592 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-02 17:14:51 +00:00
gregory.hainaut e1b8da387c IPU (linux): fix pointer variable. Linux compilation is now fine.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3591 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-02 12:52:42 +00:00
gregory.hainaut 7b05db1351 IPU (linux):
* fix asm constraint. X86 have only 6 registers...
* move some pointer to ecx and edx like windows asm


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3590 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-02 12:49:48 +00:00
Jake.Stine 9c0ce26e42 Minor linux compilation fix to yuv2rgb_sse2
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3588 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-01 23:39:30 +00:00
Jake.Stine 61a4b537c4 IPU:
* Savestate mega-fix!  Removed all the old direct pointer types from decoder_t, which should fix the oddball random savestate crashes when IPU is active.
 * Moved iq/niq into decoder_t.
 * Moved all macroblocks into decoder_t (mb8, mb16, rgb16, rgb32).
 * Turned decoder.stride into a constant, since IPU can only decode in strides of 16 bytes only.
 * Added sanity checking to the ipu0_fifo stuff (was formerly g_nIPU0Data, etc).
 * Added some SSE moves to the Idct (very minor optimization).  There's a completely SSE from-ground-up implementation provided by newer versions of libmpeg2 that we should probably look into later, rather than rolling our own.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3587 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-01 21:50:59 +00:00
arcum42 63a2d9c228 pcsx2: Fix macroblocking in Linux videos.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3586 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-08-01 09:17:36 +00:00
Jake.Stine 9d57fee7d4 Removed some unneeded code from our vu memory handlers (was an attempted optimization from long ago, but VU memory isn't accessed directly from the EE enough for it to matter).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3585 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-31 22:42:24 +00:00
Jake.Stine fa14e157c6 IPU: Minor tweaks to casts and static vars while looking for potential GCC issues.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3584 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-31 14:29:59 +00:00
ramapcsx2 17465d1302 GSdx:
Move the dx11 check to GSInit, didn't like it only getting called on renderer changes in the middle of emulation.

PCSX2:
Report the savestate version as hex if loading an incompatible state. Looks better than -19793434481 :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3579 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-28 19:00:42 +00:00
ramapcsx2 275bd2f629 Savestate version increase.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3578 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-28 17:49:05 +00:00
Jake.Stine 8984e80c24 Add an SPU2reset callback to SPU2 plugins, needed to put a stop to SPU2 sound generation when resetting the PS2 VM. If a plugin doesn't implement it directly, it automatically falls back on a manual soft reset using the SPU2's builtin software Core0/1 register writes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3575 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-27 03:41:18 +00:00
ramapcsx2 0d029979ca New gamefix hack that alternates the GIF_STAT flag "OPH" on each register read.
This will be needed until we've figured out how this thing is supposed to work.

Enabling this hack should fix, among others, Growlanser games, Bleach and Wizardry.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3574 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 18:55:18 +00:00
Jake.Stine 4bb830827d IPU: Various minor header file, table, and inline function tweakings/cleanups. Note that I unified several tables into structs and applied __aligned16 to them. I'm not just being silly: this seems to have a noticeable positive effect on framerates (~3-4% here).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3573 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 18:14:56 +00:00
ramapcsx2 7074d31651 Minor log change.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3572 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 17:03:40 +00:00
arcum42 9d0a191a00 pcsx2: Ok, take 3.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3571 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 11:40:30 +00:00
arcum42 545165b405 pcsx2: Since Windows didn't like that change, here's a quick workaround.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3570 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 11:09:34 +00:00
arcum42 ed9bf27015 pcsx2: Update the project files to no longer have coroutine. Fix a compiler warning. (zzogl-pg: Modify comments.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3569 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 10:51:06 +00:00
msakhtar 5165350170 Added a threadless state managed IPU. The code is still in it's early stages and will now be worked on to optimize for speed. The first optimization is to increase the read size in Vlc.h from 32 bit to 64 bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3568 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-26 10:18:28 +00:00
gregory.hainaut 83604ec59d cmake: properly separate ldflags from cflags
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3567 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-25 14:20:03 +00:00
gregory.hainaut 4e90b10c76 cmake: Use same variable name for output. Allow easier copy-paste between files. Do not know why I did not do it earlier.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3566 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-25 13:54:26 +00:00
ramapcsx2 a96e866f79 Some changes to GS stalls. The code was there but commented out.
Fixes Quake III Revolution and the homebrew "Simple Media System".
It's probably all wrong still but hey, better than nothing :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3556 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-23 17:30:18 +00:00
ramapcsx2 ca1c1e8796 Forgot this. Sorry Bleach players.
"Bankais" will work again soon though, we hope :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3555 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 22:11:21 +00:00
ramapcsx2 3971787b9a Revert the OPH work of r3522 as it was based on wrong assumptions (except the direction flag in BUSDIR, that one was right).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3554 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 19:17:10 +00:00
sudonim1 be9e225468 Fix unintentional alteration of tDMAC_STAT in r3550.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3552 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 17:21:13 +00:00
Jake.Stine 8d07e78b86 Unified the three DmaExec functions into one. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3550 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 13:25:48 +00:00
Jake.Stine bc849cc042 Merge const qualifiers and cleanups from ReorderingMTGS: Includes the VIF DIRECT changes, which seem to be stable this time. ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3549 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 12:20:11 +00:00
Jake.Stine 095e46246d microVU: Added some const qualifiers to the instruction/opcode function LUTs
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3548 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-22 05:05:18 +00:00
sudonim1 915983cc71 A line that got lost somehow. Fixes iop debugging output again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3542 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-20 16:56:48 +00:00
Jake.Stine b6af82efa8 GSdx / zzogl-pg / pcsx2:
* Implemented support for legacy GS plugins (considered anything prior to the Reordering merge).
 * Added a lot of 'const' qualifiers to the GSgifTransfer functions in both GSdx and zzogl.

DevNote: GS plugins shouldn't be modifying the data provided to them from PCSX2 -- zzogl wasn't, GSdx was.  I had to do a little bit of juggling to remove the mem modifications from GSdx's TEX0/TEX2 handlers.  With luck, nothing's broken. ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3536 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-19 15:49:30 +00:00
Jake.Stine c7096a1d53 Fix superVU xgkick stuffs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3535 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-19 12:35:03 +00:00
Jake.Stine 575e1ceb46 * Converted SPR.cpp and hwMFIFOWrite to use memcpy_qwc in the place of memcpy_fast.
* Fix a bug in my merge of the new MTGS code that caused crashes on some games (PATH1 queue bug).
* Added assertion checks to hwMFIFOWrite for qwc alignment and a SPR_LOG for null ringbuffer addresses (if a game specifies an invalid physical address).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3533 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-19 05:40:35 +00:00
Jake.Stine 856ffe4c65 Merge optimizations and code cleanups from the ReorderingMTGS branch (r3523) into Trunk. Summary of changes:
* GIFpath parsing copies as it parses (speedup!)
 * Improved memcpy for 128-bit copies (speedup!)
 * MTGS ringbuffer uses free-flowing wrapping now, which simplified ringbuffer management logic considerably (speedup!)
 * Various MTGS-related refactoring (var renames and such)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3532 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-19 03:48:37 +00:00
sudonim1 b9b4d0f1d8 IPU: Documented YUV colour space used by the IPU since I researched this when fixing gsdx recording.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3531 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-18 17:57:35 +00:00
Jake.Stine 9ba58e1398 ReorderingMTGS: Sync with trunk!
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3523 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 22:42:18 +00:00
ramapcsx2 f7d0ed2dc5 ReorderingMTGS: Clean up and unify all OPH flag handling to be in the BUSDIR handler.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3522 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 22:37:36 +00:00
Jake.Stine ffdf8223fd ReorderingMTGS: Quick cleanups to gifMFIFO's path parsing.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3521 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 20:32:58 +00:00
Jake.Stine 4f62554702 ReorderingMTGS: Revert changes to Vif_Codes.cpp from earlier, until other bugs in VIF processing can be resolved. (fixes ICO bootup).
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3519 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 18:05:13 +00:00
refraction 6fdfdf604f vifUnpack: Made V3_## Unpacks work the same as V4_32, this is how legacy did it to, for some reason i made it copy the 3rd vector in to the fourth >.<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3516 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 13:53:09 +00:00
Jake.Stine 1c9cefd778 ReorderingMTGS:
* fixes flickering screen in Soul Calibur 3 (caused by VSYNC register bug)
 * Optimized upload of queued Path1 transfers; such that all Path1's are uploaded as a single MTGS packet.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3515 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 12:11:37 +00:00
Jake.Stine ce2b9e30fc ReorderingMTGS: threading bugfixes, ringbuffer would do bad things when it got full (GS load 80%+), or when vsyncs wrapped around the edge of the ring.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3507 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-17 00:14:41 +00:00
arcum42 1be80fbe53 ReorderingMTGS: Comment out a few unused variables.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3505 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-16 23:31:28 +00:00
Jake.Stine 5bbdb68896 ReorderingMTGS: Assertion fixes, some comments notes on MARK behavior.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3504 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-16 20:31:00 +00:00
Jake.Stine 32942ec9a6 ReorderingMTGS:
* Added a few assertions to detect when PATH transfers are started that violate other pending PATH transfers.
 * Removed a lot of obsolete code from vif1's DIRECT handler (Vif_Codes.cpp)
 * Add alignment to Path1buffer to avoid SSE alignment faults.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3503 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-16 16:48:08 +00:00
gregory.hainaut 6250ec1f37 [IPU]: properly fix gcc c++0x error. Declared coeff as s16 instead of u16.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3498 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-15 18:07:49 +00:00
Jake.Stine 1a8dcc5598 ReorderingMTGS: Sync with trunk
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3492 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-15 05:36:38 +00:00
Jake.Stine 2f3452ec25 ReorderingMTGS:
* Make PCSX2 bare minimum reqs include SSE as well as MMX.
 * Minor bugfix which could have affected MTGS performance.
 * Default GIFpath stuff to use SSE opts.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3491 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-15 05:21:26 +00:00
gregory.hainaut 880d182956 [IPU] Revert my stupid fix for the moment. Will work on it later when I have more free time ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3490 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-14 14:54:04 +00:00
gregory.hainaut a18c72489b [IPU] Fix a gcc failure with c+0x standard
Note: What I understand some define use the minus symbol and so gcc does a sign extension on 32bits.
    Not compatible with u16...

To fix it I kept only the first 16bits. We could also redefine the constant without the minus


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3487 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-14 13:22:03 +00:00
sudonim1 240349ea47 IPU: Reference (slow but clear) implementation of yuv2rgb which could also be used as an alternative for SSEless processors, as if we really care about them.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3482 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 23:31:33 +00:00
Jake.Stine d9477ab5f4 ReorderingMTGS: only disable the vsync queue limit is both framelimiting AND vsync are disabled. (ensures no mysterious half-second input lag if some user has a bizarre config)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3479 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 16:36:57 +00:00
Jake.Stine 168a60ad13 ReorderingMTGS: Some cleanups and minor fixes to thread benching.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3478 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 16:34:27 +00:00
arcum42 f6d0222a8c ReorderingMTGS: Hackfix Linux, until some assembly is written.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3476 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 09:28:24 +00:00
gregory.hainaut b326504054 [cmake]
* Major rework of the linker flags. Use some globals flags for -s and -m32
  Add a USER_CMAKE_LD_FLAGS variable. Easier to play with advanced link flags for future gcc version (>=4.5)
* Remove useless stub file
[debian]
* minor dependency fix


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3475 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 09:16:13 +00:00
Jake.Stine 43cd559801 ReorderingMTGS: Templated the GIFPath parsers, to allow for SSE optimizations.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3474 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 05:20:42 +00:00
Jake.Stine 56d3982dc5 * Minor optimization to GIFpath, by utilizing the precached value for numregs in place of a convoluted test against NREG.
* Disabled the SSE store version of memzero (no performance benefits and it was messy anyway)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3473 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-13 04:36:39 +00:00
Jake.Stine 934578c8fe ReorderingMTGS: Added a new optimized memcpy_amd_qwc, for use by GIFpath copies. After much studying, we determined this is about as efficient as memcpy will ever get, for what we're doing with it.
DevNot:  Win32-only at the moment -- needs a GAS port (but that shouldn't be hard).  I made some notes in the code about it.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3472 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-12 19:40:30 +00:00
sudonim1 9600a67ea9 Fix new aligned memcpy (probably, it still hasn't been tested at all) and removed calls to it that were added to test code generation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3469 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-12 04:21:21 +00:00
Jake.Stine 383c58ba3e Added a third alternative for memcpy_vibes. This one uses SSE intrinsics and is able to inline fully (no call/ret overhead).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3468 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-12 04:13:47 +00:00
Jake.Stine a6b3acb5d0 ReorderingMTGS: Minor performance tweak. MTGS was only queuing 1 frame ahead instead of 2.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3467 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-12 04:04:40 +00:00
cottonvibes ee5192abb5 Attempted generated sse memcpy using movaps.
Seems slower than memcpy_amd_ so didn't enable it.

I tried two different versions, one generates 0x400 different functions, and the other generates 1 function and jumps to the correct entry point.
The later seems faster, but still slower than memcpy_amd_...
(only tested the title-screen of GoW though...)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3465 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 15:40:12 +00:00
Jake.Stine ec7e1ed0a1 ReorderingMTGS: Bugfix for possible corruption/crash if a vsync happens at the ends of the ringbuffer.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3464 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 13:23:56 +00:00
gregory.hainaut f0f0cef2d5 [autotool] Remove autotools for *null plugins, CDVDiso, zerospu2. Superseed by cmake & codeblock, no reason to keep them.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3463 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 12:35:36 +00:00
arcum42 472358345a ReorderingMTGS: zzogl-pg: Add GSgifTransfer. pcsx2: Add an include so Linux compiles.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3459 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 06:16:16 +00:00
Jake.Stine a9084741bc ReorderingMTGS:
* Implemented GIFPath_CopyTag, which performs a "copy-in-place" while parsing tags (big speedup over the old parse-then-copy strategy, especially with the SSE intrinsics I've included for kicks).
 * Removed the old ringbuffer 'restart' mechanism and replaced it with a truly free-flowing wrapping mechanism.  Utilizes the ringbuffer more efficiently, and removes quite a bit of overhead from the MTGS's PrepDataPacket call.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/ReorderingMTGS@3458 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 04:53:50 +00:00
cottonvibes b0ec1394d1 microVU: minor changes to list traversing in-case the compiler doesn't already optimize these out.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3453 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-11 03:32:35 +00:00
Jake.Stine 27be444efa GIFpath: Set up incTag to work only in QWC. Required redoing the REGLIST mode handler a bit. This is needed for an in-progress MTGS project I'm in the middle of; so I'm hoping I did it right and don't screw anything up. (someone test Tekken 4 for me)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3451 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-10 14:34:00 +00:00
Jake.Stine dd100a775e UI: Slightly better console log scrolling logic.
DevNote: This is about as user friendly as the log will ever get while using Windows RichText control.  The only way it will ever behave better (notably when draggin scrollbars and such) is if we write a custom read-only log text control that paints itself manually.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3443 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-09 20:10:52 +00:00
Jake.Stine d36bb19612 * Fix for Issue 493 -- non-standard SYSTEM.CNF contents are handled better now.
* Some minor exception/error handling fixes and improvements.

DevNote: the BOOT2 elf loader fix is still a hackfix.  I documented the proper fix for mimicking PS2 BOOT2 parsing, but not in a mood to do the full proper implementation right now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3442 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-09 16:51:48 +00:00
gregory.hainaut 6bd3aa9889 [copyright]
* another bunch of copyright fix.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3439 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-09 15:36:09 +00:00
ramapcsx2 405bd329a3 CDVD:
- More changes to media change detection.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3438 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-09 15:26:34 +00:00
ramapcsx2 04828db091 CDVD:
- Disc swapping should work in most games. It's easy to break though and the code is all over the place :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3435 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 20:40:55 +00:00
ramapcsx2 a213da2346 CDVD:
- First version of a disc swap that actually works. May not work yet. :p
- It's ugly and incomplete but it works in Star Ocean 3. (I blame the heat!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3432 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 18:33:16 +00:00
ramapcsx2 284f1c9f4c Starting some much needed CDVD work. No functional change yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3431 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 17:26:20 +00:00
gregory.hainaut 84d94276e1 [copyright]
* Add missing copyright according issue 792
* Miss few files from the previous commit ^^


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3429 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 16:40:44 +00:00
Jake.Stine 80b92bf529 microVU: minor cleanup using a typedef to eliminate some redundant list.list-> syntax. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3427 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 15:59:52 +00:00
Jake.Stine 8c66bd87ba UI: Saw some other minor mistakes in the console log threading >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3426 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 15:55:02 +00:00
Jake.Stine 972cb2b891 UI: Fix a possible deadlock in the console (was introduced sometime after r3119).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3425 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 14:02:50 +00:00
cottonvibes 2ffebed9de microVU: Minor cleanups.
Note: Why do I use gprT1 instead of eax, or xmmT1 instead of xmm0 directly.
For three reasons:
1) It allows for easily "finding all references" of the gpr/xmm reg within mVU only, as opposed to pcsx2 entirely.
2) It clearly labels the registers for their purpose in mVU.
3) It makes changing of the registers easier if it ever needs to be done.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3424 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-08 07:54:20 +00:00
refraction 8e38cbb5eb Now Area 51 works :P Ok this probably fixes Tekken 4 properly, id missed some bits when moving some of the code over, which would have caused it not to work right, plus my favourite = instead of == slipped in..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3423 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 23:48:01 +00:00
Jake.Stine f9a56afa15 Re-fix for some GCC packed structure bug. Hopefully this version works. It should according to the bug being tracked.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3421 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 20:01:30 +00:00
refraction 7243568e5f GifPath: Fixed Reglist optimization for split transfers, might fix the Tekken 4 hang (if you are experiencing it)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3420 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 19:36:05 +00:00
gregory.hainaut 8864c8bbaf [cmake] Move flags clean in the build modules. Next step allow user to control them.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3416 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 11:08:05 +00:00
sudonim1 9b896dda0d microVU: cosmetic changes to some ptr[] instances for SSE and one less x86 instruction for MFIR.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3414 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 10:16:04 +00:00
arcum42 fc3514107d Work around VU0.code & VU1.code being packed in Linux when freezing memory.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3411 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 09:14:47 +00:00
Jake.Stine ae92387cea * Fix patches, which were broken in r3398 (they weren't being applied).
* Remove some dangerous uses of pxAssume -- pxAssume should only be used for simple in-place operations, and should never call functions (my fault too, I was the one who was using it wrong).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3410 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 07:41:44 +00:00
Jake.Stine 096ec601ad microVU: Missed a couple things from my prev commit, and removed some legacy forceinline stuff (we no longer depend on const-prop to select between VU0 and VU1).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3409 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 07:15:45 +00:00
Jake.Stine 641c3b56cf microVU: avoid making unnecessary copies or instances of xRegister classes. Cuts out overhead which admittedly shouldn't even be there except MSVC 2008's C++ optimizer can't optimize constructors to save its life.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3408 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 06:42:35 +00:00
cottonvibes 3649a9e226 - Working on getting some old code working again which allows comparison between mVU and sVU program results.
- Have the compiler explicitly pack the VU reg structs since we rely on this.
- Various minor changes.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3407 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-07 05:59:25 +00:00
sudonim1 b53a92e019 microVU: converted all code to the new emitter style. If anything breaks, blame the guy below me.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3406 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 20:05:21 +00:00
Jake.Stine a4afe629e5 microVU: Reset rec when buffers cannot grow any larger. (should fix Killzone crashes)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3405 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 19:03:44 +00:00
refraction cf0953d9c0 Commit Spree! Decided to disable the console spam that is FINISH, seems a lot of PATH3 games come victim to it (maybe this is why they've always been such a pain?) so I've disabled the console output
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3404 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 17:59:06 +00:00
refraction 3f819d35e5 Gah better change this, else we could get in to a nasty catch 22 with the FINISH stuff >.<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3403 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 17:54:39 +00:00
refraction 4f374f1609 Potential fix for Guitar Hero 3
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3402 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 17:52:32 +00:00
refraction 857a4d6115 Forgot to do GIF MFIFO :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3401 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 17:25:53 +00:00
refraction b003a3bd47 SIGNAL! Area 51 WORKS! Soul Calibur 3 WORKS! probably broke loads! :P But thats the first time Area 51 has worked in years.
Only kidding, it should be awsome now, Also added a debug message incase some Paths are queued on a FINISH, any broken graphics when this shows up (or failure to load) should be reported asap!

Thanks to jake for his hard work getting signal and my optimizations working :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3400 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 17:25:02 +00:00
Jake.Stine 5a7508d43c * Removed a completely unnecessary use of xSmartJump in the SLT instruction generation
* Reduced the amount of console log spamming when hitting F4/Tab/etc.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3398 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-06 11:48:48 +00:00
Jake.Stine 688674bed9 Emitter: Major refactoring / renaming job. Improved type checking and usefulness of xAddress* (Void, 32, 64, etc) types.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3397 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-05 19:15:19 +00:00
gregory.hainaut 6e30a41931 [asm] * Set a good default GNU-stack note. Need to properly support the nx bits (security concerns)
See http://www.gentoo.org/proj/en/hardened/gnu-stack.xml for details.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3396 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-05 15:56:38 +00:00
Jake.Stine 4f9a5c6876 Remove all MMX and XMM register freeze code.
DevNote: I could have left the code for the freezes in, except I *really* don't want us to ever have to resort to using such a system ever again in the future.  For anything. (its just not safe on modern optimizing compilers)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3392 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-05 01:12:38 +00:00
gregory.hainaut 1394b9e03c [copyright]: * Update copyright to use the new postal address of the Free Software Foundation. Nothing to see.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3391 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 22:49:00 +00:00
Jake.Stine 9feca5f767 * Switch the Confirmation dialogs to use '.' separators instead of ':' separators. The dots don't get escaped in the ini file, so they're much easier on the eyes.
* Remove one more dependency on the old vssprintf code; hoping to remove it soon.  Only thing left now is the r5900 disasm code (which is a monster).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3388 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 11:50:12 +00:00
Jake.Stine d2d6fd2964 in the world of printf, %f uses type (double) internally, not float, so might as well use double to work the math for this log entry. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3387 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 11:33:10 +00:00
Jake.Stine 4352a3927c Fix for broken stack unwinding in the MSVC debugger in and around the EE recompiler. Also sped up debug mode execution a bit by removing some per-block recompiled code overhead that we like almost never use anyway. (it can be re-enabled through the ini for now)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3386 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 11:14:06 +00:00
cottonvibes 28ae87c5f7 microVU: Move exception handler code to beginning of mVU rec execution instead of inside mVUsearchProg.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3384 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 07:33:24 +00:00
cottonvibes 714ea3c94f microVU: Fixed various bugs... fixes "Kingdom Hearts Re Chain of Memories" and possibly other games that were broken with mVU recently...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3383 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-04 06:07:43 +00:00
Jake.Stine c06cb7b121 (speedup!) Add missing flushes to COP0 and COP2 (VUmacro execution calls), and subsequently disable *all* XMM freezes. They aren't needed anymore.
Rationale: Pseudonym did the necessary upgrades to the recompilers a couple months ago prepping us for a day when we would no longer need MMX/XMM register freezes.  All regs are already being flushed on all memory operations, so I added proper flushing to COP0 and COP2 here, and removed XMM freeze/thaw code entirely.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3375 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-02 22:14:35 +00:00
Jake.Stine 362294ab8b * SIGNAL! Pretty sure I got it handled accurately now, minus GIF stalling.
* Re-added a trace log for the GIFtag parse optimization; Fixed some mVU warnings.

DevNotes:
Places where GIF needs stalled and resumed are marked with [TODO]'s.  We also need to add a way for SIGNAL to abort the currently processing GIFtag, which might need a return code added to the callbacks.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3373 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-02 15:32:03 +00:00
arcum42 cab7a894e4 zzogl-pg: Move the logging code to its own file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3366 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-02 09:32:04 +00:00
Jake.Stine ab9f479f70 UI: Fix hangs when hot-swapping GS plugins (which was introduced r3357)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3362 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-01 17:47:47 +00:00
Jake.Stine 5a92dd0895 Fixed another minor bug or two in the optimized GIFtag parser (one relating to curreg management, and the other a minor hack to fix weird behavior only exhibited by the BIOS). Please test extensively.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3359 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-01 16:18:57 +00:00
Jake.Stine 483c6878a4 UI:
* Added more thread checks when closing the program, to avoid occasional crashes or hangs.
 * Close the GS window on shutdown or critical errors.
 * Fixed part of Issue 679 (excessive CDVDiso popup errors)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3357 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-01 15:08:12 +00:00
refraction d7f88d05b2 Fixed up VU1 looping so it works how it did, Rock Band should hopefully work again now. (And Guitar Hero 3, Tony Hawks Project etc)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3355 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-07-01 00:32:06 +00:00
refraction d2838ddc00 Fixed up the optimization disabled in r3353 and should now be safe.
Altered a couple of PATH3 Masking bits again which don't seem to be needed any more.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3354 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 23:21:58 +00:00
Jake.Stine 709fa71a92 Disabled GIFtag optimization added in r3305. Added detailed comments explaining why its not safe. Not totally ruling out the potential to fix and restore it to working order, but am fairly skeptical that it will provide any worthwhile speed gain once its been safe-guarded.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3353 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 12:16:26 +00:00
gregory.hainaut 1cde49455a [pcsx2]: minor clean of a previous patch.
[debian]: * refresh patch and clean
          * fix copyright file


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3352 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 11:18:25 +00:00
Jake.Stine 2a33cd4ffd Minor comment cleanups regarding SIGNAL behavior.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3351 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 03:23:37 +00:00
Jake.Stine 5ad95b28eb UI:
* Fix for Issue 780 (missing uppercase iso extensions in the Open File Dialog).
 * A few minor threading fixes for the GameDB loader to avoid crashes/hangs when closing the emulator immediately as it opens.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3350 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 03:21:59 +00:00
refraction 25887c62ee -Sorted some VIF problems causing unknown vifcmd errors (Enter the Matrix)
-Fixed up some path3 masking stuff, trying a slightly different approach too.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3349 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-30 00:55:22 +00:00
refraction e035209623 Missed a little bit :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3348 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 19:34:44 +00:00
refraction 0c6e6d8274 Modified some recent changes a little, should bring back some more of the performance that was lost recently.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3347 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 19:32:30 +00:00
Jake.Stine 9e3824c9ef Worked on SIGNAL support some more; fixes missing menu geometry in Soul Calibur 3 (devs: see code comments for details).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3346 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 16:43:19 +00:00
Jake.Stine 6d57e15615 * Likely fix for cpuIntsEnabled; I think this is the behavior Ref intended. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3345 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 16:06:12 +00:00
gregory.hainaut f8365215c4 [pcsx2 gui]: For first time wizard panel, use PathDefs::GetDocuments instead of wx GetDocumentsDir (more accurate).
[zzogl]: fix a bad path for snapshot.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3344 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 16:05:54 +00:00
ramapcsx2 fc7fdb5399 Communication error :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3343 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 10:12:56 +00:00
ramapcsx2 16b2fb0639 Patch in something for ref, may cure some issues with super VU.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3342 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 09:58:05 +00:00
Jake.Stine 595e277a87 Crispy christ, I need to remember to wait for the WHOLE solution to rebuild before making commits, no matter how much the wait kills me.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3341 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 04:21:07 +00:00
Jake.Stine b0524d051c More fixes for the evil RuntimeError constructor ambiguity. (gcc compile errors)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3340 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-29 03:59:03 +00:00
Jake.Stine a297b9fe1c This is part 2 of my PAL timings savestate fix, from r3331. Dunno how I missed this one either.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3338 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 21:26:47 +00:00
gregory.hainaut 0a012aec25 [pcsx2]: use a local implementation of GetUserLocalDataDir. Follow the xdg specification for linux.
IMPORTANT NOTE FOR LINUX USER: the "main" pcsx2 configuration is moved from $HOME/.pcsx2 to $XDG_CONFIG_HOME/pcsx2 (or $HOME/.config/pcsx2 if xdg var is not defined).
A first time wizard is expected. Just import you previous settings.

[cmake]: add a missing h file. 


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3336 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 19:46:54 +00:00
Jake.Stine 1c7fc3e176 Mostly-new host exception system (host meaning the C++ / SEH exceptions, not the VM's PS2/MIPS exceptions). Main purpose is to make specifying diagnostic and end-user messages more sane. Secondary goal was to remove the need for C++ multiple and virtual inheritance, which are buggy in MSVC still, and problematic even when they aren't buggy.
I also re-implemented R5900 runtime exception handling for TLB Miss and such (devbuilds only, for now).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3335 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 18:03:54 +00:00
cottonvibes 8ae1e91f7f microVU: Now supports growable rec-cache.
So when a game has reached the cache-limit, mVU allocates more memory unless it has reached it's max limit (100mb for vu1, 50mb for vu0)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3332 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 05:23:59 +00:00
Jake.Stine 87c80d6e2b * Add gRegionMode to the savestates; probably fixing a lot of unstable savestate behavior on PAL games (not sure how it managed to escape -- I explicitly remember adding the region info to the savestate in pcsx2-pg like 2 yrs ago).
* Make the new MTGS register packet during vsync not upload 0xf0->0x100.  This is technically GS internal register space that the GS plugin may update or modify as it processes GIFtags.  Thus, PCSX2 shouldn't touch it.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3331 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 03:09:51 +00:00
Jake.Stine 00ec820198 GameDB: Fix long loading times of the database, by using a very efficient block-based allocation system, and reserving enough memory for about 9500 titles. Also added a thread at startup to load the gamedb in the background while PCSX2 is opening windows and printing to the console.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3330 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-28 03:05:10 +00:00
refraction 4186201f3b Fix for Beyond Good and Evil (maybe Raving Rabids too), added a couple of bits of logging for 8 and 16 bit reads.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3328 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-27 15:34:04 +00:00
ramapcsx2 7dbbaf1c04 Small fix to the ee timing hack.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3325 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-27 12:56:35 +00:00
Jake.Stine b3cd458c78 ... oops. Dunno how that got in there. (fixes God of War, improves SC3 .. though SC3 is still missing quite a bit of geometry for some reason).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3321 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-27 02:57:04 +00:00
Jake.Stine f1fb7810be Correct handling of FINISH events on the GIFpath; the FINISH is not posted until *after* all GIFpaths have been drained (nloop is 0 and EOP is 1). This fixes Ys6 bootup hangs.
Note: I'm reasonably sure this is the correct implementation for FINISH.  There's a *good* chance this could cause regressions in some other games that use PATH3 or other DMA tricks.  This will likely be due to hacks or bugs in the GIF/VIF dma code, and not FINISH.  That is, we've been catering to a broken FINISH tag this entire time -- basically telling games the GS paths are clear when they're not. ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3320 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-27 02:24:00 +00:00
gigaherz 0e6c4377fe I forgot to change one line. Also took the time to set a toggle for this other feature.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3317 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 21:32:02 +00:00
gigaherz f1630170ed Implemented a better "host:" rewrite system, which takes the path of the elf being loaded as the root of the virtual "host:". This is the same behaviour as pc-side ps2link clients. The code could probably be cleaned up a lot or made more configurable, if someone wants to improve it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3316 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 21:17:21 +00:00
Jake.Stine b85be17e04 Revert some changes from r3310 -- I forgot that the GS plugin still needs to manage three separate instances of the GIFpath until the MTGS packet reordering system is finished later. (this was my attempt to try and make this change more baby-stepish but it failed).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3313 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 14:13:34 +00:00
Jake.Stine a1de87206b Temp fix for Soul Calibur 3, possibly most other broken games.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3312 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 13:36:57 +00:00
cottonvibes c1047172c7 microVU: changed vu0 rec-cache to 10mb... seems rachet and clank games need this amount when not using mVU speedhacks (the speedhacks emit less code-gen, so it makes games need less rec-cache amount)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3311 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 07:57:46 +00:00
Jake.Stine 04e89783cd (minor optimization) Let's not even use the GS plugin's Path1 or Path3 parsers anymore. All GIFtags can be sent safely through the GS's hack-free Path2 instead.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3310 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 07:48:16 +00:00
cottonvibes e8f5468491 Increase vu0 dynarec cache to 8mb, fixes constant recompilation problems in Ratchet and Clank...
Thanks to rama for figuring this out.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3309 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-26 07:33:26 +00:00
Jake.Stine c10e47739e git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3308 96395faa-99c1-11dd-bbfe-3dabce05a288 2010-06-26 07:26:43 +00:00
arcum42 06e4ae00b2 pcsx2: A bit of cleanup.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3307 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 23:13:41 +00:00
gigaherz a51aef5152 ioman hle: ps2link host: implementation allows writing files, not just reading. Also it's the only way we have to get binary data out of pcsx2, when running ps2 test apps.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3306 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 20:59:48 +00:00
refraction c59022cc68 - Optimized the ParseTag function a little and made a quick one for delayed PATH1 transfers.
- Also adjusted some internal interrupt timers so they don't interrupt so often (when they don't really need to)

All in all you should have a few extra FPS over revisions following r3274

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3305 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 19:10:05 +00:00
arcum42 93937901c5 pcsx2: Rearrange dmaGetAddr a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3301 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 10:49:20 +00:00
arcum42 26c497ceea pcsx2: Added back a few headers. A non POD-safe argument was fixed. Commented out some unused variables. And added a few helper functions for later.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3300 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 09:18:14 +00:00
cottonvibes 5b16838591 microVU:
- Fixed a possible infinite recursion problem from my last commit (Fixes Dynasty Warriors 4 crashing...)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3299 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 07:40:32 +00:00
cottonvibes 25e63c243d microVU:
- Fixed some logic for flag propagation. Its a 3% speedup in the titlescreen of GoW (68fps vs 66fps).
- Added a new mVU speedhack which should be very safe. Its a 7% speedup over the new code (73fps vs 68fps), so a 10% speedup over the last revision (73fps vs 66fps).

What the speedhack does:
The VUs have 3 separate flags: Status, Mac, and Clip flags.
Due to the VU's pipeline, there can be up to 4 live instances of these flags during emulation.
The tricky part arises when you're recompiling the end of a block (after a branch), then you must predict if another block will need older flag instances.
These can be accurately predicted in all cases except for indirect jumps, because the destination block is unknown at recompile time.
In this case mVU assumes the worst-case scenario, that all flag instances will be needed, so it performs some flag shuffling to prep the flag instances in such a way that the next block can read them nicely.
What the new "Block Hack" does, is it assumes that the old flag instances won't be needed, which eliminates a lot of flag shuffling causing a speedup.

Currently the Block Hack plays it very safe, in the case of the current block ending with an indirect jump, it still assumes the flag instances will be needed for the subsequent block, so it does nothing different there;
The times the speedhack actually does something is when your current block ends with a branch, and then the following block ends with an indirect jump (or similar cases). In these cases it would be very odd for future blocks to care about old flag instances from 2-blocks ago, which is why this speed hack should be very safe.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3298 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 06:28:23 +00:00
Jake.Stine e96dbe443f Major header file house cleaning! Should speed up recompilation times by a few percents.
Linux note: There's a chance as usual that this might break something in Linux because Linux and Windows STL headers have different dependencies.  Namely <algorithm> might still be needed in on some of the PrecompiledHeaders.  If so, just re-add it and commit, and make a note:  // yes GCC really needs this one :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3295 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 02:35:27 +00:00
refraction c18b61f585 Fixed up lemmings, was a condition i never thought about, stupid Path3 masking..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3293 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 00:47:34 +00:00
Jake.Stine 976cb072a0 UI:
* Fix for random crashes when recording movies (F12).  It still doesn't seem 100% stable, but it's a heckuva lot better than before.
 * Log options dialog behavior bugfixes.
 * Cleaned out some old hacks for handling hotkeys from the GS window, and implemented proper use of GSwindow-local hotkey mappings vs. global hotket mappings.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3292 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 20:30:36 +00:00
Jake.Stine e1890f369e * Cmdline: Added warnings when opening settings panels with command line overrides enabled, and force-disable overrides when new settings are manually applied.
* GameDB: Remove the game database from the Settings panel, since it's kinda slow still and it started to drive me nuts.  I haven't added another menu option to open it up yet (it will be in its own dialog), but I will soon.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3290 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 17:39:18 +00:00
Jake.Stine 35b05e3836 * Fixing automatic patch application (again!) -- random crashes could occur on some games due to in-execution recompiler resets when gamefix options were changed by the GameDB.
* Implemented --gamefixes to the command line.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3289 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 16:04:27 +00:00
refraction a481875fb1 Apologies... Monkey problems, I'm sure you understand.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3287 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 15:29:25 +00:00
refraction 01784357db Nothing to see here, i wasn't being lazy in any way shape or form with my awkward ways of testing the emu...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3286 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 15:27:10 +00:00
refraction b911ce1443 Game fixes:
- Batman Returns Issue 709 . 
- Fixed flashing in Sega Superstars Tennis. 
- Clawed back some of the speed loss from the XGKick delays.

Detailed changes:
- CALL Tag DMAs that contain invalid next tag addresses ignore the call (Batman started sending corrupt information from invalid addresses)
- VU1 now flushes any pending transfers if it's trying to send another and doesnt process any packed/list regs
- Batman was checking for OPH to be high, this was a timing thing, something id completely got rid of accidently (same for APATH)
- XGKick will no longer queue if PATH3 is interrupted

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3285 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-24 14:55:57 +00:00
refraction 0db63683a2 Fix the fix that fixes the ffx video fix... fixed :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3283 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 15:18:55 +00:00
refraction 9238bbdcc1 Should solve some off the graphical issues from r3274
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3282 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 13:28:07 +00:00
Jake.Stine 46800c97a0 Add missing GIF Path buffers to the savestate (untested code); buddy commit to the prev version upgrade -- just a few mins late. ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3281 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 12:33:57 +00:00
ramapcsx2 6b4882b828 We had savestate breaking changes, so increase the state version.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3280 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 11:33:17 +00:00
gregory.hainaut 7bfae6a2fa [cmake]
* Add a new header
* Check that libjpeg is installed for zzogl


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3279 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 10:07:18 +00:00
Jake.Stine a2faa60643 Fix for F9 causing errant fullscreen/windowed mode flips.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3278 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 05:33:27 +00:00
Jake.Stine 67ddabd231 Fix patch application, which I broke in r3273. :)
DevNote:  Adding SysForwardDefs.h, which I'm going to use for forward declaring a bunch of PCSX2 classes and other simple dependency-free include content.  This is the SysCore version of AppForwardDefs, and hopefully helps minimize header file hell.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3276 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 01:15:09 +00:00
Jake.Stine d24a15e0f9 Removed the TestOnly parameter on the MTGS packet sender, and replaced it with a direct call to GIFPath_ParseTag. Simpler, more efficient, and avoids constant assertion failures when running PCSX2 in debug mode. :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3275 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-23 01:13:01 +00:00
refraction 26fece9510 Summary of fixes
Games
- Resident Evil Dead Aim flickering graphics fixed.
- Flatout games should now boot everytime (instead of randomly)
- Sega Superstar Tennis flashing fixed
- Destruction Derby graphics fixed (NTSC confirmed, PAL unsure)
- Tenchu Fatal Shadows flickering textures fixed, Issue 748
- Spyro Hero's Tail should boot again, Issue 746

General Info
- General reworking of the GS paths with all paths prioritizing more correctly.
- XGKICK can stall if another GS transfer is in progress
- Major reworking of Path3 masking, could still be combined with normal Path3 transfers, but lets get it working first :P
- Taken in to account a few conditions which could have caused VIF to lock up/crash when stalling on ends.
- Unreversed GIF and SPR and VIF so its the normal way round
- all DMA paths should now resume correctly after being stopped by hardware
- GIF FIFO now actually transfers stuff :P
- VIF CMD's simulated by the length of the interrupts at the end.

Phew, i think that's everything :S

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3274 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 23:10:40 +00:00
Jake.Stine 24ae022a74 Fully implement hash-based database lookup. Fix some bugs that caused startup crashes in previous revisions of mine.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3273 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 18:57:48 +00:00
gregory.hainaut 3d9c63b0f0 [cmake]:
* Print a fatal_error when users do not source the good CMakeLists file.
* Do not search system libraries if the user force the internal libraries


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3269 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 13:30:36 +00:00
arcum42 b8267258bf spu2-x/pcsx2: Fix the path used for wav files. (Hack; I'll fix it properly later.). Add a missing header into the cmake build.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3268 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 12:09:32 +00:00
arcum42 d1818a3400 Fix Linux compilation. (Possibly Windows as well...)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3267 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 10:58:34 +00:00
cottonvibes a5208c4227 microVU: Took me about 5 hours to figure out the problem, but finally fixed the problem with Sly Cooper running at 1 fps with mVU...
The problem was that the game does a branch in a branch delay slot, and mVU wasn't setting some pipeline state variable in this case correctly.
This in turn caused the pipeline state comparison for the block to always be wrong, which meant a new block would always be recompiled whenever this specific block was to be executed.
This ended up happening 1000's of times slowing down the game to 1 fps...


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3266 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 08:56:40 +00:00
Jake.Stine 0941434749 * Fixed fullscreen default-to-on behavior; the bug was caused by wxWidgets being a bit ficle and expecting the window to be Shown prior to being made fullscreen (even though the docs say ShowFullscreen() will show the window itself).
* Much header file cleanup and used forward declarations to remove a lot of excess includes; might help improve build times a wee bit.
 * Preliminary hash-table implementation for the Game database.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3264 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 04:29:24 +00:00
cottonvibes 856968812a Better fix for Dawn of Mana problem; solves the constant recompilation as well.
Basically:
If a block begins with an illegal instruction then don't continue recompiling the block, instead recompile code that prints an error message if block is taken at execution time, and then exit execution if it is.
Dawn of Mana has a conditional branch which leads to a bunch of illegal instructions, but the branch is never really taken at execution time.
The programmer either left this in for debugging, or possibly because real code is swapped in-place of the illegal instructions at a later time.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3263 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-22 03:08:30 +00:00
arcum42 85657682da zzogl-pg: Printing to the console now works. Fixed AA+/-. Misc. pcsx2: Took care of two non-POD safe objects.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3259 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-21 12:03:14 +00:00
Jake.Stine e98ef1a357 ... and I didn't mean to remove the translation keys either... >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3258 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-21 11:43:48 +00:00
gregory.hainaut 0aa69b29ae [cmake]: fix a stupid typo
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3257 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-21 11:29:08 +00:00
gregory.hainaut 3628784ab6 [cmake]
* add some check on libsparsehash
* print more informative message when a depency miss


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3256 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-21 11:05:30 +00:00