Merge everything except r4564 (SPR DMA fix) and r4572 (block manager optimization).
Linux builds now do that SVN versioning print that was recently added, dunno if that's desired.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/0.9.8@4584 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
ramapcsx2 2011-04-20 12:07:45 +00:00
parent 55707bd666
commit 6c520ac188
21 changed files with 367 additions and 175 deletions

View File

@ -695,7 +695,8 @@ Region = NTSC-U
Serial = SCUS-97264
Name = Syphon Filter - The Omega Strain
Region = NTSC-U
Compat = 4
Compat = 5
EETimingHack = 1 //random hangs
---------------------------------------------
Serial = SCUS-97265
Name = Jak II
@ -912,7 +913,7 @@ Region = NTSC-U
Serial = SCUS-97353
Name = Ratchet and Clank - Up Your Arsenal
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCUS-97355
Name = Siren
@ -1386,7 +1387,7 @@ Compat = 4
Serial = SCUS-97502
Name = Tourist Trophy
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCUS-97503
Name = MLB '06 - The Show [Demo]
@ -1977,7 +1978,7 @@ Compat = 5
Serial = SLUS-20073
Name = Red Faction
Region = NTSC-U
Compat = 1
Compat = 5
---------------------------------------------
Serial = SLUS-20074
Name = Summoner
@ -2234,7 +2235,7 @@ SkipMPEGHack = 1
Serial = SLUS-20146
Name = Shadow of Destiny
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-20147
Name = Aliens vs. Predator - Extinction
@ -2259,7 +2260,7 @@ Compat = 2
Serial = SLUS-20151
Name = Klonoa 2 - Lunatea's Veil
Region = NTSC-U
Compat = 5
Compat = 4
eeClampMode = 3 //Objects needed appear in wrong places without it
[patches = 2F56CBC9]
@ -2274,6 +2275,7 @@ Serial = SLUS-20152
Name = Ace Combat 4 - Shattered Skies
Region = NTSC-U
Compat = 5
SkipMPEGHack = 1 //hangs on menus
---------------------------------------------
Serial = SLUS-20153
Name = RC Revenge Pro
@ -2516,6 +2518,13 @@ Compat = 5
//skip videos
patch=0,EE,0013D5E0,word,00000000
[/patches]
[patches = E5F2DF38]
comment=patches by Nachbrenner
//skip videos
patch=0,EE,0013D5E0,word,00000000
[/patches]
---------------------------------------------
Serial = SLUS-20210
@ -3699,7 +3708,7 @@ Compat = 5
Serial = SLUS-20483
Name = WWE Smackdown - Shut Your Mouth
Region = NTSC-U
Compat = 3
Compat = 5
[patches = B0AE1898]
comment=patched by prafull
@ -3806,6 +3815,7 @@ Compat = 4
Serial = SLUS-20504
Name = Tony Hawk's Pro Skater 4
Region = NTSC-U
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLUS-20505
Name = Mace Griffin - Bounty Hunter
@ -4075,7 +4085,7 @@ Serial = SLUS-20566
Name = Buffy the Vampire Slayer - Chaos Bleeds
Region = NTSC-U
Compat = 5
EETimingHack = 1 //garbage in HUD
EETimingHack = 1 //garbage in HUD
---------------------------------------------
Serial = SLUS-20567
Name = P.T.O. IV - Pacific Theater of Operations
@ -4140,6 +4150,7 @@ Compat = 1
Serial = SLUS-20580
Name = FIFA Soccer 2003
Region = NTSC-U
vuClampMode = 2 //missing geometry with microVU
---------------------------------------------
Serial = SLUS-20582
Name = Street Racing Syndicate
@ -4155,6 +4166,7 @@ Serial = SLUS-20585
Name = Powerpuff Girls, The - Relish Rampage
Region = NTSC-U
Compat = 5
EETimingHack = 1 //hang showing "Press start"
---------------------------------------------
Serial = SLUS-20586
Name = IHRA Drag Racing 2
@ -4281,7 +4293,6 @@ Serial = SLUS-20616
Name = Virtua Fighter 4 - Evolution
Region = NTSC-U
Compat = 5
EETimingHack = 1
---------------------------------------------
Serial = SLUS-20617
Name = Dynasty Warriors 3 - Xtreme Legends
@ -4446,6 +4457,7 @@ Region = NTSC-U
Serial = SLUS-20651
Name = NBA Street 2
Region = NTSC-U
vuClampMode = 2 //missing environment with microVU
---------------------------------------------
Serial = SLUS-20652
Name = Tom Clancy's Splinter Cell
@ -4540,7 +4552,7 @@ Compat = 4
Serial = SLUS-20674
Name = Virtual On Marz
Region = NTSC-U
Compat = 5
Compat = 4
---------------------------------------------
Serial = SLUS-20675
Name = Baldur's Gate - Dark Alliance 2
@ -4628,6 +4640,7 @@ Serial = SLUS-20694
Name = Onimusha 3 - Demon Siege
Region = NTSC-U
Compat = 5
EETimingHack = 1 //sliced FMVs
---------------------------------------------
Serial = SLUS-20695
Name = Chaos Legion
@ -4979,7 +4992,7 @@ Compat = 5
Serial = SLUS-20776
Name = Spider-Man 2
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-20777
Name = Obscure
@ -5041,7 +5054,7 @@ Compat = 5
Serial = SLUS-20791
Name = Trivial Pursuit - Unhinged
Region = NTSC-U
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLUS-20792
Name = Goblin Commander - Unleash the Horde
@ -5092,12 +5105,12 @@ Compat = 5
Serial = SLUS-20803
Name = Bard's Tale, The
Region = NTSC-U
Compat = 2
Compat = 4
---------------------------------------------
Serial = SLUS-20804
Name = Forgotten Realms - Demon Stone
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-20805
Name = Yu Yu Hakusho - Dark Tournament
@ -5286,7 +5299,8 @@ Compat = 5
Serial = SLUS-20851
Name = Ace Combat 5 - The Unsung War
Region = NTSC-U
Compat = 2
Compat = 5
SkipMPEGHack = 1 //hangs on menus
---------------------------------------------
Serial = SLUS-20852
Name = Terminator 3, The - The Redemption
@ -5378,7 +5392,7 @@ Compat = 2
Serial = SLUS-20870
Name = Ultimate Spider-Man
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-20871
Name = Naval Ops - Commander
@ -5527,6 +5541,7 @@ Serial = SLUS-20901
Name = FlatOut
Region = NTSC-U
Compat = 5
EETimingHack = 1 //random hang
---------------------------------------------
Serial = SLUS-20902
Name = Shadow of Rome
@ -5679,7 +5694,8 @@ Compat = 2
Serial = SLUS-20933
Name = Smash Court Pro Tournament Tennis 2
Region = NTSC-U
Compat = 3
Compat = 5
SkipMPEGHack = 1 //IPU menu hangs the game without it
---------------------------------------------
Serial = SLUS-20934
Name = Death by Degrees
@ -5771,7 +5787,7 @@ Compat = 5
Serial = SLUS-20952
Name = Tak 2 - The Staff of Dreams
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-20953
Name = Shaman King - Power of Spirit
@ -5948,6 +5964,7 @@ Region = NTSC-U
Serial = SLUS-20986
Name = Armored Core Nexus [Evolution Disc]
Region = NTSC-U
Compat = 5
---------------------------------------------
Serial = SLUS-20987
Name = Pool Paradise
@ -6127,7 +6144,7 @@ Region = NTSC-U
Serial = SLUS-21026
Name = Battlefield 2 - Mordern Combat
Region = NTSC-U
Compat = 3
Compat = 5
---------------------------------------------
Serial = SLUS-21027
Name = Lord of the Rings, The - The Third Age
@ -6447,7 +6464,7 @@ Compat = 1
Serial = SLUS-21096
Name = Ape Escape - Pumped & Primed
Region = NTSC-U
Compat = 1
Compat = 3
---------------------------------------------
Serial = SLUS-21097
Name = MX World Tour featuring Jamie Little
@ -6670,7 +6687,7 @@ Compat = 4
Serial = SLUS-21144
Name = Tom Clancy's Rainbow Six - Lockdown
Region = NTSC-U
Compat = 5
Compat = 2
---------------------------------------------
Serial = SLUS-21145
Name = Full Spectrum Warrior
@ -6848,7 +6865,7 @@ Compat = 5
Serial = SLUS-21182
Name = TOCA Race Driver 3
Region = NTSC-U
Compat = 3
Compat = 5
---------------------------------------------
Serial = SLUS-21183
Name = Teen Titans
@ -6947,7 +6964,7 @@ Compat = 5
Serial = SLUS-21203
Name = Tomb Raider - Legend
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21204
Name = Victorious Boxers 2 - Fighting Spirit
@ -7523,7 +7540,6 @@ Serial = SLUS-21326
Name = Shadow Hearts - From the New World
Region = NTSC-U
Compat = 5
EETimingHack = 1 //Doesn't boot without.
---------------------------------------------
Serial = SLUS-21327
Name = Atelier Iris 2 - The Azoth of Destiny
@ -7583,7 +7599,7 @@ Compat = 5
Serial = SLUS-21338
Name = Armored Core - Last Raven
Region = NTSC-U
Compat = 1
Compat = 5
---------------------------------------------
Serial = SLUS-21339
Name = Puzzle Collection - Crosswords & More!
@ -7623,7 +7639,8 @@ Compat = 5
Serial = SLUS-21346
Name = Ace Combat Zero - The Belkan War
Region = NTSC-U
Compat = 2
Compat = 5
SkipMPEGHack = 1 //hangs ofn menus
---------------------------------------------
Serial = SLUS-21347
Name = AMF Xtreme Bowling
@ -7841,7 +7858,7 @@ Compat = 5
Serial = SLUS-21390
Name = Urban Chaos - Riot Response
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21391
Name = SpongeBob SquarePants - Creature from the Krusty Krab
@ -8096,7 +8113,7 @@ Compat = 5
Serial = SLUS-21444
Name = Tony Hawk's Project 8
Region = NTSC-U
Compat = 2
Compat = 4
---------------------------------------------
Serial = SLUS-21445
Name = Ar Tonelico
@ -8316,7 +8333,7 @@ Compat = 5
Serial = SLUS-21490
Name = Test Drive Unlimited
Region = NTSC-U
Compat = 3
Compat = 2
---------------------------------------------
Serial = SLUS-21491
Name = World Series of Poker - Tournament of Champions
@ -8463,7 +8480,7 @@ Compat = 5
Serial = SLUS-21555
Name = Tomb Raider - Anniversary
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21556
Name = Konami Kids Playground - Dinosaur Shapes & Colors
@ -8721,7 +8738,7 @@ Compat = 5
Serial = SLUS-21611
Name = Thrillville - Off the Rails
Region = NTSC-U
Compat = 2
Compat = 3
---------------------------------------------
Serial = SLUS-21612
Name = Legend of the Dragon
@ -8825,7 +8842,7 @@ Compat = 2
Serial = SLUS-21633
Name = Aqua Teen Hunger Force - Zombie Ninja Pro-Am
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21634
Name = Crazy Frog Racer
@ -8947,7 +8964,7 @@ Compat = 4
Serial = SLUS-21661
Name = Ben 10 - Protector of Earth
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21662
Name = Warriors Orochi
@ -9080,7 +9097,8 @@ Compat = 2
Serial = SLUS-21690
Name = Alone in the Dark
Region = NTSC-U
Compat = 2
Compat = 5
EETimingHack = 1
---------------------------------------------
Serial = SLUS-21691
Name = Swashbucklers - Blue vs. Grey
@ -9143,7 +9161,7 @@ Compat = 5
Serial = SLUS-21707
Name = Godzilla Unleashed
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21708
Name = NeoGeo Battle Coliseum
@ -9272,12 +9290,6 @@ Region = NTSC-U
Compat = 5
DMABusyHack = 1
---------------------------------------------
Serial = SLES-55443
Name = Mana Khemia - Alchemists of Al-Revis
Region = PAL-E
Compat = 5
DMABusyHack = 1
---------------------------------------------
Serial = SLUS-21736
Name = Wall-E
Region = NTSC-U
@ -9493,7 +9505,7 @@ Compat = 5
Serial = SLUS-21787
Name = TNA iMPACT!
Region = NTSC-U
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLUS-21788
Name = Ar Tonelico 2 - Melody Of Metafalica
@ -9713,7 +9725,7 @@ Compat = 5
Serial = SLUS-21844
Name = Bolt
Region = NTSC-U
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLUS-21845
Name = Shin Megami Tensei: Devil Summoner 2: Raidou Kuzunoha vs. King Abaddon
@ -9728,7 +9740,7 @@ Serial = SLUS-21847
Name = Guilty Gear XX - Accent Core Plus
Region = NTSC-U
Compat = 5
SkipMpegHack = 1
SkipMPEGHack = 1
---------------------------------------------
Serial = SLUS-21848
Name = Rock Band Track Pack - AC/DC Live
@ -9802,7 +9814,7 @@ Compat = 5
Serial = SLUS-21865
Name = Guitar Hero 5
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21866
Name = Guitar Hero - Smash Hits
@ -9992,6 +10004,7 @@ Serial = SLUS-21915
Name = The Lord of the Rings: Aragorn's Quest
Region = NTSC-U
Compat = 5
EETimingHack = 1 //SPS
---------------------------------------------
Serial = SLUS-21917
Name = Dance Dance Revolution X2 (Bundle)
@ -11758,6 +11771,7 @@ Region = NTSC-K
Serial = SCKA-20033
Name = Smash Court Professional Tournament 2 [Limited Edition]
Region = NTSC-K
SkipMPEGHack = 1 //menu hangs the game without it
---------------------------------------------
Serial = SCKA-20034
Name = Time Crisis 3 [PlayStation 2 Big Hit Series]
@ -15403,7 +15417,7 @@ Region = NTSC-J
Serial = SLPM-62552
Name = Super Shanghai 2005
Region = NTSC-J
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLPM-62553
Name = Sega Ages 2500 Series Vol.17 - Phantasy Star Generation 2
@ -16774,6 +16788,7 @@ Region = NTSC-J
Serial = SLPM-65193
Name = FIFA Soccer 2003
Region = NTSC-J
vuClampMode = 2 //missing geometry with microVU
---------------------------------------------
Serial = SLPM-65196
Name = Breath of Fire V - Dragon Quarter
@ -18909,6 +18924,7 @@ VuAddSubHack = 1
Serial = SLPM-65801
Name = Crash Bandicoot 5
Region = NTSC-J
Compat = 5
---------------------------------------------
Serial = SLPM-65802
Name = Def Jam - Vendetta [EA Best Hits]
@ -22289,6 +22305,7 @@ Region = NTSC-J
Serial = SLPM-66748
Name = Mana-Khemia - Gakuen no Renkinjutsu Shitachi
Region = NTSC-J
DMABusyHack = 1
---------------------------------------------
Serial = SLPM-66749
Name = Wizardry X 2 - Mugen no Gakuto [Wonder Price]
@ -23160,6 +23177,7 @@ Region = NTSC-J
Serial = SLPM-66994
Name = Mana-Khemia - Gakuen no Renkinjutsu Shitachi [Best Version]
Region = NTSC-J
DMABusyHack = 1
---------------------------------------------
Serial = SLPM-66996
Name = Shuumatsu Otome Gensou Alicematic Apocalypse [Limited Edition]
@ -24952,7 +24970,7 @@ Region = NTSC-J
Serial = SLPS-25033
Name = Kaze no Klonoa 2 - Sekai ga Nozonda Wasuremono
Region = NTSC-J
Compat = 5
Compat = 4
eeClampMode = 3 //Objects needed appear in wrong places without it
[patches = 1645DE53]
@ -25384,6 +25402,7 @@ Compat = 4
Serial = SLPS-25179
Name = FIFA 2003
Region = NTSC-J
vuClampMode = 2 //missing geometry with microVU
---------------------------------------------
Serial = SLPS-25181
Name = Gunvari Collection & Time Crisis
@ -25508,7 +25527,6 @@ Serial = SLPS-25217
Name = Shadow Tower Abyss
Region = NTSC-J
Compat = 5
EETimingHack = 1
---------------------------------------------
Serial = SLPS-25219
Name = Canary
@ -25684,6 +25702,7 @@ Serial = SLPS-25271
Name = Sidewinder V
Region = NTSC-J
Compat = 5
SkipMPEGHack = 1
---------------------------------------------
Serial = SLPS-25272
Name = Hulk, The
@ -25784,7 +25803,7 @@ Region = NTSC-J
Serial = SLPS-25303
Name = Zero - Crimson Butterfly
Region = NTSC-J
Compat = 3
Compat = 4
---------------------------------------------
Serial = SLPS-25304
Name = Beast Sapp
@ -25991,6 +26010,7 @@ SkipMPEGHack = 1
Serial = SLPS-25361
Name = Smash Court Professional Tournament 2
Region = NTSC-J
SkipMPEGHack = 1 //IPU menu hangs the game without it
---------------------------------------------
Serial = SLPS-25362
Name = Tetsujin 28 Go
@ -26646,7 +26666,7 @@ Region = NTSC-J
Serial = SLPS-25533
Name = Tales of Legendia
Region = NTSC-J
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLPS-25534
Name = Twinkle Star Sprites - La Petite Princesse
@ -28626,7 +28646,7 @@ Region = PAL-Unk
Serial = SCES-50294
Name = Gran Turismo 3 A-Spec
Region = PAL-M5
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCES-50295
Name = Dark Cloud
@ -28861,6 +28881,7 @@ Region = PAL-Unk
Serial = SCES-50916
Name = Ratchet & Clank
Region = PAL-M5
Compat = 5
---------------------------------------------
Serial = SCES-50917
Name = Sly Racoon
@ -29027,7 +29048,6 @@ Name = Formula One 2003
Region = PAL-M6
Compat = 5
XgKickHack = 1 //For SPS.
EETimingHack = 1 //For dying FMVs.
---------------------------------------------
Serial = SCES-51593
Name = Hardware Online Arena [Beta, Promo & Full Release]
@ -29036,6 +29056,7 @@ Region = PAL-M4
Serial = SCES-51607
Name = Ratchet & Clank 2 - Locked & Loaded
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SCES-51608
Name = Jak & Daxter 2 - Renegade
@ -29346,7 +29367,7 @@ Compat = 2
Serial = SCES-52892
Name = Moto GP 4
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCES-52893
Name = Killzone
@ -29373,7 +29394,7 @@ Region = PAL-Unk
Serial = SCES-53054
Name = Death by Degrees
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCES-53133
Name = God of War
@ -30010,7 +30031,7 @@ Region = PAL-Unk
Serial = SLES-50048
Name = Donald Duck - Quack Attack
Region = PAL-Unk
Compat = 5
Compat = 2
EETimingHack = 1 //For Flickery textures.
---------------------------------------------
Serial = SLES-50050
@ -30604,7 +30625,7 @@ Region = PAL-Unk
Serial = SLES-50325
Name = Max Payne
Region = PAL-E
Compat = 5
Compat = 4
---------------------------------------------
Serial = SLES-50326
Name = Max Payne
@ -30825,6 +30846,7 @@ Region = PAL-Unk
Serial = SLES-50435
Name = Tony Hawk's Pro Skater 3
Region = PAL-E
Compat = 5
---------------------------------------------
Serial = SLES-50436
Name = Tony Hawk Pro Skater 3
@ -31337,6 +31359,7 @@ Region = PAL-Unk
Serial = SLES-50717
Name = Mortal Kombat - Deadly Alliance
Region = PAL-E
Compat = 5
---------------------------------------------
Serial = SLES-50720
Name = FMX - Freestyle Metal X
@ -31359,14 +31382,6 @@ Serial = SLES-50725
Name = V-Rally 3
Region = PAL-Unk
Compat = 5
[patches = 163F0461]
comment=patches by Nachbrenner
// skip network check
patch=0,EE,002a4278,word,00103528 // GameInit_edNet__Fv
[/patches]
---------------------------------------------
Serial = SLES-50726
Name = Myst III - Exile
@ -31466,6 +31481,7 @@ Region = PAL-Unk
Serial = SLES-50771
Name = Blood Omen 2 - Legend of Kain
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-50772
Name = Blood Omen 2 - Legend of Kain
@ -31664,7 +31680,7 @@ EETimingHack = 1 //For texture flicker.
Serial = SLES-50842
Name = Downforce
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLES-50843
Name = Crashed
@ -32262,10 +32278,13 @@ Compat = 5
Serial = SLES-51130
Name = Tony Hawk's Pro Skater 4
Region = PAL-Unk
Compat = 5
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51132
Name = Tony Hawk's Pro Skater 4
Region = PAL-Unk
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51133
Name = Red Faction 2
@ -32380,6 +32399,7 @@ Serial = SLES-51197
Name = FIFA 2003
Region = PAL-M7
Compat = 4
vuClampMode = 2 //missing geometry with microVU
---------------------------------------------
Serial = SLES-51198
Name = NBA Live 2003
@ -32496,7 +32516,7 @@ Region = PAL-Unk
Serial = SLES-51252
Name = Lord of the Rings, The - The Two Towers
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLES-51253
Name = Lord of the Rings, The - The Two Towers (Seigneur des Anneaux - Les Deux Tours)
@ -32921,6 +32941,7 @@ Region = PAL-M5
Serial = SLES-51474
Name = Blood Rayne
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-51476
Name = Mystic Heroes
@ -32938,6 +32959,7 @@ Serial = SLES-51481
Name = NBA Street 2
Region = PAL-M2
Compat = 5
vuClampMode = 2 //missing environment with microVU
---------------------------------------------
Serial = SLES-51482
Name = Downtown Run
@ -33061,7 +33083,7 @@ Compat = 5
Serial = SLES-51584
Name = F1 Career Challenge
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLES-51588
Name = Evil Dead - A Fistful of Boomstick (with Bonus DVD Movie)
@ -33115,6 +33137,7 @@ Compat = 5
Serial = SLES-51617
Name = Starsky & Hutch
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-51618
Name = Starsky & Hutch
@ -33168,6 +33191,11 @@ Serial = SLES-51636
Name = XGRA - Extreme G Racing Association
Region = PAL-Unk
---------------------------------------------
Serial = SLES-51646
Name = Energy Airforce
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-51649
Name = Judge Dredd vs. Judge Death
Region = PAL-Unk
@ -33404,6 +33432,7 @@ Compat = 5
Serial = SLES-51752
Name = Tony Hawks Underground
Region = PAL-Unk
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51753
Name = True Crime - Streets of L.A.
@ -33611,6 +33640,8 @@ Region = PAL-G
Serial = SLES-51848
Name = Tony Hawk's Underground
Region = PAL-E
Compat = 5
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51850
Name = Basketball Xciting
@ -33619,6 +33650,7 @@ Region = PAL-Unk
Serial = SLES-51851
Name = Tony Hawk's Underground
Region = PAL-F
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51852
Name = Thug MOTX [Demo]
@ -33628,10 +33660,12 @@ Compat = 2
Serial = SLES-51853
Name = Tony Hawk's Underground
Region = PAL-F
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51854
Name = Tony Hawk Underground
Region = PAL-Unk
vuRoundMode = 0 //Crashes without.
---------------------------------------------
Serial = SLES-51855
Name = Tank Elite
@ -34732,6 +34766,7 @@ Region = PAL-Unk
Serial = SLES-52423
Name = Smash Court Tennis - Pro Tournament 2
Region = PAL-Unk
SkipMPEGHack = 1 //IPU menu hangs the game without it
---------------------------------------------
Serial = SLES-52433
Name = Goblin Commander - Unleash The Horde
@ -34879,7 +34914,7 @@ Serial = SLES-52510
Name = Neo Contra
Region = PAL-Unk
Compat = 4
SkipMPEGPatch = 1
SkipMPEGHack = 1
---------------------------------------------
Serial = SLES-52511
Name = Headhunter - Redemption (EX)
@ -35048,7 +35083,7 @@ Compat = 5
Serial = SLES-52570
Name = Area 51
Region = PAL-R
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLES-52571
Name = Pacific Air Warriors 2 - Dogfight
@ -35853,7 +35888,6 @@ Serial = SLES-52931
Name = Legend of Kay
Region = PAL-M5
Compat = 5
EETimingHack = 1 //For freezes in some scene transitions.
---------------------------------------------
Serial = SLES-52939
Name = Airborne Troops - Countdown to D-Day
@ -36256,7 +36290,7 @@ Region = PAL-Unk
Serial = SLES-53087
Name = TOCA Race Driver 3
Region = PAL-Unk
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLES-53088
Name = DTM Race Driver 3
@ -37029,6 +37063,7 @@ Region = PAL-Unk
Serial = SLES-53534
Name = Tony Hawk's American Wasteland
Region = PAL-Unk
Compat = 4
---------------------------------------------
Serial = SLES-53535
Name = Tony Hawk's American Wasteland
@ -37582,6 +37617,7 @@ Serial = SLES-53810
Name = Sensible Soccer 2006
Region = PAL-Unk
Compat = 5
SkipMPEGHack = 1
---------------------------------------------
Serial = SLES-53813
Name = Friends - Celui qui Repond a Toutes les Questions
@ -37681,6 +37717,11 @@ Serial = SLES-53862
Name = Dynasty Warriors 5 - Xtreme Legends
Region = PAL-Unk
---------------------------------------------
Serial = SLES-52246
Name = Pool Paradise
Region = PAL-M5
Compat = 5
---------------------------------------------
Serial = SLES-53866
Name = Over the Hedge
Region = PAL-Unk
@ -37734,8 +37775,8 @@ Serial = SLES-53901
Name = Torino 2006
Region = PAL-E
Compat = 5
EETimingHack = 1 //Broken 3D.
vuClampMode = 2 //for SPS with microVU.
EETimingHack = 1 //Broken 3D.
vuClampMode = 2 //for SPS with microVU.
---------------------------------------------
Serial = SLES-53902
Name = Leaderboard Golf
@ -37941,6 +37982,7 @@ Serial = SLES-54002
Name = FlatOut 2
Region = PAL-M5
Compat = 5
EETimingHack = 1 //random hang
---------------------------------------------
Serial = SLES-54003
Name = Flatout 2
@ -37997,6 +38039,7 @@ Region = PAL-Unk
Serial = SLES-54030
Name = Black
Region = PAL-Unk
Compat = 5
vuClampMode = 0
---------------------------------------------
Serial = SLES-54031
@ -39014,6 +39057,11 @@ Name = Stuntman Ignition
Region = PAL-E
Compat = 4
---------------------------------------------
Serial = SLES-54834
Name = Juiced 2
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-54845
Name = Warriors Orochi
Region = PAL-Unk
@ -39152,6 +39200,12 @@ Name = Tomb Raider Underworld
Region = PAL-Unk
Compat = 5
---------------------------------------------
Serial = SLES-55443
Name = Mana Khemia - Alchemists of Al-Revis
Region = PAL-E
Compat = 5
DMABusyHack = 1
---------------------------------------------
Serial = SLES-55444
Name = Ar tonelico II: Melody of Metafalica
Region = PAL-Unk

