{
{   The purpose of this request to read strings of text modified by the
{ keyboard.  Typically, this would be called by the application, in a loop
{ until all changes are exhausted, just after CSP$ACCEPT_INPUT.  When the
{ CSP$ACCEPT_INPUT procedure looks for the next keystroke that is significant
{ enough to report to the application, it marks which area of the screen were
{ affected by insignificant keystrokes such as overtyping of text and insertion
{ or deletion of characters.  The CSP$GET_CHANGED_TEXT procedure searches for
{ the first area (from top of screen) that is marked as changed, and returns
{ that text, unmarks it, and attempts to process as many other changes as can
{ fit into the application's "change container".  If the application neglects
{ to exhaust all changes between two calls to CSP$ACCEPT_INPUT, the change
{ markers will endure and can be utilized in a future call to
{ CSP$GET_CHANGED_TEXT.  The largest possible individual change description
{ would be for one complete screen row; the application should use a change
{ container large enough to contain one descriptor plus one screen-width,
{ since inability to store at least one change descriptor would cause
{ error code CSE$NO_TEXT_AVAILABLE.  Larger change containers are suggested
{ to minimize CALL/RETURN overhead.
{
{       CSP$GET_CHANGED_TEXT (P_CHANGE_CONTAINER, P_CHANGED_TEXT,
{             MORE_CHANGES, STATUS);
{
{ P_CHANGE_CONTAINER: (input)  This is a pointer to sequence which describes
{       a memory area owned by the application, into which changed text can
{       be encoded.
{
{ P_CHANGED_TEXT: (output)  Upon completion, this is a pointer to a sequence
{       within the memory area described by P_CHANGE_CONTAINER.  The
{       P_CHANGED_TEXT pointer describes how much of the memory area was
{       actually used, until all changes were exhausted or until the next
{       change would not have had enough room.  The memory area contains
{       a variable number of pairs, where each pair consists of a
{       descriptor and of an adaptable string.  The descriptor is of type
{       CST$TEXT_CHANGE_DESCRIPTION.
{
{ MORE_CHANGES: (output)  This boolean indicates whether or not the request
{       ran out of memory capacity before exhausting all changes.
{
{ STATUS: (output)  This receives any error codes.
{
{       condition identifiers:  cse$workspace_not_open
{                               cse$no_text_available
