ZXNet эхоконференция «hardware.zx»


тема: vTR-DOS для Pentagon1024SL



от: deathsoft
кому: All
дата: 29 Jan 2007
Hello, boo_boo Фирменая документация от WD на контроллер fd179x (ВГ93). Файл: wd-fd179x-ds.djvu.rar http://zx.pk.ru/attachment.php?attachmentid=4505

от: Александр Солодков
кому: All
дата: 29 Jan 2007
Hello, All Hачал написание vTR-DOS для Pentagon1024SL + NEMO_IDE В процессе наткнулся на некоторые неясности 1. Где четко почитать про методы выполнения команд Beta-Disk (прямое программирование без TR-DOS) Типа: а)Посылаем в порт #1F команду записи сектора б) Проверяем то-то (такой-то бит-защита от записи) в)Ждем того-то (точно не знаю, может надо дождатся какого-то бита чего-то) г)Ждем сего-то (запрос данных DRQ - откуда читается #ff или #1f или можно из любого) д)Кидаем в порт данных байт е) уменьшаем счетчик, если не ноль, переход на г) ф) ... еще чего-то и.т.д... 2. Интересуют временные задержки по сигналам (а еще лучше временные диаграммы сигналов) Т.е. фраза: Hа каждый запрос DRQ необходимо записать в рег.данных очередной байт. - Сколько секунд (а лучше тактов между соседними запросами DRQ)??? через сколько тактов повторяется индексная метка?

от: Станислав Ломакин
кому: All
дата: 29 Jan 2007
Hello, TmK см аттач Файл: vg93.zip http://zx.pk.ru/attachment.php?attachmentid=4504

от: Алексей Жабин
кому: All
дата: 01 Feb 2007
Hello, The Exploited The> неужели глюк сам лезет в память в независимости от трдоса?? Он делает форматирование RAM-диска, причем на разный объем. Судя по всему, это делается без привлечения TR-DOS. Если нужна более подробная информация, то ее нужно искать в описании, исходниках, либо задавать вопросы Дмитрию Быстрову.

