Вот собственно обещаные утилиты + драйвер.
Жду отзывов.
Вид для печати
Вот собственно обещаные утилиты + драйвер.
Жду отзывов.
А нельзя ли подробнее расписать как с ними работать ? Начинаяя от настроек в Биос и так далее...
Уважаемые форумчане, у кого нибудь получилось с этими утилитами поработать ? Поделитесь опытом!
BIOS трогать не надо, там должно быть всё правильно установлено.Цитата:
Сообщение от Striker
Один раз устанавливаем драйвер соответствующей имеющейся операционной системе 32bit или 64bit. Если уж установлен эмулятор RealSpectrum вместе с драйвером, то повторно устаналивать драйвер не нужно.
Запускам FAR, а из него нужную утилиту, например форматировалку. Она выдаёт подсказку, чтобы её прочитать нажимаем ctrl+o, когда прочитали -- снова ctrl+o.
Если внимательно прочитать то дальнейших вопросов быть не должно.
Теперь можно отформатировать диск снова запустив форматировалку но уже с параметрами, например
formatt a 1 1
и на кране побежит счётчик отформатированных дорожек.
При возникновении ошибки появятся стандартные Abort, Retry, Ignore.
Цитата:
Сообщение от Alexandr Medvedev
Всё дело в том, что у меня всё время выдавало ошибку диска. Я думал может вы, Александр, хотя бы скажете как вы подключали дисковод и в каких условиях тестировали свои утилиты
Ну и что ?Цитата:
Сообщение от Striker
А у меня вот не выдаёт :) !
Вообще-то надо поподробнее писать, кто выдаёт ошибку и какую, какая утановлена OS и т.д., а так откуда мне знать что там случилось.
Напоминаю что OC должна быть Win NT, 2k, 2k3, xp, vista а не Win 9x или Me.
Сначала нужно установить драйвер, он установлен ?
Если ругаются именно мои улилиты, то мне надо знать что конкретно выдаётся, на каком этапе это происходит, с какими парамерами они запускались и на каких дисках/диководах ?
ТАКЖЕ НАПОМИНАЮ что читаются ТОЛЬКО диски TR DOS (16 секторов по 256 байт).
Как ведёт себя эмулятор RealSpectrum с этим диском, читает его ?
Единственная возможная ошибка может появляться на первых секторах всех дорожек, в таком случае надо заклеить часть индексного отверстия диска 5,25.
Нужен нормальный bugreport иначе я ничем помочь не могу.
ЕЩЁ РАЗ ПОВТОРЯЮ ПРО BIOS никаких изменений (типа вместо дисковода 5,25 указывать 3,5 или отключать CPU cash), вносить НЕ НАДО !!!
Т.е. дисководы должны быть установлены так как они есть.
У меня дисководы подключены стандартно A-3.5-1.44Mb B-5.25-1.2Mb.
Вот в таких условия всё тестировалось, причём не на одном компе.
2 all
Весьма странно, утилиты даже на World Of Spectrum как-то попали, а отзывов почти никаких. Неужели они никому не нужны ?
Кстати, весьма нужная работа, зря ты так. А по теме - у меня читается только при dtr = 300 kbps. И вопрос - второй параметр в коммандной строке что значит? Интуитивно догадываюсь, что метод маркировки дорожки на 1-й стороне диска, 0 - как по умолчанию в тр-досе или 1, но хотелось бы уточнить :)))
Раз нужная значит будем развивать дальше.Цитата:
Сообщение от Kurles
Если серьёзных ошибок не будет, то выпущу плагины для FAR.Да именно так. 0 это если командой TR DOS format, а если форматировалкой типа ADS, DCU, RDS или ещё чем, то межет быть как 0(редко) так и 1(чаще всего), всё зависит от того как задумал автор форматировалки.Цитата:
Сообщение от Kurles
Вообще многие форматировалки сделаны так, чтобы диски лучше читальсь на PC.
Да, лучше плагинами, а не утилитами!Цитата:
Сообщение от Alexandr Medvedev
А можно открыть уровень драйвера, ибо хочется иметь возможность работать с образами *.td0, *.fdi, CPM и IS-DOS форматами. Или хотя бы сделать абсолютное чтение/запись формата образа дискеты, а уж остальное ввиде плагинов сделать.Цитата:
Сообщение от Alexandr Medvedev
Драйвер не мой и его исходного текста у меня нет. Самому интересно текст драйвера посмотреть.Цитата:
Сообщение от CHRV
Ничего не понял, что значит абсолютное чтение?Цитата:
Сообщение от CHRV
Разве сейчас относительное?
Абсолютное чтение - это когда получаем всю информацию с межсекторными и прочими делами. Т.е. полное содержимое трэка. ;-)Цитата:
Сообщение от Alexandr Medvedev
Контроллер на PC не позволяет считать всю информацию с дорожки.Цитата:
Сообщение от CHRV
Единственный способ это если на дорожке есть хоть один сектор, то прочитать его указав завышенную длину сектора, например 8кБ. Таким образом считается вся информация из первого встреченного сектора и всё что за ним. Но при таком чтении после каждого сектора возможна рассинхронизация (сдвиг на полубит) и информация будет считана неверно.
Теоретически можно сделать подобное чтение, но как из такого блока выделить сектора и праверить их я не знаю.
а что даёт вот это, не пробовал?
Цитата:
Сообщение от driver's docs
У меня нет полного описания системы команд и их пареметров, но похоже это и есть чтение всй дорожки. Если не сложно, то просьба закинуть описание системы команд сюда.Цитата:
Сообщение от SMT
вот это мне прислал автор драйвераЦитата:
Сообщение от Alexandr Medvedev
Да, действительно та команда считывает всю дорожку, вот только от этого никакоой пользы. Половина секторов из-за рассинхронизации сдвинута на полубит и восстановить их невозможно. Так что автоматически получить полный образ диска не получится, можно только изучать структуру дорожек.Цитата:
Сообщение от SMT
И все же неужели нельзя добиться функциональности аналогичной хотя бы TeleDisk'у.Цитата:
Сообщение от Alexandr Medvedev
а что теледиск? там только список секторов надо знать. кажется, можно наковырять, достоточно долго вызывая 'read next id header'
Задача очень простая, нужна возможность писать диски из форматов fdi,td0 (игрухи с защитами основанные на нестандартном разбиении на сектора - можно хранить только в этих форматах). Пока я это делаю теледиском из W98 или DOS.Цитата:
Сообщение от SMT
А еще у меня куча дисков с других платформ (БК, УКНЦ, ОРИОН-128), если бы можно было сделать плагин систему, то былобы очень удобно. ;)
TeleDisk умеет только считывать сами сектора (это как раз не проблема) вопрос как я понял в том чтобы прочитать всю дорожку вместе с разметкой (межсекторными промежутками, зонами синхронизации и т.д.).
писать из образа на дискету, кажется, куда проще
Это идеальный случай для особо навороченных защит (таких я встречал токо одну и не на спеке).Цитата:
Сообщение от Alexandr Medvedev
Более менее прояснилась ситуация с утилитами. Вобщем - взял я другой дисковод и вроде нормально его подрубил.Но когда пытаюбсь вашими утилитами считать диск - пишет ошибку на первых секторах упорно... Диск на реале читается. Попробовал таким образом - отформатировал диск утилитой formatt, записал туда образ writetrd, затем начал считывать диск с записанным образом утилитой maketrd - стала читать без вопросов!
В Real Spectrum при попытке сделать List или Cat - пишет также ошибку на 1-х секторах...
Александр говорил что то про индексное отверстие. Нельзя ли подробнее ???
Резюмируя всё ещё раз - Help Me ;)!!
Про частичную заклейку индексного отверстия я впервые услышал наверное году в 1995, пробовал на практике: ничего не получается.Цитата:
Сообщение от Striker
например в документации к эмулятору UKV:
Код:-Tчисло
Особенностью форматированных на SPECTRUM'е дискет является
отсутствие в начале дорожки области GAP4A и небольшая длина
области GAP1. В результате адресный маркер первого сектора
может находиться через 12-14 байт после индексного отверстия.
Далеко не всякий контроллер на PC может прочитать такой сектор
(в таких случаях обычно советуют заклеить часть индексного
отверстия). Некоторые контроллеры читают первый сектор
исключительно сразу после запуска мотора дисковода, и в этом
случае ситуация может быть исправлена программно. Если этот ключ
указан, то перед каждой операцией чтения/записи мотор дисковода
будет выключаться; если указанное в ключе число больше нуля -
перед включением мотора будет сделана дополнительная задержка.
Допустимы значения 0-65535 . Никаких гарантий, что подобная
практика не вредит дисководу, дать не могу. Работа с диском при
использовании данного ключа сильно замедляется.
Всё правильно. Я подробно писал об этом. Напишу ещё раз. Дело в том что если диск отформатирован из TR DOS командой FORMAT или форматировалкой, использующей СТАНДАРТНУЮ функцию форматирования, то на таком диске отсутствует промежуток между началом дорожки и первым сектором на дорожке. Для контроллера на Spectrum этот промежуток НЕ ВАЖЕН а вот для контроллера PC отсутствие этого промежутка принципиально. Контроллер начинает считывать данные не сразу после начала дорожки а после некоторой паузы необходимой для синхронизации и таким образом не успевает прочитать первый сектор.Цитата:
Сообщение от Striker
Теперь о том, как с этим бороться. Есть несколько способов.
1) Если есть реальный Spectrum, то всё очень просто. Берётся другой диск и форматируется нормальной (по меркам PC) форматировалкой например ADS, DCU, RDS, FUT. Также можно отформатировать диск и на PC любой TR DOS форматировалкой. Затем проверяется читаемость на PC и если всё в порядке, то на свежеотформатировынный диск копируется информация с того диска, в котором не читаются первые сектора (естественно на реальном Spectrum'е). Полученный диск без проблем прочитается на PC.
2) Если первые сектора не читаются на диске 5.25 то заклеиваем половину индексного отверстия и проверяем читаемость, если не читаются первые сектора, то заклеиваем чуть больше половины, если не читается ничего, то наоборот уменьшаем заклеенную долю. И так до тех пор пока не диск не начнёт читаться. Обычно достаточно НЕСКОЛЬКИХ попыток переклеивания.
3) Загружаемся в DOS и читаем диск через AmdCopier by Paul Pavlov или MAKEFDI с ключиком -T. В этих утилитах применён хитрый метод чтения первых секторов. Перед чтением первого сектора мотор дисковода останавливается а затем включается и сразу без ожидания раскрутки мотора подаётся команда чтения первого сектора. Обычно контроллер успевает его прочитать.Похоже в BIOS неверно выставлен тип дисковода, наверное 40 дорожек вместо 80.Цитата:
Сообщение от Striker
Надо выставить 5.25 1.2Mb и всё заработает.Элементарно, если диск битый, то и ошибки будут.Цитата:
Сообщение от Striker
Откопал вчерась сотню своих спековских дисков на антресолях, с кучей всякого барахла, которое я писал лет 10 назад... Поднять диски удалось только сей утилитой, остальные читать отказывались.
СПАСИБО, АВТОР!
В пять утра спать лег, не мог оторваться от ностальгических созерцаний своих трудов десятилетней давности... ;)
Вчерась вечером достал купленый у Романа Турбо....
До этого баловался только дискетами 5.25 записанными на реале... Вчера подрубил 3.5 флоп 1.44 от писюка, поработал, пописал.... решил перетащить с РС WinХР софт..... Не тут-то было! В обсчем мои поиски после полуночи закончились достаточно плачевно....
Сегодня с утра нашел этот тред, откопал дискетку (сложное это дело по нынешним временам), сел пробовать....
По порядку:
1. Поставил драйвер.
2. Запустил Formatt
3. Запустил RealSpec попробовал почитать... Error на 3 или 9 секторе
4. Попробовал копирнуть имидж на дискету.... Результат ниже...
Что не так? :v2_conf3:Код:D:\My documents\Downloads\ZX\wintrd10>FORMATT.EXE a 1 1
Insert disk and press any key
Format track 79 head 1
All OK
D:\My documents\Downloads\ZX\wintrd10>WRITETRD.EXE a 1 1 RC.TRD
Insert disk and press any key Track 0 Side 0
Sector 01 - Error: Abort, Retry, Ignore ?
D:\My documents\Downloads\ZX\wintrd10>WRITETRD.EXE a 1 1 WOLF2OO4.TRD
Insert disk and press any key Track 0 Side 0
Sector 01 - Error: Abort, Retry, Ignore ?
ЗЫ Форматер работает классно! Приятно слушать...
Была и у меня такая проблема. скорее всего дело в так называемом интерливе. Попробуй дискеты отресторить на реале в DCU или FUT.
Пару месяцев назад я то ж пытался разобраться с этими утилитами - но не получилось. Наловчился перегонять другим способом - загружаюсь под ДОС и работаю в Spectrum Navigator.
а я на спеке под исдосом на мс-диски кидаю трд, сцл, тексты, а потом спокойно копирую.
2do_se: у меня тож с этой прогой проблемы были, а потом просто ключики правилные подобрал и все ок:
writetrd.exe a 0 2 file.trd
попробуй как выше написано
да действительно, получилось, при чем formatt a 0 2 лучше всего читается на реале...Цитата:
Сообщение от demon_zx
to Alexandr Medvedev непонятно почему writetrd пытается писать с 80-83 треки... реально ведь все *.trd 655.... байт, зачем писать выше 79 трека? Можно ввести опцию для дисков с максимальным количеством треков....
ЗЫ RealSpec таки не читает нормально диски отформатированные хоть formatt, хоть FUT....
2do_se: аборт ему делай просто 8-), а так есть у меня мысль нормальный копировальщик нарисовать под ентот драйвер, вот тока руки не доходят
кста, вариант еще может быть и такой
writetrd.exe a 1 2 file.trd, это если номер стороны при форматировании проставлялся, но если формачено в тр-дос то идет первый вариант
Лично у меня все дискеты были отформатированы на максимальное количество дорожек, и к тому-же на последней дорожки всегда делалась копия системной дорожки.Цитата:
Сообщение от do_se
Если не нравится такое поведение утилит жми Abort на 80 дорожке.
А может количество дорожек задавать параметром?Цитата:
Сообщение от Alexandr Medvedev
Я лично утилиты уже эти утилиты вовсю юзаю, но к сожалению полностью отказаться от ДОСА на машине не могу.
Не хватает следующей функциональности:
- поддержки дисков *.td0 (TeleDisk) или *.fdi.
Будет ли это сделано или вообще не планируется?
Можно конечно, в следующей версии.Цитата:
Сообщение от CHRV
Эти форматы равнозначны, поддержку их реализовать не совсем просто. Я не знаю как получить список имеющихся секторов на дорожке, особенно если есть нестандартные сектора.Цитата:
Сообщение от CHRV
Если эти форматы нужны только для iS-DOS, могу сделать iS-DOS reader.Всё дело в том что для дискет 3.5 надо заклеивать второе отверстие (не путать с защитой от записи), которое отвечает за тип дискеты HD или SD/DD.Цитата:
Сообщение от do_se
Если и ещё она сложность. Дело в том что для дискет 3.5 нет единого стандарта на скорость передачи данных (у моих утилит это параметр <dtr>). Поэтому для начала нужно попробовать отформатировать дискеты с разными dtr а затем прочитать в эмуляторе RealSpectrum и найту нужное значение.
Это проблема используемого драйвера?Цитата:
Сообщение от Alexandr Medvedev
(т.е. не известно API соответствующего функционала)
Нет конечно, этот функционал нужен не только для iSDOS (хотя в моем случае, это в первую очередь), но и для CP/M и еще для защищенных дискет (хотя их уже мало).
Просто не знаю как получить список секторов на дорожке.Цитата:
Сообщение от CHRV
Для iS-DOS сделаю в ближайшее время.Цитата:
Сообщение от CHRV
А вот какая структура дорожек у CP/M дисков, разве не 16 секторов по 256 байт ? Я видел софт для ATM Turbo как раз в trd файлах, чем TR-DOS читалки не подходят?
Для защищённых дискет лучше использовать MakeFDI последней версии, и делать сразу udi файлы.
Автору лично моя глубокая благодарность за проделанный труд.
Заклейка дискет + formatt A 0 2 + writetrd A 0 2 filename позволяют мне сейчас любоваться на "ElectroGodzilla and Pink Socks" :)
Присоединяюсь к moroz1999 =)!Твои тулзы рулят под хр как никогда.Спасибо :).