Using control characters in a SUBMIT file
-----

        Question:  How  do I enter control characters into a SUBMIT file?
The instructions on page 28 of the CP/M manual do not seem to work.

        Answer:  SUBMIT requires you to enter '^z' to place a CTRL Z in the
file.  The problem comes in that SUBMIT also converts all characters to
uppercase.  The following patch suggested by Digital Research will  modify
SUBMIT to require '^Z'.

A>ddt submit.com
DDT VERS 2.2
NEXT  PC
0600 0100
-s442
0442 61 41
0443 32 .
-g0
A>save 5 submit.com

        This alternate patch will allow lowercase characters to be entered
which is also extremely helpful when using XSUB and ED with strings that
require lowercase characters.


A>ddt submit.com
DDT VERS 2.2
NEXT  PC
0600 0100
-s370
0370 5F FF
0371 32 .
-g0
A>save 5 submit.com

        The following example submit file (using only the alternate patch)
uses ED to search a file and replace all lowercase strings 'recieve' with
'receive'.

xsub
ed file.doc
#a
b#srecieve^zreceive
e

        It should be mentioned that in no case can the control characters
'^P' or '^C' be used in a submit file to obtain the normal functions of
console input for printer toggle or warm start.


CTRL P and CTRL C in a SUBMIT file
-----

        Question:  Why can't I put "CTRL P" and "CTRL C" in a SUBMIT file
using the instructions in the manual?

        Answer:  The usual processing of characters done by the BDOS on
input is bypassed when using SUBMIT.  The following programs can simulate
these functions.

                ;
                ;       PRINT - turn printer echo on and off
                ;
                ; Usage:
                ;
                ;       A>PRINT ?
                ;(turn printer echo on with anything following PRINT)
                ;       A>PRINT
                ;(turn printer echo off with nothing following PRINT)
                ;
 0100                   org     0100h
 0100 2A4E00            lhld    04eh    ;address of bios
 0103 110DF5            lxi     d,0f50dh ;offset of flag in bdos
 0106 19                dad     d       ;point to it
 0107 3A8000            lda     080h    ;echo on or off?
 010A 77                mov     m,a     ;set the flag
 010B C9                ret             ;return directly to ccp

                ;       WBOOT - perform a warm boot
                ;
 0100                   org     0100h
 0100 C7                rst     0

;
;PAUSE - suspend execution of a SUBMIT file until a character is typed
;
 0100                   org     0100h
 0100 0E09              mvi     c,9
 0102 110D01            lxi     d,prompt
 0105 CD0500            call    5
 0108 0E01              mvi     c,1
 010A C30500            jmp     5
 010D 5479706520prompt  db      'Type any key when ready to continue$'

