Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Unsorted (http://zx-pk.ru/forumdisplay.php?f=13)
-   -   ZX Spectrum: аппаратная реализация на восьми микросхемах (http://zx-pk.ru/showthread.php?t=13747)

Lisitsin 6th April 2011 19:31

Quote:

Originally Posted by Клон (Post 373419)
Эмулятор спектрума и так есть на ПЦ. В чем разница? Если просто для спортивного интереса, то тут дело хозяйское.

Это попытка сделать ZX Spectrum на максимально простой аппаратной реализации, доступной к сборке любым радиолюбителем.

Клон 6th April 2011 19:59

Quote:

Originally Posted by Lisitsin (Post 373424)
Это попытка сделать ZX Spectrum на максимально простой аппаратной реализации, доступной к сборке любым радиолюбителем

это , в принципе, уже сделано, и более проще и изящно.

ULA нет...

Вот если бы сделать

один корпус ULA (любой клон)
один корпус AY
один корпус ВГ93
один корпус Z80 (для спортивного интереса)

вот эти задачки были бы интересны, о чем кодермастер и говорил...

---------- Post added at 18:59 ---------- Previous post was at 18:53 ----------

Quote:

Originally Posted by BYTEMAN (Post 373422)
Дык уже ULAPlus вроде как уже сделали....

вот было бы неплохо ULA
классическую на 40 выводах с разводкой под фирменный 48к и 128к

и ULA Amstrad 100 выводов.

Копировать один в один необязательно, что должен делать этот черный ящик и так знают, он на рассыпухе и так вскрыт, делай реализуй на матрице ну или на проце, если сможешь без обвеса уложиться...

goodboy 6th April 2011 20:07

Quote:

Originally Posted by Lisitsin (Post 373424)
Это попытка сделать ZX Spectrum на максимально простой аппаратной реализации, доступной к сборке любым радиолюбителем.

а на чём им прошивать микроконтроллеры ? да и припаяет их далеко не каждый радиолюбитель.

AHTuXPuCT 6th April 2011 20:13

goodboy - радиолюбитель припаяет всё!

osa 6th April 2011 20:34

AVR - LPT 5 Проводков:)

Клон 6th April 2011 20:53

Quote:

Originally Posted by goodboy (Post 373429)
а на чём им прошивать микроконтроллеры ? да и припаяет их далеко не каждый радиолюбитель.

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

---------- Post added at 19:53 ---------- Previous post was at 19:51 ----------

Quote:

Originally Posted by goodboy (Post 373429)
прошивать микроконтроллеры

здесь предпринимателей много, сразу начнут продавать прошитые на любой скус по сходной цене

Higgins 6th April 2011 22:14

1 Attachment(s)
Lisitsin, вы здесь? За толпой доброжелателей не разглядеть. :)

Попробуйте тест в приложении. Загружается и запускается так же.

Lisitsin 6th April 2011 23:18

Я здесь ...
Нашёл ряд ошибок в формировании S флага после инструкций CP8. Тест сейчас загружу.

Lisitsin 6th April 2011 23:33

Тест короткий? Сразу вижу сею картинку: (вложение)
СР исправил, но буква "n" в РОВОСОРе всё равно кривляется.
Есть ещё кое какой нюанс с (HL): на границе 3fff-4000 читает оба байта из ROM, а на границе ffff-0000 читает оба байта из RAM. Не знаю насколько это смертельно.

Higgins 7th April 2011 01:20

Quote:

Originally Posted by Lisitsin (Post 373495)
Сразу вижу сею картинку:

Отлично. Это значит, что "ADD A, #00" и "ADD A, (HL)", где в (HL) лежит #00 дают различие в AF.

Условие для трассировки: PC=#48AC ИЛИ #48AE ИЛИ #48BD ИЛИ #48BE. Регистры PC, HL и AF.

Lisitsin 7th April 2011 18:17

[QUOTE=Higgins;373536]
Как я понял, это для Higgins_alu_hl?
Тогда во вложении.

fifan 7th April 2011 18:22

Господа, уже около 600 топиков, а дела не движутся. Хотелось бы обсуждать уже железку, а не эмуляцию кода и не среди всего двух человек. Наверное есть для этого личка. Любой зашедший в эту тему со стороны (я то слежу с первого топика) ничего не увидит кроме диалога.

Lisitsin 7th April 2011 19:14

Quote:

Originally Posted by fifan (Post 373722)
Господа, уже около 600 топиков, а дела не движутся. Хотелось бы обсуждать уже железку, а не эмуляцию кода и не среди всего двух человек. Наверное есть для этого личка. Любой зашедший в эту тему со стороны (я то слежу с первого топика) ничего не увидит кроме диалога.

А можно в личку файлы слать? что-то я не понял как.

Higgins 7th April 2011 21:00

Quote:

Originally Posted by Lisitsin (Post 373716)
TRACE_HIGGINS _ALU_HL_1.zip

Снова кладем в память одно, а читаем из нее другое:

