view xml/510connectbot.in @ 20:69a407d33146
tn5250
adding tn5250 files
author
Carl Byington <carl@five-ten-sg.com>
date
Tue, 03 Jun 2014 10:27:54 -0700 (2014-06-03)
parents
0ce5cc452d02
children
accf93be8c12
line source
+ − <reference>
+ − <title>@PACKAGE@ - Version @VERSION@</title>
+ − <partintro>
+ − <title>Packages</title>
+ −
+ − <para>
+ − The various source and binary packages are available at <ulink
+ − url="http://www.five-ten-sg.com/@PACKAGE@/packages/">http://www.five-ten-sg.com/@PACKAGE@/packages/</ulink>.
+ − The most recent documentation is available at <ulink
+ − url="http://www.five-ten-sg.com/@PACKAGE@/">http://www.five-ten-sg.com/@PACKAGE@/</ulink>.
+ − </para>
+ −
+ − <para>
+ − A <ulink url="http://www.selenic.com/mercurial/wiki/">Mercurial</ulink> source
+ − code repository for this project is available at <ulink
+ − url="http://hg.five-ten-sg.com/@PACKAGE@/">http://hg.five-ten-sg.com/@PACKAGE@/</ulink>.
+ − </para>
+ −
+ − <para>
+ − A companion terminal monitor project is available at <ulink
+ − url="http://www.five-ten-sg.com/510ConnectbotMonitor">http://www.five-ten-sg.com/510ConnectbotMonitor</ulink>
+ − </para>
+ − </partintro>
+ −
+ − <refentry id="x@PACKAGE@.1">
+ − <refentryinfo>
+ − <date>2014-05-13</date>
+ − <author>
+ − <firstname>Carl</firstname>
+ − <surname>Byington</surname>
+ − <affiliation><orgname>510 Software Group</orgname></affiliation>
+ − </author>
+ − </refentryinfo>
+ −
+ − <refmeta>
+ − <refentrytitle>@PACKAGE@</refentrytitle>
+ − <manvolnum>1</manvolnum>
+ − <refmiscinfo>@PACKAGE@ @VERSION@</refmiscinfo>
+ − </refmeta>
+ −
+ − <refnamediv id='name.1'>
+ − <refname>@PACKAGE@</refname>
+ − <refpurpose>an android vt320 terminal emulator for telnet/ssh connections</refpurpose>
+ − </refnamediv>
+ −
+ − <refsect1 id='build.1'>
+ − <title>Build method</title>
+ − <para>
+ − This is an android project with native code, so
+ − "ndk-build clean; ndk-build; android update project -p . -t android-16; ant debug"
+ − should build cleanly.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='introduction.1'>
+ − <title>Introduction</title>
+ − <para>
+ − I belive that the previous connectbot projects are improperly licensed.
+ − They contain a mix of Apache 2.0 and GPLv2+ code, and those two licenses
+ − are incompatible. I have relicensed this as GPLv3+, since that is
+ − compatible with the licenses of all the sub-parts.
+ − </para>
+ − <para>
+ − The intention is to add 5250 emulation to this project.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='monitor.1'>
+ − <title>Terminal Monitor</title>
+ − <para>
+ − For every terminal session (local, telnet, ssh or other), this
+ − terminal emulator also makes a connection to a terminal monitor
+ − process, which can see keystrokes and screen contents, and can
+ − inject characters to send to the host.
+ − </para>
+ −
+ − <para>
+ − The terminal monitor is invoked by calling an android Intent
+ − named "com.five_ten_sg.connectbot.monitor.MonitorService". That
+ − ensures that the monitor process is running, and should then
+ − be listening on TCP port 6000 for incoming connections. The terminal
+ − emulator then connects to the terminal monitor on port 6000.
+ − The native android Intent and Service communication mechanisms
+ − are not used.
+ − </para>
+ −
+ − <para>
+ − The messages exchanged between the terminal emulator and the
+ − terminal monitor are arrays of uint16 values in network byte
+ − order. Each message starts with a uint16 message byte length,
+ − followed by that many bytes of data. Note that the message length
+ − will always be even. The next uint16 contains the message
+ − command value, and the remaining uint16 values are the arguments
+ − if any for that command.
+ − </para>
+ −
+ − <para>
+ − Any arguments that are keystrokes or characters are represented
+ − as 16 bit unicode. Note that the first 256 such characters are
+ − identical to the ISO-8859-1 latin character set.
+ − </para>
+ −
+ − <para>
+ − INIT = 0 (TE -> Monitor). The argument is a string of uint16
+ − characters. The meaning of these characters is defined by the
+ − monitor. It might be a fully qualified path name, or some other
+ − data used by the monitor to drive the monitoring of this
+ − connection.
+ − </para>
+ −
+ − <para>
+ − ACTIVATE = 1 (TE -> Monitor). The first argument is the
+ − number of lines. The second argument is the number of columns.
+ − That is followed by lines*columns uint16 character codes.
+ − This connection is now the active connection. It is the
+ − topmost (or only) window visible to the user - typed keystrokes
+ − will be sent to the host on the other end of this connection.
+ − </para>
+ −
+ − <para>
+ − HOSTDATA = 2 (TE -> Monitor). The argument is a single uint16
+ − value containing the 8 bit character that was sent to the host.
+ − </para>
+ −
+ − <para>
+ − CURSORMOVE = 3 (TE -> Monitor).
+ − The first argument is the line number (0..23)
+ − and the second argument is the column number (0..79).
+ − </para>
+ −
+ − <para>
+ − SCREENCHANGE = 4 (TE -> Monitor). The first argument is the
+ − number of lines. The second argument is the number of columns.
+ − That is followed by lines*columns uint16 character codes.
+ − </para>
+ −
+ − <para>
+ − FIELDVALUE = 5 (TE -> Monitor).
+ − SETFIELD = 5 (Monitor -> TE).
+ − The first argument is the line number (0..23)
+ − and the second argument is the column number (0..79).
+ − That is followed by the field value, a sequence of uint16
+ − character codes from the screen buffer. The field
+ − covers N columns, where N = (message length - 4) / 2.
+ − When sent from the monitor to the emulator, this causes
+ − the emulator to send the field codes to the host. This is
+ − also used as the reply message from the emulator to the
+ − monitor for a previous GETFIELD from the monitor.
+ − </para>
+ −
+ − <para>
+ − GETFIELD = 6 (Monitor -> TE).
+ − The first argument is the line number (0..23)
+ − and the second argument is the starting column number (0..79),
+ − and the third argument is the field length in columns.
+ − This command causes the emulator to send a FIELDVALUE message
+ − back to the monitor.
+ − </para>
+ −
+ − <para>
+ − SCREENWATCH = 7 (Monitor -> TE).
+ − The first argument is the line number (0..23)
+ − and the second argument is the starting column number (0..79),
+ − and the third argument is the field length in columns.
+ − This command causes the emulator to watch the specified
+ − part of the screen for changes. When that part of the screen
+ − changes, the emulator will send a SCREENCHANGE message back
+ − to the monitor.
+ − </para>
+ −
+ − <para>
+ − DEPRESS = 8 (Monitor -> TE). The argument is a single uint16
+ − value containing the vk_key value. This command causes the emulator
+ − to simulate a keypress for that key. The codes are defined
+ − <ulink url="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731%28v=vs.85%29.aspx">here</ulink>.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='todo.1'>
+ − <title>TODO</title>
+ − <para>
+ − Add 5250 emulation.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='copyright.1'>
+ − <title>Copyright</title>
+ − <para>
+ − Copyright (C) 2014 by 510 Software Group <carl@five-ten-sg.com>
+ − </para>
+ − <para>
+ − This program is free software; you can redistribute it and/or modify it
+ − under the terms of the GNU General Public License as published by the
+ − Free Software Foundation; either version 3, or (at your option) any
+ − later version.
+ − </para>
+ − <para>
+ − You should have received a copy of the GNU General Public License along
+ − with this program; see the file COPYING. If not, please write to the
+ − Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='credits.1'>
+ − <title>Credits</title>
+ − <para>
+ − Based on VX Connectbot provided under the Apache
+ − License, Version 2.0. Copyright (C) 2012 Martin
+ − Matuska http://connectbot.vx.sk
+ − </para>
+ − <para>
+ − Based on Irssiconnectbot provided under the Apache
+ − License, Version 2.0. Copyright (C) 2013
+ − Iiro Uusitalo and Ville Kerminen
+ − https://github.com/irssiconnectbot/irssiconnectbot
+ − </para>
+ − <para>
+ − Based on ConnectBot provided under the Apache License,
+ − Version 2.0. Copyright (C) 2007-2008 Kenny Root
+ − http://the-b.org and Jeffrey Sharkey http://jsharkey.org
+ − </para>
+ − <para>
+ − Based on the Trilead SSH2 client provided
+ − under a BSD-style license. Copyright (C) 2007 Trilead
+ − AG. http://www.trilead.com
+ − </para>
+ − <para>
+ − Based on JTA Telnet/SSH client provided under the
+ − GPLv2 license. Copyright (C) 1996-2005 Matthias L. Jugel and
+ − Marcus Meiner. http://www.javassh.org
+ − </para>
+ − <para>
+ − Includes the JSOCKS library, provided
+ − under the GNU LGPL license. http://jsocks.sourceforge.net
+ − </para>
+ − <para>
+ − Includes JZlib provided under a BSD-style
+ − license. Copyright (C) 2000-2004 JCraft, Inc.
+ − http://www.jcraft.com
+ − </para>
+ − <para>
+ − Includes the ssh-agent service developed by Roberto
+ − Tyley https://github.com/rtyley
+ − </para>
+ − <para>
+ − SCP file transfer support is based on
+ − https://github.com/staktrace/connectbot/commits/filetransfer
+ − modifications by Kartikaya Gupta.
+ − </para>
+ − </refsect1>
+ −
+ − <refsect1 id='version.1'>
+ − <title>Version</title>
+ − <para>
+ − @VERSION@
+ − </para>
+ − </refsect1>
+ − </refentry>
+ −
+ − </reference>