BIOS trampoline is a static beast; generate it in the sources like
syscalls.h & friends, and include it when needed from the source directory.
This commit is contained in:
parent
bd21bf3909
commit
04f1e23fe1
|
@ -1,12 +1,17 @@
|
|||
# $NetBSD: Makefile,v 1.4 1996/09/09 18:07:40 mycroft Exp $
|
||||
# $NetBSD: Makefile,v 1.5 1996/09/13 00:02:36 jtk Exp $
|
||||
|
||||
CPPFLAGS= ${APMCPPFLAGS}
|
||||
CFLAGS+= -I${.CURDIR}/../.. -I${.CURDIR}/../../..
|
||||
|
||||
SRCS= biostramp.S
|
||||
OBJS= biostramp.o
|
||||
DEPS= ${APMDEPS}
|
||||
STRIP?= strip
|
||||
|
||||
all: biostramp.inc
|
||||
|
||||
biostramp.inc: biostramp Makefile
|
||||
-mv -f biostramp.inc biostramp.inc.bak
|
||||
sh ${.CURDIR}/bin2asm.sh biostramp > biostramp.inc
|
||||
|
||||
biostramp: ${OBJS} ${DEPS}
|
||||
|
@ -20,8 +25,15 @@ biostramp: ${OBJS} ${DEPS}
|
|||
@sh ${.CURDIR}/rmaouthdr biostramp biostramp.tmp
|
||||
@mv -f biostramp.tmp biostramp
|
||||
|
||||
assym.h: genassym
|
||||
./genassym > assym.h
|
||||
|
||||
biostramp.S: assym.h
|
||||
biostramp.o: biostramp.S
|
||||
${CC} ${CFLAGS} -DASM -D_LOCORE -c biostramp.S
|
||||
|
||||
clean:
|
||||
rm -f *.o biostramp biostramp.sym biostramp.inc
|
||||
rm -f *.o biostramp biostramp.sym biostramp.inc genassym assym.h
|
||||
|
||||
.include <bsd.dep.mk>
|
||||
.include <bsd.subdir.mk>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: biostramp.S,v 1.3 1996/09/09 18:42:51 mycroft Exp $ */
|
||||
/* $NetBSD: biostramp.S,v 1.4 1996/09/13 00:02:38 jtk Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 1996 John T. Kohl. All rights reserved.
|
||||
*
|
||||
|
@ -58,14 +58,14 @@
|
|||
*/
|
||||
|
||||
#include "assym.h"
|
||||
#include "apm.h"
|
||||
#if NAPM > 0
|
||||
#include <machine/param.h>
|
||||
#include <machine/specialreg.h>
|
||||
#include <machine/segments.h>
|
||||
#include <machine/apmvar.h>
|
||||
#include <machine/psl.h>
|
||||
#include <machine/asm.h>
|
||||
|
||||
#include <i386/include/param.h>
|
||||
#include <i386/include/specialreg.h>
|
||||
#include <i386/include/segments.h>
|
||||
#include <i386/include/apmvar.h>
|
||||
#include <i386/include/psl.h>
|
||||
#include <i386/include/asm.h>
|
||||
|
||||
#define addr32 .byte 0x67
|
||||
#define data32 .byte 0x66
|
||||
|
||||
|
@ -331,4 +331,3 @@ x32:
|
|||
IDT_bios: # BIOS IDT descriptor (real-mode)
|
||||
.word 1023
|
||||
.long 0
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,80 @@
|
|||
/* This file is automatically generated by bin2asm.sh */
|
||||
/* Original file is 'biostramp' */
|
||||
|
||||
.byte 0x55, 0x89, 0xe5, 0x56, 0x57, 0x53, 0x1e, 0x06
|
||||
.byte 0x0f, 0xa0, 0x0f, 0xa8, 0x8b, 0x45, 0x08, 0x66
|
||||
.byte 0xa3, 0xe0, 0x1f, 0x00, 0x00, 0x8b, 0x5d, 0x0c
|
||||
.byte 0x66, 0x8b, 0x03, 0x66, 0xa3, 0x86, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x8b, 0x43, 0x02, 0x66, 0xa3, 0x84
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x43, 0x04, 0x66
|
||||
.byte 0xa3, 0x82, 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x43
|
||||
.byte 0x06, 0x66, 0xa3, 0x80, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x8b, 0x43, 0x08, 0x66, 0xa3, 0x7e, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x8b, 0x43, 0x0a, 0x66, 0xa3, 0x7c
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x4b, 0x0c, 0x9c
|
||||
.byte 0x58, 0x25, 0x2a, 0xf1, 0xff, 0xff, 0x81, 0xe1
|
||||
.byte 0xd5, 0x0c, 0x00, 0x00, 0x09, 0xc8, 0x66, 0xa3
|
||||
.byte 0x7a, 0x1f, 0x00, 0x00, 0x9c, 0x0f, 0x01, 0x05
|
||||
.byte 0xf0, 0x1f, 0x00, 0x00, 0x8b, 0x35, 0xf2, 0x1f
|
||||
.byte 0x00, 0x00, 0xbf, 0x88, 0x1f, 0x00, 0x00, 0xb9
|
||||
.byte 0x58, 0x00, 0x00, 0x00, 0xfc, 0xf3, 0xa4, 0x66
|
||||
.byte 0xc7, 0x05, 0xea, 0x1f, 0x00, 0x00, 0x57, 0x00
|
||||
.byte 0xc7, 0x05, 0xec, 0x1f, 0x00, 0x00, 0x88, 0x1f
|
||||
.byte 0x00, 0x00, 0x0f, 0x01, 0x15, 0xea, 0x1f, 0x00
|
||||
.byte 0x00, 0xfa, 0x0f, 0x01, 0x0d, 0xf6, 0x1f, 0x00
|
||||
.byte 0x00, 0x89, 0x25, 0xe6, 0x1f, 0x00, 0x00, 0x89
|
||||
.byte 0x2d, 0xe2, 0x1f, 0x00, 0x00, 0xbc, 0x68, 0x1f
|
||||
.byte 0x00, 0x00, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x0f
|
||||
.byte 0x20, 0xd8, 0xa3, 0xfc, 0x1f, 0x00, 0x00, 0x0f
|
||||
.byte 0x20, 0xc0, 0x25, 0xff, 0xff, 0xff, 0x7f, 0x0f
|
||||
.byte 0x22, 0xc0, 0x31, 0xc0, 0x0f, 0x22, 0xd8, 0x66
|
||||
.byte 0xbb, 0x50, 0x00, 0x66, 0x8e, 0xdb, 0x66, 0x8e
|
||||
.byte 0xc3, 0x66, 0x8e, 0xe3, 0x66, 0x8e, 0xeb, 0xea
|
||||
.byte 0xee, 0x10, 0x00, 0x00, 0x48, 0x00, 0x0f, 0x20
|
||||
.byte 0xc0, 0x66, 0x83, 0xe0, 0xfe, 0x0f, 0x22, 0xc0
|
||||
.byte 0x66, 0xea, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01
|
||||
.byte 0x31, 0xc0, 0x66, 0x8e, 0xd0, 0x66, 0x8c, 0xc8
|
||||
.byte 0x66, 0x8e, 0xc0, 0x66, 0x8e, 0xe0, 0x66, 0x8e
|
||||
.byte 0xe8, 0x66, 0x8e, 0xd8, 0x67, 0x0f, 0x01, 0x1d
|
||||
.byte 0x40, 0x02, 0x00, 0x00, 0x67, 0x8b, 0x3d, 0x7c
|
||||
.byte 0x0f, 0x00, 0x00, 0x67, 0x8b, 0x35, 0x7e, 0x0f
|
||||
.byte 0x00, 0x00, 0x67, 0x8b, 0x15, 0x80, 0x0f, 0x00
|
||||
.byte 0x00, 0x67, 0x8b, 0x0d, 0x82, 0x0f, 0x00, 0x00
|
||||
.byte 0x67, 0x8b, 0x1d, 0x84, 0x0f, 0x00, 0x00, 0x67
|
||||
.byte 0x8a, 0x05, 0xe0, 0x0f, 0x00, 0x00, 0x67, 0x88
|
||||
.byte 0x05, 0x64, 0x01, 0x00, 0x00, 0x66, 0xea, 0x55
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x67, 0xa1, 0x7a
|
||||
.byte 0x0f, 0x00, 0x00, 0x50, 0x9d, 0x67, 0xa1, 0x86
|
||||
.byte 0x0f, 0x00, 0x00, 0xcd, 0xff, 0x9c, 0x67, 0xa3
|
||||
.byte 0x86, 0x0f, 0x00, 0x00, 0x67, 0x89, 0x1d, 0x84
|
||||
.byte 0x0f, 0x00, 0x00, 0x67, 0x89, 0x0d, 0x82, 0x0f
|
||||
.byte 0x00, 0x00, 0x67, 0x89, 0x15, 0x80, 0x0f, 0x00
|
||||
.byte 0x00, 0x67, 0x89, 0x35, 0x7e, 0x0f, 0x00, 0x00
|
||||
.byte 0x67, 0x89, 0x3d, 0x7c, 0x0f, 0x00, 0x00, 0x58
|
||||
.byte 0x67, 0xa3, 0x7a, 0x0f, 0x00, 0x00, 0xfa, 0x0f
|
||||
.byte 0x20, 0xc0, 0x66, 0x83, 0xc8, 0x01, 0x0f, 0x22
|
||||
.byte 0xc0, 0x66, 0xea, 0xa9, 0x11, 0x00, 0x00, 0x08
|
||||
.byte 0x00, 0x66, 0xbb, 0x10, 0x00, 0x66, 0x8e, 0xdb
|
||||
.byte 0x66, 0x8e, 0xd3, 0x66, 0x8e, 0xc3, 0xa1, 0xfc
|
||||
.byte 0x1f, 0x00, 0x00, 0x0f, 0x22, 0xd8, 0x0f, 0x20
|
||||
.byte 0xc0, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x0f, 0x22
|
||||
.byte 0xc0, 0x0f, 0x01, 0x15, 0xf0, 0x1f, 0x00, 0x00
|
||||
.byte 0x8b, 0x25, 0xe6, 0x1f, 0x00, 0x00, 0x8b, 0x2d
|
||||
.byte 0xe2, 0x1f, 0x00, 0x00, 0x0f, 0x01, 0x1d, 0xf6
|
||||
.byte 0x1f, 0x00, 0x00, 0x8b, 0x5d, 0x0c, 0x66, 0xa1
|
||||
.byte 0x86, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x03, 0x66
|
||||
.byte 0xa1, 0x84, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43
|
||||
.byte 0x02, 0x66, 0xa1, 0x82, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x89, 0x43, 0x04, 0x66, 0xa1, 0x80, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x89, 0x43, 0x06, 0x66, 0xa1, 0x7e
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43, 0x08, 0x66
|
||||
.byte 0xa1, 0x7c, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43
|
||||
.byte 0x0a, 0x66, 0xa1, 0x7a, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x89, 0x43, 0x0c, 0x9d, 0x0f, 0xa9, 0x0f, 0xa1
|
||||
.byte 0x07, 0x1f, 0x5b, 0x5f, 0x5e, 0xc9, 0xc3, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
/* Total size = 584 -> 592 */
|
||||
/* End of File */
|
|
@ -0,0 +1,73 @@
|
|||
/* $NetBSD: genassym.c,v 1.1 1996/09/13 00:02:39 jtk Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1995 Charles M. Hannum. All rights reserved.
|
||||
* Copyright (c) 1982, 1990 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This code is derived from software contributed to Berkeley by
|
||||
* William Jolitz.
|
||||
*
|
||||
* 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 acknowledgement:
|
||||
* This product includes software developed by the University of
|
||||
* California, Berkeley and its contributors.
|
||||
* 4. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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.
|
||||
*
|
||||
* @(#)genassym.c 5.11 (Berkeley) 5/10/91
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <i386/include/apmvar.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stddef.h>
|
||||
|
||||
int main __P((void));
|
||||
|
||||
int
|
||||
main()
|
||||
{
|
||||
|
||||
#define def(N,V) printf("#define\t%s %d\n", N, V)
|
||||
#define off(N,S,M) def(N, (int)offsetof(S, M))
|
||||
|
||||
off("APM_CODE32", struct apm_connect_info, apm_code32_seg_base);
|
||||
off("APM_CODE16", struct apm_connect_info, apm_code16_seg_base);
|
||||
off("APM_DATA", struct apm_connect_info, apm_data_seg_base);
|
||||
off("APM_CODE32_LEN", struct apm_connect_info, apm_code32_seg_len);
|
||||
off("APM_DATA_LEN", struct apm_connect_info, apm_data_seg_len);
|
||||
off("APM_ENTRY", struct apm_connect_info, apm_entrypt);
|
||||
off("APM_DETAIL", struct apm_connect_info, apm_detail);
|
||||
def("APM_SIZE", sizeof(struct apm_connect_info));
|
||||
off("APMREG_AX", struct apmregs, ax);
|
||||
off("APMREG_BX", struct apmregs, bx);
|
||||
off("APMREG_CX", struct apmregs, cx);
|
||||
off("APMREG_DX", struct apmregs, dx);
|
||||
off("APMREG_SI", struct apmregs, si);
|
||||
off("APMREG_DI", struct apmregs, di);
|
||||
off("APMREG_FLAGS", struct apmregs, flags);
|
||||
exit(0);
|
||||
}
|
|
@ -1,12 +1,17 @@
|
|||
# $NetBSD: Makefile,v 1.4 1996/09/09 18:07:40 mycroft Exp $
|
||||
# $NetBSD: Makefile,v 1.5 1996/09/13 00:02:36 jtk Exp $
|
||||
|
||||
CPPFLAGS= ${APMCPPFLAGS}
|
||||
CFLAGS+= -I${.CURDIR}/../.. -I${.CURDIR}/../../..
|
||||
|
||||
SRCS= biostramp.S
|
||||
OBJS= biostramp.o
|
||||
DEPS= ${APMDEPS}
|
||||
STRIP?= strip
|
||||
|
||||
all: biostramp.inc
|
||||
|
||||
biostramp.inc: biostramp Makefile
|
||||
-mv -f biostramp.inc biostramp.inc.bak
|
||||
sh ${.CURDIR}/bin2asm.sh biostramp > biostramp.inc
|
||||
|
||||
biostramp: ${OBJS} ${DEPS}
|
||||
|
@ -20,8 +25,15 @@ biostramp: ${OBJS} ${DEPS}
|
|||
@sh ${.CURDIR}/rmaouthdr biostramp biostramp.tmp
|
||||
@mv -f biostramp.tmp biostramp
|
||||
|
||||
assym.h: genassym
|
||||
./genassym > assym.h
|
||||
|
||||
biostramp.S: assym.h
|
||||
biostramp.o: biostramp.S
|
||||
${CC} ${CFLAGS} -DASM -D_LOCORE -c biostramp.S
|
||||
|
||||
clean:
|
||||
rm -f *.o biostramp biostramp.sym biostramp.inc
|
||||
rm -f *.o biostramp biostramp.sym biostramp.inc genassym assym.h
|
||||
|
||||
.include <bsd.dep.mk>
|
||||
.include <bsd.subdir.mk>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: biostramp.S,v 1.3 1996/09/09 18:42:51 mycroft Exp $ */
|
||||
/* $NetBSD: biostramp.S,v 1.4 1996/09/13 00:02:38 jtk Exp $ */
|
||||
/*-
|
||||
* Copyright (c) 1996 John T. Kohl. All rights reserved.
|
||||
*
|
||||
|
@ -58,14 +58,14 @@
|
|||
*/
|
||||
|
||||
#include "assym.h"
|
||||
#include "apm.h"
|
||||
#if NAPM > 0
|
||||
#include <machine/param.h>
|
||||
#include <machine/specialreg.h>
|
||||
#include <machine/segments.h>
|
||||
#include <machine/apmvar.h>
|
||||
#include <machine/psl.h>
|
||||
#include <machine/asm.h>
|
||||
|
||||
#include <i386/include/param.h>
|
||||
#include <i386/include/specialreg.h>
|
||||
#include <i386/include/segments.h>
|
||||
#include <i386/include/apmvar.h>
|
||||
#include <i386/include/psl.h>
|
||||
#include <i386/include/asm.h>
|
||||
|
||||
#define addr32 .byte 0x67
|
||||
#define data32 .byte 0x66
|
||||
|
||||
|
@ -331,4 +331,3 @@ x32:
|
|||
IDT_bios: # BIOS IDT descriptor (real-mode)
|
||||
.word 1023
|
||||
.long 0
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,80 @@
|
|||
/* This file is automatically generated by bin2asm.sh */
|
||||
/* Original file is 'biostramp' */
|
||||
|
||||
.byte 0x55, 0x89, 0xe5, 0x56, 0x57, 0x53, 0x1e, 0x06
|
||||
.byte 0x0f, 0xa0, 0x0f, 0xa8, 0x8b, 0x45, 0x08, 0x66
|
||||
.byte 0xa3, 0xe0, 0x1f, 0x00, 0x00, 0x8b, 0x5d, 0x0c
|
||||
.byte 0x66, 0x8b, 0x03, 0x66, 0xa3, 0x86, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x8b, 0x43, 0x02, 0x66, 0xa3, 0x84
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x43, 0x04, 0x66
|
||||
.byte 0xa3, 0x82, 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x43
|
||||
.byte 0x06, 0x66, 0xa3, 0x80, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x8b, 0x43, 0x08, 0x66, 0xa3, 0x7e, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x8b, 0x43, 0x0a, 0x66, 0xa3, 0x7c
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x8b, 0x4b, 0x0c, 0x9c
|
||||
.byte 0x58, 0x25, 0x2a, 0xf1, 0xff, 0xff, 0x81, 0xe1
|
||||
.byte 0xd5, 0x0c, 0x00, 0x00, 0x09, 0xc8, 0x66, 0xa3
|
||||
.byte 0x7a, 0x1f, 0x00, 0x00, 0x9c, 0x0f, 0x01, 0x05
|
||||
.byte 0xf0, 0x1f, 0x00, 0x00, 0x8b, 0x35, 0xf2, 0x1f
|
||||
.byte 0x00, 0x00, 0xbf, 0x88, 0x1f, 0x00, 0x00, 0xb9
|
||||
.byte 0x58, 0x00, 0x00, 0x00, 0xfc, 0xf3, 0xa4, 0x66
|
||||
.byte 0xc7, 0x05, 0xea, 0x1f, 0x00, 0x00, 0x57, 0x00
|
||||
.byte 0xc7, 0x05, 0xec, 0x1f, 0x00, 0x00, 0x88, 0x1f
|
||||
.byte 0x00, 0x00, 0x0f, 0x01, 0x15, 0xea, 0x1f, 0x00
|
||||
.byte 0x00, 0xfa, 0x0f, 0x01, 0x0d, 0xf6, 0x1f, 0x00
|
||||
.byte 0x00, 0x89, 0x25, 0xe6, 0x1f, 0x00, 0x00, 0x89
|
||||
.byte 0x2d, 0xe2, 0x1f, 0x00, 0x00, 0xbc, 0x68, 0x1f
|
||||
.byte 0x00, 0x00, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x0f
|
||||
.byte 0x20, 0xd8, 0xa3, 0xfc, 0x1f, 0x00, 0x00, 0x0f
|
||||
.byte 0x20, 0xc0, 0x25, 0xff, 0xff, 0xff, 0x7f, 0x0f
|
||||
.byte 0x22, 0xc0, 0x31, 0xc0, 0x0f, 0x22, 0xd8, 0x66
|
||||
.byte 0xbb, 0x50, 0x00, 0x66, 0x8e, 0xdb, 0x66, 0x8e
|
||||
.byte 0xc3, 0x66, 0x8e, 0xe3, 0x66, 0x8e, 0xeb, 0xea
|
||||
.byte 0xee, 0x10, 0x00, 0x00, 0x48, 0x00, 0x0f, 0x20
|
||||
.byte 0xc0, 0x66, 0x83, 0xe0, 0xfe, 0x0f, 0x22, 0xc0
|
||||
.byte 0x66, 0xea, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01
|
||||
.byte 0x31, 0xc0, 0x66, 0x8e, 0xd0, 0x66, 0x8c, 0xc8
|
||||
.byte 0x66, 0x8e, 0xc0, 0x66, 0x8e, 0xe0, 0x66, 0x8e
|
||||
.byte 0xe8, 0x66, 0x8e, 0xd8, 0x67, 0x0f, 0x01, 0x1d
|
||||
.byte 0x40, 0x02, 0x00, 0x00, 0x67, 0x8b, 0x3d, 0x7c
|
||||
.byte 0x0f, 0x00, 0x00, 0x67, 0x8b, 0x35, 0x7e, 0x0f
|
||||
.byte 0x00, 0x00, 0x67, 0x8b, 0x15, 0x80, 0x0f, 0x00
|
||||
.byte 0x00, 0x67, 0x8b, 0x0d, 0x82, 0x0f, 0x00, 0x00
|
||||
.byte 0x67, 0x8b, 0x1d, 0x84, 0x0f, 0x00, 0x00, 0x67
|
||||
.byte 0x8a, 0x05, 0xe0, 0x0f, 0x00, 0x00, 0x67, 0x88
|
||||
.byte 0x05, 0x64, 0x01, 0x00, 0x00, 0x66, 0xea, 0x55
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x01, 0x67, 0xa1, 0x7a
|
||||
.byte 0x0f, 0x00, 0x00, 0x50, 0x9d, 0x67, 0xa1, 0x86
|
||||
.byte 0x0f, 0x00, 0x00, 0xcd, 0xff, 0x9c, 0x67, 0xa3
|
||||
.byte 0x86, 0x0f, 0x00, 0x00, 0x67, 0x89, 0x1d, 0x84
|
||||
.byte 0x0f, 0x00, 0x00, 0x67, 0x89, 0x0d, 0x82, 0x0f
|
||||
.byte 0x00, 0x00, 0x67, 0x89, 0x15, 0x80, 0x0f, 0x00
|
||||
.byte 0x00, 0x67, 0x89, 0x35, 0x7e, 0x0f, 0x00, 0x00
|
||||
.byte 0x67, 0x89, 0x3d, 0x7c, 0x0f, 0x00, 0x00, 0x58
|
||||
.byte 0x67, 0xa3, 0x7a, 0x0f, 0x00, 0x00, 0xfa, 0x0f
|
||||
.byte 0x20, 0xc0, 0x66, 0x83, 0xc8, 0x01, 0x0f, 0x22
|
||||
.byte 0xc0, 0x66, 0xea, 0xa9, 0x11, 0x00, 0x00, 0x08
|
||||
.byte 0x00, 0x66, 0xbb, 0x10, 0x00, 0x66, 0x8e, 0xdb
|
||||
.byte 0x66, 0x8e, 0xd3, 0x66, 0x8e, 0xc3, 0xa1, 0xfc
|
||||
.byte 0x1f, 0x00, 0x00, 0x0f, 0x22, 0xd8, 0x0f, 0x20
|
||||
.byte 0xc0, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x0f, 0x22
|
||||
.byte 0xc0, 0x0f, 0x01, 0x15, 0xf0, 0x1f, 0x00, 0x00
|
||||
.byte 0x8b, 0x25, 0xe6, 0x1f, 0x00, 0x00, 0x8b, 0x2d
|
||||
.byte 0xe2, 0x1f, 0x00, 0x00, 0x0f, 0x01, 0x1d, 0xf6
|
||||
.byte 0x1f, 0x00, 0x00, 0x8b, 0x5d, 0x0c, 0x66, 0xa1
|
||||
.byte 0x86, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x03, 0x66
|
||||
.byte 0xa1, 0x84, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43
|
||||
.byte 0x02, 0x66, 0xa1, 0x82, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x89, 0x43, 0x04, 0x66, 0xa1, 0x80, 0x1f, 0x00
|
||||
.byte 0x00, 0x66, 0x89, 0x43, 0x06, 0x66, 0xa1, 0x7e
|
||||
.byte 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43, 0x08, 0x66
|
||||
.byte 0xa1, 0x7c, 0x1f, 0x00, 0x00, 0x66, 0x89, 0x43
|
||||
.byte 0x0a, 0x66, 0xa1, 0x7a, 0x1f, 0x00, 0x00, 0x66
|
||||
.byte 0x89, 0x43, 0x0c, 0x9d, 0x0f, 0xa9, 0x0f, 0xa1
|
||||
.byte 0x07, 0x1f, 0x5b, 0x5f, 0x5e, 0xc9, 0xc3, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
/* Total size = 584 -> 592 */
|
||||
/* End of File */
|
|
@ -0,0 +1,73 @@
|
|||
/* $NetBSD: genassym.c,v 1.1 1996/09/13 00:02:39 jtk Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1995 Charles M. Hannum. All rights reserved.
|
||||
* Copyright (c) 1982, 1990 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This code is derived from software contributed to Berkeley by
|
||||
* William Jolitz.
|
||||
*
|
||||
* 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 acknowledgement:
|
||||
* This product includes software developed by the University of
|
||||
* California, Berkeley and its contributors.
|
||||
* 4. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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.
|
||||
*
|
||||
* @(#)genassym.c 5.11 (Berkeley) 5/10/91
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <i386/include/apmvar.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stddef.h>
|
||||
|
||||
int main __P((void));
|
||||
|
||||
int
|
||||
main()
|
||||
{
|
||||
|
||||
#define def(N,V) printf("#define\t%s %d\n", N, V)
|
||||
#define off(N,S,M) def(N, (int)offsetof(S, M))
|
||||
|
||||
off("APM_CODE32", struct apm_connect_info, apm_code32_seg_base);
|
||||
off("APM_CODE16", struct apm_connect_info, apm_code16_seg_base);
|
||||
off("APM_DATA", struct apm_connect_info, apm_data_seg_base);
|
||||
off("APM_CODE32_LEN", struct apm_connect_info, apm_code32_seg_len);
|
||||
off("APM_DATA_LEN", struct apm_connect_info, apm_data_seg_len);
|
||||
off("APM_ENTRY", struct apm_connect_info, apm_entrypt);
|
||||
off("APM_DETAIL", struct apm_connect_info, apm_detail);
|
||||
def("APM_SIZE", sizeof(struct apm_connect_info));
|
||||
off("APMREG_AX", struct apmregs, ax);
|
||||
off("APMREG_BX", struct apmregs, bx);
|
||||
off("APMREG_CX", struct apmregs, cx);
|
||||
off("APMREG_DX", struct apmregs, dx);
|
||||
off("APMREG_SI", struct apmregs, si);
|
||||
off("APMREG_DI", struct apmregs, di);
|
||||
off("APMREG_FLAGS", struct apmregs, flags);
|
||||
exit(0);
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: Makefile.i386,v 1.74 1996/09/09 21:07:00 mycroft Exp $
|
||||
# $NetBSD: Makefile.i386,v 1.75 1996/09/13 00:02:41 jtk Exp $
|
||||
|
||||
# Makefile for NetBSD
|
||||
#
|
||||
|
@ -145,14 +145,10 @@ links:
|
|||
sed 's,../.*/\(.*.o\),rm -f \1; ln -s ../GENERIC/\1 \1,' > makelinks
|
||||
sh makelinks && rm -f dontlink
|
||||
|
||||
# depend on APM
|
||||
.include "${I386}/apm_init/Makefile.inc"
|
||||
locore.o: ${APMINC}
|
||||
|
||||
SRCS= ${I386}/i386/locore.s \
|
||||
param.c ioconf.c ${CFILES} ${SFILES}
|
||||
depend:: .depend
|
||||
.depend: ${SRCS} assym.h param.c ${APMINC}
|
||||
.depend: ${SRCS} assym.h param.c
|
||||
${MKDEP} ${AFLAGS} ${CPPFLAGS} ${I386}/i386/locore.s
|
||||
${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
|
||||
${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: locore.s,v 1.151 1996/09/08 15:51:39 jtk Exp $ */
|
||||
/* $NetBSD: locore.s,v 1.152 1996/09/13 00:02:43 jtk Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1993, 1994, 1995 Charles M. Hannum. All rights reserved.
|
||||
|
@ -2185,7 +2185,7 @@ _biostramp_image:
|
|||
.globl _biostramp_image
|
||||
|
||||
8:
|
||||
#include "lib/apm_init/biostramp.inc"
|
||||
#include "i386/apm_init/biostramp.inc"
|
||||
9:
|
||||
|
||||
_biostramp_image_size:
|
||||
|
|
Loading…
Reference in New Issue