IGR - proof of concept
Updated 04 January 2009:
IGR for HDLoader rev2.
DNAS games should work now
Fixed some games that were giving blue screen (eg. ico)
Fixed some games that were giving bsods
Fixed some games that didn't react to combo press at all
Everything should be more stable
New method of unhooking hdloader
Name of hdloader file has been changed to "HDLOADER.ELF", as suggested by dlanor.
Out of these, only the last one (new unhook method) can cause some problems. I tested it on v7 and v10 only.
BTW. HDLoader doesn't unhook itself properly even in mode 3. That's why proper unhooking has to be done by IGR even when mode 3 is enabled. But fortunately we always have unchanged copy of kernel in rom . So I'm just copying whatever I have to.
Updated 02 January 2009:
Updated version of IGR app that finally works with hdloader.
Have hdloader in one of these paths:
where ? is the region code.
As usual L1+R1+L2+R2+Select+Start for IGR.
Hdloader has to be patched. It doesn't matter which version or which patches were applied. Can be either compressed or uncompressed. I tested on 0.8b++ patchset.
The compatibility is a little bit lower than in the poc version I released earlier, but sharing space with hdloader is a pain in the ass ;) . I got about 30% of games to work with it (only), but it will change in the future.
You don't have to use mode 3 in hdl, but you can if you want. IGR will unload hdloader automatically, so it's simply not needed.
IGR - a.k.a. In Game Reset, a feature know from few other consoles. Why not implement it for PS2?
The basic concept is simple:
1. Detect pad button presses.
2. Launch apropriate app on particular button combo.
Although it looks simple, it's not that easy to do, especially that I wanted to make it EE side only, which means no code on IOP side (there are good reasons for that). Launching the application from the middle of running another app is also not that easy, as a lot of caution is required (and I had some serious problems with sif, though I was able to get rid of it by modifying SifInitCmd function a little bit).
Take this one as the proof of concept rather than working app (more concept than proof I would say ;) ).
The IGR_mc.elf file after becoming resident will launch file in:
where "x" is memory card slot and "?" is regional code.
(to be true I tested it mostly with one app, so I recommend using uLE, tested on uLE 4.28)
The IGR_cdvd.elf file after becoming resident will launch cd/dvd dsc that is in drive.
The button combo to trigger the procedure is L1+L2+R1+R2+Select+Start, so basically it's "soft reset" known from some games.
Once the IGR procedure is triggered, it will launch the file in:
where "x" is memory card slot and "?" is regional code.
As in previous case, I recommend uLE.
Many games will not work with that. Many homebrew apps also. Some won't load at all, others won't detect button presses, others will hang at reset. What's interesting, the OSDSYS will work (tested on V10) - just use the mcard version to launch uLE and MISC/PS2Browser (taking out your FMCB card may be necessary, but it wasn't tested). Now by pressing the combo, you can launch the app from OSDSYS ;).
Due to obvious reasons, ESR will not work with this.
DNAS enabled games will not work (I know exactly what's the problem and know a good solution - I had to do the same for ESR. I didn't add this feature, because I'm aiming at hdloader, which handles this case on its own).
This version works only with games launched through cd/dvd drive and with homebrew. The real goal is to make it work with hdloader (I had some nice results with just minor changes, but it's somewhat unstable right now, and it works only if mode3 is enabled in hdloader). Once it's ready (undefined future, as I won't work on it for now - got may other projects to finish first), it should be a cool thing.
Leave a comment if you wish, but note it's only "proof of concept", not even should be called application ;). And it prooves that can be quite easily done (well, not that "easily" really... but it took just yesterday and a quick fix today to get to this point). Note, that it's not a priority app, so it will wait untill others are finished.
I didn't test it too much. Just with my V10 PAL console, but I guess it should work fine on others.
PS. It's not really "Free Vast" related... but it shares some part of code with ESR ;) ...
Amazing. Just tried it on my v7 w/ matrix and uLE 4.28 booting FFXII original. works great.
I'm assuming that a workaround could be done to make it work with HDL for the moment by doing a similar method that is done with your USB VMC application.
Although it would have to be hex edited to boot the disc's original ELF fle instead of normal search and boot of the SYSTEM.CNF and built into the ISO.
But this will give the jackels some more to feast on. :lol:
Just warning about one thing I forgot to mention. Don't reset during FMV playback or other cases when IPU us under load... in many cases that will cause the procedure to freeze with blue screen. (but in FFXII this will work fine even during FMV playback ;) ).
Thanks for the heads up on that. I'm sure a number of people would report that and start scrambling for answers.
Also, I did some messing about with it. The IGR program will survive HDL's boot, but only somewhat. My first attempt was to boot a game (Crash of the Titans NTSC U/C) but it resulted in HDL doing fine, but BSOD on game boot.
Second attempt was an IGR on HDL's menu which resulted in a BSOD.
Honestly, I'm amazed that the program even survied at all after booting HDL. Very nice work indeed. :applaud:
I believe many will like it (even, if it is just a concept).
Sometime I feel like away from reality.
My life couldn't be true. :D
Your work is appreciated.
Very cool ffg! I'm glad to see that this is even possible. If I'm not mistaken I believe this will be a relief to just about everyone that uses HDLoader, if not everyone than at least for me :D. Thanks again for all your hard work and good luck with all of your projects.
easy there. it doesn't work with hdl...... yet.
Originally Posted by sk8rping
I understand that, and I also understand that it'll be a while before it can since he said that this isn't a priority. But he mentions that this was the main goal of the app, to make it work with hdl, and with his talents I'm sure that he'll be able to achieve this goal. I'm just excited about the possibility, that's all.:)
Originally Posted by Bootlegninja
Great to see somebody still trying to improve the PS2! I'm really looking forward to see it working with HDLoader! Many thanks for your effort on doing PS2 software!
Cool ffgriever, working here!
This could lead to some other "experience" like an app to take screen shots, like dumping the video buffer/memory to a mass storage or MC?
You know, load the app like cheats codes does to be resident some place in the memory and with preprogrammed combination of keys to activate it.
That would be really nice too, specially for the guys that do documentation and need screen shots.
Thank you ffgriever!