pksh v2.0 release

INSTALL:
    For pksh you need libreadline and BSD socket headers, it is known
    to work and compile under OSX, FreeBSD, Cygwin and Linux.
    To only compile pksh do the following
    $ make pksh

    To compile everything including standalone tools and npsh.
    $ make all

	If you want to build ftp support into pksh use the CFLAGS with -DFTP
	and comment the other one out, note that this requires the presence of
	ftplib ( http://www.nbpfaus.net/~pfau/ftplib/ )

pksh:
    A shell like cli for communication with pukklink/ps2link, it has readline
    capabilities ( command/file completion, command history ) and can log debug
    messages sent from ps2 to the console or to a file.

    short recap of commands.
    
    ?, help             	gives a small help screen
    cd <dir>            	changes current working dir to <dir>
    eeexec <file>       	executes <file> on EE ( host: is not needed )
    iopexec <file>      	executes <file> on IOP --||--
    pwd                 	print working directory
    reset               	reset ps2 ( reload pukklink )
    log <file>          	log all debug output to <file>                 
    ls,list             	well hum list files.

    exception [screen]/[console] tells pukklink to dump exception to screen/console
    dumpmem [file] [offset] [size]
    dumpreg [file] [type]

    Now readline has some nice things like file/command completion, 
    by default this is mapped to the TAB key.

    Working with the command history is quite easy.
    arrow-up/down traverses the command history, 
    ctrl-r <pattern> will search in history for the specified
    pattern, lets say you did a "execee /some/path/to/nice.elf" way back in
    time, just press ctrl-r and type in "nice" and it will find
     "execee /some/path/to/nice.elf"

    Some nice command line editing choices are ctrl-a, ctrl-a beginning/end of
    line, ctrl-w/ctrl-y delete word/yank it back.

    If you are on a Unix system just read man 3 readline, Cygwin users should
    have that man page if the man pages was installed :) 

    If not its googleable.

    Some shortcuts for pksh
    meta-p  pwd
    meta-q  quit
    meta-r  reset
    meta-s  status
    meta-v  verbose on/off

ps2netfs:
	ps2netfs support is integrated in pksh, the "normal" commands like 'ls',
	'cp', 'mkdir' all have ps2netfs capabilities, when a device is recognized
	it will send it over ps2netfs, examples below.
	
	ls mc0:
	mkdir mc0:test
	cp some.elf mc0:test/
	cp mc0:test/some.elf some.elf
	rm mc0:test/some.elf
	rm some.elf (this one will fall through to the shell and remove some.elf)

pkshrc:
    place .pkshrc in $HOME ( \cygwin\home\Username cygwin users )
    confin options:
		verbose = yes/no
        debug = yes/no
        ip = x.y.z.w, if empty it will connect to 192.168.0.10
        log = <file>, if empty it will log to stdout ( default )
        exception = screen/console
        # comment
        histfile = <file> to save your history when quitting
        suffix = .elf:.ELF
        home = /default/path/to/start

standalone:
    eeexec, iopexec, reset, dumpmem, viewmem, gsexec

    These are standalone programs more suitable for batch processing.
    pksh must be running since the batch utilities connects to it.

    The ideal use of the batch tools is to have a simple macro in your
    favourite editor to exec your newly compiled code.
    A Vim example mapping F2 to execee current file with .elf as extension.
    :map <F2> :!/usr/local/bin/execee %<.elf<cr>

License:
    Included in this zip and in all the source files.