Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Люди добрые помогите....

2.2K
24 ноября 2002 года
Lain
7 / / 19.11.2002
Доброго времени суток!
Мне нужна помощь: кому не в тягость помогите мне.
Мне нужен исходник загрузчика ДОС, и исходник проги который пишет загрузочный диск (аналог SYS.COM)
Спасибо.
395
24 ноября 2002 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by Lain
Доброго времени суток!
Мне нужна помощь: кому не в тягость помогите мне.
Мне нужен исходник загрузчика ДОС, и исходник проги который пишет загрузочный диск (аналог SYS.COM)
Спасибо.


Да полно исходников таких только конечно не Мелкософтовских. А sys.com просто помойму системные файлы копирует и усе. Загрузочный сектор создается format.com, который при вставленной дискете запускается и если на ней нет системных файлов выдает надпись Invalid sistem disk и т.д. Если не веришь можешь просто скопировать системные файлы на дискету и произойдет чудо :)

2.3K
25 ноября 2002 года
Mystic
17 / / 25.11.2002
Цитата:
Originally posted by Lain
Доброго времени суток!
Мне нужна помощь: кому не в тягость помогите мне.
Мне нужен исходник загрузчика ДОС, и исходник проги который пишет загрузочный диск (аналог SYS.COM)
Спасибо.




Под DOS
=======

Записать в загрузочный сектор можно например так:

var
Boot: array [0..511] of Char;

..........................

asm
PUSH ES
MOV AH, 03h
MOV DL, 00h
MOV DH, 0
MOV CX, 1
MOV AL, 1
PUSH DS
POP ES
MOV BX, Offset Boot
INT 13h
POP ES
MOV TestIO, 1
JNC @@1
DEC TestIO
@@1:
end;

if not TestIO then { Write fail }


Прочитать аналогично, только использовать функцию 02h


Под Windows NT
==============

hDrive := CreateFile('\\\\.\\A', GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, 0);
DeviceIoControl(hDrive, FSCTL_LOCK_VOLUME,
nil, 0, nil, 0, ReturnedByteCount, nil);
WriteFile(hDriver, Buffer, BufSize, BytesWrite, nil);
DeviceIoControl(hDrive, FSCTL_DISMOUNT_VOLUME,
nil, 0, nil, 0, ReturnedByteCount, nil);
DeviceIoControl(hDrive, FSCTL_UNLOCK_VOLUME, nil, 0, nil, 0, ReturnedByteCount, nil);

Или вроде того...
Прочитать --- ReadFile
Получить исходник --- дизассемблировать то, что прочтешь.

442
26 ноября 2002 года
HexoGenus
121 / / 20.03.2000
Цитата:
Originally posted by RelB

Да полно исходников таких только конечно не Мелкософтовских. А sys.com просто помойму системные файлы копирует и усе. Загрузочный сектор создается format.com, который при вставленной дискете запускается и если на ней нет системных файлов выдает надпись Invalid sistem disk и т.д. Если не веришь можешь просто скопировать системные файлы на дискету и произойдет чудо :)


Не просто копирует а располагает Io.sys и MsDos.sys в конкретных секторах (или только один из них привязывает, точно не помню)... попробуй на дискету скопировать любой файл а уже потом эти два файла и посмотрим как у тебя получится загрузиться с дискеты...

2.2K
26 ноября 2002 года
Lain
7 / / 19.11.2002
Огромное спасибо за помощь!!!
395
26 ноября 2002 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by HexoGenus

Не просто копирует а располагает Io.sys и MsDos.sys в конкретных секторах (или только один из них привязывает, точно не помню)... попробуй на дискету скопировать любой файл а уже потом эти два файла и посмотрим как у тебя получится загрузиться с дискеты...



И точно, не получается :). Просто я не думал, что такую простую вещь, как считывание двух файлов из корневого каталога FAT12 у этих плохих дядек из Microsoft сделано через задницу. Вот простой пример, что Microsoft - кака :D

2.2K
04 декабря 2002 года
Lain
7 / / 19.11.2002
Люди это конечно все хорошо, но мне нужно исходник эти 512 байт, я просто горю, времени самому разбираться нет, а мне надо 12 декабря курсовую здавать...
Кому не вилы, хотя бы ссылку где можно этот исходник взять...
2.3K
04 декабря 2002 года
Mystic
17 / / 25.11.2002
Цитата:
Originally posted by Lain
Люди это конечно все хорошо, но мне нужно исходник эти 512 байт, я просто горю, времени самому разбираться нет, а мне надо 12 декабря курсовую здавать...
Кому не вилы, хотя бы ссылку где можно этот исходник взять...



Куда выслать? Что выслать? Загрузчик под Win ME или загрузчик под DOS 6.22? Source писать под Windows или под DOS? Пиши на [email]mystic2000@newmail.ru[/email], постараюсь помочь.

395
04 декабря 2002 года
RelB
367 / / 09.11.2002
Цитата:
Originally posted by Lain
Люди это конечно все хорошо, но мне нужно исходник эти 512 байт, я просто горю, времени самому разбираться нет, а мне надо 12 декабря курсовую здавать...
Кому не вилы, хотя бы ссылку где можно этот исходник взять...



Ну хорошо, так и быть :). Держи исходник для NASM. Загружает один файл (любой, хоть com, хоть exe).

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог