![]() |
|
|
![]()
|
|
| Гость_Sniper |
|
|||
|
Unregistered |
Как открыть крышку CD-ROM без использования ф-ций win?
ответ либо кодом либо чтивом! :-) |
|||
|
||||
| a78040767 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 20.4.2003 Где: Новочеркасск Репутация: нет Всего: нет |
Могу привести код на Pascale
но это очень гемморойный вариант type DWORD=array [0..1] of word; TReqHdr=record Size :byte; SubUnit :byte; Command :byte; Status :word; Reserved :array[0..7] of byte; end; TIOCTL=record ReqHdr :TReqHdr; MediaDescriptor :byte; TransferAddress :pointer; DataSize :word; StartSector :word; VolID :dword; end; var IOCTL :^TIOCTL; FunctionCode :byte; begin New(IOCTL); FunctionCode:=0; With IOCTL^ do begin ReqHdr.Size:=SizeOf(TIOCTL); ReqHdr.SubUnit:=0; ReqHdr.Command:=12; MediaDescriptor:=0; TransferAddress:=@FunctionCode; DataSize:=1; StartSector:=0; longint(VolID):=0; end; asm mov ax,1510h mov cx,4 mov bx,word ptr IOCTL+2 mov es,bx mov bx,word ptr IOCTL int 2Fh end; Dispose(IOCTL); end. |
|||
|
||||
| Гость_Sniper |
|
|||
|
Unregistered |
спасибо буду разбираться :-)
|
|||
|
||||
| Гость_Sniper |
|
|||
|
Unregistered |
Чего-то не работает..... всё компилится и не работает! :-(
|
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 2 Всего: 112 |
Странно, но у меня работает... Прямо так всtавил, ничего не меняя...
-------------------- С уважением, г-н Посол. |
|||
|
||||
| a78040767 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 20.4.2003 Где: Новочеркасск Репутация: нет Всего: нет |
Гость_Sniper кинь своё мыло я тебе документацию дам.
|
|||
|
||||
| a78040767 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 20.4.2003 Где: Новочеркасск Репутация: нет Всего: нет |
и еще..
как я понял у тебя не работает вот почему: в регистре cx должен быть номер твоего CDROMa A:=0;B:=1;С:=2 и т.д. {это в конце, в ассемблерной вставке} и вообще смотри Interrupt list там всё написано. -> Inp.: AX = 1510h CX = CD-ROM drive letter (0 = A, 1 = B, etc) ES:BX -> CD-ROM device driver request header (see #02597 at AX=0802h) Return: CF clear if device driver has been called (check the request header's status word to determine whether an error has occurred) ES:BX request header updated CF set if device driver has not been called AX = error code (000Fh = invalid drive, 0001h = invalid function) ES:BX request header unchanged Notes: MSCDEX initializes the device driver request header's subunit field based on the drive number specified in CX MSCDEX v2.21 through v2.25 (at least) return error code AX=0001h if nested calls are attempted BUGS: Novell DOS 7 NWCDEX prior to the 12/13/94 update did not initialize the subunit field Windows95 sets CF if CX isn't a CD-ROM drive but leaves CF unchanged if the drive is in fact a CD-ROM SeeAlso: AX=0802h Copied from Ralf Brown's Interrupt List |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
a78040767
Я не Гость_Sniper а просто Sniper (мне лень просто заходить НОРМАЛЬНО! :-))) -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Спасибо! У меня эта цифра 5 :-)
Документацию конечноже жду! :-) -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |