MsDos

From Delphi & Pascal (česká wiki)
Jump to navigation Jump to search

Vykoná volání funkce DOSu.

Deklarace
procedure MsDos(var Regs: Registers);      { Dos }
procedure MsDos(var Regs: TRegisters);     { WinDos }
Režim
Windows, Reálný, Chráněný
Poznámky
Efekt volání MsDos je stejný jako volání Intr s IntNo rovno $21. Registers je záznam definovaný v jednotce Dos. Píšete-li program pro Windows, použijte TRegisters.


Omezení
Nepoužívejte softwarová přerušení, která:
  • závisí na určitých vstupních hodnotách registru SP nebo SS
  • modifikují obsah registrů SP nebo SS při výstupu


Viz také
Intr
Konstanty příznaků


Vzorový příklad

{ MsDos.PAS }
{ Vzorový příklad pro proceduru MsDos. }
{ Pro Windows: }
{ uses WinDos, WinCrt; }
uses Dos;
var
  date, year, month, day: string;
  regs: Registers;      { Pro Windows: TRegisters }
begin
  regs.ah := $2a;
  with regs do
  msdos(regs);
  with regs do
    begin
      str(cx ,year);
      str(dh ,month);
      str(dl,day);
    end;
  date := month+'/'+day+'/'+year;
  writeln('Dnešní datum je ', date);
end.