OPL (Open PS2 Loader)

PS2 Open PS2 Loader v1.1.0

OK, so lets wait for pull request to be merged.

But I'm pretty sure it will work. :D

Anything particular that I should search in SLES_513.01?
I mean broke FMV after selecting New Game.
Sound issues at the start of game?

I've tried for a short period of time this game through HDD ~30 min ago (without any compatibility mode).
Everything should be fine.

Thank you!

And... I had a feeling it is like that. Something is up, but I don't know what. :mad:
When I booted the game via OPL on the DTL-T10000, it was as if the patch was not being applied. There was that annoying sound at the language select screen & main menu, and the game would eventually crash (within the sesq module) while moving about certain parts of the map.

But I guess it is good news, if it works with no issues.
Maybe I just never tested it on the T10000, since I have sometimes been doing development with RDB on the CEX PS2, to reduce the wear on the T10000. The T10000 has different kernels that are not always exactly the same as the one in the CEX and Sony knows that too. That's why they have those DEX consoles, for testing.
 
Last edited:
Is there any more info why this game (SCES_500.00 & SLUS_200.02) refuse to work through USB?
I mean crashes after 1st loading screen:

The game might have a problem, causing it to overrun the end of the scratchpad (0x70004000) under specific conditions:
Code:
EE DECI2 Manager version 0.06 Oct 31 2003 19:02:01
  CPUID=2e14, BoardID=4126, ROMGEN=2003-1031, 32M
   
*** Unexpected reply - type=BREAKR result=EXCEPTION
*** Target program stopped. Check the location by dr command.
dsedb S> dr
 at=70000000  v0-1=70004000,00000000  a0-3=00000431,00000000,70000000,70002150
 t0-7=00a626a0,70002160,70000000,00000000, 00001d00,0000004b,0000004f,28029a40
 s0-7=00000000,00000400,00a626a0,fffffe1f, 00000000,fffffe1f,00347080,01e24fe0
 t8=00ffffff t9=00000000  k0=80016ed8 k1=00000000  gp=0033a670 sp=01fffaf0
 fp=00a5d758 ra=0022e57c  lo=00000450 hi=00000000  sa=00000000 PC=0022e5e0
 badvaddr=70004008 badpaddr=210c0140
 $cause  = 0x0000800c [ CE0 EXC2=Reset IP7 EXC="TLB miss,store" ]
 $status  = 0x70030c13 [ Cu210 EDI EIE IM3 IM2 KSU=User EXL IE ]
  0x0022e5d8: 0x24040431  li  $a0,0x431
  0x0022e5dc: 0x00651825  or  $v1,$v1,$a1
->0x0022e5e0: 0xfc440008  sd  $a0,8($v0)
  0x0022e5e4: 0xfc430000  sd  $v1,0($v0)
  0x0022e5e8: 0x26310001  addiu  $s1,$s1,1
  0x0022e5ec: 0x0000802d  move  $s0,$zero
  0x0022e5f0: 0x86420000  lh  $v0,0($s2)
dsedb S> dt
tid prio  pc  sp  status cause sid wakeup count function
  0 128 00081fd8 00000000  Ready  0  9161 
  1  10 0022e5e0 01fffaf0  Run  0  14699 
  6  5 002dc2e8 01dad440  Wait Sleep  0  5559 
  7  0 002dc408 01d79cc0  Wait  Sema  2  0  100 
