[Back to TEXTWNDW SWAG index] [Back to Main SWAG index] [Original]

    {NOTE: "VS" is the video segment, $B800 for color,
    $B800 for mono. Attribute is "FORECOLOR + (BACKGROUND shl 4);" it is
    normally set to 8. }

    procedure SetChAttr(x, y, attr: byte);
    begin
      Mem[VS:160*(Y-1)+2*(X-1)+1] := attr;
    end;

    procedure Shade(X, Y, X2, Y2, attr: byte);
    var
      Cnt: byte;
      wh: word;
    begin
      for Cnt := Y+1 to y2+1 do
       begin
         SetChAttr(x2+1, cnt, attr);
         SetChAttr(x2+2, cnt, attr);
       end;

      for Cnt := x+2 to x2-1 do
       begin
         SetChAttr(Cnt, y2+1, Attr);
         SetChAttr(Cnt+1, y2+1, Attr);
       end;
    end;

[Back to TEXTWNDW SWAG index] [Back to Main SWAG index] [Original]