home *** CD-ROM | disk | FTP | other *** search
-
- FUNCTION getword(VAR line:stringtype) : stringtype;
-
- VAR
- word : stringtype;
- pos1 : INTEGER;
-
- BEGIN
- WHILE POS(' ',line) = 1 DO
- DELETE (line,1,1);
-
- pos1 := POS(' ',line);
-
- IF (pos1 <> 0 ) THEN
- BEGIN
- word := COPY(line,1,pos1-1);
- DELETE(line,1,pos1);
- END
-
- ELSE
- BEGIN
- word := line;
- line := '';
- END;
-
- getword := word;
-
- END;
-
- PROCEDURE getdta;
-
- BEGIN
- INLINE
- ( $b4/$2f/ {mov ah,2f}
- $cd/$21/ {int,21}
- $89/$1e/bx/ {mov (bx),bx }
- $8c/$c3/ {mov bx,es }
- $89/$1e/es {mov (es),bx }
- )
- END;
-
-
-
- PROCEDURE getfile(VAR file_search);
-
- VAR
- i,j : INTEGER;
-
-
- BEGIN
-
-
- BEGIN;
- INLINE (
- $8b/$56/$04/ {mov dx,[bp+04]}
- $81/$c2/$01/$00/{add dx,0001}
- $b9/$00/$00/ {mov cx,0000}
- $b4/$4e/ {mov ah,4e}
- $cd/$21/ {int 21h }
- $a2/al {mov (al),al}
- )
- END;
-
-
-
-
- i := 30;
- filename := '';
-
- IF (al <> 02) AND (al <> 18) THEN
- BEGIN
-
- WHILE MEM[es:bx+i] <> 0 DO
- BEGIN
- filename := CONCAT(filename,CHR(MEM[es:bx+i]) );
- i := i +1;
- END;
- END;
- END;
-
- PROCEDURE getnext;
-
- BEGIN
- BEGIN
- INLINE (
- $b4/$4f/ {mov ah,4f}
- $cd/$21/ {int 21h }
- $a2/al {mov (al),al}
- )
- END;
-
- i := 30;
- filename := '';
-
- IF (al <> 02) AND (al <> 18) THEN
- BEGIN
-
- WHILE MEM[es:bx+i] <> 0 DO
- BEGIN
- filename := CONCAT(filename,CHR(MEM[es:bx+i]) );
- i := i +1;
- END;
- END;
- END;
-
- PROCEDURE save_dta;
-
- VAR
- i:INTEGER;
-
- BEGIN
-
- FOR i := 0 TO 127 DO
- dta[i] := MEM[es:bx+i] ;
- END;
-
-
- PROCEDURE restore_dta;
-
- VAR
- i:INTEGER;
- BEGIN
-
- FOR i := 0 TO 127 DO
- MEM[es:bx+i] := dta[i];
- END;
-
- PROCEDURE write_dta;
-
- VAR
- i:INTEGER;
- BEGIN
- WRITELN;
-
- FOR i := 0 TO 70 DO
- WRITE(CHR(MEM[es:bx+i]) );
- WRITELN;
- END;