View File

@ -8,6 +8,7 @@ endif(NOT TOP_CMAKE_WAS_SOURCED)
# set common flags
set(CommonFlags
-DLINUX_PRINT_SVN_NUMBER
-pthread
-fvisibility=hidden
-fno-guess-branch-probability

View File

@ -25,7 +25,7 @@
#include "Utilities/ScopedPtr.h"
#include "Utilities/pxStreams.h"
#if _MSC_VER
#if _MSC_VER || defined(LINUX_PRINT_SVN_NUMBER)
# include "svnrev.h"
#endif

View File

@ -154,7 +154,7 @@ void SysOutOfMemory_EmergencyResponse(uptr blocksize)
}
#if _MSC_VER
#if _MSC_VER || defined(LINUX_PRINT_SVN_NUMBER)
# include "svnrev.h"
#endif

View File

@ -244,8 +244,12 @@ namespace Implementations
if( zoom < 0 )
return;
g_Conf->GSWindow.Zoom = zoom;
Console.WriteLn(L"(GSwindow) Zoom: %f", zoom);
if ( zoom == 0 )
Console.WriteLn(L"(GSwindow) Zoom: 0 (auto, no black bars)");
else
Console.WriteLn(L"(GSwindow) Zoom: %f", zoom);
UpdateImagePosition();
}

