Help! Can't get code aut of my arduboy

Hi!
Are there some way to get code out of arduboy? Because my game source code was on my old computer and it crashed. :frowning:

Nope.   

  
 

Sorry.          

You can get the binary compiled output that was produced by the compiler, for the purposes of saving it and uploading it to an Arduboy again, but you can’t retrieve the original source code.

2 Likes

Adding to MLXXXp’s comment, from the hex you can pretty easily decompile to assembly (it’s basically just a standard Intel s19 type hex file that directly corresponds to the native processor assembly instructions documented in the datasheet) but that’s as far as you can easily go. All comments, variable/function names, pretty much anything human readable is stripped when the compiler originally compiled the code into the binary that you now have flashed to the chip.

What do you mean by ‘crashed’?

Do you mean that you hadn’t saved the code and the computer rebooted for some reason?
Or do you mean the hard drive is actually broken?

My hard drive actually is broken.

That’s unfortunate.

In that case your best hope would probably be to take it to someone who might be able to recover the information off the disk,
but depending on how the disk broke it might not be retrievable.

If the compiled code is uploaded to your Arduboy then it might be possible to get a copy of it with the right tool (@Mr.Blinky might know more since he’s written tools that interface with the Arduboy’s bootloader),
but even then the best you’ll get (as other people have said) is a disassembly,
which will give you assembly code instead of C++ source code, which isn’t particularly useful.


Next time you write a game,
consider uploading your files to GitHub (GitHub has free private repos) or GitLab,
or some kind of ‘cloud’ storage system like DropBox or OneDrive,
or if the code is small enough something like PasteBin or PrivateBin.

Even sending a copy to a friend might help.

Or even just backing it up to a thumb drive.

1 Like

Sad Panda :panda_face:

Yep, always backup and even backup your backup. If your data is important it’s worth the effort and cost making a routine of it (or just automate with scheduled backups).

One time in highschool I accidentally formatted the wrong hard drive without any backups, I lost literally everything. I had mods I made for unreal, quake, duke 3d maps, all these pictures from school with my friends. Everything. All my final papers and everything were gone. And of course this is before the cloud or anything so it wasn’t like I still had a few things on facebook or whatever. I’m still traumatized to this day by it.

I was building a new computer, and I had a used hard drive that I wanted to format. So I plugged it into my main computer, but I didn’t pay attention to the master/slave pins and also didn’t pay attention to what drive it booted into.

Well, unbeknownst to me, the drive that I was used to booting from in my machine actually was set to cable select, but was the only hard drive on the IDE cable so it default booted as master.

The used hard drive that I was installing, still had an active windows install on it (that was made on that same machine earlier), but the drive had it’s master select jumper pin enabled. So when I plugged it in and booted into command prompt, I didn’t realize I was actually booting into the “used” hard drive that I intended to format.

This made my origonal drive appear as D. Both drives were unlabeled. and when I went to format the drive, in command mode it asked me to enter the label, I just hit enter.

Immediately after hitting enter I looked at how large the drive was and immediately realized my error because I knew the sizes of the two drives and realized the bad thing that I had just did.

I turned off the power to the computer right away, and tried to use a multitude of recovery softwares but it was too late, 5 years of my digital past had been erased in a moment.

So, I feel ya buddie.

3 Likes