Posts Tagged ‘arm’

ARM Core Wars

Friday, January 21st, 2011

Do you remember the old programming game, Corewar? Admittedly, it was a little before my time, but I’ve always been fascinated by the idea of writing competitive, pure programs. After doing a little research on the original Corewar, I decided to implement my own, but with a twist: instead of reusing the assembly-like language from the original or making up my own, I decided to use the ARM instruction set as the basis for my game. After a few weeks of hacking on a friend’s ARM emulator, I made a working prototype for a new Corewar.

As it turns out, ARM is a great instruction set for this purpose, having fixed size instructions and PC relative addressing. My design makes use of almost the entire ARM7TDMI instruction set, including THUMB, with a few synchronization and esoteric instructions omitted.

Hopefully I will have a polished version for public consumption some time in the near future (though I can never be sure how far out personal projects will end up).

Fun With Lego Mindstorms NXT 2.0

Friday, June 25th, 2010

I just picked up a set of Lego Mindstorms NXT 2.0. It’s a robotics kit based on the AT91SAM7S256, which is a rather nice ARM7TDMI based SoC.

Coincidentally, the little kernel (lk), written by Travis Geiselbrecht and being used as a bootloader for Android and webOS, supports AT91* platforms. Of course, this means I have to get lk running on the NXT.

IDA Pro

Tuesday, January 26th, 2010

I recently discovered a really cool tool called IDA Pro. It’s an interactive disassembler with some powerful features that make examining low-level code and debugging very easy.

I’m currently working on getting IDA Pro to talk to my Lauterbach JTAG Debugger via GDB Remote Serial Protocol, but it seems that there is a bug in the Lauterbach software. The two products should make a very powerful combination.

Check out IDA Pro at http://www.hex-rays.com/idapro/