From 0e70a37f56a5415788da1bd377ad66164ae43a4f Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Fri, 11 Dec 1992 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1992-12-11 --- pc/fns.h | 2 ++ pc/l.s | 22 ++++++++++++++++++++++ pc/mem.h | 2 +- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/pc/fns.h b/pc/fns.h index fa1e15147f57400b0052bd36f7edee03fea8d904..6553720c6e27a8386ea5a6b095c7603dd02a2457 100644 --- a/pc/fns.h +++ b/pc/fns.h @@ -29,6 +29,7 @@ void i8042reset(void); void ident(void); void idle(void); int inb(int); +void insb(int, void*, int); ushort ins(int); void inss(int, void*, int); void insl(int, void*, int); @@ -43,6 +44,7 @@ int modem(int); void mousectl(char*); uchar nvramread(int); void outb(int, int); +void outsb(int, void*, int); void outs(int, ushort); void outss(int, void*, int); void outsl(int, void*, int); diff --git a/pc/l.s b/pc/l.s index 6f5e79be8911b0a22c4016e013ea3497ad2d2ddb..751a69b2a3f1ffda3160c23fe8610462a4b6e66d 100644 --- a/pc/l.s +++ b/pc/l.s @@ -209,6 +209,17 @@ TEXT inb(SB),$0 INB RET +/* + * input a string of bytes from a port + */ +TEXT insb(SB),$0 + + MOVL p+0(FP),DX + MOVL a+4(FP),DI + MOVL c+8(FP),CX + CLD; REP; INSB + RET + /* * output a byte */ @@ -219,6 +230,17 @@ TEXT outb(SB),$0 OUTB RET +/* + * output a string of bytes to a port + */ +TEXT outsb(SB),$0 + + MOVL p+0(FP),DX + MOVL a+4(FP),SI + MOVL c+8(FP),CX + CLD; REP; OUTSB + RET + /* * input a short from a port */ diff --git a/pc/mem.h b/pc/mem.h index 768fbe13d51532352540ecc1ceb6a51c8ca205eb..a8c10f527529ae14a0ff3cc62eb7d38ef20246de 100644 --- a/pc/mem.h +++ b/pc/mem.h @@ -100,7 +100,7 @@ * virtual MMU */ #define PTEMAPMEM (1024*1024) -#define SEGMAPSIZE 64 +#define SEGMAPSIZE 16 #define PTEPERTAB (PTEMAPMEM/BY2PG) #define PPN(x) ((x)&~(BY2PG-1))