home *** CD-ROM | disk | FTP | other *** search
-
- (*
- * this procedure should be called often inside the "nothing to do" loop when
- * the system has nothing to do (eg. waiting for a host mode call; no rx/tx
- * activity when online; sitting at a dialing directory prompt; etc.)
- *
- * this call does nothing (and is SAFE) when doubledos is not used
- *
- *)
-
- procedure give_up_time; {give up unused time under doubledos}
- var
- reg: registers;
- i: integer;
-
- begin
- {simple delay to reduce frequency of give-up-time calls, in case they
- cause some interference under non dv/dd environments}
- for i := 1 to 1000 do ;
- {exit;}
-
- {get topview/taskview version}
- reg.bx := 0;
- reg.ax := $1022;
- intr($15,reg);
-
- {give up time with taskview}
- if reg.bx <> 0 then
- begin
- reg.ax := $1000; {give up remainder of timeslice}
- intr($15,reg);
- end
- else
-
- {give up time with doubledos}
- begin
- reg.ax := $fe01;
- msdos(reg);
- end;
- end;
-
-
-