Přidáno 1 206 bajtů,
2. 10. 2012, 15:26 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]]
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.
[[Category:DOS]]
[[Category:WinDos]]
[[Category:Procedúry DOS]]
[[Category:Procedury podpory přerušení]]