anyway i could be wrong since i can't test it with real ards and actual cartridge but i think the problem occur in this lineOriginally Posted by Maniac
ldrh r2,[r0],#0x1
.....
streqh r4,[r0]
first code is minor and can be ignore but it adds per byte not per half-word, im not sure if it cause a problem probably it wont
now the other line might give a problem .. because it writes on the new value of r0, since the first line gets the value and load it to r2 before it add +1 on r0
the solution i can think of is something like this
ldrh r2,[r0],#0x02
.....
streqh r4,[r0,#0xFFFFFFFE]
in that format .. it will add r0 now with 2 but streqh will write on given offset which is, offset = r0-0x2, and won't affect the value of r0
anyway i could be wrong ..