Wednesday, April 02, 2014

Installing Cromix 172 XXU



This is a detailed step by step procedure on how to install Cromemco Cromix version 172.   To my knowledge version 172  (also known as 40.72) was only compiled for the last and most powerful Motorola 68020 processor.

The good news is that Cromix did not require the Memory Management unit that Cromemco UNIX did mandate. So the pre-requisites are

Prerequisites
S100 Bus computer
Cromemco XXU 68020 Processor Card
Some memory, I am guessing at least 512KB
64FDCX  Diskette Controller
STDX Hard Disk Controller
At least 1, ST506 hard disk connected to the STDCX
8 inch or 3.5" floppy (emulating 8") connected to 64FDCX

Homework
Download/ read the latest version of the Diskette catalog here
Download diskette images for disks 720(boot), 716, 717, 718

There might be other similar disks, see the catalog.txt file

If your system only has 360K 5.25 inch drives it is still possible to follow this procedure but use

204       Cromix 172 bare boot diskette
721-730   ftar restore diskettes

Diskettes are made from the .IMD files using an IBM PC running ImageDisk under DOS,  or if you use an HxC diskette emulator you can use the .HFE files directly  (on a PC formatted SD card inserted into the HxC card slot)



Place New Hard Disk Into Computer
We assume the reader starts with a fresh hard disk. For simplicity we'll assume that you'll create a single partition only with this Operating System on it

Before connecting up the disk note down the number of heads/ cylinders.  After the fact I ran the diskinfo command of Cromix and you will need this kind of information in order to initialise the hard disk

Disk parameters
        Number of heads.................. = 6
        Number of cylinders.............. = 820
        Number of alternate tracks....... = 24
        Location of alternate tracks..... = 816
        Number of sectors per track...... = 20
        Bytes per sector................. = 512
        Start of write precompensation... = 820

        Starting cylinder of disk ....... = 1




Boot from Floppy 0720

On my system the 8" drive (well using 3.5" pseudo) is drive b i.e. fdb


DDOS version 01.04
Co-processor test OK

Preparing to boot Std 31 - type ESC for DDOS prompt
;bb

Address: Memory test by 16K blocks
000000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
100000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
200000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
300000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
400000h: ----------------------------------------------------------------
500000h: ----------------------------------------------------------------

Floppy = 1, STDC = 6, ESDC = 11
Enter major root device number: 1
 fda =  0,  fdb =  1,  fdc =  2,  fdd =  3
sfda =  4, sfdb =  5, sfdc =  6, sfdd =  7
dfda = 16, dfdb = 17, dfdc = 18, dfdd = 19
Enter minor root device number: 1

68020 XXU 172   Cromix-Plus Operating System
20071013 Cromix172 marcus

System initialization complete
Read only file system
Read only file system

XXU Cromix-Plus release 172
The message from /etc/welcome:  Welcome to the Cromix-Plus Operating System
Login: system

Logged in system Feb-17-2036 12:01:22 on console

# time -s
          Sunday, February 17, 2036            12:01:46
DATE (mm/dd/yy): 04/01/114
TIME (hh:mm:ss): 21:25
         Tuesday, April 1, 2014            21:25:00

# d /bin
# ls
access.bin    cptree.bin    h.bin         match.bin     sort.bin
account.bin   crc.bin       help.bin      mode.bin      split.bin
blink.bin     crontab.bin   icheck.bin    more.bin      spool.bin
boot.bin      day.bin       idump.bin     mount.bin     strcmp.bin
ccall.bin     dcheck.bin    initflop.bin  move.bin      tail.bin
cdoscopy.bin  ddump.bin     inithard.bin  msg.bin       tar.bin
cdosfix.bin   deltree.bin   inittape.bin  ncheck.bin    tee.bin
ce.bin        diskinfo.bin  input.bin     pckt.bin      testinp.bin
chowner.bin   dump.bin      ipcrm.bin     pcktunix.com  time.bin
clist.bin     ecc.bin       ipcs.bin      ramdisk.bin   touch.bin
clock.bin     echo.bin      ls.bin        rcopy.bin     tr.bin
cmpasc.bin    ed.bin        lstat.bin     readall.bin   unmount.bin
compare.bin   find.bin      mail.bin      scan.bin      usage.bin
config.bin    flush.bin     makdev.bin    screen.bin    version.bin
convert.bin   free.bin      make.bin      setpri.bin    wboot.bin
convobj.bin   ftar.bin      makfs.bin     sfile.bin     z80.bin
copy.bin      group.bin     maklink.bin   sim.bin




