nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 13:18



Reply to topic  [ 45 posts ]  Go to page Previous  1, 2, 3
search Z80 CPU DIAGNOSTIC code 
Author Message
God

Joined: 02 Jan 2006 02:28
Posts: 1390
Location: Abakan
Reply with quote
in a,(n)/out (n),a: A8..15=a, A0..A7=n


04 Oct 2016 19:50
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
jdigreze wrote:
in a,(n)/out (n),a: A8..15=a, A0..A7=n

да - похоже это оно...
и мне не понравилось, или смутило: A8..15=a.
Получается, мы говорим, что адрес у команд в/в теперь полный 16-разрядный.
И выходит, изменяя А, и не меняя n мы делаем out по разным 16-разрядным адресам?
А в i8080 это обращение всегда по одному 16-разрядному адресу.
Вот смысл этой особенности у z80 от меня и ускользнул... :-?

_________________
iLavr


04 Oct 2016 20:53
Profile
God

Joined: 02 Jan 2006 02:28
Posts: 1390
Location: Abakan
Reply with quote
Lavr wrote:
и мне не понравилось, или смутило: A8..15=a.
Получается, мы говорим, что адрес у команд в/в теперь полный 16-разрядный.
И выходит, изменяя А, и не меняя n мы делаем out по разным 16-разрядным адресам?
Именно так. Видимо у инженеров Zilog на этот счёт было своё особое мнение. Есть подозрение, что задумывалось это в расчёте на микропроцессорный комплект, но как показала история, это по большей части осталось не востребованным. Хотя... Слишком мало я знаю ;)


05 Oct 2016 07:55
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
jdigreze wrote:
Lavr wrote:
И выходит, изменяя А, и не меняя n мы делаем out по разным 16-разрядным адресам?
Именно так. Видимо у инженеров Zilog на этот счёт было своё особое мнение.
Так-то похоже на косвенное обращение к УВВ, но менять можно только старший индекс...
Хотя просто косвенное уже есть через пару [BC].

Для чего интелловцы кинули в старший и младший одно число - я знаю: помогает упростить дешифрацию в простых случаях.
А вот ход мысли инженеров Zilog для меня пока загадка...

_________________
iLavr


05 Oct 2016 09:36
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
jdigreze wrote:
in a,(n)/out (n),a: A8..15=a, A0..A7=n

действительно, здесь у меня ошибка, я в старший байт выдаю регистр В вместо А для z80


05 Oct 2016 13:37
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
Смотрел на длительность выполнения команд и нашел еще ошибку, на лишних 255 тактов дольше одна из команда выполняется... :ebiggrin: поправил это, и начал смотреть на потактовое выполнение команд в известной книге Z80 Central Processor Unit, а именно табличку:
Attachment:
t6_3.PNG
t6_3.PNG [ 101.55 KiB | Viewed 14323 times ]

IOP - это внутренние операции ЦП, а MRD и MWR это обращения к памяти, так вот по большей части все обращения по 3 такта, но редко попадаются по 4! и я не увидел, где бы говорилось как получается этот один дополнительный такт, добавлять ли его как при сигнале wait?
Сейчас в dll все MRD и MWR циклы по 3 такта, а IOP увеличены на 1 такт, для выравнивания общей длительности.
Еще, исправил ошибку с выставлением флагов на паре групп команд, которую внес уже после прогона теста по этой группе, но которая попала в dll выложенную ранее, плюс ввел в dll информацию о версии, пишется в консоль логирования x80.dll - Version 1. Старый архив убрал, вместо него выложил новый.


09 Oct 2016 13:22
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
PVV wrote:
....я не могу понять как этот макрос раскручивается, и ассемблер на этот макрос ругается...

А у тебя какой ассемблер? У меня ни одного ассемблера для z80 нет (стыдобищще!) :osad:
Присоветуй ассемблерчик-то, и где скачать... и он в Протеус привяжется, ну как я тут объяснял?

_________________
iLavr


27 Oct 2016 10:12
Profile
Writer

Joined: 22 Oct 2016 02:36
Posts: 12
Location: Moscow, Russia
Reply with quote
Lavr wrote:
Присоветуй ассемблерчик-то, и где скачать... и он в Протеус привяжется, ну как я тут объяснял?


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