dsedb S> dt -v
<<tid  0  prio 128 count 9161 status [Ready]  wakeup 0>>
pc  = 00081fd8  
func  = 00081fc0  
args  = 00000000  argc = 00000000  end of heap = 00000000
stack = 00000000  stackpointer = fffffd80  stacksize = 00000000
zero($00) = 00000000_00000000_00000000_00000000  $fpr0  = +0
  at($01) = 00000000_00000000_00000000_00000000  $fpr1  = +0
  v0($02) = 00000000_00000000_00000000_00000000  $fpr2  = +0
  v1($03) = 00000000_00000000_00000000_00000000  $fpr3  = +0
  a0($04) = 00000000_00000000_00000000_00000000  $fpr4  = +0
  a1($05) = 00000000_00000000_00000000_00000000  $fpr5  = +0
  a2($06) = 00000000_00000000_00000000_00000000  $fpr6  = +0
  a3($07) = 00000000_00000000_00000000_00000000  $fpr7  = +0
  t0($08) = 00000000_00000000_00000000_00000000  $fpr8  = +0
  t1($09) = 00000000_00000000_00000000_00000000  $fpr9  = +0
  t2($10) = 00000000_00000000_00000000_00000000  $fpr10 = +0
  t3($11) = 00000000_00000000_00000000_00000000  $fpr11 = +0
  t4($12) = 00000000_00000000_00000000_00000000  $fpr12 = +0
  t5($13) = 00000000_00000000_00000000_00000000  $fpr13 = +0
  t6($14) = 00000000_00000000_00000000_00000000  $fpr14 = +0
  t7($15) = 00000000_00000000_00000000_00000000  $fpr15 = +0
  s0($16) = 00000000_00000000_00000000_00000000  $fpr16 = +0
  s1($17) = 00000000_00000000_00000000_00000000  $fpr17 = +5.537e-09
  s2($18) = 00000000_00000000_00000000_00000000  $fpr18 = +8.26766e-43
  s3($19) = 00000000_00000000_00000000_00000000  $fpr19 = +2.10195e-44
  s4($20) = 00000000_00000000_00000000_00000000  $fpr20 = +1.58766e+29
  s5($21) = 00000000_00000000_00000000_00000000  $fpr21 = +0
  s6($22) = 00000000_00000000_00000000_00000000  $fpr22 = +1.10703e-43
  s7($23) = 00000000_00000000_00000000_00000000  $fpr23 = +0
  t8($24) = 00000000_00000000_00000000_00000000  $fpr24 = +0
  t9($25) = 00000000_00000000_00000000_00000000  $fpr25 = +0
  gp($28) = 00000000_00000000_00000000_00000000  $fpr26 = +0
  sp($29) = 00000000_00000000_00000000_00000000  $fpr27 = +0
  fp($30) = 00000000_00000000_00000000_00000000  $fpr28 = +0
  ra($31) = 00000000_00000000_00000000_00000000  $fpr29 = +0
hi  = 00000000_00000000  lo  = 00000000_00000000  $fpr30 = +2.25815e-36
hi1 = 00000000_00000000  lo1 = 00000000_00000000  $fpr31 = +1.18182e-38
fcr31 = 01000001  facc = +0  sa = 00000000
<<tid  1  prio  10 count 14699 status [Run]  wakeup 0>>
pc  = 0022e5e0  
func  = 00200008  
args  = 00335100  argc = 00000001  end of heap = 01ff0000
stack = 01ff0000  stackpointer = 01fffaf0  stacksize = 00010000
zero($00) = 00000000_00000000_00000000_00000000  $fpr0  = +0.000935679
  at($01) = 00000000_00000000_00000000_70000000  $fpr1  = +0.00392157
  v0($02) = 00000000_0000004f_00000000_70004000  $fpr2  = +2.10195e-44
  v1($03) = 0000000f_0000024e_31be4000_00000000  $fpr3  = +0
  a0($04) = 000000ff_00000080_00000000_00000431  $fpr4  = +23.0912
  a1($05) = 00000000_00000000_31be4000_00000000  $fpr5  = +1
  a2($06) = 00000000_3de978d5_00000000_70000000  $fpr6  = +0.45
  a3($07) = 00000000_00000000_00000000_70002150  $fpr7  = +0.5
  t0($08) = 00000000_00000000_00000000_00a626a0  $fpr8  = +0.114
  t1($09) = 00000000_3f800000_00000000_70002160  $fpr9  = +0.107
  t2($10) = 00000000_bf36b863_00000000_70000000  $fpr10 = +0.2
  t3($11) = 00000000_00000000_ff000000_00000000  $fpr11 = +0.275
  t4($12) = bea8b77f_bea8b77f_00000000_00001d00  $fpr12 = +1.5708
  t5($13) = 00000000_00000000_00000000_0000004b  $fpr13 = +0.8
  t6($14) = 00000000_80000000_00000000_0000004f  $fpr14 = +0.368
  t7($15) = 00000000_00000000_00000006_28029a40  $fpr15 = +2048
  s0($16) = 00000000_00000000_00000000_00000000  $fpr16 = +2048
  s1($17) = 00000000_00000000_00000000_00000400  $fpr17 = +65535
  s2($18) = 00000000_00000000_00000000_00a626a0  $fpr18 = +1.67772e+07
  s3($19) = 00000000_00000000_ffffffff_fffffe1f  $fpr19 = +65534.9
  s4($20) = 00000000_00000000_00000000_00000000  $fpr20 = +0
  s5($21) = 00000000_00000000_ffffffff_fffffe1f  $fpr21 = +0
  s6($22) = 00000000_00000000_00000000_00347080  $fpr22 = +0
  s7($23) = 00000000_00000000_00000000_01e24fe0  $fpr23 = +0
  t8($24) = 00000000_00000000_00000000_00ffffff  $fpr24 = +0
  t9($25) = 00000000_00000000_00000000_00000000  $fpr25 = +0
  gp($28) = 00000000_00000000_00000000_0033a670  $fpr26 = +0
  sp($29) = 00000000_04401a24_00000000_01fffaf0  $fpr27 = +0
  fp($30) = 00000000_00000000_00000000_00a5d758  $fpr28 = +0
  ra($31) = 00000000_00000000_00000000_0022e57c  $fpr29 = +0