Initialise Hard Disk
# inithard -n
68020 XXU 172   Inithard source 2.8

Press:          RETURN to supply default answers
                CTRL-C to abort program
Warning:        INITHARD can destroy all disk data

Device name? disks/std31

Number of surfaces (1 - 16) <6> ?
Number of cylinders (1 - 4096) <820> ?
    Max number of alternate tracks must be
    a multiple of the number of surfaces
Max number of alternate tracks (0 - 112) <24> ?
Starting cylinder of disk (0 - 820) <1> ?
Starting cylinder for write precomp (0 - 820) <820> ?
Do you want to initialize any tracks (Y/N) <N> y
First cylinder (0 - 976) <0> ?
Last cylinder (0 - 976) <820> ?
First head (0 - 5) <0> ?
Last head (0 - 5) <5> ?
Surface Cylinder
      4       9
...

Do you want to change partition table (Y/N) <N> ? y
Partition 0
Size of partition ? 816
Alternate track location (1 - 819) <816> ?
Do you want to add an alternate track (Y/N) <N> ? n



Check Disk Surface Consistency
With old MFM hard disks it is advisable to keep the temperature stable and to leave the disk spinning for at last 30 minutes. Then in steady state check the readability of the full hard disk surface.

# readall /dev/disks/std31
68020 XXU 172   Readall source 1.17

Reading surfaces 0-5 on cylinders 0-819
Pass    0 Surface  Cylinder
Surface  0, cylinder   3, primitive read error ff 04


Obviously your printout will differ, but note down any bad  cylinder and surface combinations and run inithard a second time and add in the alternate tracks


Allocate any necessary Alternate Tracks
The alternate track table means that known bad surfaces i.e. cylinder and surface pair, are mapped to good areas in the alternative track area, that you declared on initialisation.

# inithard
68020 XXU 172   Inithard source 2.8

Press:          RETURN to supply default answers
                CTRL-C to abort program
Warning:        INITHARD can destroy all disk data

Device name? disks/std31
Number of surfaces (1 - 16) <6> ?
Number of cylinders (1 - 4096) <820> ?
    Max number of alternate tracks must be
    a multiple of the number of surfaces
Max number of alternate tracks (0 - 112) <24> ?
Starting cylinder of disk (0 - 820) <1> ?
Starting cylinder for write precomp (0 - 820) <820> ?
Do you want to initialize any tracks (Y/N) <N> ?
Do you want to change partition table (Y/N) <N> ? n
Alternate track location (1 - 819) <816> ?
Alternate track table
Do you want to add an alternate track (Y/N) <N> ? y
Bad cylinder number (0 - 819) <0> ? 3
Bad head number (0 - 5) <0> ? 0
Bad cylinder number (0 - 819) <0> ?
Bad head number (0 - 5) <0> ?
Alternate track table
  # bad track alt track      # bad track alt track      # bad track alt track
      cyl  hd   cyl  hd          cyl  hd   cyl  hd          cyl  hd   cyl  hd
  0     3   0   816   0     
Do you want to add an alternate track (Y/N) <N> ?
Do you want to delete an alternate track (Y/N) <N> ? n



Create Blank Cromix Partition 
makfs std0

Copy Over Floppy to Hard Disk
creat /hd0
mount std0 /hd0
mode -pa
cptree -ftv / /hd0
/hd0/cromix.sys
/hd0/bin
/hd0/bin/initflop.bin
/hd0/bin/inithard.bin
/hd0/bin/ls.bin
/hd0/bin/copy.bin
/hd0/bin/cptree.bin
/hd0/bin/icheck.bin
/hd0/bin/dcheck.bin
/hd0/bin/rcopy.bin
/hd0/bin/readall.bin
/hd0/bin/version.bin
/hd0/bin/wboot.bin

 ....