View File

@ -24,7 +24,7 @@
#include <wx/iconbndl.h>
#if _MSC_VER
#if _MSC_VER || defined(LINUX_PRINT_SVN_NUMBER)
# include "svnrev.h"
#endif
@ -65,6 +65,8 @@ void MainEmuFrame::UpdateIsoSrcSelection()
sMenuBar.Check( cdsrc, true );
m_statusbar.SetStatusText( CDVD_SourceLabels[g_Conf->CdvdSource], 1 );
EnableCdvdPluginSubmenu( cdsrc == MenuId_Src_Plugin );
//sMenuBar.SetLabel( MenuId_Src_Iso, wxsFormat( L"%s -> %s", _("Iso"),
// exists ? Path::GetFilename(g_Conf->CurrentIso).c_str() : _("Empty") ) );
}
@ -289,7 +291,7 @@ void MainEmuFrame::AppStatusEvent_OnSettingsApplied()
ApplySettings();
}
static int GetPluginMenuId_Settings( PluginsEnum_t pid )
int GetPluginMenuId_Settings( PluginsEnum_t pid )
{
return MenuId_PluginBase_Settings + ((int)pid * PluginMenuId_Interval);
}

View File

@ -144,6 +144,7 @@ public:
void UpdateIsoSrcSelection();
void RemoveCdvdMenu();
void EnableMenuItem( int id, bool enable );
void EnableCdvdPluginSubmenu(bool isEnable = true);
bool Destroy();
@ -222,3 +223,4 @@ protected:
friend class Pcsx2App;
};
extern int GetPluginMenuId_Settings( PluginsEnum_t pid );

