[Overview][Constants][Types][Procedures and functions][Variables][Index] Reference for unit 'go32' (#rtl)

seg_fillchar

Fill segment with byte value

Declaration

Source position: go32.pp line 124

procedure seg_fillchar(

  seg: Word;

  ofs: LongInt;

  count: LongInt;

  c: Char

);

Description

Sets a memory area to a specific value.

Parameters:

seg
selector to memory area.
ofs
offset to memory.
count
number of bytes to set.
c
byte data which is set.

Return values: None.

Notes: No range check is done in any way.

Errors

None.

See also

seg_move

  

Move data between 2 locations

seg_fillword

  

Fill segment with word value

dosmemfillchar

  

Fill a region of DOS memory with a specific byte-sized value

dosmemfillword

  

Fill a region of DOS memory with a specific word-sized value

dosmemget

  

Copy data from DOS memory to the heap.

dosmemput

  

Copy data from the heap to DOS real mode memory

dosmemmove

  

Move data between 2 DOS real mode memory locations

Example

{This example demonstrates the use of the segment_to_descriptor()
function.

It switches to VGA mode 13h (320x200x256 color), creates a selector
to the memory (based at $A000:0000), clears this memory with color
15 (white) and waits until the enter key is pressed }

uses go32;

var
        vgasel : Word;
        r : trealregs;

begin
        { set VGA mode 13h }
        r.eax := $13; realintr($10, r);
        { allocate descriptor to VGA memory quickly; it could be done
        with allocate_ldt_descriptors() too, but we would have to
        initialize it by ourselves... unlike segment_to_descriptor()
        which automatically sets the limit and the base address
        correctly }
        vgasel := segment_to_descriptor($A000);
        { simply fill the screen memory with color 15 }
        seg_fillchar(vgasel, 0, 64000, #15);
        { wait for a return press }
        readln;
        { back to text mode }
        r.eax := $3; realintr($10, r);
        { don't deallocate vgasel, that can't be done }
end.

Documentation generated on: Sep 28 2017