

      This is version 9.13 of the program GMC-Handler



      V9.13:- Error removed, that causes a SMART-window to be closed
              after it was resized. Error was built in in version 9.9.


      V9.12:- STACK- und QUEUE-Packets added. These packets support the
              ARexx commands PUSH and QUEUE. The packet arguments are
              equivalent to those of the WRITE-packet.

            - !!! New address of the author (see README_first) !!!


		V9.11:- FINDUPDATE-Packet added.

				- "Fast Scrollng": When the cursor reach the lower window
				  border and the window is partially covered by other windows
				  the whole contents of the window is scrolled up for given
				  number of lines before the output is continued. Although
				  the output is not very smooth, the speed is increased about
				  three times if the window is covered by other windows under
				  KS2.0. The number of lines to scroll up is set by

				  	SetGMC scroll <n>

				  <n> is allowed in the range of zero to nine. n=0 inactives
				  the function.

				- Pasting from the clipboard.device is now supported.

				- There were reports of GURUs if a window is closed (EndCLI)
				  directly after a PRT_SCR with a offline printer. The problem
				  can't be reproduced with KS37.175 and WB37.67.


      V9.10:- Wrong output of Ctrl-Help corrected.

            - Default XY position of MINWINDOW is no longer XY position
              of the window.

            - Title flag WINDOW is now supported. Flag SCREEN in V9.9 is
              the same as in original CON:.

            - !!! New address of the author (see README_first) !!!


      V9.9: - GMC-Handlers with a version greater than 9.8 run only under
              KS 2.0.4 V37.

            - Bug fixed, that causes an recoverable alert loop if an
              error occured in the startup of the handler. Bug was only
              in version 9.8 for KS 2.0.

            - Title flag WAIT is now supported. No differences found to
              CON:. WAIT is only useful if GMC is installed as CON:.
              Window should be closed by CLOSE gadget (or Ctrl-\). EndCLI
              won't close the window (same in original CON:).

            - Title flag SCREEN is partially supported. SCREENtest opens
              the window on the public screen "test". If this screen
              doesn't exist or no name is given, the window will be opened
              on the default public screen.

            - The window position and size is adjusted by Intuition to the
              screen. If there is no window specification GMC will use
              default values for position, size, and title.

            - snip function of console.device is now supported.

            - No more Workbench activation via right mouse button because
              of the snip function.

            - Requester for several startup problems added.

            - Unexpected CSI string will be caught better if the window
              buffer is scrolled the end. I hope that this will the final
              solution. The problem occured only with the KS 2.0 version
              (often with several LS programs).

            - Window position and size are remembered for AUTO windows. So
              the windows have the same values when they are reopened.

            - ExtFuncProc is no longer required. Every GMC process spawns
              its own thread for handling print jobs, the script function,
              and the file name completer.

            - Filename completion is done by MatchFirst(), MatchNect().
              Therefor it is possible to use wildcards in the pattern.
              If there are no wildcards, a invisible "#?" is appended.

              The search for a matching filename and display of names is
              asynchronous. This brings advantages in the speed because
              the next entries can be scanned, while one decides if the
              shown name is the name that is requested.

              Only the qualifier with the first hit of the TAB key deter-
              mines which names should be shown.

              If the ESC key is pressed directly after the TAB key the
              filename completion is restarted with the currently shown
              filename. This is useful for going in a deep directory.

              The filename completion will also scan volumes that aren't
              mounted but not in memory (like RAM DISK). But there will be
              no requester "Please insert ..." if the disk is in no drive
              or if the device doesn't exists.

              Between multi assign directories the old filename will be no
              longer restored.

              GMC scans now also LATE and NONBINDING directories. There
              will be no replacement in the DosList of the name of LATE
              assignments by the equivalent lock.

            - Command search function with Crtl-RET. The line entered up
              to that moment is used as a pattern to search commands in a
              list. If a command is found that has the same beginning it
              will be shown. The commands are inserted in the list with
              'SetGMC DEF COM "<command>"'. DEF must be used because the
              command list exists only once for all GMC processes. It is
              only possible to add commands not to remove them.

            - Internal modification of several program parts and usage of
              many new KS 2.0 functions.


      V9.8: - If the filename completer expands the command line to a
              filename, a blank will be added.

            - Two new functions for the function keys:

               SHIFT_WIN: Window to fore/background

               SHIFT_SCR: Screen to fore/background

            - A (any) workbench window will be activated, if the MINWINDOW
              function is executed or the GMC window or its screen is shift
              in the background.

            - It will be checked that there is no mixing of a SetGMC version
              for KS 2.0 and a GMC version for KS 1.2/3 and vice versa.


      V9.7: - Now it exists a special version GMC-Handler_2.0 for KS 2.0.
              This version isn't executable under KS < 2.0. If features are
              described that reflect to KS 2.0, these features may not
              exist in KS 1.3/3.

            - Under KS 2.0 the filename completer now searches through also
              logical directories. Not searched through are NONBINDING and
              LATEBINDING directories (assign ... path/defer).

            - A DisplayBeep is generated after all directory entries are
              checked. Under KS 2.0 after a multi-assign directory the
              filename is only reset. After all entries of all directories
              the DisplayBeep is generated.

            - After the command recall reaches the end of the command
              history list, there will be also a DisplayBeep.

            - Now GMC supports also the following title flags: AUTO,
              NOCLOSE, SMART, INACTIVE, BACKDROP, NOBORDER, NOSIZE, NODRAG,
              NODEPTH. There is no information about the WAIT flag, the
              SIMPLE flag actually supports no snip function.

            - Three new function for KS 2.0 that can be assigned to func-
              tion keys:

               ZIPWINDOW: replace for ICONIFY, equivalent to click on the
                          ZIP gadget.

               MINWINDOW: brings the window to its minimal size on the
                          position specified by SetGMC.

               MAXWINDOW: brings the window to the size and position speci-
                          fied by SetGMC.

            - GMC-Handler_2.0 has also its own SetGMC_2.0. The only diffe-
              rence is the syntax of the XY command:

               XY <x> <y> <x> <y> <w> <h>

              The first x-y pair gives the position for MINWINDOW, the
              second for MAXWINDOW. The w-h pair gives the size for
              MAXWINDOW. Values that exceed the upper bound cause this
              bound.

            - The GMC-Handler_2.0 has SIMPLE_REFRESH as the default refresh
              type. To get a window like in KS 1.2/4, the title flag SMART
              must be added.

            - The NEWSIZE function will be ignored together with SIMPLE_
              REFESH windows.

            - While a script file is opened, it isn't possible to display
              older parts of the display buffer.

            - There are several packet type that aren't supported yet, as
              the Console-Handler from SK 2.0 does, because the needed
              information is not available at the moment. As these packets
              aren't very important, this deficit isn't serious.


      V9.6: - Workbench window will be activated when right mouse button
              is pressed and released.

            - Error in output of history list removed which caused that
              the close gadget was ignored afterwards.


      V9.5: - Numbers of the edit functions correspond now to the descrip-
              tion in V9.4.

            - Shift-Help output corrected for new edit functions

            - Error in UNDO function removed.


      V9.4: - Error in RAW mode removed that was built in in V9.3.

            - Command line editing has now true jump/delete to next/previous
              word (5/6) and jump/delete to next/previous block (3/4) (old
              word functions). See GMC.Doc and SetGMC.Doc.


      V9.3: - Ctrl-C..F work also under KS 2.0.

            - Path in window title is refreshed also under KS 2.0.

            - Better support of dir/file name completer under KS 2.0 (only
              the new logical directories aren't supported yet).


      V9.2: - Workbench does now a refresh on its objects if the iconify
              function is used.


      V9.1: - Dir/File name completer now works with quoted files/dirs.
              But it can't display names that contain also quotes.

            - Internal modifications


      V9.0: - Dir/File name completer now doesn't work with the last path-
              file-part but with the path-file-part in which or behind which
              the cursor stands. If the cursor stands upon a space and the
              character to the left of the cursor is also a space, the search
              directory is the current one and the search pattern is an
              empty string. The C: directory is never used automatically
              as the search directory.

            - The TAB key can also be configurated by SetGMC. The syntax is
              the same as with the cursor and delete keys. Only the semantic
              differs. It is possible to assign a number from 0 to 7 to
              every qualifier. These numbers are interpreted as bit pattern
              with the following meaning:

                 Bit 2: show info files
                 Bit 1: show directories
                 Bit 0: show normal files

            - The syntax for the beep function was extended

                 BEEP <v> <c> <d> <m>

              If m is equal 0, there will be beeps only if a part of the
              window is obscured by another window. If m is equal 1, there
              will be always a beep. If the window's screen isn't the front
              most screen, there will be also always a beep, this is inde-
              pendent from m.

            - The priority of the beep signal has the new value of 80
              instead of 0.

            - In RAW mode no beeps are generated.

            - Now the directory path in the window title can be switched
              off again.

            - The iconify function will be disabled if the dos.library has
              a version number greater than 34, so with Kickstart 1.4/2.0.

            - Scrolling the window buffer to its end will no longer block
              intuition.

            - WaitIO() for audio request removed.

            - It is no longer possible that a icon is produced but the big
              window don't disappear.

            - SetGMC will display the command list if an unknown command
              is entered in the interactive mode.

            - Internal modifications


      V8.0: - Now configuration of GMC processes is done by an external
              command SetGMC instead of internal set commands. The same
              program can be used for default setting for all following
              GMC processes. SetGMC can be made resident. Description in
              SetGMC.Doc.

            - Actual directory path of the Shell/CLI process in the window
              title. Path is updated on reception of READ packets, normaly
              after display of new prompts.

            - Beep function if window isn't the front most on the front most
              screen. It is poosible to set the loudness, the duration, and
              the time interval that must be pass away between the send-back
              of a READ packet and the reception of the next one, to cause a
              beep.

            - Close gadget of Kickstart 2.0 can be generated by appending
              "/CLOSE" to the title in the startup window description.
              (e.g. "NewShell GMC:0/0/640/200/SHELL/CLOSE"). This works only
              with Shell from KS 2.0.

            - If the file name completer displays a directory name, a '/' is
              appended to the name.

            - The UnDo buffer is cleared after the window was resized (no
              correct display possible in all cases).

            - In script file only outputs are recorded that are made after
              the script file was opened. The buffer won't be cleared any
              longer when a script file is closed.

            - No more keyboard locking for the duration of outputs if the
              window is resized during these outputs.

            - Additional newline removed in CTRL-\.

            - Now page length setting for printer dump works again.

            - GMC will terminate if the first packet isn't an OPEN packet.
              But it will reply with "Unknown Packet Type".

            - New operating manual.


      V7.5: - Now GMC won't terminate, if a key is hit or a non-open packet
              is received before the first open packet. Keys before the
              first open packet are ignored.


      V7.4: - Now GMC can also handle dead keys.

            - ExtFuncProc compiled with Aztec 5.0a. It is possible that
              the old version of ExtFuncProc can crash on CPU with cache
              (MC68020 and greater). ExtFuncProc supports now FPU's.
              There is no change in the interface to ExtFuncProc.

            - If it isn't possible to start ExtFuncProc for any reason,
              however a GMC window will be opened and an error message
              will be shown. With this GMC window it isn't possible to
              used the PRT_SCR and the script function. If there is a pro-
              gram called ExtFuncProc but not the right one, GMC will open
              its window with an error message and won't hang any longer.
              In this case, it is possible that 20 Bytes of memory are lost.

            - With "Set PARSER:0" the internal set command parser is inacti-
              vated for output in the GMC window. Then it isn't possible
              that wrong or not wished Set's are executed. This feature don't
              reflect parsing keyboard input. "Set PARSER:1" reactivates the
              parser also for output. Default is a full activate parser. The
              last command of the Shell/CLI-Startup should be "Set PARSER:0".


      V7.3: - Buffer output by the line is now possible with Alt-DOWN.


      V7.2: - Compiled with Aztec 5.0a

            - Function keys settings can be now deleted by "Set <q>F<n>:"

            - Bug fixed in Packet SET_SCREEN_MODE (GURU with "LS df0: -r").

            - "Next Page  >>>  Ctrl-DOWN" will be now erased when the buffer
              output is continued.

            - After "Next Page  >>>  Ctrl-DOWN" the percentage of displayed
              buffer is shown.

            - The ESC key has now the function of an undo key to bring back
              the state of the command line before the last change.

            - GMC keeps tracking of the command line when the window is re-
              sized. This function must be activated by "Set NEWSIZE:1".
              The function works only in CON mode.

            - Internal Set commands are ignored in RAW mode.

            - If a command line is finished by Shift-RETURN, it won't be sent
              to the Shell/CLI but inserted in the command line history.

            - All arp.library functions are replaced by internal functions.

            - Internal modifications


      V7.1: - Bug fixed, which caused a script file that may contain not all
              the output to the window.

            - After the contents of the output buffer is displayed all out-
              standing ReadRequest are cleared. This removes CLI/Shell error
              message 'Unknown command "' if the output of some commands
              like "ls" is in the buffer.

            - Internal Set command now shows error messages on wrong argu-
              ments.

            - Help text for new function added.


      V7.0: - IMPORTANT - IMPORTANT - IMPORTANT -
              The STACK entry in the MountList was increased to 2500 Bytes.

            - Script function added: "Set SCRIPT:<filename>" specifies
              a file in which the buffer is stored when its end is reached.
              <filename> must start with a physical or logical device. If
              <filename> is "" an opened script file will be closed.
              This happens also if the GMC: window is closed.

            - Print buffer can also be shown in the window. Ctrl-UP jumps
              to the start of the buffer, Ctrl-DOWN shows the next page in
              the buffer.

            - Initial size of print buffer is always 4KByte. The buffer size
              can be changed with "Set DUMP:nnnnnn". nnnnnn must be greater
              than the old buffer size.

            - PRT_SCR function rewritten. GMC starts a new process with name
              ExtFuncProc (if it doesn't already exist). Instead of a func-
              tion started with ARP-ASynchRun, this process loads the
              printer.device. ExtFuncProc can execute almost every library
              function and it can be used from any other process, handler,
              and task. The program ExtFuncProc must be placed in in the
              directory L: It is probable that this modification fixed the
              GURU on printout in V6.x.

            - Bug fixed in error checking during handler startup.

            - Internal modifications.


      V6.2: - Function "Set PAGELEN:nn" added. If nn is not 00, at the
              beginning of every screen dump the page length will be set.
              nn is the page length in lines.

            - DISK_INFO packet: Entry DiskType will be correctly set
              in RAW mode.

            - '|', '(', and ')' as separators added.

            - Printout of command line recall and internal set command
              corrected.

            - ATTENTION: If after the start of a printout and before its
              end new characters are typed, it is possible that the program
              crashed which opened the GMC window. At the moment, it hap-
              pened only three times with ARP-Shell V39.


      V6.1: - "Set XY:xxx/yyy" works now also inside startup, instead of
              only working from keyboard.

            - No more error message with "Set fkeys:<n>".

            - All internal "Sets" (except "Set <x>F<n>:<string>") are
              tested now on additional characters after a correct command.


      V6.0: - PRT_SCR function performs a printout of the recent output
              in the window (memory depends on the inital window size).

            - The contents of the window won't be destroyed by an ICONIFY
              and output in the window can go on.

            - Icon position can be defined by "set XY:xxx/yyy"

            - Command lines with length 1 won't be saved in command history

            - If the handler was started in RAW mode it is possible to
              start it with a given window.

            - GMC: don't run with module terminal.mod of M2Amiga.

            - Internal modifications


      V5.1: - More help in CTRL-Help

            - Modification in command line expansion
                  only TAB:  Only files without info files
                  Shift:     Only info files
                  Ctrl:      Only directories
                  Alt:       All files and directories

            - Internal modifications


      V5.0: - IMPORTANT - IMPORTANT - IMPORTANT -
              The STACK entry in the MountList was increased to 1700 Bytes

            - Built-in set function ignores case of keywords and qualifiers

            - Command line history works now with a buffer of a fix amount
              (2KByte)

            - Search function in command line history ignores case

            - Command line expansion with TAB key
              (e.g.  "type s:st"  TAB  "type s:startup-sequence")

            - Functions of the arp.library (V39) are used

            - Function !n to recall previous command lines is removed


      V4.1: - Search pattern won't be changed if only cursor keys are used

            - Delete to start/end of line function changed


      V4.0: - Flexible assignment of the cursor and delete keys

            - Repeated search in the command history possible without
              new input of the search pattern

            - Iconify function won't be executed after the handler receives
              a DiskInfo packes (e.g. More)


      V3.0: - Iconify function added


      V2.0: - ACTION_SCREEN_MODE, ACTION_WAIT_CHAR packets added

            - Function keys and help keys can be switched off

            - Command line storage and recall changed

            - Bug in ACTION_DISK_INFO packet fixed

            - Several minor bugs fixed


      V1.0: First released version
