Difference between revisions of "Honeywell BCRU211G"

From Terminals
Jump to: navigation, search
(Add control characters & scan codes)
m (Add main keyboard scancodes)
Line 259: Line 259:
 
|-
 
|-
 
| esc || \x1b || ^
 
| esc || \x1b || ^
 +
|}
 +
 +
{|class="wikitable" style="margin:auto"
 +
|+ Keyboard scan codes (main keyboard)
 +
|-
 +
! Key !! Byte sequence (hex) !! Byte sequence (text)
 +
|-
 +
| code || \x1b \x29 || ^)
 +
|-
 +
| backspace || \x08 ||
 +
|-
 +
| tab || \x09 ||
 +
|-
 +
| abbrev || \x1b \x2f || ^/
 +
|-
 +
| return || \x0d ||
 
|}
 
|}

Revision as of 00:24, 8 October 2024

Honeywell BCRU211G
Honeywell BCRU211G 132140766942-1.jpg
Manufacturer Honeywell
Model BCRU211G
Communication
Interface serial
Baud Rates 300, 600, 1200 ,1800 ,2400, 4800, 9600, 19200
Display
Size 80x24 characters
Firmware
Code Chart Honeywell BCRU211G

Images


Honeywell BCRU221G

This is another one of the Honeywell serial terminals that were typically used with DPS mainframes, after Honeywell took over the line of GCOS-based mainframes from General Electric. Probably used with DPS6 mainframes (confirmation needed).

In terms of control characters, it has a lot of similarities with the VT52, but without ANSI compatibility mode, and without the GEMDOS/TOS extensions, but it also has a bunch of extra features (and quirks!).

Hardware connectivity

A typical db25 serial cable doesn't seem to work, nor does the typical null-modem cable. Instead, following pinout seems to work:


DB25 pinout:

--------------------------------------------------------------------
\ (1 ) (2 ) (3 ) (4 ) (5 ) (6 ) (7 ) (8 ) (9 ) (10) (11) (12) (13) /
 \   (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25)  /
  \______________________________________________________________/

  1: Shield ground          6: DSR (data set ready)      11: N/C
  2: TXD (transmit data)    7: Signal ground             12: DCD (2)
  3: RXD (receive data)     8: DCD (data carrier detect) 13: CTS (2)
  4: RTS (request to send)  9: test                      14: TXD (2)
  5: CTS (clear to send)   10: test                      15: DCE

 16: RXD (2)  21: signal quality detector
 17: RX clock 22: RI (ring indicator)
 18: N/C      23: data signal rate detector
 19: RTS (2)  24: DTE
 20: DTR      25: N/C


TXD (pin 2) has data going from the terminal to the computer at 0-5V
TXD2 (pin 14) has data going from the terminal to the computer at 0-1.5V

DB9 pinout:

  -----------------------
  \ (1) (2) (3) (4) (5) /
   \  (6) (7) (8) (9)  /
    \_________________/

1: DCD 4: DTR 7: RTS
2: RXD 5: GND 8: CTS
3: TXD 6: DSR 9: RI

Wiring:
-------

DB25                    DB9
-------------------------------------------------------------------
   1 (shield)          -> shield (the metal bit around the connector)
   2 (TXD)             -> 2 (RXD)
   3 (RXD) + 16 (RXD2) -> 3 (TXD)
   4 (RTS)             -> 8 (CTS)
   5 (CTS)             -> 7 (RTS)
   6 (DSR) + 8 (DCD)   -> 4 (DTR)
   7 (GND)             -> 5 (GND)
  20 (DTR)             -> 1 (DCD) + 6 (DSR)

DIP switch settings

   1 2 3 4 5 6 7 8 9 10
   _ _ _ _ _ _ _ _ _ _
1 | | | | | | | | | | |
0 |_|_|_|_|_|_|_|_|_|_|
   | | | | | | | | | |
   | | | | | | | | | `- beep on keypress
   | | | | | | | | `- screen blanking
   | | | | | | | `- baud rate 1
   | | | | | | `- baud rate 2
   | | | | | `- baud rate 3
   | | | | `- bits per character?
   | | | `- bits per character?
   | | `- vertical wrap (if in the down position, 
   | |                   going past line 24 wraps back to line 1, 
   | |                   effectively disabling scrolling and messing 
   | |                   up all sorts of stuff for most stuff expecting
   | |                   normal terminal behavior.)
   | `- local echo (up=off, down=on)
   `- Test mode (runs test loops)