от: Алексей Жабин
кому: All
дата: 01 Feb 2007
Hello, TmK TmK> 1) А какой формат RAM-диска у Gluk`а у KAY и у ATM??? TmK> 2) По информации о Пентагоне: надобы знать скока страниц ПЗУ TmK> задействовано в схеме и как переключаются. 1. Про формат RAM-диска в KAY и ATM я ничего сказать не могу, в Gluk-e и в TR-DOS 6.10e формат RAM-диска, если не ошибаюсь, как в TR-DOS 5.12 и TR-DOS 6.05, но перевернутый, т.е. растет сверху-вниз. В прилагаемом архиве Gluk 6.3 вместе с исходниками и описаниями (взято с сайта http://alonecoder.narod.ru), там можно посмотреть более подробно, а еще лучше спросить у Alco, если потребуется. 2. По поводу страниц ПЗУ. Задействованы все страницы. Те страницы, где находятся basic48, basic128, TR-DOS, переключаются стандартным образом, но старт происходит из дополнительной страницы (в которой находится Gluk). Т.е. после reset-a включается дополнительная страница ПЗУ, которая отключается автоматически при извлечении кода операции вне ПЗУ (т.е. если сделать CALL или что-то подобное в адрес старше 16384), после чего переключение страниц ПЗУ ничем не отличается от обычного Spectrum-128. Для нужд vTRDOS можно использовать либо страницу Basic128, либо доп. старницу, но исключать Gluk не очень хочется, т.к. в него встроен коммандер, диск доктор и много дополнительных функций. С помощью глюка можно форматировать RAM-диск и работать с ним, поэтому желательно сохранить существующий формат RAM-диска. Файл: Gluk63.rar http://zx.pk.ru/attachment.php?attachmentid=4523

от: Максим Анатольевич Тимонин
кому: All
дата: 01 Feb 2007
Hello, KingOfEvil Kin> Он делает форматирование RAM-диска, причем на разный объем. Судя по Kin> всему, это делается без привлечения TR-DOS. Если нужна более Kin> подробная информация, то ее нужно искать в описании, исходниках, либо Kin> задавать вопросы Дмитрию Быстрову. Сомневаюсь, что он при этом лезет во все страницы. Для "виртуального" форматирования достаточно очистить и проинициализировать только нулевою дорожку - область каталога и системный сектор.А это максимум 4Кб в одной единственной странице. По вопросу же совместимости вопрос легко решается сменными таблицами страниц. Hа 640Кб-диск нужна таблица всего в 40 байтов. Соответственно на Пентагоне будет одна табличка, а в АТМ - другая. Точнее она там уже есть. И приэтом ее можно менять как угодно. То есть, при большом желании можно настроить RAM-диск и на стандарт глюка.

от: Александр Солодков
кому: All
дата: 01 Feb 2007
Hello, KingOfEvil Kin> Он делает форматирование RAM-диска, причем на разный объем 1) Вот как раз разный объем в случае использования образов нам нафиг не сдался. Т.к. trd диск всегда будет на 40 страничек (640К), а scl будет приводится к trd с флагом read only. 2) Честно говоря не разу не видел Gluck и не понимаю какую пользу он может нести в себе для vTRdos??? Хотя если надо - не проблема, но проблема в том, что первой должна стартовать HОВАЯ прошивка, при первом запуске создавать свои переменные, определять параметры IDE и т.п. Так что возникает еще одна проблема - как их с Глюком подружить??? 3) Пока есть исходники, переделать формат рам диска не проблема!!! Так что на данном этапе я подумаю лучше о точности эмуляции dos`a т.к. в первую очередь он мне понадобился чтобы на DiHalt не парится с дискетами, а быстренько подсовывать TRDOS`у образы:-) Т.е. необходимо чтобы всякие im2+music loader`ы работали как на реальном trdos!!! 2acidrain; Естественно; 3584000 tackts/sec - просто опечатка Дальше вопрос: Как защитить рам-диск от посягательств программ??? 1 вариант) использовать соответствующий бит дополнительного порта, ограничивая память 128к 2 вариант) Более продвинутый. При чтении/записи сектора проверяем целостность рам-диска. При данной реализации есть в наличии свободные 10000 тактов за которые и надо проверить. Естественно контрольная сумма отпадает - слишком долго... У кого есть предложения?

от: Дмитрий Васильевич Терентьев
кому: All
дата: 01 Feb 2007
Hello, Максагор А зачем нужна совместимость по рам-диску с АТМ, что это дает? По моему это ничего не дает.

от: Алексей Жабин
кому: All
дата: 01 Feb 2007
Hello, TmK TmK> 1) Вот как раз разный объем в случае использования образов нам нафиг TmK> не сдался. TmK> Т.к. trd диск всегда будет на 40 страничек (640К), а scl будет TmK> приводится к trd с флагом read only. TmK> 2) Честно говоря не разу не видел Gluck и не понимаю какую пользу он TmK> может нести в себе для vTRdos??? Хотя если надо - не проблема, но TmK> проблема в том, что первой должна стартовать HОВАЯ прошивка, при TmK> первом запуске создавать свои переменные, определять параметры IDE и TmK> т.п. Так что возникает еще одна проблема - как их с Глюком TmK> подружить??? TmK> Это вопрос не ко мне, а к AlCo. Что же касается пользы глюка - если vTRdos в полном составе будет не менее удобна в работе, чем глюк, то необходимость в глюке отпадает. Тогда в дополнительной странице ПЗУ можно разместить настройщик и программу закачки TRD. TmK> Дальше вопрос: TmK> Как защитить рам-диск от посягательств программ??? TmK> 1 вариант) использовать соответствующий бит дополнительного порта, TmK> ограничивая память 128к TmK> TmK> 2 вариант) Более продвинутый. При чтении/записи сектора проверяем TmK> целостность рам-диска. При данной реализации есть в наличии свободные TmK> 10000 тактов за которые и надо проверить. Естественно контрольная TmK> сумма отпадает - слишком долго... У кого есть предложения? Первый вариант уже реализован в Pentagon-1024SL 2.x. Что касается второго, то можно считать контрольную сумму не по всем байтам, а через один (2, 3, ...). Конечно, вероятность ошибки возрастает, но все равно остается вполне приемлемой. К тому же никто не мешает использовать оба варианта одновременно, а первый уже реализован аппаратно.

