
				    ANSICON

			  Copyright 2005-6 Jason Hood

			    Freeware.  Version 1.01


    ===========
    Description
    ===========

    ANSICON provides ANSI escape sequences to a Win32  console	program.  It
    provides much the same functionality as `ANSI.SYS' does for MS-DOS.


    ============
    Requirements
    ============

    32-bit Windows (developed with XP, seems to work with 98, do  not  think
    it will work with NT).


    ============
    Installation
    ============

    Place `ansicon.exe' and `ANSI.dll' together in a directory on your PATH.
    Uninstall  simply involves closing any programs that are currently using
    it, then deleting those two files.	No other changes are made.


    =====
    Usage
    =====

    Running ANSICON with no arguments will start a new instance of the	com-
    mand  processor  (the  program defined by the `ComSpec' environment var-
    iable, typically `CMD.EXE').  Passing the option `-p'  (case  sensitive)
    will  enable  the  parent  process to recognise escapes (ie. the command
    shell used to run ANSICON).  Anything else will be treated as a  program
    and  its  arguments.  If `-m' is the first option, the current (and def-
    ault) attribute will be made grey on black ("monochrome"), or the  attr-
    ibute  following  the `m'.  Eg: `ansicon -m30 cmd /c type file.ans' will
    display `file.ans' using black on cyan as the default  color  (CMD.EXE's
    own  color will be used initially).  Please use `COLOR /?' for attribute
    values (on XP; I'm afraid 9X users will just have to guess...).


    =========
    Sequences
    =========

    The following escape sequences are recognised.

	\e[#A	    CUU: CUrsor Up
	\e[#B	    CUD: CUrsor Down
	\e[#C	    CUF: CUrsor Forward
	\e[#D	    CUB: CUrsor Backward
	\e[#E	    CNL: Cursor Next Line
	\e[#F	    CPL: Cursor Preceding Line
	\e[#G	    CHA: Cursor Horizontal Absolute
	\e[#;#H     CUP: CUrsor Position
	\e[#;#f     HVP: Horizontal and Vertical Position
	\e[s	    SCP: Save Cursor Position
	\e[u	    RCP: Restore Cursor Position
	\e[#J	    ED:  Erase Display
	\e[#K	    EL:  Erase Line
	\e[#L	    IL:  Insert Lines
	\e[#M	    DL:  Delete Lines
	\e[#@	    ICH: Insert CHaracter
	\e[#P	    DCH: Delete CHaracter
	\e[#;#;#m   SGM: Set Graphics Mode

    `\e' represents the escape character (ASCII 27); `#' represents a  deci-
    mal number (optional, in most cases defaulting to 1).


    ===========
    Limitations
    ===========

    The entire buffer is used, not just the visible window.

    If the program runs another program, the new program will not  recognise
    escapes.


    ===============
    Version History
    ===============

    Legend: + added, - bug-fixed, * changed.

    1.01 - 12 March, 2006:
    * \e[m will restore original color, not set grey on black;
    + -m option to set default (and initial) color;
    - restore original color on exit;
    - disable escape processing when console has disabled processed output;
    + \e[5m (blink) is the same as \e[4m (underline);
    - do not conceal control characters (0 to 31).

    1.00 - 23 October, 2005:
    + initial release.


    ===============
    Acknowledgments
    ===============

    Jean-Louis Morel, for his Perl package  Win32::Console::ANSI.   It	pro-
    vided the basis of `ANSI.dll'.

    Sergey Oblomov (hoopoepg), for Console Manager.  It provided  the  basis
    of `ansicon.exe'.

    Anton Bassov's article "Process-wide API spying - an ultimate  hack"  in
    "The Code Project".


    =======
    Contact
    =======

    mailto:jadoxa@yahoo.com.au
    http://ansicon.adoxa.cjb.net/

    Jason Hood
    11 Buckle Street
    North Rockhampton
    Qld 4701
    Australia


    ============
    Distribution
    ============

    The original zipfile can be freely distributed, by any means. However, I
    would  like  to  be  informed if it is placed on a CD-ROM (other than an
    archive compilation).  Modified versions may be distributed, as long  as
    the original zipfile is included (I would prefer to be contacted).


    ===========================
    Jason Hood, 12 March, 2006.
