Просмотр полной версии : Speccy2007 v1.06 (128 + AY + TRDOS)
Люди, вы меня окончательно запутали.
Вопрос. Должен ли сигнал RAM_A14 идти на процессор как сигнал А5 и одновременно на альтеру?
RAM_A14 идет с альтеры на память 621024. Откуда информация, что он идет еще на процессор в виде А5.
RAM_A14 идет с альтеры на память 621024. Откуда информация, что он идет еще на процессор в виде А5.
Может я неправильно понял, но у меня память 621024 (микросхема в dip32 корпусе!!!) вставляется в разъем вместо старой памяти 62256 и там со стороны первого вывода идет смещение битов, а первый вывод (А5) разъема!!! ( где раньше была память 62256) совпадает с третьим выводом микросхемы 621024 (RAM_14).
Насколько я понял нужно отсоединять вывод 1 разъема (разъем на основной плате)!!! от А5 процессора.
Что тогда соединять на процессор вместо А5 ?
Если я задаю глупые вопросы то прошу извинения и прошу ткнуть носом чтобы увидел проблему. Просто я пытаюсь понять это своим умом :).
Кажется я начинаю понимать где моя ошибка.
---------- Post added at 23:23 ---------- Previous post was at 22:58 ----------
Вопрос уже почти решился. Я отсоединил 3 ногу 621024 от панельки и присоединил ее к выводу альтеры и сразу появилась картинка.
Может я неправильно понял, но у меня память 621024 (микросхема в dip32 корпусе!!!) вставляется в разъем вместо старой памяти 62256 и там со стороны первого вывода идет смещение битов, а первый вывод (А5) разъема!!! ( где раньше была память 62256) совпадает с третьим выводом микросхемы 621024 (RAM_14).
Насколько я понял нужно отсоединять вывод 1 разъема (разъем на основной плате)!!! от А5 процессора.
Что тогда соединять на процессор вместо А5 ?
Если я задаю глупые вопросы то прошу извинения и прошу ткнуть носом чтобы увидел проблему. Просто я пытаюсь понять это своим умом :).
Кажется я начинаю понимать где моя ошибка.
По-моему, надо соединить так (нумерация для 621024 в dip32 корпусе):
1 - свободный
2 - RAM_A16
3 - A5 (оставить)
12 - RAM_A14 (раньше был A14, его отрезать)
22 - RAM_CS (проверить)
30 - VCC
31 - RAM_A15
32 - VCC
если у тебя А5 и RAM_A14 заходят на один и тот же адресный бит, то перекинь один из них (RAM_14 удобней) на оставшийся свободный адресный бит. на микрухе их 17 и приходит 17 (A0 - A13, RAM_A14-RAM_17 )
На данный момент есть следующее: при включении компа, экран очищается, темнеет и зависает, при нажатии на F12 начинает грузиться, потом появляется заставка SYD's SPECCY2007, а потом снова сбрасывается, появляются тонкие вертикальные полоски и комп опять зависает. (Полоски немного запоротые в одном и том же месте.) Без ПЗУ матрасик уже нормальный.
Что я сделал: отсоединил 3 вывод 621024 от платы расширения, отсоединил вывод DD2 RAM_A14 от А5 и присоединил к 3 выводу микросхемы, получается на A5 не идет ни один вывод 621024. Наверное потому у меня не до конца запускается комп.
Правильно ли я сделаю, если включу вывод 3 DD1 (621024) обратно на место, отсоединю вывод 12 от всех других контактов и соединю его напрямую к DD2 75 контакту?
Еще вопрос. При включении должно выйти меню с выбором бейсик48,128 и дос?
Правильно ли я сделаю, если включу вывод 3 DD1 (621024) обратно на место, отсоединю вывод 12 от всех других контактов и соединю его напрямую к DD2 75 контакту?
Я это и предлагал. И syd тоже. На 3 выводе будет опять A5, а RAM_A14 будет на 12 выводе. Тогда на ОЗУ будут присутствовать 17 сигналов адреса.
Ура!!! :):):):):):):):):):):):):):) Заработало!!!:):):):):):):)
Огромный мегареспект господину Syd-у !!!!!. Получил удовольствие собрать и настроить!!!
Также очень благодарен Denisv, Ewgeny7, Zst, Skyther, Caro, Alex_kapfa, Mikka_A, Luzanov, Zloy, БК-0010, Bolini и другим, кого не назвал!!!
---------- Post added at 14:09 ---------- Previous post was at 14:05 ----------
:v2_cheer::v2_cheer::v2_cheer::v2_yahoo::v2_yahoo: :v2_yahoo::v2_clap2::v2_clap2::v2_biggr::v2_biggr: :v2_walkm::v2_yahoo::v2_clapp::v2_clap2:
---------- Post added at 14:11 ---------- Previous post was at 14:09 ----------
Потом выложу картинки :) и окончательные результаты тестов, а еще придется немного доработать свою разводку платы расширения для 128к+ym.
rnd.gen, кстати твоя любимая игрушка теперь перестала глючить?
rnd.gen, кстати твоя любимая игрушка теперь перестала глючить?
Еще не имел возможности нормально протестировать, но пока все работает, 25 ходов - полет нормальный :v2_clapp::v2_cheer::v2_thumb::).
Некоторые данные тестов.
Last Battle работает нормально.
Но замечено, что ZX-FORMAT (все без исключения выпуски) сначала грузятся нормально, а потом как бы зависают. Если можно попробуйте протестировать.
balu_dark
13.04.2010, 12:47
ну так оно с дисков если плохо ломанное было - глючило! тем более тут эмуляция и намного медленнее доступ к диску. возможно гдето по скорости не пролазит и попадает прерывание на место где оно запрещено.
Еще возник вопрос к знающим людям. Чем ограничивается скорость обмена компа с флешкой: скоростью флешки или скоростью Атмеги? Можно ли заменив карту памяти на более скоростную добиться большей скорости загрузки и записи или это зависит от Атмеги? Можно ли повысив частоту атмеги увеличить скорость обмена?
Это уже объяснялось гдето... Скорость низкая из-за хитровывернутости алгоритма эмуляции ВГ.
Замена карточек ничего не даст, повышение скорости АВР также сильно не поможет.
Оптимальный выход - работать не с .TRD а со .SNA. Они грузятся гораздо быстрее, т.к. эмуляция тут отсутствует по определению.
Это уже объяснялось гдето... Скорость низкая из-за хитровывернутости алгоритма эмуляции ВГ.
Замена карточек ничего не даст, повышение скорости АВР также сильно не поможет.
Оптимальный выход - работать не с .TRD а со .SNA. Они грузятся гораздо быстрее, т.к. эмуляция тут отсутствует по определению.
Но в . SNA есть ограничение, насколько я понял не все программы потом корректно работают (это как "обезьянья" кнопка ).
В общем ZX-FORMAT-ы работать не будут? :frown::(
balu_dark
18.04.2010, 02:14
они - врядли! смысл снапа - читай обычный Magic. ибо это слепок всей памяти и содержимого регистров. тоесть для снапов надо делать слепок каждой статьи формата. это гемор. проше отшаманить выложенные товарищем Алексеенко журналы без зашиты. поищи по форуму - целый трэд об этом был.
Но в . SNA есть ограничение, насколько я понял не все программы потом корректно работают
Конечно. Для прог с подгрузкой это неприемлемо. Се ля ви :)
Ljubitel
05.05.2010, 01:45
Пытаюсь собрать спек2007+128+AY.
Что-то уже голову сломал.
Без ПЗУ на экране такая вот картина как на первой фотке.
Это правильная картинка ? Или у меня адреса съехали ?
Когда вставляю ПЗУ - картинка номер 2. И всё...
Пожалуйста, направте в нужную сторону :)
Пытаюсь собрать спек2007+128+AY.
Что-то уже голову сломал.
Без ПЗУ на экране такая вот картина как на первой фотке.
Это правильная картинка ? Или у меня адреса съехали ?
Когда вставляю ПЗУ - картинка номер 2. И всё...
Пожалуйста, направте в нужную сторону :)
На первой картинке должно быть по две полоски. (http://zx.pk.ru/showpost.php?p=188974&postcount=342) Есть ли подтяжка шины данных?
На второй картинке знакоместа 4х8 точек. Должны быть 8х8 точек. Нет ли замыкания сигналов A5 и VA5 на другие сигналы?
Ljubitel
05.05.2010, 10:47
Есть ли подтяжка шины данных?
есть
Нет ли замыкания сигналов A5 и VA5 на другие сигналы?
Спасибо, проверю еще раз
Ljubitel
05.05.2010, 19:22
Нет ли замыкания сигналов A5 и VA5 на другие сигналы?
Спасибо, проверю еще раз
Проверил все A и VA цепи. Замыканий на землю, +5V и между собой нет...
:mad:
Проверил все A и VA цепи. Замыканий на землю, +5V и между собой нет...
:mad:
А версия 48к нормально работала ?
Может ПЛИС перешить заново проверенной прошивкой (http://zx.pk.ru/showpost.php?p=276169&postcount=27) ?
Все ли доработки 128к из первого поста сделаны правильно?
Добавил в FAQ информацию про расцветку матрасов -- http://zx.pk.ru/showpost.php?p=238640&postcount=2
Судя по узору вашего матраса, в память записывается адрес #0029 (%00000000 00101001).
Это похоже на выполнение команды RST40 (адрес #0028). Код этой команды #EF. Этот код считывается с шины данных. А должен считываться #FF. Бит D4 шины данных, видимо, отличается от остальных...
Ljubitel
06.05.2010, 22:31
А версия 48к нормально работала ?
А не было версии 48к. Сразу развел 128.
Судя по узору вашего матраса, в память записывается адрес #0029 (%00000000 00101001).
Это похоже на выполнение команды RST40 (адрес #0028). Код этой команды #EF. Этот код считывается с шины данных. А должен считываться #FF. Бит D4 шины данных, видимо, отличается от остальных...
Спасибо. Очередная тщательная проверка показала замыкание D4 на D2. На заводе накосячили с платой. VA5 коротило на VA2 еще.
А так хотелось "уйти" от МГТФ...
Теперь всё работает
:)
А не было версии 48к. Сразу развел 128.
Спасибо. Очередная тщательная проверка показала замыкание D4 на D2. На заводе накосячили с платой. VA5 коротило на VA2 еще.
А так хотелось "уйти" от МГТФ...
Теперь всё работает
:)
Рад за вас. Добавьте свой вариант в коллекцию одноплатных версий SPECCY2007 128K+AY.
Кто следующий ? Давайте объявим конкурс (http://zx.pk.ru/showpost.php?p=281800&postcount=29)
Кто может подсказать, где последняя корректная прошивка для 1.06 (в смысле её исходники)?
Первый пост этой темы. А что?
Добавлю в неё новый BDI, вернее уже добавил.
Работоспособность не гарантируется.
Работоспособность не гарантируется.
действительно, запускается, но тырдос диски не читает. версия трдос критична? 5.04 прошит.
действительно, запускается, но тырдос диски не читает. версия трдос критична? 5.04 прошит.
Не критична, главное чтобы была специально для speccy2007.
Диски всех форматов не читает?
Что за ошибка выдается? (Disk Error или какая другая)
специально для speccy2007
со старой версией bdi работала.
Что за ошибка выдается?
ничего не выдается, висит. но по cltr+ctrl сброс есть, мк не дохнет...
В спеке клавиатура работает до входа в TRDOS?
Snapshot-ы выгружаются/загружаются?
В спеке клавиатура работает до входа в TRDOS?
Snapshot-ы выгружаются/загружаются?
Могу все подтвердить что писал skyther. При включении все как бы работает, но при обращении к диску зависает, никаких ошибок не выдает. В меню флешки снизу по прежнему видно дисководы а, в, с, д. (Было сказано что только а и б, хотя наверное это просто пустышки). Если нажать ентер, то при обращении к диску тоже зависает.
Было сказано что только а и б, хотя наверное это просто пустышки
В boot.sna жестко зашит список дисков, C и D действительно пустышки.
Их не получится использовать в новой версии т.к. при использовании объем свободной оперативки уменьшается до 30 байт и это не очень хорошо - нет запаса по размеру стека.
Если нажать ентер, то при обращении к диску тоже зависает.
Enter нажимается при выборе образа?
Enter нажимается при выборе образа?
Да. В обычных условиях образ запускается, в данных: зависает.
Да. В обычных условиях образ запускается, в данных: зависает.
Извините, я опять уточню. В версии 128к от атмеги отрезали два сигнала и припаяли два других. В архиве http://zx.pk.ru/attachment.php?attac...3&d=1243971050 syd описал процесс расширения для своей платы (файл speccy2007_128_readme.pdf).
Может это как-то влияет ?
отрезали два сигнала и припаяли два других
ROM0 и ROM1 ? они правильно работают, пзу ведь переключается.
В темах про игры нашел причину зависания некоторых игр в эмуляторах (http://zx.pk.ru/showpost.php?p=263689&postcount=268)
Для нормальной работы таких капризных игр (возможно RENEGADE тоже относится к таким играм) бит D6 (чтение с магнитофона) должнен быть 0. А на SPECCY2007 48K из порта 254 читается 255 при отпущенных кнопках.
Прошу учесть и по возможности исправить для всех версий.
Но при этом может перестать работать другая часть капризных игр. А может и не перестанет.
Может какие-то дип-переключатели предусмотреть для установки старших битов при чтении с клавиатуры и кемпстона для повышения совместимости с играми?
дип-переключатели
зачем пины тратить? в boot.sna добавить пару кнопок.
Для нормальной работы таких капризных игр (возможно RENEGADE тоже относится к таким играм) бит D6 (чтение с магнитофона) должнен быть 0. А на SPECCY2007 48K из порта 254 читается 255 при отпущенных кнопках.
Прошу учесть и по возможности исправить для всех версий.
Но при этом может перестать работать другая часть капризных игр. А может и не перестанет.
Эээ... а как в фирменном спеке? Надо делать точно так же, как в фирменном.
Может это как-то влияет ?
Не должно влиять, т.к. менялись:
1. Вызовы записи/чтения портов BDI
2. Инициализация BDI
3. Перенесен под условную компиляцию код, относящийся к поддержке ленты.
Да. В обычных условиях образ запускается, в данных: зависает.
А не напомните мне, что происходит при выборе образа диска и нажатии enter в рабочем варианте (насколько помню у меня при нажатии enter на образе никаких действий не производилось)?
P.S. Попробуйте, что будет, если образ выбрать образ и включить его кнопками 'a', 'b'?
при выборе образа диска и нажатии enter
образ монтируется как А и происходит перегруз в трдос.
P.S. Попробуйте, что будет, если образ выбрать образ и включить его кнопками 'a', 'b'?
А по этой заметке?
Эээ... а как в фирменном спеке? Надо делать точно так же, как в фирменном.
В фирменном из порта 254 читается число 191 (D6=0), но игру RENEGADE это запустить не помогло. Экспериментировал на Ленинграде.
Раскрутил Ленинград, на котором игра зависает. Увидел доработку схемы дешифрации. Оказалось, что из мультиплексоров клавиатуры и кемпстона (DD41, DD42) данные считывались, когда А5=0 или A0=0. Т.e. кемпстон считывался только если A5=0. При ненажатых кнопках джойстика считывался код 0. При чтении из порта 255 считывалось 255. То есть ничего не считывалось.
Раскрутил Ленинград, где игра работала нормально. Дешифрация сделана упрощенно, как на схеме. Кемпстон считывался при любом нечетном адресе (A0=1).
Посмотрел описание копьютера "ZXNEXT" про совместимость:
"Наличие и правильная адресация порта #FF" (заработают ARKANOID1; SHORT2; TOP GUN; RENEGADE1 и др.). Корректная адресация порта KEMPSTON JOYSTICK #DF, а не #1F! (манипулятор заработает в программах ATLANT 1,2; ANTARES; NONAMED; HOSTAGES; NAVY 1,2 и др.). Все это позволило говорить о ДЕЙСТВИТЕЛЬНО ПОЛНОЙ СОВМЕСТИМОСТИ."
После восстановления упрощенной схемы дещифрации кемпстона, игра заработала и на втором Ленинграде. Видимо, в RENEGADE происходит опрос порта #FF, и значения 0, которое считывается с порта кемпстона Ленинграда, достаточно для продолжения работы.
А по этой заметке?
Все тоже самое. Выбираю образ с помощью клавиши "а", потом перегружаюсь с помощью "Ctrl" и "Ctrl", потом захожу в TR-DOS, нажимаю RUN и ... зависло.
---------- Post added at 18:39 ---------- Previous post was at 18:35 ----------
Не должно влиять, т.к. менялись:
А не напомните мне, что происходит при выборе образа диска и нажатии enter в рабочем варианте (насколько помню у меня при нажатии enter на образе никаких действий не производилось)?
Действия происходят, запускается образ и файл боот на образе.
Выбрали файл стрелкам, нажали "enter" и пошла загрузка образа и запуск программы с именем "boot".
Andrey F
04.09.2010, 18:30
Подскажите, мож кто подключал..Am27C010 вместо W29C020. Нужно вносить доработки в плату или нет?
Нужно вносить доработки в плату или нет?
Нет. Они идентичны по распиновке.
Andrey F
04.09.2010, 21:48
Еще вопрос файл с каким расширением загружаем в Квартусе для прошивки Альтеры?
Еще вопрос файл с каким расширением загружаем в Квартусе для прошивки Альтеры?
Я использовал не программу квартус, а MAX+Plus II Baseline и там был файл, насколько я помню, с расширением pof.
speccy2007_vid.pof в папке cpld
Andrey F
12.04.2011, 18:51
Подскажите, кто переделывал в 128+AY. Клавиатура, которая нормально работала в 48 версии - перестает работать (после нажатия F12). Подключил другую (Genius) - работает. При загрузке с SD карты правый (третий) светодиод на клавиатуре работает как индикатор загрузки с SD (моргает). Это нормально? Причем мне кажется, что увеличилось время считывания программ. Прошивки были залиты Вадимом (zst) так, что здесь все в порядке.
Есть ли какие программы чтобы проверить данный вариант компьютера?
Клавиатура, которая нормально работала в 48 версии - перестает работать (после нажатия F12).Это не нормально.
При загрузке с SD карты правый (третий) светодиод на клавиатуре работает как индикатор загрузки с SD (моргает). Это нормально.
Есть ли какие программы чтобы проверить данный вариант компьютера?Любые игры и демки, которые используют 128+AY.
Подскажите, кто переделывал в 128+AY. Клавиатура, которая нормально работала в 48 версии - перестает работать (после нажатия F12). Подключил другую (Genius) - работает. При загрузке с SD карты правый (третий) светодиод на клавиатуре работает как индикатор загрузки с SD (моргает). Это нормально? Причем мне кажется, что увеличилось время считывания программ. Прошивки были залиты Вадимом (zst) так, что здесь все в порядке.
Есть ли какие программы чтобы проверить данный вариант компьютера?
Может попробовать перешить атмегу другой прошивкой? Там (http://zx.pk.ru/showpost.php?p=276169&postcount=27) два варианта прошивок для атмеги с разной раскладкой.
Andrey F
13.04.2011, 20:52
zst, Попробую.
Покажите кто нить, как дополнительный буфер разместить под основной платой?
http://zx.pk.ru/showthread.php?t=13279
Покажите кто нить, как дополнительный буфер разместить под основной платой?
Вот Skyther как-то для меня сканировал низ платы, помогал мне сделать:)
На платке расширения нашёл ошибку... По схеме 31 вывод DD1 идёт к сигналу RAM_A15, на плате же дорожка соединяет контактную площадку этого сигнала с +5 V.
На платке расширения нашёл ошибку... По схеме 31 вывод DD1 идёт к сигналу RAM_A15, на плате же дорожка соединяет контактную площадку этого сигнала с +5 V.
Это сделано для использования двух типов ОЗУ с разным объемом.
В теме про сборку (http://zx.pk.ru/showthread.php?p=283938#post283938)
расписано как сделать расширение до 128К:
(10.07.17)13. Подать на плату расширения нужные сигналы для управления ОЗУ:
При использовании микросхемы ОЗУ K6X4008C1F-BF55:
1 вывод ОЗУ (круглая контактная площадка) <- DD2-73 (RAM_A16)
2 вывод ОЗУ (круглая контактная площадка) <- DD2-74 (RAM_A15)
При использовании микросхемы ОЗУ K6X1008C2D-BF55:
На плате расширения отрезать круглую контактную площадку, соединенную с 31 выводом ОЗУ, от дорожки, соединенной с 32 выводом ОЗУ.
31 вывод ОЗУ (круглая контактная площадка) <- DD2-73 (RAM_A16)
2 вывод ОЗУ (круглая контактная площадка) <- DD2-74 (RAM_A15)
а есть ли аналогичная плата сразу с поддержкой 128К и ВГ93 и без задержек процессора?
Смысл в чем - интересна маленькая и простая платка с полноценным Pentagon128 :)
ZXMAK, Speccy2010 оно самое и есть + много доп. вкусностей.
Да, но в нем нет реальных Z80 и ВГ93, а именно это и интересно... :(
WolfSpirit77
16.01.2015, 01:41
Привет всем.
Где в Украине или у кого можна купить пустую плату Speccy2010 второй ревизии?
balu_dark
16.01.2015, 07:29
В барахолке можно глянуть, но по моему чистых плат давно не осталось. Народ в основном уже собранные продает.
Заинтересовала эта конструкция именно тем что есть всё кроме оперативы, меги и звука.
1,06 Это последняя версия конструкции на железном z80 и этой плис ?
Плата 128 так и не появилась ?
Думаю нарисовать в игле от нефик делать и забросить сюда на проверку, уж очень много там проводов напутано.
Заодно попробую покомпактнее слепить хотябы в 2 стороны.
Хочется чтото компактное и с флешкой, как я понимаю тут есть возможность сохраниться и быстро продолжить в любой момент, чего не хватало в старом спектруме.
Кроме прожоливости из недостатков тут только рабочий экран маленький. Его както можно расширить? Типо максимум по вертикали, а по краям бордюр.
Помню у ленинграда на 3мгц экран был больше.
Что за чудо в схеме YM2149F это опечатка или реально там другой чип с большим количеством ног?
Плата 128 так и не появилась ?
так есть же плата 128к и с пал-кодером.
В этой теме я почемуто ничего кроме упоминания о её надобности гдето на 5 странице ничего не нашёл.
Я так понимаю это максимальная комплектация ? http://zx-pk.ru/showthread.php?t=11890
Просто у меня есть как раз epm7128slc84-15 plcc84 , а там чтото более продвинутое и в другом корпусе. И как я понимаю оба устройства в одной плис.
И схемы там тоже нет чтоб под мою плис перерисовать легко. Тогда теряется весь смысл Speccy2007 и дешевле собрать Speccy2010
balu_dark
05.03.2015, 06:58
128й спек собирали уже на 100 ног TQFP микросхеме. Так что либо МГТФ либо 2010 сразу собирать. Но наверно интереснее собрать U16 сразу .
U16 вообще не вариант, мало того что всё покупать так ещё и моник покупать надо. hdmi не пользовался и пока не собираюсь, видаки не смотрю.
2010 тоже слишком громадный, он для серийного производства разработан, а могли бы на 2 стороны и вдвое меньше сделать,а вручную такую мелкоту тоже не хочется.
Видимо надо плату рисовать свою.
Попалась схемка 128 от Ljubitel , вроде как всё есть кроме кодера, но я всё равно хочу какой нибудь жк прикрутить или вга хотябы
не корректно сравнивать железные эмуляторы и реальный Z80 и AY.
та платка что у меня http://zx-pk.ru/showthread.php?t=18316 все отлично работает.схемы именно на нее нет но есть монтажка и отдельно функциональные блоки.
замечено что плата стабильно работает от 4,5в-4,6в .если накрутить 5,0в-5,1в то часто висит на артефатах и не проходит сброс.видимо из-за согласования 5в ттл и современых плис и атмег.
Вкорячить ей еще стабилизатор на 4,6в-,4,7в и можно будет не париться с поиском БП
balu_dark
05.03.2015, 22:11
ну просто под хотелки человека (z80 и altera 128 в корпусе 84 ноги) 128й платы не делали. Посему либо - все сам, либо брать что либо другое из готового - список я приводил. Что до plcc84 - там ему ног вроде не хватало для полноценного расширения. вот народ и ставил на новой плате - сразу 100 ногий корпус. при 84 ногах - если не ошибаюсь надо было либо от чего то отказываться в функционале, либо ставить доп чипы. Но могу и ошибаться - давно дело было.
У микросхем ттл понижается скорость при превышении питания намного быстрее чем при понижении. От 4в они работают чуть медленнее, от 6в вообще как реле. Видимо и тут не учтено, и они просто работают на пределе.
5в в реале быть не может, всегда ниже у кренки особенно при такой нагрузке, на этом старая техника и жила.
Ещё схема может заметно больше жрать при повышении напруги и отсюда импульсные помехи в питании.
Кодер мне не очень то и нужен, если уж и ставить то vga , пока мне нужен калькулятор с дискетой.
А что там ещё я чтото не нашёл. Адреса , порты, ничего в этом не понимаю, если подключить lpt лазерный принтер это хорошо, но сомневаюсь что возможно, а что ещё там может быть и представить не могу, этоже калькулятор.
Ухожу в соседнюю (http://zx-pk.ru/showthread.php?p=786294#post786294) тему.
.jackson
01.04.2016, 17:50
Вариант speccy2007 128k + TR-DOS с одной микросхемой ОЗУ.
Во вложении схема в jpg, схема в DipTrace + библиотека компонентов, исходники для EPM7128.
Платы нет, т.к. делалось на макетке.
.jackson
03.04.2016, 22:11
Фотки.
Fishbone
20.03.2017, 02:00
http://zx-pk.ru/attachment.php?attachmentid=11775&d=1240654253
Тут порт джойстика есть?
http://zx-pk.ru/attachment.php?attachmentid=11775&d=1240654253
Тут порт джойстика есть?
Нет. Курсор на клавиатуре может быть кемпстоном и SINCLAIR II (http://zx-pk.ru/threads/12027-speccy2007-sborka-i-naladka.html?p=295229&viewfull=1#post295229).
АПну что ли..
А кто-нибудь крайний новодел уже спаял? Чем EPM7128SLC84 прошивали? USB-Blaster - ом или ByteBlaster из пыльного сундука добывали?
Какой версией Quartus - а? XP устанавливали?
Я просто в этом месте воткнулся... :( И ByteBlaster - а у меня нет.
USB-Blaster в Win 10 64-bit нормально работает, только драйвер нужно ставить в защищенном режиме
квартус 8 или 9 версий
Вариант speccy2007 128k + TR-DOS с одной микросхемой ОЗУ.
Ну хоть ктото полную схему сделал кроме Ljubitel (http://zx-pk.ru/threads/11890-speccy2007-128k-odnoplatnyj-variant.html?p=282058&viewfull=1#post282058) , но другую и теперь без платы, как раз кусок по звуку интересен был, посмотрю.
В чём отличие этой сборки от того где 2 ПЗУ в плане функционала, или тут только железо другое и прошивка ПЛИС?
Как раз добрался до своего 2 летнего долгостроя (https://github.com/74ls00/Speccy2007_128K_Ljubitel/blob/master/pic/215.png) в DIP, не бросать же. В общем PLCC панели мазахизм, даже не знаю как переходы делать, наверно очень тонкими проводками. Пока хочу запустить генераторы с кодером
USB-Blaster в Win 10 64-bit нормально работает
Да работает он нормально и в W7-x64. И шьет другие МАХ-ы - 7128ATC100, 7128STC100.
А вот с EPM7128SLC84 я стабильно получаю выхлоп
Info (209060): Started Programmer operation at Sat Sep 23 14:19:51 2017
Info (209006): Unrecognized device
Error (209001): JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device
Error (209012): Operation failed
Info (209061): Ended Programmer operation at Sat Sep 23 14:19:52 2017
Просто раньше все вроде шили с помощью ByteBlaster. А я спросил - прошивал ли кто USB-Blaster-ом?
Просто раньше все вроде шили с помощью ByteBlaster. А я спросил - прошивал ли кто USB-Blaster-ом?
Ну, у меня нормально шьется, может альтера залоченная попалась? У меня одна такая попадалась...
Да, значит скорее всего с плисиной проблемы. Я и резисторы подтягивающие запаял, толку ноль.
Чем шить зависит от железа, просто на новых компах lpt нет, и надо покупать usb програматор, самодельных вроде как не очень, помню не просто найти было схему, а потом туда плис гдето покупать, а потом чемто шить, так что проще купить.
Я покупал 3 плис в контесте. 2 упакованы, одна в пакетике без упаковки и по гравировке видно из другой партии. Начал с этой распечатоной, програматор её не увидел, думал в плате проблема, но ничего не нашёл. Сунул запечатую и сразу заработало. Видимо им ктото вернул, они её и заслали, а где вы брали я не знаю
HardWareMan
25.09.2017, 06:41
LED, я легко находил инфу и собирал, даже на ATMega, вместо EPM7064 (http://hwm.us.to/ftp/USBByteBlaster.rar). Но этот вариант у меня плохо стал работать на новом компе с USB3.0, так что пришлось купить китайский.
А мне вот не повезло. Давно я на эти ПЛИС смотрел и забыл что они под 64 виндой не работают, а XP с запасного диска не загрузилась, видимо SSD не понравился который после включил, а на основном он же SSD, она давно в синьку вылетает потомучто мать другая. В общем шить оказалось нечем.
А ваша схемка похожа на эту (http://mcu-cpld.narod.ru/Altera/USB-blaster.html) с ft245 которую я точно не найду. Так что попробую сходить на работу, может там компы подходящие остались, ну или всётаки опять сносить все системы с запасного винта, но уже с отключенным этим, ну или в виртуалку ставить.
Вот еслиб была схемка без хитромудрых микросхем на голой меге, а так мне проще у китайцев усб заказать, да только долго.
---
В общем поставил винду в вмваре и оттуда шил
Добавляю скомпилированную прошивку для ПЛИС для варианта speccy2007 128k + TR-DOS с одной микросхемой ОЗУ из проекта на предыдущей странице.
Ребят, кто собирал платку по проекту с предыдущей странице (последняя плата с барахолки), подскажите плиз по неподписанным номиналам (SMD) - R26, R25, C1, C13, C4, Q1, D12-14 ?
Собрал SPECCY 2007+128+AY+TR-DOS с одной микросхемой ОЗУ, плата с барахолки от Павла Рябцева. Прошивка ПЛИС из 335 сообщения. Вместо музыкального сопроцессора эмулятор на Atmega 8 с прошивкой 24-7. До инициализации сопроцессора все нормально, после инициализации идут фантомные нажатия клавиатуры - в оболочках и играх с музыкой курсор сам гуляет по меню. Кварц на 27мгц, если поставить на 20, то фантомные нажатия пропадают, звук с явными искажениями, сопроцессор перестает определяться. Возможно на низкой частоте Atmega не успевает отрабатывать. Автор рекомендует в параллельном режиме кварц не менее 24мгц, с которым ситуация такая же как и с 27мгц. Пробовал разные версии прошивки Atmega, если прошить совсем старую версию, где нет чтения из сопроцессора, то все нормально (пробовал 10-1). Задержка сигнала BDIR конденсатором не помогает. Может кто сталкивался с подобным. Хочется довести плату до логического конца.
Там нужно подбирать 8 атмегу, т.к. не все разгоняются, поведение очень похоже на то что она не тянет 27МГц.
Как вариант, попробуйте 48 атмегу, если есть.
Там нужно подбирать 8 атмегу, т.к. не все разгоняются, поведение очень похоже на то что она не тянет 27МГц.
Как вариант, попробуйте 48 атмегу, если есть.
Попробовал с 48 atmega: с кварцем на 24, 25 и 27 она вообще не запускается - при включении белый шум. С кварцем на 16 и 20 мгц запускается, но звук с явными искажениями - меню не бегает, но и в тестах не определяется. До этого стояла в контроллере клавиатуры с кварцем на 20 мгц, вроде работала. На 8 атмеге музыка на 27мгц нормальная без слышимых искажений, но идут фантомные нажатия клавиатуры. На заставках где нет меню нормально стоит и играет музыку, минут 30-ть пробовал - не вылетает. При этом в тесте нормально определяется.
EvgenRU, а возможно сделать последнюю прошивку без чтения из музыкального процессора? Может ПЛИС у меня не совсем корректно выставляет управляющие сигналы для музпроцессора? А может атмеги косячные - брал на ALI.
- - - Добавлено - - -
Залил последнюю версию, где нет чтения из музыкального процессора (12.3) в 8 атмегу с кварцем на 27 мгц, меню стоит, музыка играет, но ее качество в сравнении с последней прошивкой сильно проигрывает. Пока так, буду дальше копать...
63627
Двухканальная AY без спикера и режима чтения
63627
Двухканальная AY без спикера и режима чтения
Спасибо. Можно сказать, что опыт удался. Прошил, как и ожидалось, музыка играет, кнопки не шалят. Вероятно, что-то не совсем так с прошивкой ПЛИС или с самой ПЛИСиной. К сожалению проверить как себя поведет мой Speccy-2007 c реальным музыкальным чипом не могу, по причине его отсутствия.
В таком случае, как дособираю свой посмотрю что там с BC1/BDIR, может что-то получится поправить в прошивке CPLD
Собрал этот аппарат с горем пополам... В целом, сборка не сложная, но плата разведена ужасно, мне пришлось, в силу обстоятельств, 2 раза перепаять atmega32, часть площадок под ней отклеилось от платы... маска ужасная, чуть царапнул и её нет.. площадки никак не закрывает, поэтому они и отлетают... наверное со временем сделаю свою плату с VGA выходом сразу.
Всё-таки, проблема в BC1/BDIR, я поправил так и заработало вроде
AY_PORT <= '0' when WR = '1' and RD = '1' else
'1' when VBUS_MODE = '0' and mA(1 downto 0) = "01" and mA(13) = '1' and M1 = '1' and IOREQ = '0' and A15 = '1' else
'0' when VBUS_MODE = '0' else
AY_PORT;
AY_BC1 <= '1' when AY_PORT = '1' and A14 = '1' else '0';
AY_BDIR <= '1' when AY_PORT = '1' and WR = '0' else '0';
PS: наверное еще перепишу прошивку CPLD на Verilog :)
UPD: перенос на Verilog прошел достаточно успешно, всё заработало, осталось только оптимизировать :)
UPD2: опа, а в SPECCY2007 вообще CPLD может что-то на шину данных писать????? Хотел порт #FF сделать...
Собрал этот аппарат с горем пополам... В целом, сборка не сложная, но плата разведена ужасно, мне пришлось, в силу обстоятельств, 2 раза перепаять atmega32, часть площадок под ней отклеилось от платы... маска ужасная, чуть царапнул и её нет.. площадки никак не закрывает, поэтому они и отлетают... наверное со временем сделаю свою плату с VGA выходом сразу.
Подтверждаю, маска на самом деле низкого качества и при первой же возможности повреждается. У меня правда площадки не отлетали, но в паре мест, под smd элементами, где проходят дорожки, они (дорожки) из-за поврежденной маски, спаивались. Приходилось отпаивать smd, удалять "сопли" и припаивать заново. С другой стороны, учитывая, стоимость самих плат, трудно ожидать их высокого качества.
Скажите пожалуйста, в чём сермяжная правда такого видео-выхлопа?
http://i100.fastpic.ru/big/2018/0125/39/eb5dc41d47dab7ceacb3f12894748739.png
"Кодис" подключать?
А остальным смертным с телеками, как быть? Лепить некое подобие этого?
http://i91.fastpic.ru/big/2017/1003/31/9ff69f00cb0145c02ad20eba32e72731.png
Выкладываю немного модифицированную прошивку для AVR.
Отличия
1. Убрана обработка мультимедиа клавиш
2. Sinclair/Kempston перенесен с F5/F6 на Num Lock + сделана индикация на клавиатуре
3. Сделана индикация CapsLock
4. Ресет теперь только по Ctrl+Alt+Del
5. Остановка процессора теперь только кнопкой Pause
6. Обрабатываются теперь и правый и левый Ctrl и Alt
7. Переписан код индикации работы дисковода на клавиатуре
8. Немного обновлена версия FatFs + включен режим _WORD_ACCESS, что уменьшило код и ускорило работу с файлами
9. Включена поддержка кодировки 1251 в именах файлов (не знаю насколько это будет работать) :-D
Остальное вроде не менялось. В прошивке свободно почти 5%, так что есть еще поле для творчества.
В архиве прошивка и исходники.
PS: делал в AVR Studio 5.1
Скажите пожалуйста, в чём сермяжная правда такого видео-выхлопа?
Мне пришлось ещё напаять ещё 4 резистора 220 Ом (по одному на каждый цвет и синхро) на землю, иначе не было нормальных уровней, т.к. для подключения через СКАРТ использую кабель с разделительными конденсаторами внутри.
По этой упрощенной схеме конечно желательно уровни зафиксировать ...
Перевел я это дело на Verilog и оно, на удивление, работает!
Знающие люди посмотрите, что тут еще можно поправить/улучшить.
module speccy2007_vid (
input wire CLK, // 14MHz input clock
input wire nCPU_Reset, // CPU reset
input wire RD,
input wire WR,
input wire IOREQ,
input wire MREQ,
input wire M1,
input wire A14,
input wire A15,
input wire AVR_NOINT,
input wire AVR_PROM,
input wire AVR_WAIT,
input wire TAPE_IN,
input wire [7:0] mD,
output wire nADR_GATE_EN,
output wire ROM_CS,
output wire ROM_A14,
output wire ROM_A15,
output wire AY_CLK,
output reg AY_BC1,
output reg AY_BDIR,
output reg CLK_CPU = 1, // CPU clock 3.5 MHz
output reg WR_BUF = 0,
output wire nRD_BUF_EN,
output reg nWR_GATE_EN = 1,
output reg INT = 1,
output reg mRD = 1,
output reg mWR = 1,
output reg RAM_A14 = 0,
output reg RAM_A15 = 0,
output reg RAM_A16 = 0,
output reg SYNC = 1,
output reg Red = 0,
output reg Green = 0,
output reg Blue = 1,
output reg Bright = 0,
output wire AVR_INT,
output wire AVR_TRDOS,
output wire SPEAKER,
inout wire [13:0] mA
);
reg pixel_clock = 0; // 7MHz pixel clock
reg [4:0] flash_cnt = 5'b00000; // flash counter
reg [2:0] ChrC_Cnt = 3'b000; // Character column counter
reg [5:0] Hor_Cnt = 6'b000000;// Horizontal counter
reg [2:0] ChrR_Cnt = 3'b000; // Character row counter
reg [5:0] Ver_Cnt = 6'b000000;// Vertical counter
reg [7:0] attr; // attributes register
reg [7:0] pixels; // pixel data from data bus
reg [7:0] attr_buf; // attributes buffer register
reg [7:0] pixels_buf; // pixel data buffer register
reg [3:0] border_attr = 3'b000; // border attributes
reg [5:0] port_7ffd; // port 7FFD data
reg AVR_PORT = 0;
reg VBUS_REQ = 1;
reg VBUS_ACK = 1;
reg VBUS_MODE = 1;
reg VBUS_RDY = 1;
reg VidRD = 0;
reg paper_r;
reg blank_r;
reg paper;
reg hsync;
reg vsync1;
reg vsync2;
reg pport_wait = 0;
wire VRAM_ACC;
reg TRDOS_TGL = 0;
reg TRDOS_FLG = 0;
reg PROM_TGL = 0;
reg PROM_FLG = 0;
reg [2:0] RAM_PAGE = 3'b000;
reg [1:0] ROM_PAGE = 2'b00;
reg SOUND_OUT = 0;
reg AY_PORT = 0;
wire RAM;
wire ROMADR = A14 | A15;
assign SPEAKER = SOUND_OUT ^ TAPE_IN;
assign ROM_CS = MREQ | ROMADR | TRDOS_TGL | PROM_TGL;
assign RAM = MREQ | ~ROMADR;
assign ROM_A14 = ROM_PAGE[0];
assign ROM_A15 = ROM_PAGE[1];
assign nADR_GATE_EN = VBUS_MODE;
assign nRD_BUF_EN = RAM | RD;
assign AY_CLK = ChrC_Cnt[1];
assign AVR_INT = ~AVR_PORT;
assign AVR_TRDOS = TRDOS_FLG;
always @(*)
begin
casex({TRDOS_FLG,PROM_FLG,port_7ffd[4]})
'b1xx: ROM_PAGE <= 'b11;
'b01x: ROM_PAGE <= 'b10;
'b001: ROM_PAGE <= 'b01;
'b000: ROM_PAGE <= 'b00;
endcase
case({A14,A15})
'b00 : RAM_PAGE <= 'b000;
'b10 : RAM_PAGE <= 'b101;
'b01 : RAM_PAGE <= 'b010;
'b11 : RAM_PAGE <= port_7ffd[2:0];
endcase
RAM_A14 <= VBUS_MODE == 0 ? RAM_PAGE[0] : 1'b1;
RAM_A15 <= VBUS_MODE == 0 ? RAM_PAGE[1] : port_7ffd[3];
RAM_A16 <= VBUS_MODE == 0 ? RAM_PAGE[2] : 1'b1;
VBUS_REQ <= ( MREQ == 0 || IOREQ == 0 ) && ( WR == 0 || RD == 0 ) ? 1'b0 : 1'b1;
VBUS_RDY <= pixel_clock & ChrC_Cnt[0];
nWR_GATE_EN <= VBUS_MODE == 0 && ((RAM == 0 || (IOREQ == 0 && M1 == 1)) && WR == 0) ? 1'b0 : 1'b1;
mRD <= (VBUS_MODE == 1 && VBUS_RDY == 0) || (VBUS_MODE == 0 && RD == 0 && MREQ == 0) ? 1'b0 : 1'b1;
mWR <= VBUS_MODE == 0 && RAM == 0 && WR == 0 && ChrC_Cnt[0] == 0 ? 1'b0 : 1'b1;
pport_wait <= AVR_WAIT == !AVR_PORT || TRDOS_TGL == 1 ? 1'b1 : 1'b0;
PROM_TGL <= VBUS_MODE == 0 && M1 == 0 && RD == 0 && MREQ == 0 && PROM_FLG == !AVR_PROM ? 1'b1 : 1'b0;
WR_BUF <= VBUS_MODE == 0 && ChrC_Cnt[0] == 0 ? 1'b1 : 1'b0;
if( WR & RD )
AY_PORT <= 1'b0;
else if( VBUS_MODE == 0 && mA[1:0] == 2'b01 && mA[13] == 1 && A15 == 1 && M1 == 1 && IOREQ == 0 )
AY_PORT <= 1'b1;
else if( VBUS_MODE == 0 )
AY_PORT <= 1'b0;
AY_BC1 <= AY_PORT == 1 && A14 == 1 ? 1'b1 : 1'b0;
AY_BDIR <= AY_PORT == 1 && WR == 0 ? 1'b1 : 1'b0;
end
// just moved here to fit
always @(negedge CLK)
begin
TRDOS_TGL <= VBUS_MODE == 0 && M1 == 0 && RD == 0 && MREQ == 0 && (
( TRDOS_FLG == 0 && port_7ffd[4] == 1 && {A15,A14,mA[13:8]} == 'h3D) // enter TR-DOS condition
|| ( TRDOS_FLG == 0 && AVR_PROM == 0 && port_7ffd[4] == 1 && {A15,A14,mA[13:0]} == 'h66 )
|| ( TRDOS_FLG == 1 && (A15 == 1 || A14 == 1 || PROM_FLG == 1) ) // return from TR-DOS
) ? 1'b1 : 1'b0;
paper <= Hor_Cnt[5] == 0 && Ver_Cnt[5] == 0 && ( Ver_Cnt[4] == 0 || Ver_Cnt[3] == 0 ) ? 1'b0 : 1'b1;
hsync <= Hor_Cnt[5:2] == 4'b1010 ? 1'b0 : 1'b1;
vsync1 <= Hor_Cnt[5:1] == 5'b00110 || Hor_Cnt[5:1] == 5'b10100 ? 1'b0 : 1'b1;
vsync2 <= Hor_Cnt[5:2] == 4'b0010 || Hor_Cnt[5:2] == 4'b1001 ? 1'b1 : 1'b0;
end
// generate 7MHz pixelclock
always @(posedge CLK)
pixel_clock <= ~pixel_clock;
// CPU Clock & counters
always @(posedge pixel_clock)
begin
// generate Z80 CLOCK 3.5 MHz
if( ChrC_Cnt[0] == 0 )
begin
if( pport_wait == 0 )
CLK_CPU <= 0;
end
else
CLK_CPU <= 1;
// screen counters
if( ChrC_Cnt == 7 )
begin
if( Hor_Cnt == 55 )
Hor_Cnt <= 0;
else
Hor_Cnt <= Hor_Cnt + 1'b1;
if( Hor_Cnt == 39 )
begin
if( ChrR_Cnt == 7 )
begin
if( Ver_Cnt == 39 )
begin
Ver_Cnt <= 0;
flash_cnt <= flash_cnt + 1'b1;
end
else
Ver_Cnt <= Ver_Cnt + 1'b1;
end
ChrR_Cnt <= ChrR_Cnt + 1'b1;
end
if( Ver_Cnt != 31 )
SYNC <= hsync;
else if( ChrR_Cnt == 3 || ChrR_Cnt == 4 || ( ChrR_Cnt == 5 && ( Hor_Cnt >= 40 || Hor_Cnt < 12 ) ) )
SYNC <= vsync2;
else
SYNC <= vsync1;
end
if( ChrC_Cnt == 6 && Hor_Cnt[2:0] == 'b111 )
begin
if( Ver_Cnt == 29 && ChrR_Cnt == 7 && Hor_Cnt[5:3] == 'b100 )
INT <= 0;
else
INT <= 1;
end
ChrC_Cnt <= ChrC_Cnt + 1'b1;
end
// prepare pixel attributes
always @(posedge pixel_clock)
begin
if( paper_r == 0 )
begin
// show current pixel
if( pixels_buf[7] ^ ( attr_buf[7] & flash_cnt[4] ) )
begin // pixels output
Blue <= attr_buf[0];
Red <= attr_buf[1];
Green <= attr_buf[2];
end
else
begin // attributes output
Blue <= attr_buf[3];
Red <= attr_buf[4];
Green <= attr_buf[5];
end
end
else
begin
if(blank_r == 0 )
begin // blank output
Blue <= 1'bZ;
Red <= 1'bZ;
Green <= 1'bZ;
end
else
begin // border output
Blue <= border_attr[0];
Red <= border_attr[1];
Green <= border_attr[2];
end
end
if( paper_r == 0 && attr_buf[6] == 1 )
Bright <= 1;
else
Bright <= 0;
end
// fetch attributes
always @(negedge pixel_clock)
if( ChrC_Cnt[0] == 1 )
begin
if( VBUS_MODE == 1 )
begin
if( VidRD == 0 )
pixels <= mD;
else
attr <= mD;
end
if( VBUS_REQ == 0 && VBUS_ACK == 1 )
VBUS_MODE <= 0;
else
begin
VBUS_MODE <= 1;
VidRD <= ~VidRD;
end
VBUS_ACK <= VBUS_REQ;
end
// put data to buffers or shift pixel
always @(posedge pixel_clock)
if( ChrC_Cnt == 7 )
begin
attr_buf <= attr;
pixels_buf <= pixels;
if( ((Hor_Cnt[5:0] > 38) && (Hor_Cnt[5:0] < 48)) || Ver_Cnt[5:1] == 15 )
blank_r <= 0;
else
blank_r <= 1;
paper_r <= paper;
end
else
pixels_buf <= pixels_buf << 1;
// Read PORTs
always @(posedge CLK or negedge nCPU_Reset)
if( !nCPU_Reset)
begin
port_7ffd <= 6'b000000;
SOUND_OUT <= 0;
end
else if( pixel_clock == 1 && ChrC_Cnt[0] == 0 && VBUS_MODE == 0 && IOREQ == 0 && M1 == 1)
begin //read ports
// port FD
if( WR == 0 && mA[1] == 0 && A15 == 0 && port_7ffd[5] == 0 )
port_7ffd <= mD[5:0];
// port FE
if( WR == 0 && mA[7:0] == 'b11111110 )
begin
border_attr <= mD[2:0];
SOUND_OUT <= mD[4];
end
end
// Write PORTs
always @(posedge pixel_clock)
begin
if( TRDOS_TGL == 1 )
TRDOS_FLG <= ~TRDOS_FLG;
if( PROM_TGL == 1 )
PROM_FLG <= ~PROM_FLG;
if( IOREQ == 0 )
begin //write ports using AVR
if( VBUS_MODE == 0 && ChrC_Cnt[0] == 0 )
begin
// port FE
if( RD == 0 && mA[7:0] == 'hFE && AVR_NOINT == 1 )
AVR_PORT <= 1;
// port 1F
else if( ( RD == 0 || WR == 0 ) && mA[7:0] == 'h1F )
AVR_PORT <= 1;
// other ports not affected
else
AVR_PORT <= 0;
end
end
else
AVR_PORT <= 0;
end
// Memory address generation
assign mA = VBUS_MODE == 0 ? 14'bZZZZZZZZZZZZZZ :
VidRD == 0 ? {1'b0,Ver_Cnt[4:3],ChrR_Cnt,Ver_Cnt[2:0],Hor_Cnt[4:0]} :
{4'b0110,Ver_Cnt[4:0],Hor_Cnt[4:0]};
endmodule
Выкладываю немного модифицированную прошивку для AVR.
Прошил. Клавиатура вроде работает, но виснет. Так, при ресете по Ctrl+Alt+Del, происходит сброс и далее на клавиатуру не реагирует. При F10 загружается оболочка диска и далее клавиатура не реагирует, при этом продолжает гореть светодиод ScrollLock. В 48 бейсике после нажатия на CapsLock, идет постоянное мигание курсора - переключение режима ввода, и на клавиатуру не реагирует. Светодиод CapsLock не загорается. Фузы атмеги у меня стоят H=D9, L=E0. Пробовал и как у Вас в батнике в архиве H=CF, L=FF, тот же результат.
Вот это не совсем понятно... у меня эта же прошивка зашита и всё работает, не могут же у нас быть разные атмеги :)
По прошивке, еще что заметил, ресетается даже если просто на DEL нажать, это поправлю, еще уберу запуск магнитофона с простых кнопок + -
Подожду, пока другие проверят...
Выкладываю архив с прошивкой 1.3 (см более новые версии ниже) для AVR с исправлениями, скомпилировал в AVR Studio 7, код уменьшился на 2 Кб.
В 1.2 исправил обработку портов ZX в AVR из-за этого было много глюков и не работал нормально эмулятор AY.
AY не фонит при использовании клавиатуры и загрузке с SD!!!
В 1.3 еще поправил ошибку с NUMLock, не отключался режим Sinclair
Для CPLD прошивку лучше использовать оригинальную!
PS: вопрос всё еще актуален, может ли CPLD как-то записать на шину данных? хочу порт #FF попробовать сделать
PS2: вот так провожу эксперименты :)
https://cdn1.savepice.ru/uploads/2018/1/27/a458645fde56af93c027b39ab648fc44-full.jpg
PS3: на всякий случай напомню тем, кто собирает эту плату, не обязательно на неё ставить генератор, достаточно подключить кварц 14МГц на 7 и 8 ноги AVR без конденсаторов и всё работает отлично!
Выкладываю архив с прошивкой 1.3 для AVR с исправлениями, скомпилировал в AVR Studio 7, код уменьшился на 2 Кб.
Прошил, проверил. С двумя разными PS/2 клавиатурами виснет как и раньше, при использовании измененных, дополненных функций (кнопок). У Вас на фото USB-клавиатура, подключенная через переходник. Подключил USB-клавиатуру через переходник - все работает, но хочется и простые PS/2 использовать. Возможно у них разница в scan-codax?
Причем виснет именно клавиатура, при ее горячем переподключении, она работает, до использования измененных/дополненных клавиш - CapsLock, Numlock.
Подключил PS/2 Genius, всё работает нормально без глюков... странно...
Ок, добавлю тогда еще принудительный перевод в ScanCode 2. Еще добавил ожидание ответов клавиатуры при отправке команд светодиодов.
PS: заодно и скорость повтора нажатий клавиш сделал 250мс, а то было 500 по умолчанию.
UPD: см прошивку 1.42 ниже.
Подключил PS/2 Genius, всё работает нормально без глюков... странно...
Ок, добавлю тогда еще принудительный перевод в ScanCode 2.
У меня PS/2 Chicony и Mitsumi. С новой прошивкой корректно заработали клавиши CapsLock и Numlock, светодиоды включаются и гаснут. Но при загрузке TR-Dos образа по F10 либо F12 клавиатура зависает, светодиод ScrolLock горит. При горячем переключении клавиатура продолжает работать. При выборе файла для загрузки - он грузится, клавиатура зависает, ScrolLock горит. И так же далее.
Ясно, значит еще с индикатором дисковода нужно пошаманить, видимо из-за того что он не ждет ответа от клавиатуры она и виснет, походу зависит от контроллера в клавиатуре. Тогда сейчас попробую это поправить.
Попробуйте такой вариант, вроде работает, но нужно на вашей проверить
Попробуйте такой вариант, вроде работает, но нужно на вашей проверить
Спасибо, сейчас все ОК.
Начал сборку платы.
Так и не смог найти номинал кварца Y2 и SMD конденсаторов C4 и C13.
Нужны ли они для работы с оригинальным AY-3-8912 и/или платой эмулятора?
2EvgenRU: На счет кварца на 14МГц. При монтаже атмеги32 я отгибаю 7 ногу, подпаиваю к ней МГТФ и кидаю на кварц 14МГц. Далее вторую ногу кварца паяю в правое нижние отв., дорожка от которого ведет на 8 ногу меги?
При прошивке меги с такой доработкой будут какие то нюансы (фьюзы)?
Начал сборку платы.
Так и не смог найти номинал кварца Y2 и SMD конденсаторов C4 и C13.
Нужны ли они для работы с оригинальным AY-3-8912 и/или платой эмулятора?
Y2 нужен только для эмулятора, смотря как прошьете атмегу8, я поставил на 27МГц и прошил конфигом на 27МГц.
C4,C13 я поставил 18пФ, хотя, для 8 атмеги они, в принципе, не нужны. C1 - 1мкФ вроде нормально подошел, R10 я бы поставил в районе 1-2КОм, а то спикер тише AY звучит. R25,R26 нужны только для эмулятора, думаю или 4.7к или чуть поменьше.
2EvgenRU: На счет кварца на 14МГц. При монтаже атмеги32 я отгибаю 7 ногу, подпаиваю к ней МГТФ и кидаю на кварц 14МГц. Далее вторую ногу кварца паяю в правое нижние отв., дорожка от которого ведет на 8 ногу меги?
При прошивке меги с такой доработкой будут какие то нюансы (фьюзы)?
Ногу лучше не отгибать, а то есть шанс, что она отвалится, лучше к ней подпаяться просто.
Фьюзы смотрите в батнике с прошивкой, там включен фьюз CKOPT, чтобы не ставить конденсаторы на кварц.
UPD: попробуйте еще версию 1.5, если всё нормально с ней будет, то оставлю окончательно в таком виде, дальше уже хотелки можно будет добавлять :) а так конечно в следующей версии платы поставить бы Atmega128A и завести все адресные линии, чтобы другие порты можно было реализовать, например #FF и полноценный эмулятор дисковода без патчей трдоса.
PS: если 24 нога на плате висит в воздухе, то её лучше подтянуть к +5в через 10кОм, а то некоторые процы повисают при таком генераторе
UPD: попробуйте еще версию 1.5, если всё нормально с ней будет, то оставлю окончательно в таком виде.
Залил прошивку, работает. А какие должны быть отличия в сравнении с 1.42?
В архиве также прошивка AVR Emulator Version 24.7 (28.01.2018) 2 channel versions Speccy2007 edition. Сравнил с оригинальной версией 24.7, файлы одинаковы, во всяком случае для 8 Atmega. Прошил ее, я меня как и раньше идут фантомные нажатия клавиш в меню. Вернулся к версии AY_Emul_247_2ch_noread. При загрузке с SD идет фон с эмулятора AY, как и раньше. Или в 353 сообщении имелось в виду что-то другое? Честно говоря сегодня, когда пробывал разные версии для AVR, то звук не включал. В 343 сообщении писали про то, что скорректировали обработку BC1/BDIR в CPLD. Без коррекции, наверное, так и должно быть или нет?
Залил прошивку, работает. А какие должны быть отличия в сравнении с 1.42?
Да отличий особо нет, я там немного оптимизировал главный цикл, хотелось знать, работает у вас или нет
В архиве также прошивка AVR Emulator Version 24.7 (28.01.2018) 2 channel versions Speccy2007 edition. Сравнил с оригинальной версией 24.7, файлы одинаковы, во всяком случае для 8 Atmega. Прошил ее, я меня как и раньше идут фантомные нажатия клавиш в меню. Вернулся к версии AY_Emul_247_2ch_noread. При загрузке с SD идет фон с эмулятора AY, как и раньше. Или в 353 сообщении имелось в виду что-то другое? Честно говоря сегодня, когда пробывал разные версии для AVR, то звук не включал. В 343 сообщении писали про то, что скорректировали обработку BC1/BDIR в CPLD. Без коррекции, наверное, так и должно быть или нет?
В эмуляторе отличий нет, я просто там лишее убрал и описание поправил, чтобы долго не разбирались что там и как.
У меня сейчас зашита в AVR 1.5, оригинальная для CPLD, 24.7 в эмулятор с кварцем 27 МГц, всё отлично работает без сбоев.
Попробуйте может атмегу8 поменять, если есть на что или 25 МГц попробуйте.
...чтобы другие порты можно было реализовать, например #FF и полноценный эмулятор дисковода без патчей трдоса...
А ещё можно пзу выкинуть.
Сделал специальную версию для Atmega8 без Z состояния при выдаче на шину данных, вроде хорошо работает со Speccy2007, проверяйте у кого глючило
Поправил в VHD код сигналов AY на вот такой
AY_PORT <= '1' when M1 = '1' and IOREQ = '0' and A15 = '1' and mA(13) = '1' and mA(1 downto 0) = "01" else '0';
AY_BC1 <= '1' when AY_PORT = '1' and A14 = '1' else '0' when VBUS_MODE = '0';
AY_BDIR <= '1' when AY_PORT = '1' and WR = '0' else '0' when VBUS_MODE = '0'
в оригинале было так
AY_PORT <= '0' when WR = '1' and RD = '1' else
'1' when VBUS_MODE = '0' and mA(1 downto 0) = "01" else
'0' when VBUS_MODE = '0' else
AY_PORT;
AY_BC1 <= '1' when AY_PORT = '1' and M1 = '1' and IOREQ = '0' and A14 = '1' and A15 = '1' else '0';
AY_BDIR <= '1' when AY_PORT = '1' and M1 = '1' and IOREQ = '0' and A15 = '1' and WR = '0' else '0';
Вроде нормально играет
Даже индикаторы по ощущениям в Dizzy 3.5 от дримтим стали более четко моргать
Еще переделал сигнал AVR_PORT из процесса на комбинаторику
AVR_PORT <= '1' when IOREQ = '0' and VBUS_MODE = '0' and
(
-- port #FE
(RD = '0' and mA(7) = '1' and mA(4 downto 3) = "11" and mA(1 downto 0) = "10" and AVR_NOINT = '1')
or
-- port #1F
(( RD = '0' or WR = '0' ) and mA(7 downto 0) = "00011111")
)
else '0' when IOREQ = '1';
Вот это вообще круто получилось :)
Пока что этими изменениями выжал 3 ячейки :)
Еще сделал вот такую штуку
-- port #FD
if WR = '0' and mA(1) = '0' and A15 = '0' and (mA(13) xor mA(9)) = '0' and P_7ffd(5) = '0' then
P_7ffd <= mD(5 downto 0);
end if;
Походу что-то конфликтовало с портом #FD, теперь от хватает только #FD и #7FFD , а так видимо еще и с AY были конфликты
Поправил в VHD код
А возможно получить для опытов поправленную прошивку?
А возможно получить для опытов поправленную прошивку?
Конечно
PS: нашел еще один баг с выбором тырдоса, попробую поправить попозже, если получится, заодно еще пара ячеек освободится.
Сделал специальную версию для Atmega8 без Z состояния при выдаче на шину данных, вроде хорошо работает со Speccy2007, проверяйте у кого глючило
Прошил версию ay_emul_24_71L. Не помогло. Как шли фантомные нажатия клавиш, так и остались. Прошил CPLD прошивкой из 366 сообщения и данный глюк ушел куда-то курить, похоже что навсегда. В тесте 4.30 музыкальный сопроцессор определяется.
Я вот подумал, что может быть те глюки, которые были у меня, связаны с плисиной, точнее с ее быстродействием. Судя по datasheet EPM7128SLC84 бывают с 6, 7, 10 и 15 нс задержкой. У меня CPLD на 15 нс, купленная на ebay. Кто и где ее сделал, какая у нее реальная задержка, вопрос открытый. Интересно, кто какие использует в проекте.
EvgenRU, Вы уже достигли определенных результатов в совершенствовании прошивки CPLD ;). У меня в связи с этим вопрос: в качестве памяти я использую UT621024SCL-70LL. Так, вот с ней изначально у меня в тесте памяти сыпались ошибки в диапазоне выше С000H. Я грешил на медленную память, что она не успевает отрабатывать и выставлять данные на шину, перед тем как защелкнется D11 (555ир33). Поставил конденсатор 100 пик на WR_BUF (11 вывод) и землю, его видно на моем фото в теме из барахолки. Это проблему почти решило - тест стал проходить без ошибок, мог крутиться часами, изредка выдавал ошибку одного из битов, все время разных, но в том же диапазоне. Игры, где работа с памятью идет более интенсивно и не линейно, могли вылетать через 5 или 30 минут. Большая емкость конденсатора ситуацию не спасала. Аналогичная проблема с этим же производителем памяти отмечена уже была в теме http://zx-pk.ru/threads/6679-speccy2007-v1-00.html?p=236282&viewfull=1#post236282 Но там чипы были меньшей емкости, а симптомы и диапазон, где сыпались ошибки, совпадал. Рекомендовали сменить память - я это попробую сделать, как придет. Тогда предположили также, что память не успевает http://zx-pk.ru/threads/6679-speccy2007-v1-00.html?p=236350&viewfull=1#post236350 Так вот сам вопрос - можно ли в прошивке CPLD в качестве эксперимента сделать дополнительную задержку на сигнал WR_BUF?
У меня стоит HM628128LP-10, т.е. 100нс, всё работает нормально, альтера у меня тоже 15нс. У вас же 70нс, должно быть всё хорошо, может проблема в каком-то из буферов? ИР33, АП6 ? У меня стоят HC245 и HC573
А те глюки, возможно и из-за быстродействия, хотя я сомневаюсь, что у кого-то были CPLD быстрее 15нс, на них цена на порядок выше. Проблема, как я понял, в конфликте портов была и в синхронной обработке некоторых сигналов, которые в оригинальном спектруме реализованы на логике. Причем они синхронизированы с большим интервалом...
Короче, порт #FD в оригинальной прошивке 1.06r4 конфликтовал с портами #BFFD и #FFFD
ОК, у меня логика ТТЛШ. Но у Вас же почему то с оригинальной прошивкой CPLD работало без глюков? Попробую все-таки сначала поменять память, заказал на ALI Toshiba, если не поможет, то буду менять логику. Спасибо за внимание.
Еще что-то оптимизировал и улучшил в прошивке CPLD, а так же сделал две версии Pentagon и Classic
UPD: Прошивка удалена, см врсию 1.8 ниже
Еще что-то оптимизировал и улучшил в прошивке CPLD, а так же сделал две версии Pentagon и Classic
Не предлагаю на меня ориентироваться, в виду описанных мною раньше проблем с памятью, но с последними прошивками (обеими из архива) вообще не загружается. Тест памяти, запускаемый из ПЗУ, в первом-же цикле выдает ошибки, раньше, с предыдущей прошивкой, как я уже писал, мог работать часами.
В таком случае мое финальное творение, добавил кусочек, который выкинул, может в нем проблема была
Переписал полностью на Verilog, возможно фиттер что-то там улучшил
PS: обновил файл версия 1.8, в 1.7 забыл генератор моргалки курсора, в предыдущих версиях походу тоже самое :)
UPD: см. стабильную финальную версию 1.9 ниже
tigr101274
02.02.2018, 05:11
Каким транзистором SMD можно заменить BC557 в данной схеме?
Каким транзистором SMD можно заменить BC557 в данной схеме?
BC857
tigr101274
02.02.2018, 11:03
EvgenRU,
BC857 спасибо, значит правильно поставил BC857B
Кидаю полную версию прошивок, будем считать, что это релиз :)
PS: следующая версия 2.0 будет избавлена от 2 дополнительных буферов для формирования изображения (т.е. с прозрачным доступом к видеопамяти), она у меня уже работает, осталось немножко допилить.
99 ячеек против 115 !!!
- - - Добавлено - - -
Вот и готова предварительная версия 2.0, если кто хочет погонять - велкам! Честно не знаю, лучше она или нет, но 16 освободившихся ячеек - это я считаю результат!
UPD: Вложения удалены, смотрите более новые версии...
А видеовыход переделать с RGBI на 2R2G2B низя?? или два вывода брать негде?
А видеовыход переделать с RGBI на 2R2G2B низя?? или два вывода брать негде?
Да есть там аж 4 свободных, можно и так сделать. А я хотел разделить синхру, чтобы к скандаблерам подключать удобнее да и хотел потом плату развести с VGA&Pal на одной плате. Можно еще и 2 бита на цвет сделать при таком раскладе. Там еще один сигнал точно можно убрать, так что 5 выводов остается, один придется переназначить, т.к. один свободный там только на вход.
ну да, 2 бита на цвет, и синхру раздельную. Хотя да, ресурсов на внутренний скандаблер для VGA все равно не хватит. Тогда уж PAL развести на какой-нибудь приличной м\с.
ну да, 2 бита на цвет, и синхру раздельную. Хотя да, ресурсов на внутренний скандаблер для VGA все равно не хватит. Тогда уж PAL развести на какой-нибудь приличной м\с.
Если подать 28МГц вместо 14, то должно получиться, да и ресурсов вроде должно хватить, но это надо проверять.
Хотя и 14 вроде достаточно должно быть, но генератор должен быть хороший, от атмеги вроде нормально генерация идет.
UPD: новый вариант Beta второй версии, теперь работает очень стабильно, занимает 99 ячеек (у пентагоновской 98!) вроде всё что планировал сделал по самой прошивке, дальше уже буду курочить AVR, а потом железо :) Еще бы времени свободного побольше....
UPD2: выкладываю релиз версии 2.0, всё работает очень стабильно, удалось даже еще одну ячейку отжать :) итого 97 ячеек в Pentagon версии и 98 ячеек в классической.
Далее буду делать 3 версию, в ней будет VGA выход непосредственно, вместо RGBI
PS: аврку еще буду допиливать, там не получается нажать = и еще что-то вроде )
UPD3: смотрите более новую версию в сообщениях далее...
Для какой платы предназначена прошивка постом выше и нужно ли вносить к.л. изменения в последние платы от Павла?
У меня данная прошивка для ПЛИС не работает.
Прошил обратно эту http://zx-pk.ru/threads/10316-speccy2007-v1-06-(128-ay-trdos).html?p=939360&viewfull=1#post939360 и всё обратно заработало ...
У меня белая плата от Павла, на ней всё отлично работает. Попробуйте еще AVR из 1.9 прошить, может еще из-за этого, хотя сложно сказать.
PS: решил всё-таки сделать порт FF, через Ж... по-другому там никак, потому что буферы кругом...
сделал так
inout wire [7:0] mD, // Data Bus
....
wire port_FF_sel = iorq_n == 0 && rd_n == 0 && AVR_PORT == 0 && TRDOS_FLG == 0 && CPU_MODE == 1 && border_r == 1 && mA[3:0] == 4'b1111 && mA[7] == 1; // active 1
assign nRD_BUF_EN = (RAM_CS == 0 && rd_n == 0) || port_FF_sel == 1? 1'b0 : 1'b1;
assign WR_BUF = hcnt[1:0] == 3 || port_FF_sel == 1 ? 1'b1 : 1'b0;
assign mD = port_FF_sel == 1 ? attrs : 8'bzzzzzzzz;
в тесте 4.30 определяется наличие порта #FF, арканоид работает, но с бешенной скоростью, Target Renegade всё так же не грузится... может у кого какие идеи будут?
У меня тоже белая плата от Павла. Но ни последняя, не предпоследняя твои прошивки для ПЛИС у меня не заработали.
Хотя прошивка для AVR из предпоследнего архива работает.
Оставил сейчас AVR c твоей прошивкой, а ПЛИС с оригинальной из моего поста.
А не работает как, совсем или что-то показывает?
Иногда проскакивает черный экран, иногда белый с квадратиками, но ни разу меню не показало. С оригинальной прошивкой всё отлично работает ...
Странно это... а какая м/с памяти и какие буферы стоят? у меня HM628128LP-10 (100нс) и 74HC245, 74HC573, альтера 15нс
микросхемы все НСТ, альтера 15нс , память UT621024PC-70LL, ATMEGA32A.
Тогда совсем непонятно.... подождем тогда, может еще кто-то отпишется, работает или нет... у меня точно все прошивки работают.
Тогда совсем непонятно.... подождем тогда, может еще кто-то отпишется, работает или нет... у меня точно все прошивки работают.
Я в 372 сообщении писал, что у меня прошивка не заработала. Последняя рабочая была CPLD вер. 1.51, но связывал это с медленной памятью. Пока ОЗУ не поменял и сказать в этом ли причина точно не могу. На более поздних прошивках проявлялось в том, что Speccy не загружался, а на экране был мусор. Тест памяти, запущенный из ПЗУ, выдавал ошибки, там где их раньше не было.
а ПЗУ'шные банки у вас у всех одинаковые включены?
Ну не знаю, попробуйте тогда еще вот такой вариант, особых изменений нет, только начальная инициализация шины адреса
polikarpov76
07.02.2018, 11:04
Хорошая фотка платы с двух сторон в высоком разрешении может помочь.
Ну не знаю, попробуйте тогда еще вот такой вариант, особых изменений нет, только начальная инициализация шины адреса
Я изменений не заметил. Оперативная память, по-прежнему, не стабильна.
Тогда попробуйте вот этот, тут я сделал идеально сигналы AY. Может оно фонило...
Тогда попробуйте вот этот, тут я сделал идеально сигналы AY. Может оно фонило...
Проверю вечером, но я тестировал предыдущие прошивки без чипа эмулятора музпроцессора. Так, что корректировка сигналов AY, скорее всего, ничем не поможет.
Тогда еще такой вариант, переделал сигналы управления памятью
UPD: обновил прошивку, поправил еще несколько сигналов, не знаю, поможет или нет.
PS: ну хоть кто-то скажите, работает у вас или нет, а то как в колодец кидаю... у меня то все прошивки работают...
UPD2: тогда еще вариант 1.99 Release полностью переписанная на Verilog оригинальная прошивка без существенных изменений
Тогда еще такой вариант, переделал сигналы управления памятью
Не помогло пока. Такое впечатление, что почему-то не стабильна шина данных. При отсутствии ПЗУ, выводится матрас, на котором периодически выскакивает в разных местах мусор. Как писал выше, на прошивке 1.51 все ОК.
Тогда еще такой вариант, переделал сигналы управления памятью
UPD: обновил прошивку, поправил еще несколько сигналов, не знаю, поможет или нет.
PS: ну хоть кто-то скажите, работает у вас или нет, а то как в колодец кидаю... у меня то все прошивки работают...
UPD2: тогда еще вариант 1.99 Release полностью переписанная на Verilog оригинальная прошивка без существенных изменений
У меня не работают обе. Внешне проявляется одинаково - происходит частичный сброс, далее хаотично возникающие мигающие знакоместа на экране. Без ПЗУ - матрас, по которому периодически выскакивает мусор. Прошил назад 1.51 - работает...
Ну что ж, тогда подожду что остальные скажут. Больше пока что ничего менять не буду :)
Прошивка 2.22 совсем не работает.
1.99 показывает меню, но затем глючит.
1.51 работает - но изредка также глючит.
Хорошо работает только оригинальная http://zx-pk.ru/attachment.php?attachmentid=63141&d=1512147711, которую я выкладывал на 34 странице.
Тогда еще последний вариант, если уже и он не заработает, тогда не знаю.... я его опробовал на другом процессоре, там было дрожание экрана, я поправил, чтобы не дрожал, изображение очень стабильное, как со вторыми буферами.
UPD: в версии 2.31 сделал реализацию порта FF достаточную для нормальной работы Arkanoid
UPD2: удалил вложения, проверку не прошли
Тогда еще последний вариант, если уже и он не заработает, тогда не знаю.... я его опробовал на другом процессоре, там было дрожание экрана, я поправил, чтобы не дрожал, изображение очень стабильное, как со вторыми буферами.
UPD: в версии 2.31 сделал реализацию порта FF достаточную для нормальной работы Arkanoid
Мне не помогло. Что бы было понятно, что происходит выложил видео. https://www.4shared.com/video/pgKKp9HIca/DSCN1702.html
Сначала тест 128кб, затем попытка загрузки прошивки. По ходу несколько раз нажимаю на сброс, чтобы перезапустить процесс.
Я так понимаю, скорее всего проблема (понятно что в памяти) в том, что чтение идет сразу же после выставления адреса на шине, скорее всего моя память успевает защелкнуть адрес, а ваша нет, тем более у неё еще и режим чтения управляемого адресом есть.
Тогда еще вариант с небольшой задержкой после выставления адреса.
Я так понимаю, скорее всего проблема (понятно что в памяти) в том, что чтение идет сразу же после выставления адреса на шине, скорее всего моя память успевает защелкнуть адрес, а ваша нет, тем более у неё еще и режим чтения управляемого адресом есть.
Тогда еще вариант с небольшой задержкой после выставления адреса.
Изменения, вроде бы какие-то есть, но пока все еще память глючит. А в сравнении с прошивкой 1.51 изменился алгоритм работы с памятью? Или за счет оптимизации и уменьшения прошивки сдвинулись временные задержки?
Я сразу писал, что у меня подозрение на память, но у других то тоже не работает... Возможно Вам повезло с памятью и она гораздо быстрее, чем отражено в маркировке, а у меня наоборот ;).
Еще поколдовал над сигналами mRD и WR_BUF, возможно поможет....
Еще поколдовал над сигналами mRD и WR_BUF, возможно поможет..
Попробуй их стробировать частотой. Насколько понял ты их просто логикой формируешь без синхронизации.
Попробуй их стробировать частотой. Насколько понял ты их просто логикой формируешь без синхронизации.
с mRD сейчас так и сделал, WR_BUF сделал по низкому сигналу пиксельклока, когда счетчики уже стабильны
Еще поколдовал над сигналами mRD и WR_BUF, возможно поможет....
У меня пока, все еще глюки:eek_std:
Убрал порт FF т.к. в такой реализации он глючит с клавиатурой, видимо не судьба через буфер данные пробросить :(
Еще несколько сигналов поправил, если и этот вариант не заработает - буду искать другую память для тестов...
Убрал порт FF т.к. в такой реализации он глючит с клавиатурой, видимо не судьба через буфер данные пробросить :(
Еще несколько сигналов поправил, если и этот вариант не заработает - буду искать другую память для тестов...
Я особых изменений визуально не заметил, не работает. Наверное, надо Вам для объективности дождаться результатов тестов других пользователей. Я память все равно буду менять, потому что ночной тест она сегодня опять не прошла, да и игры периодически вылетают... Может быть только у меня не работает прошивка. Остальные то молчат, хотя прошивки то скачивают.
Вот еще, наверное последний вариант. Переделал на System Verilog, вроде чисто визуально что-то улучшилось, но не знаю как у вас будет.
Классическая версия у меня работает отлично, как и пентагоновская.
PS: работоспособность данной прошивки проверена только с памятью HM628128LP-10
https://cdn1.savepice.ru/uploads/2018/2/11/edb02090f5630f28f62f48bd941bdec7-full.jpg
Так же, ни какие модификации прошивок altera не работают, кроме прошивки в 335 сообщении. И последняя 2.35 сквозь мусор проглядываются буквы меню. Железо как у всех, память ALLIANCE AS6C1008-55PCN.
[QUOTE=EvgenRU;950014]Вот еще, наверное последний вариант. Переделал на System Verilog, вроде чисто визуально что-то улучшилось, но не знаю как у вас будет.
У меня тоже не пошла, к сожалению.
У этой памяти так же есть режим управления адресом, у моей такого режима нет...
Заказал для тестов AS6C1008-55PCN, как придет - продолжу эксперименты.
tigr101274
16.02.2018, 22:48
Собрал, включил, вроде работает, но не могу загрузить что либо с карты памяти, подскажите как работать с SD картой, имеется карта SD 2GB и SD HC 4GB, формат на сколько я понимаю FAT16, файлы в TRD, SCL помещаю в корень карты.
Собрал, включил, вроде работает, но не могу загрузить что либо с карты памяти, подскажите как работать с SD картой, имеется карта SD 2GB и SD HC 4GB, формат на сколько я понимаю FAT16, файлы в TRD, SCL помещаю в корень карты.
FAT32 тоже норм.
Нужно кинуть на карту в корень boot.sna и trdos.sna, потом F12
tigr101274
19.02.2018, 17:39
Нужно кинуть на карту в корень boot.sna и trdos.sna
Сделано, при нажатии F12 попытка загрузки я так понимаю с карты https://yadi.sk/i/2rHPlqCo3Sa5ZL и все, светодиод обращения к карте ни как не реагирует при этом https://yadi.sk/i/1C_KtBeh3Sa5zX
Получается нет обращения к карте памяти?
Все три должны все время гореть, один, видимо, запаян не той стороной, это просто для красоты сделано и чтобы видно было, наверное, в темноте куда карту пихать :) При нажатии F12 должен загрузиться boot.sna с карты и выдать список файлов.
tigr101274
19.02.2018, 21:34
Все три должны все время гореть, один, видимо, запаян не той стороной
Не, все верно запаян, не посмотрел параметры, он светиться от 3 вольт, а на плате 2, все равно загрузчик не запускается, может карта на 4 не идет, хотя и на 2гб то же самое, файлы брал с первой страницы темы. Можно ли как то проверить идет обращение к карте?
Не, все верно запаян, не посмотрел параметры, он светиться от 3 вольт, а на плате 2, все равно загрузчик не запускается, может карта на 4 не идет, хотя и на 2гб то же самое, файлы брал с первой страницы темы. Можно ли как то проверить идет обращение к карте?
Тогда проверяйте AVR может непропай где-то или криво прошилась
tigr101274
20.02.2018, 04:35
Други гляньте фьюзы правильно установлены? https://yadi.sk/i/X7edjPUv3Sav37
Все прошивки перепробовал, не хотить работать. Видимо осталась только замена меги
polikarpov76
20.02.2018, 09:07
Мега с какой маркировкой точно подойдёт?
Эксперименты с памятью и прошивка cpld 2.35. AS6C1008-55PCN - сильный мусор, на простых операциях не виснет. K6T1008C2E-GF70 - визуально хорошо, иногда виснет. Думаю, если поставить 100ns как у автора прошивки, будет все отлично. Попробую емкость добавить -50 пФ.
Не забываем вешать 24 вывод Z80 на +5, через 10кОм.
SD карта 4 Гб пока не работает, но записывается файл speccfg.bin
Получил AS6C1008-55PCN в дип корпусе, поставил, включаю, и.... вы не поверите, но всё работает и нет никакой разницы... Возможно немаловажный факт работы моей сборки заключается в использовании ПЗУ на 45нс...
https://cdn1.savepice.ru/uploads/2018/2/28/e4be249c3e6db11438dfdd0c8693f1ca-full.jpg
PS: на всякий случай вот еще прошивочка, немного подкорректировал сигнал WR_BUF и времянки экрана
PS2: 2.36 обновил, был косяк с выбором тырдоса
Воодушевился Вашим сообщением, и еще раз все перепроверил. AS6C1008-55PCN - сильный мусор, остановился на буферах 1533, HC- все еще хуже - чернота на пол экрана и виснет. ПЗУ на 70ns, но с оригинальной прошивкой altera нет ни какого мусора. И еще mega (менял на проверенного поставщика) обрабатывает клавиатуру, работает с SD , есть запись (пробовал разные карты), но по F12 выбивает нижнюю строку, или до экрана 1982 Sinclair....... Есть подозрения на altera. Блокировочные на все корпуса.
Так может в оригинальную прошивку добавлять изменения шаг за шагом, а не все сразу.
Интересуют в первую очередь фиксы для звукового чипа ...
У меня тоже не заработало. EvgenRU, а не может ли быть, что рассинхронизация работы и сбои происходят из-за источника тактирования. Наверняка, у всех кто проверил Ваши прошивки для CPLD, генератор внешний, а у Вас частоту генерирует atmega. Пробовал ставить ПЗУ на 90 и 70 нс, особой разницы не заметил. Напишите пожалуйста маркировку Вашего ПЗУ, очень интересно найти причину.
Тогда вот, оригинал переделанный, вылечил AY, определяется в тесте, исправил глюки кемпстона и менеджера памяти.
Возможно чуть быстрее грузится с карты.
Вроде особо сильно ничего не менял, так что должно работать у всех.
PS: у меня определяется как YM2149F :) в другой прошивке как AY
PS2: если первый будет глючить, то попробуйте второй
PS3: честно, я что-то сомневаюсь, что ПЗУ может быть причиной, а вот тактирование от атмеги вполне может быть, хотя тоже странно это как-то...
Получается нет хотя бы двух собранных, одинаково ведущих себя плат. Все это похоже на "паразитные" дела. Чего стоил 24 вывод )) подносишь палец к процу -заводится, еще раз -стоп.
Генератор внешний, 14.0 мГц (проверено).
PS. Последние прошивки с виду работают, но покоя уже нет ) особенно памяти у нас одинаковые.
PS. Кварц вместо генератора, ничего не изменил.
О Меге: с начала была Atmega 32A-AU, от китайцев - работать не захотела, как бы все есть, а менеджер с карты не грузит. Поставил Atmega32-16AU, местного разлива, все отлично. Достаточно одного фуза CKOPT в ноль (SPIEN само собой). SDHC на 4гб, работают отлично.
О памяти: K6T1008C2E-GF70 работает со всеми прошивками cpld, ориг. и модиф. только корпус 32SOP на проводочках. AS6C1008-55PCN -работает только с ориг. (в моем случае).
tigr101274
01.03.2018, 16:23
Изучив сегодня внимательно схему обнаружил что на схеме обозначен транзистор структуры NPN (у меня же установлен транзистор BC857В PNP) , заменил на BC847 NPN и загрузка с карты пошла. Установлены последние прошивки, вроде работает, осталось разобраться со звуком.
https://d.radikal.ru/d15/1803/4b/67708a109e48t.jpg (https://d.radikal.ru/d15/1803/4b/67708a109e48.jpg)
Последний вариант поправленной оригинальной прошивки, поправлен только конфликт портов AY и #FD
Так же новая версия на Verilog еще меньше ячеек занимает, 96 классическая и 95 пентагон
PS: на этом, пожалуй, всё, со Speccy я закончу и перейду к своему проекту :)
tigr101274
03.03.2018, 05:38
В очередной раз прошу помощи правильно выставить фьюзы для AY, так как после прошивки работает только бипер, выставлял так
https://a.radikal.ru/a28/1803/c1/058ad8ec36e2t.jpg (https://a.radikal.ru/a28/1803/c1/058ad8ec36e2.jpg)
Да и использовал Atmega8L-8PU
Прошивки эти использовал:
AY_Emul_247_2ch_noread.hex
Conf_parallel_27MHz_1_75Mhz.hex
Да и использовал Atmega8L-8PU
Видимо тут не во фьюзах дело, 8PU это 8МГц гарантированная частота, нужно Atmega8-16PU или 8A-PU
Пришла с ebay память TOSHIBA TC551001BPL-70L, поставил, нормально заработала прошивка speccy2007_128k_CMF_TRD_cpld_2_36_SV. Прошивка 2_37_SV тоже работает, но на экране сильно мерцают атрибуты, а в загрузочном меню при изображении текста такое впечатление, что выпадают некоторые строки, т.е. сами буквы читаются, но не видны часть точек их формирующих. До этого со старой памятью UT621024SC-70LL работали прошивки не старше 1_51. Наверное, дело все-таки в памяти...
polikarpov76
03.03.2018, 21:02
Собрал белую платку. Сразу столкнулся с двумя проблемами:
1) Ошибка при прошивке ПЛИС в Quartus 13 'JTAG ID code specified in JEDEC STAPL Format File does not match any valid JTAG ID codes for device'. Шью в Windows 10 x64 через USB-Blaster. Самим Quartus альтера успешно детектится как EPM7128S я подправляю на EPM7128SL48 (так как нет в списке EPM7128SLC48) и при прошивке сразу ошибка.
2) Сильно греются все три АП6 ( у меня HD74LS245P). Все три мс проверил - исправны.
Кто-нибудь сталкивался с таким? Видел первая проблема была у fikus8, отписался в ЛС.
Да, первый раз, пока ПЛИС не прошита, АП6 могут сильно греться ! Поэтому нужно как можно быстрее после подачи питания прошить ПЛИС !
Либо, если они на панельках - вынуть их, пока ПЛИС не прошита.
2) Сильно греются все три АП6 ( у меня HD74LS245P). Все три мс проверил - исправны.
Кто-нибудь сталкивался с таким? Видел первая проблема была у fikus8, отписался в ЛС.
У меня на белой плате тоже греются АП, пока не решил, такое впечатление, что где-то сопля на плате.
Плис шьется нормально, но атмега не стартует.
polikarpov76
03.03.2018, 21:23
Alitius, а ПЛИС шили через USB-Blaster? Я тут погуглил, пишут, мол, с серией MAX7000 разные бластеры ведут себя по-разному. У меня безымянный китаец.
Alitius, а ПЛИС шили через USB-Blaster? Я тут погуглил, пишут, мол, с серией MAX7000 разные бластеры ведут себя по-разному. У меня безымянный китаец.
Да, через usb бластер, обычный, китайский с али, но с надписью "USB-Blaster"
polikarpov76, только что
http://storage4.static.itmages.ru/i/18/0303/s_1520103793_8635563_702292eb4a.jpg (https://itmages.ru/image/view/6515864/702292eb)
Где-то было, что АП6 греются до 1-ой прошивки ПЛИС. У меня на плате сейчас только Altera и Atmega запаяны.
Так что все норм шьется.
Всем привет! Тоже купил плату с зеленой маской Speccy 2007 128+AY+TR-DOS у Павла Рябцова. Схему взял из одноименной теме в барахолке. Где брать прошивку на ATMega 32? По прошивке ПЛИС почитал, голова кругом.
АТМЕГА шьётся прошивкой с первой страницы, ПЛИС прошивкой с 34 страницы http://zx-pk.ru/threads/10316-speccy2007-v1-06-(128-ay-trdos)/page34.html .
Все остальные прошивки - чисто экспериментальные ...
Подскажите пожалуйста прошивку для ATMega 32, прошивку ПЗУ и файлы для SD карты берем здесь?
7z speccy2007_v106r4_(128+AY+trdos)_src.7z
Это архив на первой странице темы. А FUSES для ATMega 32 выставляем по дефоулту?
Подскажите пожалуйста прошивку для ATMega 32, прошивку ПЗУ и файлы для SD карты берем здесь?
Это архив на первой странице темы. А FUSES для ATMega 32 выставляем по дефоулту?
Только SPIEN нужен, остальные нет
для avrdude и USBasp я программировал так
avrdude -p m32 -c USBasp -P usb -U flash:w:speccy2007.hex -U lfuse:w:0xff:m -U hfuse:w:0xcf:m
Приветствую! Собрал свою зеленую плату, прошил Atmegа, ПЗУ из первого сообщения темы, Altera из 335 сообщения темы, файлы залил на SD карточку тоже из первого сообщения темы. В итоге спек запустился вышел в стартовое меню. Клавиатура работает странно, перемещаться по меню могу только клавишей Home, другими не работает. При этом все пункты меню запускает и потом выяснялось, что не работают некоторые клавиши, например цифры 5 и 6 и некоторые буквы в этой же вертикали такие как T и Y и другие в нижних рядах. Прошивку в Atmegа залил с расширенной клавиатурой. Фьюзы пробовал разные, в теме их много вариантов предлагалось, главное чтобы Spien не трогать и выставить тактирование от внешнего генератора, остальное вроде как не должно влиять на работу. При этом клавиатуры пробовал 2 разные, эффект одинаков. Но самое мне не понятное, что спек не выходит в файл менеджер по нажатию F12, F10. При этом при включении спека на карточке появляется файл speccfg.bin. Внешне видно, что на экране портится нижняя строка пикселов, это так и должно быть т.к. Z80 сохраняет в экранную область свои регистры, об этом ранее писал Syd далее спек может сброситься в экран 48 версии, остаться так или в экран с вертикальными полосками как в тесте памяти 48 спека. Карточки пробовал разные, правда одного производителя, но разных объемов при этом без изменений. На плате сделал pullup 24 ноги Z80 (линия wait) и посадил на землю 1 ногу м/с ОЗУ A18 т.к. висит в воздухе. Прозвонил часть линий на плате, вроде все ОК. Зашивал в ПЗУ тест ОЗУ для 128 спека, работает часами без проблем. Вообщем уперся я и не знаю, что дальше делать. У кого есть какие предложения, сообщайте. Интересно мне содержание файла speccfg.bin. Может кто нибудь закинет сюда образец со своей рабочей машины, хоть сравню.
Что то с сайтом какие то проблемы, то не загружается, то не сохраняет., то не обновляет.
Не уверен, что у вас может быть то же что и у меня, но это стоит проверять только в самом последнем случае, т.к. можно повредить плату.
В моем случае оказалась бракованная атмега, эффект был примерно такой же как у вас, работало почти всё кроме загрузки файл менеджера.
Я точно неуверен была ли эта проблема в атмеге или в каком-то непропае, но после замены атмеги всё заработало.
Спасибо, что ответили EvgenRU! Это уже 2-я Atmega, но первая вообще не выходила на связь с программатором, так что я уже её перепаивал. Я её сдул феном, немного пострадала цанговая колодка процика и перемычка, а так ничего страшного. Первую ATmega я купил у Павла вместе с платой, а ту которая сейчас работает покупал в Китаёзии. Х.З. что делать, им тоже веры нет. А Вы не сможете закинуть сюда файлик speccfg.bin ? Очень хочется на него взглянуть т.к. Ваш спек работает.
А Вы не сможете закинуть сюда файлик speccfg.bin ? Очень хочется на него взглянуть т.к. Ваш спек работает.
да, могу конечно
Приветствую форумчан! Запустился таки Syd`s Speccy2007 boot-loader. Проблема как обычно оказалась в отсутствии контакта, на этот раз по ШД на ATMega. По этой же причине не работали некоторые клавиши, нужно было сразу об этом подумать, но я затупил. Теперь клавиатура вроде как работает, правда не все совпадает с описанием. Пока не понял почему перестаёт работать клавиатура после загрузки образа TR-DOS. Будем дальше разбираться. Кстати в файле speccfg.bin записывается информация о вмонтированном образе.
CityAceE
24.05.2018, 07:29
Тест.
Приветствую! Итак продолжим. Как я писал ранее, что перестаёт работать клавиатура после загрузки любого образа диска и зажигается и после постоянно горит индикатор Scroll lock. Об этом ранее писал alexsmg. Подключил другую клавиатуру и все заработало. Прошил ATMega прошивкой из архива в 359 сообщении темы, все стало ОК, клавиатура работает индикатор Scroll lock моргает при загрузке и тухнет по окончании загрузки. Спасибо EvgenRU за прошивку. Теперь на очереди AY эмуль собрать и запустить.
polikarpov76
31.05.2018, 21:28
Может кому поможет мой опыт.
Решил проблему с прошикой Альтеры. Пришел USB-Blaster на STM32. Он шьет без всяких проблем. Другой рабочий USB-Blaster на базе SiLabs F321 не шьет EMP7128SLC84.
https://thumb.ibb.co/mFM4Cd/IMG_20180531_211621.jpg (https://ibb.co/mFM4Cd)
Вот мой.
https://thumb.ibb.co/b94hhd/IMG_20180601_140428.jpg (https://ibb.co/b94hhd)
PIC18F14K50
Прошивает тоже без проблем, но не все. :) Наверное, только те, которые в принципе шьются.
Может проблема в питании? Для работы и прошивки EMP7128SLC84 нужно 5 вольт. При прошивки я питание подаю со схемы, хотя со стороны USB тоже есть напряжении - сужу о горении светодиода питания в бластере.
"Черная маска" ......+VGA.
Собрал, на плате 2 "косяка":
1) перепутаны цвета на входе конвертора VGA, синий и красный.
2) ошибка в разводке "micro SD".
Генератор 14 мГц на микросхеме в таком исполнении не запустится, нужно или резисторы подбирать в мОм, или тип микры менять на LS, ALS. В какой то ветке по Speccy2007 уже пытались запустить генератор по такой схемотехнике.
И еще... Господа производители п.п. примите за правило "хорошего тона" - размещение 5 вольтового питания на плате устройства, "не лезет" 2596, можно использовать что либо из SOT23-6. SO8 MP2307 я поставил в белой маске вместо 7805. Дело в том, что выносные БП с выходом 5V практически не найти, в основном 5,2-5,6V, при этом некоторые мсх "тупеют", или "звереют".
P.S. "Бегут кадры" на LCD мониторах (59,6 Hz) прошивки Speccy оригинальные, VGA - VGA_PAL 100616 - V 7.00 для Speccy. На некоторых мод. прошивках от EvgenRU (Altera), заставка стабильна, при любых действиях синхра. нарушается.
3) Надо сделать: входы конвертора VGA - ssi, ksi - через резисторы 120 Ом на 36 выв. altera Sync. То есть отсоединяем вход VGA ksi от 28 вывода altera, (рез 120 Ом), и соединяем с Sync 36 выв altera.
Почти все.....
Остались еле заметные, засвеченные равномерные вертикальные линии.
https://ibb.co/JdwpWPQ
Павел Рябцов
15.08.2019, 21:22
Rem22 Все косяки исправил.
Удалил генератор на 04, оставил только генератор на 14мгц. Поставил 2596.
https://i.ibb.co/6BGcm3P/image.jpg
SoftLight
05.09.2019, 14:12
Собрал белую платку от Павла и никак не могу ее запустить.
Вопрос: а что нужно минимум оставить на платке чтобы с разъема video снять хоть какой-то сигнал? Кто и как подключает к монитору, достаточно ли взять RGBS + GND? Там еще какая-то яркость I, можно ее пока не подключать? Суть в том, что картинки нету. Уровни напряжений RGB какие-то нереальные ~ 4V, а Sync 0,05V видимо ее и нет.
Ситуация: мс все в кроватках. Сейчас у меня запаяна и нормально прошита atmega32. Установлена epm-ка и нормально прошита. +5v везде на кроватках мс проверил и на разъеме video тоже. На SD-карте есть +3.3V. По напряжениям все ок, залипонов нет. Самое стремное: бешено греется 78M05 как только запускаю с установленной EPM (разные пробовал) даже если больше ничего не устанавливаю.
http://www.picshare.ru/uploads/190905/aXFuf5DNo0_thumb.jpg (http://www.picshare.ru/uploads/190905/aXFuf5DNo0.jpg)
tigr101274
06.09.2019, 04:47
Вопрос: а что нужно минимум оставить на платке чтобы с разъема video снять хоть какой-то сигнал? Кто и как подключает к монитору, достаточно ли взять RGBS + GND? Там еще какая-то яркость I, можно ее пока не подключать? Суть в том, что картинки нету. Уровни напряжений RGB какие-то нереальные ~ 4V, а Sync 0,05V видимо ее и нет.
https://zx-pk.ru/threads/10316-speccy2007-v1-06-(128-ay-trdos).html?p=947109&viewfull=1#post947109 лучший вариант
Либо как делал я посадил каждый сигнал через сопротивление 220 Ом на землю
tigr101274
21.10.2019, 18:36
3) Надо сделать: входы конвертора VGA - ssi, ksi - через резисторы 120 Ом на 36 выв. altera Sync. То есть отсоединяем вход VGA ksi от 28 вывода altera, (рез 120 Ом), и соединяем с Sync 36 выв altera.
Подскажите как лучше сделать, вроде пытался сделать но кадры как бежали так и бегут.
Все, разобрался.
Доброго времени суток. Пытаюсь дособрать плату спека. Зеленая маска с барахолки от Павла Рябцова.
Проблемы две.
1. На 23 выводе ALTER-ы всегда висит 2.5v. Плата стартует 1 раз из 5 и виснет/теряет картинку при отрисовке меню с выбором бейсиков. Если закоротить 23 вывод на землю не виснет и стартует норм. Сопли нигде не нашел. Но попробую еще поискать. Пробовал на двух разных alter-ах.
2. Нет чтения с карты памяти. +3.3v приходит. boot.sna и trdos.sna в корне. флешка на FAT16.
atmega32 16au 1018d прошита с такими фузами -U lfuse:w:0xff:m -U hfuse:w:0xcf:m
вот данные с логанализатора на контактах карты памяти.
https://i.imgur.com/Ns4gHVPm.jpg (https://i.imgur.com/Ns4gHVP.png)
фото самой платы.
https://i.imgur.com/ZrflZevm.jpg (https://i.imgur.com/ZrflZev.jpg)
https://i.imgur.com/nKS67n5m.jpg (https://i.imgur.com/nKS67n5.jpg)
PS: проц, память менял. не помогает.
Павел Рябцов
21.11.2019, 20:14
Trunk17 Чего как дети малые, буквы не можете отличить, честно напрягает когда коверкают фамилию!!!!!!!!! Достали уже.........
Trunk17 Чего как дети малые, буквы не можете отличить, честно напрягает когда коверкают фамилию!!!!!!!!! Достали уже.........
Прошу простить меня за мою невнимательность. Не хотел ни коим образом обидеть. Поправил.
На MISO +5v. Прозвонил дорожку MISO. КЗ на +5 нет. Равно как и на ближайшие соседние. Резистор R11 на 22кОм исправен. Появляется сразу после включения питания вместе с DC_CS. Дохлая Atmega?
Подскажите по новоделу, о чём сейчас тема. Я собирал ещё в 2017 по своей плате и после началось шевеление форума. Чтото говорилось об убирании одной оперативки, вроде как есть схема, но не было прошивки нормальной и переделывать уже не хотелось.
Прошивка EvgenRU с 33 страницы и позднее, это версия под одну ОЗУ ?
Что за маленькая платка и по какой ссылке продаётся. И главное где AY, он полностью ушёл в ПЛИС ?
И ещё чтото вродебы говорилось про VGA.
Ну а в плане функционала какие отличия от первой версии 128к ?
Мой тут (https://github.com/74ls00/Speccy2007_128KY)
Подскажите по новоделу, о чём сейчас тема.
Тут в основном последнее о версии 1.06, а конкретно о плате от Павла.
Я пытался оптимизировать прошивку, у меня всё отлично работало, но у меня тактирование шло от Atmega32, т.е. генератора не было, только кварц к атмеге, а от неё уже дальше, видимо поэтому, у тех у кого был внешний генератор моя прошивка не работала.
Насчет AY, у Павла на плате установлен эмулятор AY на Atmega8.
Надеюсь ответил на ваши вопросы :)
PS: правда с таким тактированием я наткнулся на грабли, суть которых в том, что если тактировать таким сигналом VGA-PAL то тактовая им съедается полностью в 0, т.е. при подключении VGA-PAL полностью пропадает генерация на выходе...
Подскажите в чём проблема: собрана версия на плате от Павла. Раньше всё работало.
Решил проверить ещё раз - не выходит в меню по F12, а переходит в режим 48К.
По F10 подвисает. Но если выбрать в основном меню TR-DOS, то загружается последний смонтированный диск.
Программы с этого смонтированного диска также грузятся.
По F12 для загрузки меню с заставкой "Speccy 2007" и выбора файлов для монтирования какие сигналы формируются и используются, NMI?
Подскажите в чём проблема
Думаю, стоит проверить контакты у атмеги
Какие конкретно сигналы АТМЕГИ смотреть?
Раз из меню ТР-ДОСА СД-карта видна и читается без проблем - то скорее всего проблема с сигналом NMI.
На F12 плата реагирует, только вместо меню монтирования дисков, плата переходит в режим 48К.
Если нажать F12 ещё раз - то показывает меню 128К.
Не подскажите, какие конкретно действия выполняет процессор и АТМЕГА после нажатия F12 ?
Ну, так то атмега контроллирует клавиатуру, эмулирует ВГшку, читает SD карту, вэйтит процессор, NMI обрабатывает (клавиатура и NMI это порт B), обрабатывает магнитофонный вхот (всякие тапки и TZX), переключает ROM... может еще чего забыл...
По нажатию F12 происходит
1. Сброс процессора
2. Открытие boot.sna
3. Переключение ПЗУ
4. Вызов NMI
Пропаял все выводы АТМЕГИ, всё снова заработало. Просто странный был баг, вроде бы с СД карты читает, а вот Speccy Menu по F12 не показывает.
Всем спасибо.
Смотрю не у меня одного магнитые бури в оптоволокне.
Достал свой самосборный спек,помнится забросил его напарившись с палом, а потом вспомнил что карта перестала работать.
На этот раз карта работала поэтому и забыл, да и как раз добыл 16мб карточку у знакомого.
Был у него прирождённый глюк, микротрещина в дорожке, но тогда после пропайки заработало, а теперь проводок сделал.
В общем карта работать перестала, может дело в БП 5.4в, но других нет.
По F12 светодиод молчит. Заменил транзистор на кт3102е, по нажатию светодиод начал ярко вспыхивать. Карта не заработала, но теперь светодиод опять не горит, мультиметр на базе ничего не видит.
Нащупал обрыв резюка с 7 ноги карты 10к на 3.3в, заменил. Теперь по F7 начало не ярко пыхать, а очень коротко. Но тоже случай единичный, чаще просто не светит.
Карту форматировал, всё видится, пробовал другую с переходником. Дорожки от карты вызванивал, всё идеально как и прошлый раз.
Шил мегу32 прошивками из проекта которые с того раза лежали, ничего не поменялось.
Может всётаки мега такая китайская и дефект опять вылез. Гдето 16 была в таком корпусе, да чтото не найду.
Версия с 2 ОЗУ, так что не уверен что с последних постов подходить будет прошивка.
По F12 тупо портится нижняя полоска пикселей, чёрный квадрат ингогда с мусором и на этом висит до сброса, а иногда и совсем.
Файлов никаких не было кроме тех двух.
Скажите хоть какие явления должны быть. Должен ли светодиод загоратся на F12 и как именно должен по F7 моргать. (На карте файлы не появляются).
По хорошему и алгоритм, при каких условиях он загорается, нужен ли ответ карты или по нажатии на кнопку должен срабатывать.
Попрыгал с бубном, пропаял сбитый у проца D7, хотя спек и так работал. Питалово пустил через хороший диод, снизилось до 5.1в. Карту начал видеть, причём включать надо именно с ней, сброс после передёрга не работает. А вот аппаратный у меги пашет, зря кнопочку не сделал.
В общем как на этой штуке запускать tap ? Простым выбиранием в меню F12 оно просто выкидывает. Помнится надо было включить лоадер и чтото нажать, так что жать то. Помнится уже спрашивал и 2 раза списки кнопок нашёл, да нет там про эту кнопку
Тоже пытаюсь запустить две платы.
1. Зеленая маска.
Описание проблемы ТУТ (https://zx-pk.ru/threads/10316-speccy2007-v1-06-(128-ay-trdos).html?p=1035600&viewfull=1#post1035600)
Приехала вот на днях еще память TOSHIBA - с ней такая же.
В дополнение. По F12 бордюр становится черный, мелькают красные полоски, потом ребут.
Что еше можно померять, проверить?
2. Белая маска.
Т.е. с платой не было генератора, подключал через кварц как описано ТУТ (https://zx-pk.ru/threads/10316-speccy2007-v1-06-(128-ay-trdos).html?p=947668&viewfull=1#post947668)
https://i.imgur.com/iiZjlwPm.jpg (https://i.imgur.com/iiZjlwP.jpg)
Стартует. Но мусор на экране.
https://i.imgur.com/2Jicjf2m.jpg (https://i.imgur.com/2Jicjf2.jpg)
Иногда, очень очень редко бывает начинает читать что то с ПЗУ.
https://i.imgur.com/f7QCHIjm.jpg (https://i.imgur.com/f7QCHIj.jpg)
Пробовал менять память на AMIC LP621024D-70LL, ELiteMT с зел. маски, D7,8,10 на 555АП6б D11 на ИР33 - не помогает.
На обеих платах 24 нога Z80 подтянута к +5 через 10кОм.
Что можно потыкать, померить в схеме? Знаний не достаточно, но есть мультиметр, цифр. анализатор и осцилограф.
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot