это уже десятый вопрос как оно там внутри происходит, важно что на порту клавы DOS или keyrus найдет клаву, а там где IDE будет IDE.
Вид для печати
Так и с РК подобными компиками, не важно, как там внутри монитора и какие адреса контроллеров, главное, что на стандартной точке входа опроса клавиатуры, программа найдет клаву, а там, где точка обращение к дисплею, программа выдаст сообщение на дисплей. Что и требовалось доказать. Главное в РК подобных компиках соблюдать стандартные точки входа на подпрограммы монитора, а по каким адресам находятся контроллеры...не важно. Так что унификация у РК подобных компиков дефакто на лицо.
Так давайте 98 программ не так и 2 программ так...списочек будьте добры. А там поглядим.
ЗЫ: я вообще сомневаюсь, что вы для РК 98 программ наберете...
Вообще давайте найдем хоть 5 программ, которые нестандартно работают с таблицей точек входа монитора.
А то все так боятся этих программ, а как до конкретики..так 2-3 названия и всё. Пора бы уж определиться, что соответствует стандарту, а что нет, что бы не плутать в потемках и не бояться "барабашек".))))
Вот например: http://www.youtube.com/watch?v=bfjMZHXIU0o
И что? не запрограммируется ВГ75 на режим без пропуска 2х строк курсорных...это фатально? Нет. Нашел в теле программы обращение к ВГ75 (а оно там наверняка единственное) и исправил под свой вариант адрес ВГ75 всего 2 байта исправить. А лень, да и так поиграет, с полосками.
ЗЫ:...а если учесть, что это не для РК, а для Партнера игрушка...хотя ладно, пусть для РК. Осталось 97 программ одну нашли....условно не совместимую, хотя я не знаю, соответствуют ли у партнера адреса контроллеров рК-86.
Там картинка не через F809, а сразу в видеопамяти рисуется.
И что? кто то говорил про перенос видеопамяти? Вопрос стоял про контроллеры. А видеопамять трогать ни кто не собирался, хотя нужно и это. А раз так, то игрушка, скажем на моем "Микрокоме" заведется с полтыка, хотя адреса контроллеров в моём варианте совсем другие. А вот видеопамять я трогать не стал.
И никому не советую, кто в цифровой технике слаб.
Что болтать попусту. Давайте бинарник этой игрушки, я его попробую завести у себя на "Микрокоме" и всё станет ясно. Кстати, если заведется, то сразу в новом качестве, т.к. у меня ВГ75 работает в VGA режиме.
Я этот список сам составлял, когда софт для Микро-80 и Кристалл-2 искал. Эти компьютеры на 100% совместимы по точкам входа с РК-86 (я им ПЗУ добил), но видеопамять у них организована по другому. И таких программ было очень не много. Очень не многое удалось запустить на них.
Опять видеопамять...ну где здесь речь о видеопамяти? Речь идет о адресах контроллеров и стандартных точках входа в монитор. Вот стандарт для РК подобных компиков...Про видеопамять речи не шло в принципе.
Желаете совместимость РК подобных компиков, не трожьте видеопамять. Вот основной принцип совместимости для таких компиков. Об этом и речь. Потому, когда говорят, что адреса контроллеров не совпадают с базовой моделью и это является основной причиной не работы базового ,прикладного и игрушечного ПО...просто заблуждение.
Вам тогда надо машину времени построить, вернуться в прошлое и сказать авторам, что бы они не использовали прямой доступ к контроллерам и видеопамяти.
Софт есть и его давно адаптировали под все Партнеры, Апогеи, Микроши и прочие разновидности РК-86.
Но есть несколько действитетьно интересных программ, которые еще почему то не перенесли. Например Стоп Кран.
---------- Post added at 00:26 ---------- Previous post was at 00:23 ----------
Банальнейшая вещь. Функция синхронизации с КСИ отсутствует в точках входа и поэтому придется ползти к железу.
---------- Post added at 00:31 ---------- Previous post was at 00:26 ----------
Я начал запускать программы РК86 на Апогее.
CHERV -
CHESS + (чисто консольная игра)
CIRRUS -
E_STAKAN -
KALAH + (чисто консольная игра)
KLAD -
KRESTNO + (рисует по слогам)
LEST -
LESTNI -
LIFE -
OTELLO -
PACMAN -
PAKET2 -
PAKET -
PINGPONG -
PITON -
PVO -
RENDZU + (рисует по слогам)
...
Опять отклонились от темы. Речь идет о постройке нового РК совместимого компика. И суть моих мыслей в том, что для вновь проектируемого компика адреса контроллеров необходимо размещать наиболее рационально с точки зрения автора, а видеопамять НЕ ТРОГАТЬ. Тогда всё стандартное инструментальное ПО и игрушки, которые не лезут напрямую к ВТ57 лягут на этот компик без какой либо переделки. Кстати, расположив все адреса контроллеров в старших адресах (F700h-F7FF) в "Микрокоме", мне удалось без особых усилий адаптировать системное ПО от "Ориона-128", ORDOS, М128, что дало для моего компика новое качество и удобство работы с RAM/ROM дисками. В принципе и СР/М без проблем встанет от Ориона, т.к. она использует верхние адреса ОЗУ от 8000h до BFFFh а у РК подобных компиков эти адреса всегда свободны(если убрать оттуда адреса контроллеров). Так что, я думаю в моих словах есть рациональное зерно.
Ну и получим видеопамять посередине адресного пространства. Это не очень удобно. Если мы оставляем видеопамять посередине адресного пространства ради запуска программ РК86, то адреса контроллеров менять можно оставить в том же месте ради этой цели.
А развивая эту мысль мы приходим к выводу, что надо сделать переключаемый дешифратор адресов, который сможет эмулировать все клоны РК86.
Я не проверял, но очень очень вероятно, что множество игр напрямую используют контроллер клавиатуры. Помню, что на Электронике КР-03, которая отличалась от РК-86 лишь матрицей клавиатуры (там клавиатура от УКНЦ) игры работали криво.
Вообще, зачем надо напрямую лезть в ВТ57 и ВГ75? Ради 4-х вещей:
1) Включить высоту символа в 8 пикселей, что бы псевдографика не распадалась на строки.
2) Синхронизация с кадровой разверткой. Это единственный способ сделать программы исполняющуюся с постоянной скорость.
3) Использование скролла, нескольких видеостраниц, эффекта гигасткрин, формаирования экрана из двух независимых обласей памяти и кучи эффектов для демок (редко)
4) Использование цвета (крайне редко, в основном на Апогее)
---------- Post added at 17:40 ---------- Previous post was at 17:27 ----------
И вообще, положение видеопамяти настраивается программно. То есть он железа не зависит.
Да получим видеопамять в середине ОЗУ. Этим мы сразу убиваем 2 зайца.
Во-первых, получаем совместимость с оригинальным РК-86 на стандартном уровне таблицы подпрограмм. Значит у нас сразу есть инструменты для дальнейшего усовершенствования получившегося клона. Т.е. как бы сами себя тянем за волосы.
Во-вторых,Есть целых 28 кбт ОЗУ для собственных импровизаций в области усовершенствования своего клона.
Я пошел по пути добавления функций Ориона к имеющимся у РК.
Это:
1.Добавил дополнительную страницу монитора в ПЗУ по адресам E000-E7FFh. Там расположил наиболее востребованые директивы. Это прежде всего редактор ОЗУ (DUMPCOR), директива печати, и директивы работы с RAM/ROM дисками (запись/чтение в энергонезависимый RAM диск), директиву вызова ORDOS, драйвер РСшной клавиатуры и т.д..Загрузчик второго ROM диска для работы в формате РК.
2.Добавил подгружаемую страницу монитора в ОЗУ по адресу F000-F3FFh.
3.Добавил "крючки" в области ОЗУ F380-F3FFh для смены драйверов на лету, как сделано в Орионе, добавил редактор текста Орионовский, который может сохранять исходники программ в энергонезависимом RAM диске и т.д..
На этих же 28кбт ОЗУ спокойно ляжет СР/М для Ориона вызываемая по директиве из ROM диска.
И все эти вкусности дает простое очищение адресного пространства от контроллеров.
А раньше в этих адресах у меня располагался ROM диск с прикладным ПО.Типа, как сделано у Микроши.
Короче, эти 28 кбт дают огромное поле для творчества и фантазии, и при этом абсолютно не страдает совместимость клона с оригиналом РК-86. Это шаг вперед.
А вариант РК-МАКСИ с перенастройкой адресов контроллеров и видеоозу, это тупиковый вариант, который уже опробирован в редакции журнала "Радио".
Вы предлагаете ещё раз наступить на те же грабли?
Я говорю лишь о возможности запустить на этом компьютере игры типа СТОП КРАН (STOP THE EXPRESS)
http://emu80.org/files/gp_1.zip
файл STOPKR.RKP
Попробовал, заработала с полтыка, да ВГ75 не перепрограммировалась из-за несовпадения адресов, но сама программа заработала на ЖК дисплее, в VGA режиме и с писишной клавой. Этот момент лишний раз подтвердил мою концепцию стандарта таблицы вызова подпрограмм для РК подобных компиков.
kovdry, Как с распайкой РКшки?
На подходе.
Кстати, при изучении принципиальной схемы выяснилась интересная особенность РК, о которой нигде не пишется.
Для управления памятью в режиме ПДП используется сигнал /MEMW D2, хотя мы читаем из памяти. То же, приметно, происходит и с ВГ75, она управляется сигналом /IORD, хотя мы в нее пишем.
Я сначала думал, что это ошибка.
Кто нибудь знает об этой особенности?
Так ВТ57 пишет в память или читает из нее?
Вот там я писал ответ: http://www.nedopc.org/forum/viewtopic.php?t=10051
Есть новости по сборке клона:
РК заработал! :v2_dizzy_roll:
Аппарат собран на макетке, и в нем пока нет микроконтроллера, поскольку мне нужно было собрать РКшку для экспериментов. Оригинальный РК не захотелось курочить.
Однако ВВ55, отвечающий за клавиатуру и магнитофон установлена на панельку (смотри фотку ниже).
После того, как я полностью проверю работоспособность РК, ВВ55 будет заменена на ATMega32. Контакты панельки распаяны МГТФом, по этому перепаять будет легко.
Интересные подробности сборки и запуска РКшки:
После сборки РК не заработал. :v2_dizzy_facepalm:
Но это, для меня, не повод забросить проект. Наоборот, раз уж я взялся паять РК собственными руками (да еще на макетке), хотелось пройти весь этот процесс до конца.
Воодушевила так же тема уважаемого tihsasha Радио-86РК или как "понюхать" систему команд переключателями.
Мне тоже захотелось пощупать пульс РК.
Я изготовил пошагователь, схема которого опубликована в журнале Радио №7 1986г. стр 27. Модернизировал его логическим анализатором на светодиодах, подключенных через инвертируемые шинные формирователи К555АП3. Он изображен на третьем фото.
Верхний ряд светодиодов это шина адреса А15 - А0. Фломастером ряд расчерчен на четыре секции по четыре светодиода, для удобства определения шестнадцатиричных цифр. Левая часть второго ряда, это шина данных D7 - D0, так же разделенная на две части по четыре светодиода. Далее светодиоды /R и /W, соответственно чтение и запись, оба сигнала инверсные. Далее идут четыре сигнала выборки основных узлов РК: /ROM, /RAM, /ВГ75, /ВВ55, сигналы так же все инверсны.
Справа внизу расположены основные элементы пошагователя ИМС 74ACT74 (зарубежный аналог К155ТМ2), кнопка "ШАГ", и перемычка установленная между выходом 8 ТМ2 и входом 3 ГФ24. Если перемычку снять, пошагователь отключается, и процессор работает с обычной скоростью. Пошагователь я питал от USB порта компьютера.
Тест программу, опубликованную в том же номере журнала, прошивать не стал. Решил, что поскольку я использую статическое ОЗУ, то обычный МОНИТОР пойдет для пошагового режима.
Нарисовал табличку, в которой расписал машинные циклы первых шести команд МОНИТОРА. Подключил пошагователь, и давай отлаживать.:v2_dizzy_coder:
Нужно согласиться с tihsasha, что процесс пошаговой отладки очень заниматален. Эти зажигающиеся и тухнущие светодиоды чем то завораживают. Попробуйте получить что то подобное на ПК!
Пройдя первые 17 циклов, я увидел несоответствие на шине данных, и дальше все пошло не так как в таблице. Из этого я сделал вывод, что у меня сбита адресация ПЗУ. В надежности ИМС и правильности прошивки я не сомневался. Подозрительно было еще и то, что сбой происходил после выполнения команды CALL 0FACEh.
После этого я составил еще одну таблицу, здесь было расписано какие разряды шины адреса и данных подключаются к различным выводам ИМС.
Потом взял тестер и последовательно прозвонил подключение всех расписаных линий. Оказалось на ПЗУ были перепутаны линии А9 и А8. Меня это не смутило, перепаять два провода МГТФ дело простое. Не смущает так же возникновение ошибки. Монтаж с помощью провода МГТФ требует большого внимания, а с учетом условий и темпа нашей жизни сконцентрироваться очень трудно. После перепайки все пошло как надо. Потом я устранил еще два бага, о которых не стоит и говорить, и вот она долгожданная надпись РАДИО-86РК на экране!!!:v2_thumb:
Потом я отключил пошагователь и подключил адаптер PS/2 клавиатуры от caro.
Повводил разные директивы монитора, и убедился что все работает нормально.
Впереди распайка цепей входа/выхода магнитофона и загрузка программ.
kovdry скажите пожалуйста как вы отлаживали РК без клавиатуры
она вроде пытаеться считывать клавиатуру и есле ее нет читает мусор
sergey2b, Не, в РКшке такого нет. В Орионе, там точно, без клавы - труба.
Было несколько экземпляров - без клавы курсор просто моргает.
---------- Post added at 22:34 ---------- Previous post was at 22:19 ----------
У меня есть полный клон РК86, называется - Квазар 01. Он в тяжеленном железном корпусе.Клава у него была намертво припаяна.Я поставил разъем, но как то не догадался удлинить провода. И получилось, что что то отлаживать и каждый раз цеплять клавиатуру очень неудобно. Так что я точно знаю, что и без клавы все работает нормально.
sergey2b, действительно, на РК при установленном ВВ55 и отключеной клавиатуре, ложных нажатий не происходит. Однако, если касаться пальцем выводов ВВ55 отвечающих за порт В, начинает щелкать динамик и двигается курсор.
При этом у меня выводы ВВ55 распаяны только на контактные площадки (без проводов и дорожек). Если у Вас, sergey2b, к ППА ВВ55 подключены какие то провода или разьемы, то вполне возможно, что у вас идут наводки на вход ППА. Незря же их подтягивают к +5В.
При отладке в пошаговом режиме до ввода с клавиатуры не доходит. Пошаговая отладка продвигается очень медленно. Обычно выполняются всего несколько начальных команд процессора. Там происходит только инициализация ППА клавиатуры и все.
Кроме того, обработка нажатия клавиши это не единичный процесс. Для устранения дребезга контактов клавиша опрашивается аж 21 раз!:v2_dizzy_tired2:
Только после того, как все 21 опрос указывают, что клавиша нажата,
выдается щелчек, и символ выводится на экран.
Сам не знаю, почему я его обозвал КВАЗАР-01.
http://s020.radikal.ru/i721/1302/93/f02b69e088ef.jpg
kovdry, поздравляю с запуском РК-86. Я почти завершил запуск программ с SD.
Спасибо, tihsasha! Это только начало, дальше работа пойдет быстрей и интересней.
Мне хотельсь бы с Вами, tihsasha, обговорить некоторые серьезные вещи, по поводу подключения SD карточки к РК. Может быть даже в отдельной теме. По сути, наши с Вами разработки представляют два противоположных подхода. Мне кажется, что оптимальное решение "где то посредине".