View File

@ -168,6 +168,8 @@ wxWindowID SwapOrReset_Iso( wxWindow* owner, IScopedCoreThread& core_control, co
core_control.AllowResume();
}
GetMainFrame().EnableCdvdPluginSubmenu( g_Conf->CdvdSource == CDVDsrc_Plugin );
return result;
}
@ -215,6 +217,8 @@ wxWindowID SwapOrReset_CdvdSrc( wxWindow* owner, CDVD_SourceType newsrc )
sApp.SysExecute( g_Conf->CdvdSource );
}
GetMainFrame().EnableCdvdPluginSubmenu( g_Conf->CdvdSource == CDVDsrc_Plugin );
return result;
}
@ -349,6 +353,11 @@ void MainEmuFrame::_DoBootCdvd()
sApp.SysExecute( g_Conf->CdvdSource );
}
void MainEmuFrame::EnableCdvdPluginSubmenu(bool isEnable)
{
EnableMenuItem( GetPluginMenuId_Settings(PluginId_CDVD), isEnable );
}
void MainEmuFrame::Menu_CdvdSource_Click( wxCommandEvent &event )
{
CDVD_SourceType newsrc = CDVDsrc_NoDisc;

View File

@ -29,7 +29,7 @@ struct Component_FileMcd;
#include "System.h"
#include "AppConfig.h"
#if _MSC_VER
#if _MSC_VER || defined(LINUX_PRINT_SVN_NUMBER)
# include "svnrev.h"
#endif

View File

@ -105,6 +105,10 @@ CRC::Game CRC::m_games[] =
{0x44A61C8F, GT4, NoRegion, 0},
{0x0086E35B, GT4, NoRegion, 0},
{0x77E61C8A, GT4, NoRegion, 0},
{0x85AE91B3, GT3, US, 0},
{0xC220951A, GT3, NoRegion, 0},
{0x60013EBD, GTConcept, EU, 0},
{0xB590CE04, GTConcept, NoRegion, 0},
{0xC164550A, WildArms5, JPUNDUB, 0},
{0xC1640D2C, WildArms5, US, 0},
{0x0FCF8FE4, WildArms5, EU, 0},
@ -115,6 +119,9 @@ CRC::Game CRC::m_games[] =
{0x7B2DE9CC, WildArms4, EU, 0},
{0x8B029334, Manhunt2, NoRegion, 0},
{0x09F49E37, CrashBandicootWoC, NoRegion, 0},
{0x75182BE5, CrashBandicootWoC, US, 0},
{0x5188ABCA, CrashBandicootWoC, US, 0},
{0x3A03D62F, CrashBandicootWoC, EU, 0},
{0x013E349D, ResidentEvil4, US, 0},
{0x6BA2F6B9, ResidentEvil4, NoRegion, 0},
{0x60FA8C69, ResidentEvil4, JP, 0},
@ -123,8 +130,9 @@ CRC::Game CRC::m_games[] =
{0x1B9B7563, AceCombat4, NoRegion, 0},
{0xEC432B24, Drakengard2, NoRegion, 0},
{0xFC46EA61, Tekken5, JP, 0},
{0x1F88EE37, Tekken5, NoRegion, 0},
{0x652050D2, Tekken5, NoRegion, 0},
{0x1F88EE37, Tekken5, EU, 0},
{0x1F88BECD, Tekken5, EU, 0}, //language selector...
{0x652050D2, Tekken5, US, 0},
{0x9E98B8AE, IkkiTousen, JP, 0},
{0xD6385328, GodOfWar, US, 0},
{0xFB0E6D72, GodOfWar, EU, 0},
@ -181,13 +189,26 @@ CRC::Game CRC::m_games[] =
{0x1CC39DBD, SuikodenTactics, US, 0},
{0x64C58FB4, TenchuFS, US, 0},
{0xE7CCCB1E, TenchuFS, EU, 0},
{0x1969B19A, TenchuFS, EU, 0}, //PAL Spanish
{0x1969B19A, TenchuFS, ES, 0}, //PAL Spanish
{0x525C1994, TenchuFS, ASIA, 0},
{0x767E383D, TenchuWoH, US, 0},
{0x83261085, TenchuWoH, EU, 0}, //PAL German
{0x8BC95883, Sly3, US, 0},
{0x8164C614, Sly3, EU, 0},
{0x07652DD9, Sly2, US, 0},
{0xFDA1CBF6, Sly2, EU, 0},
{0xA9C82AB9, DemonStone, US, 0},
{0x7C7578F3, DemonStone, EU, 0},
{0x506644B3, BigMuthaTruckers, EU, 0},
{0x90F0D852, BigMuthaTruckers, US, 0},
{0x5CC9BF81, TimeSplitters2, EU, 0},
{0x12532F1C, TimeSplitters2, US, 0},
{0xA33748AA, ReZ, US, 0},
{0xAE1152EB, ReZ, EU, 0},
{0xD2EA890A, ReZ, JP, 0},
{0xC818BEC2, LordOfTheRingsTwoTowers, US, 0},
{0x9ABF90FB, LordOfTheRingsTwoTowers, ES, 0},
{0xC0E909E9, LordOfTheRingsTwoTowers, JP, 0},
};
hash_map<uint32, CRC::Game*> CRC::m_map;