hi  = 00000000_00000000  lo  = 00000000_00000450  $fpr30 = +0
hi1 = 00000000_00000000  lo1 = 00000000_00000000  $fpr31 = +0
fcr31 = 01000021  facc = +0  sa = 00000000
<<tid  6  prio  5 count 5559 status [Wait] cause [Sleep] wakeup 0>>
pc  = 002dc2e8  
func  = 002c5db8  
args  = 00000000  argc = 00000000  end of heap = 01ff0000
stack = 01dac500  stackpointer = 01dad1c0  stacksize = 00001000
zero($00) = 00000000_00000000_00000000_00000000  $fpr0  = +0
  at($01) = 00000000_00000000_ffffffff_80020000  $fpr1  = +0
  v0($02) = 00000000_00000000_00000000_00000006  $fpr2  = +0
  v1($03) = 00000000_00000000_00000000_000000c8  $fpr3  = +0
  a0($04) = 00000000_00000000_00000000_00000000  $fpr4  = +0
  a1($05) = 00000000_00000000_00000000_00000000  $fpr5  = +0
  a2($06) = 00000000_00000000_00000000_00000004  $fpr6  = +0
  a3($07) = 00000000_00000000_00000000_00000044  $fpr7  = +0
  t0($08) = 00000000_00000000_00000000_00000000  $fpr8  = +0
  t1($09) = 00000000_00000000_ffffffff_a00267d0  $fpr9  = +0
  t2($10) = 00000000_00000000_00000000_00000040  $fpr10 = +0
  t3($11) = 00000000_00000000_ffffffff_a0026780  $fpr11 = +0
  t4($12) = 00000000_00000000_00000000_21db1780  $fpr12 = +0
  t5($13) = 00000000_00000000_ffffffff_a0000000  $fpr13 = +0
  t6($14) = 00000000_00000000_00000000_00000004  $fpr14 = +0
  t7($15) = 00000000_00000000_00000000_0000001f  $fpr15 = +0
  s0($16) = 00000000_00000000_00000000_01dad460  $fpr16 = +0
  s1($17) = 00000000_00000000_00000000_00000000  $fpr17 = +0
  s2($18) = 00000000_00000000_00000000_00000000  $fpr18 = +0
  s3($19) = 00000000_00000000_00000000_00000000  $fpr19 = +0
  s4($20) = 00000000_00000000_00000000_00000000  $fpr20 = +0
  s5($21) = 00000000_00000000_00000000_00000000  $fpr21 = +0
  s6($22) = 00000000_00000000_00000000_00000000  $fpr22 = +0
  s7($23) = 00000000_00000000_00000000_00000000  $fpr23 = +0
  t8($24) = 00000000_00000000_ffffffff_80025980  $fpr24 = +0
  t9($25) = 00000000_00000000_00000000_00030600  $fpr25 = +0
  gp($28) = 00000000_00000000_00000000_0033a670  $fpr26 = +0
  sp($29) = 00000000_00000000_00000000_01dad440  $fpr27 = +0
  fp($30) = 00000000_00000000_00000000_01dad4e0  $fpr28 = +0
  ra($31) = 00000000_00000000_00000000_002df3a0  $fpr29 = +0
