Jump to content
43oh

Online game based on MSP430 assembler: microcorruption


Recommended Posts

Saw this on Hackaday. There is a new online game based on hacking virtual MSP430 based electronic locks. In the game you have a debugger to analyze the lock code. Once you understand the code, you enter a password to unlock your prize.

 

I program in C and have used the C level debugger but I have always wanted to be able to understand machine level code. This game includes a tutorial to get you started.

 

You can find the site at https://microcorruption.com/login

 

Could the virtual "Lockitall" be entered as another device that contains an MSP430?

Link to post
Share on other sites

I've been quite enjoying* this. At first I didn't think they'd be able to come up with enough inventive ways for the lock designers to foul up, but so far they're keeping it fairly fresh. Hopefully the BitLock team haven't made any of these mistakes!

 

One nice feature that's not immediately obvious is the Hall of Fame, which has per level stats for every player (date completed, shortest input length, fewest cycles used). There's also an assembler/disassembler page which is handy, though unfortunately it doesn't give instruction cycle counts.

 

Also, I liked this gem from the game's about page:

  • Zero bottles of beer on the wall, zero bottles of beer; take one down, pass it around, 65535 bottles of beer on the wall.

 

* Well, I say enjoying, but I spend most of my time cursing the guys who've solved the levels in fewer cycles or less input bytes than I can manage :)

Link to post
Share on other sites

Could the virtual "Lockitall" be entered as another device that contains an MSP430?

Yes and no.

 

The code for the lock is real MSP430 assembler code, so you could use it in another (real) MSP430 device. However, all user interfacing is done through their magical <INT> routine, which is empty.

In order to run such code in a real MSP430, you'd need to implement the user interface in a way that is compatible with the <INT> calling that is used in the MicroCorruption code.

Link to post
Share on other sites

I've not tried it myself, but I hear some players have been comparing msp430 simulators against the game's emulation to see where it doesn't match the spec. There's been at least one difference found that can save a cycle in some cases. The one I stumbled upon was the opposite; according to the spec it should have saved a cycle, but the incorrect emulation made it a no-go :angry:

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...