mostly cosmetical. don't use movw because we use mov in most places. Also, drop some dead code at the very end where some segment registers get set up and are immediately overwritten by pops. Signed-off-by: Stefan Reinauer Index: src/devices/oprom/x86_asm.S =================================================================== --- src/devices/oprom/x86_asm.S (revision 5612) +++ src/devices/oprom/x86_asm.S (working copy) @@ -82,10 +82,10 @@ /* entry point */ movl 36(%ebp), %eax - movw %ax, __lcall_instr + 1 + mov %ax, __lcall_instr + 1 andl $0xffff0000, %eax shrl $4, %eax - movw %ax, __lcall_instr + 3 + mov %ax, __lcall_instr + 3 /* initial register values */ movl 40(%ebp), %eax @@ -147,7 +147,7 @@ movl __registers + 8, %ecx movl __registers + 12, %edx movl __registers + 16, %esi - movl __registers + 20, %edi + movl __registers + 20, %edi /* Set all segments to 0x0000, ds to 0x0040 */ push %ax @@ -165,8 +165,8 @@ .word 0x0000, 0x0000 /* ************************************ */ - /* If we got here, just about done. - * Need to get back to protected mode + /* If we got here, we are just about done. + * Need to get back to protected mode. */ movl %cr0, %eax orl $PE, %eax @@ -178,7 +178,7 @@ data32 ljmp $0x10, $RELOCATED(1f) 1: .code32 - movw $0x18, %ax + mov $0x18, %ax mov %ax, %ds mov %ax, %es mov %ax, %fs @@ -294,7 +294,7 @@ data32 ljmp $0x10, $RELOCATED(1f) 1: .code32 - movw $0x18, %ax + mov $0x18, %ax mov %ax, %ds mov %ax, %es mov %ax, %fs @@ -337,7 +337,7 @@ data32 ljmp $0x10, $RELOCATED(1f) 1: .code32 - movw $0x18, %ax + mov $0x18, %ax mov %ax, %ds mov %ax, %es mov %ax, %fs @@ -382,13 +382,6 @@ mov %ax, %ds lidt __realmode_idt - /* Set up segment registers to segment 0x0000 and ds to 0x040 */ - mov %ax, %es - mov %ax, %fs - mov %ax, %gs - mov $0x40, %ax - mov %ax, %ds - /* Restore all registers, including those * manipulated by the C handler */