hi  = 00000000_00000018  lo  = 00000000_00000000  $fpr30 = +0
hi1 = 00000000_00000000  lo1 = 00000000_00000000  $fpr31 = +0
fcr31 = 01000001  facc = +0  sa = 00000000
<<tid  7  prio  0 count 100 status [Wait] cause [Sema] sid  2 wakeup 0>>
pc  = 002dc408  
func  = 002c6e90  
args  = 00000000  argc = 00000000  end of heap = 01ff0000
stack = 01d79b80  stackpointer = 01d79a40  stacksize = 00000200
zero($00) = 00000000_00000000_00000000_00000000  $fpr0  = +0
  at($01) = 00000000_00000000_00000000_00000001  $fpr1  = +0
  v0($02) = 00000000_00000000_00000000_00000002  $fpr2  = +0
  v1($03) = 00000000_00000000_00000000_00000110  $fpr3  = +0
  a0($04) = 00000000_00000000_00000000_00000002  $fpr4  = +0
  a1($05) = 00000000_00000000_00000000_00000185  $fpr5  = +0
  a2($06) = 00000000_00000000_00000000_00000004  $fpr6  = +0
  a3($07) = 00000000_00000000_00000000_00000044  $fpr7  = +0
  t0($08) = 00000000_00000000_00000000_00001000  $fpr8  = +0
  t1($09) = 00000000_00000000_00000000_00000000  $fpr9  = +0
  t2($10) = 00000000_00000000_00000000_00000040  $fpr10 = +0
  t3($11) = 00000000_00000000_ffffffff_a0026100  $fpr11 = +0
  t4($12) = 00000000_00000000_00000000_21db0780  $fpr12 = +0
  t5($13) = 00000000_00000000_ffffffff_a0000000  $fpr13 = +0
  t6($14) = 00000000_00000000_00000000_00000004  $fpr14 = +0
  t7($15) = 00000000_00000000_00000000_0000001f  $fpr15 = +0
  s0($16) = 00000000_00000000_00000000_00310000  $fpr16 = +0
  s1($17) = 00000000_00000000_00000000_00310000  $fpr17 = +0
  s2($18) = 00000000_00000000_00000000_00310000  $fpr18 = +0
  s3($19) = 00000000_00000000_00000000_00310000  $fpr19 = +0
  s4($20) = 00000000_00000000_00000000_00330000  $fpr20 = +0
  s5($21) = 00000000_00000000_00000000_00310000  $fpr21 = +0
  s6($22) = 00000000_00000000_ffffffff_ffffffff  $fpr22 = +0
  s7($23) = 00000000_00000000_00000000_00310000  $fpr23 = +0
  t8($24) = 00000000_00000000_ffffffff_80025980  $fpr24 = +0
  t9($25) = 00000000_00000000_00000000_00030600  $fpr25 = +0
  gp($28) = 00000000_00000000_00000000_0033a670  $fpr26 = +0
  sp($29) = 00000000_00000000_00000000_01d79cc0  $fpr27 = +0
  fp($30) = 00000000_00000000_00000000_00310000  $fpr28 = +0
  ra($31) = 00000000_00000000_00000000_002c6eec  $fpr29 = +0
hi  = 00000000_0000000b  lo  = 00000000_00000000  $fpr30 = +0
hi1 = 00000000_00000000  lo1 = 00000000_00000000  $fpr31 = +0
fcr31 = 01000001  facc = +0  sa = 00000000
dsedb S> ds -v
sid  0 count  50 maxcount  1 attr 00000000 option 00000000 numwait  0
sid  1 count  1 maxcount  1 attr 00000000 option 00000000 numwait  0
sid  2 count  0 maxcount  1 attr 00000000 option 00000000 numwait  1
tid  7
 
I tested SOS: The Final Escape with r1250 and still works fine, no annoying sounds
in menus, and not freezes at the start of the gameplay.

Best regards...
The game might have a problem, causing it to overrun the end of the scratchpad (0x70004000) under specific conditions...

I tested the last official beta OPL r1261.

- It takes 4 secs (counting from when the HDD just starts spinning) on a cold boot to load the list (409 games on a 2tb HDD).
- opl_apps.cfg works again.
- Ridge Racer V is 100% perfect with all MODEs OFF (btw is better to keep MODE 6 ON for a safer power-off I think…), no need for MODE 2 anymore.
- Playing from USB it shut-down the HDD if it was on (I have it on auto to use in combination with autostart games), so I'm able to reset the Ps2 with games that don't support IGR.

...I'm impressed :D

I have to try SMB yet.

