
Accolade from the early 1990s is the main part of the precedent for why using the IP.BIN (or at least the parts of the IP.BIN that are specifically checked by the system) is legal and not in violation of US Copyright law - it is permissible fair use. (because you can't create anything selfbootable without including so called "IP.BIN" with numerous mentions of Sega Enterprises in text and graphical forms, and that's obvious not legal without Sega permission)Actually, by various precedents, using the IP.BIN is allowable under Copyright law (at least in the US). In any way, all this is pretty "fun" to hear from people who involved in homebrew programming for Dreamcast, and in process constantly shitting on SEGA copyrights I haven't looked at PSO, but you might have to manually figure out what texture format is being used in which context.
#Pvr format manual
Apparently the official SDK had the option of loading texture with manual parameters so the data which should have been encoded in a header to allow for automatic loading is not guaranteed to be present. The level of header data quality varied game by game, and it appears that later tools did a better job of encoding this information than earlier games. I tested out all the images from a few games and in practice many of them have invalid file headers, or headers which don't match their content. So in regards to VQ (and other DC texture formats) you can look up how they're supposed to work from other threads here, or better yet I might suggest looking at a DC emulator because those already convert PVR textures to a host format that might map better to what you are trying to accomplish. If you want to decode them for your purpose in texturing your extracted models, you'd need to replicate the logic the PVR uses. The PVR format was originally designed to be used only on the DC, so you basically don't need to do any real "decoding" to them to render them on the DC you just need to supply the right texture header to tell the hardware what kind of texture it is.
#Pvr format code
This code was based on the PuyoTools docs, as well as a few other sources and some original research. I actually wrote some KOS code that tries to use the file header from the PVR file to create a correct texture header automatically, and let you use official game textures easily.
