С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
СПЕЦИАЛИСТ на КР580 примечателен тем, что к нему всё РК-шное дисководное хозяйство годится без переделок. Судите сами.
1. входы в ПЗУ F800, - имеем
2. порт РК-КНГМД F000, - имеем
3. процессор КР580, - имеем
4. его такт в районе 1.77 МГЦ, - имеем
5. ПЗУ E000...EFFF, - имеем
6. ОЗУ в области 0...7FFF, - имеем
Таким образом ничего переделывать даже не требуется. Также как и менять что-либо в контроллере. На СПЕЦИАЛИСТЕ работают и все утилиты RK-DOS без переделок. Однако полезные и нужные сервисные программы, в частности диск-доктор DOCTOR.COM и нортон РК86 от Е.Седова SE.COM работать не будут, т.к они выводят на экран не стандартными подпрограммами ПЗУ, а прямой записью символов в экран.
Я в своё время именно из-за этой же задачи разработал способы визуализации программ (для ОРИОНА, но для СПЕЦИАЛИСТА это ещё удобнее, т.к у него нет ПЗУ в области F800). Самый лобовой вариант визуализации - на прерываниях (тут всё понятно, но пока это оставим). Рассмотрим программную визуализацию программ РК86 на СПЕЦИАЛИСТЕ. Это годится даже для игр, хотя на 2 МГЦ будет слегка тормознуто, но для визуализации системных программ 2 МГЦ вполне хватит.
По сути ниже я опишу вариант аппаратно-программного эмулятора РК86 на СПЕЦИАЛИСТЕ. По сути надо назвать программным эмулятором, т.к всё делается программно, но термин "программная эмуляция" - это совсем иное. Делается это так.
В ПЗУ D800 размещают перетранслированный ROM-BIOS РК86. В нём следующие изменения. Опрос клавиатуры F81B и F803 переадресуются на C81B и C803 в мониторе Орлова, а подпрограмма F809 сначала исполняет код из ПЗУ РК86, а затем дублирует вывод на графическом экране СПЕЦИАЛИСТА. Таким образом все служебные ячейки ПЗУ РК86 обслуживаются и содержат правильные данные, но и на экране СПЕЦИАЛИСТА весь вывод РК-программы виден. Уже это позволяет использовать корректные программы РК86 на СПЕЦИАЛИСТЕ. Но не это наша цель. Нам надо чтобы визуализировались программы с прямой записью в экранное ОЗУ РК86.
Для этого вводятся программные прерывания по входам F803 и F81B. Процедура F803 (ожидание символа с клавиатуры) перед вводом делает полную визуализацию экрана при каждом входе. А подпрограмма F81B делает визуализацию лишь при каждом 500-том вызове. Таким образом любая программа опрашивающая клавиатуру функциями ПЗУ будет верно визуализирована на СПЕЦИАЛИСТЕ. Программы РК86 ожидающие нажатий в цикле с опросом F81B обычно делают в секунду 3000 вызовов (на СПЕЦИАЛИСТЕ ещё больше, т.к опрос клавиш на СПЕЦИАЛИСТЕ быстрее). Для того чтобы использовать такой эмулятор в RKDOS удобнее всего иметь в области D000...EFFF ОЗУ. Также надо иметь ОЗУ в области F800...F8FF или же с помощью диодов надо обеспечить выборку ПЗУ/ОЗУ D800...D8FF в области F800...F8FF. Таким образом СПЕЦИАЛИСТ получает входы F800, F803, F806, F809.... Для отладки в области F800...F8FF удобно иметь ОЗУ.
Итак, используя программную визуализацию без всяких апп.прерываний делается видимой даже работа тех РК-программ, что работают с экраном напрямую. В частности будет работать DISK DOCTOR (без него в RKDOS тяжело), а также нортон SE.COM от Е.Седова.
Впрочем нортон можно сделать и более приличным, т.к у меня есть свой нортон для РК-ДОС. Правда для СПЕЦИАЛИСТА он не годится, т.к работает только на ОРИОНЕ, используя цветной оконный драйвер со шрифтом 8*8. Если адаптировать этот драйвер для СПЕЦИАЛИСТА, то тогда нортон подойдёт (а адаптировать цветной драйвер в монохром не так уж сложно, благо формат экрана одинаков).
Я уже выкладывал в прошлом году RK-DOS для ОРИОНА и РК86. К сожалению, сейчас этот сайт закрылся и ссылки больше не работают.
Как сказано выше можно использовать полный оригинал. Но тут Вам надо думать. Что лучше? Полный оригинал, в котором будут работать все программы RK-DOS или версия RK-DOS для полного ОЗУ в 9000. Версия оригинал использует раб. ячейки DOS в области 7600, что невыгодно, т.к оставляет для программ лишь ОЗУ ниже 7000. Если же версию перетранслировать так, чтобы раб.ячейки DOS были ниже 8F60, то не будут работать никакие программы RK-DOS (это идиотизм, но в этой DOS интерфейс ячейками, т.е параметры функциям передаются не в регистрах, а в жёстко фиксированных ячейках ОЗУ).
Поэтому если в RK-DOS меняется RAMTOP и адреса раб.ячеек, то надо перетранслировать все программы. Это было бы несложно, и для утилит это не проблема (я их дизассемблировал и теперь нет трудности странслировать для любых адресов). Но вот РК-программы просто перетранслировать нельзя, т.к в них другой принцип вывода на экран. А трахаться и разбираться в сложной чужой программе, а затем вручную менять в ней алгоритм работы с экраном, это удовольствие ниже среднего. Поэтому и пришлось прибегнуть к способу программной визуализации.
Кстати, чуть позднее, я написал полностью программный эмулятор РК86 на ОРИОНЕ с Z80, который позволил бы решить проблему по новому. К сожалению, не использовал эмулятор РК86 для RK-DOS (уже был конец 90-х и было не надо), но теоретически это не проблема. Тогда все программы РК86 программно эмулируются, но все дисководные процедуры прогоняются в реале на РК-КНГМД стоящем в ОРИОНЕ. Эмулировать дисководные подпрограммы в реальном времени невозможно (т.к для этого нужна скорость Z80 минимум в 12-15 раз больше, чем имелось реально).
Если Вам лениво потратить усилия на дизассемблирование, то могу выложить исходники RK-DOS 2.95 и исходники утилит RK-DOS, но не сейчас, а вечером. Просто установка РК-КНГМД на СПЕЦИАЛИСТ - не интересна, это ничуть не сложнее, чем то же самое на РК86. Гораздо интереснее добиться полной работоспособности всех программ RK-DOS на СПЕЦИАЛИСТЕ.
PS: Если интересует, то аппаратно программную эмуляцию РК86 можно использовать даже для игр РК86, хотя только для тех, что не меняют режим ВГ75. Т.к сильнее всего тормозит сам графический вывод символов, чтобы ускорить эмуляцию, делаем так. В ОЗУ храним копию экрана РК86 (~2 кб). В процедуре визуализации не будем выводить все экранные символы, т.к это очень долго. Будем выводить только те символы, что поменялись с предыдущей визуализации. Сравниваем символы реального экрана на 76D0 и старого дубля экрана и по обнаружении несовпадения выводим символ в эту позицию на экране СПЕЦИАЛИСТА. Таким образом число экранных выводов существенно падает и визулизация тормозит гораздо меньше.
Последний раз редактировалось barsik; 26.04.2017 в 10:46.
Epson HX-20 был в основном сделан на КМОПе и потреблял как раз 50 мА в режиме счёта ( и 4 мА в режиме ожидания нажатия кнопки). Так что идея вполне живуча.
9511 у меня лежит, но мало у кого он ещё есть, его цена отпугнёт многих, а любители "золотых ножек" невозбранно возбудятся. Хотя, надо отметить, действительно классный чип (единственный, на который Интел купили лицензию на производство), но не поддержанный программно, особенно у нас... Так что до Луны нам ещё далеко.
Еще мысль. О 'Специалисте'. Что насчёт того, чтобы поставить в 'Специалист' второй процессор. Это можно сделать грамотно. Тут есть куча вариантов, причём и довольно интересных. Во-первых, можно поставить второй процессор в роли сопроцессора, как это сделано 'Apple-II'. Под этим понимается то, что оба процессора одновременно присутствуют в системе и работают по очереди.
Так Apple-II стартует с родным антикварным процессором 6502. Но когда скорости 6502 в 1 МГЦ не хватает, то он программно передаёт управление более мощным процессорам. Исторически первый сопроцессор введён на платке Microsoft Z80 Soft Card, где Z80 работает на такте в 3.5 МГЦ. Но когда и мощности Z80 не хватает, то ставят карту с 32-х разрядным CPU 68008 на такте в 7 МГЦ, что довольно неплохо для компьютера из 1976 года. Но нам интересно то, что можно программно переходить от одного CPU к другому.
Если просто заменить КР580 на Z80, то не смогут работать несовместимые программы (а такие есть). Да и ставить Z80 разумно стразу на двойном или тройном такте в 4/6/8 МГЦ. И кстати, замена на Z80 может быть сделана грамотно, - реверсивной и без вторжений в оригинальную плату СПЕЦИАЛИСТА. Для этого крошечная платка с Z80 и парой TTL-корпусов обрамления втыкается вместо вынутого из панельки КР580. Так делали в начале 90-х для установки Z80 в ОРИОН. Так достигается тупая "лобовая" замена КР580 на Z80 на той же самой частоте 2 МГЦ (или 2.5 МГЦ, если стоит кварц 10 МГЦ).
Но Z80 более скоростной и даже самый тормозной Z80 работает на такте 5 МГЦ (это может даже UB880 MME с паспортной частотой 2.5 МГЦ). Поэтому не составляет проблемы использование Z80 в 'Специалисте' на такте 4 МГЦ. Но тут тоже 2 варианта. 4 МГЦ с WAIT (Турбо 142%) или без WAIT. Удачно, что в СПЕЦИАЛИСТЕ такт всего 2 МГЦ в отличие от ОРИОНА (где такт ошибочно подняли до 2.5 МГЦ, что сплющило экран). Поэтому двойной такт равен всего 4 МГЦ, а такую частоту вполне тянут даже тормозные РУ5-тые или РУ6-тые (а вот с РУ3-тьими вряд-ли). На 4 МГЦ динамические ОЗУ не перегреваются даже без вентилятора.
Выгоднее всего поднять такт /RAS /CAS до 4 МГЦ. Что одновременно даёт ускорение 200% и шанс на хороший цвет (т.к за время сдвига экранного байта происходит 4 чтения экранного ОЗУ). Переделка проста, перекинуть несколько проводков и добавить пару TTL-корпусов. Сам я такой вариант не делал, т.к у меня СПЕЦИАЛИСТ переделанный на 2.5 МГЦ (чтобы работал КНГМД на базе ВГ93), а при двойном такте в 5 МГЦ ОЗУ перегреваются без вентилятора.
Потому в моём 'Специалисте' сделано Турбо с WAIT, отчего имею реальный такт в 2.5*1.42=3.55 МГЦ. При этом ОЗУ на том же такте и не перегревается, электропотребление ниже, работает даже КМОП Z80. Но особо ценно, что на плате ЭКСПРЕСС стоит панелька для ПЗУ на 28 ног, что позволяет и при схеме Турбо с WAIT иметь 200% скорости. Из ОЗУ РУ5 читается экран, но ОЗУ 0...7FFF без проблем меняется на статику 62256, для которых WAIT не нужен. WAIT не нужен также для ПЗУ. Т.е без всяких усилий и без перегрева ОЗУ, получаем ускорение 200%. Т.о на плате ЭКСПРЕСС даже при Турбо с WAIT код с адресов 0...7FFF и C000...F7FF прогоняется полностью с двойным ускорением.
Конечно конструктивно замена на Z80 проще (особенно на том же такте в 2 МГЦ, т.е без Турбо), но для прогона старого ПО выгоднее сохранить КР580, т.е ставить Z80 как сопроцессор. Тогда Z80 ставим на слепыше привинченном с краю платы ЭКСПРЕСС и подключаем параллельно КР580 (можно втыкать платку сопроцессора в слот, если он есть). Нужна схема управления, чтобы в любой момент времени или на КР580 или на Z80 был активен сигнал HOLD, захват шины. Z80 работает только, когда есть HLDA от КР580, что исключает конфликт на шине.
У меня пока нет схемы позволяющей передавать управление от одного CPU к другому и обратно (этой темой не занимался). Например, можно сделать так. Одно (а лучше 4) ПЗУ РФ2 'Специалиста' отдаются Z80. Когда работает Z80, то эти ПЗУ включаются с 0 и содержат скоростной драйвер вывода на экран (в 8 кб умещается более-менее приличный драйвер). Тогда Z80 реализует скоростной терминал для КР580, т.е опрашивает клавиатуру и выводит на экран. Для передачи управления КР580 достаточно дать строб в какой-то порт, отчего сразу же на его входе HOLD возникнет 0 и шина освободится, одновременно включив ПЗУ Z80 с адреса 0 и выдав RESET Z80 длиной в несколько тактов. И управление переходит к Z80, который считывает команду от КР580 из предназначенной для этого ячейки ОЗУ и выполняет её.
А ещё лучше, когда при работе Z80 экран 'Специалиста' виден, а при работе КР580 экрана нет и все 48К остаются для программ (т.е когда есть "разворот" неиспользуемых 16-К ОЗУ стоящих под ПЗУ). Но такой режим только для новых программ, т.к старые программы 'Специалиста' ошибочно предполагают, что экран всегда присутствует.
При тактировании Z80 тактом в 6 или 8 МГЦ, при экранном ОЗУ (8000...BFFF) на такте 2 МГЦ и статическом ОЗУ (0...7FFF) на такте Z80, из платы ЭКСПРЕСС получается симпатичный компьютер на КР580 с тактом 2 МГЦ, причём 100% совместимый с базовым 'Специалистом', т.к ПЗУ C000...CFFF остаётся базовым и такт тот же самый, причём вывод символа подпрограммой C037 и ролик будут уже далеко не такими тормозными.
БольшАя скорость работы с текстом конечно ценна, но главное это позволяет скоростной обмен по линии с IBM PC без расхода деталей и лишней пайки. По трудоёмкости намного проще поставить Z80 как сопроцессор, чем монтировать сложный последовательный интерфейс на ВИ53 и ВВ51. Z80 на такте 8 МГЦ без доп.ИМС, лишь за счёт программного интерфейса даёт скорость обмена выше, чем может обеспечить громоздкая схема с ВВ51.
Второй скоростной Z80 позволит 100% эмулировать РК86, причём вариантов для этого - тьма. Если в 'Специалисте' есть цвет (который кстати, не тормозит), то можно прогонять и цветные программы РК86 и Микроши. А вот программы от Партнёра и других извращённых клонов РК86, где ОЗУ немеряно, т.е больше чем 32К, не годятся для эмуляции на 'Специалисте'.
Есть также идея поставить в Специалист в качестве сопроцессора несовместимый процессор, в частности 6502 на такте 1 МГЦ или 8088 на такте 4 МГЦ или 68008 на такте 8 МГЦ. Эти варианты намного привлекательнее, чем тривиальная установка Z80. Кстати, процессор 8088 можно ставить на замену КР580, т.к программы СПЕЦИАЛИСТА не проблема конвертировать в программы для 8088 или 68008 (соответствующее ПО есть), а вот программы Z80 конвертировать нельзя.
Последний раз редактировалось barsik; 26.04.2017 в 15:02.
Зачем изобретать велосипед . Вот вам готовый . На сегодня можно использовать 3 процессора на выбор ( I8080 , I8085 , Z80 ) . Турбо режимы . WAIT только для Z80 на BTURBO ( TURBO x 2 ) при обращении к портам на 580ВВ55 так как больше 5Мгц ВВшки не успевают . Работа в ОЗУ/ПЗУ NO WAIT.
Про I8088 тоже задумывался . В СЯБРЕ его тоже можно применить с прозрачным доступом к ОЗУ . Но остановила проблема с софтом . Лучшие Motorola V20 или V25 точно не вспомню , он умеет опкод i8080 выполнять .
Вы упомянули о софте способном конвертировать код i8080 в х86 . Хотелось бы узнать о нём побольше .
В состав фирменного дистрибутива CP/M входила и на всех компьютерах в конце 80-тых постоянно "болталась" программа конверсии, называлась кажется I80Z80.COM или как-то так. У меня это 10 лет лежало без пользы , пока бесславно не погибло при крахе винта. Но когда я недавно осматривал сайты CP/M, на многих сайтах встречал эту или подобные программы. Да и написать её на любом ЯВУ совсем не проблема, т.к в КР580 и 8086 флаги по одинаковым битам и все команды КР580 входят в команды 8086, как подмножество. Так что конверсия это просто замена одних ASCII строк другими.Сообщение от SYR-ALEX
А вот конверсия программ Z80 это сложнее. В 1991 фирма 'Motorolla' пыталась продвигать 680x0 в СССР. По всей стране проводились конференции, где не только объяснялись преимущества CPU, но и бесплатно давали кучу материалов, как печатных, так и на дискетах. Точнее там стояли PC и можно было, если имеешь свою дискету скопировать 100 мб материалов по 680x0. На одной такой конференции побывал сотрудник фирмы, где я работал, и скопировал коробку дискет. Что-то у меня сохранилось. Выкладываю исходник конвертора Z80 --> 68000 (а также и другую ерунду). Что касается конвертора для 8086, то в ближайшие дни поищу на сайтах. Но возможно даже простой поиск в Интернете по строке "конверсия исходников 8080 в 8086" даст результат.
Новый комп делать утомительно и потому лениво. У меня есть платы ЭКСПРЕСС (6 штук) и чтобы поставить на них Z80 ВМЕСТО КР580 нужен час, полтора (к тому же одна моя плата уже и так c Z80).
Я предложил идею не замены на Z80 (это я сделал ещё в 80-тых), а дополнения, чтобы ускорить (из-за того что сам КР580 хреново турбируется). При 100% сохранении имеющегося. Потому-то тип второго процессора не особо важен. Лишь бы был быстрым. Но одновременно второй процессор может работать и как основной, что даёт простор для творчества.
Для всех владельцев ЭВМ на КР580 актуальна простая маленькая платка с Z80, которая ставится прямо в панельку КР580, давая Z80 на том же такте. Т.е замена процессора без хлопот. Чтобы когда понадобится, также просто можно было вернуть КР580.
Да, NEC V20 любили ставить в начале 80-тых, когда программ для КР580 было больше, чем для 8086. Но у меня его нет. Да и лучшее сочетание Z80 на такте 6/8 МГЦ и 8088 на такте 4 МГЦ. К тому же 8088 и 8086 у меня уже есть, а V20 это редкая и дорогая вещь. Для 8086-го программировать удобно, хотя у него менее компактный код. Думаю раза в 1.2-1.3 раза больше кода. Можно поискать данные на этот счёт. Но ещё более интересен 68008, т.к с ним мало кто имел дело, и судя по рекламе, он очень хороший.Сообщение от SYR-ALEX
Последний раз редактировалось barsik; 27.04.2017 в 08:55.
Вспомнил ещё одну мысль. О 'Специалисте'. Вспомнил свою идею уже из начала 90-х, когда выяснил, что КР580 тянет 3 МГЦ без ВК28 и 3.5 МГЦ с ВК28 (и даже выше, но ненадёжно, т.к перегревается). Но реализовать её не успел, т.к появившийся ОРИОН фатально снизил популярность СПЕЦИАЛИСТА.
Речь о идее турбирования СПЕЦИАЛИСТА и любой другой ЭВМ на базе КР580 с тактом ниже 2 МГЦ. При "лобовом" турбировании, например до 2.5 и 3 МГЦ выполняется тупая замена кварца (8 МГЦ на 10 МГЦ или 12 МГЦ), а чтобы при этом соблюсти TV-стандарт сигнала, приходится изменять коэффициент деления счётчика видеогенератора по строкам, чтобы и с новой частотой сдвига точек строчный период сохранился равным ровно 64 МКСЕК, а частота строк осталасть 15.625 КГЦ. Уже кварц 10 МГЦ неприятно плющит экран (как на ОРИОНЕ), а при пиксель-клоке 12 МГЦ (что соответствует такту КР580 в 3 МГЦ) 48 экранных байтов выдвигаются на телевизор всего за (1:12)*8*48= 32 МКСЕК, вместо 48 МКСЕК в базовом СПЕЦИАЛИСТЕ.
Отчего экран резко плющится с боков, изображение становится неприемлемым. Из-за этого приходится вводить новый экранный режим в 512*256, что занимает 16 кб и при его адресации на 8000 затираются все рабочие ячейки ROM-BIOS, отчего теряется совместимость с базовым СПЕЦИАЛИСТОМ. При кварце 13.5 МГЦ (такт 3.375) был опробован режим экрана 320*200, который в этом режиме заполняет весь экран, но родной экран СПЕЦИАЛИСТА уплющивается в четверть ширины экрана.
После этих экспериментов и возникла идея турбирования СПЕЦИАЛИСТА на КР580 не приводящая к уплющиванию экрана. В базовом СПЕЦИАЛИСТЕ за время сдвига на телевизор экранного байта выполняется 2 обращения к ОЗУ, одно из которых может занять КР580. Для чтения экранного байта видеочастью достаточно одного обращения к ОЗУ из возможных двух, так что доступ процессора не вредит регенерации изображения и все такты доступа доступны для процессора. Это обеспечивает прозрачный доступ к ОЗУ (т.е без тактов WAIT).
Можно сделать в СПЕЦИАЛИСТЕ асинхронный доступ, т.е ОЗУ оставить на скорости 2 МГЦ, а КР580 тактировать асинхронно максимально возможным тактом (это 3.1 МГЦ без ВК28). Но синхронизация с помощью WAIT сжирает при этом бОльшую часть ресурса CPU и реальное быстродействие было бы ~2.3 МГЦ. Что без проблем достигается простейшей заменой в СПЕЦИАЛИСТЕ кварца на 9 МГЦ и расходом деталей в один ТМ2. Данная идея хорошо подходит для ЭВМ на Z80, а КР580, увы, слишком тормознут http://zx-pk.ru/threads/27589-dorabo...l=1#post910781.
Поэтому подумал о изменении режима работы ОЗУ. Суть в том, чтобы сделать такт КР580 и такт RAS-CAS таким, чтобы за период частоты 1 МГЦ (это период вывода экранного байта) выполнялось ровно 3 машинных такта КР580 и 3 такта RAS-CAS. Рассинхронизация по фронтам при этом не возникает и WAIT для синхронизации не нужен. ОЗУ и КР580 работают на такте 3 МГЦ. Проблема только в получении синхронного такта 8 МГЦ (это пиксель-клок), такта в 1 МГЦ (это строб параллельной записи в выходной сдвиговый регистр ИР1) и такта 3 МГЦ для КР580 и ОЗУ. Это решается использованием кварца 24 МГЦ. При делении на 8 получаем такт КР580, а при делении на 3 получаем пиксель-клок 8 МГЦ. Синхронизация полная, WAIT не нужен.
В 'Векторе' тоже такт КР580 в 3 МГЦ, но используется WAIT сжирающий ровно 20% ресурса, что даёт реальный такт всего в 2.4 МГЦ. В такой схеме достигается реальный такт ровно в 3 МГЦ, причём без применения ВК28. Но главное, что при этом экран не плющится.
Я даже в 1991 начал паять такую схему (правда на Z80), но в связи с переходом на ОРИОН не допаял, бросил. Т.к в связи с кончиной СПЕЦИАЛИСТА это не имело смысла. Применить данную идею можно даже на ОРИОНЕ, если сначала вернуть в нём экран к нормальному виду, т.е понизить пиксель-клок до 8 МГЦ . Это дало бы в ОРИОНЕ нормальный экран и такт 3 МГЦ при КР580.
Последний раз редактировалось barsik; 28.03.2018 в 02:04.
...почему-то до сих пор не пойму: зачем гнать процессор? У нас Спец выводит видеоролики? Обрабатывает нешуточные объёмы данных? Игры (которые есть) медленные? Давайте спустимся с психологических небес, заданных нам РС-подобными, и честно признаемся: Спец, и компы иже с ним, работают на нормальной, приемлемой скорости, достаточной для нормальной работы. Надо быстрее (повторю вопрос: зачем?) - используйте другой комп. Или оптимизируйте код.
В настоящее время все наши восьмибитные поделки - не более чем контроллеры средней навороченности, которых, тем не менее, вполне хватает для задач реального времени и низких требований, типа "умной избы". Тыкать в жареные трупики палочкой - на любителя это...
ИМХО, не более того.
Когда я в 1989 купил КОРВЕТ, то с ужасом обнаружил, что в нём такт КР580 в 2.5 МГЦ. Оказалось, что это минимальная частота при которой работает контроллер дисковода на ВГ93 без ПДП. Там вообще нет никакого запаса. Если в ОРИОНЕ заменить кварц 10 МГЦ на 9.6 МГЦ, то запись перестаёт работать. И даже попытка заменить команды LD A,(HL) на IN A,(wg93) не работает при такте 2.5 МГЦ (т.к LD A,(HL) это 7 тактов, а IN A,(port) это 11 тактов) и для программного цикла уже не хватает этих 4-х тактов. Нет запаса и 5%. При командах IN/OUT приходится менять кварц 10 МГЦ на 11 МГЦ (потому считаю, что IN/OUT вообще не нужны).Сообщение от rw6hrm
Поэтому мне пришлось повышать такт до 2.5 МГЦ. Это было просто, потому что уже за год до того в 1988 я сделал такт 2.25 МГЦ, заменив кварц на 9 МГЦ (расход деталей в 1 триггер ТМ2), - кстати рекомендую это всем "специалистам". Но это было сделано не для повышения скорости, а оттого, что у меня не влезал весь растр в телевизор (не было видно части картинки). А после замены кварца всё стало чудесно видно. Кстати именно поэтому и в "Партнёре" применили кварц 9 МГЦ. Просто отечественные телевизоры не соответствовали тогда стандарту. На самом деле видимыми должны быть 52 МКСЕК из 64-х. А в реальности видимы только 42-44 МКСЕК. Так что СПЕЦИАЛИСТ полностью соответствуя стандарту со своими 48 МКСЕК на строчный растр, - просто не влезал.
Так что 2.5 МГЦ это просто необходимость, если нужен НГМД. Смотрим далее. Вот купили Вы в 1993 году флоп 3.5". Но чтобы использовать его хотя бы на 1440-1600 Кб надо иметь реальный такт 5 МГЦ или трахаться и ставить в ОРИОН ПДП. Поставить ПДП в синхронную машину сложно, турбировать проще. Что и было сделано. Т.е тоже вынужденная мера.
Смотрим далее. Текстообработка с небайтовым шрифтом оказывается в 3 раза медленнее, чем с байтовым шрифтом, так что комфорная текстообработка начинается только с реального такта 6 МГЦ и выше. Потому КОРВЕТ и БК-010 имея экран в 512*256, что даёт возможность иметь байтовые шрифты при достаточной длине строки, работают с текстом на порядок быстрее, чем ОРИОН и СПЕЦИАЛИСТ. Попробуйте воспользоваться SuperText-ом на такте 2 МГЦ и уже через полчаса работы Вы выкинете свой комп в окно с 9-го этажа или заснёте в ожидании конца ролика. Это сейчас Вы можете редактировать на PC, но в начале 90-х был только ОРИОН или СПЕЦИАЛИСТ.
Далее. Как знают все создатели игр, скоростей фатально нехватает. Потому для СПЕЦИАЛИСТА и ОРИОНА игры с панорамированием всего экрана противопоказаны, даже на более скоростном ZX с маленьким экраном это идёт "впритык". Чем больше скорость, тем больше фигурок можно двигать. Чем больше скорость, тем лучше звуковые эффекты и музыкальное сопровождение.
Далее. Вот поставили Вы IDE-винчестер. И ожидаете, что будет также быстро как на IBM PC, т.е мгновенно. Но тут Бац... и всё работает гораздо медленнее. Ничуть не быстрее DD-дисковода. И это только касается скорости пересылки (т.к она программная). А т.к объёмы дисков на 2 порядка больше, то сканирование гиганских каталогов и поиск в них файлов при тормозном CPU длится 5-10 секунд. Т.е скорости в 2 МГЦ для больших объёмов данных не хватает. А глупо разбивать даже крошечный 40 мегабайтовый винчестер на 50 партиций по 800 кб. А если винчестер 500 мб?
Далее. Окончилась эпоха дисководов. Последняя дискета сдохла, новых не купить и пришлось исправный дисковод спустить в унитаз. Наступила эпоха электронных дисков на 8-ми разрядке и загрузки в них файлов по проводной линии из IBM PC. А я уже во многих недавних постах писал, что здесь нужна скорость процессора, т.к от этого напрямую зависит скорость обмена по линии.
Ну и главное. Так в этом же и заключается сюжет радиолюбительского творчества. Сделать то, что никто до тебя ещё не сделал ! А слепое повторение западных конструкций на ПЛИС - это другое хобби. Это интересно только тем людям, кто просто любит паять или запах канифоли. А я это делать не люблю, но в этом хобби без этого не обойтись.
Думаю, что в просветительных целях, чтобы не приходилось писать такие посты, нужно людей задающих такие вопросы заставлять пару недель пользоваться графической ИРИШЕЙ с экраном 16 кб в тормозном цветном режиме с реальным тактом в ~1 МГЦ (в скоростном режиме такт ~1.5 МГЦ). Небайтовый шрифт там в 3 раза медленнее СПЕЦИАЛИСТА, но байтовый шрифт такой же как обычный шрифт СПЕЦИАЛИСТА. Кстати, есть очень благородная задача переделать ИРИШУ на тех же деталях и КР580 так, чтобы реальный такт был 3 МГЦ или выше. Может кто-то возьмётся за эту интереснейшую задачу?
Последний раз редактировалось barsik; 27.04.2017 в 20:05.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)