Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

int 13h [D5, D6, Win95/98]


sammy ©   (2002-10-01 10:47:00) 

Хочу сохранить 512 байт загрузчика в
файл.
По нажатию button:
mov ah,02h ;read sectors func
mov al,1 ;quantity of sectors
mov ch,0 ;0 cylinder
mov cl,1 ;1 sector
mov dh,0 ;number of surface
mov dl,80h ;hdd code 0-A: 1-B: 80h-hdd
mov bx,offset mboot ;buffer for read
int 13h ;goto bios
Далее запись из буфера mboot в файл.
Буфер объявлен так
mboot db 512 dup(0)
Все останавливается на int 13h
и сразу ошибка.
Я что-то не так сделал?
Отмечу сразу - это не вирус!
Осваиваю низкоуровневое программирование + Delphi.


drpass   (2002-10-01 15:17:00) [1]

Только в DOS. В Windows ( особенноХР) прямой доступ в диску закрыт


Smithson   (2002-10-01 14:53:00) [2]

В защищенном режиме прерывания переназначены. Поэтому никакого 13h для работы с дисками нет. В Windows ищи подходы к драйверу устройства (диска).


Digitman   (2002-10-01 14:47:00) [3]

ты понимаешь разницу между real-, protected- и VM86-режимами работы CPU i80x86 ?


sammy   (2002-10-01 14:28:00) [4]

Честно говоря это не в букваре.
Подобная штука находится в книге
Рудакова и Финогенова про ассемблер.
Вот я и попробовал его перенести на Delphi.
Честно говоря Вынь и на асм ругается и на
Delphi. Что-то не получается.
Я даже в ХР попробовал. Он тоже показал
ошибку, 13h не выполнил, но последующий
код выполнил и создал файл размером 512 байт.

Ну-с, господа, как же выполнить 13-е прерывание?
Если это не возможно, то как это сделать
средствами Delphi?

А с 21h пока все работает, тьфу-тьфу!

Жду посылок.


Digitman   (2002-10-01 14:00:00) [5]

>sammy

В каком же букваре по Делфи (именно - по Делфи !) ты нашел этот пример ?


Игорь Шевченко   (2002-10-01 13:27:00) [6]

Вообще-то Delphi и низкоуровневое программирование - вещи, мягко говоря, не совместимые. Особенно, на таком низком уровне... :-)))


RV   (2002-10-01 13:23:00) [7]

чего захотел! 13 прерывание...
тут 21 не всегда под Виндой работает.


Наверх

Титульная страница Поиск, карта сайта Написать письмо