home *** CD-ROM | disk | FTP | other *** search
- Procedure fillWord(Var dest; count, data: Word);
- begin
- Inline(
- $C4/$BE/dest/ { les di, dest[bp] }
- $8B/$8E/count/ { mov cx, count[bp] }
- $8B/$86/data/ { mov ax,data[bp] }
- $FC/ { cld }
- $F3/$AB { rep stosw }
- )
- end;
-
- Procedure ClrScr;
- Var
- screen: Array[1..25, 1..80, 1..2] of Char Absolute $b800:$0000;
- begin
- fillWord(screen, sizeof(screen) div 2, $0720)
- end;
-
- { or }
-
- Procedure ClrScr;
- Type
- TScreen: Array[1..25, 1..80, 1..2] of Char;
- Var
- VideoSegment: Word;
- begin
- if (MemW[$40:$10] and $30)=$30 then
- VideoSegment:=$B000
- else
- VideoSegment:=$B800;
- fillWord(ptr(VideoSegment, 0)^, sizeof(TScreen) div 2, $0720)
- end;