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 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! john@adminking.com ----------------------------------------------------------------