| On Wed, 23 Apr 2003, Andrew Kirilenko wrote:
| > OK. And now code looks like:
| > -->
| > start_of_setup: # line 160
| > # bla bla bla - some checking code
| > movb $1, %al
| > movb %al, (0x100)
| > ....
| > ....
| > cmpb $1, (0x100)
| > je bail820 # and it DON'T jump here
| > <--
| > I'm sure, I'm doing something wrong. But what???
| The only possibiity is that the code you just showed is not
| being executed. Absolute location 0x100 is not being overwritten
| by some timer-tick (normally) so whatever you write there should
| remain. You just put a byte of 1 in that location and then
| you compared against a byte of 1. If the CPU was broken, you
| wouldn't have even loaded your code.
Could possibly be that DS (seg register) is altered between
the store and the comparison...
| It is quite likely that the IP is being diverted around your code
| by some previous code.
| FYI, you can check the progress of your code by 'printing' on
| the screen. Set up ES to point to the screen segment, and write
| letters there:
| movw $0xb800, %ax
| movb %ax, %es
| movb $'A', %es:(0)
| This 'prints' an 'A' at the first location on the screen.
-- ~Randy - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to email@example.com More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/