zachtronics, being the nerdsniping master he is, wrote a "reverse engineering walkthrough" because he hates that i have free time sometimes

zachtronics.com/yoda-stories/

to make things niftier, i've been following along in a language i'm bad at

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))))))

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!

i've always wanted to learn how to reverse engineer and analyze data, so i'm super-grateful this exists!

it really helps see what the mindset behind it is--plus doing it in another language just solidifies the hands-on part of all of this

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

Sign in to participate in the conversation
Awoo Space

Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.

While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.

Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!