от: Александр Солодков
кому: All
дата: 02 Feb 2007
Hello, KingOfEvil ВАРИАHТ1 не очень удобен в том плане, что свободной памяти больше чем 128к. Хотя для моих потребностей >>в первую очередь он мне понадобился чтобы на DiHalt не парится с дискетами, >>а быстренько подсовывать TRDOS`у образы с демками-) Этого вполне, но есть люди которые хотят кодить на реале под 128К - это удобно, если разместить асм и sts в более высоких страницах (и я думаю много чего еще -> журналы, игры, асмы, граф редакторы... ) - тут либо надеятся на то, что все ОК!!! и зпбить на проверку, либо использовать вариант2 >>Что касается второго, то можно считать контрольную сумму не по всем >>байтам, а через один Hапиши процедуру и посчитай скока тактов она сожрет!!!!!!!!!!!!!!!!!!!!!!!!!!! (не забудь!!!!! например при записи проверили CR - сошлось, пишем файл, снова считаем CR!!! - т.е. практически двойная операция!!!) Как вариант возможно подойдет контрольная сумма с шагом 1024 байт либо менять алгоритм как таковой.

от: acidrain
кому: All
дата: 02 Feb 2007
Hello, TmK TmK> 2acidrain; Естественно; 3584000 tackts/sec - просто опечатка Ага, опечатка. Hо это лишь часть проблемы просто опечатка, но есть еще и мат часть - кварец в пентагоне РОВHО 14 мгц, а значит тактов в секунде РОВHО 3500000 (три с полтиной мульёна)! и кадровая там не 50гц а чуть меньше (ибо строчек не 312 а 320). =))) (сенкс, дружище (зы. друг понял;))))

от: Дмитрий Васильевич Терентьев
кому: All
дата: 02 Feb 2007
Hello, TmK Учитывая что большинство программ обычно занимают страницы памяти с начала (с адреса #c000) то можно проверять только целостность в начале страницы.

от: Павел Федин
кому: All
дата: 02 Feb 2007
Hello, TmK TmK> Т.е. необходимо чтобы всякие im2+music loader`ы работали как на TmK> реальном trdos!!! Они могут работать лучше и быстрее чем на реальной TRDOS. Дело в том что для работы с RAM-диском совсем не нужно запрещать прерывания. И между чтениями очередных байтов с диска времени может пройти хоть сколько.

от: Александр Солодков
кому: All
дата: 03 Feb 2007
Hello, Sonic Son> Они могут работать лучше и быстрее чем на реальной TRDOS А прикинь как тогда будет например тот же Refresh смотреться??? Там чтение видео с диска... Вообще конечно в идеале надо будет переменную ввести Real disk speed [yes/no].

от: Алексей Жабин
кому: All
дата: 03 Feb 2007
Hello, Максагор > Сомневаюсь, что он при этом лезет во все страницы. А я разве сказал, что он лезет во все страницы? Я только сказал, что он делает это без помощи TR-DOS.

от: Павел Федин
кому: All
дата: 06 Feb 2007
Hello, TmK TmK> А прикинь как тогда будет например тот же Refresh смотреться??? TmK> Там чтение видео с диска... TmK> Вообще конечно в идеале надо будет переменную ввести Real disk speed TmK> [yes/no]. А в чем там фишка? Вывод кадров синхронизируется с чтением секторов с диска? То бишь следующий сектор - следующий кадр? Впрочем я имел в виду не это, а то, что можно исключить в принципе потерю данных. Задержку между выдачей DRQ можно оставить, просто исключить потерю (не выдавать следующий DRQ даже по прошествии задержки, если байт еще не был прочитан).




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
От автора - И не думал я, что придется делать свой журнал, пусть и электронный.
Блиц-опрос - интервью с автором газеты ZX Time.
Anigdot №43 - HELLO AMIGOS (Испаский :) , а не AMIGA :( ) !!!
Музыка - Снова о плейерах Pro Tracker 3.x
Inferno - Об оболочке.

В этот день...   8 мая