I am having a problem with the quest file. The translators have done such a nice job that they have ballooned this 115kB file to 130kB. When I try to insert it using UMDgen it complains that it can't fit in the available space. It actually complains that it can't put the next file, t_record, where it's supposed to go. What do I do?
Even if the problem can't be solved, how do I figure out how much space I actually have to work with? I have 64 LBAs to work with (I think). How big is an LBA?
If I wanted to try to solve this problem, how would I go about it? How can I point the program to the moved t_record file?
In case this or similar problem arises again: use WQSG_UMD Tool r31 to relocate the file in question to an unused area of ISO.
Open your ISO in WQSG_UMD, find your file, right-click it and "Import File" to inject bigger version of the file in question in the first unused area of ISO that's large enough. If there is no such area, create it with "Expand ISO" adding some free space to the end of ISO and your file will be placed there.
In this particular case the first unused area (512 blocks of 2048 bytes each, 1MB total) is between \PSP_GAME\SYSDIR\OPNSSMP.BIN and EBOOT.BIN files, so WQSG_UMD will place the new file there, starting from LBA 753. EBOOT.BIN starts at LBA 1264, so anything that's less than ~850KB will fit in that area too.
Note that this doesn't rebuild the whole ISO, thus minimizing the size of a potential patch.
Edit: forgot the main thing I wanted to say.
Thank you guys, this thread is a gold mine. Keep up the good work!
Edit 2: space for file data on UMD (and ISO images in general) is allocated in 2048 byte blocks, so depending on the given file's size you can have up to 2047 unused bytes in its last block which will allow you to replace it with the file that is slightly bigger without the need to relocate it. If the ISO has padding files, you can place new files 'inside' them (and point already existing file system entries to these technically occupied but really unused LBA), although this is probably worth the effort only for big files in size-restricted ISOs (such as ones you're going to sign for OFW with fake_np).
See also
http://en.wikipedia.org/wiki/ISO_image
Edit 3: now that I look at data.lst file, it has a file entry for t_quest (at 0x33030) containing its file size and LBA; I'm pretty sure you already know this, so don't forget to fix both number (LBA is stored in 3 bytes).