STI(4) | Device Drivers Manual | STI(4)

# NAME

`sti` — HP Standard Text Interface

# SYNOPSIS

`sti* at mainbus0`
`sti* at pci?`
`sti* at phantomas0`
`wsdisplay* at sti?`

# DESCRIPTION

The `sti` was created by HP to provide uniform frame-buffer access operations for their 9000/300 and 9000/700 series of workstations.

The following models are supported (though not all features or frame buffer depths may be available):

Model | Bits | Mem | 3D | Machines/Cards
VRX | 8 | 2 |  | HP9000/362/382
EVRX | 8 | 2 |  | HP9000/425e
Timber | 8 | 2 |  | HP9000/705/710
GRX | 8g | 2 |  | SGC
CRX | 8 | 2 |  | SGC
Tomcat | 8 | 2 |  | SGC
Stinger | 8 | 2 |  | HP9000/7[12]5/74[257]i
Artist | 8 | 2 |  | HP9000/712/7[12]5/74[38]i
CRX-24 | 24 | 16 |  | SGC
HCRX-8 | 8 | 2 |  | GSC
HCRX-24 | 24 | 16 |  | GSC
Visualize EG | 16 | 2 |  | HP B/C-class, GSC/PCI
Visualize FXe | 24 | 24 | y | PCI 32/66
Visualize FX2 | 24 | 24 | y | PCI 64/66
Visualize FX4/FX6 | 24 | 32 | y | PCI 64/66

Implementation consists of a set of functions burnt in to the PROM on the card and providing the following set of functions (see below for PROM revision history on functions supported by particular PROM revision):

- Initialize graphics.
- State management.
- Print a character onto the screen using currently selected font.
- Copy a region of the frame-buffer to another location.
- Self testing.
- Exception handling.
- Frame-buffer configuration enquiry.
- Setting colour-map entry.
- DMA parameters.
- Flow control.
- User timing.
- Processing management.
- Miscellaneous utility functions.

There are two modes for accessing the PROM: “byte” and “word” mode. In “byte” mode each 4-byte word contains only the low-ordered big-endian byte of data; i.e., to compose one word of data 4 words should be read and low-ordered bytes of those should be shifted correspondingly. In “word” mode each word contains all 4 bytes of valid data.

PROM revision history:

8.02
  Original release.
8.03
  - OSF-extended self test (a.k.a fast).
  - Restore display.
8.04
  - Implement `curr_mon` function.
  - Graphical boot screen.
  - Implement “block move”.
  - Implement “set colour-map entry”.
  - Implement word mode.
  - Support for multiple monitors.
  - Support `user_data` `sti` space usage.
  - Support for extra memory.
  - Support for `Windows NT (tm)`.
  - Monitor frequency reference.
  - Early console.
  - Support added for: PCXL, `GSC` bus, ROM-less operation.
8.05
  - Interrupt support.
  - Report card's power usage.
  - Birds of Prey.
  - User interrupts.
8.06
  - Multiple fonts.
  - Monitor table descriptor strings.
  - PCXL2 and PCXU monitor descriptors.
8.08
  - HP-UX 10 support for Visualize FX
  - `dma_ctrl` function added.
  - `flow_ctrl` function added.
  - `user_timing` function added.
8.09
  - Addition changes for `Visualize FX` due to rearchitecture for performance.
  - `process_mgr` function added.
8.10
  PCXL2 and PCXU dual `PCI` EPROM map mode, implemented on `Visualize EG`.
8.11
  Support for HP-UX non-implicit locking DMA, implemented on `Visualize FXe`.
8.12
  `sti_util` function added (flashing under HP-UX and other sideband traffic).
8.13
  Colour frame buffer support.

# SEE ALSO

intro(4), pci(4), phantomas(4), wsdisplay(4)

Standard Text Interface For Graphics Devices, Hewlett-Packard, Revision 8.13, March 1, 2000.

# HISTORY

The `sti` driver was written by Michael Shalayeff <mickey@openbsd.org> for HPPA port for OpenBSD 2.7.

# BUGS

Currently, neither scroll back nor screen blanking functions are implemented.

August 20, 2024 | Debian