Copy Link
Add to Bookmark
Report

How to rip .pss files manually

PS_2's profile picture
Published in 
Playstation 2 tutorials
 · 17 May 2020

This is for those games where Nova Software Extractor stops at a certain point (such as games like Xenosaga).

Before I get any farther, this method does not work on Kingdom Hearts. I have no idea why, the FMVs are probably encoded differently.

Things you will need:

  1. DVD Decrypter
  2. The File Splitter (optional, and probably not recommended)
  3. A hex editor (I use WinHex, because it can handle 4 gig files)
  4. Notepad, or a couple pages of scrap paper
  5. A LOT of time

First of all, let me say that this is not as quick as splitting the files and then using Nova on them. Xenosaga has around 20 MILLION PAGES of hex code you need to search through. (I put in six hours yesterday, and I'm still not even halfway.) You need to have a lot of time on your hands.

If you open any .pss file in a hex editor, you'll see a couple things that are always the same. First, the file will begin with the hex code

0000 01BA 4400 0400 0401 and end with the hex code

FFFF FFFF 0000 01B9 (i.e. the header and footer of the files.)

For practice, I suggest using DVD Decrypter to make an image of Final Fantasy X-2. This game has clearly defined .pss files, as there's a huge chunk of zeros before and after every .pss file. In Xenosaga, they're not that obvious, and since there's 50+ files in the first 4 gigs, you want to make sure you're not writing down every single "start code". A side note: it seems that "end codes" are always correct, while "start codes" only occur at the beginning and in the middle of .pss files. If you're writing down every single start code, about a third of these will be in the middle of the .pss file. Which is why I say practice with FFX-2.


Step 1:

Make the image of the game, and split into the file sizes you like. Be aware that if you do split, you'll probably split the file in the middle of a .pss file, so the number of start and end codes won't match.


Step 2:

Load the file into the hex editor. Begin searching for the hex value (not the text string)

0000 01BA 4400 0400 0401 . Make sure to remove all the spaces. When you find one, make sure it's the header. It will usually, but not always, have "encoded by TMPGEnc" in the text strings on the right side of the program. It will most likely have a bunch of successive numbers in the next few lines (you'll see several 15s, then 16s, then 17s, etc.) If it's a header, write the offset down in notepad. (For example:

4D12 5000 .) Then continue searching, on to the next one. If it's not a header (i.e. it's surrounded by a bunch of other data) don't write it down.


Step 3:

After you have all your offsets for the headers, begin searching for the end codes. (FFFF FFFF 0000 01B9) Remember to remove the spaces. When you find one, write it next to the offset of the header.

starting offset --> 4D125000 - 4D501000 <-- ending offset


Step 4:

Copy all the hex code from 0000 01BA 4400 0400 0401 to FFFF FFFF 0000 01B9 . Since there will probably be several hundred thousand pages of code to copy (per .pss file) you need to have a trick. WinHex lets you place a marker at a specific point, so I place it on B9. Then you have to highlight a little bit around the marker (so it knows you want to copy it). Then I go to the offset I want, double click on 01 (the first part of the start code), and it highlights everything from the marker to the beginning of the header. Then copy into a new file (control+shift+N) and save as a .pss file.


Step 5:

Repeat Step 4 another 100 times, and you'll have all your .pss files. Then you get to convert them all!

Now, I imagine this can be altered to find other types of files, such as the FMVs in Kingdom Hearts, the .hack series, and Silent Hill 3. The problem is, I have no idea what the headers of those files look like. Maybe it's just the .m2v file, and the music/sound is elsewhere? So if anyone has any idea, please post. : )

Here's the offsets for the first 4 gigs. (The last one doesn't have an end code, since it's on a different file.)

  
4D125000 - 4D501000
4D501800 - 4F3B5800
4F3B6000 - 4F9AE000
4F9AE800 - 5015A800
5015B000 - 50B6B000
5724B800 - 5855F800
591F0000 - 5BAB4000
5BE4D000 - 5BFB5000
5BFB5800 - 5E4CD800
5E4CF000 - 6515F000
66183000 - 6A8A3000
6AD9F000 - 6D69B000
6D812000 - 6E706000
70F31800 - 73889800
74213800 - 74BE7800
74F24800 - 75D1C800
7629E800 - 7FFEE800
7FFF0000 - 838CC000
83E23800 - 8999B800
8999D000 - 8FD35000
8FD36800 - 9FAF2800
9FAF4000 - A0550000
A0551800 - A7849800
A784B000 - A8EE3000
A8EE4800 - AC414800
AD8F1800 - AE365800
AE9A5000 - B411D000
B4D55800 - BBA8D800
BC0A1000 - BC2BD000
BC50C000 - BD290000
BEB19800 - BEC99800
BFEBD800 - C011D800
C076E000 - C0A92000
C1068800 - C2A68800
C342B000 - C410F000
C410F800 - C5A77800
C5A79000 - C7F3D000
C80B0800 - C83AC800
C83AD000 - C8745000
C97B5800 - CB059800
CC234000 - CFBC0000
D0C3D000 - D3169000
D338C000 - D78DC000
D78DD800 - E8515800
E9BC4800 - ED1C8800
ED1C9000 - ED449000
ED449800 - F2631800
F2633000 - F5F1B000
F5F1C800 - F7114800
F7116000 - FAB16000
FD9C9000 - FF8A1000
FFE00000 -

Here's the offsets for the second part of Xenosaga. (I had to split because of Win98's 4 gig file size limit.)

And oh yeah, the above process will work for any PS2 game with .pss files, but I wrote it while I was doing Xenosaga.

Happy .pss removal!

  
________ - 02DC0800
02DC2000 - 04B2E000
05214800 - 0EAB0800
0EFD2800 - 11222800
11695800 - 160A9800
160AB000 - 197C7000
1A129000 - 1DFD9000
1DFDA800 - 27ECE800
289D6000 - 28D66000
28D66800 - 2B9D6800
2B9D7000 - 350FB000
35F2B800 - 38947800
38ED8000 - 39534000
3B0A7800 - 3DA83800
3DA85000 - 3FE71000
3FE72800 - 42532800
42E63800 - 43D2B800
43D2D000 - 47911000
47912800 - 4C60E800
4CEAB000 - 4FCFB000
4FCFB800 - 55F33800
561A4000 - 56BC4000
57200800 - 57900800
58459800 - 5B8A9800
5BF2A000 - 5E68E000
5E68E800 - 61612800
62911800 - 66549800
66C40000 - 6D9B4000
6D9B4800 - 70E1C800
72433000 - 772BB000
772BC800 - 78654800
78656000 - 78F26000
79179800 - 7C701800
7CB8A800 - 7E47A800
7E47B000 - 8612F000
86130800 - 87CE8800
88217800 - 92BF7800
92BF9000 - 946CD000
946CE800 - 99ACA800
99ACC000 - 9BBC0000
9C3C3800 - A31CF800
A31D1000 - A48DD000
A48DE800 - A6302800
A6304000 - AE4D4000
AE864000 - AEAE4000
AEAE4800 - B1224800
B17E6800 - BE7B6800
BE7B8000 - C1480000
C181C000 - C2530000
C2530800 - C4928800
C492A000 - CD496000
CD497800 - D3C6F800
D3C71000 - DBE39000
DBE3A800 - E2936800
E2938000 - EBC5C000
EBC5D800 - F2359800
F235A000 - F8BFA000

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT