1. It is now possible to build a kernel that does not have a pc0 device driver.

2. "press any key to reboot" reads the key from the console.
3. wddump() still needs a non-blocking getc() routine (or flush)
This commit is contained in:
deraadt 1993-05-28 09:10:52 +00:00
parent a5a32a3cd7
commit 2adecf84f6
7 changed files with 53 additions and 30 deletions

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)isa.c 7.2 (Berkeley) 5/13/91
* $Id: isa.c,v 1.13 1993/05/22 08:01:27 cgd Exp $
* $Id: isa.c,v 1.14 1993/05/28 09:10:52 deraadt Exp $
*/
/*
@ -64,6 +64,10 @@
#include "i386/isa/ic/i8237.h"
#include "i386/isa/ic/i8042.h"
/* sorry, has to be here, no place else really suitable */
#include "machine/pc/display.h"
u_short *Crtat = (u_short *)MONO_BUF;
/*
** Register definitions for DMA controller 1 (channels 0..3):
*/

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)isa.h 5.7 (Berkeley) 5/9/91
* $Id: isa.h,v 1.5 1993/05/22 08:01:28 cgd Exp $
* $Id: isa.h,v 1.6 1993/05/28 09:10:53 deraadt Exp $
*/
/*
@ -181,3 +181,10 @@ unsigned kbd_8042cmd(int);
#define WEITEK_FPU 0xC0000000 /* WTL 2167 */
#define CYRIX_EMC 0xC0000000 /* Cyrix EMC */
#endif COMPAQ_RAMRELOC
/* stuff that used to be in pccons.c */
#define MONO_BASE 0x3B4
#define MONO_BUF 0xfe0B0000
#define CGA_BASE 0x3D4
#define CGA_BUF 0xfe0B8000
#define IOPHYSMEM 0xA0000

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)pccons.c 5.11 (Berkeley) 5/21/91
* $Id: pccons.c,v 1.18 1993/05/26 10:11:07 deraadt Exp $
* $Id: pccons.c,v 1.19 1993/05/28 09:10:55 deraadt Exp $
*/
/*
@ -60,12 +60,18 @@
#include "i386/isa/kbd.h"
#include "machine/pc/display.h"
#include "pc.h"
#if NPC > 0
extern u_short *Crtat;
#ifdef XSERVER /* 15 Aug 92*/
int pc_xmode;
#endif /* XSERVER */
struct tty pccons;
struct tty *pccons_tty = &pccons;
struct tty **pc_tty = &pccons_tty;
struct pcconsoftc {
char cs_flags;
@ -112,14 +118,8 @@ struct isa_driver pcdriver = {
#define COL 80
#define ROW 25
#define CHR 2
#define MONO_BASE 0x3B4
#define MONO_BUF 0xfe0B0000
#define CGA_BASE 0x3D4
#define CGA_BUF 0xfe0B8000
#define IOPHYSMEM 0xA0000
static unsigned int addr_6845 = MONO_BASE;
u_short *Crtat = (u_short *)MONO_BUF;
static openf;
char *sgetc __P((int));
@ -1713,8 +1713,6 @@ dprintf(flgs, fmt /*, va_alist */)
__color = 0;
}
consinit() {}
int pcmmap(dev_t dev, int offset, int nprot)
{
if (offset > 0x20000)
@ -1753,6 +1751,4 @@ pc_xmode_off ()
}
#endif /* XSERVER*/
/*
* EOF -- File has not been truncated
*/
#endif /* NPC > 0 */

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)wd.c 7.2 (Berkeley) 5/9/91
* $Id: wd.c,v 1.15 1993/05/22 08:01:43 cgd Exp $
* $Id: wd.c,v 1.16 1993/05/28 09:10:57 deraadt Exp $
*/
/* Note: This code heavily modified by tih@barsoom.nhh.no; use at own risk! */
@ -1395,9 +1395,11 @@ wddump(dev_t dev)
addr = (char *) 0; /* starting address */
/* toss any characters present prior to dump */
while (sgetc(1))
#if DO_NOT_KNOW_HOW
/* toss any characters present prior to dump, ie. non-blocking getc */
while (cngetc())
;
#endif
/* size of memory to dump */
num = Maxmem;
@ -1532,9 +1534,11 @@ wddump(dev_t dev)
blknum++;
(int) addr += 512;
/* operator aborting dump? */
if (sgetc(1))
#if DO_NOT_KNOW_HOW
/* operator aborting dump? non-blocking getc() */
if (cngetc())
return(EINTR);
#endif
}
return(0);
}

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)wd.c 7.2 (Berkeley) 5/9/91
* $Id: wd.c,v 1.15 1993/05/22 08:01:43 cgd Exp $
* $Id: wd.c,v 1.16 1993/05/28 09:10:57 deraadt Exp $
*/
/* Note: This code heavily modified by tih@barsoom.nhh.no; use at own risk! */
@ -1395,9 +1395,11 @@ wddump(dev_t dev)
addr = (char *) 0; /* starting address */
/* toss any characters present prior to dump */
while (sgetc(1))
#if DO_NOT_KNOW_HOW
/* toss any characters present prior to dump, ie. non-blocking getc */
while (cngetc())
;
#endif
/* size of memory to dump */
num = Maxmem;
@ -1532,9 +1534,11 @@ wddump(dev_t dev)
blknum++;
(int) addr += 512;
/* operator aborting dump? */
if (sgetc(1))
#if DO_NOT_KNOW_HOW
/* operator aborting dump? non-blocking getc() */
if (cngetc())
return(EINTR);
#endif
}
return(0);
}

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)isa.c 7.2 (Berkeley) 5/13/91
* $Id: isa.c,v 1.13 1993/05/22 08:01:27 cgd Exp $
* $Id: isa.c,v 1.14 1993/05/28 09:10:52 deraadt Exp $
*/
/*
@ -64,6 +64,10 @@
#include "i386/isa/ic/i8237.h"
#include "i386/isa/ic/i8042.h"
/* sorry, has to be here, no place else really suitable */
#include "machine/pc/display.h"
u_short *Crtat = (u_short *)MONO_BUF;
/*
** Register definitions for DMA controller 1 (channels 0..3):
*/

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)wd.c 7.2 (Berkeley) 5/9/91
* $Id: wd.c,v 1.15 1993/05/22 08:01:43 cgd Exp $
* $Id: wd.c,v 1.16 1993/05/28 09:10:57 deraadt Exp $
*/
/* Note: This code heavily modified by tih@barsoom.nhh.no; use at own risk! */
@ -1395,9 +1395,11 @@ wddump(dev_t dev)
addr = (char *) 0; /* starting address */
/* toss any characters present prior to dump */
while (sgetc(1))
#if DO_NOT_KNOW_HOW
/* toss any characters present prior to dump, ie. non-blocking getc */
while (cngetc())
;
#endif
/* size of memory to dump */
num = Maxmem;
@ -1532,9 +1534,11 @@ wddump(dev_t dev)
blknum++;
(int) addr += 512;
/* operator aborting dump? */
if (sgetc(1))
#if DO_NOT_KNOW_HOW
/* operator aborting dump? non-blocking getc() */
if (cngetc())
return(EINTR);
#endif
}
return(0);
}