-- DisplayFaceExtras.mesa -- Last Edited by: Taft, February 27, 1983 3:13 pm DisplayFaceExtras: DEFINITIONS = BEGIN -- There are two basic types of monitors that can be connected to D-machines: -- the narrow Alto-style monitor and the wide LF (large-format) monitor. MonitorType: TYPE = {alto, lf}; -- The monitor connected to this machine is: monitorType: MonitorType; -- Alto monitors run at a fixed field rate (60 hz) which it is not reasonable to change. -- LF monitors normally run at a field rate of approximately 77 hz. However, this may -- be reduced to 60 hz for compatibility with videotape and other TV equipment. -- To complicate matters, there are two brands of LF monitors presently in use, -- one made by Ball Brothers and the other by Phillips. They respond in different -- ways to having their field rate reduced, and require different waveforms for -- reasonable results. -- The software cannot detect which brand of LF monitor is connected; this must be -- determined by the user. Shine a light through the ventilation slots in the top -- of the housing. If there is a horizontal logic board at the bottom (under the -- neck of the picture tube) then it is a Ball Brothers monitor. If the logic board -- is vertically oriented on the left-hand side (with a bunch of adjustments on the top) -- then it is a Phillips monitor. -- After changing the field rate, it may be necessary to adjust the monitor to -- restore the proper position of the picture. This is more likely to be needed -- with a Ball Brothers monitor than with a Phillips monitor. FieldRate: TYPE = {normalAlto, normalLF, lfBall60hz, lfPhillips60hz}; SetFieldRate: PROCEDURE [rate: FieldRate] RETURNS [ok: BOOLEAN]; -- Establishes the new field rate, in a machine-independent fashion. -- Returns TRUE if the operation is reasonable and is implemented on this machine. SetVerticalWaveforms: PROCEDURE [sync, visible, topBorder: CARDINAL] RETURNS [ok: BOOLEAN]; -- Sets the vertical waveform parameters to arbitrary values. Sync is the duration -- of the sync pulse in scan lines; visible is the duration of the visible field -- including top and bottom borders (i.e., everything except sync); topBorder is the -- duration of the top border. -- All numbers describe scan lines in the even field and must be greater than zero. -- For an LF monitor, the standard values are sync=18, visible=430, topBorder=14. -- To obtain the normal field rate requires that sync+visible = 448. -- To obtain the 60 hz field rate requires that sync+visible = 578. -- At present, on the Dorado the three values can be adjusted independently; -- on the Dolphin and Dandelion nothing may be changed. -- Returns TRUE if the operation is implemented on this machine; no other check is -- made for reasonableness of the operation. END.