Sunday, March 10, 2019

Growlanser 6 Pointer Table

Inside the "GL6_SCEN.DAT" are the text files located.
The files end with ".flk" and are build up like this:


STUFF
STUFF
POINTER TABLE
TEXT BLOCK
STUFF
STUFF
POINTER TABLE
TEXT BLOCK
STUFF
STUFF
GARBAGE

or

STUFF
STUFF
STUFF
POINTER TABLE
TEXT BLOCK
STUFF
STUFF
GARBAGE


As a short example i am describing the file "00000005.flk".
In this file there are 2 SDF headers with text pointers and text below it.
The 2nd SDF has almost the whole tutorial inside it:



There are a few codes in the first line of SDF that tell the file how big the pointer table and the pointer table + text block is:


SIZE OF THE POINTER TABLE + TEXT BLOCK



HEX REVERSED = HEX = DECIMAL
40 CB 00 00 = 00 00 CB 40 = 52032

This pointer tells the file how big the pointer table + text block is. 
From FF00 to the very end it is 52032 bytes:




This might have to be updated once a translation has been inserted and the text block has become bigger

SIZE OF THE POINTER TABLE





HEX REVERSED = HEX = DECIMAL
A0 0F 00 00 = 00 00 0F A0 = 4000

This pointer tells the file how big the pointer table is. 
From FF00 to the very end of the pointer table it is 4000 bytes:





Now, the actual pointer table will be displayed:



The pointers are build up in 4 bytes each.
The same logic applies here, the pointers tell the programm where the first byte is located counting from the start of  the text block:






No comments:

Post a Comment