Cloak
03-10-2002, 06:57 PM
While scrutinizing some code, I seemed to have come across something I don't understand.
0x80000250 D 0 stl n
0x80000251 4 0 ldc n
0x80000252 B C ajw n
0x80000253 6 0 nfix
0x80000254 9 C call n
Coming into this 80000250 the registers are:
lptr = 0x80000250, Wptr = 0x80000FF0, Areg = 0x80000150, Breg = 0x00000000, Creg = 0x00000000
Two things bother me about this, the first is the ajw. A ajw of 0x0C puts the Wptr up to 0x80001020 which "should not be addressed"
But besides that, the nfix and call n just set the lptr back to 0x80000251.
All I can see is an infinite loop in which the Wptr just drifts farther and farther into unaddressable space.
What am I missing :)
-c
0x80000250 D 0 stl n
0x80000251 4 0 ldc n
0x80000252 B C ajw n
0x80000253 6 0 nfix
0x80000254 9 C call n
Coming into this 80000250 the registers are:
lptr = 0x80000250, Wptr = 0x80000FF0, Areg = 0x80000150, Breg = 0x00000000, Creg = 0x00000000
Two things bother me about this, the first is the ajw. A ajw of 0x0C puts the Wptr up to 0x80001020 which "should not be addressed"
But besides that, the nfix and call n just set the lptr back to 0x80000251.
All I can see is an infinite loop in which the Wptr just drifts farther and farther into unaddressable space.
What am I missing :)
-c