Need some further testing, but I believe bits 4 and 5 switch between 7 or 8 bits per character separately for sending and receiving.

Baud rate configuration switches
     .---- baud rate 3   (switch 6)
    / .--- baud rate 2  (switch 7)
   / / .-- baud rate 1 (switch 8)
  / / /
 0 0 0          300 baud
 0 0 1          600 baud
 0 1 0         1200 baud
 0 1 1         1800 baud
 1 0 0         2400 baud
 1 0 1         4800 baud
 1 1 0         9600 baud
 1 1 1        19200 baud

Quirks & features

Like the VT52 it has a 'graphics' mode, which really means, switching character set to a set of 'graphics' characters, this is where you'll find your box-drawing stuff and the like, as well as some math symbols not present in the standard ascii set.

A quirk though, is that the BRCU221G has the enter/exit graphics mode commands INVERTED from what's documented for the VT52. I don't know if that's a bug in the terminal, or in the VT52 documentation (someone ought to confirm this with a real VT52)

Another deviation from the VT52 is that ^Z also behaves differently, in that, instead of sending identifying information back to the host, it instead prints debug info on the terminal. It also has a second version of this, ^z (lower-case), which prints a shorter version of the debug info.

Cursor movement and everything else, is the same as VT52. (Left-cursor acts like a back-space so it's destructive.)

  • Unlike the VT52, the Honeywell BCRU can change it's font brightness to a less bright color, and switch back.
  • It has a single-command clear screen, akin to the equivalent in the VT52's GEMDOS/TOS extensions, but a different code.
  • It has screen blanking functionality (it automatically blanks on idle if configured per dip switch, but there is also a

control code you can send to force the screen to turn off)

  • It has a way to force all output to the bottom or top line only (presumably for header/footers on screens/forms)
  • There's a neat 'screenshot' command where it will send back everything on the screen to the host.
  • It can display light-colored or normal colored fonts.

Control characters

Control characters unique to this terminal (compared to the VT52)
Command Byte sequence (text) Byte sequence (octal) Byte sequence (hex)
Enter graphics ^G \033\107 \x1b\x47
Exit graphics ^F \033\106 \x1b\x46
Debug info (long) ^Z \033\132 \x1b\x5a
Debug info (short) ^z \033\172 \x1b\x7a
Clear screen ^` \033\140 \x1b\x60
Blank screen ^c \033\143 \x1b\x63
Beep ^Y \033\131 \x1b\x59
Oneline-mode-bottom ^w \033\167 \x1b\x77
Oneline-mode-top ^DEL \033\177 \x1b\x7f
Light font ^4 \033\064 \x1b\x34
Normal font ^3 \033\063 \x1b\x33
Screen dump \033\351 \x1b\xe9

Keyboard scan codes

(Not listing the standard ascii keys, as those all correspond to their ascii value)

Keyboard scan codes (top row function keys)
Key Byte sequence (hex) Byte sequence (text)
menu \x1b \x35 ^5
clear \x1b \x65 ^e
signoff \x1b \x32 ^2
erase \x1b \x4b ^K
calculate \x1b \x38 ^8
print \x1b \x3a ^:
help \x1b \x36 ^6
indent \x1b \x3e ^>
center \x1b \x50 ^P
dec tab \x1b \x52 ^R
super sub \x1b \x54 ^T
merge \x1b \x5c ^\
format \x1b \x5e ^^
execute \x1b \x69 ^i
page \x1b \x23 ^#
note \x1b \x25 ^%
stop \x1b \x27 ^'
esc \x1b ^
Keyboard scan codes (main keyboard)
Key Byte sequence (hex) Byte sequence (text)
code \x1b \x29 ^)
backspace \x08
tab \x09
abbrev \x1b \x2f ^/
return \x0d