The Return of this thread means I'm working on the ISO image stuff (halkun if this begins to work it means you can abuse this on Linux).
A few issues cropped up however:
1) Remangling paths.
Since currently we are using windows path naming conventions and the PS1 data set, we now have a, file naming convention situation.
An example would be \CDROM\KERNEL\KERNEL.BIN;1
which in windows is <cdrom letter>:\kernel\kernel.bin
the real name path is \KERNEL\KERNEL.BIN;1
windows translates the ISO9660 system to \kernel\kernel.bin
the '
' is actually ISO9660's method of file versioning of the file system (lame but ... ) this means there are lots of ;#'s to ignore for a normal path.
Internally I can raise the case and append a ';1' to all the files to make this translation possible.
What will we do for windows? It's completely different. So I'm concerned about making a 'messed up' approach doing this.
2) ENDIANESS STRIKES BACK!
Right so we want this to run on MACS, allright ISO supports both endianess's normally in it's FS.
Almost the entire file set is in little and big endian format.
Now here comes the... not so fun part, it's possible some of the stuff is in one.. or the other format (only).
In truth it's likely that we need absolute sector reads and we just need to ignore the rest. Many of the files have there file size included at the begining of them. Some do not. I suspect what is happening here is that the files that do not include there size are loaded using the ISO filename internally (somehow) and the ones that do include the file size are loaded by absolute sector. Essentially some use the PATH and DIRECTORY tables and some do not, is my guess. I say this because it would be very difficult for them to read the file, if they did not include the file size at the begining of the file, because there is no indication of when the file should end.
I would like to know if there is some globally defined macro for ENDIANESS.
What I plan on doing is using both MSB and LSB based numbers and find the one that makes sense putting it in the RIGHT local format as well. DIRECTORY table locations of 0 or some impossible location would indicate the other contains the information I need. Ditto for file size as well.
Anyhow this will let me know how the classes are going to be used.
I've noticed -DMACOSX seems to be the switch in the make file to determine if one is compiling for the MAC. Should there be some intellegence to decide endianess etc added in?
Akari good job, I'm sure you are waiting to abuse the battle models, as am I.
Cyb