diff options
author | Thom Johansen <thomj@rockbox.org> | 2005-11-13 23:47:26 +0000 |
---|---|---|
committer | Thom Johansen <thomj@rockbox.org> | 2005-11-13 23:47:26 +0000 |
commit | e3095ee3b8bc84d4d93796869d694455b7911b2f (patch) | |
tree | a7ff616a419acb4a3b487bf57e0b39d03e4851bc /firmware | |
parent | e22f9c49c83a211ef8fda6e132c64d84284cfb15 (diff) | |
download | rockbox-e3095ee3b8bc84d4d93796869d694455b7911b2f.tar.gz rockbox-e3095ee3b8bc84d4d93796869d694455b7911b2f.zip |
iPod fixes. Stack starts at stackend. Munge stack with 0xdeadbeef.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7851 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/crt0.S | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/firmware/crt0.S b/firmware/crt0.S index 9ef597fad6..cba7221471 100644 --- a/firmware/crt0.S +++ b/firmware/crt0.S @@ -75,9 +75,16 @@ cop_wake_start: ldr pc, [r0] 1: - /* setup some stack */ - ldr sp, = _stackbegin - + /* setup some stack and munge it with 0xdeadbeef */ + ldr sp, =_stackend + mov r3, sp + ldr r2, =_stackbegin + ldr r4, =0xdeadbeef +.mungeloop: + str r4, [r2], #4 + cmp r2, r3 + bne .mungeloop + /* get the high part of our execute address */ ldr r2, =0xffffff00 and r4, pc, r2 |