home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Simtel MSDOS 1992 June
/
SIMTEL_0692.cdr
/
msdos
/
desqview
/
dvintf.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1988-03-13
|
2KB
|
65 lines
program DV_Intf; {DesqView interface}
{ these are Turbo routines to talk to DesqView from a program that
writes directly to screen }
var
test: integer;
MsDosRegs: RECORD
CASE INTEGER OF
1: (
AX, BX, CX, DX, BP, SI, DI, DS, ES, Flags: INTEGER);
2: (
AL, AH, BL, BH, CL, CH, DL, DH: BYTE);
END;
function DV_check : boolean;
begin
with msdosregs do BEGIN
AX := $2B01;
CX := $4445; {'DE'}
dx := $5351; {'SQ'}
msdos(msdosregs); {using 'desq' for date gives result}
DV_CHECK := (al <> $ff); {if al <> $ff then DQ is running}
end;
end;
function DV_GET_Buffer(dispseg: integer) : integer;
begin
with msdosregs do begin
if DV_check then begin
es := dispseg;
di := 0; {setup buffer address to disp buffer}
ax := $fe00;
intr($10,msdosregs);
dv_get_buffer := es;
end
else dv_get_buffer := dispseg;
end;
end;
begin
if DV_check then begin
test := dv_get_buffer($b800);
end;
end.
P, SI, DI, DS, ES, Flags: INTEGER);
2: (
AL, AH, BL, BH, CL, CH, DL, DH: BYTE);
END;
function DV_check : boolean;
begin
with msdosregs do BEGIN
AX := $2B01;
CX := $4445; {'DE'}
dx := $5351; {'SQ'}
msdos(msdosregs); {using 'desq' for date gives result}
DV_CHECK := (al <> $ff); {if al <> $ff then DQ is running}
end;
end;
function DV_GET_Buffer(dispseg: integer) : integer;
begin
with msdosregs do begin
if DV_check then begin
es := dispseg;
di := 0; {setup buffer address to disp buffer}
ax