453                                  relocated:
  454 00000080 260F0116[2E00]           lgdt
  455 00000086 B001                     mov al, 1
  456 00000088 0F22C0                   mov cr0, eax
  457 0000008B EA[9000]0800             jmp code:protected    <======== gdb loses it after this jmp
  460                                  protected:
  461 00000090 B010                     mov al, data

I'm trying to fathom a couple of tiny os' running under qemu and gdb.
Whenever I get to the point of far jumping to protected mode gdb goes sailing past the instruction
immediately after the jump.
I've tried nexti'ing the jump and breaking on what seems to be the correct ram address
for the following instruction but gdb settles and correctly disassembles an instruction
many instructions on.
What am I doing wrong???

Posted on 2009-11-12 10:19:29 by bobl