_________________
http://ziduino.ucoz.org/


27 Oct 2016 10:28
Profile ICQ WWW
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
Lavr wrote:
Присоветуй ассемблерчик-то, и где скачать... и он в Протеус привяжется, ну как я тут объяснял?

я использую zmac, он есть в архиве download/file.php?id=1173 и я его, вроде как в исходнике нашел, только не проверял еще, собираются исходники или нет. Так что, если исходники получится собрать, то можно их и подправить, что бы получался сразу .SDI файл.

x80.dll я сейчас активно гоняю по всем трем тестам Exerciser для z80, i8080 и i8085,
Attachment:
wn.png
wn.png [ 118.01 KiB | Viewed 14219 times ]

все это весьма долго, времени не хватает охватить сразу все...
Реализовал абсолютно весь функционал для всех cpu, все прерывания, захват шины, плюс поддержка отладки в proteus, нужно только проверять...
в архиве Z80 Instruction Exerciser.zip новая dll - Version 7 и доработанные исходники тестов.
zmac.zip - исходники, которые я нашел...


Attachments:
Z80 Instruction Exerciser.zip [74.5 KiB]
Downloaded 510 times
zmac.zip [120.61 KiB]
Downloaded 488 times
27 Oct 2016 12:56
Profile
Doomed

Joined: 12 Feb 2016 13:39
Posts: 463
Reply with quote
и проекты для proteus.
После сборки нужно начало бинарника отрезать для этих схем,
например, в linux: dd if=8085ex1.cim of=8085ex.bin skip=16128 bs=1


Attachments:
Exerciser_proteus_prj.zip [698.65 KiB]
Downloaded 504 times
27 Oct 2016 13:13
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
PVV wrote:
я использую zmac, он есть в архиве download/file.php?id=1173 и я его, вроде как в исходнике нашел, только не проверял еще, собираются исходники или нет. Так что, если исходники получится собрать, то можно их и подправить, что бы получался сразу .SDI файл.

Спасибо большое! :kruto: - Скачал этот zmac, посмотрю... и остальной софт скачал!

Да у меня получается два фронта - на старом ноуте неплохой весьма неглючный старый Протеус, но скорость, конечно, для эмуляции аховая...
А на новом ноутбуке - там пошустрее все - Интел Атом 2 ГГц и Венда-7 и Протезус поновее,
но получается, если я что-либо под ним делаю - назад это уже несовместимо.
А у меня весь основной объём полезных наработок под старым Протезусом. :osad:

_________________
iLavr


27 Oct 2016 13:32
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
SergNR wrote:
Lavr wrote:
Присоветуй ассемблерчик-то, и где скачать... и он в Протеус привяжется, ну как я тут объяснял?


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


Только что одобрил это сообщение

_________________
:dj: https://mastodon.social/@Shaos


28 Oct 2016 05:45
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Только что одобрил это сообщение

Устаю в пятницу к вечеру... доооооолго думал, что же ты одобрил... с запозданием до меня дошло! :mrgreen:

SergNR wrote:
Есть z80asm в исходниках. Написан на сях, сам собирать не пробовал, пользуюсь готовой сборкой

Спасибо - сейчас попробую найти... как-то полный провал у меня в компиляторах под z80...

_________________
iLavr


28 Oct 2016 10:12
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
Lavr wrote:
PVV wrote:
я использую zmac, он есть в архиве download/file.php?id=1173 и я его, вроде как в исходнике нашел, только не проверял еще, собираются исходники или нет. Так что, если исходники получится собрать, то можно их и подправить, что бы получался сразу .SDI файл.

Спасибо большое! :kruto: - Скачал этот zmac, посмотрю...

Лучше последнюю модификацию брать: http://www.nedopc.org/forum/viewtopic.php?f=62&t=7939

_________________
:dj: https://mastodon.social/@Shaos


28 Oct 2016 10:20
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Приподниму... ибо не сразу нашел...

_________________
iLavr


02 Jul 2019 10:33
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 45 posts ]  Go to page Previous  1, 2, 3

Who is online

Users browsing this forum: No registered users and 13 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.