2.3.25 bootsect.c dose not compile

david (sector2@ihug.co.nz)
Thu, 04 Nov 1999 00:01:07 +1300


hi i have just got 2.3.25
when i compiled it i got some errors in bootsect.S

make[1]: Entering directory
`/usr/srclocal/linux-2.3.25/arch/i386/boot'
as --defsym bootsect_kludge=0x220 -o bbootsect.o bbootsect.s
bbootsect.s: Assembler messages:
bbootsect.s:527: Error: base/index register must be 32 bit register
bbootsect.s:535: Error: base/index register must be 32 bit register
bbootsect.s:536: Error: base/index register must be 32 bit register
bbootsect.s:537: Error: base/index register must be 32 bit register
bbootsect.s:793: Error: base/index register must be 32 bit register
make[1]: *** [bbootsect.o] Error 1
make[1]: Leaving directory
`/usr/srclocal/linux-2.3.25/arch/i386/boot'
make: *** [bzImage] Error 2

i fixed most of them myself then i got this

as --defsym bootsect_kludge=0x220 -o bbootsect.o bbootsect.s
bbootsect.s: Assembler messages:
bbootsect.s:527: Error: operands given don't match any known 386
instruction ( listed below )
make[1]: *** [bbootsect.o] Error 1
make[1]: Leaving directory
`/usr/srclocal/linux-2.3.25/arch/i386/boot'
make: *** [bzImage] Error 2

and now one to go

bootsect.S line 101
# Segments are as follows: ds = es = ss = cs - INITSEG, fs = 0,
# and gs is unused.

movw %cx, %fs # set fs to 0
movw $0x78, %bx # fs:bx is parameter table address
pushw %ds
- ldsw %fs:(%bx), %si # ds:si is source
+ ldsw %fs:(%ebx), %si # ds:si is source
movb $6, %cl # copy 12 bytes
cld
pushw %di # di = 0x4000-12.

can some one help this is as far as i got
is the ldsw = lds load pointer to ds ?

ps i use as 2.9.1
also why can we not use NASM or the like then we would get nice looking
asm code ?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/