PCSX2 Documentation/Google Code svn repository comments archive 3000 to 3499
Revision 3000
- * Added support for up to 24 threads. If you have a cluster server at home,
- enjoy PS2 emulation at 20x normal speed!
- * Added DX11 support. DX11 enabled cards now give a +~40% speedup
- * New SSE-X instructions we invented for PCSX2. Give a +200% speedup even on old
- CPUs.
- * Full 64bit support. If you have 64 bit windows, be prepared for a 300% speed
- up.
- * Implemented new DMAC, so far we have ~15 games that show improvements.
- * Added support for USB-enabled vibrators. Feel the full pleasure of gaming, now
- also with PCSX2!
- * SPU2-X now decodes Dolby Digital 7.1!
- * Please test to find any bugs in the 24-thread code, it's a bit complex so some
- tiny bugs might have crept in.
- ramapcsx2
- Yes people. We were holding off with this awesome new stuff for r3000.
- Enjoy!!!
- pcsx2gu...
- Finally, I show my true coding skills. The last 14 threads gave me some trouble but I made it in the end.
- DX11 was coded yesterday while on a coffee break
- gigaherz
- Wheee!
- shadowladyngemu
- WOW, just wow... really you've surpassed yourself.
- cois...
- hahaha
- ebir...
- im getting literally hundreds of compile errors, this broke everything :(
- iakobo...
- hahahahahah u rock xD and now that coffee u had will be famous among coders!
- kaboo...
- dull pleasure of gaming nice! <3
- Billiard26
- I only get a 35% speed up with my DX11 card. :(
- eliotfur
- It's not the 1st of April, you know... :)
- ramapcsx2
- Speedup depends on you vga card drivers.
- pedrovalentesilvaa
- Can i also play PS3 on pcsx2 guys?
- pcsx2gu...
- >and now that coffee u had will be famous among coders!
- Yes it will be. Imagine I don't drink coffee at all, it was that epic.
- ebirnie, I'm sorry but your system probably has <24 cores or you're using some ancient 32 bit OS which is like ridiculously old these days. I'm afraid you won't be able to use the new PCSX2 power, but you are welcome to try the new usb vibrator support :P
- iakobo...
- oh come on who uses 32 and 64 bit os these days? didnt microsoft release win 14 before a month or so with 512bit support?!
- eliotfur
- Vibrator support is nice, but it has some strange bug... The Vibrator does not stop when I select "Stop emulation" or close PCSX2... I had to unplug both ends of it to turn it off... But when I plugged it again it does not start... You broke my USB-enabled vibrator!!! Damn!..
- ramapcsx2
- That's why svn stuff is marked ALPHA! I'm sorry for your usb vibrator though.
- crushtes...
- Its hard to believe, but with a dx10 card I get a 42-47% speedup. Good job guys! (testing on my uni supercomputer with 342 cpus i can finally play some games full speed).
- drkIIRaziel
- but, will it blend ?
- omegadox
- It will :)
- Wagnar...
- The change in the code is awesome !! cant be cleaner!
- jacol...
- what is this a joke?
- Ami.Mizu...
- jacola24> Was that supposed to be a joke?
- Now I'll go enjoy FFX at 1337 FPS!!11!1!1!!
- necr...
- Sweet! Finally works on my Voodoo
- amberion...
- I'm not getting the speeds I expect to see when running this on my other cluster server. Is there some specific command to enable 24 core support?
- ramapcsx2
- It should be automatic, iirc.
- Ragha...
- To cite Yuna: "Oh poopie."
- Kyrox...
- Did anything actually significant change in this release or is it all just to make people look foolish? =/ If there is any real change would there be a chance that there will be a real changelog on this one?
- ramapcsx2
- It's a joke. Most people chuckled at least, we're sure of that :)
- refraction
- Coming in r3002
- a sense of humor! please feel free to distribute.
- Kyrox...
- I could see that it was a joke. It's pretty obvious. most of it's pretty obvious to anyone who has any idea what those things are and how they've been parodied/made unrealistic. =] I didn't so much mind myself, hopefully it doesn't let too many people down. I was actually hoping there was some realistic change but I guess not. Ah well, thanks for all the real releases, keep up the good work. Looking forward to further releases. Oh, on a side note and a bit OT but the SVN releases for 0.9.7 all seem to make my mouse disappear in the regular PCSX2 window (not the game window) if I suspend the game, is this a known issue?
- helder.r...
- how can i download one of your releases?
- Kyrox...
- Erm, sorry I guess I should be more specific, the problem occurs on Windows 7 64-bit.
- JayOctar...
- LOL, looking at the code changes made me realize how important a few empty spaces in C make in an application. ;p
- ramapcsx2
- It's magic! :D
- jadjkor...
- =D to run on win7 x64, enable all file and execution permissions to all users to the pcsx2 folder
- you know, properties > security tab
- this method even permits install unsigned drivers to win7 x86 & x64.
- cheers to all the PCSX2 team for your unvaluable effort!
- DanrleiS...
- This new release is for operational system 32 ou 64
- tatsuy...
- Oh my god?! Can't wait to try this one.
- wjat....
- Haha... I never expect so many improvements in a single release! Congratulations team developers of PCSX2 and congratulations Bositman (pcsx2guide) by 3000th release.
- wjat....
- @Danrlei Neither! It was done for 32 AND 64! So, it really only works on OS of 98bits! :P
- aou...
- Is this a joke? I do not see any changes in the code....
- weimingzhi
- Lol!
- Autor...
- Nice joke, can't wait for next one with PS3 emulation
- weimingzhi
- congratulations on r3000 anyways btw :)
- ramapcsx2
- We had ps3 emulation planned for this commit, but canned it.
- People would've thought it was fake! xD
- actact9...
- LOL!!!!!!! Im laughing my brains Out loud now, Way to go BOSSMAN nice of you stealing R3000 your the best :p hehehehe
- ntcong.it
- Yup, I don't have DX11 card, don't have Windows and any Ps2 game as well, but speed-up is nice =]
- iakobo...
- is this a new recored for review scores?!!!!
- system.compiler
- :-P
- kittycat...
- Joke or not, but thanks for your hard work guys! It's already over 3000 small and big changes in it!
- cazzac...
- What you did to BackgroundLogo.png is not funny. I still lold though. Congratz on your 3000th.
- andutrache
- Whoa a lot happened while i was away O.o
- I wonder how many people got owned by this ? :)
- +1 from me for the best pun ever, i lold so hard on this it hurts :D
- chuuey
- holy hell... congrats guys :)
- Kaoss...
- good joke .p
- tatsuy...
- Wait so its all fake...? Then what the F was changed besides adding spaces to the code..?
- siavoshs...
- ouch i have been stung
- pcsx2gu...
- Comment by tatsuya46, Today (20 minutes ago)
- Wait so its all fake...? Then what the F was changed besides adding spaces to the code..?
- Yes it's a hoax! We are terribly sorry for making a joke once every 3000 revisions, we will start working hard again immediately for your pleasure! If you were offended, we will offer a full refund of your 0.0 USD you payed for this program!
- marcel.w...
- Magisches Schwein!
- Michael....
- Stop messing around, and tell us what's actually new.
- pcsx2gu...
- Stop being so lazy and look at the diff? I love the military command tone though :D
- The logo is new and shiny.
- JohnnyKi...
- God bless you all pcsx2 team :D Sorry for my bad english , anyway the change is huge , i wish you good luck , looking forward for the 4000th revision :D
- einez...
- lol that was epic! +1 just for the log. :p
- jfre1...
- Not funny
- Dhalai.L...
- OMFG... The SSE-X instruction gives +200% speed on all cpus ??
- Dhalai.L...
- Full 64BIT support ?!?! +300% speed up !??! OMFG. I can't contain myself. I'm gonna faint.
- Dhalai.L...
- By the way who are you Pcsx2guide ??? Bositman ??? Thanks man! You guys.... You guys... You're good !
- Dhalai.L...
- Damn... Is this really a joke ?? I need to know coz I'm gonna change my Win7 to 64bits right now... It's true isn't ??
- spyboy2
- Any Windows that is supported 64bit, that is. To use DX11, get Windows 7, and get ATI 5xxxx series or NVIDIA Geforce 4xx series to use DX11 version.
- Dhalai.L...
- Meh it's a FAKE ! HAHA! Grrrrr..... Ok.. Starting choppin down black chickens for lots of curses. :evil:
- marcel.w...
- Epic LOL! good to see some people in the emu-scene do have humor...
- kirisame...
- It would be nice if they weren't a joke, can't even imagine how pcsx2 will work how fast on my quad core ... with a DX11 fully supported VGA! Well ... It is still pretty to think in that way tho ...
- Keep up the good work dev.! You guys ruined Sony :)
- ramapcsx2
- If anything, we boost interest in a nearly dead console ;)
- platinum...
- lol? like 1000% speedup? :D
- JohnnyKi...
- SO ITS ALL FAKE ? OMG :((
- tetrabass
- You're awesome guys!
- pmct...
- EPIC WIN OP!!!
- Supe...
- I suppose all the lists in this revision's change log is due in future plan, not implemented yet.
- At least the x64 support is invalid, I can't build pcsx2 into 64bit's target in VS2008 while other 64-bit applications can be compiled.
- amberion...
- "I suppose all the lists in this revision's change log is due in future plan, not implemented yet."
- No, I'm reasonably sure there will never be any 24 core support, nor support for USB vibrators. And you can't 'invent' new instruction sets like this fictional SSE-X, since the whole point of SSE and it's different variants is it's hard wired into the CPUS for performance purposes.
- bailacom...
- All the pcsx2 devs would learn from the Dolphin proyect ;)
- paulocon...
- bailacomojuanalacubana, what do you mean?
- Are you saying that Dolphins Team is better than PCSX2 Team?
- Common, wake up! You got here an excellent emulator, madded by free of charge! Coding this think must be really hard (even harder than hearing a politician saying the same promises for 30 all years, and do nothing!)
- Dolphin Team is one team, this one is another, all of them are excellent coders, so why are those ridiculous comments for?
- We should do our part, helping in what we can by reporting bugs, and properly test every oficial release (like reporting if a game works or not) so they can get PCSX2 to the level of Gens (mega Drive emulator) or epcsx or even PCSX (PS1 emulators), that ones emulates almost every single game of their platform! Look at NullDC (dreamcast emulator), it turned open source now too!
- Why? Well, this is just my opinion, but by opening their source, they can find bugs that usually a developer can miss, and even just a simple phrase of a ultra normal user can help in the most remote things to help a dev to make the emulator better (I know, it«s king of House MD talk)!
- We should be thankful for this brilliant team, not saying that they should be like this and that!
- Anyway, congratulations for the R3000!
- Almost fooled me, but the "New SSE-X instructions" killed everything, as i simply thought "it can only be a joke", (scroll down the page and confirms that was a joke but hey, whats the point of working in something if we don't have fun with it =P At least some one has sense of humor! XD).
- shadowladyngemu
- At least some one has sense of humor! XD
- +1
- bailacom...
- To [email protected], don't like my humor?, jajajajaja.
- ok, sorry by my comment, ... but Dolphin don't play with us... at this moment :)
- evolutionrevolution
- Epic, except you guys forgot to do the CUDA code! Do it for r4000 plz! :(
- redshirt...
- Lame!! I love PCSX2 and am looking forward to the next official release, but check-ins like this are Juvenile and do nothing to improve the project.
- jerrymel...
- Dolphin do not do things like this, but is your proyect aniway.
- iakobo...
- still saying stupid things lol. its like some ppl live in a world that everything its taken seriously! xD come on relax and laugh a little (5 min laughing = 1 min of life!!!!!!!!!!!)
- paulocon...
- Lol, let the pcsx2guide have some fun too. Imagine him imagining us reading with our mouth openned almost having a heart attack the modifications and its just a lie LOL
- O well, lets wait to the r4000 to see what happens xp
- And Baila, don't worry, everyone haves it's opinion, i don't point a gun just because you said that xp
- ramapcsx2
- Gee, what a mess :p
- Master...
- lol
- Great humour! And Congratz to the 3000th revision!
- +
- micheles...
- nice i love
- Wagnar...
- Lol can't believe there are some in there trying to say to the Devs what to commit or not.
- Keep the trolls rolling :D
- ShirowSh...
- Loved it. Shame to see so many people going "I have no humor. I demand work on my free product."
- Keep on making yourselves and others happy, in whatever way you choose. =)
- This revision certainly made MY day better. ^.^
- knub12...
- OH REALLY? WOW, I GOTTA CHEcK THIS OUT. :-)))))))))))))) OH SNAP DANG.... IT WORKS OMG. YES. 200x SPEED. PRO. YOU PWN GUYS!!!
- romeo_ca...
- damn it works
Revision 3001
- Get the console title-bar to say "Unknown Game" if the game wasn't found in the
- database...
- iakobo...
- u should be the 3000 :P nice work on the database!
- helder.r...
- great job, you're genius....but how can download this release?
- helder.r...
- or other great releases like this one?
- jadjkor...
- you have to compile it by yourself xD
- helder.r...
- and how do i compile?i am a nerd in informatics...thanks anyway :)
- izido...
- I don't know how to compile....
- Can someone do this to me???
- =D
- Sry for bad english.
- helder.r...
- now even the anonimous fans appears...everybody wants that release...but dont know how, i've already search on google for PCSX2 R3001 but nothing :)
- izido...
- I searched too, but nothing. :(
- kaboo...
- "Nerd is a term, often bearing a derogatory connotation or stereotype, that refers to a person who passionately pursues intellectual activities, technical or scientific endeavours, esoteric knowledge." quote Wikipedia
- @ helder ... so you being a nerd means you are really good with informatics stuff ... so why do you need help?
- anyways... here https://code.google.com/p/pcsx2/wiki/CompilationGuideForWindows
- or just go to the wiki tab and look for compilation guide windows... seriously why doesn't anyone use google anymore or at least watch their surroundings...
- helder.r...
- can anyone upload this release into web and post a link for nerds :) for us to download...please
- kaboo...
- ah for the record I googled with the american google "how to compile pcsx2" without quotation marks...
- kaboo...
- nerd means the exact opposite of what you obviously are thinking it means
- helder.r...
- thanks kaboo you're the man...execuse for the term
- actact9...
- man just save yourself the trouble and Go to EMUCR already they already have it there anyway If cant compile it don't force yourself too you just might give yourself a Headache
- eliotfur
- Nice code:
- return !!curGame;
- I should remember this trick... :)
- Metal.So...
- This is joke again :(
- pcsx2gu...
- Comment by [email protected], Today (15 minutes ago)
- This is joke again :(
- Proof that the vast majority of people who +1 and comment on google code have no idea what they're looking at. You can't tell a diff with some line spaces from a diff with real code...
- eliotfur
- @pcsx2guide:
- Half of them do not even look at diffs on top of the page... The other half do not even know they can look at diffs...
- I think that doubt was caused by my last comment...
- The trick I was telling about is how to make a function to return boolean value about "is some non-boolean var not NULL" not using conditional "if"...
- Metal.So...
- I look at diffs on top page, just after launch r3001 - it with jokes inside, and on shortcuts OMG! :)
- cottonvibes
- @eliotfur
- "I should remember this trick... :)"
- yeh i loved that trick when i first learned it too ^^
- (thats why i like c++ so much, cuz you can do cool stuff like that... you can't do such things in c# or java...)
Revision 3002
- I hate D3D.
- 32-bit depth buffers for D3D9 users if available. Lots of code shuffling for
- reasons I don't even remember. Stuff. Pretty much just the 32-bit depth
- buffers. That's good though, you don't have to envy D3D10 users half as much
- now.
- Metal.So...
- Hopefully this is real revision...
- sudonim1
- Yes it is, as was r3001 and as I sincerely hope r3003 and all revisions to come for a long time will be.
- eliotfur
- I think this one should fix z-fighting issues in FFXII in DX9 mode (and other games as well)... It's really nice to see GSDX-related changes...
- refraction
- eliotfur: Thats the idea ;)
- actact9...
- another big Commit from SUDO Gotta test it right away Hehehe!!!!!!!!!
- does mean DX9 will be as fast as DX10/11 now
- ramapcsx2
- It won't be faster (one single case of slowdown is known, actually, but that one was always an issue anyway).
- The real benefit should be better Z fighting protection for dx9 users.
- shadowladyngemu
- Very nice work, seems to have added some glitches though but the general compatibility should be much higher overall.
- http://img299.imageshack.us/img299/5610/gsdxsvn3003201005141757.jpg
- http://img41.imageshack.us/img41/2893/gsdxsvn2966201005141757.jpg
- Does this make the log-z option useless now? or it's still got some uses?
- sudonim1
- Confirmed shadow hearts issue, the FBA feature needs to be enabled for the glitch to appear.
- sudonim1
- And logz is useless if your graphics card supports 32-bit depth buffers. Because it breaks so many games I automatically disable it in that case.
- shadow0...
- This fixed the issues in D3D9 HW with Amagami, Kimi Kiss and Gakuen Toshi Vara Noir, and other of the more common shadow issues caused by enabling Log-Z (Fu-un Bakumatsu-den/SD Gundam Force - Showdown). However Gunparade Orchestra games still have deep issues on HW, characters are always on top of backgrounds regardless of actual deep.
- sudonim1
- Hmm, well could you make issues for remaining depth problems? I don't intend to look into any specific games in depth until I've got all the fixes I'm working on into svn.
- byan...
- Hi, it seems this update makes using HW AA in DX9 mode will crash the emulator. Is it supposed to disable HW AA in DX9 from now on?
- Regards,
- byan...
- Good thing is it fixes the glitch on the floor like this (Game is Xenosaga III)
- http://dl.dropbox.com/u/231367/gsdx_r2966_glitch%20on%20floor_shadow%20and%20texture%20.jpg
- http://dl.dropbox.com/u/231367/gsdx_r2966%28glitch%20on%20floor%2Cgrey%20shadow%29.jpg
- http://dl.dropbox.com/u/231367/gsdx_r3002andAfter.jpg
- throumba...
- This is a brilliant improvement. The only thing ive seen thats a problem is a slight shadow issue in persona4 where the shadow is missing a bit of color. A thousand times better than seeing messed up shadow triangles all over the place though.
Revision 3003
- There was a slight threading affinity issue with r3000, so we have to revert it
- :p
- eliotfur
- threading affinity, a-ha... :)
- cottonvibes
- Guess pcsx2 wasn't ready for 24 threads ;p
- amberion...
- Or the awesome new art!
- shadowladyngemu
- Awww... I'll miss the SSE-X speedup :/
- pedrovalentesilvaa
- as long as usb-enable vibrator still works...
- ramapcsx2
- Sorry ><
- But you can use the pad still. That one vibrates for real ;)
- Metal.So...
- I happy now, in this revision - these jokes removed :D
- andutrache
- awww just when i got 500 fps in all my games :P
- TOO BAD !!! XD
- hirits...
- XD" this joke let me fun a lot
Revision 3004
- * Added Refresh button to the bios selector.
- * Added some brevity info to the Bios Selector screen during first time wizard.
- * NSIS: Added IsUserAdmin script; not used quite yet (see diff comments)
Revision 3005
- Add "setSettingsDir" export definitions to a few plugins that were missing them.
- Fixes an issue where they could not access their config files in restrained
- PCSX2 installs.
- Fixes issue 686 .
Revision 3006
- Same fix for cdvdGigaherz as the last rev + workaround for ZeroGS so it also
- works in default Vista/Win7 installs.
Revision 3007
- Patches are now part of the game database.
- They can be CRC specific, or just based on the game serial.
- Examples:
- [patches]
- // This patch is loaded regardless of crc
- patch=0,EE,002aa040,word,24020001
- [/patches]
- [patches = 84993903]
- // Patches go here
- // This is only loaded if crc = 84993903
- patch=0,EE,002bc040,word,24020341
- [/patches]
- notes:
- - pcsx2 only loads the first [patches] block that matches the game.
- - The [patches] block based on crc takes priority when pcsx2 searches for
- patches...
- - Everything in-between the patches block gets fed to pcsx2's old patch parser;
- so currently the patch syntax is the same as before...
- - A lot of patches weren't added to the database since they didn't include
- serial codes in their *.pnach files :/
- iakobo...
- nice everything in one place :D i am sure i will like this thing cause it seems way more tidy than before ;)
- weimingzhi
- no... this makes simply copying one or several files to "stupid" users for them to patch something much harder :(
Revision 3008
- Bye-Bye patches folder ;p
- iakobo...
- really nice one :D i just hope now that we will be able to edit the patches easy in the pcsx2 options!
- kittycat...
- The one thing is bothering me is how will we be able to create and _exchange_ new patches/cheats easily? It's now the part of the big file so it might need some 'save this patch as...' extracting option or something like this.
- cottonvibes
- iakoboss7:
- That hasn't been coded yet, but hopefully it will be soon.
- kittycatcat:
- You just have to open the database in a text editor (like notepad), search for the game in the database, then copy-paste the patch.
- Its actually simpler than before since you don't have to create any new files, and know the crc of the game.
- Also the database is not supposed to be used for cheats, so you shouldn't have to be adding patches often.
- We will eventually make a separate cheating system for cheats.
- kittycat...
- Ah! You've dispelled my fears here (because so many people would have a hard time understanding how to seek and extract the part of the text from a file without .txt extension)! Thanks! In this case it looks very sound!
- cottonvibes
- kittycatcat:
- Yes it technically is just a *.txt file ;p
- I didn't keep it as DataBase.txt for 3 reasons:
- 1) To prevent people from deleting it.
- 2) To prevent people who didn't know what they were doing from modifying it.
- 3) Because it looks unprofessional to keep it as *.txt xD
- iakobo...
- @ cottonvibes i hope the separate cheating system will come out with 0.9.7 or u will make me stop at r3006 (or before that) for ever!!!! :( ( i use all the new that comes out hehe)
- cottonvibes
- iakoboss7:
- You can still use the database for cheats for now, but its not what its supposed to be used for :p
- If we implement a real cheat-system, it should be a lot more user-friendly and powerful than patches.
- iakobo...
- cottonvibes:
- at least it seems there are plans for a cheat-system and thats great :D
- well i see u still are doing changes in the database (adding/fixing staff etc) so each time i would probably have to copy over the cheats to the new database right? and also wouldnt that create a problem, even if u finish all the ps2 games list, because new games still come out in ps2 so we would have to do that like for ever? (until that cheat-system ^^) or u have though of something to keep things easy and simple?
- gladiato...
- It could be fine, but seems more complicated to add the patches, since i think that i suppose that there won't anyone in the PCSX2 team that will update the database, or am i wrong?
- Perfect about using game serials instead of CRCs, other thing is using sonyindex since is missed a lot of games (specially pal versions).
- Specially if you consider that people uses the patches not only to avoid emulation issues, but for cheating in most of the cases...
- I see the shape of things to come in the memory card part: looks good, but if i can ask each memory card can be browse in the emulator when that part of the gui will be finished?
- In resume: Positive, but with lots of works to do for what it seems.
- actact9...
- Oh man it happened sooner than I anticipated its gonna take a while converting 30+ patches one by one into this new system
Revision 3009
- added katamari (u) patch...
Revision 3010
- - Added katamari (j) skip video patch.
- - Added description on the patch syntax in the game database header...
- toh...
- how to use skip video patches in new gui?
Revision 3011
- GSdx:
- Get the offset hack working normally again.
- Autor...
- Nice one, but in all games effects still a little bit haigher and a little bit left than it should be
- ramapcsx2
- This hack can't really fix the problem, only shift (offset) it ;)
- The drawback is those extra pixels that get added sometimes.
- There's even worse, like the Persona / FF12 floor glitch..
- emuk...
- Can i raise a question?
- Busin 0: Wizardry Alternative Neo
- GSDX plugin
- HW:The screen has black area
- http://www.heberger-image.fr/data/images/20683_sshot_02.jpeg
- SW:is very slow..
- http://www.heberger-image.fr/data/images/60515_sshot_01.jpeg
- fix it please,thank!
- ramapcsx2
- I don't have the game.
- ramapcsx2
- emukon2:
- Come on, think a second before deciding to do that again!
- Erze...
- [email protected] Problem...
- looks like my Problem at
- https://code.google.com/p/pcsx2/issues/detail?id=620
Revision 3012
- zzogl-pg: Copy all the old zerogs patches that used to be in the patches folder
- into zzogl (minus the FF X ones, as the FFX hack is no longer relevant).
- Commented out right now, because I'm not sure how many of these are even useful
- any more.
- arcum42
- The real challenge on this is that some of these probably *shouldn't* be enabled by default...
Revision 3013
- Fixed the database reader in Linux again (by moving the check into a better
- location). Got rid of some unused Patch code.
- arcum42
- Oops. Left an extra copy of the check in there. I'll get rid of it when I have a chance.
- Not that it matters, since it just won't do anything the second time it's run.
- arcum42
- The extra one is in DataBase_Loader.h, btw...
- cottonvibes
- hmm was the zerogs stuff even being used by zerogs!?
- what was reading g_ZeroGSOptions?
- doesn't seem like anything...
- arcum42
- I noticed that. GSsetGameCRC should have passed both the crc and the options, but it was passing 0 instead of the options. It probably got messed up during one of the major GS revisions.
- All the more reason to test the zerogs options from the plugins carefully; they clearly have not been tested in a while...
Revision 3014
- Left this in accidentally.
Revision 3015
- spu2-x: I'm pretty sure that these lines should have had breaks after them...
- (pointed out by gregory.)
- ramapcsx2
- Terribly sorry ><
- arcum42
- It's an easy mistake...
- (Since gregory keeps poking and prodding at cmake, "contributed by gregory" is getting to be a bit of a theme. And it's one I certainly appreciate...)
- ramapcsx2
- X2 reverb is for pussies anyway, we want AWESOME REVERB always :p
- arcum42
- I suppose we could change the dialog to just give a choice between normal reverb, and awesome reverb. ^_^
- ramapcsx2
- :p
Revision 3016
- NSIS Installer:
- * Added banner image
- * (UAC) Re-enabled forced-admin mode for now
- * Fixed a bug in the vc redist installer.
Revision 3017
- NSIS Installer: disabled the vc-redist check since it's buggy or something, and
- fixed the desktop shortcut link.
- eliotfur
- I feel the new long-waited public release here... :)
- gladiato...
- Just a suggestion, for future svns, can the pcsx2.ini please be created in the pcsx2 folder instead of c:\users\...\pcsx2\ini\ is a little annoying to go there when you got to change things in the ini (and all the svn share the same ini the way it is now).
- pcsx2gu...
- We've done it this way to prevent the *billion* of users who can't run PCSX2 because they don't have admin rights, so it's not going to change
- ramapcsx2
- Hah! We wish it'd be that easy :p
- Enter the idea of protected program files:
- On any normal Vista / Win7 install we do not have write permissions to the install dir.
- If you have admin privileges this doesn't concern you, but it's against Microsofts security idea.
- You can however specify a custom location for PCSX2 in its first time wizard ;)
- gladiato...
- ok. The major issue with the ini is about changing memory cards that i suppose that in the final v097 can be changed in the final gui so it won't be a big issue.
- :)
- Jake.Stine
- Sharing INI files between versions is also (usually) a good thing. Ultimately the command line args will work again and allow you to specify custom ini files to run, via shortcut or third party frontend tool.
Revision 3018
- A few tweaks and additions to the installer.
- Also avoid an issue where the FirstTimeWizard would fail creating some files.
Revision 3019
- Installer:
- Got rid of the redist check. Now the package always installs / repairs in
- unattended mode.
- iakobo...
- but what if someone has the latest with all updates from windows update (and the latest service packs that maybe are newer than yours [cause microsoft release service packs often])? yours it cant be newer and maybe not even the same (cause of the fixes windows update add's)
- Jake.Stine
- It's a strongly versioned DLL. If a newer update of the required version already exists, it stays put.
Revision 3020
- cmake: Some patches from athos and gregory. spu2-x builds in cmake.
Revision 3021
- cmake: Change the way stripping is handled.
- arcum42
- And it took me several minutes not to make bad jokes about this one...
- gigaherz
- Temptation... must not... make stupid joke...
Revision 3022
- cmake: A bunch of 32 bit/64 bit stuff.
- marcos....
- Encountered some errors during compilation maybe this helps:
- CMakeFiles/pcsx2.dir/gui/SysState.cpp.o: In function `gzipReader::gzipReader(wxString const&)':
- SysState.cpp:(.text._ZN10gzipReaderC1ERK8wxString[gzipReader::gzipReader(wxString const&)]+0xfb): undefined reference to `gzbuffer'
- CMakeFiles/pcsx2.dir/ZipTools/thread_gzip.cpp.o: In function `CompressThread_gzip::ExecuteTaskInThread()':
- thread_gzip.cpp:(.text+0xdd2): undefined reference to `gzbuffer'
- collect2: ld returned 1 exit status
- make[2]: *** [bin/pcsx2] Błąd 1
- make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/all] Błąd 2
- make: *** [all] Błąd 2
Revision 3023
- SPU2-X: Fix compilation errors under windows, and remove the /LTCG warnings when
- building Devel targets.
Revision 3024
- - Console TitleBar mentions how much patches were loaded (if no patches loaded
- then it doesn't say anything)
- - Database key searching is no-longer case-sensitive (so for example: [patch =
- A1B2C3D4] is the same as [Patch = a1b2c3d4])
Revision 3025
- If a game doesn't have a serial code (homebrew, demos, etc..), then pcsx2 will
- search for its crc in the database.
- Note: In this case you will set Serial = crc in the database (this should only
- be done when the game doesn't have a real serial code)
Revision 3026
- - Added the rest of the patches thanks to Shadow Lady and Refraction finding
- their serial codes.
- - Fixed a bug in the database_loader omitting the last game in the database...
Revision 3027
- Added back 2 games that were removed from the database due to a bug i had...
Revision 3028
- Add 2 games to the database. Fix a Linux warning (non pod-safe object).
- arcum42
- No, not the same two games...
- gladiato...
- I could provide you more game serials that are not in the database (most of the european or spanish only versions).
- They are not in sonyindex.
- gigaherz
- Feel free to post your listings somewhere, a good place would be an "Issues" entry, and preferably in the same format the database uses, so you save them work.
Revision 3029
- - Added eeRoundMode and vuRoundMode options to the game database (these options
- are only applied if patches are enabled)
- - Rename game database to "GameIndex.dbf"
- iakobo...
- call me stupid but i still dont understand how we are supposed to use the cheats there. ok we have to copy them there. but where? under the game before the "---------"? or at the botom? and each patch should be [patch]patchcode[/patch]? or [patch]patchcode
- patchcode
- patchcode[/patch]? well an example of a random game and a random patch would help allot if possible :)
- kittycat...
- I guess you just have to wait until the cheats are implemented into the new GUI. AFAIK this database is not supposed to be used for cheats (temporal in nature) but for permanent game patches (instead of hardcoding them into the source).
- cottonvibes
- iakoboss7:
- ---------------------------------------------
- Serial = SCUS-97231
- Name = Arc the Lad - Twighlight of the Spirits
- Region = NTSC-U
- Compat = 4
- [patches]
- // You can paste your patches here
- //Skip introVideo(s)
- patch=0,EE,001d7df8,word,24020001
- [/patches]
- ---------------------------------------------
- cottonvibes
- also, note that the [patches] blocks have to be on their own lines or else the database reader won't recognize them correctly.
- cottonvibes
- also patches have to be enabled in pcsx2
- file -> enable patches
- arcum42
- Twighlight?
- jfre1...
- An excellent rpg. Not as good as Arc 1-3 on the ps1 though. Not even remotely close.
- iakobo...
- very thanks i will keep that as a reference :)
- iakobo...
- what about you (the creator) posting a thread of how it works for everyone that is interested? or again u shouldnt cause its svn.... well up to u guys
- laki...
- I'm really thrilled that the emulator is going in this direction where game patches/fixes/settings configurations are stored and applied automatically. It will lead toward such a more user-friendly experience once most of the relevant settings are manage-able by this file and the db is populated with them such that people can just run games without having to hit the forums to find out appropriate settings. I regret that I have only one +1 to give to this change.
- andrea.c...
- my exact thought, lakitu... or lets simply say its a nice step to be an "emulator" :)
Revision 3030
- Since we don't have a proper cheating system in pcsx2 yet, we're going back to
- the pnach system for game cheats.
- This means you can put your cheats in "\cheats\*.pnach" and pcsx2 will read them
- from there.
- Notes:
- I have included some persona 4 cheats as an example in this commit...
- Also note that currently the "Enable Patches" menu item also pertains to cheats
- (as well as database file patches).
- I will add a separate "Enable Cheats" menu item in the future...
- cottonvibes
- So to sum this up:
- Use *.pnach files for cheats for now.
- While the GameIndex.dbf database will be used for game-patches and gamefixes needed to get games working with pcsx2.
- Eventually when we get a good cheat system in pcsx2, we will get rid of the pnach system...
- actact9...
- yay I dont have merge my patches to the Gameindex database anymore TNX Cotton
- azte...
- that's good, i guess, but when teh new memory card will come to make 0.9.7 see the light? - i know it's when it's done ;) - any idea? 1, 3 or 5 months?
- arcum42
- Some of the patches in GameIndex.dbf appear to be cheats, too, so we may want to move a few of them to the cheat file.
- I noticed that the Crazy Taxi entry had "infinite arcade mode", and the Gran Turismo 4 Demo had a Pause & Timelimit counter stop, for example.
- I have to wonder how many of the patches work around issues that are no longer in the emulator, too...
- geo...
- it is amazing that pnach system still exists since 2001 that i first implemented it (shadow)
- gigaherz
- Heh, yeah... I made an XML patch format, but people thought it was too "bothersome" to write XML tags. :(
Revision 3031
- NSIS Installer:
- * Added Visual Studio 2010 Redistributables to the installer package.
- * Added some component descriptions. :)
- * Separated several things into nsh header files for organizational purposes
- Supe...
- You don't have to add Visual Studio 2010 Redistributable Package, just msvcr100.dll and msvcp100.dll is enough for pcsx2 running properly, if compiled from VS2010.
- iakobo...
- still why not added it? future programs will need it sometime so it doesnt hurt it will just do good.
Revision 3032
- Cleanup patch.cpp...
- arcum42
- Except for AddPatch and RemovePatch, all the functions in Patch_Obsolete.h are just for troubleshooting purposes; I think they made it in during the rewrites so we could easily tell if it was parsing the pnach files properly.
- They don't really have to be in there, but it's more convenient to have them there as helper functions if you need to know if pcsx2 actually understood a patch correctly.
Revision 3033
- - Add "Enable Cheats" menu item.
- Enable Cheats means enabling support from the files in "cheats\*.pnach"
- Enable Patches means enabling support for the gamefixes/patches inside the game
- database...
- romulux_...
- Very nice iniative cotton, this whole process you are going through right now realy inspires the sense of a solid and mature emulator.
- Btw, how are you? Did you finish your college? Are you employed as a programmer?
- U guys here at pcsx2 are really capable of many good things, and the comunity apreciates your dedication for this free project !
- cottonvibes
- eh thanks ;p
- haven't finished college yet, and not employed as a programmer yet either xD
- when i finish uni, i'll look into game programming jobs ^^
- kittycat...
- Good luck! Too bad these days it's mostly about being yet another brick in the industry wall (i.e. working for people don't even want to understand the gamers). It's all about money now.
- Ah, sorry, just a random trash from me...
- romulux_...
- Well at least you passed discrete mathematics xD :P
- College seems to never end sometimes, yet other times I really enjoy being a student, except for the fact the exams are around the corner...
Revision 3034
- Here we go again...
Revision 3035
- SPU-X:
- Committing a patch by KrossX3 that should fix the stereo expansion option for
- *most* people.
- Of course on my setup it fails to grab the correct number of speakers, so will
- have to think about it..
- The code is correct though, so it should fix it for some people :p
- KrossX3
- How about an INI option to force the number of speakers?
- ramapcsx2
- Yea, possible :)
Revision 3036
- zzogl-pg: fixed a whole bunch of signed/unsigned warnings in Mem_Transit, and a
- macro redefinition warning.
Revision 3037
- re-enabled USE_HOSTFS, and made it so that it detects when "pcsx2hostfs_ldr.elf"
- is not found, gives an error msg, and then continues loading the elf file
- without hostfs support...
Revision 3038
- Load gamefixes automatically through database! (Note: "Enable Patches" must be
- on)
- So far I've added the tri-ace gamefix to all tri-ace games i know in the
- database.
- The other gamefixes just need to be added to the games in the database (pcsx2
- already has the support to load the other gamefixes)
Revision 3039
- Added a bunch of games to the database to have their gamefixes auto-enabled.
- If you know a game that still needs you to manually select the gamefix in the
- gamefix panel, the please comment (or fill out an issue).
- actact9...
- Good work Cotton are ya plannin on adding what plugins we want to use on the Gamedatabase aswell
- laki...
- Auto-application of gamefixes is a fabulous way to go and I applaud the heck out of it.
- laki...
- Yeah that's a good question too: Is it planned to allow remembering of other per-game settings as well? Like, we all know that certain plugins or speedhacks do/don't work with certain games. To the limited extent that there are "ideal" configs for each game it seems like it would be awesome to have those automatically applied as well.
- romulux_...
- You do realize of course that a complete aplication of patches plus all the "perfect" game settings would require a heck of alot, if not an impossible amount of work and research and feedback and what-not.
- It's just not plausable enough for now, but the gamefixes auto-enable is a really nice touch and implies less headaches for users, thanks for that!
- jfre1...
- And what settings are good today will not always be the case tomorrow
- kva...
- i don't know if I understood lakitu7 well, but je probably meant that configs were savede automaticly to our hdd after game loading. He probably didn't mean to setup all the configs for all games by the pcsx2 team.
- For example if I load a game a then cofigure something, then those configs will be applied automaticly when I'll load the game again.
- It's obvious that the team don'y have time for finding the best config for all games, but if we love a specific game then we could find it ourself. Ther could be one more feature. In config option, ther somwhere could be some option like "send this config to the server". peaople could send their own best configs, of course there could be a comments for machine specs this was used for(processor, win Xp, Win7, dx9 ,dx10 etc).
- Then someone who have problems with settings could connect to some configs database and try some. After loading the game there could be some info that there are configs for this game. Of course first emulator could be setup for internet connection or something.
- Just such an idea.
- kva...
- And sorry for those typos ; [.
Revision 3040
- Remove a handful of export/def warnings from the NULL plugins.
- Jake.Stine
- th old-school "LIBRARY" name specifiers was only ever needed for the ancient mingw (gcc for windows) makefiles, which were murdered in their sleep years ago upon the release of Visual Studio Express.
Revision 3041
- SPU2-X:
- KrossX3 coded user selectable audio expansion (Still Xaudio2 only) support.
- Since the automatic detection fails on some systems, this is the next best
- option.
- Tested and works as expected. Thanks a bunch, KrossX3 ;)
- KrossX3
- Yay! =3
- I guess Issue 499 can be considered fixed now?
- ramapcsx2
- Done :)
- Jake.Stine
- In other news, I guess we should investigate re-fixing the directsound support so that it, too, supports more than stereo; since DSound is once again a viable alternative in Windows7 and (apparently) Vista SP1. We got away from DSound because in early Vista the latency was entirely unacceptable.
- novasaur
- DirectSound doesn't even work properly for me under Windows 7 here...
- PCSX2 (and another emulator named bsnes) displays a message and it just won't output any sound at all with it selected.
- So DirectSound is definitely not an alternative here. XAudio2 seems to be the only option.
- pcsx2gu...
- Dsound works perfectly here under Windows 7 Pro 32bit with an Audigy 1. Your sound card drivers are probably at fault.
- novasaur
- Well it became a problem ever since I upgraded to Windows 7.
- Changing sound cards from a Auzentech X-Fi Prelude to a ASUS Xonar D2X PCI-E didn't do a thing, either (of course that also means changing drivers).
- Maybe it's a problem with x64 Home Premium. I'm not sure.
- Tried searching for days up on this matter & have been unable to find any possible results on resolving.
- KrossX3
- No problem here with DSound either. But I think it would be best to start a forum thread including the error message you get.
- azte...
- welcome to team KrossY3.
Revision 3042
- Add support for changing FPU/VU roundmodes through database...
- cottonvibes
- oh i mean clamp modes'
- (we already had support for roundmodes)
- yujack2...
- even the Log said
- "Game DataBase: Changing VU0/VU1 clamp mode [mode=2]"
- but it didn't take effect at all.
- sorry for my bad English.
- yujack2...
- it seems like only the vuClampMode didn't work,the eeClampMode is fine.
Revision 3043
- Fixed the EE timing hack.
- iakobo...
- good but what exactly was wrong with it and what got fixed?!
- ramapcsx2
- Check the changes if you need to know it exactly ;)
- iakobo...
- mostly i dont understand these things but this one was kinda easy to understand ;)
- Ami.Mizu...
- +1 for fixing a hack lol. A rare sight in the emulator community.
- sunnydra...
- replaced with CHECK_EETIMINGHACK :) i hope this will be not r3000 :)
- im not really understand code of pcsx2 but this changes look like trigger to enable EE hack commands execution via database/emu settings.
Revision 3044
- Get Linux building again.
- Jake.Stine
- You could fix the log message any of the following ways:
- Console.WriteLn("Loading Gamefix: " #gFix);
- Console.WriteLn("Loading Gamefix: %s", #gFix);
- Console.WriteLn(L"Loading Gamefix: %s", wxT(#gFix));
- All of those will return it to single-line behavior (if having everything on a single line is preferred, which I think it is).
- Jake.Stine
- (note that all of those should compile fine in GCC, though of course I could be wrong :p)
- arcum42
- Yeah, any of those will work. It was mainly "L#" not working in macros that was giving me issues with the logging.
- I just happened to throw together a few attempts at the console message that printed garbage, and as I'm getting tired, decided to go with one I knew would work... ^_^
- marcos....
- cmake doesn't compile well since some time, and now have some
- more errors. This is just info for You cause I'm not complaining, :)
- Here's the log:
- Linking CXX executable ../bin/pcsx2
- CMakeFiles/pcsx2.dir/Patch.cpp.o: In function `ApplyPatch(int)':
- Patch.cpp:(.text+0x28a3): undefined reference to `_ApplyPatch(IniPatch*)'
- CMakeFiles/pcsx2.dir/Patch.cpp.o: In function `ApplyCheat(int)':
- Patch.cpp:(.text+0x28f3): undefined reference to `_ApplyPatch(IniPatch*)'
- CMakeFiles/pcsx2.dir/gui/SysState.cpp.o: In function `gzipReader::gzipReader(wxString const&)':
- SysState.cpp:(.text._ZN10gzipReaderC1ERK8wxString[gzipReader::gzipReader(wxString const&)]+0xfb): undefined reference to `gzbuffer'
- CMakeFiles/pcsx2.dir/ZipTools/thread_gzip.cpp.o: In function `CompressThread_gzip::ExecuteTaskInThread()':
- thread_gzip.cpp:(.text+0xdd2): undefined reference to `gzbuffer'
- collect2: ld returned 1 exit status
- make[2]: *** [bin/pcsx2] Błąd 1
- make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/all] Error 2
- make: *** [all] Error 2
- Jake.Stine
- @marcos:
- The gzbuffer errors are because it's a new feature as of zlib 1.2.4. Since Arcum changed linux to use the distro-provided zlib, you need to update to the latest zlib in order to compile (I'll see about adding a version check compiler define or something to get around it).
- The patch-related errors are probably because the addition of Patch_Memory.cpp -- it's likely not added to the cmake lists yet.
- marcos....
- Thank you for the information. :)
Revision 3045
- Add support for EETimingHack through game database.
Revision 3046
- Add the xgkick to f1 2003 in the database. (thanks to omnikam for finding out
- the game needs this)
- weimingzhi
- good :)
- btw, should the EE round mode settings for FF10 and FF12 added to the database as well? (FF10 - Negative, otherwise there are issues in many battles, FF12 - Chop/Zero, otherwise it freezes when using magics)
Revision 3047
- More work on memorycards, and general UI adjustments. Some things with the
- dialogs might be a bit broken-ish. Will finish this up properly soon. :)
- laki...
- Cool, looking forward to completion of the new UI.
- azte...
- good that mc is being worked, 0.9.7 is coming. :D
Revision 3048
- portaudio: minor MSVC project fix; the lib file was being generated outside the
- deps folder.
Revision 3049
- Should fix zlib-related errors in Linux distros that don't have the1.2.4 or
- newer version of zlib installed.
Revision 3050
- Update portaudio to the latest snapshot. It seems to have some improvements on
- sample conversion, WASAPI and ASIO.
Revision 3051
- Quick Linux fixes.
- Jake.Stine
- For future reference, wxT() and _() are not interchangable. wxT is a nop that only serves as a "marker" for gnu GetText, to let translators know the string needs to be translated. Typically it's used in cases where you have a table of strings or something that are later translated manually using calls to wxTranslate().
Revision 3052
- More UI Progress.
- kaboo...
- yay
Revision 3053
- Fixup drk's profiler to work again and also support mVU...
- ramapcsx2
- Well, that was rather quick :p
Revision 3054
- onepad: apply a patch to the ini settings.
- arcum42
- Both this patch and the following are from gregory. This fixes the ini paths if you install somewhere other then the default location.
- arcum42
- In fact, I'll probably be applying several of his patches today...
Revision 3055
- zeropad: patch the ini settings as well.
Revision 3056
- cmake: Update some missing files. Compile Devel by default.
- arcum42
- Oh, and commit a shell script gregory wrote to find missing files in the cmake build. Should make my life a bit easier...
- poisiono...
- I can see how you would :)
- +1 for BASH/SH script (silly fondness)
- And more so on missing-files-update, and the work to keep things from becoming a mess in general :)
Revision 3057
- R5900 recompiler: more compact code generation for QFSRV and PADDSW, removed a
- little redundant code. Big difference in the opening fatal frame fmv for me,
- but this is probably cache related. Don't expect anything.
- Jake.Stine
- I think Fatal Frame and KH2 are some of the only known videos to use that instruction extensively. (it was originally implemented as a way to speed up KH2 vids).
- Jake.Stine
- by "that instruction" I mean QFSRV.
- sudonim1
- Note: this is broken, don't try it. Will fix shortly.
- sudonim1
- ...will fix when I can see what the hell's wrong with it (recPADDSW) (the comment with the trinary operator is wrong, but that's all afaics)
Revision 3058
- I feel empty now.
Revision 3059
- More fixes for my own mess
Revision 3060
- cmake: Fix the default build type. Add some CMakeList files.
Revision 3061
- cmake: commit some cleanup work (done by gregory).
Revision 3062
- cmake: Remove a few unneccessary defines.
Revision 3063
- GSdx:
- Fix the worst memory leaks on emulator suspends.
- actact9...
- WOW another great one RAMA is this the last momory leak gsdx have or is there more
Revision 3064
- Todo List updates! :)
Revision 3065
- Add <> to zlib and bzip includes (matters on Linux)
Revision 3066
- Even more memorycard work! Dialog box is mostly functional now (still missing a
- couple options and refinements) -- WARNING: settings/ini storage has changed.
- If you're using non-default memorycard settings, you'll need to go and edit your
- ini again.
Revision 3067
- GSDx: Free textures that have been in the unused texture pool for a few frames.
- GSDx: Reset device on save state load.
- GSDx: Made GSRenderer::ResetDevice() actually do the main function in its name
- and implemented InvalidateTextureCache(). If anything breaks, it's because of
- this change.
- sudonim1
- Hmm, though I didn't state it this commit is meant to eliminate the big gsdx memory leaks.
- novasaur
- "GSDx: Free textures that have been in the unused texture pool for a few frames."
- Wouldn't this cause some stuttering as the textures will have to be loaded again later on even if the user has a sufficient amount of memory?
- sudonim1
- This has nothing to do with texture caching. The textures in question have already been discarded and are kept around to be used when we require another texture with the same dimensions, pixel format, etc.
Revision 3068
- Reverted r3063 as the last revision obsoleted it and it was causing
- suspend/resume issues with the software renderer, removed an unnecessary
- GSclose() and ResetDevice() call each
- ramapcsx2
- This should take care of most of the resource leakage now.
- pcsx2gu...
- Good job rama and pseudonym, few know how hard it is to debug this stuff ;)
- kaboo...
- seriously I don't know a thing about it sounds almost like a thing for the dev discussion
Revision 3069
- Changed some descriptions.
- evolutionrevolution
- So we're "officially" in Beta now, skipping right from Pre-Alpha to Beta, huh? :p
- Still... it's progress! And progress is good!
- ValDanX
- Pcsx2 on a new level!
- azte...
- good we're somewhat close to release.
Revision 3070
- More user interface work. Moved some of the configuration panels around; just
- to confuse you all. ;)
- ValDanX
- Good work!
- ramapcsx2
- Like it.
Revision 3071
- Linux fix.
Revision 3072
- spu2-x: Some changes to how the ini file writing works in Linux. (still buggy)
- arcum42
- Naturally, I think I figured out the bug right after committing this.
- I wanted to get this out, though, because previous versions were generating a bunch of temp files in ~ and not deleting them.
Revision 3073
- spu2-x: Fix a bug in my last commit.
- arcum42
- The config file gets written when the wxConfig object is deleted, and I forget to delete it after I was done with it...
Revision 3074
- Only complain about not having a bios if we don't have a bios.
- arcum42
- In Linux, at least, if you open the plugin/bios dialog when the plugin panel is chosen, if you then close the dialog without ever going to the bios panel, there is no selection for the bios combo box.
- So it'll complain that you need a bios, even though you may already have one chosen in pcsx2.ini.
- Now it does a sanity check, and if it recalls you having a bios, and that file is still there, it won't complain about it.
- ramapcsx2
- So, ValDanX,
- What is your problem with this revision? :p
- refraction
- Probably cos it doesnt come with a bios if you dont have one ;p
Revision 3075
- spu2-x: Fix another bug in my ini changes, and change MulShr32 again.
- arcum42
- The MulShr32 patch is one of gregory's...
- sudonim1
- I know gcc's bad, but seriously? You have to do that just to make imul work?
- sudonim1
- Furthermore, surely the compiler is smart enough to generate this code itself for (s64)srvcal * mulval >> 32
- sudonim1
- ...not only can both msvc and gcc do this themselves, the msvc version of the function actually generates worse code than the naive version.
- arcum42
- (s64)srvcal * mulval >> 32 was actually my first impulse. But I saw that performance note, and assumed someone along the line had done some benchmarking...
- Gregory noticed the original code was causing problems due to strict aliasing when working on the cmake build for spu2-x. (As it happens, I didn't put any optimizations on the plugin when building the codeblocks project, which was probably why it hadn't been surfacing before then.)
- Since he felt like providing an assembly version, I figured I'd go with it. If that note about performance is wrong, we can definitely go with the KISS principle, though.
Revision 3076
- Changed MulShr32 to a naive implementation, the generated code is fine already.
- Jake.Stine
- On GCC or MSVC? because MSVC 2008 definitely generates a call to _allshr(), which is insanely slow.
- sudonim1
- Both, after discussion we suspect that the _allshr thing was fixed in SP1
- sudonim1
- Okay, the generated code is NOT fine, I just missed the unnecessary work when checking. There seems to be no code that makes msvc generate the obvious asm.
Revision 3077
- SPU2-X:
- Added the Async Mix mode to the configuration dialog.
- Users can select between Timestretch, Async Mix or no sync now.
- There's a warning for the Async mode, as it breaks games that can't cope
- with a variable speed SPU2.
- SVN revision users:
- Please remember to delete your SPU2-X.ini when switching to this revision (to
- clear the Sync mode setting).
- Linux:
- It's missing GTK implementation yes (global vars are already changed though),
- sorry :p
- gladiato...
- At least you tried to change things but sadly i can't notice any change at least in the games with sound issues like Medal of Honor or Tomb Raider games (that got the same sound bug that the most of the sound effects dissappear after a few seconds of playing).
- Do you know if the Tomb Raider games bug is an emulator bug or plugin related?
- Positive anyway since at least is a change...
- ramapcsx2
- Eh, please open a new issue for these problems.
- This commit doesn't even address emulation issues,
- so your comment is more or less spam :p
- gladiato...
- ok, done it = issue 718 .
Revision 3078
- Console log defaults to open/on now in all build types (not just devel/debug).
- Better fix for the bios selector thingie.
- iakobo...
- positive for the bios thingie but negative for the console log. there is no need for it to default to open :P not that i cant close it but it just doesnt need to be there at the start :P
- ramapcsx2
- There is very good reason for the console to be default enabled.
- All our warnings and suggestions go there, so naturally we'd like them
- to be seen.
- iakobo...
- what do you mean about the warnings and suggestions? i only see the pcsx2 information, except if i didnt understand :)
- ramapcsx2
- Whenever there's a problem, we might have a warning print (a printf, Console.Warning, etc) that informs the user.
- Without a console, those go unread and unnoticed.
Revision 3079
- The "Open window settings" button isn't needed anymore.
- iakobo...
- i cant double positive :P
Revision 3080
- DECI2: correct NUL writing for logging to remove garbage
- IOP: Fix return value on ioman.write(1, str) (stdout)
- ramapcsx2
- Nice one. Takes care of those garbled logs :)
Revision 3081
- * Re-implemented memorycard ejection (yay!) -- helps avoid memorycard corruption
- when using savestates on many games (due to them caching memorycard contents).
- * Memorycard settings are now applied on-the-fly (can add/remove/disable memory
- cards in the BIOS browser and it'll act just as if you plugged or unplugged
- cards on a real PS2)
- * Bugfixed memorycard creation dialog; which wasn't creating the memorycards in
- the right place (oops).
- * Removed the CWD option from the first time wizard (was redundant since adding
- the custom location option).
- ramapcsx2
- Great work here :)
- novasaur
- Very nice Jake.
- iakobo...
- something about the custom location option. it always remember the number of the location you previously used to configure the last svn build. so each time it shows that and not the new. like when i was installing r3081 in the custom lcoation it had the location of r3075 that was the last i had configured.
- Erik.O...
- Great work!
- I recognized a bug:
- If you delete a plugin and restart PCSX2 a message pops up and wants to open the plugin panel but it opens the emulation settings.
- refraction
- Was waiting for the return of this :) tis a good day :)
- helder.r...
- i dont know why but when i try to see replays in gt4 it says that data is corruptud, i dont know even if its related with memory cards
- andutrache
- i have a question:
- How can i use a 32 MB memory card ?
- i created it but when i format it in bios it still says 7.998 KB free.
- Must i use some other toll for formatting memcards?
- iakobo...
- ok i found why the thingy i mentioned in my last comment is happening, please look in the picture of the link, so this is happening because the commands in that file never change so it reports the last used and each time you got to change the path yourself (its very easy but i just mention it).
- http://img517.imageshack.us/img517/5982/capturekq.png
Revision 3082
- spu2-x: fix up a gtk implementation of the sync modes.
- ramapcsx2
- Thanks for fixing that :)
- arcum42
- No problem. The way I've got it laid out makes it pretty easy for me to make changes to spu2-x's dialog anyways...
Revision 3083
- spu2-x: rearrange the dialog box a bit.
Revision 3084
- Completed support for various MemoryCard sizes (16, 32, 64 megs cards).
- shadowladyngemu
- Very nice, this one is from last changes but still looking good :P
- http://img709.imageshack.us/img709/6996/89972120.jpg
- woodpeck...
- Very good one, I was wating some revision like this from the very beginning. I pay my respects for you. Congratulations ;D !!!
- shadowladyngemu
- Uhm... seems multi-tap mem cards are sharing the same file tho.
Revision 3085
- NSIS Installer: Preliminary addition of the web installer (needs work, generates
- some errors yet)
Revision 3086
- Fixed a couple bugs in memorycard ejection logic, and a nasty crash bug for
- anyone who had the old CWD mode enabled.
Revision 3087
- Fix bug in multitap memorycard filenames (all multitap cards on each port
- pointed to the same file, woops!), and fix some NTFS redundant re-compression
- silliness during startup when using very large memorycards.
- Note: For the multitap to work, you'll need to remove the existing multitap
- filenames in your pcsx2.ini (or delete the ini completely).
- gladiato...
- I wish that soon you can complete the memory card work, specially the browsing part (that was the best part in latest official beta 1888 that you can choose between the memory cards that was in the same folder and choose whatever you want instead of using the pcsx2.ini to do that).
- Positive anyway since at least you're doing improvements and working in the memory cards.
- :)
- iqmast
- Also dragging one memcard onto the other deletes (maybe overwrites) one of them...
- azte...
- agree with gladiator. :)
Revision 3088
- NSIS Installer: Finished the web installer, and fixed some errors int he full
- installer.
Revision 3089
- NSIS Installer: updated web installer links for Googlecode mirrors on the VC++
- CRT redistributables.
- Jake.Stine
- Downloads for PCSX2 will be posted when its ready. We're still hacking out some various bugs and doing Q/A testing on installers and junk like that. :p
- stakado....
- Thanks for answer, it was common interest :). I am satisfied with svn build.
Revision 3090
- Fix a few copypaste errors that crept into the installer.
- They prevented the uninstall script to register the main files.
- Also added pcsx2hostfs_ldr.elf, as it's enabled and working correctly now.
Revision 3091
- microVU: If the vi reg is modified directly before the branch, then the value
- read by the branch is always the result of the 5th or greater instruction...
- Thanks to genter for helping me figure this out.
- See this:
- http://forums.pcsx2.net/Thread-blog-PS2-VU-Vector-Unit-Documentation-
- Part-1?pid=103928#pid103928
- refraction
- writeback delays on the pipeline are fun arent they? :P Wonder what this fixes..
- ramapcsx2
- Seems to work fine on common games.
- Any special ones to test?
- I take it you don't expect any fixes though?
- cottonvibes
- the game i was hoping this fixed was Champions Return to Arms.
- but it looks like the rest of champion's problems are GS related (i'm not 100% sure, but that's my guess)
- its possible this fixes some other games, but i don't know which.
- look for games that output "branch vi delay" messages to know when the code is being run (msg only shows in devel/debug builds)
- tylergen...
- Something I was thinking about, was what if there was a branch between the branch in question and the 5th or greater instruction. It looks like your analysis only looks at a single basic block, but you might need to look at several consecutive basic blocks.
- keb...
- Champions of Norrath output that vi delay message on the menu and them when you finally control your character
Revision 3092
- IOP: HLE ioman functions for paths starting with host[0-9]*:
- Only open, close, read and lseek implemented for now. Directories are not
- supported for now because of the need to match the dirent structure to the
- loaded ioman version.
- To allow access the host filesystem from homebrew and games, enable the new
- option on the main menu.
- ramapcsx2
- Very nice :)
- arcum42
- Something I was noticing in IopBios.cpp. In the openHLE function, v0's set to -IOP_EMFILE at one point, potentially set to -IOP_EIO, and we also have if (v0 < 0) file->close(); at one point in the function.
- And v0 is a u32, so it can never be less then 0...
- sudonim1
- Good catch, I'll fix that
Revision 3093
- Oops, games should boot again now.
Revision 3094
- Remove the last traces of the hostfs iop module loader.
Revision 3095
- Reload disc info as needed, gets some "codebreaker" ELF which switches to the
- normal boot sequence after a while closer to working.
Revision 3096
- The usual Linux things.
Revision 3097
- Changed how the turbo key works. Now it'll always go to turbo mode, even when
- global frame limit is off.
- (When global frame limit is off, it'll enable it and go to turbo mode then.)
Revision 3098
- I was sure I'd already done this. ELF loading now working in release builds.
Revision 3099
- Fix decision memory for a few dialogs including disc swapping and drag and drop
- loading.
Revision 3100
- wxWidgets/MSW: Applied my custom string/object heap allocators to several more
- wxWidgets containers and types (helps reduce fragmentation and multi-threaded
- contention on the main heap).
Revision 3101
- Database Loader code cleanups: added proper use of "const string&" to the class
- APIs (improves compiler code generation, protects against unwanted or unexpected
- modification of parameter contents). As a result, fixed a potential bug in
- toLower; it was modifying the input string.
Revision 3102
- * Set the PCSX2 event handler queues to use the wxObject allocator (reduces
- heap fragmentation, multithread performance, etc) [MSW/Win32 only]
- * SafeFree() macro changed: Remove null check on calls to free(); should be
- 100% safe as according to wx gurus.
Revision 3103
- Many small memoryleak fixes in PCSX2 (mostly related to newVIF's recompiler) and
- one memoryleak fixed in USBnull. Had to juggle around the initialization/reset
- code for VIF a bit to get it happy. This also removes quite a bit of redundant
- memory allocations and clears when starting/resetting the emulator; expect a
- small speedup on slower machines.
- cottonvibes
- Hmm technically i never planned to implement re-sizable rec-cache with newVif.
- the BlockBuffer() class originally was just a re-sizable buffer class for when i was trying to handle partial-transfers on the newVif interpreter.
- Later on i abandoned the blockbuffer() class for the interpreter, but when i started on the recompiler, i just modded the blockbuffer class to allocate rec-cache instead (HostSys::Munmap() instead of memalloc())
- but i kept the resizing logic even though i never was going to use it ><
- also i think the 0.25mb limit is just the easier-way to manage the rec-cache limit.
- the per-instruction checking is slower and harder to handle.
- although it is potentially safer; but no games end up reaching that limit afaik.
Revision 3104
- ... do the same thing for File_Reader.h as I did for Database_Loader.h in r3101
- (translation: added semi-important C++ redtape syntax).
Revision 3105
- IPU: Typo in threshold alpha for YUV->RGBA conversion. Don't know what games
- use this.
Revision 3106
- Fixed patches/cheats still being applied on game reboot if they have been
- disabled.
Revision 3107
- IPU: include default alpha in SSE code for maybe a small speed gain.
Revision 3108
- IPU: SGN support for IDEC. Again, what uses this I don't know.
Revision 3109
- If any gamefixes are loaded by the db (including roundmode/clamping changes),
- then console titlebar will display [Fixes = n], where n is the number of
- gamefixes loaded.
Revision 3110
- Minor change to wording :p
Revision 3111
- Adds support to PCSX2 for 'SetLogDir' being passed to the plugins; needed for
- proper UAC/user homedir mess (patch by gregory).
- Jake.Stine
- @Arcum : I'll handle updating SPU2-X to use the log dir. Its logging code is a bit of a mess, and I need to get rid of the archaic Unicode converter I hacked in years ago (prior to wx), among other things.
- All other plugins that have logging (GSdx for example doesn't log anything) can be implemented same as gregory's patch, and same as for the SetSettingsDir. If a plugin doesn't have logging, then there's no need to add the function.
- arcum42
- Sounds good. I'm not even sure if the logging code for spu2-x works in Linux.
- I tested the zeropad code. I had to modify it slightly, but it works. I suppose I'd better go and implement it in some of the other plugins. (All the null plugins should have logging, for example, though I think the checkbox for enabling it may be missing in Windows right now...)
Revision 3112
- zeropad: Patch zeropad to use SetLogFolder. (modified from a patch by gregory)
- arcum42
- Modified by one character, that is. Having a path divider between the file name and directory is important...
Revision 3113
- R5900: Made the jump order in branch tests consistent. Very unlikely to impact
- performance in any way.
- ajay.sis...
- hi
Revision 3114
- FWnull, USBnull, and dev9null now use SetLogFolder.
Revision 3115
- SPU2-X: Added preliminary support for SPU2setLogDir(). Should probably be
- tested better, but bleh. I so want to rewrite all of this stuff in a nice wx-
- based cross-platform manner. >_<
- DevNotes: converted some code from wstring to wxString to work a little toward
- cross-platformness. ... and probably broke the Linux build.
- Jake.Stine
- I thought I'd be able to do this without breaking Linux, but the two sides of the code are too inter-twined in weird ways. So I have no clue if it builds or not, nor if it works. >_<
- arcum42
- If it helps, the Linux side of the configuration code is written in cross-platform wxwidget-based code. Though that caused me issues initially, since pcsx2 & spu2-x started fighting over ini files...
Revision 3116
- spu2-x: Slap the Linux port back together a bit.
- ramapcsx2
- Hmm, the windows config.cpp needs
- "extern void CfgReadStr(const TCHAR* Section, const TCHAR* Name, TCHAR* Data, int DataSize, const TCHAR* Default);"
- arcum42
- Codeblocks must have pulled the wrong header file up. Fixed.
- ramapcsx2
- Ty :)
Revision 3117
- Readd a line back in.
- ramapcsx2
- Ty :)
- arcum42
- np.
- Interesting that google code tries to turn "readd" into a link...
Revision 3118
- Removed several legacy items from the bin folder (used in 0.9.6, unneeded for
- 0.9.7's uber-'leet wx-ified user interface design)
Revision 3119
- * Added new 0.9.7 readme and FAQ (located in /bin so to be package-ready)
- * NSIS Installer: Added 09.7 docs to the package, and create shortcut links to
- readme and FAQ.
- * removed old 0.9.6 docs and gnu_gettext.dll (no longer needed in 0.9.7)
- whitez...
- Does this mean we're getting close to release of 0.9.7??? :D
- Jake.Stine
- Oh the suspense! I can feel the traffic on the main news site picking up already, o_O
- Autor...
- Yay!
- azte...
- Yay!x2
- DanteArouet
- Awesome. All this preparation musta been why you guys didn't want idlers on the dev channel ;) (or is that common place? O.o )
- Leonhart...
- Yay!x3
- pedrovalentesilvaa
- Yay! x4
- ramapcsx2
- DanteArouet:
- Yeah, spot on :p
- gigaherz
- Comment by DanteArouet, Yesterday (18 hours ago)
- Awesome. All this preparation musta been why you guys didn't want idlers on the dev channel ;) (or is that common place? O.o )
- ...
- We never want idlers in there, simply because it feels more comfortable if we have some privacy (can talk about whatever without having strangers reading). Nut when there's stuff like this, or the joke in r3000, and if there was people, it would spoil the surprises. :p
- gyoru...
- PCSX2 was featured in EuroGamer!
- http://www.eurogamer.net/articles/ico-and-shadow-of-the-colossus-emulated-in-hd
- iannac...
- yay!x5
Revision 3120
- Removed from GSDX Build (VS2010 side) residues of CG/OpenGL/Glew etc...
- Added in the GSDX Build (VS2010 side) the proper link to the DirectX libraries
- Updated the GSDXGui project to VS2010.
- azte...
- wb feal.
Revision 3121
- New generic Skip MPEG gamefix that lets you skip videos in games to avoid
- hanging.
- This will replace the many sceMpegIsEnd patches we currently have.
- Thanks to pseudonym for coding the recompiler version of this gamefix.
- Essentially what it does is, the EE recompiler finds the pattern of code used to
- check if an MPEG is finished, and then recompiles code to say that it is
- finished.
- This will work for most Videos/FMV's in games, but its possible that some games
- don't use the same library functions for videos so the correct pattern won't be
- detected; and therefore the videos will not be skipped.
- kristel...
- Thanks. It work good for Guilty Gear XX AC+ (SLUS-21847).
- refraction
- Wow, i never actually expected this, nice one peeps :D
Revision 3122
- NSIS Installer:
- * Add the major/minor version number to the generated exe's.
- * Default to using the HEAD revision for all exe's and plugins in the package,
- instead of versioning each one independently.
- * Update instructions readme to mention use of Eclipse as a NSIS editor and
- integrated environment.
Revision 3123
- Added all the katamari games to use the new skipMPEG gamefix in the game
- database.
- The other games in the database that are using skipMPEG patches need to be
- tested to see if they still even need them...
- refraction
- Hmm will that work? i remember it being a bitch making patches for katamari...
- cottonvibes
- refraction:
- any sceMPEGisEnd patch will most-likely work with this.
- i have already tested both Katamari and We Love Katamari with the gamefix and it works for both of them.
- sudonim1
- You can skip video in katamari just by breaking FDEC results in pretty much any way. I played with trying to return the end code early and managed to skip video in katamari even when my code was completely wrong, but few other games liked it.
- Certainly not what I'd call a bitch.
- refraction
- I was talking about from a patch perspective not a screwing the ipu code perspective, you know, a more productive way of getting past stuff in a game? ;) But anyways, i just remembered when i initially made a skip mpeg patch for katamari it didnt work right, thats all.
Revision 3124
- New Docs folder setup: original proprietary docs files are kept in /pcsx2/Docs,
- and distributable PDFs should be generated from them into /bin/docs for
- releases. :)
- Docs are using Word 2000 format, which hopefully will be consistent between Word
- 2003/2007 and OpenOffice (not all devs are Word-enabled).
- (note: FAQ has been converted from rtf to doc, and is currently in a partially-
- reformatted state. I'll finish applying the improved formatting soon)
- shadowladyngemu
- "not all devs are Word-enabled"
- lol :o
Revision 3125
- * Improved conformity of translation tokens.
- * MemoryCard -> memory card (bositman's decree!)
- DevNote: pxE() macro is replaced by many pxE_* macros for specific types of
- message uses. See code comments for pxE_Panel, pxE_Tooltip, etc for details.
Revision 3126
- Print console message when sceMpegIsEnd pattern is found for the Skip-MPEG
- gamefix.
Revision 3127
- ... need to remove a pointless bit of code left over from a wx-related
- copy/paste job.
Revision 3128
- wxWidgets/Win32: Disable a bunch of crap we don't use (and likely never will).
- Saves 150-200k off pcsx2.exe and plugins that link against wx (SPU2-X and ZZogl
- I think).
- qqqq.2...
- thanks...
- but I still got this message,
- ZZOgl still can't using on Windows platform....
- [wx] Failed to load shared library 'D:\PCSX2\plugins\ZZOgl.dll' (error 126: the specified module could not be found.)
- Stream exception: File is not a valid dynamic library.
- File/Object: D:\PCSX2\plugins\ZZOgl.dll
- Some kinda plugin failure: D:\PCSX2\plugins\ZZOgl.dll
- qqqq.2...
- Oops...
- following this thread....
- http://forums.pcsx2.net/Thread-ZZogl-Zero-GS-KOSMOS-fork
- ZZOgl.dll is work!!
- qqqq.2...
- BTW, Issue 701 is still a problem.
- r2932 dialog is OK
- r2933 is BROKEN
- ZZOgl dialog need to be fixed.
Revision 3129
- Little logic error in the HLE ioman code that arcum spotted. (It's in code that
- isn't reachable unless there's a bug in fd allocation so it won't affect
- anything.)
Revision 3130
- PeopsSPU2: Convert to use VC++ shared CRT; so that printf gets properly
- intercepted by the main exe; so that we can get some log info... maybe.
Revision 3131
- PeopsSPU2: Remove framework version info from the project file (seems to cause
- problems on runtime version selection).
- Line...
- Thanks Jake !!! =) Keep it up =D
- I like PeopsSPU2 more than SPUX2, because its sound is more accurate (like real PS2) and it have gaussian interpolation, which gives clear and balanced sound spectre =)
- azte...
- whatta hell happened to Pete that he doesnt update the plugin anymore?
- gigaherz
- Line524,
- Peops SPU2 is anything but accurate. It's so full of hacks it's a wonder it works at all. We used to call that "Pete's magic", cos it doesn't make sense.
- Interoplation-wise, SPU2-X has Hermite interpolation, which is almost as smooth as Cubic, but avoids overshoot, and Catmull-Rom, which is an even better algorithm. Which algorithm gives the best output is almost completely subjective, since some people prefer the noise from Nearest-neighbor interpolation, while others prefer smoother output.
- Jake.Stine
- Yeah I did this so rama could get some info from peops, but it wasn't useful because it turns out Peops' implementation of spu2 looping is so weird and hacky that it's hardly basing its behavior on what the real hardware would.
- Line...
- Well, Pete's plugin is a lot faster, and I like quality of gaussian interpolation. Catmull-Rom interpolatuin from SPU-X2 gives similar sound quality, but it's 20-30% slower than PEOPsSPU2... If someone will optimize SPUX2 plugin (maybe another cpu thread or other magic) it will be SUPER plugin !=) Like EternalSPU from PSOne, which has 100% perfect sound and compatibilty =)
- Anyway, thanks guys for emulation progress !!=)
Revision 3132
- Screwed up my last i18n commit -- forgot that gettext/poedit needs explicit text
- literals to work from, so my pxE_* macros won't work. This version should be
- better.
- Jake.Stine
- woops this also included my temp fix for spu2-x failing on init. Wanted to commit that separately, but googlecode was acting up and threw me off my game.
- DanrleiS...
- please add fix for corretion of graphixs in supervu recompiler, and upgrade quality in general plugins gsdx.
Revision 3133
- Portaudio: sync with portaudio /trunk up to revision 1505 (mostly linux stuff).
- ----
- Revision 1505: wasapi:
- - implemented support of non-Interleaved buffers (paNonInterleaved) for WASAPI
- blocking interface for input and output
- - blocking methods will now use PA sample converters
- Revision 1504: alsa: - releasing memory of non-MMAPed buffer on stream closure
- by Pa_CloseStream
- Revision 1503: alsa:
- - reverted buffer size (2048) hardcoding for non-MMAPed devices to avoid crash
- on wrong buffer size usage (whole area requires more work)
- - optimized non-MMAPed device operation to avoid malloc(memset)/free usage on
- every processing call avoiding significant performance penalty
- Revision 1502: alsa:
- - fixed deadlock in PaAlsaStream_WaitForFrames if device is paused, poll()
- results are now checked for 0 and if 64 times exceeded an error (paTimedOut) is
- returned
- - removed hardcoded low-limit of latency for non-MMAPed devices, it is an
- obligation for user to set an acceptable/desired latency value
- - tuned XRUN recovery sequence for MMAPed devices
- Revision 1501: fixed compile for DirectSound implementation under MSYS, missing
- DSSPEAKER_7POINT1_SURROUND define
Revision 3134
- Also update glew to 1.5.4, and wglext.h to the latest version from
- http://www.opengl.org/registry/api/wglext.h
Revision 3135
- zzogl-pg: fix for issue 701 : screwy config dialogs in win32, caused by
- incorrect 'bool' type on Win32 API CALLBACK functions.
- azte...
- send more of these for us, fixes for issues are always good.
Revision 3136
- Added a little OOP to the CPU detection code, and turned one monolithic cpu
- detection function into several isolated ones (isolated by what general info
- they detect).
Revision 3137
- wxWidgets/msw: Kill off some warnings introduced when I excluded some unused
- packages from the wx lib.
Revision 3138
- SPU2-X: Disable MSVC's SSE2 opts (they suck anyway -- nothing more than a
- novelty option at this point). The SSE2 detection code was causing problems,
- namely perma-hangs when applying settings.
Revision 3139
- * Apply gregory's patch for inconsistent "setLogsDir / SetLogsFolder" usage.
- * Fix slomo hotkey ( issue 725 )
- serban.a...
- what is the hotkey for slowmo i found out that tab is for turbo
- linktoice
- slowmo hotkey: Shift-F4 or Shift-Tab
Revision 3140
- ... and woops. ctrl-c/ctrl-v is a dangerous thing sometimes.
Revision 3141
- Minor fix to memzero function in gcc/linux (mentioned in Issue 577 ); may help
- fix some errant SIGSEGV's with certain optimizations enabled.
Revision 3142
- Revert WinSysExec.cpp change from prev commit; errant unwanted patch part
- slipped in. (would have broken optional enabling of setjmp under windows).
Revision 3143
- Working on a new replacement for pxStaticText, which should hopefully have more
- reliable centering and wrapping behavior. Will finish it up later.
- Jake.Stine
- It's currently used in the Wizard and in one other dialog box (Video Panel, I think). Hopefully when I'm done it'll work well in both linux and win32. I'm not 100% confident in the portability since I'm using Paint events, which are a bit raw in the portability dept, as far as I know.
- In this commit the Wizard looks fine in Win32, with the exception that some of the spacing is still a bit off. That should be fixed soon. Video panel's probably broken-ish looking (will get to that soon). Linux folks, you'll have to let me know if things are broken or not. :)
Revision 3144
- Fix compilation.
Revision 3145
- * First pcsx2 commit of, I hope, a long series ;)
- * Fix link with zlib 3rdparty
- pcsx2gu...
- Welcome to PCSX2 gregory (officially too now :P )
- arcum42
- Glad to have you on the team.
- Oh, and if you want to take ownership of Issue 513 from me, go for it. I figure you've been doing more work on it then me recently anyways... :)
- iakobo...
- welcome ^^ :)
- doodhwal...
- ...and hope for larger than life commits, good luck ;)
- jfre1...
- Welcome to the project team Gregory
- actact9...
- wow ARCUM has a tag team partner now I hope the Linux port move's on faster now
- azte...
- Welcome gregory, may your stay be a nice one, full of fixes for issues and stuff. :P
- gregory....
- Thanks everyone. Let make linux version rocks ;) My goal will be to make pcsx2 more easier to compile and much more linux-distribution friendly.
- refraction
- welcome greg :)
- cottonvibes
- welcome gregory
- Dhalai.L...
- Whoa ! Welcome ! I've never seen an emulator with so many coders !
- No wonder Pcsx2 is the best!
Revision 3146
- * Grunt work :) Use variables to set flags to ease futur modifications
- kaboo...
- almost nobody likes grunt work but someone has to do it so +1 from me ^^
Revision 3147
- * Do not build spu2x unless all dependencies are ok
Revision 3148
- * separate build parameter and selection of plugins into new modules. Add
- comment and status messages
Revision 3149
- * Oups, copy from a wrong file. Restore the value
- Jake.Stine
- Oh, I forgot to mention: when doing commits specific to something like the cmake build system, ttry to remember to prefix/tag it as such in the commit log. Ex:
- "cmake: separate build parameter and selection of plugins into new modules. Add comment and status messages."
- Helps our beta testers/users know at a glance (without having to look at diffs) if it's something they should be concerned with or not; and can sometimes be helpful to devs as a filter, when we're scanning revisions to track down regressions. :)
- gregory....
- In fact I do not know, why I did not do it already :) Good habit tend to go out fast ^^ Thanks for the feedback
Revision 3150
- UI: Switched from the old 'native' text labels to a new custom draw text label
- that should (hopefully!) be a lot better about positioning and wrapping text,
- and fitting to windows and what-not. Also gets rid of my nasty "ideal width"
- hack I originally used to fix-size some of the dialogs.
- Jake.Stine
- Hope this looks ok in Linux! Almost all the dialogs I tested look perfect on Win32. Please let me know if Linux display is garbly.
- ramapcsx2
- Works mostly fine with 104% DPI setting / Win7.
- arcum42
- Mostly looks good on Linux. I do see two issues.
- 1) On the plugin dialog, the GS/Pad/SPU2/etc... labels aren't lined up properly. (It looks like the bottom of the text is where the middle of the text should be).
- 2) The logging dialog needs to be wider; part of the dialog is cut off...
- arcum42
- (The latter might be from a previous revision, thinking about it; I haven't been in that dialog in a bit.)
- Jake.Stine
- ok, thanks. Both issues are easy fixes. I'll sort thwem in a jiff.
- One of the other advantages now, btw, is that linux and win32 text/label behavior will actually be more consistent. I didn't want to make that claim until I actually knew it worked at all on Linux. Now that it does, yay!
- For example, changing font colors and sizes on the old Windows labels is unreliable. It should function better here.
- (note that checkboxes and other "combo" controls still use native labels).
- arcum42
- np; I suspected they would be.
- And yeah, more consistent cross-platform behavior is always good... :)
Revision 3151
- [cmake]:
- * remove the dependency on libportaudiocpp as codeblock. ( issue 721 )
- * Improve build on 64 bit system
- gigaherz
- Yeah we don't use the portaudiocpp wrapper at all.
- david.jennes
- Is there a reason why you don't create/use an 'OptimizationFlags' variable in for example soundtouch and bzip2? For consistency it'd be better to create and use those variables in all the cmake files, even if they sometimes will contain only one flag (or nothing at all?)
- gregory....
- Well, I done this because Devel and release use different flags, so no direct interest of using OptimizationFlags. But your are right for consistency I could add it. Honestly I do not expect people tunning 3rdparty library flags but using instead system library.
- david.jennes
- Well you could always use DevOptimizationFlags and RelOptimizationFlags :-P (or something like that)
- I just mentioned it cause when I checked the diffs, I saw you using the variable in some places and not in others. If at some point down the road you need to change flags for every project you'd only have to change the variables (which is the whole point of you creating these now).
- ramapcsx2
- Might be a good idea to mention now that none of the 3rd party libs take more than 1% of cpu when running games. So it really doesn't matter how compiler optimized they are, at least not for emulation speed.
- And welcome to the team, Gregory :)
- gregory....
- In this case, I will do some cleaning. Better use defaults optimization flags and avoid to trig some strange bug for zero gains.
- david.jennes
- Just for the record, I wasn't complaining about the use of those flags :-P
Revision 3152
- Added Game Database Editor to gui.
- The panel is currently under "Emulation Settings", feel free to move it where-
- ever is appropriate.
- If you have a game loaded the editor will automatically load the game's info, if
- not you can search for the game by typing the serial manually.
- gregory....
- I have some build failure with gcc on linux.
- For fixing the problem, I move toString(const T& value) definition from pcsx2/DataBase_Loader.cpp to pcsx2/DataBase_Loader.h but I do not know if it is the good solution ^^
- cottonvibes
- gregory:
- yeh arcum did that to fix it
- in the future feel free to fix my code that breaks gcc.
- if you're unsure if it'll work with msvc then #ifdef the fix, and then if i see the fix also works on msvc i go ahead and remove the #ifdef code.
- in this specific case, the fix for GCC doesn't work on msvc so we have to keep the code #ifdef'd for now :/
- gregory....
- Although I understand the c++ concept, I am not familiar with the syntax and subtle behavior (pure C is ok). So for the moment I am a bit over-cautious :) So #ifdef is absolutely a good idea.
Revision 3153
- [cmake]
- * Select automatically module (include pcsx2, libutilities&libx86emitter) to
- build based on dependency available.
- * rewrite SearchForStuff. More clean and it will better support mix between
- library and 3rdparty on linux. (see issue 736 )
Revision 3154
- [cmake]
- * Clean 3rdparty flags not used. By default use -Os not needed to make pcsx2
- bigger than it already is.
- Jake.Stine
- Should Soundtouch be compiled without speed optimizations? It is one of the more cpu-consuming portions of SPU2-X, and I can't imagine it affects the size of the DLL much. Though I'm not sure how much of a performance difference the optimizations options make on GCC.
- gregory....
- Well, if I understand correctly the gcc doc. My version has more optimizations :) The previous version use -O3 and -Os and I thinks gcc only take -Os. And Os is superior to O1.
- Gcc doc extract:
- "If you use multiple -O options, with or without level numbers, the last such option is the one that is effective."
- Do not know for soundtouch, but sometimes Os is faster than O3 because it reduce pressure on cache (instruction and TLB). I do not know if is possible to have an accurate benchmark. I will go for what you judge better.
- Looking at the flags, sse2 is not activate. Will probably be faster with it, but it maybe break some code.
- gregory....
- In fact for sse2, depend on how gcc work with multiple march options. Because athlon-xp do not have sse2 contrary to prescott.
Revision 3155
- UI: Fixed a few minor layout bugs in the logging options, and introduced
- pxDialogCreationFlags to get rid of some Constructor Parameter Hell(tm) on
- dialog creation.
Revision 3156
- [cmake]
- * Add missing file
- * Use a default option for FORCE_INTERNAL_SOUNDTOUCH instead of a hardcoded one
- * Some cleaning
Revision 3157
- onepad: Commit some work in progress on onepad's gui. (Currently disabled,
- because I haven't hooked anything up yet.)
- arcum42
- I mainly committed this so that I could revert to it easily, and so I could sync to the current version and fix up Linux.
- I'm basically in process of rewriting the dialog for onepad, so I can rip out all that ugly, glade 2 generated code.
- arcum42
- One of the way you can tell it's a work in progress is things like a struct that only has one field, or commented out code that is straight from spu2-x. :)
Revision 3158
- x86emitter: removed implicit pointer dereferencing on 'indirect' operand types,
- and implicit uptr addressing on ptr[]; avoids some obscure pitfalls and might
- speed up release mode builds (LTCG).
Revision 3159
- Get Linux compiling again.
- ramapcsx2
- Windows doesn't like that :p
- "error C2666: 'operator |' : 3 overloads have similar conversions"
Revision 3160
- Have I ever mentioned how much I hate getting templates to work on both Windows
- and Linux?
- arcum42
- I'm just basically hacking around it for the moment.
- ramapcsx2
- Yeah, that's np. Thanks :)
- Jake.Stine
- It should use wxsFormat() really. std::stringstream is such a pain in the ass, and shit slow too.
- arcum42
- Yeah, I'd rather it took full advantage of wxwidgets...
- cottonvibes
- I hate getting templates to work as well.
- I had to fiddle with that template function for a while before i got it compiling right ><.
- Your change might work with msvc++ as well, but i'll have to try it out and see.
- I didn't use wx functions because database loader is built off std::string.
- The reason is that i started the Database_Loader class on a separate c++ project outside of pcsx2, so it didn't have access to wxWidgets.
- cottonvibes
- oh wait nvm, i had already tried your way and it was giving weird operator overloaded problems with msvc++ for some reason.
- it was getting confused with some wx code which was totally unrelated and it pissed me off that the compiler was giving me that stupid error.
- thats why i had to move the function out of the *.h file in the first place ><
- arcum42
- Yeah, that's the trouble. That's why I had to ifdef it.
- I looked for a way to handle it without ifdefs, but it was looking like that'd involve basically rewriting things till the issue went away, and given that I was already in the middle of rewriting a bunch of onepad's dialog code, and you're still actively working on the code, I figured this'd do for now.
- As far as wxwidgets goes, I can understand why you didn't use it. It just feels like it'd simplify the code a good bit...
Revision 3161
- GSdx: Fix an unfriendly crash when trying to create a device on a machine that
- only supports DX9 when DX10/11 is configured (Think temporary downgrading your
- video card, and then running PCSX2).
Revision 3162
- * Bugfixed some popup dialogs, which would sometimes be too small or empty.
- * Various small cleanups to emitters and microVU's regalloc code (no functional
- changes)
Revision 3163
- onepad: More dialog work. It's starting to get functional, but not totally there
- yet.
- arcum42
- It mostly works. Some of the checkboxes aren't there yet, and the list is acting a bit flaky. And some of the settings don't have code in there to save them yet. It's getting there, though.
Revision 3164
- onepad: Switch to the new dialog code and remove the old code.
- arcum42
- And yes, I did just delete 9 files in the process of redoing this code. :)
- May still be buggy. We'll see...
- arcum42
- Oops. Missed something. I'll fix this in a few minutes.
Revision 3165
- onepad: Fix my last commit. A few minor changes.
Revision 3166
- onepad: Add a modify button.
Revision 3167
- onepad: fix up a few things in the tree code.
Revision 3168
- onepad: various cleanup.
Revision 3169
- [cmake]
- * align cmake flags with codeblock one. (note spu2x may still fail to compile
- with inline problem)
- * Some final cleaning. You must be able to see your reflection now ;)
- iakobo...
- i wanted to ask in the last post you mentioned about the sp2-x but here it is now:
- does this affect the spu2-x of windows version or it only affects the linux version only? or it actually both are 1 so it affects both?
- gregory....
- AFAIK It is only affect linux but it may depends on the gcc version...
Revision 3170
- Polished the app icons up!
- Now we have a 256x256 pixel version for Vista / Windows 7 as well.
- The new 3D icon and most other work on these is by Gigaherz, thanks a bunch for
- it! :)
- iakobo...
- cool :D
- azte...
- congrats on giga for the new icon.
Revision 3171
- UI: Reorganized the Speedhack panel a bit, and added graying out of the new
- static text labels.
- Todo note: The plan is to make the Gamefixes dialog match the new way the
- speedhacks dialog is laid out, with the disable checkbox at the top (in case
- someone wants to try their hand at it!).
- gregory....
- I take it ;)
- Good opportunity to improve my wx skill.
Revision 3172
- Disable LTCG on wxCore, wxAdv, zlib, libjpeg, and the x86Emitter. Slices
- Release mode build times by more than half and shaves 200K- off the .exe size.
- (I really should have done this sooner)
- DEV NOTE: Please leave LTCG enabled on wxBase, since wxString/wxObject and other
- wx-based containers benefit from it considerably.
Revision 3173
- SPU2-X: Remove antiquated use of __fastcall, from a time long ago when I was
- paranoid and overly in-love with fonction prototype red tape. (should fix
- linux/gcc compilation errors).
Revision 3174
- * Declared a local function static. Fix compilation error on gcc/linux. Spu2x is
- now ok
- Jake.Stine
- Yay spu2-x on linux!
- Jake.Stine
- ... and now I just need to convert it to wx! lol
- gregory....
- To be honest there is still one ifdef for 1 inlining for clamp_mix function in Mixer.cpp.
- I try to remove it but it is an epic fails :( Static keyword is not possible because the function is used in one others files (argg.. it is shame, with the mixer.cpp file compile ok).
- gigaherz
- You can always duplicate the function in the other file, it's not something big enough that's worth sharing.
- gregory....
- Yes. Maybe I can also include in the .h file.
Revision 3175
- Fixed probably unused SSE code for the BGTZ/BLTZ instruction family. If it was
- used, this was a serious bug and will probably have caused infinite loops or
- other major emulation errors.
- sudonim1
- Meant BGEZ damn it, not BGTZ.
- sudonim1
- The code's actually reachable to my surprise, so it probably fixes something. Jak and daxter hits it during boot.
- serban.a...
- what do you mean about ratchet?
- sudonim1
- ..........look, I know the games are both 3d platformers with names of the form "someone and sidekick", but how can you possibly mistake them when I wrote the title right there?
- Jake.Stine
- The two titles are so easy to differentiate! I mean, one is like two-syllables and one-syllable. And the other is one-syllable and two-syllables. The differences just... well.. actually that's about the only way I remember they aren't the same.
- cottonvibes
- glad i'm not the only one that gets them confused! xD
- gigaherz
- Pfft.... It's simple: I played Jak&Daxter, I never played Ratchet&Clank (or whatever the name was), so I clearly know which is which.
- serban.a...
- sorry it was like 3 am in the morning and i was exhausted:P
- ramapcsx2
- Lol, nice phenomenon.
- Something in these two titles makes literally everyone confuse them.
- Everyone that didn't actually play them that is :p
Revision 3176
- UI:
- * Major bugfix to the startup/user path settings code (should fix issues some
- people were having when trying to run multiple copies of pcsx2 from different
- folders).
- * Various bugfixes to panel appearances
- * Win32: "stdio" console output now redirects to theVisual Studio Debug Output
- window, since Stdout is generally useless on windows.
- Emulation:
- * Removed the IOP SIF hack since it never did what I was hoping it would do
- anyway.
- iakobo...
- just a small thingy that doesnt show what its gonna create when folders are missing:
- http://img204.imageshack.us/img204/7376/captureal.jpg
- shadowladyngemu
- Not sure if it was this revision but "config > video > window settings" doesn't go to that panel anymore.
- Jake.Stine
- Woops. Will fix that then.
Revision 3177
- * Simple fix. Avoid a segfault with GSnull and GSoutput disabled.
Revision 3178
- UI:
- * Various configuration dialogs remember their positions now. :)
- * AboutBox is fixed, and is now resizable.
- * Fix for Issue 739 : usermode.ini hashes are now case-insensitive on Win32.
- * Likely Fix for Issue 740 : missing text on Linux/GTK. (need confirmation)
- DevNotes:
- * Moved IniInterface.cpp/h to the Utilities lib. Linux makefiles will need to
- be updated. >_<
- azte...
- the first 2 changes in the UI rule, thank you for this Jake.
- gregory....
- Great issue 740 is gone. It will be much easier to work on the interface :)
- However, there is an little issue. The opening of the emulation settings panel is slow as hell. First time I think the application was frozen, it take around 5 seconds to open it.
- Jake.Stine
- Hmm, ok. I noticed that too, wasn't sure if it was just my PC or not. I'll look into the cause.
- Jake.Stine
- Ok found the cause of the slowness. Will try to fix it soon, though my time is limited.
Revision 3179
- Linux compilation fixes.
Revision 3180
- [cmake]
- * Better separation between pcsx2/plugins/3rdparty => no need anymore to
- download everythings :)
- * Drop build dependency on unused libBPM (from soundtouch)
- Jake.Stine
- Is it actually possible when using SVN checkout to ignore checkingout specific folders under /trunk -- or would you need to check out everything individually ie:
- /trunk/pcsx2/
- /trunk/common
- /trunk/bin
- .. etc?
- gregory....
- Arg, I have forgotten this point. AFAIK unfortunately not which is really cumbersome.
- 1/ co each dir and use svn export for single file (like the /trunk/CMakeLists.txt). I use this method for my debian packaging.
- 2/ use sparse checkout (need svn > 1.5), to dl depth 1. Then do svn update on the dirs to retrieve the full depth.
Revision 3181
- Likely fix for 30mb memleaks when loading states and resetting the emu.
- serban.a...
- will test wheni get my hands on the rev:)
Revision 3182
- Actually fix the leak.
Revision 3183
- GSDx: Fix D3D11 leaks. (Completely, forever.)
- ramapcsx2
- Ok, this took us months to track and fix.
- Resource leaks are the worst thing ever :p
- chuuey
- great work ! :)
- ramapcsx2
- Note:
- These are the suspend/resume leaks (or configuring GSdx while a game runs).
- This does not fix runtime "leaks", which are really just excessive ram usage, not memory leaks.
- shadowladyngemu
- Very nice, great work.
- actact9...
- this one deserve some Kudos Great Work
- WilliamS...
- Good~~It`s really a big problem~
- serban.a...
- yep its fixed
Revision 3184
- * UI: Many small fixes for badly sized popups and confirmations.
- * Includes possible fix for Issue 743 (AMD cpu core counts).
- ramapcsx2
- Fix worked :)
Revision 3185
- [pcsx2 ui]: update Game fixes panel to look like speed hack one
- [spu2x]: explain why one inline fail on linux
- [cmake]: Prepare some include directory updates
Revision 3186
- spu2-x: Added a define in to make it easy to disable the decoder code.
- gregory....
- To have a better control from the build system and avoid change the c code.
- Maybe you can use instead #ifndef DISABLE_DECODER
- arcum42
- Yeah, we could do that. Or we could make the build system pass ENABLE_DECODER to enable it, and get rid of the define. ^_^
- This code makes it more likely for me to remember to do some testing with the Decoder disabled, in any case.
- Jake.Stine
- I think the only case where the decoder would ever be used is for using PCSX2 to do playback of DVDs. (ie the BIOS dvd player).
- ramapcsx2
- There's a few games that offer a 5.1 track in their FMV.
- The Xenosagas for example, or some GUST games.
- ramapcsx2
- (Not that it'd be super important to decode and use them anyway.)
Revision 3187
- First draft version for using Cmake.
- gregory....
- Ah interesting ! It is directly put in svn :)
- sunnydra...
- @svn http://sanechka.spb.ru/svnroot/ruslan/zerogs/ [email protected]
- maybe svn co http://sanechka.spb.ru/svnroot/ruslan/zerogs/ zzogl
- ?
- sunnydra...
- with null params
- cmake CMakeLists.txt
- CMake Error: Attempt to add link library "x86emitter" to target "Utilities" which is not built by this project.
- CMake Error at pcsx2/CMakeLists.txt:637 (target_link_libraries):
- Cannot specify link libraries for target "-pthread" which is not built by
- this project.
- but works okay if cmake CMakeLists.txt "-DCMAKE_BUILD_TYPE=Devel"
- gregory....
- Euh. Need more details. Which linux distribution ? Can you paste all message print by cmake. You will need to delete previous cmake run:
- find . -type f -name CMakeCache.txt -exec rm -fr {} \;
- find . -type f -name cmake_install.cmake -exec rm -fr {} \;
- find . -type d -name CMakeFiles -exec rm -fr {} \;
- cmake CMakeLists.txt "-DCMAKE_BUILD_TYPE=Devel" is the default parameter so it must change nothing.
- Are you calling the good cmakefile ie /trunk/CMakeLists.txt ?
- sunnydra...
- this is not error :) just without "-DCMAKE_BUILD_TYPE=XXXX" cmake will complain about x86emitter.. check default options.
- ubuntu 10.04,cmake version 2.8.1
- [email protected]$ cmake CMakeLists.txt
- -- The C compiler identification is GNU
- -- The CXX compiler identification is GNU
- -- Check for working C compiler: /usr/bin/gcc
- -- Check for working C compiler: /usr/bin/gcc -- works
- -- Detecting C compiler ABI info
- -- Detecting C compiler ABI info - done
- -- Check for working CXX compiler: /usr/bin/c++
- -- Check for working CXX compiler: /usr/bin/c++ -- works
- -- Detecting CXX compiler ABI info
- -- Detecting CXX compiler ABI info - done
- -- Disable the stripping by default in build !!!
- -- Use internal version of Soundtouch by default.
- Note: There have been issues in the past with sound quality depending on the version of Soundtouch
- Use -DFORCE_INTERNAL_SOUNDTOUCH=FALSE at your own risk
- -- Found GTK2_GTK: /usr/lib/libgtk-x11-2.0.so
- -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
- -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
- -- Looking for gethostbyname
- -- Looking for gethostbyname - found
- -- Looking for connect
- -- Looking for connect - found
- -- Looking for remove
- -- Looking for remove - found
- -- Looking for shmat
- -- Looking for shmat - found
- -- Looking for IceConnectionNumber in ICE
- -- Looking for IceConnectionNumber in ICE - found
- -- Found X11: /usr/lib/libX11.so
- -- Found ALSA: /usr/lib/libasound.so
- -- Found BZip2: /usr/lib/libbz2.so
- -- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so
- -- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so - found
- -- Looking for include files CMAKE_HAVE_PTHREAD_H
- -- Looking for include files CMAKE_HAVE_PTHREAD_H - found
- -- Looking for pthread_create in pthreads
- -- Looking for pthread_create in pthreads - not found
- -- Looking for pthread_create in pthread
- -- Looking for pthread_create in pthread - found
- -- Found Threads: TRUE
- -- Found wxWidgets: TRUE
- -- Found ZLIB: /usr/lib/libz.so
- -- Could NOT find A52 (missing: A52_LIBRARIES A52_INCLUDE_DIR)
- -- Found Cg: /usr/lib/libCg.so;/usr/lib/libCgGL.so
- -- Could NOT find PortAudio (missing: PORTAUDIO_LIBRARIES PORTAUDIO_INCLUDE_DIR)
- -- Could NOT find SoundTouch (missing: SOUNDTOUCH_LIBRARIES SOUNDTOUCH_INCLUDE_DIR)
- -- Skip build of spu2-x: miss some dependencies
- CMake Error at pcsx2/CMakeLists.txt:631 (add_dependencies):
- add_dependencies called with incorrect number of arguments
- CMake Error: Attempt to add link library "x86emitter" to target "Utilities" which is not built by this project.
- CMake Error at pcsx2/CMakeLists.txt:637 (target_link_libraries):
- Cannot specify link libraries for target "-pthread" which is not built by
- this project.
- gregory....
- Ok thanks, I found the error. I will fix it.
Revision 3188
- Converted the GameDB to use wxWidgets classes.
Revision 3189
- [cmake]:
- * Fix default build option
- * Fix futur soundtouch include path
Revision 3190
- Fixing Linux again.
Revision 3191
- Fix gruesome errors in database loading/saving.
- Jake.Stine
- Ok patches should be working now too, though the database really needs a better way of handling the filtered patches:
- [patches = crc] .. form
- Specifically a second lvalue/rvalue pair would be mighty helpful. I may work on that later, I dunno. I really need to do memorycard stuff first, I guess.
- ramapcsx2
- Fixed the problem :)
Revision 3192
- Refraction found an issue with an MMI op, committing the fix for him.
- serban.a...
- so if might fix something?
- refraction
- might, dont know what tho..
Revision 3193
- GSDx: bug in D3D11 CopyRect, does not affect anything.
- sudonim1
- It turns out the original might be right. It's hard to say. Different versions of the documentation describe this function completely differently.
Revision 3194
- [spu2null, gsnull, padnull]: Use the same configuration interface as others null
- plugins. Drop the glade dependency ^^
Revision 3195
- [gsnull, padnull, spu2null] : remove the deprecated glade interface.
- Note: I updated the codeblock xml to remove the file. It is normaly ok but I do
- not test it (only cmake one^^)
- Jake.Stine
- Yay .. those old glade files were always a clutterbomb. >_<
Revision 3196
- BuildSystem Crap: Prepping MSVC project files for proposed patch in Issue 736 .
Revision 3197
- Preliminary work on commandline implementation.
- zantezuken
- I'd like to give a +1 for that but oh well.. judging by history of PCSX2 - the command line always was broken or worked incorrectly >_>
- No wonder it will happen this time too <_<
- pcsx2gu...
- Wow amazing job encouraging Jake that works on it right now to keep coding it. Some people....
Revision 3198
- zerospu2: Redo the dialog, and get rid of all the crufty Glade 2 files.
- arcum42
- That leaves the cdvd plugins, and Zeropad. Zeropad I don't really feel like redoing the dialog on, because I sort of already did, since I did Onepads dialog.
- arcum42
- Oh, and I moved a bunch of the text to tooltips, which makes the dialog a lot smaller for ZeroSPU2 now.
- icewolfz...
- Error 11 error LNK2001: unresolved external symbol "void __cdecl SysMessage(char const *,...)" ([email protected]@YAXPBDZZ) zerospu2.obj ZeroSPU2
- broke compiling on windows
- line 124 of /trunk/plugins/zerospu2/zerospu2.h
- it doesn't like the const for some reason, removing it allows it to compile.
Revision 3199
- zzogl-pg: Shuffle things around a bit.
Revision 3200
- * Apply a co-patch of Air and me to use linux friendly include path
- [cmake]:
- * Update to use the above patch.
- * Remove a52. Need to use system version.
- * Remove stub file. Append pcsx2 to 3rparty library to ease futur support.
- Important Note: codeblock will probably need some update. (add
- 3rdparty/soundtouch_linux_include in include path)
Revision 3201
- Bring codeblock in sync with the new soundtouch path.
Revision 3202
- Edited wiki page through web user interface.
- gregory....
- Arg... I update the dependency information. And how to report a cmake issue.
Revision 3203
- [spu2null, padnull, gsnull, zzogl]: use the setLogDir API to select the log
- path.
Revision 3204
- ZeroSPU2: Fix compilation errors and warnings under Windows/MSVC.
- ramapcsx2
- Question about ZeroSPU2 / Linux:
- Do you guys have any audio stutter issues?
- It's really bad in Win32, has been for a while.
- arcum42
- It does seem rather choppy now. I haven't really been using it much since porting spu2-x to Linux, so hadn't really noticed...
Revision 3205
- SPU2-X: Fix a small bug with voice volume in linear interpolation mode.
- ramapcsx2
- Nearest interpolation, not linear :p
Revision 3206
- SPU2-X: Fixed Core1 writeback areas; probably fixes quite a few things.
- Details: (0x1800 to 0x1fff were being mis-written to 0x2000->0x2800, roughly).
- ramapcsx2
- Let's hope it affects more than that equalizer in ToD2 :p
- ramapcsx2
- Funny thing about this:
- The PSX version of that game had the exact same bug.
- It also tries to download the generated audio from it's SPU, which didn't work either :p
Revision 3207
- SPU2-X: Woops, missed a writeback.
Revision 3208
- zzogl-pg: A bit of refactoring and debugging code.
Revision 3209
- ZZogl-pg: In the Debug build, downgrade various assertions to log messages.
- arcum42
- Basically, I'd rather that zzogl-pg screams at you then comes grinding to a halt. Assertions are great for situations that should never happen.
- When they actually do happen, often, even, we're probably just better off letting the user know so we can figure out why it's happening and moving on.
Revision 3210
- [debian]:
- * First version of the debian packaging system (only 32bits system)
- * It is highly experimental so do not expect too much...
Revision 3211
- [wiki] : Add some note to build a debian package. For expert user only.
Revision 3212
- Commandline, UI, and Game Database Work:
- * Improved console window behavior during startup and shutdown (also fixes
- minor threading issues)
- * Added better failsafes for avoiding "rouge" pcsx2 processes left behind when
- wxWidgets would fail to "notice" window closures properly.
- * Database loader is now thread-safe and cleans itself up properly on exit.
- * Added some handy enumeration tools for the gamefixes (prep work for making
- them commandline controllable).
- * ... and more prelim commandline work! (actual functional implementations
- coming very soon)
- arcum42
- static __forceinline GamefixId operator--( enumName& src, int ) { enumName orig = src; src = (enumName)((int)src-1); return src; } \
- Shouldn't this return orig, like the function above it?
- Jake.Stine
- Woops.
- kimoki...
- Thank you..
- Looking for Commandline support.
Revision 3213
- Fix console log not opening early enough on startup, and also minor cleanups to
- database loader code (removed File_Reader.h)
- shadowladyngemu
- If you have the console window open but minimized then close PCSX2 next time you open it the console will be on task bar but not visible anywhere. Fixes itself after a few restarts and tick/untick "Show console" so it's not a big problem.
- Older revisions would just forget the window position when you closed when console was minimized.
- Jake.Stine
- Ok, thanks. I'll look into that soon.
- wing...
- Can no longer compile after r3212 on Ubuntu 10.04 32bit, I always get this error:
- [email protected] ~/pcsx2-read-only $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release
- -- Enable the stripping by default in Release build !!!
- -- Use internal version of Soundtouch by default.
- Note: There have been issues in the past with sound quality depending on the version of Soundtouch
- Use -DFORCE_INTERNAL_SOUNDTOUCH=FALSE at your own risk
- -- Configuring done
- CMake Error in pcsx2/CMakeLists.txt:
- Cannot find source file "File_Reader.h". Tried extensions .c .C .c++ .cc
- .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp .hxx .in .txx
- -- Build files have been written to: /home/wingnux/pcsx2-read-only
- Compiling up to r3212 works fine.
Revision 3214
- Remove the AutoDMA buffer hack, using its own allocated space as it's supposed
- to.
- If there's any regression we should look at what CAUSES it, instead of hacking
- it back.
- ramapcsx2
- Seems to work in the 3-4 ADMA using games I tried.
- Anyone remembers any particularly bad cases of ADMA overwriting wrong memory?
Revision 3215
- Silly me for not proofreading the patch BEFORE commiting.
- gigaherz
- Only affected the NEW dmac version of the code. Old dmac would still run fine.
Revision 3216
- I was just reminded savestates do exist, and my changes make current states
- incompatible.
- coolraju...
- Breaking save-state compatibility for such a small change is a but harsh but well it had to be broken someday.
Revision 3217
- SPU2-X: Experimental Reverb engine changes. Since I don't have any game that
- shows any obvious reverb usage, and I can't properly test this, I'll leave it
- here and let other people yell at me later if it makes any game noisy.
- azte...
- what games use this?
- ramapcsx2
- Nearly all games do, and it's very tricky to get right.
- azte...
- i see, i asked because giga's post made me understand only a few selected games use it. ;)
Revision 3218
- SPU2-X: Some changes to make debugging easier.
- -ADMA can now be logged undependable from DMA.
- -Visual core activity display works again.
- gregory....
- One litte question. The callback DebugProc (PS2E-spu2) seems to be windows specific (or at least only working on windows). For example I only saw HWND type in windows file. I could ifdef it but will not be better to move it in a windows file ?
Revision 3219
- SPU2-X: Small fix for bad resets.
- l4zyf1sh
- Seems that one of the last 3 revisions makes Disgaea randomly repeat character sounds during battle. It repeats sounds that were played at least once.
Revision 3220
- UI:
- * Added 3-state checkbox support to pxCheckBox.
- * Fixed some buggy behavior when closing PCSX2 with either main window or
- console window minimized (window positions would get screwy)
- DevNotes:
- * Moved ImplementEnumOperators macro to Common headers and improved it a bit.
Revision 3221
- ... missed a file >_<
Revision 3222
- [cmake] * Remove a previous delete file
- wing...
- THANK YOU VERY MUCH!!! =)
- Now I can build it again on Ubuntu!
- gregory....
- No problem. However if I'm correct, the spu2x have also some compilation error for the moment.
- wing...
- It does and it's probably related to the outdated libsoundtouch (1.3 when pcsx2 uses 1.5). I'm installing gentoo on a virtual machine to try building pcsx2 there.
- gregory....
- I do not thinks it is related. Well, libsoundtouch is also provided by pcsx2 (look at 3rdparty repository). Call cmake with -DFORCE_INTERNAL_SOUNDTOUCH=TRUE to compile with it. It is the default in the standard cmake build.
- gregory....
- the spu2x problem is some windows code in middle of common file (change 3218). So gcc is not happy.
- wing...
- Thank you very much! I'm gonna read about the latest updates to the source code and build it with cmake. Thanks for all your help towards the linux build =)
Revision 3223
- GameDatabase / Patches:
- * Made all database key comparisons case-insensitive, so that "patches" and
- "Patches" both work as expected, etc.
- * Applied patches should be remembered properly now when using suspend/resume
- and savestates (hopefully -- didn't test savestates yet).
- DevNotes:
- * Reorganized all game database code into a generic interface used by the
- emulation core (IGameDatabase), and app-side implementation (AppGameDatabase)
- that loads the files and provides info in a thread-safe manner.
- shadowladyngemu
- Gamefix patches working fine now, however there's a problem with the Tab key to enable/disable turbo (doesn't change the FPS limit on games with patches).
- Here's log with FFX for example (no change on FPS):
- (FrameLimiter) Turbo DISABLED.
- (GameDB) Enabled Gamefix: IpuWaitHack
- Issuing EE/iR5900-32 Recompiler Reset
- (FrameLimiter) Turbo ENABLED.
- (GameDB) Enabled Gamefix: IpuWaitHack
- Issuing EE/iR5900-32 Recompiler Reset
- Here with another game that doesn't have patches (FPS changes on Tab key pressed):
- (FrameLimiter) Turbo DISABLED.
- (UpdateVSyncRate) FPS Limit Changed : 59,94 fps
- (FrameLimiter) Turbo ENABLED.
- (UpdateVSyncRate) FPS Limit Changed : 119,88 fps
- shadowladyngemu
- F4 to enable/disabl limit works, it's only the Tab key.
- Jake.Stine
- Ok, should be fixed soon.
Revision 3224
- SPU2-X: Voices used for modulation are not supposed to be played out loud. The
- actual modulation could still be wrong, but at least it will avoid annoying
- sounds to be played (e.g. Romancing SaGa main menu).
Revision 3225
- Linux fix.
Revision 3226
- UI: TAB should be remembered now on games that use patches. Improved and
- simplified some threading logic, and streamlined the vsync handlers a wee bit
- (they don't really matter for performance, but no point in being sloppy about
- them either).
Revision 3227
- SPU2-X: Reverb tweaks. Still shooting in the dark, so no promises on if this
- helps or hurts. -_-
Revision 3228
- SPU2-X: Comment gigaherz hack better and disable it by default. (doesn't seem
- to make much of a diff either way though)
Revision 3229
- Fix Linux (x2).
Revision 3230
- zzogl-pg: Some refactoring, a bit of work on logging. Some disabled stuff I was
- fiddling with.
- Zeydl...
- DrawTriangle should be DrawTriangleArray -- it draw all triangles that form a "stip": first one have vertex 1,2,3, second 2,3,4, third 3,4,5 etc.
- arcum42
- Yeah, that's probably a better name.
- I'm essentially learning bits and pieces of openGL as I go along. I'm really just going to have to sit down and work my way through a few openGL tutorials at some point...
Revision 3231
- zzogl-pg: If ZZOgl automatically turns a game hack on, it shouldn't leave it on.
- arcum42
- Of course, now if a gamefix turns on an option you already had set, it'll forget about that option. Usually if it's turned on automatically, it's not something you want on normally anyways, though.
- icewolfz...
- Error 2 error C2039: 'setfullscreen' : is not a member of 'GSconf' GSmain.cpp 816 ZZOgl
- should be setFullscreen:
- conf.setFullscreen(false);
- arcum42
- I'll take care of it. I'm still actively revising that section of code right now, anyways....
- arcum42
- In fact, the Windows port may break for a few revisions, because I'm pulling things apart on the Linux side, and will have to match it on the windows side afterwards.
- arcum42
- Well, ok, one revision, and 58 minutes. :)
Revision 3232
- zzogl-pg: Revamp configuration code. (Likely breaks Windows. I'll take care of
- that. Also, you may need to reset a few settings in ZZOgl after this commit...
- arcum42
- ).
- arcum42
- I'm working on fixing the Windows port right now...
Revision 3233
- zzogl-pg: Fix the Windows port back up.
Revision 3234
- SPU2-X:
- We're free to put the ESA wherever we want. So let's use an area that makes the
- game Ys not die. :p
Revision 3235
- spu2-x: Get Spu2-X compiling in Linux again.
- ramapcsx2
- Sigh, didn't know, didn't check. Thanks for taking care of it :p
- arcum42
- No problem. I mainly noticed it because gregory and wingnux were talking about spu2-x compilation issues in Linux in another revision. I hadn't recompiled spu2-x in a few versions, so hadn't seen it...
- And, yeah, as a general rule, any code with HWND in it is going to be Windows only. ^_^
- wing...
- Thanks for the fix, arcum!
- Btw, I can no longer build the latest svn on Ubuntu 10.04 32bit:
- [ 21%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/wxGuiTools.cpp.o
- [ 21%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/wxHelpers.cpp.o
- [ 21%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/x86/MemcpyFast.S.o
- Linking CXX static library libUtilities.a
- [ 21%] Built target Utilities
- make: *** [all] Error 2
- Gonna try some older revisions to check where things broke.
- wing...
- Oh, and spu2-x builds fine, btw! Thanks again for the fix!
- "Linking CXX shared library ../../../bin/plugins/libspu2x.so
- [100%] Built target spu2x"
- arcum42
- No problem. I suspect the fix for the other issue will be gregory's, though, since it builds fine in Codeblocks, and greg's the one that primarily working on the make side...
- gregory....
- Hum stange, 3233 is fine on my PC (at least it compile ok).
- gregory....
- wingnux, can you print all error messages and your cmake command. Thanks.
- wing...
- Current svn:
- [email protected] ~/pcsx2-read-only $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE
- -- Enable the stripping by default in Release build !!!
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only
- [email protected] ~/pcsx2-read-only $ make -j3 pcsx2
- [ 0%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/3dnow.cpp.o
- [ 0%] Building CXX object tools/bin2cpp/CMakeFiles/bin2cpp.dir/bin2cpp.cpp.o
- [ 11%] Built target Utilities
- [ 11%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/cpudetect.cpp.o
- Linking CXX executable ../bin/bin2cpp
- [ 11%] Built target bin2cpp
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/fpu.cpp.o
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/groups.cpp.o
- Bin2CPP Output > AppIcon16.h
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/jmp.cpp.o
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy.cpp.o
- [ 14%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy_sse.cpp.o
- Bin2CPP Output > AppIcon32.h
- Bin2CPP Output > AppIcon64.h
- Bin2CPP Output > BackgroundLogo.h
- Bin2CPP Output > ButtonIcon_Camera.h
- Bin2CPP Output > ConfigIcon_Cpu.h
- Bin2CPP Output > ConfigIcon_Gamefixes.h
- Bin2CPP Output > ConfigIcon_MemoryCard.h
- Bin2CPP Output > ConfigIcon_Paths.h
- [ 14%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/LnxCpuDetect.cpp.o
- Bin2CPP Output > ConfigIcon_Plugins.h
- Bin2CPP Output > ConfigIcon_Speedhacks.h
- Bin2CPP Output > ConfigIcon_Video.h
- Bin2CPP Output > Dualshock.h
- [ 14%] Built target Resources
- [ 14%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/movs.cpp.o
- [ 16%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/PrecompiledHeader.cpp.o
- [ 16%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/simd.cpp.o
- [ 16%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/tools.cpp.o
- [ 16%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/x86emitter.cpp.o
- Linking CXX static library libx86emitter.a
- [ 16%] Built target x86emitter
- [ 16%] [ 18%] [ 18%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Cache.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/COP0.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/COP2.cpp.o
- [ 19%] [ 19%] [ 19%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Counters.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Dump.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/GameDatabase.cpp.o
- [ 19%] [ 19%] [ 21%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/FiFo.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/FPU.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Elfheader.cpp.o
- [ 21%] [ 21%] [ 21%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/GSState.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/GS.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Gif.cpp.o
- [ 22%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Hw.cpp.o
- [ 22%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/HwRead.cpp.o
- [ 22%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/HwWrite.cpp.o
- [ 24%] [ 24%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Interpreter.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopBios.cpp.o
- [ 24%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopCounters.cpp.o
- [ 24%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopDma.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/IopBios.cpp: In function ‘int R3000A::ioman::write_HLE()’:
- /home/wingnux/pcsx2-read-only/pcsx2/IopBios.cpp:314: warning: unused variable ‘fd’
- [ 26%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopHw.cpp.o
- [ 26%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopIrq.cpp.o
- [ 26%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopMem.cpp.o
- [ 26%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IopSio2.cpp.o
- [ 27%] [ 27%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Memory.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/MMI.cpp.o
- [ 27%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/MTGS.cpp.o
- [ 29%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Patch.cpp.o
- [ 29%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Patch_Memory.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/MTGS.cpp: In member function ‘void SysMtgsThread::OpenPlugin()’:
- /home/wingnux/pcsx2-read-only/pcsx2/MTGS.cpp:188: warning: deprecated conversion from string constant to ‘char*’
- [ 29%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Pcsx2Config.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/Patch.cpp: In function ‘void inifile_command(bool, const wxString&)’:
- /home/wingnux/pcsx2-read-only/pcsx2/Patch.cpp:118: warning: unused variable ‘code’
- [ 29%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/PluginManager.cpp.o
- [ 31%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/PrecompiledHeader.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/PluginManager.cpp: In member function ‘virtual void PluginManager::Init(PluginsEnum_t)’:
- /home/wingnux/pcsx2-read-only/pcsx2/PluginManager.cpp:1211: warning: NULL used in arithmetic
- [ 31%] [ 31%] [ 31%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R3000A.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R3000AOpcodeTables.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R3000AInterpreter.cpp.o
- [ 32%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R5900.cpp.o
- [ 32%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R5900OpcodeImpl.cpp.o
- [ 32%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/R5900OpcodeTables.cpp.o
- [ 34%] [ 34%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/SaveState.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ShiftJisToUnicode.cpp.o
- [ 34%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Sif.cpp.o
- [ 34%] [ 34%] [ 36%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Sif0.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Sio.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Sif1.cpp.o
- [ 36%] [ 36%] [ 37%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/SourceLog.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Stats.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/SPR.cpp.o
- [ 37%] [ 37%] [ 39%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/System.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif1_Dma.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif0_Dma.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/System.cpp: In function ‘u8* SysMmapEx(uptr, u32, uptr, const char*)’:
- /home/wingnux/pcsx2-read-only/pcsx2/System.cpp:415: warning: NULL used in arithmetic
- [ 39%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif1_MFIFO.cpp.o
- [ 39%] [ 39%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif_Codes.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif.cpp.o
- [ 40%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif_Transfer.cpp.o
- [ 40%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Vif_Unpack.cpp.o
- [ 40%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/vtlb.cpp.o
- [ 40%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VU0.cpp.o
- [ 42%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VUmicro.cpp.o
- [ 42%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VU0micro.cpp.o
- [ 42%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VU0microInterp.cpp.o
- [ 44%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VU1micro.cpp.o
- [ 44%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VU1microInterp.cpp.o
- [ 44%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VUflags.cpp.o
- [ 44%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VUmicroMem.cpp.o
- [ 45%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/VUops.cpp.o
- [ 45%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/CdRom.cpp.o
- [ 45%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/CDVDaccess.cpp.o
- [ 45%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/CDVD.cpp.o
- [ 47%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/CDVDisoReader.cpp.o
- [ 47%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/IsoFileFormats.cpp.o
- [ 47%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/IsoFileTools.cpp.o
- [ 49%] [ 49%] [ 49%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/IsoFS/IsoFSCDVD.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/IsoFS/IsoFile.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/CDVD/IsoFS/IsoFS.cpp.o
- [ 49%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/DebugTools/DisR3000A.cpp.o
- [ 50%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/DebugTools/DisR5900asm.cpp.o
- [ 50%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/DebugTools/DisR5900.cpp.o
- [ 50%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/DebugTools/DisVU0Micro.cpp.o
- [ 50%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/DebugTools/DisVU1Micro.cpp.o
- [ 52%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AdvancedDialog.cpp.o
- [ 52%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppAssert.cpp.o
- [ 52%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppConfig.cpp.o
- [ 54%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppCorePlugins.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppAssert.cpp: In member function ‘virtual void pxGetStackTrace(const FnChar_t*)::StackDump::OnStackFrame(const wxStackFrame&)’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppAssert.cpp:87: warning: unused variable ‘count’
- [ 54%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppCoreThread.cpp.o
- [ 54%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppEventSources.cpp.o
- [ 54%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppGameDatabase.cpp.o
- [ 55%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppInit.cpp.o
- [ 55%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppMain.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppGameDatabase.cpp: In member function ‘void DBLoaderHelper::ReadGames()’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppGameDatabase.cpp:121: warning: unused variable ‘game’
- [ 55%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/AppRes.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppInit.cpp: In member function ‘void Pcsx2App::OpenProgramLog()’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/AppInit.cpp:215: warning: unused variable ‘frame’
- [ 55%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/ConsoleLogger.cpp.o
- [ 57%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/CpuUsageProvider.cpp.o
- [ 57%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/CpuUsageProviderLnx.cpp.o
- [ 57%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/AboutBoxDialog.cpp.o
- [ 59%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/AppConfigDialog.cpp.o
- [ 59%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/AssertionDialog.cpp.o
- [ 59%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/BaseApplicableConfigPanel.cpp.o
- [ 59%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/MemoryCardListView.cpp.o
- [ 60%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/BaseConfigurationDialog.cpp.o
- [ 60%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/BiosSelectorDialog.cpp.o
- [ 60%] [ 60%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/ConfirmationDialogs.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/CreateMemoryCardDialog.cpp.o
- [ 62%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/FirstTimeWizard.cpp.o
- [ 62%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/ImportSettingsDialog.cpp.o
- [ 62%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/LogOptionsDialog.cpp.o
- [ 63%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/McdConfigDialog.cpp.o
- [ 63%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/PickUserModeDialog.cpp.o
- [ 63%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/StuckThreadDialog.cpp.o
- [ 63%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Dialogs/SysConfigDialog.cpp.o
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/ExecutorThread.cpp.o
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/FrameForGS.cpp.o
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/GlobalCommands.cpp.o
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/i18n.cpp.o
- [ 67%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/IsoDropTarget.cpp.o
- [ 67%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/MainFrame.cpp.o
- [ 67%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/MainMenuClicks.cpp.o
- [ 68%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/MemoryCardFile.cpp.o
- [ 68%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/MemoryCardListPanel.cpp.o
- [ 68%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/MessageBoxes.cpp.o
- [ 68%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/MSWstuff.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/MemoryCardListPanel.cpp: In member function ‘void Panels::MemoryCardListPanel_Simple::OnListDrag(wxListEvent&)’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/MemoryCardListPanel.cpp:613: warning: unused variable ‘result’
- [ 70%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/AudioPanel.cpp.o
- [ 70%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/BiosSelectorPanel.cpp.o
- [ 70%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/CpuPanel.cpp.o
- [ 70%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/DirPickerPanel.cpp.o
- [ 72%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/GameDatabasePanel.cpp.o
- [ 72%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/GameFixesPanel.cpp.o
- [ 72%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/GSWindowPanel.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/GameDatabasePanel.cpp: In constructor ‘Panels::GameDatabasePanel::GameDatabasePanel(wxWindow*)’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/GameDatabasePanel.cpp:46: warning: unused variable ‘GameDB’
- [ 73%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/LogOptionsPanels.cpp.o
- [ 73%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/MiscPanelStuff.cpp.o
- [ 73%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/PathsPanel.cpp.o
- [ 73%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/PluginSelectorPanel.cpp.o
- [ 75%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/SpeedhacksPanel.cpp.o
- [ 75%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Panels/VideoPanel.cpp.o
- [ 75%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/pxLogTextCtrl.cpp.o
- [ 75%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/RecentIsoList.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/VideoPanel.cpp: In member function ‘virtual void Panels::FramelimiterPanel::AppStatusEvent_OnSettingsApplied()’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/Panels/VideoPanel.cpp:116: warning: unused variable ‘appwin’
- [ 77%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/Saveslots.cpp.o
- [ 77%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/SysState.cpp.o
- [ 77%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/UpdateUI.cpp.o
- [ 78%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/coroutine.cpp.o
- [ 78%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/IPU.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/SysState.cpp:107: warning: ‘IsSavingOrLoading’ defined but not used
- [ 78%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/IPU_Fifo.cpp.o
- [ 78%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/mpeg2lib/Idct.cpp.o
- [ 80%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/mpeg2lib/Mpeg.cpp.o
- [ 80%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/yuv2rgb.cpp.o
- [ 80%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ps2/BiosTools.cpp.o
- [ 80%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ps2/GIFpath.cpp.o
- [ 81%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ps2/Iop/IopHwRead.cpp.o
- [ 81%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ps2/Iop/IopHwWrite.cpp.o
- [ 81%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/System/SysCoreThread.cpp.o
- [ 83%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/System/SysThreadBase.cpp.o
- [ 83%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Utilities/FileUtils.cpp.o
- [ 83%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/BaseblockEx.cpp.o
- [ 83%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iCOP0.cpp.o
- [ 85%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iCore.cpp.o
- [ 85%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iFPU.cpp.o
- [ 85%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iFPUd.cpp.o
- [ 85%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iMisc.cpp.o
- [ 86%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iMMI.cpp.o
- [ 86%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iPsxMem.cpp.o
- [ 86%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iR3000A.cpp.o
- [ 88%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iR3000Atables.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/x86/iPsxMem.cpp:26: warning: ‘writectrl’ defined but not used
- [ 88%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iR5900Misc.cpp.o
- [ 88%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ir5900tables.cpp.o
- [ 88%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/iVU1micro.cpp.o
- [ 90%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iCore-32.cpp.o
- [ 90%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900-32.cpp.o
- [ 90%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Arit.cpp.o
- [ 90%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900AritImm.cpp.o
- [ 91%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Branch.cpp.o
- [ 91%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Jump.cpp.o
- [ 91%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900LoadStore.cpp.o
- [ 93%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Move.cpp.o
- [ 93%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900MultDiv.cpp.o
- [ 93%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Shift.cpp.o
- [ 93%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/iR5900Templates.cpp.o
- [ 95%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/ix86-32/recVTLB.cpp.o
- [ 95%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/microVU.cpp.o
- [ 95%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/newVif_Dynarec.cpp.o
- [ 95%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/newVif_Unpack.cpp.o
- [ 95%] [ 96%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/sVU_Lower.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/newVif_UnpackSSE.cpp.o
- [ 96%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/sVU_Micro.cpp.o
- [ 98%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/sVU_Upper.cpp.o
- [ 98%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/sVU_zerorec.cpp.o
- [ 98%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ZipTools/thread_gzip.cpp.o
- [ 98%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/ZipTools/thread_lzma.cpp.o
- [100%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/IPU/acoroutine.S.o
- [100%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/x86/aVUzerorec.S.o
- [100%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Linux/LnxHostSys.cpp.o
- [100%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Linux/LnxKeyCodes.cpp.o
- Linking CXX executable ../bin/pcsx2
- /usr/bin/ld: cannot find -lzlib
- collect2: ld returned 1 exit status
- make[3]: *** [bin/pcsx2] Error 1
- make[2]: *** [pcsx2/CMakeFiles/pcsx2.dir/all] Error 2
- make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/rule] Error 2
- make: *** [pcsx2] Error 2
- gregory....
- Ok thanks. I found the bug. I do a silly things in a previous rev...
- wing...
- No problem! I'm glad to help =)
Revision 3236
- [cmake]: Use the good 3rpaty library name...
- wing...
- "Linking CXX executable ../bin/pcsx2
- [100%] Built target pcsx2"
- Everything seems to be fine. Thank you again.
- wing...
- There seems to be a problem with CDVDiso, it builds with no errors but it doesn't show up on pcsx2.
- Build log:
- [email protected] ~/pcsx2-read-only $ make -j3 CDVDiso
- [ 0%] [ 33%] [ 33%] Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/blocksort.c.o
- Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/compress.c.o
- Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/bzlib.c.o
- /home/wingnux/pcsx2-read-only/3rdparty/bzip2/bzlib.c: In function ‘bzopen_or_bzdopen’:
- /home/wingnux/pcsx2-read-only/3rdparty/bzip2/bzlib.c:1430: warning: assignment makes pointer from integer without a cast
- [ 33%] Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/crctable.c.o
- [ 66%] Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/decompress.c.o
- [ 66%] [ 66%] Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/huffman.c.o
- Building C object 3rdparty/bzip2/CMakeFiles/pcsx2_bzip2.dir/randtable.c.o
- Linking C static library libpcsx2_bzip2.a
- [ 66%] Built target pcsx2_bzip2
- [ 66%] Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/CDVDisop.cpp.o
- [ 66%] [ 66%] Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/libiso.cpp.o
- Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/Config.cpp.o
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘u64 _tellfile(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:201: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:201: warning: initializing argument 1 of ‘long int ftell(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:205: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:205: warning: initializing argument 1 of ‘__off64_t ftello64(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _seekfile(void*, u64, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:217: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:217: warning: initializing argument 1 of ‘int fseeko64(FILE*, __off64_t, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _readfile(void*, void*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:226: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:226: warning: initializing argument 4 of ‘size_t fread(void*, size_t, size_t, FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _writefile(void*, void*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:231: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:231: warning: initializing argument 4 of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘void _closefile(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:236: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:236: warning: initializing argument 1 of ‘int fclose(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadZ2table(isoFile*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:330: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBZ2table(isoFile*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:373: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int isoSetFormat(isoFile*, int, int, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:650: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:650: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:657: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:657: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:667: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:667: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:709: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockZ(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:731: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:756: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockBZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:790: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockD(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:821: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:825: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockM(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:842: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:843: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:856: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int isoReadBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:869: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:909: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockZ(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:934: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:958: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockD(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:976: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockBZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:990: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:1016: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:48: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:48: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:53: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp: In function ‘s32 CDVDopen(const char*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:168: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp: In function ‘s32 CDVDgetTOC(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:313: warning: unused variable ‘off’
- [100%] Building C object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/interface.c.o
- cc1: warning: command line option "-fpermissive" is valid for C++/ObjC++ but not for C
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void LoadConf()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:44: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:45: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:46: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnFile_Ok()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:97: warning: invalid conversion from ‘const gchar*’ to ‘gchar*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnOk(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:189: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:191: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- [100%] /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnFileSel_Ok()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:215: warning: invalid conversion from ‘const gchar*’ to ‘gchar*’
- Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/Linux.cpp.o
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void CDVDconfigure()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:281: warning: return-statement with a value, in function returning 'void'
- [100%] Building C object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/support.c.o
- cc1: warning: command line option "-fpermissive" is valid for C++/ObjC++ but not for C
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:39: warning: non-local variable ‘<anonymous union> cr’ uses anonymous type
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void UpdZmode()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:50: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCompress(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:68: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:124: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:128: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘char* CDR_readTrack(unsigned char*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:344: warning: invalid conversion from ‘unsigned char*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCreate(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:369: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:426: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:433: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:482: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCreateZ(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:509: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:589: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:596: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: invalid conversion from ‘unsigned char*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: initializing argument 1 of ‘int BZ2_bzBuffToBuffCompress(char*, unsigned int*, char*, unsigned int, int, int, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: invalid conversion from ‘u8*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: initializing argument 3 of ‘int BZ2_bzBuffToBuffCompress(char*, unsigned int*, char*, unsigned int, int, int, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:668: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCompress(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:64: warning: ‘ret’ may be used uninitialized in this function
- Linking CXX shared library ../../../bin/plugins/libCDVDiso.so
- [100%] Built target CDVDiso
- PCSX2 console:
- Loading plugins...
- Binding GS : /home/wingnux/jogos/pcsx2/plugins/libzzogl.so
- Binding PAD : /home/wingnux/jogos/pcsx2/plugins/libzeropad.so
- Binding SPU2 : /home/wingnux/jogos/pcsx2/plugins/libspu2-x.so
- Binding CDVD : /home/wingnux/jogos/pcsx2/plugins/libCDVDnull.so
- Binding USB : /home/wingnux/jogos/pcsx2/plugins/libUSBnull.so
- Binding FW : /home/wingnux/jogos/pcsx2/plugins/libFWnull.so
- Binding DEV9 : /home/wingnux/jogos/pcsx2/plugins/libdev9null.so
- Plugins loaded successfully.
- [wx] /home/wingnux/jogos/pcsx2/plugins/libCDVDiso.so: undefined symbol: _fdopen
- An unhandled runtime error has occurred, somewhere in the depths of Pcsx2's cluttered brain-matter.
- General file operation error.
- File is not a valid dynamic library.
- Stream exception: File is not a valid dynamic library.
- File/Object: /home/wingnux/jogos/pcsx2/plugins/libCDVDiso.so
- Some kinda plugin failure: /home/wingnux/jogos/pcsx2/plugins/libCDVDiso.so
- arcum42
- Hmmm...
- _fdopen isn't used by CDVDiso. OTOH, bzip is, and bzip uses _fdopen. Of course, I'm not sure why it's not finding _fdopen. We're talking about something that I think is brought in by stdio.h, after all. Odd.
- arcum42
- For that matter, I would have thought it would have used the native version of bz2, rather then compiling the internal version...
- gregory....
- The problem only occured when using the pcsx2 bzip version. Distribution bzip2 is ok.
- The tank solution, just drop internal bzip from cmake, people can just install libbz2-dev. There is a #ifdef BZ_STRICT_ANSI around the _fdopen code but I'm not sure of the impact.
- arcum42
- I'm fine with dropping internal bzip...
- wing...
- Thanks for the help. Even when running "cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release" it still uses the 3rd party bzip lib, how can I make it use my system's (/usr/lib) library?
- gregory....
- Use last rev, it will not take it ;)
- You must install the package libbz2-dev
Revision 3237
- zzogl-pg: A bit more refactoring. Rename DrawTriangle. Move some code around.
- wing...
- I don't know what happened but F6 doesn't cycle between FSAA modes anymore. It changes FSAA to the max available (16x) and when I press F6 again it won't cycle to "No FSAA", it just shows "16x FSAA" on the OSD.
- gregory....
- Arcum, all changes (including previous commit) change the behavior or it must stay the same ?
- Grandia 3 does not like your updates ;) For testcase (grandia 3), after opening, use start. After the intro movies, there is a 3D scene (do not know the exact name).
- There are a lots of screen garbage in this kind of scene (in previous rev I change the dummy frame key limit to 0x2E0 instead of 0x300 to work-around it). Note suspend, then resume work around the problem (in previous version).
- The others problem is "a slide show" of the scene. It seems to only print a frame by second, but sound is ok. Maybe forget to update the screen for some frame.
- Just for information, when anti-aliasing is change on-the-fly there is also some strange flickering. Do not know if it related
- arcum42
- Most of my changes kept how ZZOgl was acting the same. Including the garbage on the starting screen on Grandia III. I was fiddling with other changes that might have affected it, but they didn't work out.
- I might change the dummy key limit; I just want to make sure it doesn't mess up other games.
- After the recent changes, you might want to check your settings in ZZOgl-pg, btw. I redid a bunch of that code, and it may not have kept some of your settings intact...
- gregory....
- For settings, I delete the ini file just to be sure. I did not use any trick.
- Just for information, an impact of changing the dummy key limit on grandia 3. The top and bottom black border, contains sometimes garbage picture (so is not black anymore :) ).
- So there is maybe a regression that cause the "slide show" and the flickering in anti-aliasing change. Difficult to describe, it is like loosing some sync signal. It is only print 1 images every 10 in some scenes. Besides a part of the screen is black (anti-aliasing 0 is the bottom-left quarter). After some time it catches the train and works as expected !
- yxml...
- zzogl-pg\opengl\Util.h vs2008 compiler error.error C2065 and error C2051
- arcum42
- It's taken care of, though for the future, please post the actual error messages. I doubt error C2065 & C2051 mean much to a Windows developer, and they mean even less to someone who mainly knows Linux... :(
Revision 3238
- Refactoring: (boring)
- * renamed PersistentThread to pxThread (shorter, sweeter, and the 'persistent'
- part is obsolete since its now a full blown thread manager since some while
- ago).
- * Renamed a bunch of the PostMethodToMain stuff to Rpc_TryInvoke* (for remote
- procedure call). It's probably not a good use of the term, but I'm bummed I
- can't think of anything better/shorter.
- Jake.Stine
- I should rename the cpp/h file someday as well, but I don't feel like updating all the project files. ;)
- Zeydl...
- And you forgot to change linux part:
- /home/ruslan/pcsx2/trunk/common/src/Utilities/Linux/LnxThreads.cpp|72|error: ‘Threading::PersistentThread’ has not been declared
- wing...
- I can confirm the comment above:
- [ 14%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Mutex.cpp.o
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Linux/LnxThreads.cpp:72: error: ‘Threading::PersistentThread’ has not been declared
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Linux/LnxThreads.cpp:72: error: non-member function ‘u64 GetCpuTime()’ cannot have cv-qualifier
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Linux/LnxThreads.cpp:82: error: ‘Threading::PersistentThread’ has not been declared
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Linux/LnxThreads.cpp:88: error: ‘Threading::PersistentThread’ has not been declared
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Linux/LnxThreads.cpp:93: error: ‘Threading::PersistentThread’ has not been declared
- make[3]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/Linux/LnxThreads.cpp.o] Error 1
- make[3]: *** Waiting for unfinished jobs....
- Linking CXX static library libx86emitter.a
- [ 14%] Built target x86emitter
- make[2]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/all] Error 2
- make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/rule] Error 2
- make: *** [pcsx2] Error 2
Revision 3239
- [cmake] Drop internal bzip version. No reason to use it, moreover compilation is
- broken for some distribution.
- gregory....
- For people that really use it. Please install bzip in 32bits with dev file. (on debian libbz2-dev)
Revision 3240
- [cmake] bzip2 clean, forget to change one line...
- wing...
- Thank you! CDVDiso works fine now.
Revision 3241
- linux fix. Also rename PersistentThread in linux.
Revision 3242
- SPU2-X:
- - Clamp requested pitch values to 0x3fff. Fixes games that set a too big pitch,
- run that voice and expect it to hit an IRQA (Romancing Saga).
- - Gigaherz and Pseudonym worked out better modulation support. Should make some
- sounds better (FFX battle sound, etc).
Revision 3243
- Cmdline: --nogui, --cdvd, --nodisc, --fullboot, and IsoFile implemented
- parameters implemented. Example:
- pcsx2 someIso.iso (boots game)
- pcsx2 --nogui someIso.iso (boots game without the pcsx2 std interface)
- pcsx2 --nogui --nodisc (boots into the bios system menu)
- ... more coming soon!
- poisiono...
- These things opens up ideas of me playing a bit with bash-scripting (which i am currently starting to like) perhaps making some sort of simple frontend of sorts. Or just not me, more skilled people aswell probably.
- (though i really like the standard gui in any case) :)
- karlheinzgraf74
- Please support a cmd line with "--fullscreen --exclusive". That would be very nice :-)
Revision 3244
- SPU2-X:
- Another relocation of Reverb Address space. Ys and Shaman King work.
- gigaherz
- Reasoning:
- [18:04] (@gigaherz): psx spu has onyl 512kb so,
- [18:05] (@gigaherz): the EEA woudl be at 0x3FFFF if it existed
- [18:05] (@gigaherz): spu2 is different but hey maybe they still reset it to 3FFFF?
- fischkop...
- this revision finally fixed sound in escape from monkey island
- poisiono...
- I just tried to compile this on Arch Linux 64-bit.
- I do not know exactly what went wrong, i got as much (all?) of the libs and deps i could find from the debian-package-names on my system.
- It seems to be some inconsistency of soundtouch on my systems version i think?
- Here is as thorough a paste of what i did as i can come up with:
- http://www.pastey.net/137860
- gigaherz
- Pcsx2 will not build for 64bit. You need proper 32bit tools and libraries installed to compile. Also, this is NOT a forum, you are not supposed to ask for help in here. Use http://forums.pcsx2.net/ instead next time (or if you keep having troubles compiling), and make sure to read the guide [CompilationGuideForLinux] (https://code.google.com/p/pcsx2/wiki/CompilationGuideForLinux, not sure if [] stuff works in comments).
- gigaherz
- Ah no need to use [] even? Testing: CompilationGuideForLinux
- ramapcsx2
- :p
- poisiono...
- I did use the compilation guide, aswell as installed as many 32-bit libs as i could find a corresponding version for - though not for soundtouch i see now that i am less tired.
- As to posting it here in the changelog/version comment, i also did a spu-2->sound->soundtouch correlation in my mind, though i guess my lack of the right soundtouch version does not have anything to do with this rev.
- I will out more effort into getting my compilation going, and try to be more discriminating as to where i post about it unless i am more certain of it's relevance (or do it the forum-way you suggested)
- If it really is not possible even with the right 32-bit libs i guess i will have to chroot, or be patient :)
- Thanks for the patience and the sensible reminder,
- and kudos for all you good work
- - this goes out to all the devs, not only the ones justly reprimanding me ;)
- /PReP
Revision 3245
- zzogl-pg: Go with gregorys dummy key limit change for the moment. Gets rid of
- garbage in Grandia III. Needs more testing with other games.
- eliotfur
- I just wonder is ZZOgl-pg intended to replace GSDX someday or is it "just for Linux guys"?..
- arcum42
- I doubt ZZOgl-pg will ever replace GSDx. It is, however, intended to replace ZeroGS.
- If you aren't on Linux, a lot of times GSDx is better. There may be cases where a game or certain areas of a game work better in ZZOgl or ZZOgl-pg, though, so it might still be useful for Windows guys.
- OTOH, GSDx would need OpenGL code that does everything the current DirectX
- code does written for it, and a rewrite of the main vector code before it was usable on Linux, and I'd be surprised if that happened.
- wing...
- It fixed the weird glitch on State of Emergency 2 (http://forums.pcsx2.net/Thread-Bug-Report-State-of-Emergency-2-NTSC-U). There are still in-game glitches but all cutscenes (non fmv) work fine now!
- eliotfur
- @arcum42:
- That's exactly what I was thinking...
- Anyway, I'd be surprised (and happy) if anyone would eventually take this project for making further improvement... There are so many TODOs in the source left behind by Gabest...
- wing...
- I'm happy with all the development on the opengl side because I'm on linux so this plugin is my only option. It has a nice overall compatibility but speed is WAY slower than gsdx =/
- Anyway, keep up the good work, guys!
- arcum42
- Yeah, that's a large part of why I brought a fork of ZZOgl into the trunk. For the Linux port to really work, it needs to have at least one plugin of each type to be actively worked on. (Though some are less important then others. Dev9, FW, and USB, for example...)
- That's a factor in why I forked ZeroPad into OnePad, and ported spu2-x to Linux, as well...
- wing...
- arcum42: And for that I thank you a lot!
- I just wish Pete'd join the dev team, his psx ogl plugins are great.
Revision 3246
- zzogl-pg: Forgot to remove this...
- dbed...
- ZZogl not compile some errors
Revision 3247
- zzogl-pg: Fix Windows again.
- evolutionrevolution
- Ah, there we go. That's better. :)
- gregory....
- I have some compilation failure with cmake because #include <GL/glew.h> was removed from linux side of util.h.
- Btw, would not be better to create opengl include file ? Then put opengl include in good order in one place.
- arcum42
- Yeah, didn't mean to remove it. And it'd be good to have a opengl header. In fact, the headers could use a major reorg. It's just that they're rather tangled and hard to rearrange.
- (Though I have done some rearranging; Util.h didn't exist before I started working on ZZOgl-pg.)
Revision 3248
- ZZOgl-PG: Suppose I should have left this line in...
Revision 3249
- UI / Cmdline:
- * Fullscreen mode should be remembered/applied properly now.
- * implemented --fullscreen and --windowed options
- * Made the --help popup a lot prettier
- shadowladyngemu
- Having "Default to fullscreen mode on open" enabled then starting/resuming emulation works fine, but then doing Alt+Enter freezes the image and eventually becomes a black screen. Starting/resuming without the option enabling then doing Alt+Enter works as usual.
- serban.a...
- as shadow said alt enter freezes image
- karlheinzgraf74
- as shadow said alt enter freezes image
Revision 3250
- microVU: untested sse4 optimizations. comment if breaks something :D
- ramapcsx2
- Seems fine :)
- danialho...
- XenoSaga performance improved (i think)
- Bully performance decreased :\, speedhacks that normally improved performance are much less effective.
- refraction
- danial: I think you're just noticing it rather than it being any different, there is no reason why this should slow it down, at all, if anything it should stay the same.
- danialho...
- nope, i was able to easily get 70fps in Bully previously when walking through the outdoors area's. now it dips into the 40's.
- i'll look into it more though.
Revision 3251
- microVU: remove some spamming in release builds for Dawn of Mana level 2...
Revision 3252
- spu2-x: Fix a crash in Linux. (Do the same thing to ZeroSPU2 for good measure.)
- arcum42
- I was noticing a crash near the beginning of Kingdom Hearts 1, and eventually traced it back to the rng generator. Switching what registers it's using seems to have taken care of, though.
- Jake.Stine
- Hmm, yeah, that asm is lacking a proper register clobber list, which is why. Unfortunately I don't remember GAS syntax anymore.
- arcum42
- For reference, the crash was in the section at the beginning with the three pedestals, when you jump on the second pedestal to choose what to give up.
- I was usually starting from a savefile beyond that... :(
- arcum42
- That and -fPIC reserves the ebx register for its own use, and the plugin's compiled with -fPIC. gcc's actually nice enough to mention that if you set up a clobber list.
- gregory....
- Not sure why volatile is needed in this case. However eax and esi must be put in the clobber list. It is the third ':'. I thinks it will worth it to retest without the volatile but good clobber list. Volatile reduces optimization.
- A good link that deals with asm&gcc (5.3):
- http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html
- arcum42
- Actually, I forgot I'd added the volatile... ^_^
- arcum42
- It does work without it, though. (Fortunately, it's pretty easy to test.)
- I'll take it out, and add the clobber lists.
- gregory....
- Not sure how must it work for mmx/sse register (logically the same, but we are in computer science ^^). A check of these asm code will be a good idea in my opinion.
- plugins/zzogl-pg/opengl/zerogs.cpp:989: __asm__(
- plugins/zzogl-pg/opengl/x86.cpp:438: __asm__(".intel_syntax noprefix\n"
- plugins/zzogl-pg/opengl/x86.cpp:721: __asm__(".intel_syntax\n"
- arcum42
- Yeah, I was wondering about that myself. And x86-32.S uses ebx in a number of places, so if -fPIC's ever used on it, we should probably switch those over to other registers as well. (or does that only affect inline code?)
- gregory....
- good question. May be the reason of the regression when using -fPIC.
- At a quick glance (need to check all functions), there is no impact. Because the code do 'a push ebx' at beginning and 'a pop ebx' at the end.
- arcum42
- That sounds promising, at least.
- I also noticed that if you turn on -fPIC, you have to do this:
- --- plugins/zzogl-pg/opengl/x86.cpp (revision 3253)
- +++ plugins/zzogl-pg/opengl/x86.cpp (working copy)
- @@ -462,7 +462,7 @@
- "test edx, 15\n"
- "jnz WriteUnaligned\n"
- - "movdqa xmm7, [%[s_clut16mask]]\n" // saves upper 16 bits
- + "movdqa xmm7, [s_clut16mask]\n" // saves upper 16 bits
- // have to save interlaced with the old data
- "movdqa xmm4, [edx]\n"
- @@ -503,7 +503,7 @@
- // %edx is offset by 2
- "sub edx, 2\n"
- - "movdqa xmm7, [%[s_clut16mask2]]\n" // saves lower 16 bits
- + "movdqa xmm7, [[s_clut16mask2]]\n" // saves lower 16 bits
- // have to save interlaced with the old data
- "movdqa xmm4, [edx]\n"
- wing...
- THANKS! Now Klonoa 2 works! =)
- arcum42
- Cool. I figured with where that crash was that it would be affecting multiple games...
- wing...
- I still have a weird problem with SPU2-X on Ubuntu 10.04 32bit. Sound works kinda randomly, it works on some games (i.e. Marvel vs Capcom 2) and doesn't work on others (i.e. Klonoa 2). Even when it works, most of the time sound just stops for no apparent reason after a few minutes and when it happens I can't quit pcsx2 normaly, I have to kill it from the terminal.
Revision 3253
- spu2-x/ZeroSPU2: Let's add in clobber lists, and take out volatile on the rng as
- well...
Revision 3254
- UI: Replace a lot of PCSX2's with pxGetAppName().
- Jake.Stine
- ... crap. I forgot the c_str() stuff again. I really hate C++ sometimes.
- pcsx2gu...
- What's the gain with this? I don't think we're gonna change the emulator's name or translate it? :P
Revision 3255
- Fix POD-hell.
Revision 3256
- [cmake]
- * add some check on libsparsehash
- * print more informative message when a depency miss
- arcum42
- Mostly looks good. Suvbersion_FOUND, though?
- gregory....
- It was just to clean a little. Instead of do a test on Suvbersion_FOUND then set a variable equal to it. Just use the _found variable. In others side, we do not have a clear separation between cmakelist and searchforstuff.
- gregory....
- Honestly I'm a few mitigate by this change. If you feel better with previous version I will revert it back. Tell me.
- arcum42
- I'm fine with it. I'd just prefer that Subversion be spelled correctly... ^_^
- gregory....
- Oups..
Revision 3257
- [cmake]: fix a stupid typo
Revision 3258
- ... and I didn't mean to remove the translation keys either... >_<
Revision 3259
- zzogl-pg: Printing to the console now works. Fixed AA+/-. Misc. pcsx2: Took care
- of two non-POD safe objects.
- arcum42
- Oops. Committed some debugging messages. I'll take care of it.
- arcum42
- It'll probably take a little while to balance out ZZOgl's messages a bit. Until then, the debug build will probably be rather spam-heavy...
Revision 3260
- spu2-x: Remove some debugging messages I accidentally left in the last commit...
Revision 3261
- SPU2-X:
- - Double the audio output volume before sending it to the output modules. Was
- way too quiet.
- kristel...
- Sorry for "miss posting", but...
- Somewhere about 30 revisions ago (i think) been broken sound of weapon (when fighting) in Soul Calibur 3.
- ZeroSPU2 work (sound there), but laggy.
- Ami.Mizu...
- Agreeing with OP.
Revision 3262
- Yay, typo :p
Revision 3263
- 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.
- laki...
- Thank you for writing such a thorough explanation. I think little factoids like this about game programming are super interesting for some reason.
- ramapcsx2
- Great solution to this :)
- azte...
- congrats cottonvibbé.
Revision 3264
- * 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.
- Lothar...
- 30>k:\svn\pcsx2wx\pcsx2\windows\Win32.h(21) : fatal error C1083: Cannot open include file: 'HostGui.h': No such file or directory
- andutrache
- i:\development\project source\pcsx2\pcsx2\windows\Win32.h(21) : fatal error C1083: Cannot open include file: 'HostGui.h': No such file or directory
- ryouarashi7
- Same as above.
- HostGui.h remains included in pcsx2/windows/Win32.h and pcsx2/System.cpp.
- pcsx2/System.cpp is missing some definitions after deleting includes.
- http://ryouarashi.ry.funpic.de/pcsx2-r3264.diff
- makes it compile again. HEAD and r3264 (using Release SSE4) crash for me though, but this may be related to other revisions.
- Platform: Win32 (OS: Win7 64bit), M$ Visual C++ Express 2008
- Norikumi...
- Same issue.
- Also, on a related note, it seems DXSDK June 2010 doesn't come with ddraw.lib - if nothing can be done about that, maybe it should at least be mentioned in the wiki's compilation guide?
- Norikumi...
- check issue 755 please
Revision 3265
- Apply eol-style:native to CMakeLists.txt files.
Revision 3266
- 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...
- pcsx2gu...
- Great job cotton :) Hope it affects more games too
- cottonvibes
- mmm probably not unless other games were running at 1fps :D
- they also have to be doing branch in branch delay slots; but who knows.
- kaboo...
- nice !
- animus...
- Thanks, Cotton!
- refraction
- nice catch :) should help a few games even if only minor speed fixes.
- eliotfur
- Will you take a look at Issue747 then?.. There're not so many bugs left in mVU though... It'll be excellent to finish it off and start a new area of improvement... GSDX maybe?..
- jfre1...
- Patience young padawan
- serban.a...
- great job ! i finished teh game with super vu like a month ago since mvu gave me no more then a couple of fps
- zantezuken
- 5hrs?
- worth +1
- pcsx2gu...
- eliotfur: People are not swiss knives you know :P You can't just wake up one day and say, "hey I'll start coding some extremely complex Direct3D10/11 code, even though I need years of experience on 3D programming!". My point being, each person is capable of doing specific stuff well, you can't expect devs to jump from recompiler code to D3d10 code just because you want it :P
- azte...
- ha! branches can be trick like in cotton fix before this, +1.
- linktoice
- Excellent~
Revision 3267
- Fix Linux compilation. (Possibly Windows as well...)
- arcum42
- Not tested in Windows, but I made sure to get rid of both includes of HostGui.h, including the one that only would have affected Windows.
- arcum42
- I did forget to change the cmake files, though. Oh well, either I'll get them in a commit or two, or gregory will get them.
- wing...
- It doesn't work on linux:
- [email protected] ~/pcsx2-read-only/plugins $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE
- CMake Warning (dev) in CMakeLists.txt:
- No cmake_minimum_required command is present. A line of code such as
- cmake_minimum_required(VERSION 2.8)
- should be added at the top of the file. The version specified may be lower
- if you wish to support older CMake versions for this project. For more
- information run "cmake --help-policy CMP0000".
- This warning is for project developers. Use -Wno-dev to suppress it.
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only/plugins
- It indeed generates a Makefile but an invalid one =/ (tested on Ubuntu 10.04 32bit)
- wing...
- Just read your comment, arcum42. I'll be waiting for the update ;)
- arcum42
- Actually, looks like all that's missing in cmake is a header file, which isn't a big deal. I just checked and I think there are other cmake problems from a few revisions ago.
- Those were gregorys changes, so he'll probably be the one to fix it, unless I happen to spot the issue in the next hour or two...
- arcum42
- OTOH, I might be looking at different changes. That was in the plugin directory. Does it build from the main directory?
- wing...
- No, it doesn't.
- [email protected] ~/pcsx2-read-only $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE
- -- The C compiler identification is GNU
- -- The CXX compiler identification is GNU
- -- Check for working C compiler: /usr/bin/gcc
- -- Check for working C compiler: /usr/bin/gcc -- works
- -- Detecting C compiler ABI info
- -- Detecting C compiler ABI info - done
- -- Check for working CXX compiler: /usr/bin/c++
- -- Check for working CXX compiler: /usr/bin/c++ -- works
- -- Detecting CXX compiler ABI info
- -- Detecting CXX compiler ABI info - done
- -- Enable the stripping by default in Release build !!!
- -- Found GTK2_GTK: /usr/lib/libgtk-x11-2.0.so
- -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
- -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
- -- Looking for gethostbyname
- -- Looking for gethostbyname - found
- -- Looking for connect
- -- Looking for connect - found
- -- Looking for remove
- -- Looking for remove - found
- -- Looking for shmat
- -- Looking for shmat - found
- -- Looking for IceConnectionNumber in ICE
- -- Looking for IceConnectionNumber in ICE - found
- -- Found X11: /usr/lib/libX11.so
- -- Found ALSA: /usr/lib/libasound.so
- -- Found BZip2: /usr/lib/libbz2.so
- -- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so
- -- Looking for BZ2_bzCompressInit in /usr/lib/libbz2.so - found
- -- Looking for include files CMAKE_HAVE_PTHREAD_H
- -- Looking for include files CMAKE_HAVE_PTHREAD_H - found
- -- Looking for pthread_create in pthreads
- -- Looking for pthread_create in pthreads - not found
- -- Looking for pthread_create in pthread
- -- Looking for pthread_create in pthread - found
- -- Found Threads: TRUE
- -- Found wxWidgets: TRUE
- -- Found ZLIB: /usr/lib/libz.so
- -- Found A52: /usr/lib/liba52.so
- -- Found Cg: /usr/lib/libCg.so;/usr/lib/libCgGL.so
- -- Found PortAudio: /usr/lib/libportaudio.so
- -- Found SoundTouch: /usr/lib/libSoundTouch.so
- -- Found SparseHash: /usr/include
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only
- (...)
- [ 12%] Building C object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/support.c.o
- cc1: warning: command line option "-fpermissive" is valid for C++/ObjC++ but not for C
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/simd.cpp.o
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/tools.cpp.o
- Linking CXX shared library ../../../bin/plugins/libCDVDiso.so
- [ 13%] Built target CDVDiso
- [ 13%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/x86emitter.cpp.o
- Linking CXX static library libx86emitter.a
- [ 13%] Built target x86emitter
- make: *** [all] Error 2
- gregory....
- Just come back ^^. Need to test. However wingnux you must run cmake in the top dir not in the plugins dirs. I really need to find a good mecanism to check this.
- wing...
- Btw, could you please explain me why cmake lists my system's libraries even when I used "cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE"? Is it the default behavior or the compiling process isn't using the internal libraries as set?
- "-- Found ZLIB: /usr/lib/libz.so
- -- Found A52: /usr/lib/liba52.so
- -- Found Cg: /usr/lib/libCg.so;/usr/lib/libCgGL.so
- -- Found PortAudio: /usr/lib/libportaudio.so
- -- Found SoundTouch: /usr/lib/libSoundTouch.so"
- wing...
- Gregory: Yeah, I know that, my bad... wasn't paying attention :P
- But it still doesn't build from the top dir (as you can see on my previous posts)
- gregory....
- Ah, I'm really too slow to write message.
- It just search them but do not use them so it is not an issue.
- Note I'm just compile 3267 rev and it is ok on my side... Could you print the error and not the error summary please.
- arcum42
- What I actually usually do is create a "build" directory in the pcsx2 directory, and do "cmake .." from there. (when I use cmake. I usually build with codeblocks.).
- I prefer doing it that way because I don't end up with build files all over the place...
- wing...
- Everything is fine now, thanks guys!
- "[100%] [100%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Linux/LnxKeyCodes.cpp.o
- Building CXX object pcsx2/CMakeFiles/pcsx2.dir/Linux/LnxHostSys.cpp.o
- Linking CXX executable ../bin/pcsx2
- [100%] Built target pcsx2"
- OTOH, could you look into the spu2x issue? Sometimes it works, sometimes it doesn't and when it works, sound just stops after a few minutes. When it happens I can't quit pcsx2 normaly, I have to kill it from the terminal or force quit via the gui.
- gregory....
- Ok, good.
- I will update cmake to exit when using the wrong file and also will update the wiki for the out-source-build method.
- wing...
- Btw, there's a typo on the wiki:
- "Optional: If you also want to use Zeydlitz's ZeroGS fork, ZZOgl, which I recommend, do the following: go into the plugin folder. Type: svn http://sanechka.spb.ru/svnroot/ruslan/zerogs/ zzogl"
- You forgot the co/checkout command after "svn" ;)
- arcum42
- So I did. :(
- One of the other reasons why I like building in a build directory, incidentally, is that I can delete all the build files and recreate them without thinking about it.
- I think I picked up doing it that way from a tutorial on cmake somewhere...
- gregory....
- Yes it is the recommend method for using cmake because you can delete all cmake files.
- f3r....
- "PCSX2 0.9.7.r3267 - compiled on Jun 22 2010
- Savestate version: 0x8b430000
- x86-32 Init:
- CPU vendor name = AuthenticAMD
- FamilyID = 2
- x86Family = AMD Athlon(tm) II X2 240 Processor
- CPU speed = 2.807 ghz
- Cores = 4 physical [2 logical]
- x86PType = Standard OEM
- x86Flags = 178bfbff 00802009
- x86EFlags = efd3fbff
- x86 Features Detected:
- MMX.. SSE.. SSE2.. SSE3
- MMX2 .. 3DNOW .. 3DNOW2.. SSE4a
- SetLanguage is not implemented yet, using English.
- SetLanguage is not implemented yet, using English.
- Initializing PS2 virtual machine...
- Allocating memory for recompilers...
- Loading plugins...
- Binding GS : E:\SVN\pcsx2-src\bin\plugins\GSdx-SSE2.dll
- Windows 6.1.7600
- ATI Radeon HD 4600 Series (8.14.1.6105)
- Binding PAD : E:\SVN\pcsx2-src\bin\plugins\LilyPad.dll
- Binding SPU2 : E:\SVN\pcsx2-src\bin\plugins\SPU2-X.dll
- Binding CDVD : E:\SVN\pcsx2-src\bin\plugins\cdvdGigaherz.dll
- Binding USB : E:\SVN\pcsx2-src\bin\plugins\USBnull.dll
- Binding FW : E:\SVN\pcsx2-src\bin\plugins\FWnull.dll
- Binding DEV9 : E:\SVN\pcsx2-src\bin\plugins\DEV9null.dll
- Plugins loaded successfully.
- Initializing plugins...
- Init GS
- Windows 6.1.7600
- ATI Radeon HD 4600 Series (8.14.1.6105)
- Init PAD
- Init SPU2
- Init CDVD
- Init USB
- Init FW
- Init DEV9
- Plugins initialized successfully.
- Opening plugins...
- Opening GS"
- The Emulator stuck here in this revision, freezes the application when I start the emulation, the GSDX window doesn't even shows!
- shadowladyngemu
- Same as f3r.DLK, compiles unlike r3266 but gets stuck there.
- arcum42
- Hmmm... Marking a commit -1 means that you disapprove of the commit. So this commit being -1 means that someone disapproves of pcsx2 being compilable.
- *sigh*
- f3r....
- I -1 'cause this commit broke funcionality, it compile just fine without any errors, but was unplayable, so I couldn't test the changes! But I'll accept your advice. ;)
- f3r....
- And sorry for -1 this commit, it was the previous commit that broke things but this one was compilable, so I commented in the revision that compiled. I'm not a advanced programmer like those who commit here but I understand the basic of programming and I just compile and test almost every changes 'cause I trying to understand better the this code in particular! Sorry for -1 in here, again!! Keep up the good work...
- arcum42
- That's all right, just next time I'd judge how likely a commit is to actually cause the issue you're reporting. 90% of this commit was deleting or adding headers, and the other change isn't anything that could possibly affect the GS plugin. (And in fact, is only used in the game database loader, iirc.)
- Where as if you look at the commit that broke things, it directly says in it that it was supposed to fix fullscreen, which would be directly related to the break you were experiencing...
- (And I'm just waking up, and I'm not a morning person. So if I came off as irritable, that's a lot of it... ^_^ )
- arcum42
- I'm assuming that r3273 would have fixed the issue, btw.
- f3r....
- Once again I'm sorry, I didn't explain very well when I said that was the previous commit that broke things for me, was not YOUR last commit but the r3266 commit, that is the commit before this one. Won't happen again! :)
- btw I'm not criticizing nobody, I was just reporting an issue, and now I know that this isn't the place for it, my bad...
Revision 3268
- 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.
- serban.a...
- does this fix any game with sund problems?
- arcum42
- It fixes one of the debug options, actually. If you turned it on, instead of creating wav files with names like spu2x-Core<something>.wav in the logs file, it was creating files named logs\spu2x-Core<something>.wav in the pcsx2 folder.
- I happened to turn on that option and saw a bunch of files suddenly appear in the pcsx2 folder, so I figured I'd better take care of it. ^_^
- Nothing game-specific, though.
- serban.a...
- i understand:)
- gregory....
- Similar stuff, that will gains to use the setLogsDir api is
- plugins/spu2-x/src/Decoder.cpp: fSpdifDump = fopen("logs/spdif.dat","wb");
- plugins/spu2-x/src/Debug.cpp: dump = fopen( "logs/effects.txt", "wt" );
Revision 3269
- [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
- wing...
- "[email protected] ~/pcsx2-read-only/svn_build $ cmake ../CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE
- -- Enable the stripping by default in Release build !!!
- -- Use internal pcsx2 zlib library
- -- Use internal pcsx2 SoundTouch library
- -- Skip build of spu2-x: miss some dependencies
- -- check these libraries -> soundtouch (>=1.5), alsa, portaudio (>=1.9), a52 (>= 0.7.4), pcsx2 common libs
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only"
- Shouldn't it build spu2-x since it uses pcsx2's 3rd party libraries?
- wing...
- It seems to be no difference based on the cmake options:
- "[email protected] ~/pcsx2-read-only/svn_build $ cmake ../CMakeLists.txt -DCMAKE_BUILD_TYPE=Release
- -- Enable the stripping by default in Release build !!!
- -- Use internal pcsx2 zlib library
- -- Use internal pcsx2 SoundTouch library
- -- Skip build of spu2-x: miss some dependencies
- -- check these libraries -> soundtouch (>=1.5), alsa, portaudio (>=1.9), a52 (>= 0.7.4), pcsx2 common libs
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only
- [email protected] ~/pcsx2-read-only/svn_build $ cmake ../CMakeLists.txt
- -- Enable the stripping by default in Release build !!!
- -- Use internal pcsx2 zlib library
- -- Use internal pcsx2 SoundTouch library
- -- Skip build of spu2-x: miss some dependencies
- -- check these libraries -> soundtouch (>=1.5), alsa, portaudio (>=1.9), a52 (>= 0.7.4), pcsx2 common libs
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only"
- gregory....
- Hum, my change are minor. I hope I did not do a stupid things agains...
- For information only soundtouch and zlib are provided by pcsx2. The purpose it to use the system library. In the futur, we plan to drop 3rparty for linux.
- Could you check that all dependency are ok (except soundtouch because it use 3rdparty one). Thanks
- gregory....
- Ok I found it. I miss the line... Do not know why it was ok my system.
- wing...
- Everything is installed and up-to-date, libsoundtouch is 1.3 tough (latest version on ubuntu/debion).
Revision 3270
- GSdx: Remove ddraw.h references, which were long since obsolete anyway.
- Jake.Stine
- Fixes June DXSDK compilation errors, hopefully.
- kristel...
- GSdx SS4; ZeroGS; CDVDolio; xpad -- LINK : fatal error LNK1181: cannot open input file 'ddraw.lib'
- DXSDK June 2010
- Xtreme2d...
- I can confirm that at least four projects fail to compile without errors even after this commit due to ddraw.lib or some other linker error. As far as I can remember these are a few of the affected projects.
- CDVDolio
- Xpad
- Gsdx
- There one or two more projects that are affected but I can't remember what they are right now.
Revision 3271
- [wiki linux]
- * update cmake command.
Revision 3272
- [cmake]
- * Fix again a stupid things...
- wing...
- [email protected] ~/pcsx2-read-only $ cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=Release -DFORCE_INTERNAL_ALL=TRUE
- -- Enable the stripping by default in Release build !!!
- -- Use internal pcsx2 zlib library
- -- Use internal pcsx2 SoundTouch library
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/wingnux/pcsx2-read-only
- (,,,)
- Linking CXX executable ../bin/pcsx2
- [100%] Built target pcsx2
- Everything is fine again. Thanks!
- Jake.Stine
- Yeah, join the club. I've been totally on a role with bad commits lately myself. >_<
- wing...
- [email protected] ~/jogos/pcsx2 $ ./pcsx2
- Interface is initializing. Entering Pcsx2App::OnInit!
- Begin parsing commandline...
- ZZogl-PG: Calling GSinit.
- ZZogl-PG: GSinit finished.
- ZZogl-PG: Calling GSopen.
- ZZogl-PG: Creating ZZOgl window.
- ZZogl-PG: Got Doublebuffered Visual!
- ZZogl-PG: glX-Version 1.4
- ZZogl-PG: XF86VidModeExtension-Version 2.2.
- ZZogl-PG: Resolution 1280x960.
- ZZogl-PG: Depth 24
- ZZogl-PG: You have Direct Rendering!
- ZZogl-PG: Using multitexturing.
- ZZogl-PG: Maximum texture size is 8192 for Tex_2d and 8192 for Tex_NV.
- ZZogl-PG: Disabling MRT depth writing.
- ZZogl-PG: CRC = 0
- ZZogl-PG: /home/wingnux/pcsx2-read-only/plugins/zzogl-pg/opengl/ZZoglCreate.cpp:787: gl error GL_INVALID_ENUM(0x500)
- ZZogl-PG: Error! has no images/buffers attached!
- ZZogl-PG: Initialization successful.
- ZZogl-PG: Disabling MRT depth writing.
- ZZogl-PG: CRC = 0
- * SPU2-X: Enumerating PortAudio devices: *** Device 0: 'HDA ATI SB: VT1708S Analog (hw:0,0)' (ALSA)
- *** Device 1: 'HDA ATI SB: VT1708S Digital (hw:0,1)' (ALSA)
- *** Device 2: 'USB Web-CAM : USB Audio (hw:1,0)' (ALSA)
- *** Device 3: 'front' (ALSA)
- *** Device 4: 'surround40' (ALSA)
- *** Device 5: 'surround41' (ALSA)
- *** Device 6: 'surround50' (ALSA)
- *** Device 7: 'surround51' (ALSA)
- *** Device 8: 'surround71' (ALSA)
- *** Device 9: 'iec958' (ALSA)
- *** Device 10: 'spdif' (ALSA)
- *** Device 11: 'default' (ALSA)
- *** Device 12: 'dmix' (ALSA)
- *** Device 13: '/dev/dsp' (OSS)
- *** Device 14: '/dev/dsp1' (OSS)
- Zogl-PG: Disabling MRT depth writing.
- ZZogl-PG: CRC = 69b2071c
- ^[[?62;9;cKilled
- [email protected] ~/jogos/pcsx2 $ 62;9;c
- spu2-x still stops playing after a minute or so, it's driving me nuts!
- gregory....
- Understand that to fix a bug, we need to reproduce it. Then with a lots of free time understand what is going wrong. Then find a way to fix it.
- Just 2 free advices. Delete your pcsx2 dir and reconfigure everything (not just spu2x). In my case, I manually edit the spu2x ini to change HostApi to alsa.
- wing...
- Thanks for the tip on the ini file, I'd completely forgotten about it! My portaudio block is like this:
- "[PORTAUDIO]
- HostApi=Unknown
- Device=default
- Wasapi_Exclusive_Mode=0"
- I change Unknown to Alsa, save but when I run pcsx2 it reverts to Unknown. Anyway, I'm gonna try to figure it out myself, thanks for the help!
Revision 3273
- Fully implement hash-based database lookup. Fix some bugs that caused startup
- crashes in previous revisions of mine.
Revision 3274
- 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
- kaboo...
- wow that's a lot of work congrats
- shadowladyngemu
- Nice one, Buffy the Vampire Slayer - Chaos Bleeds (U) boots now (narrowing my not even ingame games to 1 :P) and it actually looks nice which it hasn't for a while and even dissapearing/flicker characters/objects don't happen anymore which I don't even remember if it ever didn't have that.
- Only problem with that game now is that it's spamming this in the console but the game itself looks perfect so... very nice :P
- Vif1: Unknown VifCmd! [12]
- Vif1: Unknown VifCmd! [12]
- Vif1: Unknown VifCmd! [12]
- shadowladyngemu
- Oh hmmm... seems the FFX FMV gamefix is freezing the FMVs on it now...
- Wagnar...
- Wag the fix for Bleach in the gs.cpp intended for the bankai animation crash? because if it is, its not fixed.
- Wagnar...
- nvm... I saw the "commented out" thing... my bad
- shadowladyngemu
- There seems to be some minimal SPS on some games.
- shadowladyngemu
- uh nevermind, found a game where it isn't so minimal, Ridge Racer V:
- http://img84.imageshack.us/img84/7946/56112255.jpg
- kristel...
- indeed Tenchu looking good
- now another problem - disappearing sound
- kristel...
- "Champions: Return to Arms" still look bad
- http://j.imagehost.org/0705/ChampionsRtA.jpg
- kristel...
- "Soul Calibur 3" almost fully broken: bad, wrong placed textures (and spikes), partial disappearing sound (
- serban.a...
- sphynx cursed mummy , batman begins and buffy boots again . wow !!!
- serban.a...
- also it seems like crash mind over mutant and crash of titans dont show vif errors in console anymore ,which caused the game to freeze randomly
- wespipe...
- I can confirm the Soul caliber 2 issue. I also believe this commit broke NFL Blitz textures. Alot of textures just aren't appearing on the players - you can see through body parts depending on the camera angle (very noticeable though). This was fine on r3263 and broke by r3276 - but looking at the rest of the commits in that period, this is the most likely culprit, especially given how others are seeing new graphic problems and Soul Caliber gfx are screwed up now.
- Congrats on getting some new stuff going, but hopefully it can be cleaned up some and have the older games retain their gfx functionality.
- refraction
- Cool, i thought there would be issues, i will look in to and fix those :) glad there are other improvements too mind!
- serban.a...
- seems like refraction understood wrong so here it is again
- sphynx cursed mummy now boots and goes ingame and its playable
- buffy vampire slayer now boots and goes ingame and its playable
- batman begins now boots and goes blackscreen after the intro
- konaj...
- this revision broke some Final Fantasy 7 Dirge of ceberus cutscenes,
- last working in r3273
- andutrache
- this rev also broke Sega Ages 2500 Series Vol.32 - Phantasy Star it now hangs when opening some menus or some character says something (random hangs).
Revision 3275
- 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
- refraction
- wow, do i feel the muppet ;p so obvious i SHOULD have thought of it lol
Revision 3276
- 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.
Revision 3277
- GSdx: Fix cases where DX9 cards detected as having DX10/11 under Windows 7.
- Changed the device selector to display either DX10 or DX11 depending on the
- supposed feature set availability reported by drivers/dx.
- chdon...
- I have gtx470 with driver 258.49 (64bit).when I use gsdx 3277 sse4.1,i can only choose directx3d 10 no dx3d 11,and if i choose dx3d 9 when playing ffx,the pcsx(r3281) crash
- danialho...
- 258.49 doesn't have D3D11 apparently.
Revision 3278
- Fix for F9 causing errant fullscreen/windowed mode flips.
- shadowladyngemu
- Oh great, didn't notice it was fixed now :P
Revision 3279
- [cmake]
- * Add a new header
- * Check that libjpeg is installed for zzogl
Revision 3280
- We had savestate breaking changes, so increase the state version.
Revision 3281
- Add missing GIF Path buffers to the savestate (untested code); buddy commit to
- the prev version upgrade -- just a few mins late. ;)
Revision 3282
- Should solve some off the graphical issues from r3274
- ramapcsx2
- Yep, Soul Calibur, Harry Potter and SST are fine now :)
- kristel...
- yes, Soul Calibur 3 fine, but broken sound (from spu2-x) and major slowdown from ~55fps to ~33fps (non virtual fps - i mean real)
- "champion rta" - still broken
- Gauntlet Seven Sorrows - flying fine from 3274, i think (been broken on hardware)
- refraction
- Yeh the sound issue is spu2-x, not sure where the slowdown comes from, some people claimed its from the SSE4 instructions that were added to microvu
- refraction
- Kristeldux: Can you start a new issue for that game and state when it was broken, what is wrong with it etc?
- ramapcsx2
- refraction:
- No need for it. It got slow with the new buffer, so the last version it worked nice and fast was r3273.
- We might have to make the transfer queue faster.
- refraction
- Kristel recon'd it didnt work in 3273..
Revision 3283
- Fix the fix that fixes the ffx video fix... fixed :p
- Line...
- Oh my.... I don't like FFX but I like your regular fix fix fix fix stuff ! =D
- Thank you !!!
- kristel...
- ,-) ...as i...
Revision 3284
- [cmake] Fix a long standing typo
Revision 3285
- 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
- refraction
- oops, i meant batman begins ;p
- Marco.Hillenbrand
- I guess OutputDirectory="D:\Files\ps2\Pcsx2\$(PcsxSubsection)" wasn't meant to be in the project file
- refraction
- crap lol ill revert that ;p
- gladiato...
- I'll try to check Batman as soon as i got time.
- But positive anyway for the effort.
- :)
- weimingzhi
- Tenchu: Fatal Shadows is broken again with this revision but with a different issue.
- weimingzhi
- only supervu is broken... microvu is okay.
Revision 3286
- Nothing to see here, i wasn't being lazy in any way shape or form with my
- awkward ways of testing the emu...
Revision 3287
- Apologies... Monkey problems, I'm sure you understand.
Revision 3288
- GameDB: Add PAL edition of Valkyrie Profile 2.
Revision 3289
- * 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.
- pcsx2gu...
- Triace game fix working again gj ;)
Revision 3290
- * 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.
Revision 3291
- GSdx: minor fixes to movie recording.
Revision 3292
- 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.
- cottonvibes
- yeh the F12 thing isn't freezing up the gui anymore; doesn't always bring up the dialog box when you press F12 after canceling the first time; but at least its not causing any unresponsiveness problems like it did before.
- good job
- shadowladyngemu
- Getting this from FrameForGS.cpp
- Kbd Accelerator 'F9' is mapped multiple times.
- 'Command Sys_RenderswitchToggle' is being replaced by '祓彳敒摮牥睳瑩档潔杧敬'
Revision 3293
- Fixed up lemmings, was a condition i never thought about, stupid Path3 masking..
Revision 3294
- SPU2-X: Double IRQ prevention found on real hardware. Only affects developers
- who didn't read the SDK documentation properly, like me. Nothing fixed as far
- as we know.
Revision 3295
- 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 :)
- wing...
- Yeap, it indeed breaks linux compilation:
- [email protected] ~/pcsx2-read-only $ make -j3
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/AAFilter.cpp.o
- [ 0%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/3dnow.cpp.o
- [ 0%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/AlignedMalloc.cpp.o
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIFOSampleBuffer.cpp.o
- [ 1%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIRFilter.cpp.o
- [ 2%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/CheckedStaticBox.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp: In static member function ‘static void* soundtouch::FIRFilter::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp:226: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 2%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/RateTransposer.cpp.o
- [ 2%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/cpudetect.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp: In static member function ‘static void* soundtouch::RateTransposer::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp:112: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 2%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/SoundTouch.cpp.o
- [ 3%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/fpu.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/TDStretch.cpp.o
- [ 4%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/groups.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp: In static member function ‘static void* soundtouch::TDStretch::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp:744: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/WavFile.cpp.o
- [ 4%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/jmp.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/cpu_detect_x86_gcc.cpp.o
- [ 5%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/mmx_optimized.cpp.o
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy.cpp.o
- [ 6%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/sse_optimized.cpp.o
- Linking CXX static library libpcsx2_SoundTouch.a
- [ 6%] Built target pcsx2_SoundTouch
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy_sse.cpp.o
- [ 6%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Console.cpp.o
- [ 6%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/EventSource.cpp.o
- [ 6%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Exceptions.cpp.o
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/LnxCpuDetect.cpp.o
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/movs.cpp.o
- [ 7%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/FastFormatString.cpp.o
- [ 8%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/PrecompiledHeader.cpp.o
- [ 8%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/simd.cpp.o
- [ 8%] [ 8%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/IniInterface.cpp.o
- Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/HashTools.cpp.o
- [ 8%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/tools.cpp.o
- In file included from /home/wingnux/pcsx2-read-only/common/include/Utilities/IniInterface.h:18,
- from /home/wingnux/pcsx2-read-only/common/src/Utilities/IniInterface.cpp:17:
- /home/wingnux/pcsx2-read-only/common/include/Utilities/FixedPointTypes.h: In member function ‘wxString FixedInt<Precision>::ToString(int) const’:
- /home/wingnux/pcsx2-read-only/common/include/Utilities/FixedPointTypes.h:168: error: there are no arguments to ‘pow’ that depend on a template parameter, so a declaration of ‘pow’ must be available
- /home/wingnux/pcsx2-read-only/common/include/Utilities/FixedPointTypes.h:168: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/FixedPointTypes.h: In static member function ‘static bool FixedInt<Precision>::TryFromString(FixedInt<Precision>&, const wxString&)’:
- /home/wingnux/pcsx2-read-only/common/include/Utilities/FixedPointTypes.h:211: error: there are no arguments to ‘pow’ that depend on a template parameter, so a declaration of ‘pow’ must be available
- [ 9%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Linux/LnxHostSys.cpp.o
- make[2]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/IniInterface.cpp.o] Error 1
- make[2]: *** Waiting for unfinished jobs....
- [ 10%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/x86emitter.cpp.o
- [ 10%] Building CXX object tools/bin2cpp/CMakeFiles/bin2cpp.dir/bin2cpp.cpp.o
- make[1]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/all] Error 2
- make[1]: *** Waiting for unfinished jobs....
- Linking CXX executable ../bin/bin2cpp
- Linking CXX static library libx86emitter.a
- [ 10%] [ 10%] Built target bin2cpp
- Built target x86emitter
- make: *** [all] Error 2
- arcum42
- Yeah, FixedPointTypes.h needs #include <math.h>, and sVU_zerorec.cpp needs #include <algorithm>. I'll be adding them in fairly soon.
- Jake.Stine
- Ok, go ahead. I have a better fix in mind for FixedPointTypes, but it'll take me a half hour or more to prep it, I think.
- arcum42
- Done. Those two headers were needed for the pow() function and find() function, respectively, btw.
Revision 3296
- GSdx and some other plugins no one cares about: remove ddraw.lib.
Revision 3297
- GameDB:
- * Add SkipMpeg for Guilty Gear X Accent Core Plus ( Issue 761 ).
- * Set SVN EOL props to LF for the GameIndex.dbf file, since that's what PCSX2
- uses when it generates and/or modifies the file.
Revision 3298
- 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.
- cottonvibes
- mmm maybe should've just made a dev blog about this lol
- drkIIRaziel
- Sounds nice :D
- eliotfur
- Nice one... I like it when changelogs have some details inside...
- wing...
- Does it affect other games?
- laki...
- A big heck yeah for new speedhacks and detailed explanations.
- romulux_...
- Very nice, I've been meaning to play GOW 2 again, let's see how this new hack fares against SuperVU +2
- azte...
- lots of details are good, no need of blog. ;)
- zantezuken
- Can be very nice speedhack, too bad current revision is way tooo slow compare to 3200.
Revision 3299
- microVU:
- - Fixed a possible infinite recursion problem from my last commit (Fixes Dynasty
- Warriors 4 crashing...)
- eliotfur
- Hi, cottonvibes:
- I've been playing with mVU recently to check for "microVU0: Possible infinite compiling loop!" problem in "Beyond Good and Evil"... I've increased memory size for VU0 in microVU.cpp... Now I don't get that message, but i get a bunch of "unknown opcode" errors... Please, can you tell if it's pure nonsense or some unimplemented opcodes indeed...
- microVU0: Unknown Micro VU opcode called (3f800000) [14a0]
- microVU0: Unknown Micro VU opcode called (3d99999a) [14a8]
- microVU0: Unknown Micro VU opcode called (3cf8e38e) [14b0]
- microVU0: Unknown Micro VU opcode called (3c8e2762) [14b8]
- microVU0: Unknown Micro VU opcode called (3c3d43c4) [14c0]
- microVU0: Unknown Micro VU opcode called (3c09779e) [14c8]
- microVU0: Unknown Micro VU opcode called (3bd3431d) [14d0]
- microVU0: Unknown Micro VU opcode called (3ba8dd18) [14d8]
- cottonvibes
- i don't have that game; but do you get any errors when you use Super VU as VU0?
- eliotfur
- Yes, I get "inf vu0 prog" several times... I guess it's the same as "Possible infinite compiling loop!"
- cottonvibes
- the problem is most-likely bad data sent to the VU's then; i'll see if i can get the game to test myself though...
- eliotfur
- Okay... I can add that GSDX has its own problems with the game in HW mode, but works in SW well (but slow)...
- Current revision has missing models both with mVU0 and sVU0 (see the intro)
- When I increase VU0 memory and get "unknown opcode" errors, those models are present, but have strong SPS...
- eliotfur
- You're right... I'm happy to have a lot of old revisions... :)
- The bug was introduced long ago in r2766... VU0 works fine in r2760... Every revision after that the game reports "Possible infinite compiling loop!"... VIF0 is to blame...
- refraction
- Yeh, sorry about that ;p
Revision 3300
- 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.
- arcum42
- Fixed compilation under Linux (in Code::Blocks, at least), btw.
- gregory....
- Note: cmake build is also fine in this revision.
- wing...
- Thanks!
- arcum42
- np. I figured it probably would be fine in cmake, but you never know...
Revision 3301
- pcsx2: Rearrange dmaGetAddr a bit.
Revision 3302
- Refactoring: Split FixedPointTypes.h into an h/inl setup.
Revision 3303
- Get Linux to compile again.
- Jake.Stine
- Sigh, there is a proper fix for this.
Revision 3304
- Re-re-re-fix linux/gcc >_< (all that was actually missing was a 'struct'
- keyword .. grr msvc being smart and auto-deducing the type for me)
Revision 3305
- - 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
- eliotfur
- Maybe you should reconsider your Vif0 optimization from r2766 too... It has broke "Rayman Raving Rabbids" and "Beyond Good and Evil" at least (I know they're not playable anyway)... Look at comments to r3299 too...
- refraction
- Eliotfur can you email me on refraction [at] gmail dot com please.
- gregory....
- Hi, for information there is also a regression on grandia 3 with this commit (first bad 3305 (also bad 3313, 3328))
- symptom: screen freeze (sound still playing) during the play. Seems to only affect some places.
- Unfortunately there is no relevant information in log file. I can still send you a memory card near a zone that trig the issue.
- Note I used zzogl (linux version).
Revision 3306
- 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.
Revision 3307
- pcsx2: A bit of cleanup.
Revision 3308
- [No log message]
- Jake.Stine
- Damnit. Log message missing, and if I use tsvn to change it, it could very well nuke all of google code's comments.
- Anyway, this is a nice big change!
- * I removed GS register writes from the MTGS ringbuffer. Only GIFtag data and Vsyncs are transferred to the GS now.
- * Added better support for SIGNAL and CSR!
- * Switched over to using the tGS_CSR type created by arcum; associated code cleanups applied as well.
- ramapcsx2
- Soul Calibur 3 doesn't like this and black screens.
- The game runs for a while still, but crashes later on.
- ramapcsx2
- A lot of Path 3 using games hate it. Destruction Derby and the Persona engine as well.
- refraction
- well, you can fix Destruction Derby this time ;p
- ramapcsx2
- Fixed in 3312.
Revision 3309
- Increase vu0 dynarec cache to 8mb, fixes constant recompilation problems in
- Ratchet and Clank...
- Thanks to rama for figuring this out.
Revision 3310
- (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.
- shadowladyngemu
- Major mem leak going in game in a couple games... actually the first 2 I tried... didn't want to try more :P
- refraction
- Wouldnt it have been better to wait for this so partial transfers are handled first? theres thousands of times path3 could be interrupted (even without my intermediate transfers), this could be very dangerous as pcsx2 is.
- refraction
- also the better solution would have been just to remove the hacks from gsdx as they arent required anymore, any of them ;p
- Jake.Stine
- I'd also like to point out that what I did in this commit is equivalent to removing the hacks from GSdx, since I'm just calling the unhacked path. PCSX2 still runs path-specific code in GIFpath_Parse. I did not remove that.
- ramapcsx2
- Regressions from this fixed in r3313.
Revision 3311
- 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)
Revision 3312
- Temp fix for Soul Calibur 3, possibly most other broken games.
- Zeydl...
- Persona 4 is still brocken,
Revision 3313
- 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).
- ramapcsx2
- Seems to have fixed all new issues.
- Jake.Stine
- Yeah I really thought that would be a simple 1-step process to going toward the MTGS packet reordering system. But I forgot that packets coming out of pcsx2 are still partials. My bad. >_<
- The SIGNAL part bothers me more though. I'll have to try and see what the deal is there.
- shadowladyngemu
- yey no more mem leak for me :P
- refraction
- Thats better :) gonna be a one fell swoop job changing that :)
Revision 3314
- Since we're not using MMX registers to hold EE data in the recompilers anymore,
- we should be safe to exclude them from register saving / storing.
- Pretty big speedup in games with lots of GIF activity (Soul Calibur 3 goes from
- 40 to 48fps).
- romulux_...
- Speedup is always welcomed, nice job!
- ramapcsx2
- Guess I better not mention that we lost a ton of fps earlier though then?
- Oh. Whops. :p
Revision 3315
- SPU2-X:
- Revert all reverb area tryouts, caused bleeps in many games (breaking Ys and
- that shonen jump game, but oh well).
- kristel...
- Sound Effects in Soul Calibur 3 are back... (for me)
- ----------
- sorry for off-topic... I play "Aeon Flux" and console shows that...
- **WARNING** receiveSpuCoreStatus - core 1 voice 2 has invalid nax 5010, address range = ae3c0...af2b0
- **WARNING** receiveSpuCoreStatus - core 1 voice 12 has invalid nax 5010, address range = 9fe80...a0d70
- **WARNING** receiveSpuCoreStatus - core 1 voice 18 has invalid nax c9a40, address range = c7d40...c9a40
- **WARNING** receiveSpuCoreStatus - core 1 voice 23 has invalid nax 5010, address range = cb8c0...cd550
- **WARNING** receiveSpuCoreStatus - core 1 voice 19 has invalid nax 5010, address range = eb0c0...ecae0
- **WARNING** receiveSpuCoreStatus - core 1 voice 20 has invalid nax 5010, address range = c7d40...c9a40
- **WARNING** receiveSpuCoreStatus - core 0 voice 9 has invalid nax 86420, address range = 79f40...86420
- ...and so on...
- Game almost playable... - a little speedup, about 10 fps, will be great - because it game of action.
Revision 3316
- 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.
Revision 3317
- I forgot to change one line. Also took the time to set a toggle for this other
- feature.
Revision 3318
- SPU2-X:
- - Some preliminary work on better resets. Also some commented out yet changes.
- Jake.Stine
- Yay. I'll help work on cleaning this up tomorrow-ish.
- wordmanw...
- Was modifying the values of EffectsStartA/EffectEndA intentional? (they were 0xEFFF8/0xFFFF8 before, 0xFFFF8/0xEFFF8 now)
- ramapcsx2
- Good spotting!
- But okay, this one shouldn't matter, the ps2 sdlib does it as well :p
Revision 3319
- zzogl-pg: Assorted cleanup. Added ZZoglCRTC.h, to clean up some clutter in
- ZZoglCRTC.cpp.
Revision 3320
- 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. ;)
- shadowladyngemu
- X-men Legends, Metal Gear 2 (demo disc at least) not booting anymore, didn't check many games tho.
- azte...
- good thing for ys 6, i hope you find the source of the problem for the other games. :)
- infelp...
- Tales of the abyss is broken on this. First battle i got into. EE shot up to 100%. FPS dropped to 18 and the game's graphics froze, music still played.
Revision 3321
- ... 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).
- shadowladyngemu
- The games I said in r3320 that didn't boot anymore boot again, should have checked if there was a fix I guess xD
- Jake.Stine
- Ok, looks like SC3 is missing post processing effects maybe, which would make sense since I did make changes to the sync of MTGS and such. I'll have to look into it tomorrow. So tired. >_<
- (and I doubt it's a hard fix; just a matter of figuring out what I overlooked. It's possible I'm not copying enough GS regs, for example)
- keb...
- sorry for posting in this revision, but i'm not sure which of the latest did this, my games are having really strange behaviors, every time there is a loading that is, like loading the game, or loading a screen, it takes a lot of time
- ffx takes a lot of time to the memory card selection loading screen, and while in game takes a lot of time to access the menu, when after closing the menu, the world textures are gone
- ffxii takes like 5 minutes to load from the memory card
- default settings, no speedhacks, no gamefixes, but tried with them on and it's the same
- sorry for not knowing in which revision it started, i only know its from r3285 onwards
- ramapcsx2
- kebrus:
- Try the ee timing hack in gamefixes, see if that fixes it.
- Jake.Stine
- @Kebrus:
- We're not having any luck producing this problem on our setups so I'm not sure what else to tell you at this point.
- Jake.Stine
- Soul Calibur 3 errors were the fault of my having EE Timing Hack enabled. So right now this revision is working very well for me. I'm testing some other titles now.
- f3r....
- I got these messages in log: "sceGsSyncPath: DMA Ch.1 does not terminate
- <D1_CHCR=10000105:D1_TADR=0011bf90:D1_MADR=001001e0:D1_QWC=00000012>
- <D2_CHCR=00000000:D2_TADR=00000000:D2_MADR=00000000:D2_QWC=00000000>
- <VIF1_STAT=100000cb:GIF_STAT=00000b00>"
- It loops and the emulation kinda freezes and it happen at random places, maybe its the same problem that kebrus has but I thing it start to happen when GIFpath have been modified. I have the default config without speedhacks.
- ramapcsx2
- f3r.DLK: In FFX?
- Jake.Stine
- Also, SuperVU is currently buggy. Do not use it. mVU only please.
- refraction
- f3r.DLK: What game?
- keb...
- i really don't know what was the problem, but using r3326 everything is back to normal, faulty compile i guess :\
- thx anyway ;]
- PS: and i tested the ee timing hack before upgrading the revision, didn't help
- f3r....
- I just tested the Rock Band's games but in prior revision to 3300 they were almost perfect with minor bugs in some effects and also GT4 crashed the emulator before this this commit but that doesn't matter now! I will test more games and I'll report.
- f3r....
- Well I don't have many games to test but in all I tested the rock band's games are the only with this problem.
- refraction
- f3k.DLK: I suspect you are using supervu, hopefully this should be fixed soon
- f3r....
- No, I'm using default settings and microVU is the default for VU. As I said before it is related with the changes in GIFpath.
Revision 3322
- zzogl-pg: Fix a silly typo. Issue 766 .
Revision 3323
- zzogl-pg: Some work on the Gif Registers. I'm trying to bring them a bit closer
- to the way GSdx handles them.
- arcum42
- Nowhere near finished, but this seemed like a good commit place. Next step would be to get it to use all those structs I copied in from GSdx...
- Jake.Stine
- My only word of warning is that I don't think GSdx's method of handling registers is very efficient. So you might notice a few %'s speed loss once its done, if that's ok. Basically its the fault of the class-based function pointers. They don't optimize well. I was even planning on redoing it using a simpler non-classed system in GSdx myself at some point.
- arcum42
- I'll keep that in mind. I'll admit I'm more concerned about accuracy and readability right now, though speed is a concern.
- Part of what I'm trying to do here, though, is to get things similar enough that I can easily tell at a glance what ZZOgl is doing differently from GSdx. Some of it's obvious, like the horrible hack that is "NoHighlights", but I'm sure there are more subtle differences.
- And, of course, if you redo the register code in GSdx, I'll probably follow suit here.
- Of course, I'd meant to start by implementing registers on GSNull first, but somehow it didn't work out that way... ^_^
- wing...
- Thank you very much, arcum42! It's really good to see work being done on zzogl since it's the only video plugin linux users can use.
Revision 3324
- zzogl-pg: Get rid of some annoying spam when debugging, and remove some old
- code.
Revision 3325
- Small fix to the ee timing hack.
- konaj...
- broke ff7doc, ee timing fix is the only way to get it to the game menu/ingame if save-data is present.
- with this change it broke it :X
- ramapcsx2
- Yeah, this should absolutely not happen. The game must have lucked into working.
- konaj...
- yea its strange, game will get to the menu and ingame as long as there is no save data, but as soon as you start a new game and it creates a save after you restart the game it will lockup where the first FMV usually plays (before this fix the EE timing hack would allow it to get to the menu and resume saves ..etc)
- this is a simple change so i can always change it back to 1 if i ever need to play ff7dc, Other then that maybe you can look into this game more it seems to use alot of the ps2 hidden secrets :), maybe even the most demanding ps2 game there is.
Revision 3326
- SPU2-X: Reverb compatibility improvements (fixes Ys6).
- * EEA / ESA writes are ignored when Effects are enabled.
- * When effects are disabled, reverb does not process IRQs or produce sound.
Revision 3327
- SPU2-X: This should be more correct.
- ramapcsx2
- Jake:
- This makes it try to set negative areas again, but we need to update the
- buffers when writing to the EEA / ESA regs..
- It didn't get updated with our sample code otherwise.
- Jake.Stine
- It is in fact more correct.
Revision 3328
- Fix for Beyond Good and Evil (maybe Raving Rabids too), added a couple of bits
- of logging for 8 and 16 bit reads.
- eliotfur
- Updating source, compiling, testing... ... ...
- eliotfur
- Testing complete:
- Rayman Raving Rabbids and Beyond Good and Evil FIXED...
Revision 3329
- zzogl-pg: fix a warning on win32, and remove the non-existent gssoft.def file
- form the vsproj.
Revision 3330
- 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.
- kristel...
- so you know...
- 12>..\..\gui\AppInit.cpp(489) : error C2664: 'Threading::pxThread::pxThread(const Threading::pxThread &)' : cannot convert parameter 1 from 'const wchar_t [19]' to 'const Threading::pxThread &'
- 12> Reason: cannot convert from 'const wchar_t [19]' to 'const Threading::pxThread'
- 12> No constructor could take the source type, or constructor overload resolution was ambiguous
Revision 3331
- * 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.
- weimingzhi
- 12>..\..\gui\AppInit.cpp(489) : error C2664: 'Threading::pxThread::pxThread(const Threading::pxThread &)' : cannot convert parameter 1 from 'const wchar_t [19]' to 'const Threading::pxThread &'
- 12> Reason: cannot convert from 'const wchar_t [19]' to 'const Threading::pxThread'
- 12> No constructor could take the source type, or constructor overload resolution was ambiguous
- not sure what problem this is.
- weimingzhi
- looks like constructor which takes wchar_t * type in pxThread is missing. I added it manually and it compiles now.
Revision 3332
- 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)
- cottonvibes
- nokiaqdman: that problem is unrelated to this revision since i didn't modify that file.
- lothar635: the code already handles that. if it attempts to grow to 110mb it'll clamp to 100mb.
- yan.eml...
- Are 100 and 50 mb random numbers? Are there any numbers when it is faster to recompile again rather than search already recompiled? (rec-cache works that way, right?)
- refraction
- nice :) wonder if its worth having this on the EE/IOP? or at least large numbers if there arent already some?
Revision 3333
- ... not sure how I missed committing this last night. >_< (fixes compilation
- errors)
- Jake.Stine
- Clearly I must have done my commit from the pcsx2 subfolder... though I can't imagine why. :p
Revision 3334
- zzogl-pg: Commit patch from zzogl-213 for shaking when interlace is on in FFX-2.
- ( Issue 768 ).
- Krzysiek...
- Hey guys this is not related to this rev but, compering latest rev's to r3244 i lost about 15-20fps in gran turismo 4 and Fight night round 3, on r3244 games was running awesome almost at 100% speed (both NTSC versions), now they got around 40-45 fps and some big slowdowns ;/
- PS: the only good think is that GOW 2 is now running with almost 120fps ;d
- Jake.Stine
- Yes, known. Its because of the GIF PATH1 reordering code and the PATH3 slice code. Its very slow stuff on games that use PATH3 masking.
- azte...
- good work arcum42, now only 197 issues remain. ;)
Revision 3335
- 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).
- wing...
- Breaks compilation on linux.
- WilliamS...
- Let PCSX2 more efficiency!!Good work!!
- Jake.Stine
- >> Breaks compilation on linux.
- Not surprising, I suppose. Though really I thought I was very careful about avoiding errors. I wonder if its like an include file case issue.
- wing...
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/AAFilter.cpp.o
- [ 0%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/3dnow.cpp.o
- [ 0%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/AlignedMalloc.cpp.o
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIFOSampleBuffer.cpp.o
- [ 1%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIRFilter.cpp.o
- [ 2%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/CheckedStaticBox.cpp.o
- [ 2%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/cpudetect.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp: In static member function ‘static void* soundtouch::FIRFilter::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp:226: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 2%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/RateTransposer.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp: In static member function ‘static void* soundtouch::RateTransposer::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp:112: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 3%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/fpu.cpp.o
- [ 3%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/SoundTouch.cpp.o
- [ 3%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/groups.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/TDStretch.cpp.o
- [ 4%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Console.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp: In static member function ‘static void* soundtouch::TDStretch::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp:744: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/WavFile.cpp.o
- [ 4%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/jmp.cpp.o
- [ 4%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/EventSource.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/cpu_detect_x86_gcc.cpp.o
- [ 5%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/mmx_optimized.cpp.o
- [ 5%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/sse_optimized.cpp.o
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy.cpp.o
- Linking CXX static library libpcsx2_SoundTouch.a
- [ 6%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Exceptions.cpp.o
- [ 6%] Built target pcsx2_SoundTouch
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy_sse.cpp.o
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Exceptions.cpp: In function ‘wxString GetTranslation(const char*)’:
- /home/wingnux/pcsx2-read-only/common/src/Utilities/Exceptions.cpp:28: error: operands to ?: have different types ‘const wxChar*’ and ‘wxString’
- make[2]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/Exceptions.cpp.o] Error 1
- make[1]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/all] Error 2
- make[1]: *** Waiting for unfinished jobs....
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/LnxCpuDetect.cpp.o
- [ 6%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/movs.cpp.o
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/PrecompiledHeader.cpp.o
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/simd.cpp.o
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/tools.cpp.o
- [ 8%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/x86emitter.cpp.o
- Linking CXX static library libx86emitter.a
- [ 8%] Built target x86emitter
- make: *** [all] Error 2
Revision 3336
- [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.
- poisiono...
- I'd give 2+ for using the $XDG_CONFIG_HOME-variable, or the fallback on ".config/appname/" in home (which is where i fancy conf-files to be) :)
- I just wish every single program would adhere to this.
- gregory....
- Actually ".config/appname" is the default value of XDG_CONFIG_HOME requested by the specification.
- But yes it would be very cool, if applications can avoid to pollute my HOME dir...
Revision 3337
- Fix Linux. >_<
- wing...
- Thank you!
- wing...
- Not yet...
- [ 0%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/3dnow.cpp.o
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/AAFilter.cpp.o
- [ 0%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/AlignedMalloc.cpp.o
- [ 0%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIFOSampleBuffer.cpp.o
- [ 0%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/cpudetect.cpp.o
- [ 1%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/CheckedStaticBox.cpp.o
- [ 2%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/FIRFilter.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp: In static member function ‘static void* soundtouch::FIRFilter::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/FIRFilter.cpp:226: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 2%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/RateTransposer.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp: In static member function ‘static void* soundtouch::RateTransposer::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/RateTransposer.cpp:112: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 3%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/fpu.cpp.o
- [ 3%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/SoundTouch.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/TDStretch.cpp.o
- [ 4%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/groups.cpp.o
- [ 4%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Console.cpp.o
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp: In static member function ‘static void* soundtouch::TDStretch::operator new(size_t)’:
- /home/wingnux/pcsx2-read-only/3rdparty/SoundTouch/TDStretch.cpp:744: warning: ‘operator new’ must not return NULL unless it is declared ‘throw()’ (or -fcheck-new is in effect)
- [ 4%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/EventSource.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/WavFile.cpp.o
- [ 4%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/jmp.cpp.o
- [ 4%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Exceptions.cpp.o
- [ 4%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/cpu_detect_x86_gcc.cpp.o
- [ 5%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy.cpp.o
- [ 6%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/mmx_optimized.cpp.o
- [ 6%] Building CXX object 3rdparty/SoundTouch/CMakeFiles/pcsx2_SoundTouch.dir/sse_optimized.cpp.o
- [ 7%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/FastFormatString.cpp.o
- Linking CXX static library libpcsx2_SoundTouch.a
- [ 7%] Built target pcsx2_SoundTouch
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/legacy_sse.cpp.o
- [ 7%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/HashTools.cpp.o
- [ 7%] Building CXX object tools/bin2cpp/CMakeFiles/bin2cpp.dir/bin2cpp.cpp.o
- Linking CXX executable ../bin/bin2cpp
- [ 7%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/IniInterface.cpp.o
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/LnxCpuDetect.cpp.o
- [ 7%] Built target bin2cpp
- [ 7%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/movs.cpp.o
- [ 7%] Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/CDVDisop.cpp.o
- [ 8%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/PrecompiledHeader.cpp.o
- [ 9%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Linux/LnxHostSys.cpp.o
- [ 9%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/simd.cpp.o
- [ 9%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/tools.cpp.o
- [ 10%] Building CXX object common/src/x86emitter/CMakeFiles/x86emitter.dir/x86emitter.cpp.o
- [ 10%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Linux/LnxMisc.cpp.o
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:48: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:48: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:53: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp: In function ‘s32 CDVDopen(const char*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:168: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp: In function ‘s32 CDVDgetTOC(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/CDVDisop.cpp:313: warning: unused variable ‘off’
- [ 10%] Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/libiso.cpp.o
- Linking CXX static library libx86emitter.a
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘u64 _tellfile(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:201: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:201: warning: initializing argument 1 of ‘long int ftell(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:205: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:205: warning: initializing argument 1 of ‘__off64_t ftello64(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _seekfile(void*, u64, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:217: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:217: warning: initializing argument 1 of ‘int fseeko64(FILE*, __off64_t, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _readfile(void*, void*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:226: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:226: warning: initializing argument 4 of ‘size_t fread(void*, size_t, size_t, FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _writefile(void*, void*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:231: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:231: warning: initializing argument 4 of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘void _closefile(void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:236: warning: invalid conversion from ‘void*’ to ‘FILE*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:236: warning: initializing argument 1 of ‘int fclose(FILE*)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadZ2table(isoFile*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:330: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBZ2table(isoFile*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:373: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int isoSetFormat(isoFile*, int, int, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:650: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:650: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:657: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:657: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:667: warning: invalid conversion from ‘const void*’ to ‘void*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:667: warning: initializing argument 2 of ‘int _writefile(void*, void*, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:709: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockZ(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:731: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:756: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockBZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:790: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockD(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:821: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:825: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoReadBlockM(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:842: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:843: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:856: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int isoReadBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:869: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlock(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:909: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockZ(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:934: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:958: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockD(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:976: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp: In function ‘int _isoWriteBlockBZ2(isoFile*, u8*, int)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:990: warning: comparison between signed and unsigned integer expressions
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/libiso.cpp:1016: warning: comparison between signed and unsigned integer expressions
- [ 10%] Built target x86emitter
- [ 10%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Linux/LnxThreads.cpp.o
- [ 11%] Building CXX object plugins/CDVDnull/CMakeFiles/CDVDnull.dir/CDVD.cpp.o
- [ 11%] [ 11%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/Mutex.cpp.o
- Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/Config.cpp.o
- [ 11%] Building C object plugins/CDVDnull/CMakeFiles/CDVDnull.dir/Linux/callbacks.c.o
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void LoadConf()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:44: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:45: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:46: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnFile_Ok()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:97: warning: invalid conversion from ‘const gchar*’ to ‘gchar*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnOk(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:189: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:191: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void OnFileSel_Ok()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:215: warning: invalid conversion from ‘const gchar*’ to ‘gchar*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp: In function ‘void CDVDconfigure()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Config.cpp:281: warning: return-statement with a value, in function returning 'void'
- [ 12%] Building C object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/interface.c.o
- cc1: warning: command line option "-fpermissive" is valid for C++/ObjC++ but not for C
- [ 12%] Building CXX object plugins/CDVDnull/CMakeFiles/CDVDnull.dir/Linux/Config.cpp.o
- [ 13%] Building CXX object common/src/Utilities/CMakeFiles/Utilities.dir/PathUtils.cpp.o
- [ 13%] Building CXX object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/Linux.cpp.o
- [ 13%] Building C object plugins/CDVDnull/CMakeFiles/CDVDnull.dir/Linux/interface.c.o
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp: In member function ‘wxDirName& wxDirName::Normalize(int, const wxString&)’:
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp:54: error: no matching function for call to ‘Exception::RuntimeError::RuntimeError(const char [39])’
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:170: note: candidates are: Exception::RuntimeError::RuntimeError(const std::exception&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:169: note: Exception::RuntimeError::RuntimeError(const std::runtime_error&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:168: note: Exception::RuntimeError::RuntimeError()
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:161: note: Exception::RuntimeError::RuntimeError(const Exception::RuntimeError&)
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp: In member function ‘wxDirName& wxDirName::MakeRelativeTo(const wxString&)’:
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp:62: error: no matching function for call to ‘Exception::RuntimeError::RuntimeError(const char [44])’
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:170: note: candidates are: Exception::RuntimeError::RuntimeError(const std::exception&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:169: note: Exception::RuntimeError::RuntimeError(const std::runtime_error&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:168: note: Exception::RuntimeError::RuntimeError()
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:161: note: Exception::RuntimeError::RuntimeError(const Exception::RuntimeError&)
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp: In member function ‘wxDirName& wxDirName::MakeAbsolute(const wxString&)’:
- /home/wingnux/pcsx2-read-only/common/src/Utilities/PathUtils.cpp:70: error: no matching function for call to ‘Exception::RuntimeError::RuntimeError(const char [42])’
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:170: note: candidates are: Exception::RuntimeError::RuntimeError(const std::exception&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:169: note: Exception::RuntimeError::RuntimeError(const std::runtime_error&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:168: note: Exception::RuntimeError::RuntimeError()
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:161: note: Exception::RuntimeError::RuntimeError(const Exception::RuntimeError&)
- make[2]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/PathUtils.cpp.o] Error 1
- make[1]: *** [common/src/Utilities/CMakeFiles/Utilities.dir/all] Error 2
- make[1]: *** Waiting for unfinished jobs....
- [ 13%] Building C object plugins/CDVDiso/src/CMakeFiles/CDVDiso.dir/Linux/support.c.o
- cc1: warning: command line option "-fpermissive" is valid for C++/ObjC++ but not for C
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:39: warning: non-local variable ‘<anonymous union> cr’ uses anonymous type
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void UpdZmode()’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:50: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCompress(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:68: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:124: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:128: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘char* CDR_readTrack(unsigned char*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:344: warning: invalid conversion from ‘unsigned char*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCreate(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:369: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:426: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:433: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:482: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:446: warning: ignoring return value of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCreateZ(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:509: warning: invalid conversion from ‘const gchar*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:589: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:596: warning: invalid conversion from ‘char*’ to ‘unsigned char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: invalid conversion from ‘unsigned char*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: initializing argument 1 of ‘int BZ2_bzBuffToBuffCompress(char*, unsigned int*, char*, unsigned int, int, int, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: invalid conversion from ‘u8*’ to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:621: warning: initializing argument 3 of ‘int BZ2_bzBuffToBuffCompress(char*, unsigned int*, char*, unsigned int, int, int, int)’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:668: warning: deprecated conversion from string constant to ‘char*’
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:623: warning: ignoring return value of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:624: warning: ignoring return value of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:626: warning: ignoring return value of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:650: warning: ignoring return value of ‘size_t fwrite(const void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
- [ 14%] Building C object plugins/CDVDnull/CMakeFiles/CDVDnull.dir/Linux/support.c.o
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp: In function ‘void OnCompress(GtkButton*, void*)’:
- /home/wingnux/pcsx2-read-only/plugins/CDVDiso/src/Linux/Linux.cpp:64: warning: ‘ret’ may be used uninitialized in this function
- Linking CXX shared library ../../../bin/plugins/libCDVDiso.so
- Linking CXX shared library ../../bin/plugins/libCDVDnull.so
- [ 14%] Built target CDVDiso
- [ 14%] Built target CDVDnull
- make: *** [all] Error 2
- gregory....
- Just to sum up the error. But I do not understand why the code is bad (and not before). Constructor are still the same !
- common/src/Utilities/PathUtils.cpp: In member function ‘wxDirName& wxDirName::Normalize(int, const wxString&)’:
- common/src/Utilities/PathUtils.cpp:54: error: no matching function for call to ‘Exception::RuntimeError::RuntimeError(const char [39])’
- common/include/Utilities/Exceptions.h:170: note: candidates are: Exception::RuntimeError::RuntimeError(const std::exception&, const wxString&)
- common/include/Utilities/Exceptions.h:169: note: Exception::RuntimeError::RuntimeError(const std::runtime_error&, const wxString&)
- common/include/Utilities/Exceptions.h:168: note: Exception::RuntimeError::RuntimeError()
- common/include/Utilities/Exceptions.h:161: note: Exception::RuntimeError::RuntimeError(const Exception::RuntimeError&)
- Jake.Stine
- Ok, I know what the problem is. I removed both the char* and wchar_t* overloads. This is only compiling under MSVC because microsoft *stupidly* forgot to put an 'explicit' keyword on their std::runtime_error exception. So C++ is implicitly converting the char* to a runtime_error and then passing that into the exception constructor. (duh)
- Those exceptions shouldn't be RuntimeError's anyway. I was lazy and desperate to get wxPCSX2 working when I coded it, many many moons ago. I'll set them up properly this time.
Revision 3338
- This is part 2 of my PAL timings savestate fix, from r3331. Dunno how I missed
- this one either.
- Norikumi...
- Only human :) don't sweat it.
Revision 3339
- Another fix for GCC compilation errors.
- wing...
- Still doesn't work:
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/FrameForGS.cpp.o
- [ 65%] Building CXX object pcsx2/CMakeFiles/pcsx2.dir/gui/GlobalCommands.cpp.o
- /home/wingnux/pcsx2-read-only/pcsx2/gui/FrameForGS.cpp: In constructor ‘GSPanel::GSPanel(wxWindow*)’:
- /home/wingnux/pcsx2-read-only/pcsx2/gui/FrameForGS.cpp:66: error: no matching function for call to ‘Exception::RuntimeError::RuntimeError(const char [30])’
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:170: note: candidates are: Exception::RuntimeError::RuntimeError(const std::exception&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:169: note: Exception::RuntimeError::RuntimeError(const std::runtime_error&, const wxString&)
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:168: note: Exception::RuntimeError::RuntimeError()
- /home/wingnux/pcsx2-read-only/common/include/Utilities/Exceptions.h:161: note: Exception::RuntimeError::RuntimeError(const Exception::RuntimeError&)
- make[3]: *** [pcsx2/CMakeFiles/pcsx2.dir/gui/FrameForGS.cpp.o] Error 1
- make[3]: *** Waiting for unfinished jobs....
- make[2]: *** [pcsx2/CMakeFiles/pcsx2.dir/all] Error 2
- make[1]: *** [pcsx2/CMakeFiles/pcsx2.dir/rule] Error 2
- make: *** [pcsx2] Error 2
- poisiono...
- Well, this did not worsen the misshap, so i'll make a motivational neutral vote on that basis.
- You will figure out the annoying miss-consistency sooner or later i am certain :)
- Jake.Stine
- Eh, same thing, different instance of RuntimeError. >_<
- This is very much MSVC's fault. The guys who wrote their STL implementation suck.
Revision 3340
- More fixes for the evil RuntimeError constructor ambiguity. (gcc compile errors)
Revision 3341
- 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.
- wing...
- "Linking CXX executable ../bin/pcsx2
- [100%] Built target pcsx2"
- Everything seems to be ok now. Thank you very much, Jake!
- evolutionrevolution
- Crispy Christ? How heretical of you. :P
- ...It's probably a fast-food chain in hell, though. "Sinfully delicious!"
- refraction
- Having an off day jake? ;p got there in the end!
- arcum42
- And I get home, ready to work on getting Linux working again, and it's already taken care of... ^_^
- amberion...
- I think Jake has just invented a new cereal!
- arcum42
- Technically, I think it'd be communion wafers, provided the wafers are crispy enough to qualify. But that's a whole different subject... ^_^
Revision 3342
- Patch in something for ref, may cure some issues with super VU.
- dennisme...
- (EE pc:0013DD10) TLB Miss, addr=0x0 [load]
- gives this error on Harry Potter 3 after the menue.
- refraction
- yeh we know this was wrong ;p
Revision 3343
- Communication error :p
- refraction
- Twas my bad :P
Revision 3344
- [pcsx2 gui]: For first time wizard panel, use PathDefs::GetDocuments instead of
- wx GetDocumentsDir (more accurate).
- [zzogl]: fix a bad path for snapshot.
- Jake.Stine
- For future reference, this also works on wxDirName:
- PathDefs::GetDocuments(DocsFolder_User).ToString()
- ... otherwise, the commit is good. :)
- gregory....
- Ah yes, it is definitely the method I tried to find without success :) I will update it thanks.
- Jake.Stine
- Yeah, many wxWidgets classes have a ToStirng() thing -- it's borrowed from .NET which wx takes a lot of code design from.
- wxFileName lacks one because it would be ambiguous -- fullpath, just filename, dirname, etc.
- I gave one to wxDirName because generally speaking it makes sense that you'd want the full dir path. No filename info to ambiguate it.
Revision 3345
- * Likely fix for cpuIntsEnabled; I think this is the behavior Ref intended. :)
- refraction
- Yep, thats it ;p
Revision 3346
- Worked on SIGNAL support some more; fixes missing menu geometry in Soul Calibur
- 3 (devs: see code comments for details).
- kristel...
- "You on fire" last days, - don't burn down
- have a rest for a while
Revision 3347
- Modified some recent changes a little, should bring back some more of the
- performance that was lost recently.
Revision 3348
- Missed a little bit :P
- kristel...
- err... "SoulCalibur 3" flickering (broken) menu? until "INTC Spin Detection" (hack) switched On (all other setting set by default)
- and partial flickering in-game (no matter hacks switched On or Off)
- it is only for me?
- kristel...
- beside this, look like i got some fps
- refraction
- So its fine with the hack on but not with the hack off??
- kristel...
- exactly, but partial in-game "flickering"...
- Sajty...
- Great! FPS slowdown is gone!
- romulux_...
- kristeldux - I get some partial flickering regardless of Hacks turned on or off. I was wondering the same thing, if I missed anything or is it a general problem for anyone.
- BTW - the only way to get rid of black lines in game is to use native resolution ?
- kristel...
- in GSdx settings, set "D3D internal resolution" to 1020x1020 (or 1200x1200 for example), - it help a little (for me)
- kristel...
- in "Soul Calibur 3", to go to the Options menu, need set "EE Cyclerate" to 2, otherwise you see nothing, but blue background
- other settings by default
- danialho...
- Flickering 3D is caused when a game isn't compatible with the skipdraw hack which i think still defaults to 3?
- unfortunately, skipdraw must be enabled in order for the INTC hack to take effect in 100% of the games i tested that benefitted from skipdraw or intc.
Revision 3349
- -Sorted some VIF problems causing unknown vifcmd errors (Enter the Matrix)
- -Fixed up some path3 masking stuff, trying a slightly different approach too.
- Jake.Stine
- This also fixes Ys6, which now boots without the EE Timing hack again (without the hack it got the unknown vifcmd errors). It started requiring the the EE Timing hack somewhere right around your big commit a week ago (tho it was broken in SPU2-X at that point because of reverb woes).
- gregory....
- Not directly related to this commit, but maybe path3 masking. I have some freeze with grandia 3 (commit 3305). Note: I can provide a save state at 10 seconds of the freeze :)
- With additional log message I add:
- E/0013c708 1be56465: Packed Mode NO E, len: 13, nloop 16, Path 2
- E/0013c710 1be56467: Packed Mode EOP 1
- E/0013c710 1be56467: Packed Mode NO E, len: 67, nloop 14, Path 2
- E/00163210 1be56680: Packed Mode EOP 1
- E/00163210 1be56680: Packed Mode NO E, len: 4, nloop 1, Path 2
- E/0013c520 1be566c6: Packed Mode
- E/0013c708 1be56736: Packed Mode
- E/00177f80 1be5678b: Packed Mode
- E/001457e0 1c19796d: GS Write64 at 12001010 with data 00000000_fffffdff
- E/001457e0 1c19796d: GS Write64 at 12001000 with data 00000000_00000002
- dyna_page_reset @ 0x00001
- dyna_page_reset @ 0x00001
- Uncounted Manual block @ 0x80001300 : size = 39 page/offs = 00001/300 inpgsz = 156
- Uncounted Manual block @ 0x80001630 : size = 11 page/offs = 00001/630 inpgsz = 44
- Uncounted Manual block @ 0x8000165C : size = 4 page/offs = 00001/65C inpgsz = 16
- Uncounted Manual block @ 0x800016A0 : size = 11 page/offs = 00001/6A0 inpgsz = 44
- Uncounted Manual block @ 0x800016CC : size = 6 page/offs = 00001/6CC inpgsz = 24
- Uncounted Manual block @ 0x800016E4 : size = 10 page/offs = 00001/6E4 inpgsz = 40
- Uncounted Manual block @ 0x8000170C : size = 2 page/offs = 00001/70C inpgsz = 8
- Uncounted Manual block @ 0x80001720 : size = 3 page/offs = 00001/720 inpgsz = 12
- Uncounted Manual block @ 0x80001744 : size = 4 page/offs = 00001/744 inpgsz = 16
- Uncounted Manual block @ 0x80001754 : size = 2 page/offs = 00001/754 inpgsz = 8
- Uncounted Manual block @ 0x80001778 : size = 8 page/offs = 00001/778 inpgsz = 32
- Uncounted Manual block @ 0x800013C0 : size = 40 page/offs = 00001/3C0 inpgsz = 160
- File: GIFpath.cpp line 510
- Working code:
- switch(tag.FLG) {
- case GIF_FLG_PACKED:
- GIF_LOG("Packed Mode EOP %x", tag.EOP);
- PrepPackedRegs();
- do {
- if (GetReg() == 0xe) {
- gsHandler(pMem);
- }
- incTag(16, 1);
- } while(StepReg() && size > 0);
- break;
- Bad code:
- case GIF_FLG_PACKED:
- GIF_LOG("Packed Mode EOP %x", tag.EOP);
- PrepPackedRegs();
- if(DetectE > 0)
- {
- do {
- if (GetReg() == 0xe) {
- gsHandler(pMem);
- }
- incTag(16, 1);
- } while(StepReg() && size > 0);
- }
- else //Save doing the while loop and repeat conditionals for nothing :P
- {
- //DevCon.Warning("No E detected Path%d nloop %x", pathidx + 1, nloop);
- u32 len = aMin(size, nloop * numregs);
- GIF_LOG("Packed Mode NO E, len: %d, nloop %d, Path %x", len, nloop, pathidx+1);
- if(len < (nloop * numregs)) nloop -= len / numregs;
- else nloop = 0;
- incTag(16 * len, len);
- if(nloop > 0) curreg = 1;
- else curreg = 0;
- }
- break;
- ramapcsx2
- Breaks SC3.
- refraction
- rama: email ;p
- shadowladyngemu
- Broke Gungrave
- shadowladyngemu
- Oh, broke tekken tag tournament too :p
Revision 3350
- 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.
- wing...
- Thank you!
Revision 3351
- Minor comment cleanups regarding SIGNAL behavior.
- Jake.Stine
- Note to devs: I figure that SIGNAL behavior is ambiguous enough (and lacking in real-world samples and tests at this point) that documenting games' behaviors with regard to it will probably be an important step in getting it right. And seeing how it can cause or fix missing geometry and boot fails in some games, figuring it out is probably worth-while. :)
Revision 3352
- [pcsx2]: minor clean of a previous patch.
- [debian]: * refresh patch and clean
- * fix copyright file
Revision 3353
- 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.
- Jake.Stine
- This should fix Grandia 3, and probably some errors in other select games as well.
- @Ref: Maybe another option would be to turn this into a speedhack option, since making it "safe" would be very cumbersome and offset a lot of the speed gained. But as a speedhack it could remain "unsafe" -- and thus remain maximally effective at the same time for those daring enough to use it. ;)
- Jake.Stine
- oh and forgot to note that I think its compatibility in its current form is around 85-90% .. which isn't bad for a speedhack.
- Norikumi...
- +1 for speedhack.
- refraction
- Not bad at all lol, didnt know there would be any compatability issues to be honest, but it cuts out a ton of loops and conditionals (checking for 0xe about 60-1536 times (an average size i saw when checking this) per Packed tag adds up ;p
- refraction
- Actually this might sort the freezing in GT4 too, that was having random hangs.
- gregory....
- For the moment I did not play with speed hack, too afraid to break anythings, but with summer I think I will change my mind.
- However I have a rough idea that could please user experience. Now that we have a nice database, maybe we can store good or speed hack (will be the user jobs to maintain it).
- For example we could print a warning when enabling a speed hack that it know breaking a games. Not sure it would be a good idea to enable some hack by default.
- refraction
- Actually this might sort the freezing in GT4 too, that was having random hangs.
- Jake.Stine
- Yeah, when cotton and I benched it, the speedup was about 2-5% depending on game; which certainly isn't shabby; but obviously its no good if its not 100% safe. Once bolstered up to be safe, the avg speedup will be in the 1-4% range. Still good, but ugh.. the code will be a pretty big mess >_<
- f3r....
- Still doesn't fix Rock Band's games:
- sceGsSyncPath: DMA Ch.1 does not terminate
- <D1_CHCR=10000105:D1_TADR=001002f0:D1_MADR=001001a0:D1_QWC=00000015>
- <D2_CHCR=00000000:D2_TADR=00000000:D2_MADR=00000000:D2_QWC=00000000>
- <VIF1_STAT=1000004b:GIF_STAT=00000b00>
- This message shows in light green in log continuously and the emulation loops and its unplayable. This happens every time but at random places in game. This started with the changes in GIFpath.
- refraction
- Sorry i must have forgotten we wrote "fixes rockband" in the changes log :P
- refraction
- btw jake check your email. Altho i think ive sussed out what you meant.
- f3r....
- Ey man, I was not demanding that someone fix this, I was just pointing that out, that with the last changes in GIFpath broke rock band's games. If someone want to check this will be great, if not, well patience...
- Do it your way...
Revision 3354
- 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.
- refraction
- that wont work, what if size is > temp? youve just skipped every command following.
- lovecs0...
- temp = ((nloop * numregs) - curreg)
- if size < temp
- -> len = size ==>> len < temp == true
- -> len < temp == true , size < temp == true
- if size >= temp
- -> len = temp ==>> len < temp == false
- -> len < temp == false, size < temp == false
- ----> ( len < temp ) === ( size < temp )
- refraction
- now you're doing exactly what i do, except if the curregtemp is not 0, you dont save it, which is wrong as it could be on reg 8 of 16 when it breaks, which means it would have to start there when the next bit of data is sent, so you would be breaking too early and get back gif packets.
- refraction
- back = bad. like my spelling.
- ramapcsx2
- Last revs helped speed nicely.
- Would be nice to get back the original VU1 mem overflow handling as well :p
- refraction
- look at the next commit lol
- ramapcsx2
- Well, the "oh well, didn't work" looked a bit like it ..didn't work? :p
- Also the BIOS prints smth about overflow and crashes, thought that's the same bug. (Start a game with full boot.)
- ramapcsx2
- Okay, that was my fault.
- Crashes are from some early code in spu2x that I have in my local copy :p
- refraction
- Yeh the overflow messages are from what sudo and jake were talking about last night (XGKICK after clearing the VU memory) so it breaks out as soon as it has done a complete sweep of the memory, should work ok.
- refraction
- btw that was from the next revision where i readded the vu looping, which you asked about 5 comments up and i told you its the next revision :P
- aid...
- Tekken 5 reaches 60fps in battles again, thank you. :)
Revision 3355
- 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)
- f3r....
- Well, for the rockband's games didn't do it!! Maybe next time...
- At least you tried... :)
- f3r....
- See it for your selves:
- http://img38.imageshack.us/img38/2415/rockbandu.jpg
- refraction
- oh well, worth a shot :( it fixed the activision games anyway, was hoping itd be the same engine ;p
- Jake.Stine
- I do think I noticed a couple small bugs in this still. I'm cleaning up, commenting, and will commit shortly.
- but yea, it's definitely much faster now than it used to be, so that's good.
- refraction
- cool thanks jake :)
Revision 3356
- removed path1 hack from gsdx (not needed) and the redundant path3 hack
- thiago_...
- no good for me...its immediately crashes and no run... my gsdx never more works later than r3277 changes... so im using yet the last stable version here the r3273 version...
- refraction
- well the only stuff i removed shouldnt have any effect, one is a hack left over from the non-mtgs days (which dont exist anymore) and the other should be null and void as the size is set by the incomming packet, so that tells it when it needs to finish.
- So you may want to regression test when it started crashing, or try a fresh build.
- eliotfur
- I doubt that any game has used that code anyway... There shouldn't be any regressions... But who knows...
- Saif...
- No, he means not this change but a change after REV.3277
- refraction
- then why did he negative this one?
- chuuey
- god damnit, same thing that i see on dolphin's svn, people coming in and just -1 for no reason, good cleaning up there refraction :)
- lemuel2010
- No -1 at refraction, because is a great programmer!!!! +1
- thiago_...
- sorry... i make tests here... im using for anys games pcsx2 r2186 legacy because give me much more performance and run all my ps2 games smoothly... with r3356 new gui i have more compatibility with new games but very lower performance... i see now than gsdx r3356 don´t works in r2186 legacy but works with r3356 new gui... have chance to fix it?
- refraction
- We probably wont fix something that isnt being used anymore, or at least shouldnt be.
- Jake.Stine
- I'll fix breakages in r3277 soon hopefully. My DX10/11 card is still in RMA since over a month ago, so there's not much I can do until it comes back.
- thiago_...
- thanks jake... i am grateful to you...
Revision 3357
- 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)
- azte...
- good to see fixing in the cdvdiso, most of plugins work we see is about GSDX. ;)
Revision 3358
- LinuzCDVDiso: Second part for fixing Issue 679 . Have CDVD plugin return "1"
- from Open() if the user cancels iso source selector.
Revision 3359
- 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.
- Jake.Stine
- My initial goal was just to comment the new code, since it's been such a source of trouble over the years. And in the process I saw a loophole where curreg could go out of sync, end up being zero'd when it should have been incremented, and result in the optimized copy skipping too many bytes again. So I fixed it. :)
- I'd clean up the QuickParse duplication but there's not much point -- that code should be removable once the MTGS is reorder-enabled. :)
- refraction
- cool, ill try it later, see if it made any difference to the activision engine based games :) (GH3, THP8)
- Jake.Stine
- Soul Calibur 3 problems started in r3349 and are related to VIF changes there, not GIFpath changes.
- kristel...
- yes, i see now... - broken BIOS loading (work on r3355) (Europa v02.00)
- flickering, can't get in browser
- kristel...
- GIFTAG error, size exceeded VU memory size 3ff
- microVU1: Branch VI-Delay (1) [0270]
- microVU1: Branch VI-Delay (1) [0478]
- Jake.Stine
- @kristeldux:
- 1.DISABLE EE TIMING HACK.
- 2.Try again.
- 3.Enjoy working BIOS.
- In that order please, thank you. :)
- kristel...
- all setting by default (no any "hacks", no any "fixes"); true
- i usually say (in most times), if use hacks or fixes
- kristel...
- ow... and if i set software mode (in GSdx), - it hangs on loading, and then crash
- kristel...
- http://i.imagehost.org/0600/PCSX2r3359.jpg
- refraction
- "Comment by Jake.Stine, Today (5 hours ago)
- Soul Calibur 3 problems started in r3349 and are related to VIF changes there, not GIFpath changes.
- "
- hmm odd, reverting the SIGNAL stuff (or bodging it to be like it use to) fixes the graphics :S
- Jake.Stine
- Well it worked when I committed the last SIGNAL revision. I tested it and DDS SMT, since those are 2 games I have that rely on SIGNAL and also have quirky DMA expectations.
- If I revert the last changes to SIGNAL, it might break DDS (which was failing to boot).
- In any case, we're kind of screwed. The original SIGNAL was most certainly not accurate, and I'm not sure the current SIGNAL is either. It's pretty clear that changes to VIF/GIF timings and such have similar effects as changing SIGNAL behavior, and all that's so hacked up that there's no way for me to assume I have SIGNAL right or wrong based on games working. I'd just code SIGNAL to spec and tell you to fix VIF/GIF to "work with it!" except the docs for SIGNAL are a bit vague.
- ... I mean, not really vague. I'm 99% sure the implementation is perfectly accurate if this line is uncommented:
- //if (CSRreg.SIGNAL) // breaks SC3
- But I can't be *sure* enough to tell you to go and fix VIF/GIF to behave properly under those rules... yet. (though the more I think about it, the more I think we probably should)
- Jake.Stine
- Actually! I was thinking about it and I think I've unraveled the mystery behind proper SIGNAL behavior.
- I'm still not entirely sure if a double-throw SIGNAL should actually freeze the GIFpath parser, or just ignore its contents, but everything else I have sorted, and will commit soon.
- Jake.Stine
- ... and just like that, I have discovered that yes, the entire GIFpath should *stall* when SIGNAL is double-thrown -- giving the game as much time as it needs to respond to the first SIGNAL irq and ensure things transfer in the order it wants and/or needs. I'm pretty sure this is used by some games to help them manage their own concurrent path2/path3 transfers.
Revision 3360
- [debian]
- * rename the directory to be more explicit
- * update some files
Revision 3361
- GSdx: Improved DX10/11 detection. Fixes crashes using the Configure... button
- mid-game.
- Jake.Stine
- This is still a sloppy detection method, but I can't really refactor it properly until I get my card back.
- People are welcome to let MSI know how much they SUCK for not getting my card back to me for over a month now. (it has been in "Preparing to ship" status for almost 2 weeks -- yup, takes a long time to stamp a box >_< )
- poisiono...
- Perhaps they are pondering whether they will dare trying to sneak past a cheap "might work fix" by, or just replace it.
- That sounded a little bashing, but when peeved at corporations any vile though can be a bit warming when in wait or hope.
- It is nice of you too work with what you have and at least improve as far as possible under the circums' though :)
- kostamar...
- Well the detection code fails. I need to open the gsdx config panel twice to see it properly, otherwise there are blank drop down menus and the panel shows the gsdx9 image (while 9600GT is dx10 card). Also any option i make is lost if i restart the emulator (first time blank drop down menus again, second time proper panel but with the default settings).
- ramapcsx2
- Yep, it just crashes here when trying to configure GSdx. Debugging :p
- ramapcsx2
- Weird crash..
- ramapcsx2
- Well, the crash is caused by that UnloadDynamicLibraries(); here.
- ramapcsx2
- Fixed in r3370.
Revision 3362
- UI: Fix hangs when hot-swapping GS plugins (which was introduced r3357)
Revision 3363
- zzogl-pg: Bugfix for g_bSaveFlushedFrame, which is *not* used as a boolean, in
- spite of the fact it used to be a BOOL type in zerogs (must have started as a
- bool that zerofrog later added a few extra bits and toggles to).
- arcum42
- I was looking a little further at this, and what's even worse is that it's checked with (g_bSaveFlushedFrame & 0x80000000) in one spot, but never actually *set* to anything other then 1 or 0.
- And, in fact, that's the only uncommented check for it. Maybe it should just be removed.
- Another bad one is g_bIsLost, which is checked multiple times, but never set to anything but false...
- Jake.Stine
- Probably debugging hacks used by Zerofrog on-the-fly. Stuff he threw in hap-hazardly as he dev'd, and then forgot to remove parts and pieces when it was no longer needed.
- arcum42
- Yeah, that's probably where it's from. Think I'll comment it out.
Revision 3364
- ... and it helps when I save both files before committing.
- wing...
- Good to see work being done on zzogl-pg! =)
- Linux users, rejoice!
Revision 3365
- [cmake] Fix a typo
- [debian] Multiple lintian (package checker) fix
Revision 3366
- zzogl-pg: Move the logging code to its own file.
Revision 3367
- zzogl-pg: Move the Keyboard code to a separate file.
- arcum42
- It would not surprise me in the least if this or the last revision breaks ZZOgl on Windows, since I did the Windows changes blind. (Though they weren't exactly rocket science, so it may still compile.)
- If it did break, I'll fix it soon.
- arcum42
- Oh, with this revision, every function in GSmain.cpp is a callback. Which was what I was aiming for.
- arcum42
- Well, tested with r3368, and Windows is still intact...
- arcum42
- Well, tested with r3368, and Windows is still intact...
Revision 3368
- zzogl-pg: Move various stuff related to GSmain around.
- wing...
- It's always good to see you guys working on zzogl! The linux comunity thanks you!
Revision 3369
- [doc] Add a linux man page for pcsx2. Re use Jack command line description ^^
- Jake.Stine
- Jake!
- .. or "Ajek". Since I often typo it that way when typing.
- gregory....
- Sorry.
- My real problem is I tend to use the french sound to write english word... I will double check next time or just use 'air' no spelling issue :)
Revision 3370
- GSdx:
- * Fix BIOS graphical errors by re-introducing part of the PATH1 hacks, which is
- still needed until further notice.
- * Likely fix for DX10+ cards crashing on Configure... (still can't test
- directly because MSI sucks, sorry folks)
- refraction
- Ah yes i never thought of that. we kick out early (when its looped once) so the GS never recieves the rest of the data, so continues the same packet when the next legit one is sent and buggers up. The annoying thing is nloop being > 0 means that a tag is issued, need to debug that really and find out whats sent. Might have a look later.
- ramapcsx2
- Configure crashing is fixed :)
- Jake.Stine
- @Ref: the BIOS basically posts an NLOOP of ~7000. Unfortunately VU1 memory can only contain a maximum of 1024 packed registers. Furtheremore, there's no EOP, so even after the nloop draines, it keeps going with another huge nloop. The BIOS writes the EOP into VU1 memory later. It's very bizarre behavior. I assume it's meant to be a boot-up memory diagnostic or something for the VU1 and GS.
Revision 3371
- [debian]
- * mass package rename from pcsx2 to pcsx2-unstable
- * refresh some patches
Revision 3372
- [debian]
- * finish the rename.
- * add the support of the new man pages for the package
Revision 3373
- * 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.
- Jake.Stine
- I'm done for most of the weekend, most likely. Might work on some small UI things, but not much related to GIFpath.
- Ref: Just make sure that 'aborted' transfers aren't canceled. Ie, everything up to the SIGNAL should be uploaded to the MTGS, and then the DMA and GIFtag positions should point to the register directly after the SIGNAL until such time that the game clears the CSR bit for SIGNAL.
- refraction
- no problem, i will make the transfer break, going to run some scenarios to make sure the signal is at the end of the reglist/packet command, if it isnt, im going to have to make it remember that stuff or have offsets (where it can be offset on a 64bit address rather than 128), so i guess in the end it will work kinda like vif stalls.
- Don't worry, ill think of something ;)
- kristel...
- WARNING : Reset PC0
- -------------------
- yes, it is "Soul Calibur 3" again... - i'm not booting again
- Jake.Stine
- Known. It might be broken for a while.
- Jake.Stine
- To be specific: we might go ahead and hack-fix it again later on, but first we're going to spend some time and try to legitimately engineer SIGNAL so that it behaves as it should; which in turn might fix some games that rely on SIGNAL to ensure proper prim/texture transfer completion order to the GIF (something that we've probably been hackfixing via voodoo timing and DMA slicing up to now).
- rauleops2
- sorry for this but where can i download this r3373? thanks.
- Norikumi...
- https://code.google.com/p/pcsx2/wiki/CompilationGuideForWindows
- kristel...
- sorry for off-topic:
- You can compile it by your self. Read official forum (http://forums.pcsx2.net/) or search wiki.
- Or search&download custom (unofficial) builds through the web, but it is not supported (anyway).
Revision 3374
- [debian] * add some template to ease futur ubuntu ppa updates.
Revision 3375
- (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.
- Jake.Stine
- Rama has already been testing this for quite a while. So we're pretty sure there's no issues to be found with it. I'll remove the freeze code soon, in its entirety. And from then on, I'd rather we never have to rely on it again. ;)
- Jake.Stine
- In other news, this commit should make it possible to use most GCC 4.4 optimization options safely, since we no longer have to worry for GCC corrupting our precious xmm registers.
- eve...
- thanks Jake
- testing
- gregory....
- Just a quick note for gcc 4.4 optimizations. I'am playing grandia 3 with full -O2 (I also check FF12 intro). I did not see any crashes. Anyway better to be corruption-proof :)
- refraction
- I want to positive twice! i hated the freezing crap :(
- Jake.Stine
- @ref: and soon we shall clean the code of them all! O_o hurrahs!
- wing...
- Haven't experienced any speedup on the linux build, maybe we're capped by the opengl plugin?
- Anyway, it's good to see this kind of improvement being made! Congratulations, guys!
- iakobo...
- for what kind of speedup we are talking? 2%? so small that we cant see it? bigger?
- great work on cleaning that staff ;)
- Jake.Stine
- Depends on game. Games that use path3 masking and MFIFO will probably see noticable speedups. Most other games will be minimal.
- nokiaqdman
- Excellent! I'm noticing speedup about 5-10fps.
- aid...
- no change in God of War whatsoever. its slowdowns must be based on something entirely different.
- overall, great job on 0.9.7 though. GoW is the only game I'm still noticing slowdowns in (@ C2D 3,8 GHz), with my whole PS2 game collection spanning 13 games that's quite an achievement, as the compatibility is top notch.
- well, Valkyrie Profile 2 needs some GSdx love badly, but other that that it's really fantastic. I love you guys. ;)
- N2008eo...
- This revision kill Devil My Cry ===> NOT PLAYABLE!!!
Revision 3376
- zzogl-pg: Add a new header. Remove a few includes that didn't seem to be used,
- or were included from elsewhere.
- arcum42
- I'll be adding more to that header later, but I wanted to commit before I break the web of headers...
- And if it turns out any of those headers were needed on Windows, but not Linux, I'll bring them back.
- gregory....
- Arcum,
- I'm not sure it worth it to update cmake file for header. On my system, I was able to compile & run without any .h or .inl. I'm thinking to remove them except if there is a special reason to keep them.
- Anyway, good works for the cleaning.
- arcum42
- Thanks. I'm still in the middle of the cleaning, really. I'm just committing any time I get to a good stopping point...
- And for me it's just easier to remember to update the cmake files if I do it any time I add or delete a file.
- (That and if we ever decide that we want the cmake files to generate Visual C++ project files, for use in Windows, we'll want the headers in cmake. Don't know if we'll want to do that at some point, though.)
- gregory....
- Hum, ok. So I will keep them.
Revision 3377
- zzogl-pg: Shuffle stuff out of zerogs.h to ZZGl.h and Util.h.
- arcum42
- Essentially, zerogs.h should be a header dedicated to the ZeroGS namespace. Instead, stuffs been shoehorned into it for years. I'm working on cleaning it out.
Revision 3378
- [debian] * Create a second rules files to allow testing in system that have
- fglrx (ati/amd) drivers
Revision 3379
- zzogl-pg: Hack and slash at zerogs.h.
Revision 3380
- Remove MMX register freezes from MemcpyFast.
- guhun...
- It is alot faster. Min frame rate for FF X-2 intro is at 95, instead of 78 in r3375.
- kacz...
- Amazing speed-up (about 20-30%)! One of the best commits ever!
- kacz...
- Jake: could you please briefly explain why this 'simple' commit improves speed so significantly?
- WilliamS...
- Reduced many instruction~~
- Great step~~
- kristel...
- Why it shows me (no matter how many times i compile it) rev. 3375? instead of r3380...r3381 ?
- sorry for off-topic
- Jake.Stine
- I should fix that. PCSX2 checks only its /pcsx2 folder. it should include the common folder as well. Obviously installer changes (nsis / debian) don't change the exe's revision number.
- Ami.Mizu...
- Reduction in instructions is always welcome when possible. :)
- romulux_...
- 320+ lines of code removed, that is really something with a rare occurance.
- GJ Jake!
- Jake.Stine
- 310 of them have been unused for 2 years :p
Revision 3381
- NSIS: Fix for installer not installing VS2010 on some systems ( Issue 733 )
Revision 3382
- zzogl-pg: Enable a GifTransfer shortcut from GSdx. Comment out two variables
- that weren't being used.
- arcum42
- More then two variables, actually. Forgot about ones I noticed along the way...
- Remfin
- GifTransfer.h, line 96...little typo there
- arcum42
- Hmmm. Reverse of the usual way the typo goes. Thanks...
- Of course, now I'll have to test that code again. ^_^
- arcum42
- There's also a missing break statement...
Revision 3383
- microVU: Fixed various bugs... fixes "Kingdom Hearts Re Chain of Memories" and
- possibly other games that were broken with mVU recently...
- WilliamS...
- Good Job~~
- COTTONVIBES~~
Revision 3384
- microVU: Move exception handler code to beginning of mVU rec execution instead
- of inside mVUsearchProg.
- Jake.Stine
- ... that won't work. The whole point is that the exception handler has to catch exceptions *before* they try to cross the mVU's recompiled code on the stack frame. Exceptions can't be trusted to cross recompiled code because recompiled code doesn't have entries in the exception unwind tables.
- Was the inclusion of the try{} block inside mVUsearchProg a noticeable speed hit?
- ramapcsx2
- Any code there will be a speed hit. Hard to measure though ><
- Jake.Stine
- Well that's the actual recompiler part. My guess is that a try block will be like 0.0001% of the overhead of the recompiling process. And it will only be run in that case, so it *really* shouldn't make any diff.
- And if it does, I'll just make a quick optimization to mVU's recompiler somewhere and get back like 10x as much speed as was lost. :p
- Jake.Stine
- ... its my fault anyway since I thought I put in the comments why I needed the exception there, but I said "recompilers" instead of "recompiled code".
Revision 3385
- zzogl-pg: Minor fix from my last commit.
Revision 3386
- 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)
Revision 3387
- 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. :)
Revision 3388
- * 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).
Revision 3389
- [cmake]
- * move build options to the build module
- * Add some documentation about the default cmake build options
Revision 3390
- [wiki]
- * More info for building the package
- * Side note for ubuntu ppa
Revision 3391
- [copyright]: * Update copyright to use the new postal address of the Free
- Software Foundation. Nothing to see.
Revision 3392
- 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)
- eliotfur
- Removing MMX and XMM register freeze code along with r3375 changes gave us approximately 3% speedup since r3353... Nice...
- human...
- killzone works
- human...
- with killzone i have crashes to desktop after 3-4 levels.
- microVU1: Cached MicroPrograms = [12149] [PC=0755] [List=17] (Cache = 99.977%)
- microVU1: Program cache limit reached. Size = 0x2f06051
- microVU1: Attempting to resize Cache [65mb]
- microVU1: Cached MicroPrograms = [19270] [PC=0617] [List=23] (Cache = 99.938%)
- microVU1: Cached MicroPrograms = [19271] [PC=06a4] [List=28] (Cache = 99.969%)
- microVU1: Program cache limit reached. Size = 0x61082b4
- microVU1: Program cache limit reached. Size = 0x61082b4
- microVU1: Program cache limit reached. Size = 0x63ffbc9
- microVU1: Cached MicroPrograms = [19598] [PC=0540] [List=19] (Cache = 103.092%)
Revision 3393
- [debian]
- * reduce requierement for ubuntu lucid
- * remove windows file of the linux tarball. Copyright issue and useless anyway
- wing...
- This should help ubuntu users!
Revision 3394
- zzogl-pg: Fence off an area where I can work on the register code without
- worrying too much about it.
Revision 3395
- [cmake] remove -fPIC. Expect a little speed up.
- [plugins] remove __forceinline on variadic function that has been broken by the
- removal of -fPIC.
- [debian] update readme about fpic status. And add some lintian overrides.
- wing...
- Good! It was commited pretty fast! Gonna test the new build.
- gregory....
- Just curious, if you really found some speed up, rise your hand :)
Revision 3396
- [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.
Revision 3397
- Emitter: Major refactoring / renaming job. Improved type checking and
- usefulness of xAddress* (Void, 32, 64, etc) types.
Revision 3398
- * Removed a completely unnecessary use of xSmartJump in the SLT instruction
- generation
- * Reduced the amount of console log spamming when hitting F4/Tab/etc.
Revision 3399
- [debian]
- * rename a file
- * fix to handle old ubuntu dpkg & debhelper tool
Revision 3400
- 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 :)
- jfre1...
- Area 51 (PAL) version still doesn't work, however this is the first time that I've seen the game go beyond the first screen. The game now goes beyond that first screen, shows the first movie but then freezes within the next 5 seconds and that's as far as it goes.
- So no Area 51 still doesn't work I'm afraid.
- refraction
- doh, ok that was my hasteyness, i saw it get past the freeze and figured it working cos it use to work lol
- refraction
- From what i can tell, it dies reading memorycards, so thatd be the first place id look for the problem.
- jfre1...
- I tested it a few further times with 3404 and it occasionally got past the checks though whether it would successfully get past the check or not appeared to be random as sometimes I could get past it and other times not. On my last test I was able to get up to "Start Campaign" but then got a freeze when checking memorycards there. On the majority of other tests I didn't make it past the first memorycard check.
- ramapcsx2
- Sounds a lot like SIF timing voodoo then. Tried the EE timing hack yet? Also try the EE and IOP sync speedhacks.
- Nice work, ref. Still testing the games :)
- romulux_...
- +10 verry happy about Soul Calibur 3, since I've started playing recently and I had alot of ugly issues with it untill now, thanks refraction and all the other devs for your team work!
Revision 3401
- Forgot to do GIF MFIFO :P
- drkIIRaziel
- Aren't you supposed to be playing WoW anyway ?
- refraction
- Im in between wow sessions ;p
- poisiono...
- Too bad WoW is not for PS2, that might make the different interests fuse somewhat more ;)
- A grand apprecitation for all the hard work for us pcsx2-user, humorous attempts aside :)
Revision 3402
- Potential fix for Guitar Hero 3
Revision 3403
- Gah better change this, else we could get in to a nasty catch 22 with the FINISH
- stuff >.<
Revision 3404
- 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
Revision 3405
- microVU: Reset rec when buffers cannot grow any larger. (should fix Killzone
- crashes)
- cottonvibes
- Yeh i had forgotten a few rec resets xD
Revision 3406
- microVU: converted all code to the new emitter style. If anything breaks, blame
- the guy below me.
- Ragha...
- The previous version was more readable.
- ValDanX
- But these faster... With small fix it nice revision!
- sudonim1
- It shouldn't be noticeably faster or slower (except maybe to compile), and I don't know what to say to you if you found the old emitter style readable.
- ValDanX
- In some game speed up ~3%.
- Jake.Stine
- I admit I didn't think this would get done like, ever. Let alone in about 24 hrs time.
- cottonvibes
- nice job, i haven't reviewed it all yet, but so far i don't see any bugs
- davo...
- have tested and i have come across something. Outrun 2006 coast to coast there are periods of time where the game freezes but then goes back to normal. this is the only rev this has happened on
- Edit: Mabey i was wrong about this being the only rev but it did not happen in rev 3392. couldn't get a new rev to test between those 2
- cottonvibes
- davon92, if you can't test the previous revisions, can you at least try turning on super VU for VU0 and VU1, and see if that fixes the freezes?
- davo...
- ok will try
- davo...
- fixes the feeeze the stalls in outrun but jacks up guitar hero 3 even more but switching is ok
Revision 3407
- - 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.
- cottonvibes
- Note I initially was going to convert all of these:
- xAND.PS(Fs, ptr128[mVUglob.absclip]);
- to this format:
- xAND.PS(Fs, ptr128[&mVUglob.absclip[0]]);
- But after doing so for most cases, I realized that the first version is actually a lot more cleaner and easier to read since its less cluttered with symbols.
- And you don't have to be scared that potentially you're passing a value by mistake, since the emitter will give an error if that's the case.
Revision 3408
- 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.
- Ragha...
- Actually MSVC is right. Constructors are special, C++ compiler has no right to optimize them. (Some programs would break in ugly way when they do. And there is too much legacy code to force some extremely rigid standard for compilers)
Revision 3409
- 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).
Revision 3410
- * 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).
- ramapcsx2
- That was quick :)
- prison_b...
- great!!!
- the camera on fatal frame 1 on battle mode is working normal again :)
- but the camera on story mode is still buggy :(
- jfre1...
- I very much doubt that that was affected by this commit
Revision 3411
- Work around VU0.code & VU1.code being packed in Linux when freezing memory.
- Jake.Stine
- Not good. This code only works for freezing, not thawing. I'll fix.
Revision 3412
- zzogl-pg: Mucking around with the new register code.
Revision 3413
- zzogl-pg: Change a few assertions into warnings. (Makes it possible to run Final
- Fantasy X-2 with Debug builds. With tons of console spam, mind.)
- arcum42
- Hmmm, "pdepth is has TS_NeedUpdate set". Oops. I'll change that later.
- This commit does mean that other people can compile Debug versions and switch to that temporarily when playing FF X-2 in order to see the Ability menu, though.
- I'm still looking into why that is happening...
- wing...
- Thank you very much!
- arcum42
- Np. In fact, I just established that it's an optimization issue. It works properly if you remove -O2 from the release build. Now I just have to figure out how to get around that...
Revision 3414
- microVU: cosmetic changes to some ptr[] instances for SSE and one less x86
- instruction for MFIR.
Revision 3415
- zzogl-pg: Add -fno-strict-aliasing to zzogl-pg's compiler flags. (Fixes FF X-2.)
- arcum42
- The down side is that various optimizations use strict aliasing. Oh well, maybe I'll figure out which code the optimization is breaking at some point.
- arcum42
- I tested with code::blocks, so the cmake build still needs confirmation on this, btw...
- ramapcsx2
- So it wasn't even an emulation bug..
- Nice job :)
- gregory....
- The good things about that is some warning can be printed "-Wstrict-aliasing"
- The part that is surely broken is:
- plugins/zzogl-pg/opengl/Regs.cpp:698: warning: dereferencing pointer ‘newinfo.276’ does break strict-aliasing rules
- plugins/zzogl-pg/opengl/Regs.cpp:698: note: initialized from here
- plugins/zzogl-pg/opengl/Regs.cpp:702: warning: dereferencing pointer ‘newinfo.276’ does break strict-aliasing rules
- plugins/zzogl-pg/opengl/Regs.cpp:702: note: initialized from here
- Note: There are others warnings but there are not 100% sure.
- arcum42
- @rama: Thanks. It's the same compiler flag I had to add quite a while back to pcsx2. That time I even knew where the problematic code was, but the only other way I could get it to work was a nasty hack.
- @gregory: Thanks. That makes sense, logically, since when I've been hacking on the new Register code, I've been systematically disabling registers, and seeing what it breaks, and occasionally got similar effects.
- I'll play with that area a bit, try approaching the code slightly differently there, and see what happens.
- wing...
- Just tested it on a release build (built with cmake) and the text works now, thank you arcum! =)
- arcum42
- np.
- I'll close the issue, and I'll work on getting zzogl to compile without strict aliasing warnings, and try to get it working without that flag. I may as well check a few other projects as well...
- wing...
- Guess what?
- It apparently fixes this issue! https://code.google.com/p/pcsx2/issues/detail?id=779&sort=-id&colspec=ID%20Status%20Priority%20Component%20Plugin%20Owner%20Summary
- I've tested on NGBC and it looks great! Gonna test on Kof2002UM and KOFXi and report back! =)
- Wow! I'm really amazed!
- gregory....
- Just for information, some warnings can be "false positives". So do not try to bash all warning ;)
- Here the gcc docs extract:
- -Wstrict-aliasing
- This option is only active when -fstrict-aliasing is active. It warns about code which might break the strict aliasing rules that the compiler is using for
- optimization. The warning does not catch all cases, but does attempt to catch the more common pitfalls. It is included in -Wall. It is equivalent to
- -Wstrict-aliasing=3
- -Wstrict-aliasing=n
- This option is only active when -fstrict-aliasing is active. It warns about code which might break the strict aliasing rules that the compiler is using for
- optimization. Higher levels correspond to higher accuracy (fewer false positives). Higher levels also correspond to more effort, similar to the way -O
- works. -Wstrict-aliasing is equivalent to -Wstrict-aliasing=n, with n=3.
- Level 1: Most aggressive, quick, least accurate. Possibly useful when higher levels do not warn but -fstrict-aliasing still breaks the code, as it has very
- few false negatives. However, it has many false positives. Warns for all pointer conversions between possibly incompatible types, even if never
- dereferenced. Runs in the frontend only.
- Level 2: Aggressive, quick, not too precise. May still have many false positives (not as many as level 1 though), and few false negatives (but possibly more
- than level 1). Unlike level 1, it only warns when an address is taken. Warns about incomplete types. Runs in the frontend only.
- Level 3 (default for -Wstrict-aliasing): Should have very few false positives and few false negatives. Slightly slower than levels 1 or 2 when optimization
- is enabled. Takes care of the common punn+dereference pattern in the frontend: "*(int*)&some_float". If optimization is enabled, it also runs in the
- backend, where it deals with multiple statement cases using flow-sensitive points-to information. Only warns when the converted pointer is dereferenced.
- Does not warn about incomplete types.
- gregory....
- Just for the record, I rebuild with the warning most of linux stuff. I took only the "does break warning". It is probably a miracle that pcsx2 run with O2 options ;)
- pcsx2/MTGS.cpp:390: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:389: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:388: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:390: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:909: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:908: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:896: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:895: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:894: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:893: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:810: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:741: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:740: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:893: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:894: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:896: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:895: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:909: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:908: warning: dereferencing pointer ‘tag’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:164: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:163: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/MTGS.cpp:162: warning: dereferencing pointer ‘local’ does break strict-aliasing rules
- pcsx2/Dmac.h:100: warning: dereferencing pointer ‘tag.1879’ does break strict-aliasing rules
- pcsx2/Dmac.h:245: warning: dereferencing pointer ‘tag.1879’ does break strict-aliasing rules
- pcsx2/Dmac.h:100: warning: dereferencing pointer ‘tag.1879’ does break strict-aliasing rules
- pcsx2/Dmac.h:245: warning: dereferencing pointer ‘tag.1879’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1837: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1845: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1845: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1845: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1845: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1857: warning: dereferencing pointer ‘psrc’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1857: warning: dereferencing pointer ‘pdst’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1862: warning: dereferencing pointer ‘pdst’ does break strict-aliasing rules
- pcsx2/CDVD/CDVD.cpp:1866: warning: dereferencing pointer ‘<anonymous>’ does break strict-aliasing rules
- arcum42
- Ah, good. I hadn't tackled that yet because I don't own any of those games.
- That happens, though. One little issue like this can turn out to affect a bunch of things...
- arcum42
- Well, you'll notice "-fno-strict-aliasing" in pcsx2's flags. :)
- And don't worry, I'll use some judgement. I'll only do the ones that look problematic. (Which is a lot of zzogl's code...)
- arcum42
- Hmmm... It breaks on some really silly things, doesn't it?
- gregory....
- Good catch. Actually I remove the flag, when I enabled O2 for testing ^^ It was not my best idea.
- wing...
- You sir are my new hero!
- "The King of Fighters XI" and "Neo Geo Battle Coliseum" works perfectly now! "The King of Fighter 2002: Unlimited Match" still has the same problem but I guess it's a different bug since on the first two ones I've experienced black/missing sprites and on KoF2k2 it's a transparency and slowdown problem.
- So it seems someone should edit issue 779 and set it just for KoF2k2:MI. The other two ones are fixed.
- THANK YOU VERY MUCH!
- wing...
- @gregory Really? I've recently started testing it with O3 and everything is pretty stable =)
- gcc version 4.4.2 (Gentoo 4.4.2 p1.0)
- gregory....
- Well actually it depends, if you remove "-fno-strict-aliasing" like I probably did in the patch I post on the forum. It could have some issues. The new cmake options is much more safe ;)
- arcum42
- IIRC, the opening to Yugioh: Duelists of the Roses had been broken by strict aliasing previously, and was fixed when I put in "-fno-strict-aliasing". Admittedly, that's an obscure game to check...
- pcsx2gu...
- arcum: I have the game so if you need a dump or something I can provide. GJ too for this rev
- arcum42
- @pcsx2guide: If you mean KoF2k2, a dump might be useful. Yugioh: Duelists of the Roses I actually have. I mentioned that since that's the game I'm going to check when I have time.
- And just to confirm, the code causing the issues is in GIFRegHandlerTEX. I think whats happening is that that the expression in that if statement is evaluating to false when optimized, and true when not optimized.
- However, looking at the code, I personally think that the if statement should only control if it does a flush or not, and that the registers should be written regardless... (Which is what GSdx does.)
Revision 3416
- [cmake] Move flags clean in the build modules. Next step allow user to control
- them.
Revision 3417
- [cmake] * new cmake option to contol flags (allow user to break everythings^^):
- USER_CMAKE_C_FLAGS and USER_CMAKE_CXX_FLAGS
- For example enable more optimization on c++:
- cmake CMakeLists.txt DUSER_CMAKE_CXX_FLAGS="-O3"
- Or more warning on c++:
- cmake CMakeLists.txt DUSER_CMAKE_CXX_FLAGS="-Wstrict-aliasing"
- wing...
- Good work! So it means the wiki should be updated? Btw, the part on the zzogl svn is deprecated since it has merged into pcsx2 main svn repository ;)
- gregory....
- Yes I know. Just leave me some time ;)
Revision 3418
- [wiki]
- * Add a "deprecated" to the very old first part of the wiki
- * update cmake options
- * update debian file with latest renaming
Revision 3419
- SPU2-X: More volume! Expect to have to turn your speakers down a bit. (made
- possible by proper clamping)
- thiago_...
- jake... you are the best...
Revision 3420
- GifPath: Fixed Reglist optimization for split transfers, might fix the Tekken 4
- hang (if you are experiencing it)
Revision 3421
- Re-fix for some GCC packed structure bug. Hopefully this version works. It
- should according to the bug being tracked.
Revision 3422
- SPU2-X:
- We overshot the final pre-clamp shift by one bit. Should be final now ;)
Revision 3423
- 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..
- jfre1...
- Confirmed on Area 51 working. Tested several times. No problems at all. Great work :).
- pcsx2gu...
- Tested r3432, Tekken 4 regression is gone, good job ;)
Revision 3424
- 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.
- Jake.Stine
- Relating to gprT's only:
- Reason 2 isn't relevant to gprT's because the purpose of eax, ecx, and edx is already quite clearly defined in x86 ABI. They should be used as local-scope temps only. I mean it's possible to use them for regalloc, but it isn't a good idea since there would need to be explicit control over flushing them across instructions that require them for special purposes (due to various x86 instructions that require them for shifting/mul/div/etc). More importantly, programmers simply don't expect to have to track or flush those regs. If I code in some extra temp crap to diagnose things, I expect to be able to throw eax, ecx, and edx at it. If I can't, that is pretty much a design error of the environment I'm coding for.
- Reason 3 will never happen for the gprT's, since eax, ecx, and edx should pretty well always be the temp regs anyway. That is, if you're working on the assumption that you're going to *have* temps, then by all means you should have eax, ecx, and edx *always* included in that list. To take them out of the list and use some other reg(s) instead would be creating a lot of work and confusion for everyone. If the x86 ABI already defines temps for us, why remap them?
- Thusly, Reason 1 is no longer relevant because we've now determined that these 3 regs are always guaranteed to be safe and local-only. There is no longer any reason to have to find their references on a 'global' scale because their values are only ever meaningful in a local scope to each instruction.
- Seriously, we freely use them as standard temp regs everywhere else in PCSX2. Its not a big deal. ;)
Revision 3425
- UI: Fix a possible deadlock in the console (was introduced sometime after
- r3119).
Revision 3426
- UI: Saw some other minor mistakes in the console log threading >_<
Revision 3427
- microVU: minor cleanup using a typedef to eliminate some redundant list.list->
- syntax. :)
Revision 3428
- [copyright] * second round of bad FSF postal address.
Revision 3429
- [copyright]
- * Add missing copyright according issue 792
- * Miss few files from the previous commit ^^
Revision 3430
- [copyright]
- * same as previous commit except for zzogl
Revision 3431
- Starting some much needed CDVD work. No functional change yet.
Revision 3432
- 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!)
Revision 3433
- [copyright]
- * Upgrade SGI license to 2.0, opensource compliant :) and GPL compatible :)
- Note: previous version (1.1) is not free. And therefore not compatible with GPL.
- Fortunately for us, there is a license clause that allow upgrading the license.
- bailacom...
- Wooow, geat, now i can play Dragon Quest 8 at 758fps (y)(y)(y)
- wtonberr...
- Gracias
- Esto quiere decir que ahora si compilo el pcsx2 en mi compu, podre probarlo y testear sin problema todo su contenido? o seguire teniendo problemas de compilarlo?
- Muchas gracias otra vez :D +1
- Google traslation
- Thanks
- This means that now if I compile on my computer the pcsx2, to test and test all of its contents without a problem? or continue to have problems compiling?
- Thank you very much again :D +1
- KKL...
- This is a change of the license used, not a code change.
- gregory....
- It is only means that is it now legal for user to download it and to compile with GPL code. This is important if PCSX2 want to ship linux package for linux users.
Revision 3434
- [debian]
- * remove some files (useless or copyright issue) from the source package.
- * Use some user defined cflags for cmake. (package will use O2 by default)
Revision 3435
- CDVD:
- - Disc swapping should work in most games. It's easy to break though and the
- code is all over the place :p
- azte...
- congrats for this, you update it pretty fast.
Revision 3436
- GSdx:
- - Fix a tiny GUI bug. Thanks for spotting it, KrossX ;)
- KrossX3
- Yay! I'm so useful! :)
Revision 3437
- zzogl-pg: Work on the FOGCOL & GIFRegHandlerTEXA registers in the new register
- code.
Revision 3438
- CDVD:
- - More changes to media change detection.
Revision 3439
- [copyright]
- * another bunch of copyright fix.
Revision 3440
- [cmake]
- * Do not compile useless utf8.* files.
Revision 3441
- SPU2-X: Remove obsolete utf8 files.
- gigaherz
- What did I use those for anyway? XD
- Jake.Stine
- I used them when I originally ported spu2-x to unicode, which was a precursor step to porting pcsx2 to unicode; this before we decided to use wx instead.
Revision 3442
- * 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.
- gladiato...
- Yuyu Hakusho works again.
- kaboo...
- yayyyy but only if I skip the bios (fast boot option)
- else it says no PS2 DVD XD the "RED SCREEN"
- gladiato...
- Really? I used the bios for running Yuyu Hakusho, not the run fast option.
Revision 3443
- 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.
- refraction
- glad the scrolling is improved, it was bugging me a little how it seemed to clear the screen >.<
Revision 3444
- zzogl-pg: More changes to the new register code.
Revision 3445
- zzogl-pg: Fix mistake in last commit.
- arcum42
- Forgot I'd commented that...
Revision 3446
- zzogl-pg: Here I go, splitting code into separate files again...
Revision 3447
- zzogl-pg: Be more consistant about the plugin name and years in the headers.
- arcum42
- I'd been meaning to change that. If the project is ZZOgl, we shouldn't have headers proclaim it to be ZeroGS. And Zerofrog *did* do some work on it after 2006. He might have even done a final commit or two in 2009, thinking about it.
Revision 3448
- zzogl-pg: Add some register logging code. Fix a bug in the new register code I
- noticed.
- Jake.Stine
- I've noticed recently with these refactorings that the win32 build of zzogl keeps getting more and more float-to-int warnings. Granted a few of these are probably ok, however:
- 1. its a very slow process converting floats back to ints. Generally you want to avoid it when possible.
- 2. Most of the GS's own internals are fixed point arithmetic, for which floats are actually pretty inaccurate in mimicking. There are a couple exceptions, though I don't know them offhand (all of the fixed point and floating point uses are documented).
- arcum42
- Thanks for pointing that out. That warning doesn't show up when compiling in Linux.
- Actually, all those warnings are caused by one line of code in a header, and that code isn't run unless you comment out a define in the same header. (it's called by the new register code I've been working on.)
- Looks like I somehow thought f was a float rather then a u16, though. I'll fix that...
- arcum42
- One thing that is bugging me is that I noticed that the register DIMX isn't even implemented in ZZOgl. And colclamp gets set, but never checked. I might have to put together a list of unimplemented registers...
Revision 3449
- [debian]
- * Add copyright information
- * Downgrade depend to recomment to avoid circular dependency
Revision 3450
- zzogl-pg: A few Windows changes, and fix an incorrect variable type.
Revision 3451
- 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)
- Ragha...
- "needed for an in-progress MTGS project" Which one?
- gigaherz
- If he didn't mention it then you don't need to know yet ;P
- refraction
- tekken 4 should be fine, data is recieved and processed in qw amounts, so there wont be a single case it only increments in 64bit (you've covered any possibles)
- Jake.Stine
- It wasn't about that so much -- size is in QWC after all -- but the problem was that the old algo did a "trick" to convert size to half-QWCs: size*2 and then size/2 later. My new giftag parser for the reordering MTGS will use parse-and-copy "technology" (lol) and so it wants everything to stay QWC-bound for optimal performance. :)
- refraction
- Ahh right, well your new code should be fine, i dont see there being any problem with it :)
Revision 3452
- zzogl-pg: Removed some redundant code in the new register code.
Revision 3453
- microVU: minor changes to list traversing in-case the compiler doesn't already
- optimize these out.
Revision 3454
- GSdx: Add support for the new hack-free GSgifTransfer callback, which will
- supercede the various hacky GSgifTransfer1/2/3 callbacks in use now. This
- version of GSdx will be *REQUIRED* by PCSX2 soon.
- DevNote for zzOgl coders: Implementation of this callback can just double up on
- m_path[0]. I used a separate instance at m_path[3] mostly because it was easier
- than trying to fight around the existing PATH1 nloop hack, which is still needed
- for backward compat with existing and earlier versions of PCSX2.
- kristel...
- any changes... movement... in GSdx - is good
- kristel...
- Look like SoulCalibur 3 suffered from the loss of speed
- not sure where it come from; PSCX 3453 or GSdx 3454...
- PCSX2 r3451 + GSdx r3370 subjectively faster
- jfre1...
- How much of a speed drop?
- kristel...
- ~3-5%
Revision 3455
- Created branch for implementation of the 'Reordering' MTGS; a new version of the
- MTGS that will ensure packets are uploaded to the GS in the proper order, and in
- complete form... such that the GS plugin will be able to process all GIFtags
- through a single instance of m_path via a single hack-free GSgifTransfer
- callback.
- kristel...
- forward, - to the bright tomorrow!
- eliotfur
- This may sure fix some nasty games in the future, doesn't it?..
- jfre1...
- Well already Area 51 works. That game didn`t work for aggggggeeeesssssss.
Revision 3456
- The updated PS2edefs.h for the new GSgifTransfer callback might help. >_<
Revision 3457
- zzogl-pg: Bug fig on new register code.
- arcum42
- This was affecting FF2 dialog. Of course, no changes marked "new register code" will be noticeable, because they are if-deffed out. Which is good, because for the moment, the old register code is likely to be less buggy.
- arcum42
- Bug fig? Bug fix.
Revision 3458
- 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.
- Jake.Stine
- Both of these changes are precursors to implementation of packet reordering; the fact that they were both speedups was just a nice bonus, really. Speedups in the Xenosaga 2 intro are about 10%.
- Because this is the MTGS and it is a threading nightmare, this branch really needs some quality testing in order to qualify it free of threading bugs.
- ZZogl's implementation of GSgifTransfer can be done here or on the trunk.
- arcum42
- I may as well do it in the branch, since I'll need to do a minor Linux compilation fix anyways... (GifPath.cpp needs #include <xmmintrin.h> included.)
- iakobo...
- just wow.... thats allot of job you did there in the last revs!!!!
- Ami.Mizu...
- +10 for all recent and probably upcoming commits on MTGS. :)
- eliotfur
- The day mentiond in microVU_Lower.inl has come... Can't wait to test theese when they'll be in the trunk...
- JohnnyKi...
- I see that the pcsx2 team does great work since the release of 0.9.7 :D
- refraction
- Bit of a late thought, but this might actually fix the ffx video corruption, which would be nice!
Revision 3459
- ReorderingMTGS: zzogl-pg: Add GSgifTransfer. pcsx2: Add an include so Linux
- compiles.
Revision 3460
- [CDVDnull]
- * include a common file to define sysmessage
- * Do not compile useless CDVDnull/Linux/* files
- arcum42
- If they aren't being used, you could delete those files as well...
- gregory....
- I did not do it in case in was a template for futur work. But yes, I will delete them.
- Others files that could be delete are 'autotools script and co' at least when we have a fully working codeblock and cmake build.
- arcum42
- With the null plugins, as long as it compiles without the callback.*, interface.*, and support.* files, you're fine. I think the other two cd plugins still use the auto-generated glade 2 files, and peops probably does, but other then that, you're good...
Revision 3461
- [debian] Remove useless CDVDnull files of the source package.
Revision 3462
- [CDVDnull] Completely remove unused files.
Revision 3463
- [autotool] Remove autotools for *null plugins, CDVDiso, zerospu2. Superseed by
- cmake & codeblock, no reason to keep them.
- gregory....
- Note: I did not touch zeropad, zerogs plugins are deprecated anyway. Neither zzogl-pg in case is still need for the ZeroGSShaders program.
- arcum42
- Yeah, only real reason why zerogs and zeropad are in there these days is in case zerofrog shows up and wants to work on them, rather then working on the replacements we have in trunk...
Revision 3464
- ReorderingMTGS: Bugfix for possible corruption/crash if a vsync happens at the
- ends of the ringbuffer.
Revision 3465
- 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...)
Revision 3466
- CDVDnull: Fix an MSVC compilation error.
Revision 3467
- ReorderingMTGS: Minor performance tweak. MTGS was only queuing 1 frame ahead
- instead of 2.
Revision 3468
- Added a third alternative for memcpy_vibes. This one uses SSE intrinsics and is
- able to inline fully (no call/ret overhead).
Revision 3469
- 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.
Revision 3470
- pcsx2: Tell codeblocks that the headers for Utilities are in src/Utilities, as
- well as in include/Utilities. (Gets it to compile if I add MemcpyVibes.cpp to
- the project.)
- arcum42
- Only relevant on Linux...
- arcum42
- The trick here is that normally #include "PrecompiledHeader.h" works fine when compiling files in src/Utilities because it automatically searches the current directory before checking it's search paths.
- But MemcpyVibes.cpp is in a *subdirectory* of Utilities. So it wasn't seeing it in the current directory or in the search directories, which were where includes are normally supposed to be located.
- So now it checks in the src/Utilities directory as well, in the off-chance that we've stuck a header there for some reason. Like appears to have been done with PrecompiledHeader.h.
- This revision doesn't affect the CMake build, but I figured I'd leave that to greg, in case he runs into the same issue, since he's more experienced with cmake.
- And pcsx2 still compiles without MemcpyVibes.cpp for the moment, so there's no rush; it'll just probably be needed in the future...
Revision 3471
- [cmake] Update include dir path.
- [debian] Update dependency
- * only wxWidget 2.8.10 is supported
- * Add the missing nvidia-cg-toolkit manually.
- gregory....
- As bonus for user. They can run pcsx2 ubuntu package with ubuntu version of nvidia-cg-toolkit. The others version (nvidia-cg-toolkit-pcsx2) is only usefull for building the package.
Revision 3472
- 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.
- wing...
- Cool! I'll be waiting for a linux commit =)
- Jake.Stine
- Concerning GCC porting: I made a note in the code suggesting a GAS version of memcpy_qwc; but for now it can use a .S conversion, even if an inline GAS version might be more optimal in the long run. For one, GCC's global optimization ability is not yet implemented, so it won't be able to optimize unless the memcpy_qwc is turned into a macro that inserts the GAS directly. Secondly, its only 3 instructions that, more than likely, a core2 cpu executes in a single cycle. ;)
- So if a .S version is a lot easier, then might as well stick with that for now.
Revision 3473
- * 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)
Revision 3474
- ReorderingMTGS: Templated the GIFPath parsers, to allow for SSE optimizations.
- refraction
- tbl_CopyTag[0] = x86caps.hasStreamingSIMDExtensions ? _CopyTag_tmpl<CpuExt_SSE, 0> : _CopyTag_tmpl<CpuExt_Base, 0>;
- is it worth doing all that? considering the emu wont run on a machine that doesnt have SSE anymore.
- arcum42
- Not to mention that switching on x86caps.hasStreamingSIMDExtensions like that with ?: gets Linux all confused for some reason. I'm sure I could have worked around it when fixing Linux up, but we'll have thrown an exception by then anyways...
- Jake.Stine
- As I mentioned in another revision, PCSX2 actually (used to) work fine on MMX-only machines. We broke it recently with my memzero thing (that I didn't really intend to leave as it was, I just got sidetracked and later forgot all about it), and with the new VIFunpacker, and with the new yuv2rgb conversion.
- The memzero one is fixed. The VIFunpacker can fall back on interpreters, and yuv2rgb needs a reference version coded in C.
- *or* we can make SSE the new minimum requirement for all of PCSX2. That was never an official group decision though.
Revision 3475
- [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
Revision 3476
- ReorderingMTGS: Hackfix Linux, until some assembly is written.
- arcum42
- The bit in Memcpyfast.h is mainly so I can keep compiling Linux until greg or I write a Linux version of memcpy_qwc. (Probably me, but you never know...)
- gregory....
- Probably not me :) (well depend if it is a pressing task). I take 1 week of holidays in 3 days and I still need to finish planning it.
- arcum42
- This works around it anyways, by using the old memcpy code, which isn't quite as optimized, so it shouldn't be a rush.
- A weeks vacation sounds fun; wish I had one lined up.
- Don't worry about memcpy_qwc. I'll probably cobble something together in a few days, and pcsx2 will still work in the meantime. And I'll try to make sure the cmake build doesn't break too badly while you're gone...
- arcum42
- I always overestimate how long assembly will take me (mainly because I dislike working with it.).
- Looks like I'll commit something tonight, though I'll wait on enabling it for a little bit.
- arcum42
- Committed.
- Jake.Stine
- PCSX2 only errors on startup only if the CPU lacks MMX. PCSX2 interpreters should be fully functional even on a CPU without SSE. We sort of got away from that for a while with various experimental SSE optimizations, but my intention was to restore full MMX-only ability to PCSX2 prior to releasing a non-beta.
- However, if everyone agrees, I could up the minimum requirements for running interpreters to SSE.
Revision 3477
- ReorderingMTGS: Initial Linux version of memcpy_amd_qwc. Disabled for now, till
- I get a chance to look it over better.
- arcum42
- This code does actually compile and run if I un-ifdef it. As it says, it needs a clobber list, and I also want to look it over and see if I missed anything later.
- Jake.Stine
- clobber list should be, I think: eax, ecx, edx, mm0, mm1, mm2, mm3.
- gregory....
- Nice. If mm register are needed in clobber list. I thinks we must also fix others asm stuff in zzogl.
- Technically, gcc already put src, dest and qwc in register so I hope it remove the first mov.
- Anyway I think the keyword volatile is needed (performance impact). Not sure how it is working. Because of the output gcc know that we potentially change dest, src, and qwc but it probably does not know that we also change dest+1.. dest + qwc. Maybe "memory" must also be added to the clobber list.
- Jake.Stine
- Yeah, add "memory" to the clobber list.
- >> Technically, gcc already put src, dest and qwc in register so I hope it remove the first mov.
- I think GAS has syntax for that? an "m" option or something, that auto-allocs a register to a memory address. But I'm not sure how that works for incrementing registers that we have here. Ther's a way to do it of course, but because *someone* wasn't interested in making a human-readable syntax nor sufficiently documenting the non-readable syntax they lazily implemented, none of us will be able to find out without a severe amount of headache'ing.
- gregory....
- Jake,
- Have you look at the performance, if you use string operation ? Like REP, STOS and LODS (or more relevant one). There instruction are probably optimized in hardware (like the increase of the counter).
- gregory....
- Could you someone explain why there is [var] before input/output contrainst ?
- arcum42
- I absolutely always end up referring back to this page when working on GAS:
- http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html
- And I thought about using "m" instead of "r". But it gave me the incredibly useful error message "Error: Unexpected token `('" with an incorrect line number when doing that. Which is one of the reasons why I hate dealing with inline assembly in gcc.
- I'll use "memory", "eax", "ecx", "edx", "mm0", "mm1", "mm2", "mm3" for a clobber list for the moment. I'll wait on committing anything until I'm more awake, though.
- And the [var] before the constraints is so that I can use the var names in the code instead of using %0, %1, %2, etc..
- gregory....
- Hum ok. I did not know that trick, I just rename everythings^^. I thinks it is better to keep register anyway. However they must be use directly instead of using eax, ecx, edx.
- The idea (without var name because do not know the exact syntax):
- - "mov ecx, [%[dest]]\n"
- - "mov edx, [%[src]]\n"
- - "mov eax, [%[qwc]]\n" // keep a copy of count
- - "shr eax, 1\n"
- + "mov %%esi, %2\n"// keep a copy of count
- + "shr %2, 1\n"
- "jz memcpy_qwc_1\n" // only one 16 byte block to copy?
- - "cmp eax, 64\n" // "IN_CACHE_COPY/32"
- + "cmp %2, 64\n" // "IN_CACHE_COPY/32"
- "jb memcpy_qwc_loop1\n" // small copies should be cached (definite speedup --air)
- ...
- Rename eax, ecx ,edx
- ...
- ".att_syntax\n"
- - : "=r"(dest), "=r"(src), "=r"(qwc)
- - : [dest]"r"(dest), [src]"r"(src), [qwc]"r"(qwc)
- - //: Needs a clobber list here
- + : "=&r"(dest), "=&r"(src), "=&r"(qwc)
- + : [dest] "0"(dest), [src] "1"(src), [qwc] "2"(qwc)
- + : "mm0", "mm1", "mm2", "mm3", "esi", "memory"
- );
- gregory....
- Forgot a point. The esi register is to keep the value for testing the 16bytes packet.
- - "test [%[qwc]],dword ptr 1\n"
- + "test %%esi,dword ptr 1\n"
- Jake.Stine
- It's more efficient to not waste a register for storing [qwc]. The compiler can use that register for something else more important than one indirect memory access (which is guaranteed faster than the two-instruction alternative of loading esi)... Especially since I think GAS will end up allocating qwc to a register anyway.
- Additionally:
- >> Have you look at the performance, if you use string operation ? Like REP, STOS and LODS (or more relevant one). There instruction are probably optimized in hardware (like the increase of the counter).
- REP instructions are impossibly slow on Core2 and prior CPUs -- as in several magnitudes slower than drawn out loops. Only the i7 has a REP that's usable, but unfortunately there's no way to make inlinable code cpu-dependent without building entirely separate instances of PCSX2.
- Additionally, REP MOVSD is only good for copies between 512 bytes and 2k. Copies smaller than 512 bytes require too much setup code and CPU latency for kick-starting the REP engine. Copies larger than 4k need to use non-temporal stores (movqnt instruction) to avoid murdering the L2 cache. In my tests, using movqnt is the *single* most important factor in memcpy speed. Using movqnt on copies under 2k causes very noticable slowdowns, and *not* using movqnt on copies over 2k has a similar negative impact.
- If you want to learn all about how much it sucks trying to optimize for modern CPUs, read Agner Fog's docs:
- http://www.agner.org/optimize/
- gregory....
- Hum ok. indirect memory access can be keep. In fact I thinks I write something wrong and lost one indirection in the process ^^. Need to thinks about it.
- Thanks for the link.
Revision 3478
- ReorderingMTGS: Some cleanups and minor fixes to thread benching.
- gregory....
- Hum, would not be better to save qwc in a register (esi or edi) and to reuse it for the odd number check.
- Another possibility will be to move this part at the beginning. It will save the saving of the value but we lost the prefech hint of 16 bytes (could also do a 32byte prefetch first, depend on the number of small block).
Revision 3479
- 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)
Revision 3480
- [zzogl] Square asm constraint. No change, just better bug-proof.
- * add xmm register to the clobber list.
- * Add input contrainst (avoid to depend of the function attribute and easier to
- understand)
Revision 3481
- [x86emitter]: Fix spaming warning of comparaison integer vs non-integer
Revision 3482
- 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.
- azte...
- ppl with old computers thank you sudonim.
- sudonim1
- No they don't. AMD's K7 range is the last without SSE2 and wouldn't even be fast enough for testing with the interpreters.
- Jake.Stine
- It is for reference, in the event we want or need to port the code to a newer CPU instruction set.
- azte...
- sudonim, i see, that's bad.
- JohnnyKi...
- Good for the ones with old comp... :)
Revision 3483
- [wiki]
- * add an index
- * Update old forum link.
- * add a part for ppa ubuntu
- tarrag...
- Good job for linux users ^^
Revision 3484
- ReorderingMTGS: Revise memcpy_amd_qwc for Linux.
- gregory....
- There is something about qwc that I'm not sure.
- In memcpy_qwc_1 label, the value of qwc is tested. But it must be the original value and not the updated one. Note I think there is a bad indirection ie %[qwc] not [%[qwc]].
- An idea is to do the 16bytes block first.
- gregory....
- A quick implementation of the idea. Really need a benchmark.
- --- include/Utilities/MemcpyFast.h (revision 3484)
- +++ include/Utilities/MemcpyFast.h (working copy)
- @@ -48,9 +48,18 @@
- //"mov ecx, [%[dest]]\n"
- //"mov edx, [%[src]]\n"
- //"mov eax, [%[qwc]]\n" // keep a copy of count
- + // test round number of 32 bytes blocks
- + "memcpy_qwc_1:\n"
- + "test %[qwc],dword ptr 1\n"
- + "jz memcpy_qwc_32_block\n"
- + "movq mm0,[%[src]]\n"
- + "movq mm1,[%[src]+8]\n"
- + "movq [%[dest]], mm0\n"
- + "movq [%[dest]+8], mm1\n"
- +
- + "memcpy_qwc_32_block:\n"
- "shr %[qwc], 1\n"
- - "jz memcpy_qwc_1\n" // only one 16 byte block to copy?
- -
- + "jz memcpy_qwc_final\n" // no 32 byte block
- "cmp %[qwc], 64\n" // "IN_CACHE_COPY/32"
- "jb memcpy_qwc_loop1\n" // small copies should be cached (definite speedup --air)
- @@ -71,7 +80,7 @@
- "sub %[qwc],1\n"
- "jnz memcpy_qwc_loop2\n" // last 64-byte block?
- "sfence\n" // flush the write buffer
- - "jmp memcpy_qwc_1\n"
- + "jmp memcpy_qwc_final\n"
- // 32-byte blocks, cached!
- // This *is* important. Removing this and using exclusively non-temporal stores
- @@ -94,14 +103,6 @@
- "sub %[qwc],1\n"
- "jnz memcpy_qwc_loop1\n" // last 64-byte block?
- - "memcpy_qwc_1:\n"
- - "test [%[qwc]],dword ptr 1\n"
- - "jz memcpy_qwc_final\n"
- - "movq mm0,[%[src]]\n"
- - "movq mm1,[%[src]+8]\n"
- - "movq [%[dest]], mm0\n"
- - "movq [%[dest]+8], mm1\n"
- -
- "memcpy_qwc_final:\n"
- "emms\n" // clean up the MMX state
- ".att_syntax\n"
Revision 3485
- [wiki] Cmake do not detect properly variable type ! So update the doc to add it
- manually.
Revision 3486
- [wiki] Add a big note that amd 64bits is not supported on linux.
- yoshi...
- so, is native 64bit pcsx2 planned at any point in the future?
- or is it so distant that's pointless to ask atm?
- gregory....
- lol, re ask the question in 2 years.
- Pcsx2 directly generate optimized x86 code from ps2 code. The purpose is to keep good performance (like virtual machine for example). It will be very difficult to generate 64 bits code with same level of performance. In this situation we need to redo all the core emulations, which is multi years of work...
- arcum42
- Also, see:
- http://forums.pcsx2.net/Thread-We-are-dropping-x64-PCSX2-Playground-builds
- That was for pcsx2-playground, but most of it still holds true for pcsx2.
Revision 3487
- [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
- sudonim1
- What? Assigning to a u16 masks off the upper bits in every C and C++ standard afaik. And && doesn't mask anyway.
- gregory....
- May be a compiler bug ! Honnestly I did not read the standard.
- Here the log message of gcc (4.5) when enabling the (I know) experimental standard. It is the only error and the fix was harmless.
- pcsx2/IPU/yuv2rgb.cpp:102:1: error: narrowing conversion of ‘-0x000000000000001a0’ from ‘int’ to ‘u16’ inside { }
- '&&' make the upper to zero (instead of 1 because of sign extension) and make the compiler happy.
- Because it impacts only constant it will be optimized anyway. We could also use FFCE instead of -0x32 (not tested). Or just leave the issue (and hope futur gcc version are working), we will probably not support the standard before a long time.
- Jake.Stine
- Gregory: You want to use &, not &&. Pseudonym as usual doesn't educate, he accuses and moves on and figures its your problem to figure out what he's really talking about.
- Anyway, that error is remarkably explicit, so I doubt its a bug. Though I think the "root" cause is the conversion of signed int to unsigned short. If the sign of one or the other is typecast first, the compiler should perform the conversion without error.
- This actually makes sense, because you can have some unfortunate bugs stem from unexpected sign conversions. It's usually good to be explicit in these cases.
- gregory....
- Ouch. Yes I did a bad mix, sorry.
- Yes it is cleary, the conversion that cause that make gcc unhappy. But I'am not how to typecast it correctly.
- Jake.Stine
- You can change the u16's in SSE2_Tables to s16's. Try it and see if that fixes the GCC-0x error. We're only using those struct members from asm code, so the sign doesn't matter.
- If GCC-0x likes it, commit. :)
Revision 3488
- ReorderingMTGS: Linux asm memcpy fixes. (untested)
- gregory....
- There is a potential issue. In case we have n 32bytes block and one 16 bytes block. qwc will end up to -1 (or maybe 0 I do not know) and the jnz will be bad in the -1 situation.
- "sub %[qwc],2\n"
- "jnz memcpy_qwc_loop1\n"
- Jake.Stine
- Oh, right. I forgot about that. Ok, then there's no way to get around not using a temp var on this one.
- gregory....
- Maybe using JGE could do the trck. The good question is it is an unsigned sub or signed integer.
- Jake.Stine
- Technically we could, since we'll never send a value over 2gb in qwc's to the memcpy; so using a signed compare would be ok. You're welcome to experiment with that if you want. I stuck with the eax fix since its safe (mimics the behavior of one I know works), since I can't test it.
- Note that the JGE approach will be more efficient -- for two reasons. One, cmp/jle is faster than shr/jz (modern CPUs pair cmp/jxx into a single macro instruction internally), and second because GCC register alloc will be able to handle it smarter.
- arcum42
- In order to get this to compile, I have to change:
- "test [%qwc],1\n"
- to
- "test %[qwc], dword ptr 1\n"
- (The point's moot at the moment, though, because it's now giving me issues about memcpy_qwc_loop2 and others being defined more then once. I may have to bite the bullet, move it to MemcpyFast.cpp, and add it to both Linux build systems...)
- gregory....
- Actually Just "test %[qwc],1\n" is enought ([%qwc] vs %[qwc]).
- Still with my idea of 16bytes block first, mix with this idea. Can be port to windows to check the performance. However I made the hypothesis that qwc is not null (which I think is reasonable but we never know). If the hypothesis is wrong a cmp must be added. A prefetchnta could be added in the 16byte block.
- --- MemcpyFast.h (revision 3493)
- +++ MemcpyFast.h (working copy)
- @@ -45,14 +45,20 @@
- __asm__
- (
- ".intel_syntax noprefix\n"
- - //"mov ecx, [%[dest]]\n"
- - //"mov edx, [%[src]]\n"
- - //"mov eax, [%[qwc]]\n" // keep a copy of count
- - "mov eax, %[qwc]\n"
- - "shr eax, 1\n"
- - "jz memcpy_qwc_1\n" // only one 16 byte block to copy?
- + // test round number of 32 bytes blocks
- + "memcpy_qwc_1:\n"
- + "test %[qwc],1\n"
- + "jz memcpy_qwc_32_block\n"
- + // copy a 16 bytes block
- + "movq mm0,[%[src]]\n"
- + "movq mm1,[%[src]+8]\n"
- + "movq [%[dest]], mm0\n"
- + "movq [%[dest]+8], mm1\n"
- + "sub %[qwc],1\n"
- + "jz memcpy_qwc_final\n" //only one 16 bytes blocks
- - "cmp %[qwc], 64\n" // "IN_CACHE_COPY/32"
- + "memcpy_qwc_32_block:\n"
- + "cmp %[qwc], 128\n" // "IN_CACHE_COPY/16"
- "jb memcpy_qwc_loop1\n" // small copies should be cached (definite speedup --air)
- "memcpy_qwc_loop2:\n" // 32-byte blocks, uncached copy
- @@ -69,10 +75,10 @@
- "add %[src],32\n" // update source pointer
- "add %[dest],32\n" // update destination pointer
- - "sub eax,1\n"
- + "sub %[qwc],2\n"
- "jnz memcpy_qwc_loop2\n" // last 64-byte block?
- "sfence\n" // flush the write buffer
- - "jmp memcpy_qwc_1\n"
- + "jmp memcpy_qwc_final\n"
- // 32-byte blocks, cached!
- // This *is* important. Removing this and using exclusively non-temporal stores
- @@ -92,23 +98,15 @@
- "add %[src],32\n" // update source pointer
- "add %[dest],32\n" // update destination pointer
- - "sub eax,1\n"
- + "sub %[qwc],2\n"
- "jnz memcpy_qwc_loop1\n" // last 64-byte block?
- - "memcpy_qwc_1:\n"
- - "test [%qwc],1\n"
- - "jz memcpy_qwc_final\n"
- - "movq mm0,[%[src]]\n"
- - "movq mm1,[%[src]+8]\n"
- - "movq [%[dest]], mm0\n"
- - "movq [%[dest]+8], mm1\n"
- -
- "memcpy_qwc_final:\n"
- "emms\n" // clean up the MMX state
- ".att_syntax\n"
- : "=&r"(dest), "=&r"(src), "=&r"(qwc)
- : [dest]"0"(dest), [src]"1"(src), [qwc]"2"(qwc)
- - : "memory", "eax", "mm0", "mm1", "mm2", "mm3"
- + : "memory", "mm0", "mm1", "mm2", "mm3"
- );
- }
- #else
- arcum42
- Ah, yeah, you're right. I'd tried the other change first before I noticed that, and didn't change it back afterwards.
- As far as the other changes, I'll wait to see what Jakes opinion is...
- (And I still need to figure out why I'm getting all these errors about previously defined symbols...)
- gregory....
- Just for information __volatile__ keyword seems needed. For the moment the function is blazing fast ;) only 3 instruction : pop, ret, lea.
- Or there somethings wrong with constrains.
- gregory....
- Arcum,
- I understand why "m" does not compile with stange errors. There are 2 syntax for intel.
- __asm__(".intel_syntax noprefix\n"
- -> reg -> ecx
- -> var -> qwc
- __asm__(".intel_syntax\n"
- -> %%reg -> %%ecx
- -> %[var] -> %[qwc]
- gregory....
- Hum, and with noprefix syntax. You must give the size sometimes but I do not know why ! So in this case, it will be
- "test qwc, dword ptr 1\n"
- gregory....
- Sorry, after more test (trying to load the plugins, I work on zzogl asm). It seems to be always %[var] for variable.
- gregory....
- Hum, I may have an others idea, much more tricky ;) Based on the previous jge approach. The idea is to use the sub as a cmp (which is more or less a sub AFAIK). Instead of doing "sub qwc,2 ; cmp qwc 1 ; jump" We will doing "sub qwc,2 ; jump". If modern CPUs correctly optimize cmp/jxx (which is really a good idea by the way), we probably gain nothings (well if they can merge sub/jxx, we will gain). Really need a good way to benchmark the performance of the function.
- ****
- Directly do a "sub qwc,1" in place of the shr. Jump to 16 byte block if we are null (or negative, if qwc can be null).
- In the 32bytes block, do the loop while qwc > 0
- In the 16bytes block, only do the 16 byte block if qwc is null.
- ******
- Note: If the hypothesis no null transfer (assert qwc > 0) is correct. We could directly jump to the 16bytes transfer (instead of the test). Nice bump for only 16bytes block.
- Jake.Stine
- Yes, sub and cmp are the *same* instruction internally. One writes back the result to the dest reg, the other does not. Modern CPUs pair either of them with a following Jxx instruction.
- That's why I use sub/jxx pairs in the loops in the memcpys. It's the most efficient way to do any kind of a loop on a Core2 or Phenom.
- Jake.Stine
- >> Hum, and with noprefix syntax. You must give the size sometimes but I do not know why ! So in this case, it will be
- "test qwc, dword ptr 1\n"
- The reason is because its a memory operand. In pure asm a memory operand can be 1,2, or 4 bytes. (8, 16 or 32 bits). If you do this:
- test [mem], eax // assembler knows you're testing a 32 bit memory
- test [mem], ax // assembler knows it's 16 bits!
- test [mem], 1 // assembler has no clue if the 1 is intended to be compared against 8 bit, 16 bit, or 32 bit memory!
- MSVC's inline asm draws the type from the C code, so I don't have to be explicit. GAS needs explicits. You should put the "dword ptr" on the memory parameter though, it's more consistent.
- Jake.Stine
- Finally, it's a *really* good idea for the memcpy to handle 0-sized qwc gracefully. It's cheap and easy on modern cpus, and it could save quite a few headaches if code does in fact end up passing 0 and expecting it to respond gracefully.
- We could consider switching to a stricter contract that assumes qwc != 0 at a later date, but I really rather frown on it now. :(
Revision 3489
- ReorderingMTGS: Linux memcpy attempt #1527, Action!
Revision 3490
- [IPU] Revert my stupid fix for the moment. Will work on it later when I have
- more free time ;)
Revision 3491
- 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.
Revision 3492
- ReorderingMTGS: Sync with trunk
- Jake.Stine
- If this state of the branch passes some decent tests, I'm going to go ahead and re-integrate it with trunk here; because its pretty well a solid improvement of the current MTGS model with lots of code cleanups and stuff.
- I'm actually running into a point where I don't think the reordering MTGS is going to work. Too many issues to account for when dealing with Vsync, savestates, and potentially evil handling of GIFpaths (certain types of unfriendly behavior could cause ringbuffer deadlocks), and the fact that this system still won't help account for some other known limitations in PCSX2's handling of DMAs. I was also going to need to integrate the MTGS even more tightly into the whole of PCSX2. As it is now the MTGS is always used, but is mostly extrapolated from PCSX2 emulation (nicer for eventual porting, or perhaps a future when an MTGS isn't the ideal method of GS rendering). With a reordering MTGS, we would have been forever again dependent on the presence of the MTGS, even if for some reason it lost its performance benefit.
- Thusly, the complexity of implementing it was quickly out-weighing the eventual benefit.
- Cotton and I have some other ideas on how to get around the GIFpath conflict issues. We'll be working on them here, most likely.
Revision 3493
- Minor change to the custom memcpy function...
Revision 3494
- [zzogl]: asm work. Asm was totally broken. At least in release build.
- * use volatile keyword to avoid gcc removing the function...
- * Use name variable in asm code instead of %n
- * Fix constraint on s_clut16mask. There are input, not output...
- Arcum can you look at this 2 things thanks.
- -> code is still broken in one place. s_clut16mask & s_clut16mask2
- re null in the code generated by gcc ! To fix it (do not know why), we can
- declare them as static. But I'm not sure
- on the impact and I can not test windows...
- -> s_clut16mask is declared as a 256bits numbers instead of 128 !
Revision 3495
- [zzogl]: ooups forget 2 lines.
Revision 3496
- Fixing some minor grammatical errors, and relocating the old automake guide to a
- different page (not deleting it entirely since it can be useful for possible
- regression testing of old 0.9.6 builds under linux).
- Jake.Stine
- Hopefully this will help keep people from looking for automake files all the time. :)
- gregory....
- Good idea to split it.
Revision 3497
- wiki: Added the old legacy automake guide as its own page (applies to 0.9.6
- only).
- leomar....
- where can find a new legacy gui?
- legacy+new gfx plugins = best performace.
Revision 3498
- [IPU]: properly fix gcc c++0x error. Declared coeff as s16 instead of u16.
- Jake.Stine
- Yay, glad it worked. :)
- cottonvibes
- hmm pcsx2 compiles with gcc's c++0x extensions?
- quick, someone change an "int i" to "auto int i" and break it!
- /evil
- gregory....
- Yes it compile fine. Well there is potentially an other minor thing in zzogl.
- Actually I tryed to use link time optimization with the new gcc 4.5 but the link is totally broken (I think it is inlining relating). Well I did not expect to work anyway.
Revision 3499
- [cmake] Add a fatal error for pure amd64 distributions.