I recently bought a Sharp EL-9950 graphing calculator (which is considerably rare compared to the other brands). I have a copy of its OS upgrade file, which is essentially ROM dump for the new version (or at least I think it is).

I searched everywhere, but I couldn't find any info about the hardware of this calculator, and it was too expensive for me to try opening its case.

How do I go about reverse engineering the ROM dump (exactly 1MB) to determine at least which instruction set it uses (so I can format it with my own ROM someday, I guess?)


  • try to disassemble the binary using various disassemblers and if the "program" that comes out of it is nonsense then it's not a rom for that cpu. May 4 '17 at 12:35
  • 1
    Have you tried binwalk --opcodes ?
    – perror
    May 4 '17 at 12:59
  • ratchet: Yes, I tried to disassemble it as ARM and others but sorry, it was to no avail. perror: Thanks, I will try it right now. May 5 '17 at 13:29
  • Sorry, but binwalk does not give ANY result. I ran it in Ubuntu. --opcodes gives literally nothing. May 5 '17 at 14:04

My low-tech approach has been to build a list of n-grams (n=3,4,5,6) and look for the most common sequences in a corpus of samples for different architectures (if you happen to have one).

Sometimes even searching on Google for the hex byte sequence can give some hints.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.