-
Notifications
You must be signed in to change notification settings - Fork 21
Problems trying to understand the format #9
Comments
Hey, I think you might've made a mistake, that line should be reading the 08/09 bytes: Lines 41 to 42 in 7c5e266
This will read the first 4 bytes, 00-03. Lines 44 to 47 in 7c5e266
This will read the next 4 bytes, 04-07 (Int32 is four bytes). Lines 49 to 50 in 7c5e266
So this will then read bytes 08-09 (Int16 is only two bytes). As for how it was reverse engineered, the basic parsing structure and some of the "event types" were from andrewrk's Node FL parser library (which is very out of date now) and the rest was just from changing different values in FL and seeing what changed. As far as I'm aware his library was based on an old implementation in LMMS (which doesn't exist anymore afaik) which was based on an old thread somewhere (which I haven't been able to find again) where an Image-Line employee talked about the basic structure. I'll close this thread for now, but if you have any other questions please feel free to ask them! |
I see it now, I somehow mistook a byte for 4 bits 😄. github.com/LMMS/lmms/pull/2904 |
I'm curious, how you reversed engineer this, and I'm taking a look at a project file but the header parsing doesn't seem right to me.
The highlighted part in the image should be equivalent to the 4-byte long
Int16
variable namedtype
:FLParser/ProjectParser.cs
Lines 49 to 50 in 7c5e266
Seems like the
type
variable is not being parsed the way it should be, and would throw a wrong type error for this project file?I'm a bit of a noob in reverse engineering, am I understanding correctly? Is this project file too new a version, corrupted or am I just mistaken?
The text was updated successfully, but these errors were encountered: