File:  [Power 6/32 Unix Tahoe 4.2BSD] / cci / dev / MAKEDEV
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs
Sun Jul 28 12:30:13 2019 UTC (6 years, 11 months ago) by root
Branches: bsd, MAIN
CVS tags: v121, HEAD
Power 6/32 Unix version 1.21

#! /bin/sh
#	@(#)MAKEDEV	4.16	7/23/83
#
# Device "make" file.  Valid arguments:
#	std	standard devices
#	local	configuration specific devices
# Tapes:
#	cy*	Cipher
# Disks:
#	fsd*	VDDC 160Mb FSD
#	smd*	VDDC 300Mb SMD
#	xfd*	VDDC 340Mb XFSD
#	fuj*	VDDC 360Mb Fujitsu
#	xsd*	VDDC 515Mb XFSD
# Terminal multiplexors:
#	vx*	VIOC
# Pseudo terminals:
#	pty*	set of 32 master and slave pseudo terminals
# Printers:
# Call units:
# Special purpose devices:
umask 77
for i
do
case $i in

std)
	/etc/mknod CP		c 0 0
	/etc/mknod console	c 0 1
	/etc/mknod remote	c 0 2
	/etc/mknod drum 	c 8 0	; chmod 644 drum
	/etc/mknod vmem 	c 3 3	; chmod 644 vmem
	/etc/mknod kmem 	c 3 1	; chmod 644 kmem
	/etc/mknod mem		c 3 0	; chmod 644 mem
	/etc/mknod null 	c 3 2	; chmod 666 null
	/etc/mknod tty		c 2 0	; chmod 666 tty
	;;

cy*)
	umask 0 ; unit=`expr $i : '..\(.*\)'`
	case $i in
	cy*) blk=3; chr=7 ;;
	esac
	case $unit in
	0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15)
		u8=`expr $unit + 128`
		/etc/mknod cy"$unit"s	b $blk $unit; ln cy"$unit"s mt$unit
		/etc/mknod ncy"$unit"s	b $blk $u8; ln ncy"$unit"s nmt$unit
		/etc/mknod rcy"$unit"s	c $chr $unit; ln rcy"$unit"s rmt$unit
		/etc/mknod rncy"$unit"s c $chr $u8; ln rncy"$unit"s nrmt$unit
		/etc/mknod cy"$unit"f	b $blk $unit
		/etc/mknod ncy"$unit"f	b $blk $u8
		/etc/mknod rcy"$unit"f	c $chr $unit
		/etc/mknod rncy"$unit"f c $chr $u8
		umask 77
		;;
	*)
		echo bad unit for tape in: $1
		;;
	esac
	;;

fsd*|smd*|xfd*|fuj*|xsd*)
	unit=`expr $i : '...\(.*\)'`
	case $i in
	fsd*) name=fsd; blk=1; chr=5;;
	smd*) name=smd; blk=1; chr=5;;
	xfd*) name=xfd; blk=1; chr=5;;
	fuj*) name=fuj; blk=1; chr=5;;
	xsd*) name=xsd; blk=1; chr=5;;
	esac
	case $unit in
	0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f|10|11|12|13|14|15|16|17|18|19|1a|1b|1c|1d|1e|1f)
		case $unit in
		a) u=10 ;;
		b) u=11 ;;
		c) u=12 ;;
		d) u=13 ;;
		e) u=14 ;;
		f) u=15 ;;
		10) u=16 ;;
		11) u=17 ;;
		12) u=18 ;;
		13) u=19 ;;
		14) u=20 ;;
		15) u=21 ;;
		16) u=22 ;;
		17) u=23 ;;
		18) u=24 ;;
		19) u=25 ;;
		1a) u=26 ;;
		1b) u=27 ;;
		1c) u=28 ;;
		1d) u=29 ;;
		1e) u=30 ;;
		1f) u=31 ;;
		*) u=$unit ;;
		esac

		/etc/mknod ${name}${unit}a	b $blk `expr $u '*' 8 + 0`
		/etc/mknod ${name}${unit}b	b $blk `expr $u '*' 8 + 1`
		/etc/mknod ${name}${unit}c	b $blk `expr $u '*' 8 + 2`
		/etc/mknod ${name}${unit}d	b $blk `expr $u '*' 8 + 3`
		/etc/mknod ${name}${unit}e	b $blk `expr $u '*' 8 + 4`
		/etc/mknod ${name}${unit}f	b $blk `expr $u '*' 8 + 5`
		/etc/mknod ${name}${unit}g	b $blk `expr $u '*' 8 + 6`
		/etc/mknod ${name}${unit}h	b $blk `expr $u '*' 8 + 7`

		/etc/mknod r${name}${unit}a	c $chr `expr $u '*' 8 + 0`
		/etc/mknod r${name}${unit}b	c $chr `expr $u '*' 8 + 1`
		/etc/mknod r${name}${unit}c	c $chr `expr $u '*' 8 + 2`
		/etc/mknod r${name}${unit}d	c $chr `expr $u '*' 8 + 3`
		/etc/mknod r${name}${unit}e	c $chr `expr $u '*' 8 + 4`
		/etc/mknod r${name}${unit}f	c $chr `expr $u '*' 8 + 5`
		/etc/mknod r${name}${unit}g	c $chr `expr $u '*' 8 + 6`
		/etc/mknod r${name}${unit}h	c $chr `expr $u '*' 8 + 7`

		chmod 644 ${name}${unit}a
		chmod 644 ${name}${unit}b
		chmod 644 ${name}${unit}c
		chmod 644 ${name}${unit}d
		chmod 644 ${name}${unit}e
		chmod 644 ${name}${unit}f
		chmod 644 ${name}${unit}g
		chmod 644 ${name}${unit}h
		chmod 644 r${name}${unit}a
		chmod 644 r${name}${unit}b
		chmod 644 r${name}${unit}c
		chmod 644 r${name}${unit}d
		chmod 644 r${name}${unit}e
		chmod 644 r${name}${unit}f
		chmod 644 r${name}${unit}g
		chmod 644 r${name}${unit}h
		;;
	*)
		echo bad unit for disk in: $i
		;;
	esac
	;;

