User Tag List

Страница 7 из 14 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя
Показано с 61 по 70 из 181

Тема: Модульный РАДИО-86РК

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Акселератор РК86

    Идея выпуска новой версии платы РК86 не встретила особого энтузиазма. Но есть альтернатива.

    Для большинства массовых западных 8-ми разрядок выпускались так называемые платы акселераторов. Для 6502 на базе 65С02 или 65816, для КР580 на базе Z80, а для Z80 на базе HD64180ZP8. Они втыкались в слот или подключались к системной магистрали, а иногда включались DIP-разъёмом в панельку процессора. Обычно они давали ускорение в 3-15 раз, а иногда давали и смену системы команд процессора.

    Благодаря открытости архитектуры, особенно много подобных плат для Apple-II. Для него есть десятки плат акселераторов дающих ускорение от 3.5 до 15 раз.

    Кроме того имеются платы для Apple-II для использования другого процессора, причём они устроены так же, и по сути тоже являются акселераторами (никто не применял в них родной такт, обычно 3.5 МГЦ). Так, всем известная плата Z80 Soft Card, работает не на такте 1 МГЦ, как оригинал, а на такте 3.5 МГЦ. Кроме того для Apple-II есть платы на 6809, на 8088, а также на 68008, что помимо ускорения даёт в 8-ми разрядке 32-х разрядный процессор https://en.wikipedia.org/wiki/Apple_II_processor_cards.

    Именно благодаря таким доработкам примитивный Apple-II с неудобным процессором с 3-мя регистрами продержался и был популярен почти 20 лет http://apple2history.org/history/ah13/. Даже ПРИНЦ ПЕРСИИ был написан для Apple-II и лишь в 1990 году портирован на PC.

    На плате акселераторов располагают быстрый процессор и быструю память. А дисководы, адаптер клавиатуры и экранная память используется из самого компьютера. При обращении к портам и экранной памяти на основной плате такт процессора переключается на скорость оригинального процессора. Но сама программа пользователя прогоняется на ТУРБО-скорости, что и даёт желаемый эффект.

    Возникла идея сделать то же самое для РК86. Это стоит сделать хотя бы для того, чтобы избавиться от погасания экрана при работе с МГ и подключить дисковод от КОРВЕТА, дающий 800К. Важно, что появится возможность работать в реальном времени и, в частности, трансфер файлов по последовательному интерфесу для обмена с PC можно будет имитировать программно без применения громоздкой схемы на базе ВВ51.

    Плата акселератора РК86 может быть устроена так. Вытаскиваем КР580, РФ2 и ППА клавиатуры из панелек и в системный разъём вставляем платку акселератора. В ней системная магистраль отключается от шины основной платы переводом 3-х буферов АП6 в 3-е состояние. На платке стоит КР580 на такте 3.5 МГЦ, ПЗУ РФ2, ОЗУ w27512 (или две 62256) и ППА клавиатуры по адресу 8000. Адресное пространство ОЗУ 0...7FFF делится на две части. Область 0...76CF берётся из быстрого статического ОЗУ, а экранная область 76D0...7FFF по-прежнему берётся из РУ3-их на основной плате. На основной плате разумно оставить только одну банку РУ3-тьих, чтобы разгрузить шину. Область расширения ОЗУ 8400...BFFF также читается из быстрой статики. При обращении к РУ3-тьим на основной плате цикл обращения удлиняется на 1 такт WAIT, что соответствует периоду маш.такта в оригинале, так что проблем с тормозными РУ3 не возникнет.
    Обычно тактирование КР580 на 3.5 МГЦ требует установки ВК28, но такт 3 МГЦ без проблем достигается и без этого.

    При поступлении от ПДП сигнала HOLD, КР580 не останавливается, но буфера на шине данных и буферов отключаются, а на ПДП сразу же выдаётся HLDA. ПДП получает доступ к шине, но КР580 не остановлен. Только если во время ПДП КР580 попытается обратиться в экранный буфер или БИС на основной плате, то для него сформируется READY=0, до тех пор пока ПДП не закончит свой цикл пересылок и не освободит шину.

    Ускорение составит 3.5 : 1.3 = 2.7 раза. Можно предусмотреть режим НЕТУРБО с вдвое меньшим тактом 1.75 МГЦ. Чтобы получить скорость равную скорости оригинала можно использовать такт 2.6 МГЦ, что в режиме НЕТУРБО даст ровно 1.3 МГЦ, что соответствует скорости оригинала.

    Такая платка при грамотной разводке может быть довольно маленькой, а значит дешёвой. Считаю, что концепция в любом случае должна остаться базовой. То есть нельзя вводить такие доработки, что нельзя было бы простейшим способом получить на базовой плате. Нельзя откидывать тех, кто не может доработать свой базовый РК86 в силу отсутствия паяльника или ума.

    Я предложил КР580, т.к фанаты РК86 очень консервативны, но можно применить и процессоры HD64180ZP8 и 68008. Если их использовать на 8 МГЦ, то скорость будет вполне приемлемая. Процессор работает асинхронно, поэтому мы можем иметь любой такт, даже 20 МГЦ на китайском Z80.

    Давайте обсудим эту идею и поищем разработчика. Я бы и сам это сделал (это не так уж сложно), но не люблю возиться с железом, может быть сделаю когда-нибудь.
    Последний раз редактировалось barsik; 05.04.2018 в 20:01.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мое глубочайшее ИМХО: любая доработка по части ОЗУ/ЦПУ в РК86 прежде всего должна решать катастрофу с вредительским штатным распределением памяти экранов и портов в RK86. Если она не привносит возможность полностью использовать манюсенькие 64к неэффективного процессора 8080/Z80, а оставляет "лоскутки" как и было, то смысл теряется. Т.к. любая диспетчеризация упирается в убогость программного инструментария ее поддерживающего (не видел пока эффективных средств, только какие-то костыли как в современных реализациях ЯВУ хостящихся на РС но копилирующих для 8-биток).

    - - - Добавлено - - -

    Зато если она позволяет дать процу на выполнение все 64к+- (плюс диспетчеры/MMU) хотя бы и в дополнительных страницах ОЗУ, то - да, это удобно. RK же при этом превращается в плату алфавитно-цифрового терминала при этой добавочной карте, причем далеко не самого продвинутого (ввиду того что и как там ограничено в видеовыходе)
    Последний раз редактировалось Error404; 28.02.2017 в 21:44.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  4. #3

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для ЭВМ с текстовым экраном особо много ОЗУ для игр не надо. Это не графический компьютер, где игры с объёмом кода 6-8 кб с объёмом спрайтов 35 кб. Посмотрите на XONIX. Всего 1700 байт, а играть интересно. Посмотрите на TINY BASIC КР580 (1976). ЯВУ размером всего 1850 байт. То, что маленького ОЗУ достаточно для текстовой ЭВМ, лучше всего доказывает антикварный компьютер ZX80/81. Его выпустили с 1980 по 1983 тиражом 2.5 миллиона и сделали для него тысячи игр, несмотря на то, что у него всего 1 кб ОЗУ, из которого половину сжирает экран и скорость 800 КГЦ. И в этот килобайт умудрились засунуть игры Manic Miner, Pacman, Tetris и даже шахматы.

    Большое сплошное ОЗУ нужно было в 80-е годы, чтобы уместить максимальный листинг, т.к не было иного способа транслировать или дизассемблировать большую программу. Эту проблему мог бы решить дисковый ассемблер позволяющий транслировать большой исходник. Увы, для RK-DOS такого ассемблера не появилось, RK-DOS решает лишь проблему хранения файлов. Чтобы такой макро ассемблер получить нужна CP/M, для чего нужно иметь ОЗУ в адресах выше 8000,т.к если CP/M с размером 10К работает в основном ОЗУ, то для загрузки программ остаётся менее 20К, а половина РК-игр имеет больший размер.

    Таким образом маленькая платка акселератора решает все проблемы РК - даёт работу в реальном времени, скорость CPU и возможность иметь CP/M и макро ассемблер. Какие-то иные доработки просто бесполезны, их никак не использовать.

    Но главное то, что нельзя "уходить" с архитектуры РК86. Нельзя раскалывать оставшихся пользователей на 2 части. На примере ОРИОН-ПРО все убедились, что какая бы крутая не была новая архитектура, она вредна. ОРИОН-ПРО оставил "за бортом" бОльшую часть пользователей, что привело к мгновенной гибели сначала ОРИОНА, а следом и ОРИОН-ПРО.

    Прямая архитектура ОЗУ со сплошными 60К нужна только для использования ЯВУ. Но все уже убедились, что для медленной ЭВМ компиляторы ЯВУ бесполезны (интерес представляет только PL/M). Какое преимущество даст "прямая архитектура" со сплошным ОЗУ в 60К, по сравнению с "кривой" базовой архитектурой с портами посередине адресного пространства? Я имел в 1995 РК со сплошным ОЗУ в 60К и CP/M. Но что толку, если все программы РК перестали работать? Вскоре я вынужден был вернуть базовую архитектуру и заняться расширением ОЗУ совместимым образом. Авторы РК-МАКСИ тоже пытались получить "прямую архитектуру", но плохо кончили. Всем стало очевидно, что сохранение "кривизны" архитектуры РК - это аксиома, а доработки допустимы только такие, что можно сделать на базовой плате за пару часов труда.

    К таким простейшим доработкам относятся следующие:

    - улучшение качества фонта с 6*8 на 8*8 за счёт замены ИЕ4 на ИЕ5
    - введение инверсии знакомест за счёт атрибутов ВГ75
    - введение альтернативного фонта за счёт его прошивки во вторую половинку РФ2
    - расширение ОЗУ в окне 8400...BFFF, минимум, на 15 кб, максимум 1 мб
    - турбирование за счёт установки второго кварца по схеме РАДИО 01.1991 стр.38
    - буферизация ОЗУ для повышения надёжности при перегрузке шины периферией
    - подключение IDE-винчестера или "micro-SD" карточки его имитирующей
    - введение цвета по уже опробованным схемам или более совершенным
    - подключение к РК86 цветного VGA-монитора
    - решение проблемы скоростного обмена файлами с IBM PC по проводной линии

    Первые 5 пунктов я уже давно сделал. Цвет меня не волнует, т.к дисплей монохромный. Актуален винчестер и проводная линия. Громоздкой установки ВВ51 можно избежать, если сделать работу КР580 в реальном времени, что и даёт акселератор РК86.

    Заметьте, что самой быстрой отечественной ЭВМ на КР580 является ОРИОН (Вектор имеет такт CPU в 3 МГЦ, но из-за WAIT реальное быстродействие 2.4 МГЦ). Имея 3.5 МГЦ реального такта РК86 будет самой быстрой КР580 ЭВМ в мире.

    На этом же принципе хотел бы поставить в РК86 процессор 6502 на такте 1.5 МГЦ и 68008 на такте 10 МГЦ, т.к интересуюсь их программированием. Естественно, что при установке чуждых CPU архитектуру разумно "выпрямить". При использовании 6502 можно получить совместимость с Apple-II по вызовам ПЗУ F800 и тем самым совместимость с его системным ПО.
    Последний раз редактировалось barsik; 22.03.2017 в 11:59.

  5. #4

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,927
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Я имел в 1995 РК со сплошным ОЗУ в 60К и CP/M. Но что толку, если все программы РК перестали работать?
    РК со сплошным ОЗУ в 60К цветом и альтернативным фонтом называется "Апогей БК-01ц". На него было перенесено достаточно много программ с РК.
    Ещё был Партнёр-01.01, с CP/M и восемью фонтами, а при подключении блока МЦПГ ещё и практически с графическим экраном. И точно также на нём работали слегка адаптированные программы с РК.
    Последний раз редактировалось b2m; 01.03.2017 в 11:23.

  6. #5

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Но главное то, что нельзя "уходить" с архитектуры РК86. Нельзя раскалывать оставшихся пользователей на 2 части. На примере ОРИОН-ПРО все убедились, что какая бы крутая не была новая архитектура, она вредна. ОРИОН-ПРО оставил "за бортом" бОльшую часть пользователей, что привело к мгновенной гибели сначала ОРИОНА, а следом и ОРИОН-ПРО.
    так в том и идея чтобы не уходить, а сделать совместимо: расширить ОЗУ страницами по 64к (что не исключает дополнительных опциональных более мелких окон - например ими можно пользоваться для межстраничных пересылок), добавить порт страниц ОЗУ, где первую страницу (с адресом "0" по сбросу) пожертвовать под совместимость с ретро и адресным порно, при обращении к остальным страницам ничего такого странного не делать
    - вся память процессору (почти по Ленину ). Всего-то надо - чипселектами того, что лезет в середину адресного пространства, дополнительно управлять в зависимости от порта страниц по 64к.

    Цитата Сообщение от barsik Посмотреть сообщение
    Прямая архитектура ОЗУ со сплошными 60К нужна только для использования ЯВУ. Но все уже убедились, что для медленной ЭВМ компиляторы ЯВУ бесполезны (интерес представляет только PL/M).
    Кто эти все? Убедились думаю в основном кто попробовал и бросил - ниасилил, те, кто продолжал пилить, до сих пор используют: вон даже игры на С вполне себе выпускают (в соседних темах по ZX), библиотеки есть на уровне "сред быстрой разработки" - куда там ассемблеру. А уж для псевдографических и системных утилит где графики мало, по скорости требования ниже, а математики будь здоров сколько, ЯВУ вполне себе инструмент.
    А для "лоскутной" адресации таки-да, остается только ассемблер и демосцена (т.е. перевод электричества в тепловыделение), ибо никаких громадных проектов последнее время на асме что-то не видно: "настоящих буйных мало", профи ассемблера (которые писали под CP/M и фирмы-игроделы) ушли, а потенциал для портирования готового исходного кода с других платформ у ассемблера околонулевой (здесь с возможностями ЯВУ даже сравнивать бесполезно).

    Цитата Сообщение от b2m Посмотреть сообщение
    РК со сплошным ОЗУ в 60К цветом и альтернативным фонтом называется "Апогей БК-01ц". На него было перенесено достаточно много программ с РК.
    Ещё был Партнёр-01.01, с CP/M и восемью фонтами, а при подключении блока МЦПГ ещё и практически с графическим экраном. И точно также на нём работали слегка адаптированные программы с РК.
    Оно все так, но в те времена было одно существенное ограничение: в СССР память ОЗУ была дорогая и дефицитная. Поэтому чтобы забороть "трудные детские болячки РК" опять же обошлись одной линейкой РУ5, унеся порты и экран, и потеряв железную совместимость. Сейчас с памятью проблемы нет - хочешь статикой выйти можно из положения, хочешь на РУ7 или на более емких DRAM-аналогах. Взять тот де Вектор (ЕМНИП): в нем же так и сделали - имеющуюся страничку с экранами не трогали, а добавили "квазидиск", в котором благодаря прямой адресации ЦПУ работала CP/M=Микродос и прочее что требовало больших страниц.

    - - - Добавлено - - -

    Кстати, компиляторы ЯВУ до сих пор делают, даже среди участников форума есть пример - Vinxru (к сожалению, свалил с форума) с его компилятором С и несколькими играми на этом самом С написанными - как раз таки для Апогея и Ориона (и может еще каких), кросплатформенность же
    Последний раз редактировалось Error404; 01.03.2017 в 12:09.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  7. #6

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,927
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    так в том и идея чтобы не уходить, а сделать совместимо: расширить ОЗУ страницами по 64к
    Если взять, что де факто РК имеет ОЗУ 32Кб, то лучше наверное сделать окно 16Кб, чтобы при переключении банок хотя бы какое-то ОЗУ оставалось на месте, тем более что и экран нельзя переключать (а вдруг там мусор и ПДП подсунет ВГ-шке всякую ересь). Так что окно 16Кб с нулевого адреса - вполне адекватно с программной точки зрения, даже если первые 2 страницы будут отражать стандартное ОЗУ 32Кб. Другое дело, что с аппаратной точки зрения, чтобы сделать окно 16Кб и фиксированные 16Кб в области 4000-7FFF - одним проводочком не обойтись.

  8. #7

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Если взять, что де факто РК имеет ОЗУ 32Кб, то лучше наверное сделать окно 16Кб, чтобы при переключении банок хотя бы какое-то ОЗУ оставалось на месте, тем более что и экран нельзя переключать (а вдруг там мусор и ПДП подсунет ВГ-шке всякую ересь). Так что окно 16Кб с нулевого адреса - вполне адекватно с программной точки зрения, даже если первые 2 страницы будут отражать стандартное ОЗУ 32Кб. Другое дело, что с аппаратной точки зрения, чтобы сделать окно 16Кб и фиксированные 16Кб в области 4000-7FFF - одним проводочком не обойтись.
    Окно в 16кб (или меньшие) никакого удобства при программировании не дает. Маленькие окна - это медленные и мучительно организовываемые оверлеи кода или данных для единственного приложения, которое придется еще и написать, потому что готовые приложения (если из приличных) - большие и не лезут в 32к из которых еще надо вычесть экран. "Удобство" диспетчера по 16к наглядно иллюстрирует соседняя тема про FUZIX для ZX-128, где уже наизнанку вывернулись, а ничего путного в эти 16к не лезет.

    Другое дело, что это окно в 16к приобретает смысл как отключаемая "склеенная" область межстраничного обмена, но только если есть эти большие страницы.

    - - - Добавлено - - -

    Цитата Сообщение от Error404 Посмотреть сообщение
    Другое дело, что это окно в 16к приобретает смысл как отключаемая "склеенная" область межстраничного обмена, но только если есть эти большие страницы.
    В этом случае можно упростить: на время межстраничного обмена накрывать "большие страницы" 32к-шной ОЗУшкой нулевой (основной,начальной) страницы. Т.е. как аналог диспетчера с окном 32к где всегда включается только один сегмент. Это же даст возможность и в экранное ОЗУ писать. Фактически, это будет единственное что будет требоваться от основной страницы в расширенном режиме - экран да подпрограммы межстраничной пересылки.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. #8

    Регистрация
    28.03.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,777
    Спасибо Благодарностей отдано 
    558
    Спасибо Благодарностей получено 
    200
    Поблагодарили
    138 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение

    Кто-нибудь знает максимальный период регенерации SIMM 1 мб?
    Определяется типом использованных микросхем DRAM на модуле.

    Вообще же можно не изобретать велосипед, а почитать про технологию регенерации CAS-before-RAS (CBR), например, тут: https://www.pjrc.com/mp3/simm/simm.html

  10. #9

    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,509
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    22
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А в чем кайф ставить динамическую память в РАДИО-86РК? Это ведь супер хреново.

  11. #10

    Регистрация
    01.06.2005
    Адрес
    Москва
    Сообщений
    229
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    53
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vladimir_S Посмотреть сообщение
    А в чем кайф ставить динамическую память в РАДИО-86РК? Это ведь супер хреново.
    А в чем кайф собирать и даже что-то делать на РАДИО-86РК? Это ведь супер хреново.

Страница 7 из 14 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Радио-86РК: Игры
    от rnd.gen в разделе Радио-86РК
    Ответов: 146
    Последнее: 10.12.2025, 06:29
  2. Ассемблер Радио-86РК
    от gdv2002 в разделе Радио-86РК
    Ответов: 337
    Последнее: 13.02.2024, 07:25
  3. Радио-86РК: По страницам журнала "Радио"
    от Viktor2312 в разделе Радио-86РК
    Ответов: 79
    Последнее: 13.02.2014, 08:34
  4. эмулятор радио-86рк
    от sergey2b в разделе Эмуляторы отечественных компьютеров
    Ответов: 4
    Последнее: 09.06.2011, 15:59
  5. Радио 86РК
    от Shnurkov в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 02.01.2009, 12:52

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •