This patch changes the names for emulated ttys from tty[C-J][0-9a-f] to tty[C-J]{0..254}. 255 is reserved for the cfg device and thus cannot currently be used.
This enables consistent addressing for all emulated ttys, and is not unexpected to hit bits here and there; it is also a visible change, as the getty(8) greeting displays the terminal name. If more than 10 emulated ttys are in use (at least on the same display), ttys(5) must be modified to reflect the new scheme. Index: src/etc/MAKEDEV.common =================================================================== RCS file: /cvs/src/etc/MAKEDEV.common,v retrieving revision 1.101 diff -u -p -r1.101 MAKEDEV.common --- src/etc/MAKEDEV.common 31 Aug 2018 02:32:29 -0000 1.101 +++ src/etc/MAKEDEV.common 24 Dec 2018 06:17:25 -0000 @@ -277,7 +277,7 @@ __mkdev({-disks-}){--}dnl dnl __devtitle(cons, Console ports)dnl __devitem(wscons, wscons, Minimal wscons devices)dnl -twrget(wscons, wscons, ttyC, cfg, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b)dnl +twrget(wscons, wscons, ttyC, cfg, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)dnl target(wscons, wsmux)dnl target(wscons, wskbd, 0, 1, 2, 3)dnl target(wscons, wsmouse, 0, 1, 2, 3)dnl @@ -297,9 +297,11 @@ _mkdev({-wsdisp-}, tty[C-J]*, {-U=${i##t ttyJ*) n=J m=expr(7*256);; esac case $U in - [0-9a-f]) M tty$n$U c major_wsdisp_c Add(16#$U, $m) 600;; cfg) M tty${n}cfg c major_wsdisp_c Add(255,$m) 600;; - *) echo bad unit $U for $i; exit 1;; + *) if [ -z "$U" ] || [ $U -gt 254 ]; then + echo bad unit $U for $i; exit 1; + fi; + M tty${n}${U} c major_wsdisp_c Add($U,$m) 600;; esac-})dnl __devitem(wskbd, wskbd*, wscons keyboards)dnl dnl XXX wskbd[0-9]* instead of wskbd* in case this appears before