Quote:

#48AC ADD A, #FF ; AF = #FEB9
#48AE PUSH AF
#48AF POP IY
#48B1 LD (#48DB), IY ; сохраняем
...
#48BA LD HL, #48AD
#48BD ADD A, (HL) ; AF = #FEB9 тоже, что очень хорошо
...
#48C1 LD IY, (#48DB)
#48C5 LD A, IYH ; A = #FF вместо сохраненного #FE
Очень похоже на прежние проблемы.

Quote:

Originally Posted by fifan (Post 373722)
Господа, уже около 600 топиков, а дела не движутся. Хотелось бы обсуждать уже железку, а не эмуляцию кода и не среди всего двух человек. Наверное есть для этого личка. Любой зашедший в эту тему со стороны (я то слежу с первого топика) ничего не увидит кроме диалога.

На мой вкус, работать через личку и не удобно, и не правильно. Можно просто договориться, что Lisitsin сделает отдельную тему для анонсов по этой железке. Когда и если до них дойдет дело. :)

Lisitsin 7th April 2011 21:07

Отлично !!! Работаю.

BYTEMAN 7th April 2011 21:15

Quote:

Originally Posted by fifan (Post 373722)
Господа, уже около 600 топиков, а дела не движутся. Хотелось бы обсуждать уже железку, а не эмуляцию кода и не среди всего двух человек. Наверное есть для этого личка. Любой зашедший в эту тему со стороны (я то слежу с первого топика) ничего не увидит кроме диалога.

Я наоборот слежу за этим топиком, т.к. интересно узнать тонкости эмуляции Z80-ядра. Так что, думаю, пусть наши друзья пишут здесь ;)

Geban 8th April 2011 09:56

поддерживаю BYTEMAN

Lisitsin 9th April 2011 19:42

Нашёл ошибки в эмуляции команд LD (nn), IX, LD (nn), IY. После исправления трейсинг изменился в лучшую сторону (вложение), но проблемы с игрушками всё равно остаются. Запускаю zexall.

Higgins 9th April 2011 21:19

Quote:

Originally Posted by Lisitsin (Post 374437)
TRACE_HIGGINS _ALU_HL_1_1.zip

Здесь все проходим. Если zexall в этой части не пройдем, тогда понадобится больше строк.

Lisitsin 10th April 2011 01:25

Последние результаты:

Lisitsin 10th April 2011 02:04

Собрал тут композитный видеокодер (схема во вложении), но что-то плохо он работает (http://www.youtube.com/watch?v=XxrYCxRu_c0). В динамике вообще теряется.

fifan 10th April 2011 06:54

1 Attachment(s)
Интересное подключение кварца Q1. И зачем транзистор VT1 нужен? Эта схема работала когда ставишь генератор на ЛН1 с соответствующим кварцем и подаёшь на вывод 6 D1.

Lisitsin 10th April 2011 09:42

Quote:

Originally Posted by fifan (Post 374555)
Интересное подключение кварца Q1. И зачем транзистор VT1 нужен? Эта схема работала когда ставишь генератор на ЛН1 с соответствующим кварцем и подаёшь на вывод 6 D1.

Вот и я говорю. Плохо что-то она работает. В даташите пишут, что размах синхронизации должен быть почти от пола и почти до потолка, а там меньше вольта получается.
http://www.youtube.com/watch?v=4ywDLit-Jh0 - в цвете

zorel 10th April 2011 11:56

Lisitsin, отсутствует красный и голубой, зеленый. По идее регулируется на входе палкодера, подстроечными резисторами.
Так должно выглядеть ftp://ftp.worldofspectrum.org/pub/si...bowIslands.gif

Higgins 10th April 2011 13:25

Quote:

Originally Posted by Lisitsin (Post 374535)
Последние результаты:

При этом z80test все еще проходим?

Lisitsin 10th April 2011 13:30

Quote:

Originally Posted by Higgins (Post 374587)
При этом z80test все еще проходим?

В начале всё проходит, в конце - во вложении.
Появляется и пропадает странный глюк: при PRINT 2 в бейсике пишет 1. (и не только 2). При этом DAA Z80tests проходит. Можно сделать трейсинг с момента 1024:ED-ENTER после команды PRINT 1.

Higgins 10th April 2011 15:48

1 Attachment(s)
Quote:

Originally Posted by Lisitsin (Post 374589)
В начале всё проходит, в конце - во вложении.

Попробуйте тест во вложении. Он тестирует инструкции вида "alu A, A".

Lisitsin 10th April 2011 16:18

Quote:

Originally Posted by Higgins (Post 374607)
Попробуйте тест во вложении.

Попробовал:

Higgins 10th April 2011 16:28

Quote:

Originally Posted by Lisitsin (Post 374611)
Попробовал:

Имеем следующее:
1) Видимо правильно работающие инструкции ALU и
2) Ошибку ZEXALL на этих инструкциях.

Остается подозревать код счета контрольной суммы в ZEXALL. Попробую найти подходящее условие для трейсинга.

