Важная информация

User Tag List

Показано с 1 по 7 из 7

Тема: Подскажите, какие порты использовать.

  1. #1
    Member Аватар для Example626
    Регистрация
    07.08.2007
    Адрес
    Нижний Новгород
    Сообщений
    77
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Подскажите, какие порты использовать.

    Приветствую форумчан.
    Я уже лет пятнадцать не прикасался к Спектруму, после того как спалил свой самодельный Pentagon-128 с наворотами (как спалил - отдельная и печальная история, но спалил напрочь).
    С тех пор ностальгирую постоянно, и теперь решил плюнуть и построить Спектрум обратно.
    Не знаю, впрочем, когда построю, построю ли вообще - таких "начинальщиков" и "бросальщиков", наверное, тут навалом.
    Но есть вопросы, в основном, по портам:
    1. Есть ли какой-то канонический стандарт на порты для расширения памяти (расширение планируется до 32 МБ - зачем, скажу ниже). Хотелось бы использовать под это дело один порт, но чтобы уже выпущенное ПО его видело. У меня раньше память была добита до 1 МБ, и я не помню, какой порт использовал, но стороннее ПО эту доп. память видело (например, копировало дискету на дискету за один проход).
    2. Есть ли какие-то стандарты на порты для видеорежимов?
    3. Есть ли стандарт на программный порт для включения-выключения "турбо"?
    4. Есть ли схема для Кемпстон-мыши с колёсиком?
    И т.д.
    Может, если кто подскажет ещё что, коротко расскажу, что я планирую (не всё сразу, есть программа-минимум, и потом развитие):
    Для начала хочу просто построить обычный Спектрум со 128+ памятью.

    На данный момент разработана вся схематика на ПЛИС Altera для работы процессора на произвольной частоте без применения Wait до 20 Мгц. При этом графическая схема имеет возможность считывать каждую точку в отдельности - например, для режима 256 цветов для каждой точки. При этом графика и процессор друг другу не мешают.
    Тактовые частоты процессора и графики могут быть произвольными и друг от друга независимыми - синхронизацию осуществляет схема.
    Схема оттестирована на симуляторе, на железе пока нет - нет программатора под Альтеру.
    Работа схемы заточена под SRAM, но с задержкой не более 10 нс. Специально не стал заморачиваться с DRAM из-за RAS и CAS - Альтера и так на пределе (из режима 20 МГц без Wait, она 10-наносекундная, а для RAS и CAS уже нужно меньше 10 нс - боюсь, не потянет. 7-наносекундных не нашёл в продаже.

    Заказано:
    Процессора Z80 20 МГц (DIP и QFP), ОЗУ 2048x8 Мб - 2 штуки пока, Altera 512x208 (одна есть, две заказал ещё)
    Также заказал две штуки Z380 - 16 битный вариант Z80. Но с ним проблема - их нигде нет. Нашёл только в одном месте в Китае, и могут прислать совсем не то.
    Дело в том, что планируется режим экрана 1024x576i - это телевизионная развёртка, чересстрочная, с соотношением 16:9.
    Обычным Z80 её можно раскачать (на 20 Мгц), но замучаешься страницы переключать. У 380-го прямая адресация до 4 ГБ, полная совместимость по командам и т.д. С обычным Z80 (в режиме совместимости), а также бонусом - 16 бит данных.
    Клавиатура планируется PS/2 обычная, с интерфейсом на микроконтроллере PIC и аппаратным преобразованием в стандарт Спектрум (40 клавиш), мышь на том же контроллере.
    Контроллер НГМД на ВГ-шке (это лишь для того мне старые свои диски прочитать, если не размагнитились).
    Музыка на AY-8912 и программной регулировкой громкости (подскажите, как лучше сделать - хочу через медиа-клавиши, но под PS/2 таких клавиатур мало).

    Память, если выгорит с 380-м процом, хотел бы под 16 бит, но нормально и две линейки по 8.

    Получится или нет - не знаю. Торопиться не буду. Но скоро должен прийти программатор альтеровский - оттестирую ПЛИС на предмет взаимной работы графики и проца.
    Схему ПЛИС могу выложить, может, кто косяки найдёт - она сырая.
    Насколько я знаю, даже на ZX Evo на данный момент максималка проца - 14 МГц и с Wait. Хотелось бы его обогнать.

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

  3. #2
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,103
    Спасибо Благодарностей отдано 
    23
    Спасибо Благодарностей получено 
    85
    Поблагодарили
    69 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    1. По-хорошему, единого "стандарта" на порт расширения памяти, даже внутри фирменных моделей 128К нет. Точнее порт есть, но сама архитерктура "страниц" (медленная\быстрая память), несколько отличается.
    Среди отечественных клонов, ситуация, примерно такая же. Хотя, как правило, используется "обратная" совместимость. Т.е. используется "стандартный" порт и системная переменная 128К машины, допольнительные страницы, переключаются жесткой адресацией портов по маске #xxFD.
    ЕМНИП, кроме пентагона расширение памяти до 1Мб было только в АТМ и скорпионе. Но дешифрация верхней памяти, у них отличается.

    2. Опять же, речь о клонах и новоделах? Что подразумевается под видеорежимами? Большее разрешение? Другая палитра цветов?

    3. Турбой, вроде как обладал скорпион и АТМ? Вроде, это было организовано как аппаратный или программно\аппаратный режим, без возможности узнать его состояние (без подсчета тактов).
    Когда есть, но не знаешь где - это все равно, что нету.

  4. #3
    Member Аватар для Example626
    Регистрация
    07.08.2007
    Адрес
    Нижний Новгород
    Сообщений
    77
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    1. Ну, 7FFD порт - это классика, а вот были другие порты по маске xxFD, но как была организована выборка, я что-то не нашёл в своих архивах. Ну, по Пентагоновской 1024 схеме, наверное, можно поднять. (хотя не факт, что я делал по ней). Но вот у ZX Evo память, если мне память не изменяет, 4 МБ. А схемы нет - всё в ПЛИСке. Но что-то я у них не нашёл инструкций по программированию, как обращаться к памяти и другим ресурсам платы - поэтому и порты неизвестны.
    2. По видеорежимам - я хотел бы понять, есть ли вообще некий канонический стандарт? Как клоны, так и новоделы, но "прижившиеся", а не мертворожденные. Так как в Wiki я насчитал много режимов, но в деталях подробно не расписано. Например, для режима 1024x576 я хотел бы применить как классику с атрибутами 8x8 - так как 8-битный Z80 без потери скорости этот экран просто не потянет на более серьёзных режимах, да и памяти будет жрать немерено, а с адресацией у него проблема. А вот если удастся "завести" Z380? да ещё и на 16-ти битах, можно сделать 16 бит на одну точку - 65536 цветов. Правда, этот экран на таком разрешении даже для Z380-го тяжёлый. Но, хотя у него и 18 МГц тактовая частота (против 20 МГц у Z80), он сам по себе шустрее - тем более 16 бит. Может, и потянет.
    Вот, в принципе, два режима, которые мне хотелось бы применить (просто хочется режим 16:9). Таких я не встречал. Поэтому и вопрос про стандарты портов для переключения режимов - каким образом делается у других, и сделать по подобию или городить что-то своё. А таких "своих" схем пруд пруди, и новые порты в общую кучу добавлять не хочется.
    Ну, ещё, если оставаться в пределах PAL/SECAM стандарта (625 строк 15625/50 Гц), можно добавить 768x576i (атрибутный и многоцветный) и 384x288 - это полный кадр без бордюра чересстрочный и обычный спектрумовский. Но только ПЛИС все режимы уже не потянет - нужно периферию в отдельную ПЛИС выносить будет.
    Просто у меня в схеме нет жёсткой привязки к тактовым частотам и менять режимы видео и проца можно как угодно - вопрос, как управлять программно, чтобы не городить лишнего своего.
    Если же никаких отдельных стандартов (например - порт xxxx управляет режимами видео. 0 - режим "спектрум"; 1 - режим "мультиколор"; 2 - режим 4 бит на точку и т.д), придётся делать какую-то программную оболочку (надстройку, как в эмуляторе), которая бы перенаправляла порты при запуске того или иного приложения, которое уже заточено под определённый режим.
    3. По "Турбе" - я понял, посмотрю схемы, может, найду, спасибо.
    Турбо я планирую два режима - 3,5 МГц и 20 МГц (18 для Z380, если найду кварцевый генератор на 18 Мгц, если нет, может, он и на 20-ти потянет), а также плавное изменение производительности проца - от 0 до 100 процентов. Я так уже делал, но регулировалось это переменным резистором. Схема была, по-моему, из ZX-Ревю - через ШИМ на вход !BUSRQ. Работало.

    Кстати, тема про приведение железа к единым стандартам поднималась в Ревю ещё в 1994-м году, но, видимо, всем было до лампочки - все лепили по своим лекалам.

    P.S. Может, многое, что я пишу, выглядит смешно и на мои потуги уже давно все решения есть, но повторю - я не касался темы Спектрум более 15-лет. Ну, если только косвенно. Поэтому могу многого не знать. У самого у меня ни Скорпионов, ни АТМ не было, но то что было - Пентагон-128, я изучил в своё время просто до последнего конденсатора и добрался даже до низкоуровневого программирования TR-DOS и ВГ93. К сожалению, многое забыто и утрачено.

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

    P.P.S. О, мне тут в личку тему по портам и стандартам бросили, нужно почитать и осмыслить.
    Сегодня я уже устал, а завтра в командировку. Пока поизучаю матчасть, будут вопросы - буду спрашивать.
    Последний раз редактировалось Example626; 13.11.2018 в 19:27.

  5. #4
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,103
    Спасибо Благодарностей отдано 
    23
    Спасибо Благодарностей получено 
    85
    Поблагодарили
    69 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Когда есть, но не знаешь где - это все равно, что нету.

  6. #5
    Veteran
    Регистрация
    06.02.2009
    Адрес
    Кемерово
    Сообщений
    1,329
    Спасибо Благодарностей отдано 
    58
    Спасибо Благодарностей получено 
    162
    Поблагодарили
    129 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Example626 Посмотреть сообщение
    Насколько я знаю, даже на ZX Evo на данный момент максималка проца - 14 МГц и с Wait. Хотелось бы его обогнать.
    В ZX next обещают 28 МГц https://www.specnext.com/new-turbo-modes-14-and-28mhz/
    ПК8010 "Корвет"+ExtRom+AY, Atari 65XE+SDrive, Дельта-С(52ИС)+AY, Scorpion ZS 1024+SMUC

  7. #6
    Guru
    Регистрация
    16.12.2009
    Адрес
    Харьков
    Сообщений
    4,732
    Спасибо Благодарностей отдано 
    357
    Спасибо Благодарностей получено 
    369
    Поблагодарили
    238 сообщений
    Mentioned
    11 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    ЕМНИП, кроме пентагона расширение памяти до 1Мб было только в АТМ и скорпионе.
    Самый первый стандарт на память 1Мб появился в Профи, потом по нему сделали расширение для пентагона, и затем появились 1МБ у АТМ и Скорпа.
    Profi must live!

    Моё железо...

    1. Profi 5.06/1Mb(DRAM)+Profi5.06(UP)/HDD/3`5FDD/CF512Mb/SD-CARD
    3. Profi 6.2 Rev. B/1Mb/3`5FDD/HDD3.2Gb
    4. Profi 5.05(down)/1Mb+Profi 5.03(UP)/Pentagon_Fix
    Все укомплектованы:
    Profi_ZX-BUS/ZXMC2/NemoIDE/SounDrive
    [свернуть]

    Ссылка на Telegram-канал поддержки пользователей Profi.

  8. #7
    Member Аватар для Example626
    Регистрация
    07.08.2007
    Адрес
    Нижний Новгород
    Сообщений
    77
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от marinovsoft Посмотреть сообщение
    В ZX next обещают 28 МГц https://www.specnext.com/new-turbo-modes-14-and-28mhz/
    Да я бы и 28 запустил (у меня как раз генератор на 56 МГц - на графику, на проц - 20 МГц), только где взять процессор под такую частоту? Я нашёл максимум на 20 МГц. Если есть ссылка, где купить, я бы посмотрел.
    С 28 МГц даже проще - нет необходимости синхронизировать запросы проца и графики на выборку памяти - они могут работать от одного тактового генератора на 56 МГц. И схему можно сделать таким образом, чтобы запросы не пересекались априори - можно выкинуть из схемы несколько лишних триггеров, да и задержка при выборке будет меньше.

    Опять же - если смотреть в сторону Z380, его я вообще только до 18 МГц видел. Хотя, думаю, раз уж простой Z80 на частоту 6 МГц вполне себе работает на 7 Мгц, то и этот на 20-ти хотя бы должен.

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

    Спасибо, карту портов я видел - нет подробностей, как именно их использовать. Да и в куче как-то всё там.
    Но, как я говорил, мне в личку отписались - там описано всё более подробно, но по мелким деталям всё равно есть вопросы.

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

    Цитата Сообщение от solegstar Посмотреть сообщение
    Самый первый стандарт на память 1Мб появился в Профи, потом по нему сделали расширение для пентагона, и затем появились 1МБ у АТМ и Скорпа.
    У них разные стандарты были или они по одному принципу работали?

    P.S. Кстати, только что пришло сообщение, что процессора пришли на 20 МГц (QFP) - нужно получать. В DIP-е пока нет, но там по отзывам людям вместо 20-мегагерцовых подсовывали 8-мегагерцовые. Я рискнул всё же заказать.
    Последний раз редактировалось Example626; 14.11.2018 в 00:48.

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

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

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

Похожие темы

  1. Ответов: 5
    Последнее: 11.05.2011, 21:21
  2. какие лучше использовать микросхемы
    от sergey2b в разделе Для начинающих
    Ответов: 2
    Последнее: 11.03.2010, 21:57
  3. Порты в AY
    от Bear в разделе Звук
    Ответов: 7
    Последнее: 27.09.2009, 03:53
  4. порты #x5 покритикуйте :)
    от Ronin в разделе Несортированное железо
    Ответов: 15
    Последнее: 16.06.2006, 12:32
  5. Порты SMUC
    от spensor в разделе Scorpion
    Ответов: 35
    Последнее: 17.08.2005, 16:27

Ваши права

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