Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как открыть крышку CD-ROM, без использования ф-ций win? 
:(
    Опции темы
Гость_Sniper
Дата 7.8.2003, 16:44 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как открыть крышку CD-ROM без использования ф-ций win?
ответ либо кодом либо чтивом! :-)
  Вверх
a78040767
Дата 9.8.2003, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 20.4.2003
Где: Новочеркасск

Репутация: нет
Всего: нет



Могу привести код на Pascale
но это очень гемморойный вариантsmile.gif (в смысле без функций винды)

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.

PM MAIL ICQ   Вверх
Гость_Sniper
Дата 10.8.2003, 12:06 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











спасибо буду разбираться :-)
  Вверх
Гость_Sniper
Дата 12.8.2003, 18:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Чего-то не работает..... всё компилится и не работает! :-(
  Вверх
p0s0l
Дата 12.8.2003, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



Странно, но у меня работает... Прямо так всtавил, ничего не меняя...



--------------------
С уважением, г-н Посол.
PM   Вверх
a78040767
Дата 18.8.2003, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 20.4.2003
Где: Новочеркасск

Репутация: нет
Всего: нет



Гость_Sniper кинь своё мыло я тебе документацию дам.
PM MAIL ICQ   Вверх
a78040767
Дата 18.8.2003, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 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

PM MAIL ICQ   Вверх
Sniper
Дата 19.8.2003, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



a78040767
Я не Гость_Sniper а просто Sniper (мне лень просто заходить НОРМАЛЬНО! :-)))


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
Sniper
Дата 19.8.2003, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 511
Регистрация: 8.5.2002

Репутация: нет
Всего: 2



Спасибо! У меня эта цифра 5 :-)

Документацию конечноже жду! :-)


--------------------
"Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный".
Кен Томпсон, создатель Unix
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0446 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.