Subject: i386 16-bit
To: None <tech-kern@netbsd.org>
From: Matthew Mondor <mmondor@gobot.ca>
List: tech-kern
Date: 01/02/2003 08:12:03
Hi all,

I am often experiencing problems on netbsd with i386 16-bit code assembler
files which generally build fine on freebsd or linux... Anyone have an idea
of what might be going wrong?

cc -Wall -Iinclude -c -o bin/init16.o init16.S
/tmp/ccVO3S7B.s: Assembler messages:
/tmp/ccVO3S7B.s:138: Error: base/index register must be 32 bit register
/tmp/ccVO3S7B.s:148: Error: base/index register must be 32 bit register
gmake: *** [bin/init16.o] Error 1

and the file begins as follows:

#include <asm-inc/boot.h>
#include <asm-inc/segdefs.h>
#include <asm-inc/meminfo.h>

code16
text

globl _start

/* =======================================================================
 *                                                                      _start
 * ======================================================================= */
_start:
/* Kernel starts here.   This is the first bit of code to be executed after
 * the boot loader.  Here we do some initialization using BIOS, before we
[...]

Thanks,
Matt