vx*)
	unit=`expr $i : 'vx\(.*\)'`
	case $unit in
	0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)
		case $unit in
		a) un=10 ;;
		b) un=11 ;;
		c) un=12 ;;
		d) un=13 ;;
		e) un=14 ;;
		f) un=15 ;;
		*) un=$unit ;;
		esac
		eval `echo $un | awk ' { u = $1 } END {
		    for (i = 0; i < 16; i++)
			printf("/etc/mknod tty%02x c 1 %d; ",u*16+i,u*16+i); }'`

		ls -1 tty?? | grep [A-F] | while read x; do
			y=`echo $x|sed "y/ABCDEF/abcdef/"|sed "s/ttyd/ttyD/"`
			mv $x $y >/dev/null 2>&1
		done
		;;
	*)
		echo bad unit for vx in: $i
		;;
	esac
	;;

pty*)
	class=`expr $i : 'pty\(.*\)'`
	case $class in
	0) offset=0 name=p;;
	1) offset=16 name=q;;
	2) offset=32 name=r;;
	*) echo bad unit for pty in: $i;;
	esac
	case $class in
	0|1|2)
		umask 0
		eval `echo $offset $name | awk ' { b=$1; n=$2 } END {
			for (i = 0; i < 16; i++)
				printf("/etc/mknod tty%s%x c 9 %d; \
					/etc/mknod pty%s%x c 10 %d; ", \
					n, i, b+i, n, i, b+i); }'`
		ls -1 tty?? pty?? | grep [A-F] | while read x; do
			y=`echo $x|sed "y/ABCDEF/abcdef/"|sed "s/ttyd/ttyD/"`
			mv $x $y >/dev/null 2>&1
		done
		umask 77
		;;
	esac
	;;

lock*)
	version=`expr $i : 'lock\(.*\)'`
	major=0
	case $version in
	2) major=14 ;;
	3) major=15 ;;
	*) echo "bad version for ingres lock file (should be 2 or 3)" ;;
	esac
	if [ $major -ne 0 ]
	then	/etc/mknod iilock c $major 0
		chown ingres iilock
		chmod 600  iilock
		ln iilock iilock1
	fi
	;;

local)
	sh MAKEDEV.local
	;;
enpram*)
	class=`expr $i : 'enpram\(.*\)'`
	case $class in
	0) /etc/mknod enp0ram 	c 16 0 	; chmod 644 enp0ram ;;
	1) /etc/mknod enp1ram 	c 16 1 	; chmod 644 enp1ram ;;
	*) /etc/mknod enp0ram 	c 16 0 	; chmod 644 enp0ram ;
	   /etc/mknod enp1ram 	c 16 1 	; chmod 644 enp1ram ;;
	esac
	;;
*) echo bad device name in: $i;;
esac
done

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.