zachtronics, being the nerdsniping master he is, wrote a "reverse engineering walkthrough" because he hates that i have free time sometimes
elisp code
oh, i did write a thing to make hexl measure ranges, in case anyone besides me ever needs to do that:
(defun hexl-measure-region ()
"Measure how large the active region is."
(interactive)
(when (region-active-p)
(save-excursion
(let ((point (hexl-current-address)))
(exchange-point-and-mark)
(let ((diff (abs (- point (hexl-current-address)))))
(exchange-point-and-mark)
(message "Range is %d bytes (0x%08x)" diff diff))))))
success!
though admittedly the palette wasn't in the data file, so i couldn't follow along the extraction of it--it's just a big vector without reason
the way i wanted to *try* and find the palette and extract it turned out to be correct though! it just wasn't anywhere i could possibly do that
i also wrote the flags for each tile into their filenames, since there's no other way to express them meaningfully right now
aaaand i've successfully managed to extract images from this binary, like in the post!
i'll work on the palette later, but this is really cool!