/hd0/etc/p_one.bin
/hd0/etc/login.bin
/hd0/etc/login.cmd
/hd0/etc/stdload.bin
/hd0/etc/stdboot
/hd0/etc/sfdboot
/hd0/etc/fdboot
/hd0/etc/level
/hd0/etc/gtty.bin
/hd0/etc/passwd
/hd0/tmp
/hd0/usr
/hd0/da
/hd0/db
/hd0/dc
/hd0/dd
/hd0/hd0

/hd0/hd1



Reboot to Hard Disk

d /
boot /cromix

System shutdown in progress
System shutdown complete
Address: Memory test by 16K blocks
000000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
100000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
200000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
300000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Floppy = 1, STDC = 6, ESDC = 11
Enter major root device number: 6
Enter minor root device number: 0

68020 XXU 172   Cromix-Plus Operating System
20071202 CRO172 ESDI ZIO OCT


System initialization complete

XXU Cromix-Plus release 172
Welcome to mouse house
Login: system

Logged in system Apr-01-2014 21:43:53 on console


Overwrite from Previous ftar Archive 716-718

d /
ftar -xv /dev/disks/ufdb
          0 D Jan 05, 2036 06:28  .
    133,752   Dec 02, 1997 08:43  ./cromix.sys
          0 D Jan 19, 1990 13:08  ./tmp
          0 D Jan 19, 1990 13:08  ./usr
          0 D Jan 19, 1990 13:08  ./usr/lib
      6,656   Nov 01, 1989 16:49  ./usr/lib/ksclib.obj
      1,792   May 19, 1987 12:00  ./usr/lib/kslib.rel
     36,864   Nov 01, 1989 17:02  ./usr/lib/syslib.2.4.obj
     35,328   Nov 01, 1989 17:02  ./usr/lib/syslib.obj
          0 D Jan 19, 1990 13:08  ./usr/bin
          0 D Jan 19, 1990 13:08  ./usr/cron
          0 D Jan 19, 1990 13:08  ./usr/cron/crontabs
          0 D Jan 19, 1990 13:08  ./usr/help
      9,103   Oct 07, 1987 14:46  ./usr/help/access.hlp
      3,124   Oct 08, 1987 14:06  ./usr/help/account.hlp
        267   Jun 02, 1987 10:21  ./usr/help/bak.hlp
      4,427   Oct 07, 1987 14:46  ./usr/help/blink.hlp
      1,813   Jun 02, 1987 10:22  ./usr/help/boot.hlp
      6,413   Jun 08, 1987 08:12  ./usr/help/ccall.hlp
      2,816   May 18, 1987 09:45  ./usr/help/cdoscopy.hlp
        335   May 18, 1987 09:44  ./usr/help/cdosfix.hlp
     29,710   Oct 09, 1987 13:39  ./usr/help/ce.hlp
      1,142   May 11, 1987 12:59  ./usr/help/check.hlp

      1,339   May 18, 1987 09:44  ./usr/help/chowner.hlp


...

Repeat this ftar command for all 3 diskettes

Reboot to check all is correct

d /
boot /cromix

System shutdown in progress
System shutdown complete
Address: Memory test by 16K blocks
000000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
100000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
200000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
300000h: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Floppy = 1, STDC = 6, ESDC = 11
Enter major root device number: 6
Enter minor root device number: 0

68020 XXU 172   Cromix-Plus Operating System
20071202 CRO172 ESDI ZIO OCT


System initialization complete

XXU Cromix-Plus release 172
Welcome to mouse house
Login: system

Logged in system Apr-01-2014 22:43:53 on console


kill -2 1
System shutdown in progress

System shutdown complete


Now your Cromix 172 XXU system is built

Enjoy!


Customisation steps would include rebuilding the Operating System to the parameters you need.   This will be the subject of a further tutorial.


Links