banko@lisboa.ks.uiuc.edu (Brad Banko) (01/26/91)
January 25, 1991 The Theoretical Biophysics group at the University of Illinois is proud to announce that we are making a guest account available to other workers in molecular biology, chemistry and physics computing. This account provides users access to one of our transputer boards for computing molecular dynamics trajectories using the "Ego" program developed by this group. Guest users can also write programs in the Occam 2 language using either the Inmos Transputer Development System (TDS, an integrated programming environment), or the Inmos Toolset. Currently the board on the system has a 4-megabyte T800 host transputer plus 5 1-megabyte network T800 transputers. For login information or other information, send email to me: Brad Banko banko@lisboa.ks.uiuc.edu ============================================================== Brad Banko, Theoretical Biophysics, Beckman Institute Dept of Physics, University of Illinois--Urbana-Champaign banko@lisboa.ks.uiuc.edu, (217)-244-1851, 328-4932 ========================================================================== The shell archive below contains a TDS function keymapping (or iterm) file for vt100 terminals/emulators. These files are *not* needed for accessing the Theoretical Biophysics guest account, but this iterm file does offer a standard user interface for using TDS via a vt100 network connection. ========================================================================= #! /bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh <file", e.g.. If this archive is complete, you # will see the following message at the end: # "End of shell archive." # Contents: README vt100-tb.hlp vt100-tb.itm utilities.hlp ks.c ke.c # Wrapped by banko@lisboa on Fri Jan 25 13:47:03 1991 PATH=/bin:/usr/bin:/usr/ucb ; export PATH if test -f 'README' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'README'\" else echo shar: Extracting \"'README'\" \(1905 characters\) sed "s/^X//" >'README' <<'END_OF_FILE' X vt100-tb.itm X In the process of setting up a guest account to allow network users to access one of our transputer boards, we have modified the TDS keymapping file X"telnet.itm" from Parsys, to allow true vt100 terminal/emulation compatibility. (The original Parsys iterm file maps to a vt200 or hybrid terminal environment.) X X 77 Jan 20 14:23 ke.c X 76 Jan 20 14:23 ks.c X 688 Jan 20 14:22 utilities.hlp X 1692 Jan 20 14:22 vt100-tb.hlp X 11313 Jan 23 11:30 vt100-tb.itm X To use this iterm file with TDS in your unix environment, setenv the ITERM variable to the path of the file "vt100-tb.itm". TDS finds the help file automatically in the same directory. X(e.g., "setenv ITERM vt100-tb.itm") X X"vt100-tb.hlp" summarizes the keymapping, and it is also displayed under TDS as the [Help] key is pressed (pf4, keypad top right). X X"utilities.hlp" summarizes the Compiler, Debugger & File Handler utilities. X(This information is also available via the [Code Info] command under TDS.) X This keymapping file uses the "applications mode" of the numeric keypad of a vt100 terminal/emulation. The terminal must be set into this mode by an escape sequence. "ks.c" and "ke.c" are simple C programs which will send the "keypad start" and "keypad end" codes. X After compiling "ks.c & ke.c", you might run TDS in a shell thusly: X X tds: (csh command file) X X setenv ITERM vt100-tb.itm # the full path for the iterm file X ks # keypad "applications mode" start X iserver ... # the normal tds startup command X ke # keypad end X Please send me mail to notify me about any bugs you encounter, or suggestions you have. Thanks! X X X Brad Banko, 23 January 1991 X X============================================================== Brad Banko, Theoretical Biophysics, Beckman Institute Dept of Physics, University of Illinois--Urbana-Champaign banko@lisboa.ks.uiuc.edu, (217)-244-1851, 328-4932 END_OF_FILE if test 1905 -ne `wc -c <'README'`; then echo shar: \"'README'\" unpacked with wrong size! fi # end of 'README' fi if test -f 'vt100-tb.hlp' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'vt100-tb.hlp'\" else echo shar: Extracting \"'vt100-tb.hlp'\" \(1692 characters\) sed "s/^X//" >'vt100-tb.hlp' <<'END_OF_FILE' X# X# Top Four keys on vt100-style keypad X# (sometimes labelled, ~ = / *) X# X# PF1 = GOLD PF2 = SILVER PF3 = PLATINUM PF4 = HELP X#--------------------------------------+--------------------------------------- X# keypad (moves, etc) * * | PF1 (edits) Del-Ln Undel-Ln X# Enter ^ Exit * | Del-EOL * Remove * X# <- * -> | <Del-Wd * Del-Wd> X# Open v Close * | * Cpy-Pck Put * X# Create Del | Move Copy X#--------------------------------------+--------------------------------------- X# PF2 (more moves) <Line Line> | PF3 (specials) Browse Refresh X# Page-^ Line-^ Top * | Toolkit Page-^ Code-Inf * X# <Word * Word> | File/Unf * Fold-Inf X# * Line-v Bottom * | * Page-v (Suspend)* X# * * | Def-mac Call-mac X#--------------------------------------+--------------------------------------- X# Code functions on PF1 with ... b Browse X# a Autoload 0-9 Utils u Next-Util v Clear-Util X# g Get.code r Run.exe e Next-Exe f Clear-Exe X# q Quit TDS p Pick c Clear-All (s suspend.tds) X# # Make Comment X# PF3 d - define.macro c - call.macro s - save.macro g - get.macro X#------------------------------------------------------------------------------ X# TAB = select.param CTRL-H,DEL = Del-left (CTRL-R = Del-right) X# CTRL-Y = del.line CTRL-U = undel.line CTRL-A = Set Abort Flag END_OF_FILE if test 1692 -ne `wc -c <'vt100-tb.hlp'`; then echo shar: \"'vt100-tb.hlp'\" unpacked with wrong size! fi # end of 'vt100-tb.hlp' fi if test -f 'vt100-tb.itm' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'vt100-tb.itm'\" else echo shar: Extracting \"'vt100-tb.itm'\" \(11313 characters\) sed "s/^X//" >'vt100-tb.itm' <<'END_OF_FILE' X# X# vt100-tb.itm X# X# Modified from telnet.itm by Parsys: X# X# telnet.itm ITERM data file for PC telnet access to sun X# Special care needed on screen codes 6, 7, 9, 10, 11, X# X# Based on vt100termp.dat by Bryan Carpenter and James Allwright X# of Transputer Technology Solutions, 3-JAN-90 X# Modified by: GRWR Parsys Ltd. 18-Jul-90. X# TCC Parsys Ltd. 08-SEP-90. X# X# Modified extensively to match a true VT100 emulation: X# X# Brad Banko, 12/5/90 X# Theoretical Biophysics, Beckman Institute X# Dept of Physics, University of Illinois--Urbana-Champaign X# banko@lisboa.ks.uiuc.edu, (217)-244-1851, 328-4932 X# X# A true VT100 emulation includes an 18-key keypad with four function X# function keys (pf1-pf4 or ~ = / * etc.) at the top. X# When a VT100 keypad is put into "Applications Keypad" mode by X# ks = "Esc =" (27 '=') the keypad keys map to "Esc [" (27 79): X# X# pf1 pf2 pf3 pf4 X# 27 79- 80 81 82 83 (decimal) X# 119 120 121 109 X# 116 117 118 108 X# 113 114 115 77 X# 112 110 X# X# It is these codes which must be used to map the keypad. X# Applications keypad mode is turned off by ke = "Esc >". X# X# Many of the "VT100" keys which Parsys has coded as keypad keys are X# actually vt200 edit keys (such as home, end, pgup, pgdn, del, ins) X# I tried to keep these keys in addition to the equivalent vt100 keypad X# but tds doesn't have enough memory for all of the definitions (e.g.,): X# X# vt200 edit(?): vt100 keypad: X# home up pgup 7 8 9 X# left - right 4 5 6 X# end down pgdn 1 2 3 X# insert del 0 . X# X# up 8 X# left down right 4 2 6 X# X# Parsys has also written a "vt100.itm" iterm file, but the tds keys X# are not nearly so well laid out as they are in the telnet.itm. file. X# X X# system definitions host X1:2. iterm version X2:80,24. columns, lines end host X X# screen control characters screen X1:27,91,65. ESC [ A up X2:27,91,66. ESC [ B down X3:27,91,68. ESC [ D left X4:27,91,67. ESC [ C right X5:27,91,-22,1,59,-12,1,72. ESC [ y+1 ; x+1 H goto x y X#6:27,91,64. ESC [ @ insert char X7:27,91,80. ESC [ P delete char X8:27,91,75. ESC [ K clear to end of line X9:27,91,74. ESC [ J clear to end of screen X10:27,91,76. ESC [ L insert line X11:27,91,77. ESC [ M delete line X12:7. CTRL G beep X13:12. CTRL J should home & clear X#13:27,91,50,74. ESC [ 2 J clear screen end of screen stuff X X# keyboard mapping keyboard X#5:10. Return X#6:27,91,65. up csr up X6:27,79,120. up kp 8 X#7:27,91,66. down csr down X7:27,79,114. down kp 2 X#8:27,91,68. left csr left X8:27,79,116. left kp 4 X#9:27,91,67. right csr right X9:27,79,118. right kp 6 X X10:8. delete char left ctrl H (backspace) X10:127. del.chl del X11:27,79,110. del.chr kp . (del) X12:27,79,80,27,79,82. del.line pf1 pf3 X12:25. del.line ctrl Y -- this works X13:27,79,80,27,79,83. undel.line pf1 pf4 X13:21. undel.line ctrl U X X14:27,79,81,27,79,82. sol pf2 pf3 X15:27,79,81,27,79,83. eol pf2 pf4 X16:27,79,80,27,79,112. move pf1 kp 0 (ins) X17:27,79,80,27,79,110. copy pf1 kp . (del) X X#18:27,79,81,27,91,65. line.up pf2 csr up X18:27,79,81,27,79,120. line.up pf2 kp 8 X#19:27,79,81,27,91,66. line.down pf2 csr down X19:27,79,81,27,79,114. line.down pf2 kp 2 X#20:27,79,81,27,91,72. page.up pf2 home X X#20:27,79,82,27,91,65. page.up pf3 csr up X20:27,79,82,27,79,120. page.up pf3 kp 8 X#21:27,79,82,27,91,66. page.down pf3 csr down X21:27,79,82,27,79,114. page.down pf3 kp 2 X X22:27,79,112. create.fold kp 0 (ins) X#23:27,79,80,27,77. remove.fold pf1 pgup X23:27,79,80,27,79,121. remove.fold pf1 kp 9 X#24:27,91,50,52,59,49,72. open.fold end X24:27,79,113. open.fold kp 1 X#25:27,68. close.fold pgdn X25:27,79,115. close.fold kp 3 X#26:27,91,72. enter.fold home X26:27,79,119. enter.fold kp 7 X#27:27,77. exit.fold pgup X27:27,79,121. exit.fold kp 9 X X28:27,79,82,27,79,83. refresh pf3 pf4 X28:27,27. refresh Esc Esc X28:12. refresh ctrl L X#29:27,79,82,27,91,68. file.fold pf3 csr left X29:27,79,82,27,79,116. file.fold pf3 kp 4 X#30. unfile X X31:27,79,80,113. finish pf1 q X31:27,79,80,81. finish pf1 Q X31:24. finish ctrl X X X34:27,79,83. help pf4 X X#32:27,79,82,27,91,72. edit.params pf3 home X32:27,79,82,27,79,119. edit.params pf3 kp 7 X#33:27,79,82,27,91,67. fold.info pf3 right X33:27,79,82,27,79,118. fold.info pf3 kp 6 X#35. locate X X36:27,79,80,103. get.code pf1 g X36:27,79,80,70. get.code pf1 G X39:27,79,80,82. run pf1 R X39:27,79,80,114. run pf1 r X X40:27,79,80,48. tool 0 pf1 0 X41:27,79,80,49. tool 1 pf1 1 X42:27,79,80,50. tool 2 pf1 2 X43:27,79,80,51. tool 3 pf1 3 X44:27,79,80,52. tool 4 pf1 4 X45:27,79,80,53. tool 5 pf1 5 X46:27,79,80,54. tool 6 pf1 6 X47:27,79,80,55. tool 7 pf1 7 X48:27,79,80,56. tool 8 pf1 8 X49:27,79,80,57. tool 9 pf1 9 X X#50:27,79,81,27,91,68. word.left pf2 csr left X50:27,79,81,27,79,116. word.left pf2 kp 4 X#51:27,79,81,27,91,67. word.right pf2 csr right X51:27,79,81,27,79,118. word.right pf2 kp 6 X X#52:27,79,80,27,91,68. del.wordl pf1 csr left X52:27,79,80,27,79,116. del.wordl pf1 kp 4 X#53:27,79,80,27,91,67. del.wordr pf1 csr right X53:27,79,80,27,79,118. del.wordr pf1 kp 6 X#54:27,79,80,27,91,72. delto.eol pf1 home X54:27,79,80,27,79,119. delto.eol pf1 kp 7 X X#55:27,79,81,27,77. topof.fold pf2 pgup X55:27,79,81,27,79,121. topof.fold pf2 kp 9 X#56:27,79,81,27,68. bottomof.fold pf2 pgdn X56:27,79,81,27,79,115. bottomof.fold pf2 kp 3 X X57:9. select.param TAB X#58:27,79,82,27,77. code.info pf3 pgup X58:27,79,82,27,79,121. code.info pf3 kp 9 X X59:27,79,80,112. pick pf1 p X59:27,79,80,80. pick pf1 P X#60:27,79,80,27,91,66. copy.pick pf1 csr down X60:27,79,80,27,79,114. copy.pick pf1 kp 2 X#61:27,79,80,27,68. put pf1 pgdn X61:27,79,80,27,79,115. put pf1 kp 3 X X62:27,79,80,85. next.util pf1 U X62:27,79,80,117. next.util pf1 u X63:27,79,80,86. clear.util pf1 V X63:27,79,80,118. clear.util pf1 v X64:27,79,80,65. autoload pf1 A X64:27,79,80,97. autoload pf1 a X65:27,79,80,101. next.exe pf1 e X65:27,79,80,69. next.exe pf1 E X66:27,79,80,70. clear.exe pf1 F X66:27,79,80,102. clear.exe pf1 f X67:27,79,80,99. clear.all pf1 c X67:27,79,80,67. clear.all pf1 C X X68:27,79,82,27,79,82. browse pf3 pf3 X68:27,79,80,66. browse pf1 B X68:27,79,80,98. browse pf1 b X X# suspend.tds doesn't work on SGI tds3 (12/5/90) X69:27,79,82,27,79,115. suspend.tds pf1 kp 3 X69:27,79,80,83. suspend.tds pf1 S X69:27,79,80,115. suspend.tds pf1 s X X70:27,79,82,27,79,112. define.macro pf3 kp 0 (ins) X70:27,79,82,68. define.macro pf3 D X70:27,79,82,100. define.macro pf3 d X71:27,79,82,27,79,110. call.macro pf3 kp . (del) X71:27,79,82,67. call.macro pf3 C X71:27,79,82,99. call.macro pf3 c X37:27,79,82,83. save.macro pf3 S X37:27,79,82,115. save.macro pf3 s X38:27,79,82,71. get.macro pf3 G X38:27,79,82,103. get.macro pf3 g X X72:27,79,80,35. make comment pf1 # X X#73. bad end of keyboard stuff X X# THAT'S ALL FOLKS X# X# Picture of what it should all look like.. X# X# now the help text X#text X# X# Top Four keys on vt100-style keypad X# (sometimes labelled, ~ = / *) X# X# PF1 = GOLD PF2 = SILVER PF3 = PLATINUM PF4 = HELP X#--------------------------------------+--------------------------------------- X# keypad (moves, etc) * * | PF1 (edits) Del-Ln Undel-Ln X# Enter ^ Exit * | Del-EOL * Remove * X# <- * -> | <Del-Wd * Del-Wd> X# Open v Close * | * Cpy-Pck Put * X# Create Del | Move Copy X#--------------------------------------+--------------------------------------- X# PF2 (more moves) <Line Line> | PF3 (specials) Browse Refresh X# Page-^ Line-^ Top * | Toolkit Page-^ Code-Inf * X# <Word * Word> | File/Unf * Fold-Inf X# * Line-v Bottom * | * Page-v (Suspend)* X# * * | Def-mac Call-mac X#--------------------------------------+--------------------------------------- X# Code functions on PF1 with ... b Browse X# a Autoload 0-9 Utils u Next-Util v Clear-Util X# g Get.code r Run.exe e Next-Exe f Clear-Exe X# q Quit TDS p Pick c Clear-All s suspend.tds X# # Make Comment X# PF3 d - define.macro c - call.macro s - save.macro g - get.macro X#------------------------------------------------------------------------------ X# TAB = next-param CTRL-H,DEL = Del-left (CTRL-R = Del-right) X# CTRL-Y = del.line CTRL-U = undel.line X#------------------------------------------------------------------------------ X#end of help text X#EoF X X X X X END_OF_FILE if test 11313 -ne `wc -c <'vt100-tb.itm'`; then echo shar: \"'vt100-tb.itm'\" unpacked with wrong size! fi # end of 'vt100-tb.itm' fi if test -f 'utilities.hlp' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'utilities.hlp'\" else echo shar: Extracting \"'utilities.hlp'\" \(688 characters\) sed "s/^X//" >'utilities.hlp' <<'END_OF_FILE' This file summarizes the key assignments of the File Handler, Compiler, and Debugger utility functions in the TDS toolkit. Keep a copy of this near your terminal. X Key File Handler Compiler Debugger X(PF1 then:) X----------------|-----------------------|---------------|----------------| X1 Attach/Detach Check Inspect X2 Copy Attach Compile Channel X3 Compact Libs Extract Top X4 Rename File Load Retrace X5 Write Protect Recompile Relocate X6 Write Enable Compile Info Info X7 Copy In Make Foldset (none) X8 Copy Out Search Links X9 Read Host Replace Monitor X0 Write Host List Fold Backtrace X----------------|-----------------------|---------------|----------------| END_OF_FILE if test 688 -ne `wc -c <'utilities.hlp'`; then echo shar: \"'utilities.hlp'\" unpacked with wrong size! fi # end of 'utilities.hlp' fi if test -f 'ks.c' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'ks.c'\" else echo shar: Extracting \"'ks.c'\" \(76 characters\) sed "s/^X//" >'ks.c' <<'END_OF_FILE' main() { X putchar(27); putchar('='); /* 'Esc =' enters vt100 keypad */ X} END_OF_FILE if test 76 -ne `wc -c <'ks.c'`; then echo shar: \"'ks.c'\" unpacked with wrong size! fi # end of 'ks.c' fi if test -f 'ke.c' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'ke.c'\" else echo shar: Extracting \"'ke.c'\" \(77 characters\) sed "s/^X//" >'ke.c' <<'END_OF_FILE' main() { X putchar(27); putchar('>'); /* 'Esc >' ends vt100 keypad mode */ X} END_OF_FILE if test 77 -ne `wc -c <'ke.c'`; then echo shar: \"'ke.c'\" unpacked with wrong size! fi # end of 'ke.c' fi echo shar: End of shell archive. exit 0 -- ============================================================== Brad Banko, Theoretical Biophysics, Beckman Institute Dept of Physics, University of Illinois--Urbana-Champaign banko@lisboa.ks.uiuc.edu, (217)-244-1851, 328-4932