Uzix | микроблог

#Электроника

Не успел остыть паяльник от вчерашнего...

Не успел остыть паяльник от вчерашнего подношения богам полочек, как на подходе новое :)

Мурмулятор (https://murmulator.ru/) - проект эмулятора ZX Spectrum на базе двухъядерного микроконтроллера RP2040. Поддерживается несколько разных вариантов железа - базовый, с аппаратным turbosound, вариант под корпус Raspberry Pi с USB, HDMI или VGA, вариант в корпус клавиатуры. Так же под него есть целая куча разных прошивок-эмуляторов: несколько вариантов ZX Spectrum, БК 0010, XT, Денди и т.д.

Я выбрал для себя вариант под корпус Raspberry с HDMI и прогадал - из всех прошивок-эмуляторов ZX Spectrum только frut-bat поддерживает HDMI, но в ней даже нет работы с TRD. А вот в самых навороченных и развивающихся прошивках ZX Spectrum tecnocat и ZX Spectrum fastbeta есть и Пентагон, и TRD, и TurboSound, и много чего ещё, но нет (надеюсь, пока) HDMI. Что ж, включаю ждуна :)

На днях собрал нового зверька - КРИСС...

На днях собрал нового зверька - КРИСС (http://criss.radio.ru/) - новодельный ретро-компьютер на микроконтроллерах AVR. И в моём любимом корпусе :) На борту VGA выход, PS/2 контроллер клавиатуры и мыши, поддержка SD карт. АВРки эмулируют процессор Z80, на котором крутится ОС CP/M.

Давненько я уже в KiCad не залипал...

Давненько я уже в KiCad не залипал, даже соскучился. Поэтому решил развести что-нибудь простое, проект выходного дня так сказать. В общем то клонов Famicom (Денди) есть уже довольно много, но, с другой стороны, нет никаких причин не сделать ещё один :-)

Запаял новую плату - карту OPL3...

Запаял новую плату - карту OPL3 (грубо говоря, AdLib) на шину PCI. Запустилась почти что с первой попытки - если не считать перевёрнутого танталового конденсатора и неисправного ЦАП YAC512 с али. Но конденсатор был легко перепаян за несколько секунд (и он даже не взорвался т.к. не хватило тока от маломощного стабилизатора), а неисправный ЦАП заменён на вполне живой. И вот, она запела! :-)

Почему-то наличие AdLib определяется софтом через раз. Проблемы с драйверами исключены т.к. карте они не нужны, весь софт под DOS видит её нативно. Возможно, есть проблемы с чтением регистров чипа OPL - нужно ещё поразбираться.

Давно не садился за электронное хобби...

Давно не садился за электронное хобби, но сегодня решил сдуть пыль с пары небольших давно готовых проектов, оформить и опубликовать их:

Компактный бэкплейн ISA16: https://github.com/UzixLS/pc-isa16-backplane

Переходник PC104-ISA16: https://github.com/UzixLS/pc104-isa-adapter

Когда-то у меня была всего парочка процессоров Z80...

Когда-то у меня была всего парочка процессоров Z80, с которой я и тестировал прошивку Sizif 512. Но за прошедшее время у меня скопилась небольшая коллекция, и, как оказалось, многие из них (в основном медленные NMOS) на Сизифе работают некорректно. В схеме указана модель Z84C0020 - с ней проблем нет, но хотелось (хотя бы для галочки) чтобы работал любой Z80. Собственно, этим я и занимался последние две недели. Да, неожиданно много времени и сил это заняло, много вечеров провёл ковыряясь в GTKWave, но в итоге теперь все 33 протестированных процессора работают, вместо 24 со старой прошивкой.

Любопытно, что по результатам теста все имеющиеся у меня NMOS процессоры разогнались до 7 МГц, а почти все CMOS до 14 - тут статистику подпортили только процессоры NEC. Длительное многочасовое тестирование в разном софте, игрушке и демках всех 33 штук я, конечно, не осилю, но несколько самых строптивых процессоров ещё погоняю.

Результаты теста прикрепляю в таблице, возможно кому-то будет интересно.

Sizif512 - тест CPU 2023-10-28.xlsx 9.7 KB

Не всё так просто...

Не всё так просто. Не знаю почему я был настолько уверен, что у чипа Dream SAM5504 есть заводская прошивка, которую я смогу использовать. Нет, её нет, по крайней мере в свободном доступе. В самом чипе, как я понял после прочтения документации (ага, самое время её открыть), прошит только минимальный загрузчик из внешней флешки. И вся документация для разработки своей прошивки и инструменты под NDA - а значит получить их будет нереально - с учётом войны и того факта, что Dream, судя по комментариям в интернете, не особо идёт навстречу хоббийщикам. Что ж, минус несколько вечеров на разработку и сборку, минус N денег на комплектующие и платы, плюс урок на будущее.

Результат немного предсказуем...

Результат немного предсказуем. Но вот что я не мог предсказать - что цвета после каждого сброса будут меняться - всего насчитал 4 варианта. Похоже, что при каждом сбросе фаза выводимых пикселей относительно color burst смещается. Наверное, можно было бы организовать коррекцию фазы на ПЛИС… Штош, не очень то и хотелось :)

Спаял шляпу с PAL/NTSC кодером для EGA...

Спаял шляпу с PAL/NTSC кодером для EGA-видеокарты. У моей PEGA2A дорожки к разъёмам-колокольчикам, видимо, идут как попало, и на картинке есть заметные вертикальные полосы (т.н. jailbar), но если вывести картинку минуя цепи видеокарты - то всё нормально. Композитный CGA ожидаемо не заработал - для этого NTSC кодер должен тактироваться от того же источника, что и сама видеокарта, а на шляпе свой кварц. Завтра в порядке эксперимента попробую взять нужный тактовый сигнал с разъёма EGA feature connector.