View File

@ -52,6 +52,8 @@ public:
OnePieceGrandBattle,
ICO,
GT4,
GT3,
GTConcept,
WildArms5,
WildArms4,
Manhunt2,
@ -86,6 +88,11 @@ public:
TenchuFS,
Sly3,
Sly2,
DemonStone,
BigMuthaTruckers,
TimeSplitters2,
ReZ,
LordOfTheRingsTwoTowers,
TitleCount,
};

View File

@ -2096,6 +2096,32 @@ bool GSC_GT4(const GSFrameInfo& fi, int& skip)
return true;
}
bool GSC_GT3(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && fi.FBP >= 0x02de0 && fi.FPSM == PSM_PSMCT32 && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x01180) && fi.TPSM == PSM_PSMT8)
{
skip = 770;
}
}
return true;
}
bool GSC_GTConcept(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && fi.FBP >= 0x03420 && fi.FPSM == PSM_PSMCT32 && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x01400) && fi.TPSM == PSM_PSMT8)
{
skip = 880;
}
}
return true;
}
bool GSC_WildArms4(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
@ -2153,23 +2179,23 @@ bool GSC_CrashBandicootWoC(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00a00) && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x00a00) && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.FPSM == fi.TPSM)
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0 || fi.FBP == 0x00a00) && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x008c0 || fi.TBP0 == 0x00a00) && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.FPSM == fi.TPSM)
{
return false; // allowed
}
if(fi.TME && fi.FBP == 0x02200 && fi.FPSM == PSM_PSMZ24 && fi.TBP0 == 0x01400 && fi.TPSM == PSM_PSMZ24)
if(fi.TME && (fi.FBP == 0x01e40 || fi.FBP == 0x02200) && fi.FPSM == PSM_PSMZ24 && (fi.TBP0 == 0x01180 || fi.TBP0 == 0x01400) && fi.TPSM == PSM_PSMZ24)
{
skip = 41;
skip = 42;
}
}
else
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00a00) && fi.FPSM == PSM_PSMCT32 && fi.TBP0 == 0x03c00 && fi.TPSM == PSM_PSMCT32)
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0 || fi.FBP == 0x00a00) && fi.FPSM == PSM_PSMCT32 && fi.TBP0 == 0x03c00 && fi.TPSM == PSM_PSMCT32)
{
skip = 0;
}
else if(!fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00a00))
else if(!fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0 || fi.FBP == 0x00a00))
{
skip = 0;
}
@ -2238,10 +2264,14 @@ bool GSC_Tekken5(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && fi.FBP == 0x02ea0 && fi.FPSM == PSM_PSMCT32 && fi.TBP0 == 0x00000 && fi.TPSM == PSM_PSMCT32)
if(fi.TME && (fi.FBP == 0x02d60 || fi.FBP == 0x02d80 || fi.FBP == 0x02ea0 || fi.FBP == 0x03620) && fi.FPSM == PSM_PSMCT32 && fi.TBP0 == 0x00000 && fi.TPSM == PSM_PSMCT32)
{
skip = 95;
}
else if(fi.TME && (fi.FBP == 0x02bc0 || fi.FBP == 0x02be0) && fi.FPSM == fi.TPSM && fi.TBP0 == 0x00000 && fi.TPSM == PSM_PSMCT32)
{
skip = 2;
}
}
return true;
@ -2424,6 +2454,14 @@ bool GSC_ValkyrieProfile2(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
/*if(fi.TME && (fi.FBP == 0x018c0 || fi.FBP == 0x02180) && fi.FPSM == fi.TPSM && fi.TBP0 >= 0x03200 && fi.TPSM == PSM_PSMCT32) //NTSC only, !(fi.TBP0 == 0x03580 || fi.TBP0 == 0x03960)
{
skip = 1; //red garbage in lost forest, removes other effects...
}
if(fi.TME && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT16 && fi.FBMSK == 0x03FFF)
{
skip = 1; //garbage in cutscenes, doesn't remove completely, better use "Alpha Hack"
}*/
if(fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH)
{
skip = 1000; //
@ -2537,6 +2575,7 @@ bool GSC_Sly3(const GSFrameInfo& fi, int& skip)
skip = 3;
}
}
return true;
}
@ -2544,7 +2583,7 @@ bool GSC_Sly2(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00700 || fi.FBP == 0x00800) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT16 && fi.FBMSK == 0x03FFF)
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00700 || fi.FBP == 0x00800) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT16 && fi.FBMSK == 0x03FFF)
{
skip = 1000;
}
@ -2560,6 +2599,89 @@ bool GSC_Sly2(const GSFrameInfo& fi, int& skip)
return true;
}
bool GSC_DemonStone(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && fi.FBP == 0x01400 && fi.FPSM == fi.TPSM && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x01000) && fi.TPSM == PSM_PSMCT16)
{
skip = 1000;
}
}
else
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x01000) && fi.FPSM == PSM_PSMCT32)
{
skip = 2;
}
}
return true;
}
bool GSC_BigMuthaTruckers(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00a00) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT16)
{
skip = 3;
}
}
return true;
}
bool GSC_TimeSplitters2(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x00e00 || fi.FBP == 0x01000) && fi.FPSM == fi.TPSM && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x00e00 || fi.TBP0 == 0x01000) && fi.TPSM == PSM_PSMCT32 && fi.FBMSK == 0x0FF000000)
{
skip = 1;
}
}
return true;
}
bool GSC_ReZ(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0 || fi.FBP == 0x00a00) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT32)
{
skip = 1;
}
}
return true;
}
bool GSC_LordOfTheRingsTwoTowers(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x01180 || fi.FBP == 0x01400) && fi.FPSM == fi.TPSM && (fi.TBP0 == 0x00000 || fi.TBP0 == 0x01000) && fi.TPSM == PSM_PSMCT16)
{
skip = 1000;//shadows
}
else if(fi.TME && fi.TPSM == PSM_PSMZ16 && fi.TBP0 == 0x01400 && fi.FPSM == PSM_PSMCT16 && fi.FBMSK == 0x03FFF)
{
skip = 3; //wall of fog
}
}
else
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x01000) && (fi.TBP0 == 0x01180 || fi.TBP0 == 0x01400) && fi.FPSM == PSM_PSMCT32)
{
skip = 2;
}
}
return true;
}
bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
{
GSFrameInfo fi;
@ -2593,6 +2715,8 @@ bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
map[CRC::OnePieceGrandBattle] = GSC_OnePieceGrandBattle;
map[CRC::ICO] = GSC_ICO;
map[CRC::GT4] = GSC_GT4;
map[CRC::GT3] = GSC_GT3;
map[CRC::GTConcept] = GSC_GTConcept;
map[CRC::WildArms4] = GSC_WildArms4;
map[CRC::WildArms5] = GSC_WildArms5;
map[CRC::Manhunt2] = GSC_Manhunt2;
@ -2619,6 +2743,11 @@ bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
map[CRC::TenchuFS] = GSC_TenchuFS;
map[CRC::Sly3] = GSC_Sly3;
map[CRC::Sly2] = GSC_Sly2;
map[CRC::DemonStone] = GSC_DemonStone;
map[CRC::BigMuthaTruckers] = GSC_BigMuthaTruckers;
map[CRC::TimeSplitters2] = GSC_TimeSplitters2;
map[CRC::ReZ] = GSC_ReZ;
map[CRC::LordOfTheRingsTwoTowers] = GSC_LordOfTheRingsTwoTowers;
}
// TODO: just set gsc in SetGameCRC once

