Honeywell BCRU series terminals
(Specifically, tested on a BCRU211G-001 model)
----------------------------------------------------------------
For the most part, this terminal behaves like a VT52.
Without ANSI compatibility mode, and without
the GEMDOS/TOS extensions, but it also has a bunch of extra
features.
Size: 80x24 lines
---- Hardware connectivity ----
To wire up this terminal, for me anyway, I had to make a basic
DB25 to DB9 full null-modem cable BUT with both RXD's on the
terminal-end (the db25) bonded together for whatever reason,
otherwise there would be no data received by the terminal.
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)
DB25 serial connector signal details
------------------------------------
Voltage: The terminal outputs -10V as a logical 1 and +10V as a logical 0.
Pin 4 (RTS) is pulled high briefly when the terminal first switches on, then sits at logical 0 during regular operation.
DIP switch settings
-------------------
1 2 3 4 5 6 7 8 9 10
_ _ _ _ _ _ _ _ _ _
1 | | | | | | | | | | |
0 |_|_|_|_|_|_|_|_|_|_|
| | | | | | | | | |
| | | | | | | | | `- beep on keypress
| | | | | | | | `- ??
| | | | | | | `- baud rate 1
| | | | | | `- baud rate 2
| | | | | `- baud rate 3
| | | | `- ??
| | | `- ??
| | `- 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)
When spawning a tty, switch 5 when off, gives me readable text right
away in a login prompt, but typing into the prompt causes unreadable
characters. (so there is something out of sync after login does it's
tty detection magic) - Switch 5 when on, gives me unreadable text at
the login prompt, but as soon as I type in a username and hit enter,
terminal detection does the right thing, and text becomes readable
and everything works fine. So this one might be bits per character,
but in one direction only? Need to mess with these more...
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
---- Things that deviate from the vt52 ----
enter/exit graphics is reversed compared to the VT52,
at least per wikipedia and other documentation online,
unless all that documentation is wrong, which is I
guess also plausible given that everyone just copies
everyone these days.
^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 which prints a shorter version of the debug
info.
Enter graphics: ^G (\033\107 or \x1b\x47)
Exit graphics: ^F (\033\106 or \x1b\x46)
Debug info (long): ^Z (\033\132 or \x1b\x5a)
Debug info (short): ^z (\033\172 or \x1b\x7a)
Cursor movement and everything else, is the same as VT52.
(Unfortunately left-cursor acts like a back-space so it's
destructive.)
---- Extra stuff the VT52 doesn't do ----
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 vt's GEMDOS/TOS extensions, but a different code.
* It has screen blanking functionality (it
automatically blanks on idle but there is also a
control code you can send to force the screen to
turn off)
* It can beep
* There's these weird "one-line" modes,
I don't know what else to call them, where all
input/output is stuck on either the top or bottom
line, depending on the code you send; and i can't
figure out for the life of me how to get out of
them other than power-cycle the terminal; I have
to investigate those more. Perhaps these are
resize commands?
* There's a neat 'screenshot' command where it
will send back everything on the screen to the
host.
* Obviously also the 'different' graphics mode.
* It can display light-colored or normal colored fonts.
Clear screen: ^` (\033\140 or \x1b\x60)
Blank screen: ^c (\033\143 or \x1b\x63)
Beep: ^Y (\033\131 or \x1b\x59)
Oneline-mode-bottom: ^w (\033\167 or \x1b\x77)
Oneline-mode-top: ^DEL (\033\177 or \x1b\x7f)
Light font: ^4 (\033\064 or \x1b\x34)
Normal font: ^3 (\033\063 or \x1b\x33)
Screen dump: (\033\351 or \x1b\xe9)
I'm sure there's more I have yet to discover here.
---- Scancodes for the 'special' keys ----
( top row function keys )
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 | ^
( main keyboard )
code | \x1b \x29 | ^)
backspace | \x08 |
tab | \x09 |
abbrev | \x1b \x2f | ^/
return | \x0d |
( arrow keys cluster)
insert | \x1b \x49 | ^I
delete | \x1b \x5b | ^[
up arrow | \x1b \x41 | ^A
down arrow | \x1b \x42 | ^B
left arrow | \x1b \x44 | ^D
right arrow | \x1b \x43 | ^C
home | \x1b \x48 | ^H
( key cluster next to arrow keys)
search | \x1b \x34 | ^4
replace | \x1b \x45 | ^E
auto | \x1b \x4e | ^N
copy | \x1b \x57 | ^W
move | \x1b \x68 | ^h
command | \x1b \x3c | ^<
go to page | \x1b \x78 | ^x
blank1 | \x1b \x7b | ^{
blank2 | \x1b \x7d | ^}
----------------------------------------------------------------
John Sennesael 2021 ; email me if you know more about these!
[email protected]
----------------------------------------------------------------