next up previous contents index
Next: dosmemfillword Up: Functions and Procedures Previous: dosmemmove

dosmemfillchar

   

Declaration:

Procedure dosmemfillchar (seg, ofs : Word; count : Longint; c : char) ;

Description:

Sets a region of DOS memory to a specific byte value

Parameters:

seg:
real mode segment
ofs:
real mode offset
count:
number of bytes to set
c:
value to set memory to

Return values: none

Notes: No range check is performed.

Errors:

none

See also:

dosmemput, dosmemget, dosmemmovedosmemmove, dosmemfillword, seg_move, seg_fillchar, seg_fillword

Example
Program textmess;

uses crt, go32;

const columns = 80;
      rows = 25; 
      screensize = rows*columns*2;

      text = '! Hello world !'; 

var textofs : Longint;
    save_screen : array[0..screensize-1] of byte;
    curx, cury : Integer;

begin
     randomize;
     dosmemget($B800, 0, save_screen, screensize);
     curx := wherex; cury := wherey;
     gotoxy(1, 1); Write(text);
     textofs := screensize + length(text)*2;
     dosmemmove($B800, 0, $B800, textofs, length(text)*2);
     dosmemfillchar($B800, 0, screensize, #0);
     while (not keypressed) do 
       begin
       dosmemfillchar($B800, 
                      textofs + random(length(text))*2 + 1,
                      1, char(random(255)));
       dosmemmove($B800, textofs, $B800,
                  random(columns)*2+random(rows)*columns*2,
                  length(text)*2);
           delay(1);
     end;
     readkey;
     readkey;
     dosmemput($B800, 0, save_screen, screensize);
     gotoxy(curx, cury);
end.



Michael Van Canneyt
Thu Sep 10 13:59:33 CEST 1998