GN_Sip, System input line routine
Register parameters
RST 20H, DEFW $0E09
IN: DE = buffer for input string A0 = 1, buffer already contains data to be edited A1 = 1, force insert/overwrite mode (see A2) A2 = 1, 0 = insert mode, 1 = overwrite mode (ignored if A1 = 0) A3 = 1, return special characters, else ignore A4 = 1, return if wrap occurs A5 = 1, single line lock control A6 = 1, display in reverse video A7 = 1, if A3 = 1, allow for insert/overwrite return B = length of buffer C = cursor position, if A0 = 1 (set C = B if C > B) L = width of line, if A5 = 1 (incl. null-terminator) OUT, if call successful: Fc = 0 B = length of line entered, including terminating null C = cursor position on exit A = character which caused end of input OUT, if call failed: Fc = 1 A = error code: RC_BAD ($04), bad arguments RC_WRAP ($0D), wrapping has occurred (only if A4 = 1) RC_SUSP ($69), suspicion of suspension RC_DRAW ($66), application screen needs redrawing RC_QUIT ($67), kill request (e.g. from INDEX) RC_ESC ($01), if escape detection is enabled Registers changed after return: ....DEHL/IXIY same AFBC..../.... different
Bugs
Crashes OZ while in a popdown and an error handler is installed in segment 2, when the popdown is pre-empted (with RC_QUIT) during the GN_Sip call.
Related calls
GN_Gmt, get (read) machine time in internal formatÂ
GN_Gtm, convert an ASCII string to a time in internal formatÂ
GN_Msc, miscellaneous time operationsÂ
GN_Pmt, put (set) machine timeÂ
GN_Ptm, write internal time as ASCII stringÂ
OS_Dly, delay a given period