User Tag List

Страница 11 из 26 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя
Показано с 101 по 110 из 251

Тема: ПК Специалист + AY-3-8910/12

  1. #101

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,651
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    А что за PORT_RD такой. Вроде к AY обращались всегда по двум портам?
    Выбор регистра, запись в регистр, чтение из регистра - три порта, а точнее ячейки памяти используются на Специалисте.
    Честно говоря, я до недавнего времени понятия не имел как вообще программировать AY. Возможно на Спектруме по одноу порту происходит и запись, и чтение, но на Специалисте почему-то под чтение и под запись используются разные ячейки. Почему так, я не имею ни малейшего представления. @Pyk делал эмуляцию AY и на Спектруме, и на Специалисте, возможно он сможет прояснить что к чему.

    Цитата Сообщение от Mick Посмотреть сообщение
    А что SP580 юзает халяву (порты).
    Нет там никаких портов. SP580 - это классический Специалист, только там ВВ55 переместили в конец памяти. А проблема в том, что весь Монитор (да и другой их софт) для доступа к ячейкам памяти периферии пестрит командами IN/OUT для экономии байтов.

    Цитата Сообщение от Mick Посмотреть сообщение
    И вроде тут обсуждается платка с AY для текущих Специалистов, а для будущего клона на Z80 как бы она не нужна.
    Да, но SP580 у меня прекрасно жил на моём Лике. Я переключался между классическим Монитором и SP580 переключателем П2К. Сейчас я эту доработку отпаял и вернуло всё к заводу, но факт остаётся фактом.

    Я не призываю что-то менять и от чего-то отказываться, а просто излагаю факты. Если делаем для классики, то было бы вообще идеально и AY с прерываниями заполучить, и ни с каким софтом совместимость не утратить. А для своего Лика я однозначно хочу такую плату какова бы у неё совместимость ни была!
    С уважением, Станислав.

  2. #102

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,392
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Можно ограничить обращение к портам только адресами 14h и 15h. Или более грубо (если планируется еще что-то подключать к портам, иначе первый вариант лучше): 00-7F - порты, 80-FF - память. В таком случае большинство старого софта использовавшего IN/OUT сохранит работоспособность.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    CityAceE(11.08.2025)

  3. #103

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Выбор регистра, запись в регистр, чтение из регистра - три порта, а точнее ячейки памяти используются на Специалисте.
    Зачем три ячейки. В Спектруме используется два порта, один порт на запись адреса регистра и один порт для чтения и записи данных регистра. На этой плате тоже используется два порта.

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

    Цитата Сообщение от ivagor Посмотреть сообщение
    ожно ограничить обращение к портам только адресами 14h и 15h. Или более грубо (если планируется еще что-то подключать к портам, иначе первый вариант лучше): 00-7F - порты, 80-FF - память.
    В принципе можно и так, тогда вариант лучше 80-FF на память, а 00-7F на порты.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  4. #104

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,392
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть кстати еще вариант, но с нюансом. Оставить обращение к AY как к памяти, но сместить в область ПЗУ (C000-CFFF). Понятно, что это только на запись, без чтения.

  5. #105

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Есть кстати еще вариант, но с нюансом. Оставить обращение к AY как к памяти, но сместить в область ПЗУ (C000-CFFF). Понятно, что это только на запись, без чтения.
    Мне как то не понятны такие сложные движения по поводу AY. Тем более что в будущем планируется переходить на Z80. Сейчас написанных программ чуть больше чем ничего. И все программы (демы) написал я так понимаю Станислав. Так ему и ничего не стоит поменять условно обращение не к памяти, а к портам. Пока ничего страшного не произошло - в железе ничего нет. Зачем тащить потом на Z80 обращение к памяти, когда у него портов там тоже дофига.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  6. #106

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,651
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    ничего не стоит поменять условно обращение не к памяти, а к портам.
    Вообще без проблем! Стандарт пока ещё не устаканился - пока что имеем реализацию только в эмуляторе и FPGA. А вот когда появится первая железная реализация, вот тогда уже можно будет о чём-то говорить. По большому счёту без разницы как обращаться к AY, но самое главное не навредить существующему софту. Как я уже писал, некоторые программы всё-таки используют IN/OUT для обращения к стандартным портам. В качестве примера я приводил монитор SP580 и софт от тех же ребят. Мне понравилось предложение о блокировке чтения из памяти только при обращении к портам AY. Важно, чтобы именно эта переходная плата подключалась к любому стандартному Специалисту и ни с чем не конфликтовала.
    С уважением, Станислав.

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

  8. #107

    Регистрация
    05.04.2013
    Адрес
    Починки, Нижегородская обл.
    Сообщений
    1,371
    Спасибо Благодарностей отдано 
    403
    Спасибо Благодарностей получено 
    647
    Поблагодарили
    255 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    в принципе можно обойтись без отдельного счетчика для длительности прерывания. Если брать все те же 32 такта, то при тактовой частоте процессора 2мГц, сброс триггера прерываний будет частотой 62,5кГц. Такая частота выходит на ноге счетчика 6 DD2 (ИЕ7).
    "Бюджетный вариант". При всех неудобствах он используется на Спектруме и ничего, все привыкли...

    Цитата Сообщение от Mick Посмотреть сообщение
    прерывания от кадровой развертки сбрасываются по INTA
    Так, конечно, даже еще правильнее, чем по INTE.

    Цитата Сообщение от ivagor Посмотреть сообщение
    И в чем преимущество над сбросом по INTE как в векторе?
    Как в Векторе - нет зависимости от длительности прерывания, можно не задумываться о том, что обработчик получился слишком коротким, и сигнал остается еще активным. А вот преимущество сброса по INTA уже более существенное: можно, например, запрещать прерывания на время выполнения небольших критичных участков кода (нестандартная работа со стеком), и они не будут потеряны, обработчик будет вызван после разрешения прерываний. Наверное, и по INTE можно так сделать, если предусмотреть возможность установки триггера даже при неактивном INTE, чтобы сброс происходил именно по фронту INTE, а не по уровню, как в Векторе.

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

    Цитата Сообщение от Mick Посмотреть сообщение
    А что за PORT_RD такой. Вроде к AY обращались всегда по двум портам?
    Просто так было сделано в журнальной схеме подключения AY к Специалисту. Если нам совместимость не важна, можно без проблем сделать как и на других компах - 2 порта.

  9. #108

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,392
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Pyk Посмотреть сообщение
    Так, конечно, даже еще правильнее, чем по INTE.
    Это не "еще правильнее", это другие приоритеты.
    Векторовский вариант гарантирует, что мы входим в обработчик прерывания всегда примерно в одно время. В векторе это критично для программирования палитры. Да, если прерывания запрещены, то пропустим.
    Вариант ПК8000, когда запрос продолжает висеть, по своему хорош, но когда надо обеспечить регулярные прерывания через одинаковые промежутки времени и векторе и в пк8000 надо оставлять прерывания разрешенными и в этом случае разницы не будет. Тут на помощь приходят придуманные спектрумистами пара вариантов, когда даже нетрадиционное использование стека можно совмещать с прерываниями.

  10. #109

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Pyk Посмотреть сообщение
    Просто так было сделано в журнальной схеме подключения AY к Специалисту. Если нам совместимость не важна, можно без проблем сделать как и на других компах - 2 порта.
    По схеме Белухи сколько подключено реально AY и сколько до Станислава программ с AY на Специалисте? Просто, насколько сейчас актуально брать схемные решения, которые нигде не поддержаны. Как я писал недавно, не надо сильно повторять советский подход к построению ни с чем не совместимых систем, тем более сейчас, когда основной контингент пользователей входят в клуб 50+ или около того. Сейчас надо как то наоборот делать условные кроссоверы с другими компами, где это возможно.

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

    И кстати говоря. Огласите плиз весь списочек программ с AY для Специалиста, а то я может отстал от жизни и уже куча софта есть, а я тут со своими так сказать фантазиями пытаюсь влезть.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  11. #110

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,651
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я не шарю в схемотехнике поэтому думал, что отдельные ячейки для чтения и записи - это чем-то обусловленное решение. Ну, а раз это сделано исключительно из-за опубликованной схемы, то и тянуть это к нам, я считаю, не стоит. Тем более, что даже адреса портов уже поменялись (F000 -> F400). Программы под это дело до нас не дошли, так что можем считать, что их нет. Все свои эксперименты с AY я ставил с заделом на то, что всё ещё будет меняться. Поэтому если есть какое-то более простое и грамотное решение, то и нужно использовать именно его. Обращение через IN/OUT и короче, и быстрее. Решить, как устранить конфликты при обращении к F000-FFFF через IN/OUT - и дело в шляпе.

    Что касается самих прерываний, то пока мы ещё на берегу у нас есть возможность договориться, как делать правильно. Мне лично более понятен подход, когда прерывания пропускаются, если они запрещены. Но опять же, я не понимаю насколько какой вариант более прост/сложен. Можно использовать любой подход, главное его зафиксировать, задокументировать и принять за стандарт.

    Ещё раз повторюсь, что самое главное для нас - это чтобы можно было без конфликтов подключить к любому стандартному Специалисту. У меня уже есть Лик, а в ближайшее время, я очень надеюсь, Serg6845 запустит мой Сябр. В обоих я очень хотел бы иметь AY с прерываниями через обсуждаемую переходную плату под процессор. А там, глядишь, можно будет и отдельную процессорную плату под Сябр развести для желающих

    Цитата Сообщение от Mick Посмотреть сообщение
    Огласите плиз весь списочек программ с AY для Специалиста
    Да нет абсолютно никакого софта! Чистый лист! Pyk'у, когда он интегрировал AY в свой эмулятор, даже проверить было на на чем. А вот отлаживать на FPGA было уже попроще, так как благодаря наличию поддержки AY в Emu80, я уже какой-то проигрыватель успел сделать.
    Последний раз редактировалось CityAceE; 12.08.2025 в 13:49.
    С уважением, Станислав.

Страница 11 из 26 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. AY-3-8910 in FPGA
    от VELESOFT в разделе Звук
    Ответов: 18
    Последнее: 25.12.2015, 22:13
  2. AY-3-8910 к РК
    от Kakos_nonos в разделе Радио-86РК
    Ответов: 4
    Последнее: 24.05.2013, 12:10
  3. AY-3-8910
    от Eugeny в разделе Звук
    Ответов: 14
    Последнее: 05.09.2011, 17:11
  4. Продам AY-3-8910
    от crolicasm в разделе Барахолка (архив)
    Ответов: 9
    Последнее: 17.03.2009, 15:25
  5. О портах AY-3-8910...
    от ILoveSpeccy в разделе Звук
    Ответов: 2
    Последнее: 02.07.2007, 15:02

Ваши права

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