{***********************************************************************}
{									}
{ __COffScn   Turn the cursor on or off 				}
{									}
{ procedure __COffScn(CursorOff : boolean);				}
{									}
{	      CursorOff If set to TRUE, the cursor is turned off,	}
{			otherwise the cursor is turned on.		}
{									}
{ Description __COffScn turns the cursor on or off.  The cursor is	}
{	      turned off by setting bit 5 of the byte representing	}
{	      the top scan line.  A BIOS call is made to return the	}
{	      scan lines, and then the bit is set (or cleared to	}
{	      turn the cursor on), and then the scan lines are set	}
{	      again by making another call to the BIOS.  See the	}
{	      description of __CSizeScn for information on how the	}
{	      cursor scan lines are set. The function __IsCurScn	}
{	      returns the state of the visibility of the cursor.	}
{									}
{ Version     4.00 (C)Copyright Blaise Computing Inc. 1987		}
{_______________________________________________________________________}

procedure __COffScn(CursorOff : boolean);

  var
    Reg : registers;

  begin {__COffScn}

    with Reg do 		       { First return the scan lines.	}
      begin
	AH := $03;		       { BIOS VIDEO subfunction 3	}
	BH := _CurDisplayPage;
	Intr(_VIDEO,Reg);
	if (CursorOff) then	       { Turn cursor off by setting	}
	   CH := CH or $20	       { bit 5 of CH on, and		}
	else			       { turn cursor on by clearing the }
	   CH := CH and $DF;	       { same bit.			}
	AH := $01;		       { Reset the cursor mode with the }
	Intr(_VIDEO,Reg)	       { same scan lines and altered bit}
      end

  end;	{__COffScn}
