[E3-hacking] [E2 hacking] E2 monitor v0.22

Matt Evans e3-hacking@earth.li
Thu May 5 01:25:31 BST 2005


I've uploaded the state-so-far of my monitor to:


(the README from the tar is also at 
http://www.axio.ms/projects/e2/e2-monitor-0.22-README )

What it can do:
o Provides basic monitor with commands such as peek/poke/go
o XMODEM upload/download RAM over serial (though this is currently 
v.picky about terminal s/w used)
o Read NAND flash to RAM
o Write/erase NAND flash from RAM data
o CRC32 chunks of memory
o Initialise LCD a bit/provide simple string/hex printing to it
o Boot from PBL

What it can't yet do:
o Search the rest of NAND for executable client programs, and boot them
o Access SMC cards (I have been unable to coax PBL into accessing them, 
but it looks like much of the support is there in PBL.  (Not 
necessarily complete/functional of course))

It's pretty fast at downloading data and writing it to flash, or just 
executing code, so I find it's a better development environment than 
EXP'ing stuff down with pblq-alikes.  I've usually started up the E2, 
interrupted the splash screen over JTAG and downloaded the ELF (over 
jtag); now that it boots from flash, it'll accept a new version of 
itself via XMODEM and run that happily.  (Whew, my Windows box is now 

I don't know if anyone's interested in trying it out or using it;  I'd 
be grateful for any comments, suggestions or code contributions!  It's 
not really there yet - well, XMODEM works for me but probably won't for 
anyone else =]  That's next on my list.


ps:  Here are the supported commands, from its help text:
Help (commands are case-sensitive):
         h/?                             - This help
         dump <m|fd> <addr> <len>        - Hexdump RAM or flash
         crc <addr> <len>                - CRC32 memory
         get <addr> <len>                - XMODEM download from RAM
         put <addr>                      - XMODEM upload to RAM
         flashwr <flash offset> <len> <ram address>
                                         - Write RAM data into flash 
         flashrd <flash offset> <len> <ram address>
                                         - Copy flash data into RAM
         listdevs                        - List flash devices
         go <addr>                       - Jump to address
         r{b|w} <addr>                   - Read byte/word
         w{b|w} <addr> <data>            - Write byte/word
         fill <addr> <len> <byte>        - Fill memory
         lcd <string>                    - Write string to LCD console
  [ fd above is a flash device ID, 0 = internal, 1 = external etc., as 
listed in listdevs ]
  [      All numbers/addresses/offsets are hexadecimal - zero padding is 
unnecessary      ]

pps: Any better names..?

More information about the e3-hacking mailing list