ast@cs.vu.nl (Andy Tanenbaum) (09/28/88)
: This is a shar archive. Extract with sh, not csh.
: This archive ends with exit, so do not worry about trailing junk.
: --------------------------- cut here --------------------------
PATH=/bin:/usr/bin:/usr/ucb
echo Extracting 'LISTING'
sed 's/^X//' > 'LISTING' << '+ END-OF-FILE ''LISTING'
Xtotal 8
X-rw-r--r-- 1 ast 1833 Sep 26 22:51 at_makefile
X-rw-r--r-- 1 ast 1715 Sep 26 22:51 exec.c.cdif
X-rw-r--r-- 1 ast 375 Sep 26 22:51 forkexit.c.cdif
X-rw-r--r-- 1 ast 1890 Sep 26 22:51 pc_makefile
X-rw-r--r-- 1 ast 323 Sep 26 22:51 signal.c.cdif
+ END-OF-FILE LISTING
chmod 'u=rw,g=r,o=r' 'LISTING'
set `wc -c 'LISTING'`
count=$1
case $count in
299) :;;
*) echo 'Bad character count in ''LISTING' >&2
echo 'Count should be 299' >&2
esac
echo Extracting 'at_makefile'
sed 's/^X//' > 'at_makefile' << '+ END-OF-FILE ''at_makefile'
X# On a PC, cpp and cem are in /lib and will be removed to make space while
X# linking the kernel. On an AT, they are in /usr/lib are are not removed.
X# This is because they have to be in /lib on a PC; the diskette is too small
X# for them to be in /usr/lib.
X#
X
Xh=../h
Xl=/usr/lib
XCFLAGS = -Di8088 -F -T.
X
Xobj = main.s forkexit.s break.s exec.s signal.s getset.s \
X alloc.s utility.s table.s putc.s
X
Xmm: makefile $l/head.s $(obj) $l/libc.a $l/end.s
X @echo "Start linking MM."
X @asld -o mm -T. $l/head.s $(obj) $l/libc.a $l/end.s
X @echo "MM done. "
X
Xclean:
X rm -f $(obj)
X
Xalloc.s: const.h $h/const.h $h/type.h
X
Xbreak.s: const.h $h/const.h $h/type.h
Xbreak.s: $h/error.h
Xbreak.s: $h/signal.h
Xbreak.s: glo.h
Xbreak.s: mproc.h
Xbreak.s: param.h
X
Xexec.s: const.h $h/const.h $h/type.h
Xexec.s: $h/callnr.h
Xexec.s: $h/error.h
Xexec.s: $h/stat.h
Xexec.s: glo.h
Xexec.s: mproc.h
Xexec.s: param.h
X
Xforkexit.s: const.h $h/const.h $h/type.h
Xforkexit.s: $h/callnr.h
Xforkexit.s: $h/error.h
Xforkexit.s: glo.h
Xforkexit.s: mproc.h
Xforkexit.s: param.h
X
Xgetset.s: const.h $h/const.h $h/type.h
Xgetset.s: $h/callnr.h
Xgetset.s: $h/error.h
Xgetset.s: glo.h
Xgetset.s: mproc.h
Xgetset.s: param.h
X
Xmain.s: const.h $h/const.h $h/type.h
Xmain.s: $h/callnr.h
Xmain.s: $h/com.h
Xmain.s: $h/error.h
Xmain.s: glo.h
Xmain.s: mproc.h
Xmain.s: param.h
X
Xputc.s: $h/const.h $h/type.h
Xputc.s: $h/com.h
X
Xsignal.s: const.h $h/const.h $h/type.h
Xsignal.s: $h/callnr.h
Xsignal.s: $h/com.h
Xsignal.s: $h/error.h
Xsignal.s: $h/signal.h
Xsignal.s: $h/stat.h
Xsignal.s: glo.h
Xsignal.s: mproc.h
Xsignal.s: param.h
X
Xtable.s: const.h $h/const.h $h/type.h
Xtable.s: $h/callnr.h
Xtable.s: glo.h
Xtable.s: mproc.h
Xtable.s: param.h
X
Xutility.s: const.h $h/const.h $h/type.h
Xutility.s: $h/callnr.h
Xutility.s: $h/com.h
Xutility.s: $h/error.h
Xutility.s: $h/stat.h
Xutility.s: glo.h
Xutility.s: mproc.h
+ END-OF-FILE at_makefile
chmod 'u=rw,g=r,o=r' 'at_makefile'
set `wc -c 'at_makefile'`
count=$1
case $count in
1833) :;;
*) echo 'Bad character count in ''at_makefile' >&2
echo 'Count should be 1833' >&2
esac
echo Extracting 'exec.c.cdif'
sed 's/^X//' > 'exec.c.cdif' << '+ END-OF-FILE ''exec.c.cdif'
X*** /local/ast/minix/tape3b/mm/exec.c Wed Jul 13 11:50:13 1988
X--- exec.c Mon Sep 26 13:03:53 1988
X***************
X*** 76,82 ****
X
X /* Read the file header and extract the segment sizes. */
X sc = (stk_bytes + CLICK_SIZE - 1) >> CLICK_SHIFT;
X! m = read_header(fd, &ft, &text_bytes, &data_bytes, &bss_bytes, &tot_bytes, &sym_bytes, sc);
X if (m < 0) {
X close(fd); /* something wrong with header */
X return(ENOEXEC);
X--- 76,83 ----
X
X /* Read the file header and extract the segment sizes. */
X sc = (stk_bytes + CLICK_SIZE - 1) >> CLICK_SHIFT;
X! m = read_header(fd, &ft, &text_bytes, &data_bytes, &bss_bytes,
X! &tot_bytes, &sym_bytes, sc);
X if (m < 0) {
X close(fd); /* something wrong with header */
X return(ENOEXEC);
X***************
X*** 142,148 ****
X /*===========================================================================*
X * read_header *
X *===========================================================================*/
X! PRIVATE int read_header(fd, ft, text_bytes, data_bytes, bss_bytes, tot_bytes, sym_bytes, sc)
X int fd; /* file descriptor for reading exec file */
X int *ft; /* place to return ft number */
X vir_bytes *text_bytes; /* place to return text size */
X--- 143,150 ----
X /*===========================================================================*
X * read_header *
X *===========================================================================*/
X! PRIVATE int read_header(fd, ft, text_bytes, data_bytes, bss_bytes,
X! tot_bytes, sym_bytes, sc)
X int fd; /* file descriptor for reading exec file */
X int *ft; /* place to return ft number */
X vir_bytes *text_bytes; /* place to return text size */
+ END-OF-FILE exec.c.cdif
chmod 'u=rw,g=r,o=r' 'exec.c.cdif'
set `wc -c 'exec.c.cdif'`
count=$1
case $count in
1715) :;;
*) echo 'Bad character count in ''exec.c.cdif' >&2
echo 'Count should be 1715' >&2
esac
echo Extracting 'forkexit.c.cdif'
sed 's/^X//' > 'forkexit.c.cdif' << '+ END-OF-FILE ''forkexit.c.cdif'
X*** /local/ast/minix/tape3b/mm/forkexit.c Wed Jul 13 11:50:14 1988
X--- forkexit.c Mon Sep 26 13:03:54 1988
X***************
X*** 254,262 ****
X register struct mproc *parent, *rp;
X int init_waiting, child_nr;
X unsigned int r;
X- #ifndef ATARI_ST
X- phys_clicks s;
X- #endif
X
X child_nr = (int)(child - mproc);
X parent = &mproc[child->mp_parent];
X--- 254,259 ----
+ END-OF-FILE forkexit.c.cdif
chmod 'u=rw,g=r,o=r' 'forkexit.c.cdif'
set `wc -c 'forkexit.c.cdif'`
count=$1
case $count in
375) :;;
*) echo 'Bad character count in ''forkexit.c.cdif' >&2
echo 'Count should be 375' >&2
esac
echo Extracting 'pc_makefile'
sed 's/^X//' > 'pc_makefile' << '+ END-OF-FILE ''pc_makefile'
X# On a PC, cpp and cem are in /lib and will be removed to make space while
X# linking the kernel. On an AT, they are in /usr/lib are are not removed.
X# This is because they have to be in /lib on a PC; the diskette is too small
X# for them to be in /usr/lib.
X#
X
Xh=../h
Xl=/usr/lib
XCFLAGS = -Di8088 -F -T.
X
Xobj = main.s forkexit.s break.s exec.s signal.s getset.s \
X alloc.s utility.s table.s putc.s
X
Xmm: makefile $l/head.s $(obj) $l/libc.a $l/end.s
X @echo "Start linking MM."
X @echo "If disk fills up, remove some files"
X @asld -o mm -T. $l/head.s $(obj) $l/libc.a $l/end.s
X @mv /mm mm
X @echo "MM done. "
X
Xclean:
X rm -f $(obj)
X
Xalloc.s: const.h $h/const.h $h/type.h
X
Xbreak.s: const.h $h/const.h $h/type.h
Xbreak.s: $h/error.h
Xbreak.s: $h/signal.h
Xbreak.s: glo.h
Xbreak.s: mproc.h
Xbreak.s: param.h
X
Xexec.s: const.h $h/const.h $h/type.h
Xexec.s: $h/callnr.h
Xexec.s: $h/error.h
Xexec.s: $h/stat.h
Xexec.s: glo.h
Xexec.s: mproc.h
Xexec.s: param.h
X
Xforkexit.s: const.h $h/const.h $h/type.h
Xforkexit.s: $h/callnr.h
Xforkexit.s: $h/error.h
Xforkexit.s: glo.h
Xforkexit.s: mproc.h
Xforkexit.s: param.h
X
Xgetset.s: const.h $h/const.h $h/type.h
Xgetset.s: $h/callnr.h
Xgetset.s: $h/error.h
Xgetset.s: glo.h
Xgetset.s: mproc.h
Xgetset.s: param.h
X
Xmain.s: const.h $h/const.h $h/type.h
Xmain.s: $h/callnr.h
Xmain.s: $h/com.h
Xmain.s: $h/error.h
Xmain.s: glo.h
Xmain.s: mproc.h
Xmain.s: param.h
X
Xputc.s: $h/const.h $h/type.h
Xputc.s: $h/com.h
X
Xsignal.s: const.h $h/const.h $h/type.h
Xsignal.s: $h/callnr.h
Xsignal.s: $h/com.h
Xsignal.s: $h/error.h
Xsignal.s: $h/signal.h
Xsignal.s: $h/stat.h
Xsignal.s: glo.h
Xsignal.s: mproc.h
Xsignal.s: param.h
X
Xtable.s: const.h $h/const.h $h/type.h
Xtable.s: $h/callnr.h
Xtable.s: glo.h
Xtable.s: mproc.h
Xtable.s: param.h
X
Xutility.s: const.h $h/const.h $h/type.h
Xutility.s: $h/callnr.h
Xutility.s: $h/com.h
Xutility.s: $h/error.h
Xutility.s: $h/stat.h
Xutility.s: glo.h
Xutility.s: mproc.h
+ END-OF-FILE pc_makefile
chmod 'u=rw,g=r,o=r' 'pc_makefile'
set `wc -c 'pc_makefile'`
count=$1
case $count in
1890) :;;
*) echo 'Bad character count in ''pc_makefile' >&2
echo 'Count should be 1890' >&2
esac
echo Extracting 'signal.c.cdif'
sed 's/^X//' > 'signal.c.cdif' << '+ END-OF-FILE ''signal.c.cdif'
X*** /local/ast/minix/tape3b/mm/signal.c Wed Jul 13 11:50:15 1988
X--- signal.c Mon Sep 26 13:03:56 1988
X***************
X*** 349,355 ****
X char buf[DUMP_SIZE];
X int i, r, s, er1, er2, slot;
X vir_bytes v_buf;
X- long len;
X long a, c, ct, dest;
X struct mproc *xmp;
X extern char core_name[];
X--- 349,354 ----
+ END-OF-FILE signal.c.cdif
chmod 'u=rw,g=r,o=r' 'signal.c.cdif'
set `wc -c 'signal.c.cdif'`
count=$1
case $count in
323) :;;
*) echo 'Bad character count in ''signal.c.cdif' >&2
echo 'Count should be 323' >&2
esac
exit 0