Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Программирование (http://zx-pk.ru/forumdisplay.php?f=14)
-   -   Запуск дисков как в iS-DOS как сделать? (http://zx-pk.ru/showthread.php?t=3349)

Evgeny Muchkin 4th July 2006 00:25

Запуск дисков как в iS-DOS как сделать?
 
Вот такой вопрос. Интересует, собственно, каким должно быть содержание девятого сектора (в какое место сектора записывать собственный загрузчик) и т.д.

И физику процесса запусков таких дисков тоже интересно знать, поделитесь знаниями кто в курсе плиз :)

Vitamin 4th July 2006 11:30

Все относительно просто. Когда трдос читает каталог (начиная с 9 сектора с описанием диска), данные с диска идут в буфер размером 256 байт (ну привыкла трдос так...). На самом деле данных читается столько, сколько физически лежит в секторе (128, 256, 512 или 1024). А следом за этим буфером лежат адреса процедур обработки каналов ввода-вывода (кажется так...). Так вот, если 9 сектор будет больше 256 байт, его хвост перекроет эти адреса процедур и окажет непосредственное влияние на обработку потоков информации (печать на экран в данном случае).
Вот значит и организуется сектор таким образом, что перехватывает управление на себя и самостоятельно продолжает грузить диск.

icebear 4th July 2006 13:01

Quote:

Originally Posted by Vitamin
Вот значит и организуется сектор таким образом, что перехватывает управление на себя и самостоятельно продолжает грузить диск.

IS-DOS - большой вирус?

Evgeny Muchkin 4th July 2006 16:42

Quote:

Originally Posted by Vitamin
Вот значит и организуется сектор таким образом, что перехватывает управление на себя и самостоятельно продолжает грузить диск.

Можно поточнее, желательно с примером - именно точное рассмотрение этого вопроса мне и интересно. :)

spensor 4th July 2006 16:57

Quote:

Originally Posted by Evgeny Muchkin
Можно поточнее, желательно с примером - именно точное рассмотрение этого вопроса мне и интересно.

Этот вопрос был рассотрен в одном из E-zine. Но в каком точно не помню, возможно в ZX Format #6-#7. Метод применялся и в IS-DOS, и Черном Вороне, и еще где-то.

psb 4th July 2006 17:00

Quote:

Originally Posted by icebear
IS-DOS - большой вирус?

хы:))) а ведь да, это самая настоящая уязвимость в TR-DOS:))) только никто раньше не знал, что это называется уязвимостью;))) типа, переполнение буфера:))

интересно, что еще подобное есть? помню, когда с лент грузились кодовые блоки на стек.. самозапускались тоже.. а еще что-нить?

Quote:

Originally Posted by Evgeny Muchkin
Можно поточнее, желательно с примером

ех.. вот, делал я такое, но ооочень давно.. теперь без ковыряния и не вспомнишь.. жаль вообще, что столько всего интересного (и еще кому-то нужного!) просто забывается.. может, у кого-нить инфа в понятном виде лежит..:)

psb 4th July 2006 17:06

Quote:

Originally Posted by psb
теперь без ковыряния и не вспомнишь..

собс-но, если нигде не найдешь, можно взять эмуль, поставить туда какой-нить такой диск, поставить точки останова на (примерно) #5D00-#5E00 и запустить. при запуске диски вылетит на некоем адресе старта. потом ищешь, где в секторе находится этот адрес (смещение в секторе). ну и заодно узнаешь, по какому адресу этот сектор грузится;)

Evgeny Muchkin 4th July 2006 17:23

Не нашел в ZX format 6,7 статей про это дело. Видимо придется осваивать эмульский отладчик. (off и спековкую клаву - постоянно Break вместо delete нажимаю ;))

Evgeny Muchkin 5th July 2006 17:37

Все ZX Форматы пересмотрел, нету нигде про эту тему ни слова :( А что такое E-zine ?

Все-таки хочется теоретически подковаться предварительно :)

spensor 5th July 2006 18:03

Quote:

Originally Posted by Evgeny Muchkin
Все ZX Форматы пересмотрел, нету нигде про эту тему ни слова

То что было описано это факт, но вот просто так вспомнить где не удается:( Как вариант это мог быть "Черная Ворона". Я постараюсь поискать в своих заметках, но в успехе не уверен. Однозначно могу сказать что это не Spectrofon - статья публиковалась в годах 1998-1999, если мне склероз не изменяет:)

Quote:

Originally Posted by Evgeny Muchkin
А что такое E-zine ?

Electronic Magazine - Электронный журнал. Тоесть Spectrofon, ZX-Format и прочие. Есть еще E-paper:)


All times are GMT +4. The time now is 21:31.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.