как обращаться к Fat системе

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
BOO
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 06.09.2003 (Сб) 14:23
Откуда: Саратовская обл. г.Энгельс

как обращаться к Fat системе

Сообщение BOO » 06.09.2003 (Сб) 14:30

Ну как?

fila
Обычный пользователь
Обычный пользователь
 
Сообщения: 58
Зарегистрирован: 04.02.2002 (Пн) 21:20

Сообщение fila » 07.09.2003 (Вс) 4:47

на C будет где-нибудь так:

asm {
mov ah,0x2;
mov al, кол-во_секторов;
mov bx, адрес_буфера;
mov ch, номер_сектора;
mov cl, номер_головки;
mov dh, номер_диска;
mov dl,0x80;
int 0x13;
}

ищи в гугле "reading fat asm"

пиши dll, и вызывай ее из vb.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 08.09.2003 (Пн) 12:36

Значит так:

автору темы замечание за некорректнй вопрос.

fila 2 замечания за:

1) За неправильный ответ.

2) За бессмысленный ответ.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 08.09.2003 (Пн) 14:20

Вообще-то пример правильный. Под DOS он будет работать на ура.
Другое дело, что к FAT это отношение имеет самое косвенное.
Lasciate ogni speranza, voi ch'entrate.

Георгий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 08.08.2003 (Пт) 15:08
Откуда: Россия

Сообщение Георгий » 08.09.2003 (Пн) 16:19

Что-то подсказывает мне, что это имеет отношение скорее к геометрии диска из CMOS, а не к FAT
Origin - это что?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 08.09.2003 (Пн) 16:35

За давностью лет я точно не помню и могу ошибаться :)
Но насколько я помню, через int13 вызывались функции BIOS, при этом в ah предварительно записывался код команды (0x02 это помоему чтение сектора), а в остальные регистры -- данные для этой команды.
Но винда работает не через прерывания BIOS, т.ч. пример в Windows старше Windows 95 работать не будет. Да и в 95 может не работать.
Lasciate ogni speranza, voi ch'entrate.

Георгий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 08.08.2003 (Пт) 15:08
Откуда: Россия

Сообщение Георгий » 08.09.2003 (Пн) 16:40

alibek писал(а):За давностью лет я точно не помню и могу ошибаться :)
Но насколько я помню, через int13 вызывались функции BIOS, при этом в ah предварительно записывался код команды (0x02 это помоему чтение сектора), а в остальные регистры -- данные для этой команды.

Тут ты полностью прав... я ступил :oops: Это действительно чтение сектора диска :)
alibek писал(а):Но винда работает не через прерывания BIOS

но их никто не отменял даже под NT :)
alibek писал(а):, т.ч. пример в Windows старше Windows 95 работать не будет. Да и в 95 может не работать.

Тут несколько не точно - ведь былоо сказано "а C будет где-нибудь так: ". Можно скомпилить под ДОС и все будет нормально работать под любой win-осью.
Origin - это что?

Георгий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 126
Зарегистрирован: 08.08.2003 (Пт) 15:08
Откуда: Россия

Сообщение Георгий » 08.09.2003 (Пн) 16:41

Кстати автор вопроса тоже про VB не говорил :)
Origin - это что?

_NeoN_
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 178
Зарегистрирован: 14.08.2003 (Чт) 9:48
Откуда: Новосибирск

Сообщение _NeoN_ » 08.09.2003 (Пн) 16:49

нафиг прерывания, лично я пишу все через порты, чтобы на диск записать че-нить надо обращаться к контроллеру винта :wink: шутка, это для извращенцев=) а вообще все будет работать везде и пофиг где компилить(вин 98 или NT)!! это я точно говорю =)

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 09.09.2003 (Вт) 10:40

_NeoN_, я бы не стал столь категорично утверждать :)

Потому что приямое обращение к диску из под Windows (начиная с 95) не привествуется этой операционкой.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 09.09.2003 (Вт) 14:12

_NeoN_, объясни мне глупому, в какой же порт надо обращаться, чтобы достучаться до контроллера винта? Мне очень интересно, на какой же порт маппится IDE-шина...
Lasciate ogni speranza, voi ch'entrate.

fila
Обычный пользователь
Обычный пользователь
 
Сообщения: 58
Зарегистрирован: 04.02.2002 (Пн) 21:20

Сообщение fila » 09.09.2003 (Вт) 17:25

> fila 2 замечания
приму к сведению.

чуствую, что может начаться долгий флейм, поэтому оставлю все без комментариев.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15

    TopList