1 UP
2 DOWN
3 LEFT
4 RIGHT
5 +5V
6 BUTTON A/B
7 SELECT
8 GND
9 BUTTON START/C
Где прописано соответствие BUTTON START/C - SELECT - BUTTON A/B ?
Вид для печати
... и вот когда закончились мои очередные и безуспешныйя попытки постичь премудрости квартуса и найти несовпадение бордюра и экрана в режиме пянтогона, решил проверить, а как же оно-то в 48 режиме. Оказалось еще печальнее. Для проверки пришлось:v2_dizzy_turn: написать очередную под(д)елку в эмууле, причем и остальные эмули как бы солидарны меж собой
http://savepic.net/3410274.jpg
авот в Speccy2010 разбег бордюра с экраном в 4 пикселя:confused: ( в режиме Pentagon-а - 1 пиксель)
ну и где правда, комуу верить :(??
В Speccy2010 не реализована поддержка колеса мышки?
А еще похоже перепутан флаг Swap mouse buttons, ибо когда мышка посылает В порт кнопок число 1, спектрум на выходе выдает 253. Если включить swap то выдает 254.
А art-studio работает зашибенски.
Все умерли?
Существует ли схема сабжа, интересует часть с входом мышки и клавы. В PDF этого куска не нашел. :(
Судя по схеме, ничего страшного быть не должно если плата внезапно начнет питаться от +5 с разьема мышки? :)
---------- Post added at 11:50 ---------- Previous post was at 11:49 ----------
А что такое VD1,2 - преобразователь уровней 5 > 3в ?
---------- Post added at 11:52 ---------- Previous post was at 11:50 ----------
Не совсем так. Что бы мышь начала выдавать 4 байта нужно включить спец режим.
Pentagon Evolution это делает сам, поскольку как я понимаю на спектруме мыш реализована только на чтение. А на Speccy 2010 спец режим не включается, а работает обычный по умолчанию.
На спектруме мышь реализована через одно место.
Почитай про реализацию колёсика, по сути 4 байта мапятся в 3 (порта).
Инфа о колёсике кладется в верхние биты байта кнопок, который на деле не пустой, там хранятся биты переполнения, но спектрум о них не ведует.
---------- Post added at 12:57 ---------- Previous post was at 12:55 ----------
Ну и да, мышка работает только на чтение - иначе не нужна была бы процедура определения наличия мыши.
syd, Вход и Выход реального магнитофона можно как нибудь подключить к этой плате? Для полноценности.
В текущей версии нет, но при желании можно доработать прошивку и прилепить сверху платку на пару неиспользуемых пинов ПЛИС.
syd, Спасибо. Но в моем случае, желания мало. Изменить прошивку я не смогу. Жалко конечно что это не было заложено с начала.
Да большое спасибо syd за проделаную рабботу.
Отличный игровой комп
Помогите пожалуйста со следующей проблемой:
начиная с прошивки выше 50-й ревизии во многих демах интенсивно использующих переключение экранов появляются/мерцают артефакты в разных участках экрана, вот снимок экрана телевизора, см. внизу слева:
http://savepic.ru/3830538.png
Как это выглядит в процессе можно посмотреть в небольшом видео
Вот шаги, которые мы с другом проделали и их результат:
- пропаивали микруху памяти - безрезультатно
- при включении турбо x2, x4, x8 мерцающие артефакты исчезают
- при прикосновении пальцем к ножкам мерцающие артефакты исчезают
- запускал различные тесты памяти, все без ошибок
в видео видно, что некоторые артефакты становятся постоянными и уже при вышеописанных шагах не исчезают.
Подскажите как можно дигностировать и устранить проблему? Прошу учесть, что сам я с паяльником не работаю.
Спасибо!
Так что же, паять FPGA'шку? ее обычным то паяльником реально пропаять?
Прошивка с нужной буквой - для 8N, тут ошибки нет.
Не совсем понятно, что ты этим хотел сказать...
Можешь выложить эту прошивку, что на аним. гифке?
В общем решил вопрос "по пацански": посадил 53-ю ногу D15 на 1-ю ногу (3.3v) через резюк 2.2кОм и глюк исчез.
Возможно всплывет где-то в другом месте, будем посмотреть.
Да, SDRAM. По схеме не знаю, просто 1 и 53ю ногу через резистор 2.2кОм.
Наткнулся на ютубе
Speccy2010 Assembling By Magictale Team - Timelapse
http://www.youtube.com/watch?v=rmIdTSHU2dY
а можно сделать такой же эффект ? http://www.youtube.com/watch?v=x1o_Tr8jq3I
насколько понимаю это триколор только без мерцания.
Это дваколор и с мерцанием.
Сразу, как только я обзавелся Speccy2010, начал гонять на нем различные тесты и был озадачен тем, что самый показательный (для меня) "TEST128-1 Андрей Хахонов" (http://sblive.narod.ru/ZX-Spectrum/DUET/TEST128.rar) зависал наглухо уже на первых этапах. В работоспособности теста сомнений не было - обкатан еще в 90ых, в надежности железа Speccy2010 тоже особо не сомневался - из всего, что запускал, не работал только "TEST128-1". Появилось жуткое желание разобраться в чем причина. Недавно занялся таки этим вплотную и вот что получилось.
В "TEST128-1", для защиты копирайта, используются недокументированные команды Z80 "SLI r,(IY+s)" (opcode: FD_CB_32_32 и FD_CB_01_07). Как оказалось, в Speccy2010 revision66(http://speccy2010.googlecode.com/svn/trunk/), в VHDL модели T80, команды этой группы не реализованы. Пришлось познакомиться с квактусом. Здесь(см. вложения) были найдены исходники T80, с поддержкой нужных опкодов. Путем нехитрых манипуляций, их обработка была добавлена в модель T80 для Speccy2010 revision66. Долгожданный результат был достигнут c первого раза: "TEST128-1" заработал и я любовался ностальгическим "мусором" в экраной области с измяняющимся цветом бордюра :). Только теперь это все работает на двух с половиной микросхемах!!! :). Не упущу возможность в очередной раз выразить благодорность syd'у за разработку Speccy2010!
Единственный смущавший меня момент в Speccy2010 был устранен, но желание покопаться дальше не пропало. Встречал в этой теме пожелание иметь возможность подключения реального патифона. Реализовать это в FPGA оказалось не так уж и сложно. Сложнее было решить, куда подключить эти сигналы на плате. По ряду привлекательных обстоятельств, решил использовать для этого разъем джойстика XP3:
1. На pin1,2,3,4 подать GND с pin8 - переключение функции порта с джойстика на TapeIO и переключение обработки TapeIn c виртуального на реальный патифон;
2. Pin5(+5V) и pin8(GND) - питание усилителя сигнала с патифона;
3. Pin7 - TapeOut;
4. Pin9 - TapeIn.
Для проверки использовал схему усилителя TapeIn от Ленинграда2 на 561ЛН2 - работает. TapeOut не проверял, только убедился, при помощи осциллографа, в присутствии на pin7 дискретного сигнала.
В прикрепленных файлах исходники и рабочий файл speccy2010.rbf:
Speccy2010_fpga_undocXY.zip: Speccy2010 revision66 + обработка вышеописанных опкодов.
Speccy2010_fpga_undocXY+TapeIO.zip: то же + TapeIn, TapeOut.
T80_FixesFromPaceDev.zip - архив с исходниками Т80, скачанных отсюда:https://svn.pacedev.net/repos/pace/s...onent/cpu/t80/ (Переход по этой ссылке сперва ругается а сертификат, а далее попадаем на страницу с исходниками. Прикрепил архив к сообщению.)
Может кому пригодится.
Вынес в отдельное сообщение.
После инсталляции квактуса (9.1 build 222 x64) первым делом, не меняя никаких настроек, скомпиллировал исходники(http://speccy2010.googlecode.com/svn/trunk/) Speccy2010 и получил рабочий файл speccy2010.rbf для EP2C8Q208C8N, отличающийся от скачанного в архиве speccy2010-bin-20111106-rev0064.7z. Это никоим образом меня не смутило, но открылось одно обстоятельство.
При работе с файлом для 8N, из архива rev0064, например, в игрушке "Riveraid", на экране проявляются артефакты, похожие на описанные point777: http://zx.pk.ru/showpost.php?p=566908&postcount=1218. Также повторилась и ситуация с "тестом 0.9", описанная savelij: http://zx.pk.ru/showthread.php?t=12425&page=120. Все это также устраняется при использовании файла speccy2010.rbf для 7N вместо 8N из того же архива. Так вот полученный мной при компиляции файл speccy2010.rbf дал такой же эфект как и файл для 7N из архива!?! Артефакты в "Riveraid" отсутствуют, "тест 0.9" проходит, другие проги как работали так и работают.
Возникает предположение, что файл для 8N из архива rev0064, возможно, был как-то ~неудачно~ скомпиллирован? Или вышеописанные ситуации единичны и присущи только некоторым экземплярам плат / партии микросхем?
У кого есть возможность, проверьте пожалуйста на своих Speccy2010 как работают вышеупомянутые "Riveraid"(во вложении) и "тест 0.9":http://dlcorp.nedopc.com/viewtopic.php?p=14840#p14840. Интересует: существуют ли Speccy2010, с установленной EP2C8Q208C8N, на которых эти программы нормально работают с файлом speccy2010.rbf для EP2C8Q208C8N из архива: http://code.google.com/p/speccy2010/...102-rev0064.7z ?
Может кому будет интересно проверить, прикрепляю вышеописанный, скомпилированный мной из исходников, файл speccy2010.rbf для EP2C8Q208C8N.
P.S. Что-бы из вышеописанного ни у кого не создалось ложное писсимистическое впечатление, выражу свое личное мнение о Speccy2010 двумя словами: "замечательная весчь"!!! Практически все, что довелось запускать, отлично работает. За оооочень редким исключением, которое скорее из разряда "еще нужно поискать".
"Riveraid" не скачиваеЦЦа - согласен битая ссылка. На гугле и народ никогда не регистрировался.
Кстати, acx, а почему у тебя все ссылки (кроме атачей) не рабочие, не достоверные источники и т.д. Полное ощущение что у тебя нет антивирусов и ты самый старый IE юзаешь.
acx, Я правильно понял, нужно сделать переходник, залить на карточку новую прошивку, и все должно работать (с магнитофоном)?
http://photo.qip.ru/users/zxfan72/20...08/full_image/
Andrey F, да, поняли правильно.
по "переходнику": R1R2C1C2 для TapeOut не собирал - ничего конкретного сказать не могу. С3 ставил 0.1uF. В остальном вроде все верно.
Файл speccy2010.rbf, из архива Speccy2010_fpga_undocXY+TapeIO.zip, нужно записать в корневой каталог SDcard.
В приложении файл, скомпилированный из исходников revision66(http://speccy2010.googlecode.com/svn/trunk/) при дефаултных установках квартуса (как при инсталляции) и выбранном Device=EP2C8Q208C7.
На данный момент выяснилось, что исходники rev0064 и выложенные сейчас revision66 _побайтно_идентичны_. Откуда тогда рабочие файлы в архиве (http://code.google.com/p/speccy2010/...102-rev0064.7z )? Единственное, что остается предполагать, что они были получены при каких то условиях компиляции (оптимизация,...), которые отражаются при работе с файлом для С8 на некоторых экземплярах Speccy2010(с установленным EP2C8Q208C8N).
Также выяснилось, что описанные артефакты, например в "Riveraid" (http://zx.pk.ru/showpost.php?p=580282&postcount=1229), проявляются только при "Timings"="Pentagon" и отсутствуют при "Timings"="ZX Spectrum 48" и "ZX Spectrum 48" (только на одной и той же прошивке speccy2010.rbf для С8 из архива rev0064).
Пришел к выводу: железо Speccy2010, во всяком случае моего экземпляра, невиновато :). Что-то ~не то~ c рабочими файлами в архиве rev0064, т.к. путем простой перекомпиляции исходников получаю нормально работающие файлы speccy2010.rbf.
P.S. В сязи с этим, прошу point777, автора сообщения http://zx.pk.ru/showpost.php?p=580701&postcount=1233 , удалить из него мою цитату, как не соответствующий действительности промежуточный вывод. Дабы никого не вводить в заблуждение :).
Розумеющие люди, подскажите пожалуйста, как сделать по нажатии, допустим F5, перезагрузку speccy2010.bin.
Если я правильно понял - бутлоадер хранится по адрессу - 0x20000000.
Думал как то так:
#define RESET_BOOTLOADER 0x20000000
void ResetBootLdr()
{
void (*MainProg)() = (void*) RESET_BOOTLOADER;
MainProg();
}
ну и по факту нажатия, допустим, F5 - вызывать ResetBootLdr()
но не оно.
поправьте (ткните) как правильно реализовать.
Ну вот, допустим, кто-то напишет что то кроме спектрума, естественно, перегружать при переключении со спека на что то кроме спека нужно будет и *.bin файл, имхо переименовывание файлов в Shell`e и вкл.выкл питания выход, но геморный, как то так )
---------- Post added at 17:33 ---------- Previous post was at 17:31 ----------
А так можно будет в одном .bin держать менеджер всякого (конфиги компов, приставок), ну и переключение между конфигами делать без описанного выше гемора
Фух, при конфигурации, к примеру Atari, нужно будет соответственно .bin для атари - выбор загрузки сохранения файлов для атари, управление конфигурацией атари.
Поиграл на атари, надоело, переключился через общий менеджер на спек, вроде так удобней.
Ладно, хрен с ним. Забейте.
:))))
Я так понял в Shell`е переименовывание + power off + power on?
//Обидно, но всё не влезет.
Ладно, это я так, на будующее интересовался, бум думать
Я так понял у str755fv2t6 256кб памяти
Нарисую идею как я представляю себе смену кофигов с управляющим бинарником: на флешке папка "Прошивки", в ней подпапки "Manager" и, ну там, "Spectrum 48/128", "Pentagon", "Scorpion", "Profi", "Atari", "CHIP 8" и т.д, при первом запуске в корне флешки находятся конфа и бинарник с последнего выключения компа, по нажатию F8 (или другая какая клавуша) из папки "Manager" копируется бинарник с менеджером,рестарт с перезагрузкой bin файла, в нём уже выбирается модель компа, по модели выбраного компа из папки файл конфигурации и bin копируется в корень флехи, рестарт с перезагрузкой bin файла, как то так, вот и проблема с рестартом, вроде так было б удобнее, имхо
можно конечно проще, в корне флешки хранить кучу бинов и конфигураций, из shell`a переименовывать нужный бин и конфигурацию в speccy2010 и делать перезапуск питанием, но как по мне - это коряво...
Можно сделать рестарт бутлоадера альтернативным способом: попробуйте просто "while(true)" и взведенный WatchDogTimer сделает свое дело.
Да, 256кБ Flash-памяти.Цитата:
Сообщение от rsorc
Если не ошибаюсь, сейчас имя файла, соответствующего прошивке ARM'а, жестко забито в бутлоадере как "speccy2010.bin". Чтобы записывать другую прошивку, не переименовывая ее в "speccy2010.bin", нужно изменить бутлоадер. Думаю, будет логично разместить примитивный менеджер конфигураций в бутлоадере. На мой взгляд бутлоадеру нужен .ini с жестко заданным именем, например "boot.ini", в котором указана текущая выбранная конфигурация. Достаточно одной строчки с указанием имени файла прошивки для ARM (как сейчас "speccy2010.bin"). Для изменения конфигурации достаточно, например в Shell'е, выбрать нужный файл .bin, по нажатию например Enter, записать его имя в "boot.ini" и GoTo бутлоадер.
В любом случае, думаю, стоит стремиться к:
1) отсутствию неудобств, если переключение конфы не требуется;
2) минимально возможному кол-ву перезаписей Flash-памяти ARM.