@jolek I tried Ridge Racer V from USB and can't pass through the usual loading screen. I noticed that it doesn't need any MODE (as even from internal HDD now). Girl face is perfect and there's no stutter in menu.
I tried with a few combos (no MODEs - only MODE 6 - only MODE 2 - MODE 1+2+3...), nothing to do.
 
@jolek I tried Ridge Racer V from USB and can't pass through the usual loading screen. I noticed that it doesn't need any MODE (as even from internal HDD now). Girl face is perfect and there's no stutter in menu.
I tried with a few combos (no MODEs - only MODE 6 - only MODE 2 - MODE 1+2+3...), nothing to do.

Finally we the same symptoms through the same device.
I've tested NTSC-U, PAL, NTSC-J long ago through USB and only NTSC-J seems to work with this device.
What about SMB? You still can't pass 1st loading screen with mode 2 (OPL 1261)?
 
Finally we the same symptoms through the same device.
I've tested NTSC-U, PAL, NTSC-J long ago through USB and only NTSC-J seems to work with this device.
What about SMB? You still can't pass 1st loading screen with mode 2 (OPL 1261)?

@sp193

I made some tests from SMB:

- when playing from SMB the HDD remains spinning (it even blinks the orange light sometimes), it's just normal??
- OPL still can't list all games if they are missing the ID prefix. Here the games I played from SMB:
Immagine.jpg
Immagine1.jpg
All my CD games were correctly listed on OPL.
DVD games instead: all games listed but Ace Combat and State of Emergency.

