diff options
author | msmith <msmith@FreeBSD.org> | 1998-09-17 23:52:16 +0000 |
---|---|---|
committer | msmith <msmith@FreeBSD.org> | 1998-09-17 23:52:16 +0000 |
commit | f0b5ddae6f18f4e9b5ad66d339e2f6b10f5003fa (patch) | |
tree | 7fadd070d2d84c282103a99a4ea34ee576dfe81c /sys/boot/i386/libi386/biosmem.S | |
parent | 00163848c15519499c016ae12ed2a2a3aaf24a83 (diff) | |
download | FreeBSD-src-f0b5ddae6f18f4e9b5ad66d339e2f6b10f5003fa.zip FreeBSD-src-f0b5ddae6f18f4e9b5ad66d339e2f6b10f5003fa.tar.gz |
Initial integration of the i386 bootloader and BTX.
- Discard large amounts of BIOS-related code in favour of the more compact
BTX vm86 interface.
- Build the loader module as ELF, although the resulting object is a.out,
make gensetdefs 32/64-bit sensitive and use a single copy of it.
- Throw away installboot, as it's no longer required.
- Use direct bcopy operations in the i386_copy module, as BTX
maps the first 16M of memory. Check operations against the
detected size of actual memory.
Diffstat (limited to 'sys/boot/i386/libi386/biosmem.S')
-rw-r--r-- | sys/boot/i386/libi386/biosmem.S | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/sys/boot/i386/libi386/biosmem.S b/sys/boot/i386/libi386/biosmem.S deleted file mode 100644 index cb97672..0000000 --- a/sys/boot/i386/libi386/biosmem.S +++ /dev/null @@ -1,99 +0,0 @@ -/* $NetBSD: biosmem.S,v 1.5 1997/08/18 22:44:01 hannken Exp $ */ - -/* - * Copyright (c) 1996 - * Perry E. Metzger. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgements: - * This product includes software developed for the NetBSD Project - * by Perry E. Metzger. - * 4. The names of the authors may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - */ - - -#include <machine/asm.h> - -#define data32 .byte 0x66 - - .text - -/* get mem below 1M, in kByte */ - -ENTRY(getbasemem) - pushl %ebp - movl %esp,%ebp - pushl %ebx - push %esi - push %edi - - call CNAME(prot_to_real) - - int $0x12 - # zero-extend 16-bit result to 32 bits. - data32 - movl $0, %ebx - mov %eax,%ebx # !!! at run time, it is mov %ax,%bx - - data32 - call CNAME(real_to_prot) - - movl %ebx, %eax - - pop %edi - pop %esi - popl %ebx - popl %ebp - ret - -/* get mem above 1M, in kByte */ - -ENTRY(getextmem) - pushl %ebp - movl %esp,%ebp - pushl %ebx - push %esi - push %edi - - call CNAME(prot_to_real) - - movb $0x88,%ah - int $0x15 - - # zero-extend 16-bit result to 32 bits. - data32 - movl $0, %ebx - mov %eax,%ebx # !!! at run time, it is mov %ax,%bx - - data32 - call CNAME(real_to_prot) - - movl %ebx, %eax - - pop %edi - pop %esi - popl %ebx - popl %ebp - ret - |