|
|
1.1 root 1: .\"$Header: ibmaed.4,v 10.1 86/11/19 10:55:57 jg Exp $
2: .\"$Source: /u1/X/libibm/doc/man/RCS/ibmaed.4,v $
3: .\ This file uses -man macros.
4: .TH IBMAED 4 "31 Mar 1986" "Space overwritten by .AC macro" " "
5: .UC 4
6: .AC 1 0
7: .SH NAME
8: ibmaed, aed \- IBM Academic Information Systems experimental display interface
9: .SH SYNOPSIS
10: .B "pseudo-device aed"
11: .SH DESCRIPTION
12: The IBM Academic Information Systems
13: experimental display is a black-and-white,
14: all-points-addressable, bit-mapped display with 812,900
15: points on the screen.
16: It is driven by an adapter with an on-board processor.
17: The processor executes a microprogram loaded by the host
18: into the display's control store.
19: The microprogram controls the
20: interface between host and display.
21: The host communicates with the microprogram
22: through an area of read/write shared RAM. This memory
23: starts at address 0xf40a4000 and is organized as 4K
24: of 8-bit bytes.
25: .PP
26: On system startup, the display driver loads the control store
27: with a default microprogram that is part of the driver's initialized
28: data area.
29: The display operates in glass tty mode (the default)
30: and window-manager mode:
31: .IP -
32: In glass tty mode, the display serves
33: as the default display device for \fI/dev/console\fR.
34: Kernel printfs and characters written to \fI/dev/console\fR
35: are written to this display.
36: Default mode is in effect when the microprogram starts.
37: .IP -
38: In window-manager mode, a user-level process,
39: such as a window manager, can load its own microprogram
40: into the display's control store, and read or write to
41: the display's communications memory.
42: When a process opens \fI/dev/aed\fR, the kernel switches
43: console output to another display device, if available, or buffers the
44: output until later (see
45: .IR cons (4)).
46: At this point,
47: the control memory and communications memory
48: are available for manipulation by the user process.
49: Glass tty mode is reentered when \fI/dev/aed\fR is closed.
50: .PP
51: The following system calls are supported by \fI/dev/aed\fR:
52: .ft B
53: .IP "open" 8
54: .ft R
55: Initiates window-manager mode.
56: Only one process can open \fI/dev/aed\fR.
57: All file descriptors must be closed before another open is allowed.
58: The process and its children that have file descriptors open
59: to \fI/dev/aed\fR have direct access to the display's shared RAM, until an
60: .IR execve (2)
61: system call is completed.
62: .ft B
63: .IP "close"
64: .ft R
65: Terminates a process's read/write access to the display's
66: shared RAM.
67: The last close to \fI/dev/aed\fR ends window-manager mode and reinstates
68: glass tty mode.
69: .ft B
70: .IP "read"
71: .ft R
72: Allows read access to the display's control store.
73: .ft B
74: .IP "write"
75: .ft R
76: Allows write access to the display's control store.
77: .ft B
78: .IP "ioctl"
79: .ft R
80: (Ioctl's defined in <\fIsys/aedioctl.h\fR>) AEDSEM_WHILE,
81: AEDSEM_UNTIL, AEDSEM_SET_WAIT all poll the semaphore,
82: waiting for
83: an event. A specified number of polls occurs before the call returns
84: with a failing (-1) return code. You may alter the default of 250 polls by
85: issuing a AEDSEM_TIMEOUT request. It is often advisable to reissue the failed
86: call later, allowing the display a little more time. It is up to
87: the programmer to decide how many tries make sense before the display can be
88: assumed to be hung.
89: The following requests are supported:
90: .IP
91: IOCINFO Returns device information.
92: .IP
93: IOCTYPE Returns device type.
94: .IP
95: AEDGET_SRAM_LOC Reports address of display-shared RAM.
96: .IP
97: AEDRESET Resets the display. The display processor is
98: .br
99: halted and the program counter is set to 0.
100: .IP
101: AEDSEM_READ Reads the display semaphore.
102: .IP
103: AEDSEM_SET Sets display semaphore to a specified value.
104: .IP
105: AEDSEM_SET_WAIT Sets display semaphore to a specified value and waits
106: .br
107: for it to change, then returns the new value.
108: .IP
109: AEDSEM_WHILE Polls display semaphore until it is no longer equal to
110: .br
111: a specified value.
112: .IP
113: AEDSEM_UNTIL Polls display semaphore until it is equal to a specified
114: .br
115: value.
116: .IP
117: AEDSEM_TIMEOUT Sets the timeout interval. The default is 250 polls.
118: .br
119: See AEDSEM_WHILE, AEDSEM_UNTIL, AEDSEM_SET_WAIT.
120: .br
121: A request to set the timeout to zero returns the current
122: .br
123: timeou
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.