summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHOR5
-rw-r--r--FAQ.lz7742
2 files changed, 40 insertions, 7 deletions
diff --git a/AUTHOR b/AUTHOR
index 14bc407..3453878 100644
--- a/AUTHOR
+++ b/AUTHOR
@@ -1,4 +1,3 @@
The PSX-Tools Bundle Pack is principaly written by me, Nicolas "Pixel"
-Noble. But those tools were derivated from code by Yazoo, who took code
-from cdrdao.
-
+Noble. But some tools were derivated from code by Yazoo, who took some
+code from cdrdao.
diff --git a/FAQ.lz77 b/FAQ.lz77
index 7bd7e0a..65433f6 100644
--- a/FAQ.lz77
+++ b/FAQ.lz77
@@ -119,7 +119,8 @@ A: It's quite easy. The computation formula is the following:
Q: What are the others parameters?
A: You have:
- 1iscomp overlap negative 16bits opposite
+ 1iscomp overlap negative 16bits ptrb
+ filling inverse onejump window
This will change the behaviour of the compression/decompression algorithm.
@@ -135,9 +136,24 @@ A: You have:
using 16 bits words instead of 8 bits words. And thus, the compression
algorithm is more difficult. As for now, it's broken.
- The opposite behavior is to compute the jump offset in a different way.
- Instead of taking it as the backward jump value, it will be an offset
- from the maximum backward jump possible.
+ The ptrb means "pointer behavior". It can take the value 0, 1 or 2. The
+ behavior '0' is the common one: the jump is the number of bytes to
+ count back to find the start of the needle to copy. The '1' is to tell
+ the jump is an offset from the maximum backward jump possible (ie
+ from the start point of the window). The '2' is a very dumb behavior:
+ it tells that the jump is the absolute offset. The window *won't* slide.
+
+ The filling option activates the RLE behavior.
+
+ The inverse is a boolean to tell to reverse the order of the bits in the
+ bitmaps
+
+ The onejump tells to add one to the final jump value. Some streams are
+ shifted by one because by default, a jump of 0 means nothing. So it
+ is dumb to miss one possible backward jump.
+
+ The window offset tells the absolute window start for the 2th pointer
+ behavior. Yeah, this is necessary. Coders of Metal Max are pretty crazy.
@@ -205,3 +221,21 @@ A: Well, for the decompressor, it's not really necessary, because it won't
algorithm used by the game *maybe* is able to handle them.
+
+Q: What is the filling thing?
+A: It's an RLE like behavior. In Valkyrie Profile, when the length hit the
+ maximum value, then it means it's a RLE block, and not a restart block.
+ That's why you've got the eight options:
+
+
+ fmask1 fshft1 fmask2 fshft2 vmask1 vshft1 vmask2 vshft2
+
+ Basically, they are the same as the {j,l}{mask,shft}{1,2} options, but
+ this time you tell where to find the 'value' which has to be copied,
+ and the 'filling', ie the number of times this value will be copied.
+
+
+Q: What is the 2th filling behaviour?
+A: Get out of here. It's a ugly ugly ugly hack. Forget it. Now!
+
+