Quote:

Originally Posted by Lisitsin (Post 374589)
Появляется и пропадает странный глюк: при PRINT 2 в бейсике пишет 1. (и не только 2). При этом DAA Z80tests проходит. Можно сделать трейсинг с момента 1024:ED-ENTER после команды PRINT 1.

Это ценная информация. Давайте разберемся с ALU и затем посмотрим на этот глюк внимательнее.

* * *

UPDATE: Условие такое. Тресинг начинаем после того, как управление пятый раз пройдет по адресу PC=#9A0B. Это значит, начинаем трейсинг с пятого теста. В самом трейсинге в моменты прохождения управления через PC=#9C41 выводим содержимое четырех смежных ячеек: #9D5F, #9D60, #9D61 и #9D62. В них хранится текущая контрольная сумма.

Lisitsin 10th April 2011 18:40

Начало такое:

Higgins 11th April 2011 14:00

1 Attachment(s)
Quote:

Originally Posted by Lisitsin (Post 374662)
TRACE_ZEXALL_ALU.zip

Здесь совпадаем.

Всего в трейсинге для пятого теста у меня получилось 770049 строк. В приложении архив с тресингом каждой тысячной строки. Если сможете вывести только эти тысячные строки, посмотрите, с какой строки начинается различие.

Lisitsin 12th April 2011 18:14

По всей видимости с контрольной суммой порядок, и при всём этом пятый тест проваливается:

Higgins 12th April 2011 19:31

Quote:

Originally Posted by Lisitsin (Post 375326)
По всей видимости с контрольной суммой порядок, и при всём этом пятый тест проваливается:

Давайте все-таки проверим это до конца. Сможете вывести все контрольные суммы начиная со строки

Quote:

770000 55 9c 03 08
и до начала шестого теста?

Lisitsin 12th April 2011 21:27

Quote:

Originally Posted by Higgins (Post 375356)
Сможете вывести все контрольные суммы начиная со строки
и до начала шестого теста?

На четвёртые сутки всё ж таки поймал:

Higgins 15th April 2011 13:20

Quote:

Originally Posted by Lisitsin (Post 375395)
TRACE_ZEXALL5_3.rar

Сравнение контрольных сумм дает ошибку. При этом сама контрольная сумма правильная -- 1DFD7864. На вашем скриншоте тест выдает эту сумму, а ожидает по какой-то причине 06C7AA8E.

Попробую узнать, откуда может взяться неправильная эталонная сумма.

* * *

Эталоны лежат в памяти начиная с #8105 для первого теста и далее для каждого теста со смещением #5F:

Тест 1: #8105
Тест 2: #8164
Тест 3: #81C3
Тест 4: #8222
Тест 5: #8281
Тест 6: #82E0

Нам нужен шестой тест. В моем снапшоте по адресу #82E0 я вижу ожидаемое 1D FD 78 64.

Код сверки с эталонной суммой можно поймать по адресу #9D0F. В этот момент в HL должен быть адрес эталонной суммы.

Вопрос в том, чему у вас равно значение HL при проходе через #9D0F для нашего шестого теста. И если это значение правильное (#82E0), то что лежит по этому адресу. А если там лежит 1D FD 78 64, то почему "CP (HL)" в коде сверки не дает взведенный ZF.

Lisitsin 15th April 2011 19:32

Для шестого теста по проходу через #9d0f вывожу PC:HL:[82E3]:[82E2]:[82E1]:[82e0]:

Higgins 16th April 2011 10:45

1 Attachment(s)
Quote:

Originally Posted by Lisitsin (Post 376378)
TRACE_ZEXALL5_4.zip

Первая строка:

Quote:

9d0f 82e0 8e aa c7 06
Это значит, что к моменту проверки мы приходим с правильным адресом эталонной суммы, но сама эталонная сумма неправильная. Посмотрю, откуда она там такая берется.

* * *

Эталоны сумм лежат на месте сразу после загрузки. Никаких распаковываний или перемещений. Каким образом у вас загружается код так, что эталон получается настолько непохожим -- загадка.

* * *

Так. :) Еще раз: берем версию теста, которую я давал здесь:

http://zx.pk.ru/showthread.php?p=369566#post369566

Судя по скриншотам, вы грузите оригинальную версию. :)

Lisitsin 16th April 2011 17:58

упс !!! что-то не похоже. Распаковывалась как zexall. Скачал zexfix, пробую

Higgins 16th April 2011 19:47

Quote:

Originally Posted by Lisitsin (Post 376598)
упс !!! что-то не похоже. Распаковывалась как zexall. Скачал zexfix, пробую

В архиве лежит zexfix.tzx .

Lisitsin 16th April 2011 20:46

:v2_conf2:Вот что переутомление делает ...
Скачал и запустил zexfix. А выгдядит начало прямо как zexall.
Шесть тестов прошло, седьмой валится. Тестируется дальше


All times are GMT +4. The time now is 16:58.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.