On Dec 27, 2007 5:57 PM, Robert Millan <[EMAIL PROTECTED]> wrote: > Why not force it with .code32 / .code16 ?
No, you can't use .code32/.code16, it will not cause compile error, but the machine code is wrong. However, you can write it like this: .byte 0x66, 0x67 .code32 leal 0x200 + data_start - data_next(%ebx,%eax), %eax .code16 0x66 and 0x67 is the DATA32 and ADDR32 prefix, it tell the cpu that the next instruction use different registry and address mode. (16-bit %ax -> 32-bit %eax, 16-bit address mode to 32-bit address mode). -- Bean _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel