nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 17 Nov 2018 17:42



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

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


04 Oct 2016 20:50
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09: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 21:53
Profile
God

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


05 Oct 2016 08:55
Profile
Supreme God
User avatar

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

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

_________________
iLavr


05 Oct 2016 10:36
Profile
Maniac

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

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


05 Oct 2016 14:37
Profile
Maniac

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

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


09 Oct 2016 14:22
Profile
Supreme God
User avatar

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

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

_________________
iLavr


27 Oct 2016 11:12
Profile
Writer

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


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

_________________
http://ziduino.ucoz.org/


27 Oct 2016 11:28
Profile ICQ WWW
Maniac

Joined: 12 Feb 2016 14:39
Posts: 299
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 3333 times ]

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


Attachments:
Z80 Instruction Exerciser.zip [74.5 KiB]
Downloaded 53 times
zmac.zip [120.61 KiB]
Downloaded 50 times
27 Oct 2016 13:56
Profile
Maniac

Joined: 12 Feb 2016 14:39
Posts: 299
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 48 times
27 Oct 2016 14:13
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09: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 14:32
Profile
Admin
User avatar

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


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


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

_________________
:eugeek: https://twitter.com/Shaos1973


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

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

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

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

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

_________________
iLavr


28 Oct 2016 11:12
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17130
Location: Colorado
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

_________________
:eugeek: https://twitter.com/Shaos1973


28 Oct 2016 11:20
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 44 posts ]  Go to page Previous  1, 2, 3

Who is online

Users browsing this forum: No registered users and 5 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.