- Street racing sindycate [SLUS_205.82] First time I played it, it worked just perfectly, with no MODEs. Btw when I IGR it lost the ps2 video signal and freezed the console (I had to hard-power-off).
Therefore I thought it would just be one of those games with optional MODE 6 (you could leave MODE 6 OFF on games that lost video signal, 'cause you can use the IGR-powerOff anyway).

But the second time I booted the game (still with all MODEs OFF), it freezed after the namco logo. Btw I could IGR to OPL...

- Shadow Man Second Coming [SLUS_204.13] All seems perfect, no MODEs needed

- Ultimate Pro Pinball [SLES_535.08] This game freezes my Ps2, BSOD at boot (Always need to hard-power off, even with MODE 6 ON).
@jolek wich MODEs you use from SMB for this game??


(I forgot to test Ridge Racer V :hopelessness: I'll do it later)
 
Ok, I tested from SMB:

- Ridge Racer V [SLUS_200.02] The game plays fine without MODEs (btw as I said I think it's safer to enable MODE 6, so you avoid the bad noise when shuting off the ps2, same as playing from HDD).

Btw, in Menus (and in certain parts of the intro) there's a little audio stutter once every 10 secs (similar to the one there was even from HDD with previous OPL builds). It isn't much annoying.
You can avoid the stutter enabling MODE 2, but then you'll have the BSOD after the usual loading screen.

I tried other combinations too (MODE1 - 3 - 1+3+8, etc...), but all make the game to freeze. For the game to not freeze you could leave all MODEs OFF or just enable MODE 6 (and keep the, very little, stutter).
 
Last edited:
- Ultimate Pro Pinball [SLES_535.08] This game freezes my Ps2, BSOD at boot (Always need to hard-power off, even with MODE 6 ON).
@jolek wich MODEs you use from SMB for this game??

From I remember IGR never worked for this game.
I've tested this game during weekend through USB and HDD.
Game boots without any modes through USB, through HDD I needs mode 2 or you'll get BSOS after PS2 logo.
I haven't tried it through SMB.
 
From I remember IGR never worked for this game.
I've tested this game during weekend through USB and HDD.
Game boots without any modes through USB, through HDD I needs mode 2 or you'll get BSOS after PS2 logo.
I haven't tried it through SMB.

Probably it's the same from SMB, I'll try MODE 2

EDIT : Anyway it's weird, this game should have been fixed: http://www.ps2-home.com/forum/viewtopic.php?f=13&t=6082
 
Last edited:
Regarding games not being viewable in OPL game list unless including ID prefix. Here is my list:
CD
SLUS_202.57.Frogger The Great Quest
DVD
SCUS_974.02.Killzone
SLUS_202.14.State of Emergency
SLUS_203.14.Time Splitters 2
SLUS_205.71.TY Tasmanian Tiger
SLUS_207.31.Tony Hawks Underground
SLUS_208.51.Ace Combat 05
SLUS_208.72.Juiced
SLUS_209.21.ESPN NHL 2K5
SLUS_214.13.Thrillville
SLUS_215.61.Major League BB 2K7
SLUS_217.59.Lego Indiana Jones

I could not figure out what the common problem is with these games. This was tested in an older version of OPL but I can retest if you have a particular version you want me to test with.
 
Workaround for Ridge Racer V

The game seems to have problems when the media takes too long to completely read data.
The data processed by the game appears to get offset, causing some loop to never end, which ends with the scratchpad overflowing.

Unfortunately, I could not understand how the whole reading system worked because data seemed to be copied around memory, along with the reading state also being passed around various functions too. :mad:

This workaround changes sceCdGetReadPos() to always return 0 on the EE, so that the game will not observe any incremental updates to reading progress (but it will remain responsive). It will then process all data requested at once, when sceCdSync() indicates completion.

This game has 3 threads: the main thread, the server thread for rspu2drv (the tentative sound library) and the libcdvd callback thread.
The three semaphores that are created and remain throughout runtime belong to libcdvd. The old version of libcdvd has the glitch that causes the N-command semaphore to be always incremented past the maximum, but it is not a problem because libcdvd still has a check on the RPC completion status.
The Japanese version was compiled with SDK 1.4, while the US and European versions were made with SDK 1.5.

Since I seem incapable of passing even the first circuit, I haven't been able to tell if it really worsened performance or not.
So here it is, for the floor to decide on whether it's worth replicating for all RRV releases, for only USB mode: https://www.sendspace.com/file/jxchul
Related commit: https://github.com/sp193/Open-PS2-Loader/commit/9891e376f0b56cbf3c9459771a7c5ff3c3b41d10
This is currently only for the NTSC-U/C release.

***

On a side note, I think it ought to be mentioned somewhere that OPL's CDVDFSV implementation is not fully compatible with early games, as the structure used by sceCdRead() for alignment correction was different (16-byte alignment was a norm). But reading with sceCdRead() from the EE will work fine, if reading is done with addresses aligned to multiples of 64.

(btw is better to keep MODE 6 ON for a safer power-off I think…), no need for MODE 2 anymore.

You should switch off the PS2 properly with the shutdown button combo or by pressing the power button once. Mode 6 exists for compatibility with games that cannot work with IGR.

- when playing from SMB the HDD remains spinning (it even blinks the orange light sometimes), it's just normal??

Are you saying that your HDD cannot be shut down when SMB is used?
The LED is controlled by software, so it is impossible for it to blink on its own.

EDIT: please read my reply below.

- OPL still can't list all games if they are missing the ID prefix. Here the games I played from SMB:

Did this happen, after commit ac5de9b3? If so, then I don't know what's wrong anymore...

Btw, in Menus (and in certain parts of the intro) there's a little audio stutter once every 10 secs (similar to the one there was even from HDD with previous OPL builds). It isn't much annoying.
You can avoid the stutter enabling MODE 2, but then you'll have the BSOD after the usual loading screen.

But was the game already like that on its original media? If so, then it is a consequence of the game's design.

Regarding games not being viewable in OPL game list unless including ID prefix. Here is my list:
CD
SLUS_202.57.Frogger The Great Quest
DVD
SCUS_974.02.Killzone
SLUS_202.14.State of Emergency
SLUS_203.14.Time Splitters 2
SLUS_205.71.TY Tasmanian Tiger
SLUS_207.31.Tony Hawks Underground
SLUS_208.51.Ace Combat 05
SLUS_208.72.Juiced
SLUS_209.21.ESPN NHL 2K5
SLUS_214.13.Thrillville
SLUS_215.61.Major League BB 2K7
SLUS_217.59.Lego Indiana Jones

I could not figure out what the common problem is with these games. This was tested in an older version of OPL but I can retest if you have a particular version you want me to test with.

Thanks.
Did this happen, after commit ac5de9b3? If so, then I don't know what's wrong anymore...
That commit was meant to address this age-old problem, by replacing the code for parsing the filename with something closer to the official version.
 
Last edited:
it's possible to try know why the Spinter Cell games From pandora tomorrow to double agent doesn't work with Game Star adapter sata hdd ?
Always go to black screen.
i think is because of Dev9 can be missed from game star adapter.
These games work with original sony adapter but don't work with gamestar.
 
it's possible to try know why the Spinter Cell games From pandora tomorrow to double agent doesn't work with Game Star adapter sata hdd ?
Always go to black screen.
i think is because of Dev9 can be missed from game star adapter.
These games work with original sony adapter but don't work with gamestar.

Have you tried with OPL 0.9.2 or HDLoader??
 
Workaround for Ridge Racer V

The game seems to have problems when the media takes too long to completely read data.
The data processed by the game appears to get offset, causing some loop to never end, which ends with the scratchpad overflowing.

Unfortunately, I could not understand how the whole reading system worked because data seemed to be copied around memory, along with the reading state also being passed around various functions too. :mad:

This workaround changes sceCdGetReadPos() to always return 0 on the EE, so that the game will not observe any incremental updates to reading progress (but it will remain responsive). It will then process all data requested at once, when sceCdSync() indicates completion.

This game has 3 threads: the main thread, the server thread for rspu2drv (the tentative sound library) and the libcdvd callback thread.
The three semaphores that are created and remain throughout runtime belong to libcdvd. The old version of libcdvd has the glitch that causes the N-command semaphore to be always incremented past the maximum, but it is not a problem because libcdvd still has a check on the RPC completion status.
The Japanese version was compiled with SDK 1.4, while the US and European versions were made with SDK 1.5.

Since I seem incapable of passing even the first circuit, I haven't been able to tell if it really worsened performance or not.
So here it is, for the floor to decide on whether it's worth replicating for all RRV releases, for only USB mode: https://www.sendspace.com/file/jxchul
Related commit: https://github.com/sp193/Open-PS2-Loader/commit/9891e376f0b56cbf3c9459771a7c5ff3c3b41d10
This is currently only for the NTSC-U/C release.

Tried the USA game from USB with OPNPS2LD-RRV-US and it seems just perfect :encouragement:


You should switch off the PS2 properly with the shutdown button combo or by pressing the power button once. Mode 6 exists for compatibility with games that cannot work with IGR.

Yes in fact. RRV is one of those games that allow you to normal switch off the Ps2 even with MODE 6 OFF (but it noticeable that the HDD isn't gently powered off…).


Are you saying that your HDD cannot be shut down when SMB is used?
The LED is controlled by software, so it is impossible for it to blink on its own.

Yes, it remains turned on when playing from SMB (at least up to r1261, yet to try r1266).

The led should blink only when using the HDD?? Or it's related to the NA too? Btw it seems to blink only a few times when a game is starting. I'll check it with more attention.


Did this happen, after commit ac5de9b3? If so, then I don't know what's wrong anymore...

OPL r1266 can't list Ace Combat and State of Emergency, exactly as previous build, is commit ac5de9b3 integrated in r1266?? (I should try it with OPNPS2LD-RRV-US too??)



But was the game already like that on its original media? If so, then it is a consequence of the game's design.

No no, it's not the game design. However with r1266 the problem is gone, the game is perfect from SMB without enabling MODE 2, and even if I enable it, the game plays fine (don't freeze).
I'm testing with my Ps2 slim (75004) now, I'll try it with r1266 with the Fat Ps2 too, to be sure isn't the console making differences.
 
the splinter cell double agent works with very very old opl 0.7 with game star sata but with newer opls like 9.2, 9.3, and opls bulids from ps2home doesn't work with gamestar only with orginal adapater with sata suppor or not
 
the splinter cell double agent works with very very old opl 0.7 with game star sata but with newer opls like 9.2, 9.3, and opls bulids from ps2home doesn't work with gamestar only with orginal adapater with sata suppor or not

So must be not related to the DEV9 itself, but most probably to a OPL modification.
 
maybe.
it's strange because with original adapter these games run well but in sata gamestar always go to black screen i tested with same hdd 2.5 1tb on this two adapters sony and gamestar. but stay here the report in hope some dev can make the splinter cell games run on gamestar
 
maybe.
it's strange because with original adapter these games run well but in sata gamestar always go to black screen i tested with same hdd 2.5 1tb on this two adapters sony and gamestar. but stay here the report in hope some dev can make the splinter cell games run on gamestar

It's not strange at all, I found a lot of similar cases, also the opposite: i.e. I could boot State of Emergency with the Gamestar NA, but not with the OG NA (same HDD). Eventually this game has been patched by sp193 and now just work with every kind of configuration.

That game too, worked with older OPL versions (with every config) and started having problems (on certain configurations) with newer OPL revs.
 

Similar threads

Back
Top