Move everything from /var/adm to /var/log
[unleashed.git] / share / man / man7d / wscons.7d
blob1ead241b614cd0a53c3536566f7c2b3d50708b4b
1 '\" te
2 .\" Copyright (c) 2006 Sun Microsystems, Inc.  All Rights Reserved.
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH WSCONS 7D "May 26, 2006"
7 .SH NAME
8 wscons \- workstation console
9 .SH SYNOPSIS
10 .LP
11 .nf
12 \fB#include <sys/strredir.h>\fR
13 .fi
15 .LP
16 .nf
17 \fBioctl\fR(\fIfd\fR, SRIOCSREDIR, \fItarget\fR);
18 .fi
20 .LP
21 .nf
22 \fBioctl\fR(\fIfd\fR, SRIOCISREDIR, \fItarget\fR);
23 .fi
25 .SH DESCRIPTION
26 .sp
27 .LP
28 The \fBwscons\fR workstation console consists of a workstation keyboard and
29 frame buffer that act together to emulate an \fBASCII\fR terminal. It includes
30 a redirection facility that allows I/O issued to the workstation console to be
31 diverted to a STREAMS device, enabling window systems to redirect output that
32 would otherwise appear directly on the frame buffer in corrupted form.
33 .SS "Redirection"
34 .sp
35 .LP
36 The \fBwscons\fR redirection facility maintains a list of devices that are
37 designated as redirection targets through the \fBSRIOCSREDIR\fR ioctl described
38 below. Only the current entry is active; when the active entry is closed, the
39 most recent remaining entry becomes active. The active entry acts as a proxy
40 for the device being redirected and handles all \fBread\fR(2), \fBwrite\fR(2),
41 \fBioctl\fR(2), and \fBpoll\fR(2) calls issued against the redirectee.
42 .sp
43 .LP
44 The ioctls described below control the redirection facility. In both cases,
45 \fIfd\fR is a descriptor for the device being redirected (or workstation
46 console) and \fItarget\fR is a descriptor for a STREAMS device.
47 .sp
48 .ne 2
49 .na
50 \fB\fBSRIOCSREDIR\fR\fR
51 .ad
52 .RS 16n
53 Designates \fItarget\fR as the source and destination of I/O ostensibly
54 directed to the device denoted by \fIfd\fR.
55 .RE
57 .sp
58 .ne 2
59 .na
60 \fB\fBSRIOCISREDIR\fR\fR
61 .ad
62 .RS 16n
63 Returns 1 if \fItarget\fR names the device currently acting as proxy for the
64 device denoted by \fIfd\fR, and 0 if it is not.
65 .RE
67 .SS "ANSI Standard Terminal Emulation"
68 .sp
69 .LP
70 The Solaris kernel terminal emulator provides ANSI X3.64 emulation both on
71 SPARC and x86 systems.
72 .sp
73 .LP
74 On SPARC systems, the PROM monitor is used to emulate an ANSI  X3.64 terminal
75 if the kernel terminal emulator is not available for emulation. See
76 \fBvisual_io\fR(7I) for more details.
77 .sp
78 .LP
79 Note: The \fBVT100\fR adheres the \fBANSI\fR X3.64 standard. However, because
80 the \fBVT100\fR features nonstandard extensions to \fBANSI\fR X3.64, it is
81 incompatible with Sun terminal emulators.
82 .sp
83 .LP
84 The SPARC console displays 34 lines of 80 ASCII characters per line.  The x86
85 console displays 25 lines of 80 ASCII characters per line.  Devices with
86 smaller text capacities may display less. On SPARC systems, the \fBscreen-#rows
87 screen-#columns\fR should be set to 34 or 80 respectively or text capacities
88 will vary from those described above. On SPARC systems, the \fBscreen-#rows and
89 screen-#columns\fR fields are stored in \fBNVRAM/EEPROM\fR. See
90 \fBeeprom\fR(8) for more information. Both SPARC and x86 consoles offer
91 scrolling, (x, y) cursor addressing ability and a number of other control
92 functions.
93 .sp
94 .LP
95 The console cursor marks the current line and character position on the screen.
96 \fBASCII\fR characters between \fB0x20 \fR(space) and \fB0x7E\fR (tilde)
97 inclusive are printing characters. When a print character is written to the
98 console (and is not part of an escape sequence), it is displayed at the current
99 cursor position and the cursor moves one position to the right on the current
100 line.
103 On SPARC based systems, later  \fBPROM\fR revisions have the full 8-bit ISO
104 Latin-1 (\fIISO 8859-1\fR) character set. Earlier \fBPROM\fR revisions display
105 characters in the range \fB0xA0 \fRthrough \fB0xFE \fRas spaces.
108 When the cursor is at the right edge of the screen, it moves to the first
109 character position on the next line.  When the cursor is at the screen's
110 right-bottom edge, the line-feed function is performed (see \fBCTRL-J\fR
111 below). The line-feed function scrolls the screen up by one or more lines
112 before moving the cursor to the first character position on the next line.
113 .SS "Control Sequence Syntax"
116 The \fBwscons\fR console defines a number of control sequences that may occur
117 during input.  When a control sequence is written to the console, it affects
118 one of the control functions described below. Control sequences are not
119 displayed on screen.
122 A number of control sequences (or control character functions) are of the form:
125 \fBCTRL-\fR\fIx\fR
128  where \fIx\fR represents a singe character., such as \fBCNTRL-J\fR for a line
129 feed.
132 Other \fBANSI\fR control sequences are of the form:
134 .in +2
136 ESC [ \fIparams char\fR
138 .in -2
141 Note -
143 .RS 2
144 Spaces are included only for readability; these characters must occur in the
145 given sequence without the intervening spaces.
148 .ne 2
150 \fBESC\fR
152 .RS 10n
153 \fBASCII\fR escape character (\fBESC, CTRL-[, 0x1B\fR).
157 .ne 2
159 \fB[\fR
161 .RS 10n
162 Left square bracket `[' (\fB0x5B)\fR.
166 .ne 2
168 \fB\fIparams\fR\fR
170 .RS 10n
171 Sequence of zero or more decimal numbers made up of digits between 0 and 9,
172 separated by semicolons. Parameters are represented by \fIn\fR in the syntax
173 descriptions for escape sequence functions.
177 .ne 2
179 \fB\fIchar\fR\fR
181 .RS 10n
182 Function character, which is different for each control sequence and it
183 represented by \fIx\fR in the syntax descriptions for control character
184 functions.
189 In the following examples of syntactically valid escape sequences, \fBESC
190 \fRrepresent the single \fBASCII\fR character, Escape:
192 .ne 2
194 \fBESC[m\fR
196 .RS 22n
197 Select graphic rendition with default parameter
201 .ne 2
203 \fBESC[7m\fR
205 .RS 22n
206 Select graphic rendition with reverse image
210 .ne 2
212 \fBESC[33;54H\fR
214 .RS 22n
215 Set cursor position
219 .ne 2
221 \fBESC[123;456;0;;3;B\fR
223 .RS 22n
224 Move cursor down
229 Syntactically valid control characters and \fBANSI\fR escape sequences that are
230 not currently interpreted by the console are ignored.
233 Each control function requires a specified number of parameters. If fewer
234 parameters are supplied, the remaining parameters (with certain exceptions
235 noted below) default  to 1. If more parameters are supplied, the first \fIn\fR
236 parameters are used by kernel terminal emulator. In contrast,  only the last
237 \fIn\fR parameters are used by PROM based emulator, where \fIn\fR is the number
238 required by that particular command character.
241 Parameters which are omitted or set to 0 are reset to the default value of 1
242 (with certain exceptions). For example, the command character \fBM\fR requires
243 one parameter. \fBESC[;M\fR, \fBESC[0M\fR, \fBESC[M\fR and
244 \fBESC[23;15;32;8\fR are all equivalent to \fBESC[8\fR and provide a
245 parameter value of 1.  Note that \fBESC[;5M\fR (interpreted as \fB`ESC[5M\fR')
246 is \fInot\fR equivalent to \fBESC[5;M\fR (interpreted as `\fBESC[5;8\fR')
247 which is ultimately interpreted as `\fBESC[8\fR').
248 .SS "ANSI Control Functions"
251 The following paragraphs specify the \fBANSI\fR control functions implemented
252 by the console.  Each description provides:
253 .RS +4
255 .ie t \(bu
256 .el o
257 Control sequence syntax
259 .RS +4
261 .ie t \(bu
262 .el o
263 Hexadecimal equivalent of control characters where applicable
265 .RS +4
267 .ie t \(bu
268 .el o
269 Control function name and \fBANSI\fR or Sun abbreviation (if any).
271 .RS +4
273 .ie t \(bu
274 .el o
275 Description of parameters required, if any
277 .RS +4
279 .ie t \(bu
280 .el o
281 Description of the control function
283 .RS +4
285 .ie t \(bu
286 .el o
287 Initial setting of the mode for functions that set a mode. To restore the
288 initial settings, use the \fBSUNRESET\fR escape sequence.
290 .SS "Control Character Functions"
293 The \fBwscons \fRcontrol character functions are:
295 .ne 2
297 \fBBell (BEL),\fR
301 \fBCTRL-G\fR
305 \fB0x7\fR
307 .RS 22n
308 Used for consoles that are not equipped with an audible bell. Current Sun
309 workstation models also flash the screen if the keyboard is not the console
310 input device.
314 .ne 2
316 \fBBackspace (BS),\fR
320 \fBCTRL-H,\fR
324 \fB0x8\fR
326 .RS 22n
327 The cursor moves one position to the left on the current line.  If it is
328 already at the left edge of the screen, no change takes place.
332 .ne 2
334 \fBTab (TAB),\fR
338 \fBCTRL-I,\fR
342 \fB0x9\fR
344 .RS 22n
345 The cursor moves right on the current line to the next tab stop.  The tab stops
346 are fixed at every multiple of eight columns. If the cursor is already at the
347 right edge of the screen, nothing change takes place. Otherwise, the cursor
348 moves right a minimum of one and a maximum of eight character positions.
352 .ne 2
354 \fBLine-feed (LF),\fR
358 \fBCTRL-J,\fR
362 \fB0xA\fR
364 .RS 22n
365 The cursor, while remaining at the same character position on the line, moves
366 down one line. If the cursor is at the bottom line, the screen either scrolls
367 up or wraps around depending on the setting of an internal variable \fIn\fR
368 (initially 1) . The internal variable can be changed using the \fBESC[r\fR
369 control sequence.  If \fIn\fR is greater than zero, the entire screen
370 (including the cursor) is scrolled up by \fIn\fR lines before executing the
371 line-feed. The top \fIn\fR lines scroll off the screen and are lost.  New blank
372 lines \fIn\fR scroll onto the bottom of the screen. After scrolling, move the
373 cursor down one line to execute the line feed.
375 If \fIn\fR is zero, wrap-around mode is entered. The \fBESC [ 1 r\fR exits back
376 to scroll mode. If a line-feed occurs on the bottom line in wrap mode, the
377 cursor goes to the same character position in the top line of the screen.
378 During line-feeds, the line that the cursor moves to is cleared and no
379 scrolling occurs. Wrap-around mode is not implemented in the window system.
381 On SPARC based systems, the speed at which the screen scrolls is dependent on
382 the amount of data waiting to be printed.  Whenever a scroll occurs and the
383 console is in normal scroll mode (\fBESC [ 1 r\fR), it scans the rest of the
384 data awaiting printing to see how many line-feeds occur in it.  This scan stops
385 when the console finds a control character from the set {\fBVT\fR, \fBFF\fR,
386 \fBSO\fR, \fBSI\fR, \fBDLE\fR, \fBDC1\fR, \fBDC2\fR, \fBDC3\fR, \fBDC4\fR,
387 \fBNAK\fR, \fBSYN\fR, \fBETB\fR, \fBCAN\fR, \fBEM\fR, \fBSUB\fR, \fBESC\fR,
388 \fBFS\fR, \fBGS\fR, \fBRS\fR, \fBUS\fR} .  At that point, the screen is
389 scrolled by \fIn\fR lines (\fIn\fR \(>= 1) and processing continues. The
390 scanned text is processed normally and fills in the newly created lines. As
391 long as escape codes or other control characters are not intermixed with the
392 text, this results in faster scrolling
396 .ne 2
398 \fBReverse Line-feed,\fR
402 \fBCTRL-K,\fR
406 \fB0xB\fR
408 .RS 22n
409 With kernel terminal emulator (while remaining at the same character position
410 on the line), the  cursor  moves down one line. However, with PROM based
411 emulator (while remaining at the same character position on the line), the
412 cursor  moves up  one line. If the cursor is already at the top line, no
413 change takes place.
417 .ne 2
419 \fBForm-feed (FF)\fR
423 \fBCTRL-L,\fR
427 \fB0xC\fR
429 .RS 22n
430 The cursor is positioned to the home position (upper-left corner) and the
431 entire screen is cleared.
435 .ne 2
437 \fBReturn (CR),\fR
441 \fBCTRL-M,\fR
445 \fB0xD\fR
447 .RS 22n
448 The cursor moves to the leftmost character position on the current line.
451 .SS "Escape Sequence Functions"
454 The \fBwscons \fRescape sequence functions are:
456 .ne 2
458 \fBEscape (ESC),\fR
462 \fBCTRL-[,\fR
466 \fB0x1B\fR
468 .sp .6
469 .RS 4n
470 The escape character.  Escape initiates a multi-character control sequence.
474 .ne 2
476 \fBInsert Character (ICH)\fR
480 \fBESC[#@\fR
482 .sp .6
483 .RS 4n
484 Takes one parameter, \fIn\fR (default 1).  Inserts \fIn\fR spaces at the
485 current cursor position.  The current line, starting at the current cursor
486 position inclusive, is shifted to the right by \fIn\fR character positions to
487 make room for the spaces.  The rightmost  \fIn\fR character positions shift off
488 the line and are lost. The position of the cursor is unchanged.
492 .ne 2
494 \fBCursor Up (CUU),\fR
498 \fBESC[#A\fR
500 .sp .6
501 .RS 4n
502 Takes one parameter, \fIn\fR (default 1).  Moves the cursor up \fIn\fR lines.
503 If the cursor is fewer than  \fIn\fR lines from the top of the screen, moves
504 the cursor to the topmost line on the screen.  The character position of the
505 cursor on the line is unchanged.
509 .ne 2
511 \fBCursor Down (CUD),\fR
515 \fBESC[#B\fR
517 .sp .6
518 .RS 4n
519 Takes one parameter,  (default 1).  Moves the cursor down  \fIn\fR lines. If
520 the cursor is fewer than  \fIn\fR lines from the bottom of the screen, move the
521 cursor to the last line on the screen.  The character position of the cursor on
522 the line is unchanged.
526 .ne 2
528 \fBCursor Forward (CUF),\fR
532 \fBESC[#C\fR
534 .sp .6
535 .RS 4n
536 Takes one parameter, \fIn\fR (default 1).  Moves the cursor to the right by
537 \fIn\fR character positions on the current line.  If the cursor is fewer than
538 \fIn\fR positions from the right edge of the screen, moves the cursor to the
539 rightmost position on the current line.
543 .ne 2
545 \fBCursor Backward (CUB),\fR
549 \fBESC[#D\fR
551 .sp .6
552 .RS 4n
553 Takes one parameter, \fIn\fR (default 1).  Moves the cursor to the left by
554 \fIn\fR character positions on the current line.  If the cursor is fewer than
555 \fIn\fR positions from the left edge of the screen, moves the cursor to the
556 leftmost position on the current line.
560 .ne 2
562 \fBCursor Next Line (CNL),\fR
566 \fBESC[#E\fR
568 .sp .6
569 .RS 4n
570 Takes one parameter,  \fIn\fR (default 1).  Positions the cursor at the
571 leftmost character position on the \fIn\fR-th line below the current line. If
572 the current line is less than \fIn\fR lines from the bottom of the screen,
573 positions the cursor at the leftmost character position on the bottom line.
577 .ne 2
579 \fBHorizontal and Vertical Position (HVP),\fR
583 \fBESC[#1;#2f\fR
585 .sp .6
586 .RS 4n
591 .ne 2
593 \fBCursor Position (CUP),\fR
597 \fBESC[#1;#2H\fR
599 .sp .6
600 .RS 4n
601 Takes two parameters, \fIn\fR1 and \fIn\fR2 (default 1, 1).  Moves the cursor
602 to the \fIn\fR2-th character position on the \fIn\fR1-th line.  Character
603 positions are numbered from 1 at the left edge of the screen; line positions
604 are numbered from 1 at the top of the screen.  Hence, if both parameters are
605 omitted, the default action moves the cursor to the home position (upper left
606 corner).  If only one parameter is supplied, the cursor moves to column 1 of
607 the specified line.
611 .ne 2
613 \fBErase in Display (ED),\fR
617 \fBESC[J\fR
619 .sp .6
620 .RS 4n
621 Takes no parameters.  Erases from the current cursor position inclusive to the
622 end of the screen, that is, to the end of the current line and all lines below
623 the current line.  The cursor position is unchanged.
627 .ne 2
629 \fBErase in Line (EL),\fR
633 \fBESC[K\fR
635 .sp .6
636 .RS 4n
637 Takes no parameters.  Erases from the current cursor position inclusive to the
638 end of the current line.  The cursor position is unchanged.
642 .ne 2
644 \fBInsert Line (IL),\fR
648 \fBESC[#L\fR
650 .sp .6
651 .RS 4n
652 Takes one parameter, \fIn\fR (default 1).  Makes room for \fIn\fR new lines
653 starting at the current line by scrolling down by  \fIn\fR lines the portion of
654 the screen from the current line inclusive to the bottom.  The  \fIn\fR new
655 lines at the cursor are filled with spaces; the bottom  \fIn\fR lines shift off
656 the bottom of the screen and are lost.  The position of the cursor on the
657 screen is unchanged.
661 .ne 2
663 \fBDelete Line (DL),\fR
667 \fBESC[#M\fR
669 .sp .6
670 .RS 4n
671 Takes one parameter,  \fIn\fR (default 1).  Deletes \fIn\fR lines beginning
672 with the current line. The portion of the screen from the current line
673 inclusive to the bottom is scrolled upward by  \fIn\fR lines.  The  \fIn\fR new
674 lines scrolling onto the bottom of the screen are filled with spaces; the
675 \fIn\fR old lines beginning at the cursor line are deleted.  The position of
676 the cursor on the screen is unchanged.
680 .ne 2
682 \fBDelete Character (DCH),\fR
686 \fBESC[#P\fR
688 .sp .6
689 .RS 4n
690 Takes one parameter,  \fIn\fR (default 1).  Deletes  \fIn\fR characters
691 starting with the current cursor position.  Shifts the tail of the current line
692 to the left by  \fIn\fR character positions from the current cursor position,
693 inclusive, to the end of the line.  Blanks are shifted into the rightmost
694 \fIn\fR character positions.  The position of the cursor on the screen is
695 unchanged.
699 .ne 2
701 \fBSelect Graphic Rendition (SGR),\fR
705 \fBESC[#m\fR
707 .sp .6
708 .RS 4n
709 Takes one parameter,  \fIn\fR (default 0).  Note that unlike most escape
710 sequences, the parameter defaults to zero if omitted.  Invokes the graphic
711 rendition specified by the parameter.  All following printing characters in the
712 data stream are rendered according to the parameter until the next occurrence
713 of this escape sequence in the data stream. With PROM-based emulator, only two
714 graphic renditions are defined:
716 .ne 2
718 \fB0\fR
720 .RS 5n
721 Normal rendition
725 .ne 2
727 \fB7\fR
729 .RS 5n
730 Negative (reverse) image
733 Negative image displays characters as white-on-black if the screen mode is
734 currently black-on white, and vice-versa. Any non-zero value of  \fIn\fR is
735 currently equivalent to 7 and selects the negative image rendition.
737 In addition to the two renditions mentioned above, the following\fI ISO
738 6429-1983\fR graphic rendition values support color text with kernel terminal
739 emulator:
741 .ne 2
743 \fB30\fR
745 .RS 6n
746 black foreground
750 .ne 2
752 \fB31\fR
754 .RS 6n
755 red foreground
759 .ne 2
761 \fB32\fR
763 .RS 6n
764 green foreground
768 .ne 2
770 \fB33\fR
772 .RS 6n
773 brown foreground
777 .ne 2
779 \fB34\fR
781 .RS 6n
782 blue foreground
786 .ne 2
788 \fB35\fR
790 .RS 6n
791 magenta foreground
795 .ne 2
797 \fB36\fR
799 .RS 6n
800 cyan foreground
804 .ne 2
806 \fB37\fR
808 .RS 6n
809 white foreground
813 .ne 2
815 \fB40\fR
817 .RS 6n
818 black background
822 .ne 2
824 \fB41\fR
826 .RS 6n
827 red background
831 .ne 2
833 \fB42\fR
835 .RS 6n
836 green background
840 .ne 2
842 \fB43\fR
844 .RS 6n
845 brown background
849 .ne 2
851 \fB44\fR
853 .RS 6n
854 blue background
858 .ne 2
860 \fB45\fR
862 .RS 6n
863 magenta background
867 .ne 2
869 \fB46\fR
871 .RS 6n
872 cyan background
876 .ne 2
878 \fB47\fR
880 .RS 6n
881 white background
887 .ne 2
889 \fBBlack On White (SUNBOW),\fR
893 \fBESC[p\fR
895 .sp .6
896 .RS 4n
897 Takes no parameters.  On SPARC, sets the screen mode to black-on-white.  If the
898 screen mode is already black-on-white, has no effect. In this mode, spaces
899 display as solid white, other characters as black-on-white. The cursor is a
900 solid black block. Characters displayed in negative image rendition (see
901 `Select Graphic Rendition' above) are white-on-black. This comprises the
902 initial setting of the screen mode on reset. On x86 systems, use \fBESC[q\fR to
903 set black-on-white.
907 .ne 2
909 \fBWhite On Black (SUNWOB),\fR
913 \fBESC[q\fR
915 .sp .6
916 .RS 4n
917 Takes no parameters.  On SPARC, sets the screen mode to white-on-black.  If the
918 screen mode is already white-on-black, has no effect. In this mode spaces
919 display as solid black, other characters as white-on-black.  The cursor is a
920 solid white block.  Characters displayed in negative image rendition (see
921 `Select Graphic Rendition' above) are black-on-white.  Initial setting of the
922 screen mode on reset is black on white. On x86 systems, use \fBESC[p\fR to set
923 white-on-black.
927 .ne 2
929 \fBESC[#r\fR
933 \fBSet Scrolling (SUNSCRL)\fR
935 .sp .6
936 .RS 4n
937 Takes one parameter,  \fIn\fR (default 0). Sets to  \fIn\fR an internal
938 register which determines how many lines the screen scrolls up when a line-feed
939 function is performed with the cursor on the bottom line.  A parameter of 2 or
940 3 introduces a small amount of jump when a scroll occurs.  A parameter of 34
941 clears the screen rather than scrolling.  The initial setting is 1 on reset.
943 A parameter of zero initiates wrap mode instead of scrolling.  If a linefeed
944 occurs on the bottom line during wrap mode, the cursor goes to the same
945 character position in the top line of the screen. When a line feed occurs, the
946 line that the cursor moves to is cleared and no scrolling occurs. \fBESC [ 1
947 r\fR exits back to scroll mode.
949 For more information, see the description of the Line-feed (\fBCTRL-J\fR)
950 control function above.
954 .ne 2
956 \fBESC[s\fR
960 \fBReset terminal emulator (SUNRESET)\fR
962 .sp .6
963 .RS 4n
964 Takes no parameters.  Resets all modes to default, restores current font from
965 \fBPROM.\fR Screen and cursor position are unchanged.
968 .SH RETURN VALUES
971 When there are no errors, the redirection ioctls have return values as
972 described above. Otherwise, they return  \fB\(mi1\fR and set \fBerrno\fR to
973 indicate the error. If the target stream is in an error state, \fBerrno \fRis
974 set accordingly.
977 If the \fItarget\fR stream is in an error state, \fBerrno\fR is set
978 accordingly.
979 .SH ERRORS
981 .ne 2
983 \fB\fBEBADF\fR\fR
985 .RS 10n
986 \fItarget\fR does not denote an open file.
990 .ne 2
992 \fB\fBENOSTR\fR\fR
994 .RS 10n
995 \fItarget\fR does not denote a \fBSTREAMS\fR device.
998 .SH FILES
1000 .ne 2
1002 \fB\fB/dev/wscons\fR\fR
1004 .RS 16n
1005 Workstation console, accessed via the redirection facility
1009 .ne 2
1011 \fB\fB/dev/systty\fR\fR
1013 .RS 16n
1014 Devices that must be opened for the \fBSRIOCSREDIR\fR and \fBSRIOCISREDIR\fR
1015 ioctls.
1019 .ne 2
1021 \fB\fB/dev/syscon\fR\fR
1023 .RS 16n
1024 Access system console
1028 .ne 2
1030 \fB\fB/dev/console\fR\fR
1032 .RS 16n
1033 Access system console
1036 .SH ATTRIBUTES
1039 See \fBattributes\fR(5) for descriptions of the following attributes:
1044 box;
1045 c | c
1046 l | l .
1047 ATTRIBUTE TYPE  ATTRIBUTE VALUE
1049 Interface Stability     Stable
1052 .SH SEE ALSO
1055 \fBcvcd\fR(8), \fBeeprom\fR(8), \fBioctl\fR(2), \fBpoll\fR(2), \fBread\fR(2),
1056 \fBwrite\fR(2), \fBcvc\fR(7D), \fBconsole\fR(7D), \fBvisual_io\fR(7I)
1057 .SH WARNINGS
1060 The redirection ioctls block while there is I/O outstanding on the device
1061 instance being redirected. If you try to redirect the workstation console while
1062 there is a outstanding read, the workstation console will hang until the read
1063 completes.
1064 .SH NOTES
1067 The \fBcvc \fRfacility supersedes the SunOS \fBwscons \fRfacility and should
1068 not be used with \fBwscons\fR.