Disk 1: command1.tar.Z /usr/src/command (main directory) command2.tar.Z /usr/src/command (subdirectories) Disk 2: man.tar.Z /usr/man bin.tar.Z /usr/bin (compiled for 80286) Disk 3: * aux.tar.Z /usr/src/aux (minix 1.3 changemem script) bin_lib.tar.Z /usr/lib (libc.a compiled for 80286) doc.tar.Z /usr/doc etc.tar.Z /usr/src/etc fs.tar.Z /usr/src/fs include.tar.Z /usr/include (includes minix and sys subdirs) kernel.tar.Z /usr/src/kernel lib.tar.Z /usr/src/lib (about 5 subdirectories) * local.tar.Z /usr/local/bin (my stuff) mm.tar.Z /usr/src/mm * rfs.tar.Z /usr/src/rfs (my root filesystem prototype & binaries) test.tar.Z /usr/test tools.tar.Z /usr/src/tools What you have are a bunch of compressed tar files. To install Minix 1.5.5, make a disk partition (start it on an even-numbered cylinder), and make each of the directories listed above. Then, cd to each directory and unpack the tar: cd /usr/src/mm ; zcat /user/mm.tar.Z tar x - To get this working, zcat has to be a link to compress, and mkdir has to be put in /bin. Notes: Some of these files are changed from the official 1.5.5 posting. In all cases, the original file has an "O." prefix. Thus, /usr/src/kernel/O.Makefile is the official 1.5.5 kernel Makefile. There are two places in the sources where you want to worry about whether your target is an 8088, a 286, or a 386: /usr/include/minix/config.h and /usr/src/lib/string/Makefile. To get de to work right, you need to compile and link termcap.c directly in. (as opposed to letting asld find termcap.s in libc.a) Why this is, I dunno. /usr/src/command/de/Makefile does NOT reflect this change. The rfs directory is the place where I build my root filesystems. Just cd /usr/src/rfs and do a mkfs /dev/at0 rfs.proto. The files for the root file system will be read from /usr/src/rfs/root. In the second line of the prototype file, the 384 can be changed to give a bigger or smaller root file system. How to rebuild the library: 1) mkdir /usr/src/lib/bin 2) in /usr/src/lib/bin , do an ar x on the old libc.a. This is needed to get the ACK compiler routines. 3) in /usr/src/lib/ansi, other, and posix, compile all the .c's to .s's and move the .s's to bin 4) in /usr/src/lib/ibm, compile the .c's and move the .s's. Libpack the .s's already there (but not the ones you generate) and put them in bin. 5) go to /usr/src/lib/string. Set the correct CPU type in the Makefile, and do a "make object". Move the .s files to ../bin 6) delete the memcpy.s in the bin directory. One of the string routines replaces this binary. 7) you are now ready to order your library. In /usr/src/lib/bin, execute lorder *.s > ../order.partial 8) Sort your partial ordering: tsort ../order.partial > ../order.total 9) build the library: mv /usr/lib/libc.a /usr/lib/libc.old ar r /usr/lib/libc.a for i in `cat ../order.total` do ar q /usr/lib/libc.a $i done Something like the above 9 steps should re-build a valid MINIX 1.5.5 library. DO NOT USE THE MINIX 1.5.5 ast. USE THE 1.3 ast binary