yay! it worked!
authordodge-this <dodge-this@12e2690d-a6be-4b82-a7b7-67c4a43b65c8>
Tue, 6 Jul 2010 14:42:49 +0000 (14:42 +0000)
committerdodge-this <dodge-this@12e2690d-a6be-4b82-a7b7-67c4a43b65c8>
Tue, 6 Jul 2010 14:42:49 +0000 (14:42 +0000)
commitb7a6e00b7d75a7f29401c2aeeb2e19cbd622d678
treeb56f4cbf3ea5981c230b91b378c953f64784eadf
parentb3867f4248b4258ba1c1d75b96e4da35a6064e92
yay!  it worked!
jtag arm was pretty much always working.  i simply wanted too much out of it.
i forgot to contemplate that debugging through jtag *is shellcoding* and needs
to be treated as if it is fragile... because it is.

writing to a register involves ldr rX [rY]
turns out, when rY is not word aligned, the contents of the data is shifted in funky ways...
weirder still, the rotating differed between r0-7 and r8-15.

solution?  use PC.  ldr rX, [r15] means the highest likelihood of having word-aligned register.
change PC at your own peril.  make sure it is word-aligned.

and all is well.

initial testing of reading from memory seems promising.  although, debugging in the process doesn't work *at all* because the python handler includes the debug messages as part of the data.

need to true up reading memory, writing memory, reading code, and reading/writing PSRs.

yay!

git-svn-id: https://svn.code.sf.net/p/goodfet/code/trunk@657 12e2690d-a6be-4b82-a7b7-67c4a43b65c8
client/GoodFETARM.py
client/gplay-arm.py
firmware/apps/jtag/jtagarm7tdmi.c
firmware/include/jtagarm7tdmi.h