summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/i386/include/biosvar.h33
-rw-r--r--sys/arch/i386/stand/libsa/machdep.c16
2 files changed, 21 insertions, 28 deletions
diff --git a/sys/arch/i386/include/biosvar.h b/sys/arch/i386/include/biosvar.h
index aac981ddcfa..a11f814654b 100644
--- a/sys/arch/i386/include/biosvar.h
+++ b/sys/arch/i386/include/biosvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: biosvar.h,v 1.2 1997/07/27 00:38:46 mickey Exp $ */
+/* $OpenBSD: biosvar.h,v 1.3 1997/07/28 23:04:58 mickey Exp $ */
/*
* Copyright (c) 1997 Michael Shalayeff
@@ -194,30 +194,21 @@
#ifdef _LOCORE
#define DOINT(n) int $0x20+(n)
-#define BIOSR_AX 0x00
-#define BIOSR_CX 0x04
-#define BIOSR_DX 0x08
-#define BIOSR_BX 0x0c
-#define BIOSR_BP 0x10
-#define BIOSR_SI 0x14
-#define BIOSR_DI 0x18
-#define BIOSR_ES 0x1c
-#define BIOSR_CT 0x20
#else
+#define BIOSINT(n) __asm ((int $0x20+(n)))
extern struct BIOS_regs {
- u_int32_t br_ax;
- u_int32_t br_cx;
- u_int32_t br_dx;
- u_int32_t br_bx;
- u_int32_t br_bp;
- u_int32_t br_si;
- u_int32_t br_di;
- u_int32_t br_es;
+ u_int32_t biosr_ax;
+ u_int32_t biosr_cx;
+ u_int32_t biosr_dx;
+ u_int32_t biosr_bx;
+ u_int32_t biosr_bp;
+ u_int32_t biosr_si;
+ u_int32_t biosr_di;
+ u_int32_t biosr_ds;
+ u_int32_t biosr_es;
} BIOS_regs;
-#define BIOSINT(n) __asm ((int $0x20+(n)))
-
int kentry __P((u_int, void *));
#ifdef _KERNEL
@@ -225,6 +216,8 @@ struct bios_attach_args {
char *bios_busname;
};
+struct consdev;
+
void bioscnprobe __P((struct consdev *));
void bioscninit __P((struct consdev *));
void bioscnputc __P((dev_t, int));
diff --git a/sys/arch/i386/stand/libsa/machdep.c b/sys/arch/i386/stand/libsa/machdep.c
index c53b47a371c..863bc6e2459 100644
--- a/sys/arch/i386/stand/libsa/machdep.c
+++ b/sys/arch/i386/stand/libsa/machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: machdep.c,v 1.3 1997/07/21 15:41:55 mickey Exp $ */
+/* $OpenBSD: machdep.c,v 1.4 1997/07/28 23:04:59 mickey Exp $ */
/*
* Copyright (c) 1997 Michael Shalayeff
@@ -54,7 +54,7 @@ machdep()
#ifdef DEBUG
*(u_int16_t*)0xb8148 = 0x4f31;
#endif
-#if 0
+#ifdef BOOT_APM
printf("apm_init: ");
switch(apminfo.apm_detail = apm_init()) {
case APMINI_CANTFIND:
@@ -75,17 +75,17 @@ machdep()
default:
/* valid: detail, dx, bx */
- apminfo.apm_code32_seg_base = (BIOS_regs.br_ax & 0xffff) << 4;
- apminfo.apm_code16_seg_base = (BIOS_regs.br_cx & 0xffff) << 4;
- apminfo.apm_data_seg_base = (BIOS_regs.br_dx & 0xffff) << 4;
+ apminfo.apm_code32_seg_base = (BIOS_regs.biosr_ax & 0xffff)<< 4;
+ apminfo.apm_code16_seg_base = (BIOS_regs.biosr_cx & 0xffff)<< 4;
+ apminfo.apm_data_seg_base = (BIOS_regs.biosr_dx & 0xffff)<< 4;
#if 0
- apminfo.apm_code32_seg_len = BIOS_regs.br_si & 0xffff;
- apminfo.apm_data_seg_len = BIOS_regs.br_di & 0xffff;
+ apminfo.apm_code32_seg_len = BIOS_regs.biosr_si & 0xffff;
+ apminfo.apm_data_seg_len = BIOS_regs.biosr_di & 0xffff;
#else
apminfo.apm_code32_seg_len = 0x10000;
apminfo.apm_data_seg_len = 0x10000;
#endif
- apminfo.apm_entrypt = BIOS_regs.br_bx;
+ apminfo.apm_entrypt = BIOS_regs.biosr_bx;
#ifdef DEBUG
printf("%x text=%x/%x[%x] data=%x[%x] @ %x",
apminfo.apm_detail,