Turbo Pascal 7.0 - Moduł Dos
Funkcje i procedury zawarte w tym module umożliwiają użytkownikowi ingerowanie w system operacyjny DOS. Pozwalają wykonać większość poleceń systemu operacyjnego związanych z operacjami dyskowymi, operacjami na funkcjach przerwań BIOS i DOS. Poniżej zamieszczono wykaz wszystkich funkcji i procedur, wchodzących w skład modułu oraz listę stałych, zmiennych i typów predefiniowanych. Stałe Identyfikacja atrybutów plików dyskowych:
Typy Rekord rejestrów procesora, używany przy obsłudze przerwań: Registers = record case Integer of 0: (AX, BX, CX, DX, BP, SI, DI, DS, ES, Flags: Word); 1 :(AL, AH, BL, BH, CL, CH, DL, DH: Byte) end; Rekord używany do generowania informacji o pliku dyskowym: SearchRec = record Fill: array(1..21] of Byte; Attr: Byte; { atrybuty pliku } Time: Longint; { Size: Longint; { Name: string[12] { nazwa i rozszerzenie } end; Rekord używany przy przekształcaniu czasu aktualizacji pliku - rekord daty i czasu: DateTime = record Year, Month, Day, Hour, Min, Sec: Word end; Typy napisowe: ComStr = string [ 127]; { PathStr = string [79]; { DirStr = string [67]; { NameStr = string [8]; { nazwa pliku bez rozszerzenia } ExtStr = string [4]; { rozszerzenie nazwy pliku } Funkcje i procedury DosVersion: Word Podanie numeru wersji systemu operacyjnego. Otrzymuje się wartość, której mniej znaczący bajt określa główny numer stosowanej
wersji systemu operacyjnego, a bardziej znaczący - poboczny.
Intr (num: Byte: var rej: registers) num - numer przerwania rej - przekazywane wartości pól rekorduWykonanie przerwania o podanym numerze z przesłaniem wartości pól rekordu rej do rejestrów procesora. MsDos (var rej: registers) rej - przekazywane wartości pól rekorduWykonanie przerwania systemu operacyjnego DOS z przesłaniem wartości pól rekordu rej do rejestrów procesora. GetDate (var rok, mc, dn, dntyg: Word) rok - 1980.. 2099 mc - 1-12 dn - 1..31 dntyg - 0..6 (O oznacza niedzielę)Pobranie daty z zegara systemowego. SetDate (rok, mc, dn: Word) rok - 1980.. 2099 mc - 1..12 dn - 1..31Ustawienie daty systemowej. GetTime (var godz, min, sek, sek100: Word) godz - 0..23 min - O.. 59 sęk - O..59 sek100 - 0..99Podanie bieżącego czasu z zegara systemowego. SetTime (godz, min, sek, sek100: Word) godz - 0..23 min - O.. 59 sęk - O..59 sek100 - 0..99Ustawienie zegara systemowego na zadaną godzinę. GetCBreak (var break: Boolean) break - zmienna typu BooleanSprawdzenie sutawienia klawiszy Ctrl-Break. True oznacza, że program może być przerwany w dowolnej chwili, a False - że tylko w czasie operacji wejścia-wyjścia. SetCBreak (break: Boolean) break - zmienna typu BooleanUstawienie przełącznika kontroli stanu klawiszy Ctrl-Break. GetVerify (var verify: Boolean) verify - zmienna typu BooleanSprawdzenie stanu przełącznika weryfikacji zapisu na dysku. True oznacza przeprowadzanie weryfikacji zapisu na dysku, False - że weryfikacja zapisu na dysku nie jest przeprowadzana. SetVerify (verify: Boolean) verify - zmienna typu BooleanUstawienie przełącznika weryfikacji zapisu na dysku. True oznacza przeprowadzanie weryfikacji zapisu na dysku, False - że weryfikacja zapisu na dysku nie jest przeprowadzana. DiskFree (dysk: Byte): Longint dysk - numer stacji (O - bieżąca, 1 - A:, 2 - B: itd.)Zreaca ilość wolnych bajtów na wskazanym dysku. DiskSize (dysk: Byte): Longint dysk - numer stacji (O - bieżąca, 1 - A:, 2 - B: itd.)Zwraca pojemność wskazanego dysku w bajtach. GetFAttr (var plik; var atr: Word) plik - plik dyskowy związany ze zmienną plik atr - atrybuty pliku dyskowegoPrzypisanie parametrowi atr atrybutów pliku wskazanego przez plik. SetFAttr (var plik; atr: Word) plik - plik dyskowy związany ze zmienną plik atr - atrybuty pliku dyskowegoZmiana wartości atrybutów pliku wskazanego przez plik na nowe (atr). GetFTime (var plik; var czas: Longint) plik - plik dyskowy związany ze zmienną plik czas - czas ostatniej aktualizacji pliku dyskowegoZreaca czas ostatniej aktualizacji pliku dyskowego, możliwy do odczytania po użyciu procedury UnpackTime. SetFTime (var plik; czas: Longint) plik - plik dyskowy związany ze zmienną plik czas - zakodowany czas utworzenia pliku dyskowegoUstawia czas ostatniej aktualizacji wskazanego pliku dyskowego. UnpackTime (czas: Longint; var rek: DateTime) czas - czas w postaci spakowanej rek - rekord daty i czasuKonwersja czasu odczytanego w GetFTime na rekord daty i czasu. PackTime (var rek: DateTime; czas: Longint) czas - czas w postaci skakowanej rek - rekord daty i czasuKonwersja rekordu daty i czasu na czasu w postaci LongInt. FindFirst (maska: PathStr; atr: Word; var info: SearchRec) maska - wzorzec nazwy szukanego pliku z ewentualną ścieżką dostępu atr - atrybuty szukanego pliku info - rekord zawierający informacje o znalezionym plikuSzukanie pierwszego pliku według zadanego wzorca i atrybutów. Uzyskane informacje znajdują się w zmiennej info. Brak pliku jest sygnalizowany w zmiennej DosError. FindNext (var info: SearchRec) info - rekord zawierający informacje o znalezionym plikuSzukanie następnego pliku według specyfikacji zamieszczonej w procedurze FindFirst. Wartość parametru aktualnego musi być taka sama, jak wartość trzeciego parametru w FindFirst. Brak pliku jest sygnalizowany w zmiennej DosError. GetlntVec (num: Byte; var wek: Pointer) num - numer przerwania wek - wskaźnik procedury obsługi przerwaniaPrzypisanie wek wskaźnika do procedury obsługi przerwania o numerze num. SetIntVec (num: Byte; wek: Pointer) num - numer przerwania wek - wskaźnik procedury obsługi przerwaniaZainicjowanie obsługi przerwania o danym numerze num przez procedurę wskazaną przez wskaźnik wek. SwapVectorsPrzywraca poprzedniś procedurę obsługi przerwania według wskaźników procedur obsługi. Keep (kod: Word) kod - kod wyjściaZakończenie wykonywania programu z pozostawieniem go w pamięci wraz ze stosem i stertą. dostęp - nazwa pliku lub pełna nazwa pliku par - parametr wywołania programuWywołanie innego programu z poziomu programu aktualnie wykonywanego z opcjonalnie przekazanymi parametrami. DosExitCode: Word Sposób zakończenia programu wykonywanego za pomocą Exec:
0 - normalne zakończenie; 1 - w wyniku użycia klawiszy Ctrl-C lub Ctrl-Break; 2 - z powodu błędu urządzenia; 3 - w wyniku użycia procedury Keep. dostęp - pełna nazwa szukanego plik lista - lista katalogów (elementy oddzielane średnikami)Szukanie pliku o podanej nazwie z wykorzystaniem ścieżek określonych przez parametr lista. Otrzymana wartość to pełna nazwa pierwszego znalezionego pliku. Jeśli stacja i katalog są bieżące, to wynikiem jest tylko nazwa pliku. Jeśli plik nie został odnaleziony, to w wyniku otrzymuje się pusty łańcuch znaków. dostęp - pełna nazwa pliku wynik: Pełna nazwa plikuZwraca nazwę podanego plku wraz z pełną ścieżką dostępu. dostęp - ścieżka dostępu do pliku dyskowego z jego nazwą i rozszerzeniem kat - stacja dysków i ścieżka dostępu naz - nazwa pliku roz - rozszerzenie plikuRozdzielenie pełnej ścieżki dostępu na trzy człony: stacji ze ścieżką dostępu, nazwę pliku oraz rozszerzenie. EnvCount: Integer Zwraca liczbę parametrów bieżącego środowiska systemu operacyjnego DOS.
EnvStr (num: Integer): string num - numer parametru określającego środowisko systemu operacyjnegoZwraca wartość parametru num środowiska systemu operacyjnego DOS. GetEnv (par: string): string par - nazwa parametru środowiska systemu DOSZwraca wartość parametru par środowiska systemu operacyjnego DOS.
|