I see, he did say they are different OS's so a raw binary compare can flag some things different that doesn't really matter, but it catches EVERYTHING that's different.
I never used the program he used, but once you've worked with hex dumps and have a rough idea of what you're looking at, it's pretty intuitive to understand. Since yo don't have the hex experience though, I'm sure it's just a bunch of numbers and letters to you lol.
I'll break it down so hopefully at least a little can click for you.
Differences between:
First file: "grandambenchoriginal.bin"
Second file: "grandamsealphaoriginal.bin"
------------------------------------------------------------------------
0006F9A0 | 26 1F | 0006F9A0 | 13 42 |
------------------------------------------------------------------------
The format is probably broken in this, but 1st file should be the left side, 2nd file should be the right side, so the file name is critical to reference when you want to try to understand the why something is different for example.
The first big number 0006F9A0 which is repeated for the 2nd file is the "address", another way that would probably make more sense for you is it's decimal number (10 base instead of 16 base, we work in 10 base). The address converts to 457120 which means the left side is the 457120th byte in the file which the first one is hex 26 which can be said a million ways, 0x26 is a common one to signal hex. and the next one is 0x13 in the other file. To put "real" numbers to that it's 38 vs 19, it converts the same way as the addresses. 0x00 is 0 while 0xFF is 255.
Anyway, you can see there's some patterns that changed, they could be simply flags to jump to different sections of code, or in the bigger blocks, it could be a change in the tune. Seeing how different the numbers look gives you and idea of how different they are for a tune. Like if one spot is 0x04 and another it's 0x24 that's a fairly good sized difference, but it's all relative. To represent numbers over 255 it takes 2 bytes of data, like 0x0100 is 256 just like how we go from 99 to 100 we use another digit for 10 base, just F is the 16 base's "9" or technically speaking it's 15 lol.
Anyway, the files are quite similar, as in most likely the two OS's are similar in design/format. The actual tune data you'd probably have to load up the file into universal patcher and check what the addresses are for the tune table you want to target first. I don't have it installed so can't really do it for you, but that would be more of a user friendly way of going about it. If you want to learn the hex stuff more, universal patcher does give you the addresses so you can use the compare file and see the differences in that area in it's raw form.
FYI, besides just hexadec (16 base) converted to dec (10 base), the actual numbers might not directly mean anything until you run it through another conversion which is just how the computer is designed. Like anything rpm based is unlikely to be raw rpm numbers, like 3000 rpm stored as hex, it's more likely it's based on some formula the programmers came up with to save data space vs processing power since RPM is calculated from ticks since the last fire event, and the ticks or clock cycles is often times millions per second. That's how the cpu see's "time" in the code, so this is a pretty deep/technical example.
Anyway, for getting into hardware at that kind of level, it's better to start with something simpler. This is far from a first project, but he does a good job explaining things well and he's working with binary (2 base, aka 1's and 0's) and 10 base, so it somewhat relates. Hexadec is a bit special since it's just a way to view binary data, binary is defined as that 2 base, but sometimes it's actually 10 base data it's holding so kind of need to learn both sides of that to grasp it a bit more. The curve ball is some of that data is actually assembly code which is binary, which would be the actual code that runs on the computer's processor to make things happen. GM mixed data and program on the same chip so it's a bit of a mixed up mess because of that, but I suspect a lot of companies did it similarly.
The vid also shows the use of a table, pretty similar context of how tables are used in the computers too. Like there will likely be a table for the calibration of some of the sensors so GM can use different sensors in different vehicles, but only have to change the table to make them work with the existing code.
https://www.youtube.com/watch?v=7zffjsXqATg
Here's where he converts that big monster logic gate mess into an eeprom lookup table. Not exactly the same setup as car computers, but it's an idea at least.
https://www.youtube.com/watch?v=BA12Z7gQ4P0