View File

@ -638,11 +638,11 @@ GSTextureCache::Source* GSTextureCache::CreateSource(const GIFRegTEX0& TEX0, con
{
// FIXME: timesplitters blurs the render target by blending itself over a couple of times
hack = true;
if(tw == 256 && th == 128 && (TEX0.TBP0 == 0 || TEX0.TBP0 == 0x00e00))
{
delete src;
return NULL;
}
//if(tw == 256 && th == 128 && (TEX0.TBP0 == 0 || TEX0.TBP0 == 0x00e00))
//{
// delete src;
// return NULL;
//}
}
// width/height conversion

View File

@ -327,7 +327,7 @@ GSWnd::~GSWnd()
// Actually the destructor is not called when there is a GSclose or GSshutdown
// The window still need to be closed
void GSWnd::Detach()
void GSWnd::Detach()
{
if(m_window != NULL)
{
@ -345,9 +345,14 @@ bool GSWnd::Create(const string& title, int w, int h)
h = theApp.GetConfig("ModeHeight", 480);
}
#ifdef _LINUX
// Sanity check; if there aren't any video displays available, we can't create a window.
if (SDL_GetNumVideoDisplays() <= 0) return false;
#endif
m_window = SDL_CreateWindow(title.c_str(), 100, 100, w, h, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_RESIZABLE);
return true;
return (m_window != NULL);
}
Display* GSWnd::GetDisplay()

View File

@ -15,7 +15,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <gdk/gdkx.h>
#include "PadLinux.h"
Display *GSdsp;
@ -63,7 +63,24 @@ void _PadUpdate(int pad)
s32 _PADOpen(void *pDsp)
{
GSdsp = *(Display**)pDsp;
GtkScrolledWindow *win;
win = *(GtkScrolledWindow**) pDsp;
if (GTK_IS_WIDGET(win))
{
// Since we have a GtkScrolledWindow, for now we'll grab whatever display
// comes along instead. Later, we can fiddle with this, but I'm not sure the
// best way to get a Display* out of a GtkScrolledWindow. A GtkWindow I might
// be able to manage... --arcum42
GSdsp = GDK_DISPLAY_XDISPLAY(gdk_display_get_default());
}
else
{
GSdsp = *(Display**)pDsp;
}
XAutoRepeatOff(GSdsp);
return 0;

View File

@ -200,25 +200,11 @@ class keys_tree
};
keys_tree *fir;
int _GetJoystickIdFromPAD(int pad)
int _GetJoystickId()
{
// select the right joystick id
u32 joyid = -1;
// for (int p = 0; p < MAX_SUB_KEYS; p++)
// {
// for (int i = 0; i < MAX_KEYS; ++i)
// {
// KeyType k = type_of_key(PadEnum[pad][p],i);
//
// if (k == PAD_JOYSTICK || k == PAD_JOYBUTTONS)
// {
// joyid = key_to_joystick_id(PadEnum[pad][p],i);
// return joyid;
// }
// }
// }
if (!JoystickIdWithinBounds(joyid))
{
// get first unused joystick
@ -234,7 +220,7 @@ int _GetJoystickIdFromPAD(int pad)
int Get_Current_Joystick()
{
// check bounds
int joyid = _GetJoystickIdFromPAD(0);
int joyid = _GetJoystickId();
if (JoystickIdWithinBounds(joyid))
return joyid + 1; // select the combo

View File

@ -180,7 +180,7 @@ EXPORT_C_(void) PADupdate(int pad)
case PAD_LY:
case PAD_RX:
case PAD_RY:
if (abs(value) > (pjoy)->GetDeadzone(value))
if (abs(value) > (pjoy)->GetDeadzone(/*value*/))
Analog::ConfigurePad(pad, i, value);
else
Analog::ResetPad(pad, i);

View File

@ -100,7 +100,7 @@ void JoystickInfo::EnumerateJoysticks(vector<JoystickInfo*>& vjoysticks)
for (int i = 0; i < (int)vjoysticks.size(); ++i)
{
vjoysticks[i] = new JoystickInfo();
vjoysticks[i]->Init(i, true);
vjoysticks[i]->Init(i);
}
// set the pads
@ -124,16 +124,6 @@ void JoystickInfo::EnumerateJoysticks(vector<JoystickInfo*>& vjoysticks)
}
JoystickInfo::JoystickInfo()
{
joy = NULL;
_id = -1;
pad = -1;
axisrange = 0x7fff;
deadzone = 2000;
}
void JoystickInfo::Destroy()
{
if (joy != NULL)
@ -143,7 +133,7 @@ void JoystickInfo::Destroy()
}
}
bool JoystickInfo::Init(int id, bool bStartThread)
bool JoystickInfo::Init(int id)
{
Destroy();
_id = id;

View File

@ -35,27 +35,28 @@
class JoystickInfo
{
public:
JoystickInfo();
JoystickInfo() : devname(""), _id(-1), numbuttons(0), numaxes(0), numhats(0), axisrange(0x7fff),
deadzone(2000), pad(-1), vbuttonstate(NULL), vaxisstate(NULL), vhatstate(NULL), joy(NULL) {}
~JoystickInfo()
{
Destroy();
}
JoystickInfo(const JoystickInfo&); // copy constructor
JoystickInfo& operator=(const JoystickInfo&); // assignment
void Destroy();
// opens handles to all possible joysticks
static void EnumerateJoysticks(vector<JoystickInfo*>& vjoysticks);
bool Init(int id, bool bStartThread = true); // opens a handle and gets information
bool Init(int id); // opens a handle and gets information
void Assign(int pad); // assigns a joystick to a pad
void TestForce();
bool PollButtons(int &jbutton, u32 &pkey);
bool PollAxes(int &axis_id, u32 &pkey);
bool PollHats(int &jbutton, int &dir, u32 &pkey);
bool PollPOV(int &axis_id, bool &sign, u32 &pkey);
const string& GetName()
@ -88,7 +89,7 @@ class JoystickInfo
return pad;
}
int GetDeadzone(int axis)
int GetDeadzone(/*int axis*/)
{
return deadzone;
}

View File

@ -227,47 +227,6 @@ LRESULT WINAPI PADwndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
event.key = wParam;
break;
/*case WM_LBUTTONDOWN:
lbutton = true;
break;
case WM_LBUTTONUP:
g_lanalog[0].x = 0x80;
g_lanalog[0].y = 0x80;
g_lanalog[1].x = 0x80;
g_lanalog[1].y = 0x80;
lbutton = false;
break;
case WM_RBUTTONDOWN:
rbutton = true;
break;
case WM_RBUTTONUP:
g_ranalog[0].x = 0x80;
g_ranalog[0].y = 0x80;
g_ranalog[1].x = 0x80;
g_ranalog[1].y = 0x80;
rbutton = false;
break;
case WM_MOUSEMOVE:
if (lbutton)
{
g_lanalog[0].x = LOWORD(lParam) & 254;
g_lanalog[0].y = HIWORD(lParam) & 254;
g_lanalog[1].x = LOWORD(lParam) & 254;
g_lanalog[1].y = HIWORD(lParam) & 254;
}
if (rbutton)
{
g_ranalog[0].x = LOWORD(lParam) & 254;
g_ranalog[0].y = HIWORD(lParam) & 254;
g_ranalog[1].x = LOWORD(lParam) & 254;
g_ranalog[1].y = HIWORD(lParam) & 254;
}
break;*/
case WM_DESTROY:
case WM_QUIT:
event.evt = KEYPRESS;

View File

@ -291,7 +291,12 @@ public:
{
wxString api( L"EMPTYEMPTYEMPTY" );
m_Device = L"EMPTYEMPTYEMPTY";
#ifdef __LINUX__
// By default on linux use the ALSA API (+99% users) -- Gregory
CfgReadStr( L"PORTAUDIO", L"HostApi", api, L"ALSA" );
#else
CfgReadStr( L"PORTAUDIO", L"HostApi", api, L"Unknown" );
#endif
CfgReadStr( L"PORTAUDIO", L"Device", m_Device, L"default" );
SetApiSettings(api);