© 2000-2010 dwalin


this page is dedicated to TuTTY and related software.

what is TuTTY? well, essentially it is PuTTY with my changes, patches and additions. if you don't know what PuTTY is, then you probably don't need TuTTY as well.

the main purpose of all this is to make PuTTY more useful for me. i use it every day, one time (or twenty) a day, and it is the only thing that makes windows usable, never mind what simon say. ;) so if i use it and want it to do things it doesn't know, i just had to modify it myself, because almost all the features i want are not wanted by simon & company: a classical case of a moon-on-a-stick. :) so here i am.

at this moment, there are several pieces of code implementing some feature or group of features (i call them branches), in chronological order:

  • underlined text in terminal is displayed with different colour. the latest change to this branch includes different colour for selected text, but i didn't make it a separate patch. of course, all of this is pretty configurable by user.
  • secondary script: a string of expect-send pairs more or less like cisco's chat-script, but it works after the connection is established. very simple and even primitive, but works. usable in some cases, for example if you're telnetting on some host which has some hardware connected to it via serial port and you want to manage this hardware (in my case, definity switch :) and don't want to enter your login/password every time. note that this feature implies potential security breach, but i prefer to have it -- just don't telnet on the host, use ssh instead and your password will be lots harder to steal.
  • support (very basic) for the terminal model at&t 513. it is working more or less, but is nowhere complete because i don't have any documentation on the 513's, only empirical data from reverse engineering. if you have docs on 513's escape codes and state machine, please share it. i will be very grateful. :) also i'd very much like to lay my hands on docs on 4410 terminal escape codes and state machine, it will be even better to have 4410 than 513.
    also included in this branch, a small but beautiful trick: when you switch your keyboard type to 513, TuTTY will ask you whether you want to set some terminal default settings. and if you want your TuTTY session to look like a twin brother of avaya terminal emulator, say yes. :) very nice.
    UPDATE 13.09.2004: i begun new feature within this branch, a simple one: i want TuTTY to show a line of feature key buttons (F1-F10) under the main window's text area, just like terranova does. unfortunately, this feature is not complete nor even usable yet, so please don't try to use it. it can lead to unpredictable TuTTY behaviour. though if you want to take a look at it, switch the terminal keyboard to AT&T 513 and check the "Show bottom buttons" box on the Terminal/Features setting page. but be warned.
  • serial backend: at last (but not least :) i'm somewhat ready to publish my serial backend option for TuTTY. the ultimate goal for this is to make all-purpose serial terminal out of TuTTY. it will be done in some time, but it is not complete yet. now TuTTY can do the following: use serial port (including software modems), dial the number and connect. just this. if you think it was easy to implement, think twice. :) well, i'm not ready to say this branch is complete, but i already can use it to manage phone switches, the "minimum program". if you take a look at configuration you'll notice a lot of additional options and settings, most of them are pretty self-explaining. if you don't know what this tick means, just don't touch it: default setting should be okay in most cases. if you have questions on how to use it, please mail me.
  • session folder: this branch contains the code needed to teach TuTTY to store its sessions as a tree not plain list.
  • session icon: this small patch allow to set any session a different window icon, using a standard windows "pick icon" dialog box. it wasn't documented before windows xp so it took a bit of reverse engineering (done by Henk Devos for The Code Project) but works nevertheless.

you can get TuTTY source, patches and prebuilt executables on the "downloads" page. attention please: TuTTY is a secure shell client and have direct relation to network security (your own, in this case) issues. i myself didn't make any changes to security-related part of the PuTTY source code and can give you just my honest word that the binary executable provided on this site is not a trojan or malicious program. if you're not happy with such terms, please don't download the binary. feel free to get PuTTY source from the official site, get my patch, examine it and build it yourself. please note that this site IS NOT official PuTTY site and you DON'T HAVE to trust me. a little bit of paranoia will never be a burden. :)

currently, the patch should be applied to 0.60 release.

if you like what i do and want to help (if you can do a bit of windows programming, of course :), please mail me.

and at last, but not least: if you notice a bug in my code, please mail me. i publish this code just for this purpose: to have some help with debugging.