|
|
DRVCOUNT.PAS |
|
{* Подсчет количества дисков *}Unit DRVCOUNT;Interface Implementation Begin writeln('Программа показывает количество доступных дисковых устройств '); End. Program pas; Uses DRVCOUNT.pas; {* Эту строку можно удалить *} {$B - , N + , E + , I - , D - } { ************************************************************** } { * * } { * BZSoft 1990 * } { * * } { ************************************************************** } { Routine For search Disk Number } Uses Dos, Crt, TPDos; {* Подключение модулей *} Var {* Необходимые переменные *} INT11Dat : Word Absolute $0; NumFloppy : BYTE; NumDr : BYTE; I : BYTE; LD : byte; r : registers; d : byte; Begin d := NumberOfDrives; d := ord(d) - 64; r.dl := d; r.ah := $32; MsDos(r); While r.al = $0FF Do Begin dec(d); {* Вычтем из d единицу *} r.dl := d; MsDos(r); End; LD := 64 + d; If (INT11dat And $0001) = 0 Then NumFloppy := 0 Else Begin Case (INT11Dat And $00C0) Of $00 : NumFloppy := 1; $40 : NumFloppy := 2; $80 : NumFloppy := 3; $C0 : NumFloppy := 4; End; End; NumDr := LD - 64 - ( NumFloppy And 1 ); If HandleIsConsole(StdOutHandle) Then Writeln (' BZSoft 1990. ( ', NumDr, ' active logical (disk) drives found.)'); Halt(NumDr); End...... 07.08.2014 - Breakpoint - точка остановки 07.08.2014 - Топ-10 самых популярных приложений в Facebook 18.11.2013 - Панель управления и персонализация системы. Windows Vista 18.11.2013 - Логические и физические диски. Windows Vista 18.11.2013 - Удаление файлов и папок 01.11.2013 - Программирование дисковых подсистем: возможности 31.10.2013 - Windows8 или Windows7? 31.10.2013 - Windows8, игры |
|
Non-commercial fansite
|