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

User Tag List

Страница 77 из 80 ПерваяПервая ... 7374757677787980 ПоследняяПоследняя
Показано с 761 по 770 из 798

Тема: Speccy2007 v1.00

  1. #761
    Member
    Регистрация
    12.12.2007
    Адрес
    Moscow
    Сообщений
    145
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Сигнал не особо важный. Используется, в основном для мигания курсора, подать сигнал, который меняется раз в 1-3 секунды. Можно и не синхронизировать с экраном. В оригинальном Пентагоне там тоже несинхронизированный генератор на транзисторе стоит.
    ИМХО Не стоит брать кривые идеи.
    Изначально Speccy2007 задумывался как наиболее полное соответствие стандартному экрану Spectrum.

    Цитата Сообщение от zst Посмотреть сообщение
    Тут два варианта:
    1. Доработать схему, чтобы атмега работала по стандарту ZX-BUS. Тогда можно было бы подключать внешние схемы джойстиков (3 штуки). Очень бы хотелось поставить какой-нибудь буфер между Z80 и атмегой. И какой-нибудь сигнал, что с портами работает атмега и шину данных занимать нельзя. А данные с атмеги, имитирущие кемпстон и клавиатуру подавать бы с открытым коллектором, чтобы можно было параллельно подключать и джойстики.
    Получается уже монстр, ИМХО лучше/проще сделать новый клон.

    2. Подключить два джойстика к атмеге64/128 через регистры сдвига. Тогда можно было бы выбирать тип джойстиков для этих двух разъемов.
    Т.е. по сигналу от атмеги происходит загрузка состояния джойстика в регистр, затем по второму сигналу происходит сдвиг, а уже атмега смотрит на выходе из регистра?

    Сколько сигналов у джойстика будет использоваться?
    ZX-Spectrum+
    Speccy2007 + BDI
    Spec2009 WIP

  2. #762
    Guru Аватар для zx-kit
    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    65
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от denisv Посмотреть сообщение
    ИМХО Не стоит брать кривые идеи.
    Изначально Speccy2007 задумывался как наиболее полное соответствие стандартному экрану Spectrum.
    Ну это крайняя мера, если ячеек не хватит. Магнитофон - тоже стандартная часть Спекрума.

    Получается уже монстр, ИМХО лучше/проще сделать новый клон.
    Может и проще. Новый клон будет стоить около 3000 руб.
    Смотри - атмега 32 подключена к той же шине данных, что и ОЗУ, и AY и они не конфликтуют. Идея в том, чтобы сделать так, чтобы она не конфликтовала с другими устройствами, а лучше позволяла параллельно данным с нее подключать и порты джойстиков.

    Т.е. по сигналу от атмеги происходит загрузка состояния джойстика в регистр, затем по второму сигналу происходит сдвиг, а уже атмега смотрит на выходе из регистра?
    Если на свобобные ноги новой атмеги подать недостающие адреса и другие управляющие сигналы и зарезервировать для мышки, то на джойстики останется их мало.

    Сколько сигналов у джойстика будет использоваться?
    У каждого джойстика от сеги выходом 5-7. Можно одновременно загрузить их в пару резистров сдвига параллельно, потом последовательно загрузить эти два байта в атмегу. А там, в зависимости от того, какой тип эмулирует это джойстик (кемпстон, синклер 1 или 2, курсор, протек, qaopm и т.д.) , подмешать состояние джойстиков к данным с клавиатуры. Делать это периодически в фоне или одновременно с опросом клавиатуры.

    Дополнительные кнопки на джойстике можно тоже как-то задействовать.
    Последний раз редактировалось zx-kit; 17.05.2010 в 15:02.
    "L-256"

  3. #763
    Member
    Регистрация
    12.12.2007
    Адрес
    Moscow
    Сообщений
    145
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Ну это крайняя мера, если ячеек не хватит. Магнитофон - тоже стандартная часть Спекрума.
    Не совсем, в спеке был только вход для МФ, сам же девайс отдельный был.
    Отдельно подключить по схеме со скорпа (Хотя я уже придираюсь)


    Цитата Сообщение от zst Посмотреть сообщение
    Если на свобобные ноги новой атмеги подать недостающие адреса и другие управляющие сигналы и зарезервировать для мышки, то на джойстики останется их мало.
    Согласен, по моим прикидкам TQFP64 даст 16-18 доп.пинов, если пользовать на джойстик параллельный ввод то пинов явно не хватит.
    ZX-Spectrum+
    Speccy2007 + BDI
    Spec2009 WIP

  4. #764
    Guru Аватар для zx-kit
    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    65
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от denisv Посмотреть сообщение
    Согласен, по моим прикидкам TQFP64 даст 16-18 доп.пинов, если пользовать на джойстик параллельный ввод то пинов явно не хватит.
    У меня еще вопросы:
    1. Можно выходы атмеги на шину данных настроить как с открытым коллектором?

    2. Можно подключить сразу две атмеги. Одна старая атмега 32, а к ней еще одну атмегу32/64/128. При этом реализовать NOWAIT клавиатуру и джойстики?
    "L-256"

  5. #765
    Member
    Регистрация
    12.12.2007
    Адрес
    Moscow
    Сообщений
    145
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    1. Можно выходы атмеги на шину данных настроить как с открытым коллектором?
    Честно говоря не знаю. Судя по документации нельзя, хотя могу и ошибаться.

    Цитата Сообщение от zst Посмотреть сообщение
    2. Можно подключить сразу две атмеги. Одна старая атмега 32, а к ней еще одну атмегу32/64/128. При этом реализовать NOWAIT клавиатуру и джойстики?
    А зачем нужна вторая атмега, если основную заменить на более многоногую с большим объемом флеша?
    ZX-Spectrum+
    Speccy2007 + BDI
    Spec2009 WIP

  6. #766
    Guru Аватар для zx-kit
    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    65
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от denisv Посмотреть сообщение
    Честно говоря не знаю. Судя по документации нельзя, хотя могу и ошибаться.


    А зачем нужна вторая атмега, если основную заменить на более многоногую с большим объемом флеша?
    NOWAIT сделать. Может вторую можно будет и попроще.
    Основная, например, работает без прерываний с программным опросом сигналов Z80 и второй атмеги (данные о клавиатуре и джойстиках) и реагирует мгновенно, без остановки Z80.

    Вторая атмега уже оправшивает SD, клавиатуру, мышку и джойстики по прерываниям, медленно.
    "L-256"

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

  8. #767
    Activist
    Регистрация
    09.01.2010
    Адрес
    г. Москва
    Сообщений
    271
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst
    1. Можно выходы атмеги на шину данных настроить как с открытым коллектором?
    А почему бы и нет? Мега очень универсальный процессор по работе с портами (разве что internal pulldown нету, а так есть все, и все программно управляется).

    Конкретно для открытого коллектора надо сделать как-то так: PORTxn = 1 всегда, DDxn = 1 для состояния "транзистор открыт", 0 - "транзистор закрыт" в терминологии выхода с ОК. По-нормальному эти состояния будут именоваться "Выход, высокий уровень" и "3-е состояние" соответственно.

    Чтобы при переключении не было промежуточного кратковременного нулевого уровня на ножке, надо включить внутреннюю подтяжку (PUD в SFIOR в 0). Это включит подтяжку на всех пинах. Если вдруг в проекте общая подтяжка по каким-либо причинам выключена, можно посмотреть в сторону регистров альтернативных функций порта - там можно настроить индивидуальную подтяжку пина, невзирая на значение PUD.

  9. #768
    Member Аватар для dicebox
    Регистрация
    31.05.2006
    Адрес
    Молдова
    Сообщений
    103
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от e2e4 Посмотреть сообщение
    Конкретно для открытого коллектора надо сделать как-то так: PORTxn = 1 всегда,
    скорее так: PORTxn = 0 и управлять DDxn
    Profi v3.2 512k (+ PALcoder / SECAM ВЧ-модулятор)
    Speccy2007 + TR-DOS + 128k + AY (+ PALcoder)
    ZXM-Phoenix 1024 (+ ZXKit1-VGA, + UniJoypad для Phoenix)

    +UniJoypad 1.0

  10. #769
    Activist
    Регистрация
    09.01.2010
    Адрес
    г. Москва
    Сообщений
    271
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    скорее так: PORTxn = 0 и управлять DDxn
    Тогда будет переключение между низким уровнем и 3-м состоянием, что не есть ОК.

    Немного неправильно перевел из документации про подтяжки. В оригинале звучит так:

    When switching between tri-state ({DDxn, PORTxn} = 0b00) and output high ({DDxn, PORTxn}
    = 0b11), an intermediate state with either pull-up enabled ({DDxn, PORTxn} = 0b01) or output
    low ({DDxn, PORTxn} = 0b10) must occur. Normally, the pull-up enabled state is fully acceptable,
    as a high-impedant environment will not notice the difference between a strong high driver
    and a pull-up. If this is not the case, the PUD bit in the SFIOR Register can be written to one to
    disable all pull-ups in all ports.
    В общем, надо попробовать на живой меге, посмотреть осциллографом что будет. Думаю, проблем быть не должно.
    Последний раз редактировалось e2e4; 17.05.2010 в 19:19.

  11. #770
    Guru Аватар для zx-kit
    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    65
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от e2e4 Посмотреть сообщение
    Тогда будет переключение между низким уровнем и 3-м состоянием, что не есть ОК.
    А нам разве это не подойдет?
    Тогда можно было бы подключить какой-нибудь буфер с открытым коллектором, который включался бы при чтении из порта клавиатуры, а к нему подключить два синклер-джойстика.

    При замыкании контакта джойстика и состоянии чтения из клавиатуры и нуле на соответсвующем адресе Z80 этот ноль попал бы на шину данных параллельно выходам атмеги и они не мешали бы друг другу.
    "L-256"

Страница 77 из 80 ПерваяПервая ... 7374757677787980 ПоследняяПоследняя

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

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

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

Ваши права

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