Hi Dean, I know probably you haven't had time to even check my previous post
edits, but I kept looking for stuff that might help you and I found this library:
I think this is their latest release:
Compact Disc Input and Control Library
This project is part of the GNU Project.
The Compact Disc Input and Control library encapsulates CD-ROM reading and control and can be used in applications wishing to be oblivious of the OS- and device-dependant properties of a CD-ROM.
Also included are libraries for working with IS0-9660 filesystems (libiso9660) and CD-DA jitter/error correction (libcdio_paranoia and libcdio_cdda).
Some support for disk images like CDRWIN's BIN/CUE, cdrdao's TOC, and Nero's NRG disk-image format is available. Thus, applications that use this library also have the ability to read disc images as though they were CD's.
Immediate uses are VCDImager, a navigation-capable Video CD plugin
and CD-DA plugins for the media players xine and videolan's vlc.
An implementaion of cdparaoia is also included. Other utility programs include a program for displaying CD information (cd-info), for playing audio CD's via audio controls (cdda-player), for showing CD-ROM and drive capabilities (cd-drive), reading the blocks of a CD (cd-read) and extracting a file from an ISO 9660 image (iso-read).
I don't know if this could help you handle PS1 discs with MODE2/Form1/2352, since I don't have much experience programming for PS3, I know that in windows I have used libraries like this to handle stuff in my applications, but maybe for PS3 things might be different.
Btw, I been wondering, if you were able to handle the contents of the ISOs, would it be possible to mount them like its done for directories (ex. "dev_hdd0/games/...") ? or its just not possible that way?.
I remember when I used to code a lot for FB Alpha emulator (Windows version) I was working with one the team members (IQ_132) on NeoGeo CD support and we were able to load ISO / BIN / CUE for the emulated game and it ran like if there was a disc inserted. I was looking like crazy for this code to see if it could help you out, but I don't find it at this moment, I believe is in one of my old HDDs xD.
Anyway, good luck! I hope that you can find something useful from this library ^^.
: I just found out that a few emulators for listed in WiiBrew make use of this library too, maybe they made some kind of port I guess, or they have similar name xD:
: I started doing a small test myself with this library, I downloaded a smaller package (includes and libs only) from (http://www.archlinux.org/packages/extra/i686/libcdio/
) (the right menu where it says Download From Mirror), it includes the library (libcdio.a, libiso9660.a, etc...). Then I modified my PS3 test application Makefile a bit and was able to compile. Im gonna try to make a simple PS3 application that opens a ISO file and extract the contents using (cdio/cdio.h, cdio/iso9660.h), this of course if I don't run into any compile problem in the process xD, I might have to do some research regarding file / directory handling on PS3 first.
: I'm gonna take a small break for now (need to sleep xD), I been doing some modifications to a couple of files that were giving compile errors. I still have to modify "iso9660.c" because its throwing me a few too, but they should be easy to fix (hopefully that will be the last file I modify to start doing some basic tests, if the PS3 doesn't crash on me! LOL).