Вход

Просмотр полной версии : Недокументированные команды z80



tae1980
06.12.2018, 22:43
Доброго времени суток!

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

PATHNK
06.12.2018, 22:51
Полно (http://www.z80.info/z80undoc.htm).

tae1980
06.12.2018, 23:32
PATHNK, Прочитал по вашей ссылки и сам нашел вот это The Undocumented Z80 Documented.
Но вопрос снят только частично. Есть списки команд, есть их коды. Но с ними сложно работать так как они идут "все кучей". Минут 20 искал в "The Undocumented Z80 Documented" коды команд inc IXh и inc IYh, полчаса пытался понять смысл таблицы влияния на флаги, но не смог.
Понимаю, что это исключительно мои трудности, но разве нет информации в таблицах как в "Программировании в машинных кодах" от Инфоркома? Все наглядно, понятно, быстро ищется.
Файндридер в руки и вперед?

goodboy
06.12.2018, 23:44
коды команд inc IXh и inc IYh
это можно сказать - ширпотреб. экзотика скорее in a,(c) или out (c),0

Shiny
07.12.2018, 09:21
Зачем они нужны? от большинства только гимор один.

tae1980
07.12.2018, 09:40
Shiny, лично мне хватило регистров 8 битных регистров в алгоритме. Решил использовать IX и IY.

PATHNK
07.12.2018, 10:41
Но вопрос снят только частично
Напишите свою статью. Вот еще с worldofspectrum.org (http://www.worldofspectrum.org/z88forever/dn327/z80undoc.htm) и т.д.
Некоторые аналоги Z80 не поддерживают такие команды.

tae1980
07.12.2018, 11:07
PATHNK, в планах внести изменения в текст книги "Программирование в машинных кодах и на языка АССЕМБЛЕРА" от Инфоркома. Вообще провести небольшую актуализацию материала. Так как её форма подачи материала меня устраивает на 100%. Бумажная версия лежит на столе и использоваться постоянно.
Так уж получилось, что создал параллельную темы (https://zx-pk.ru/threads/29840-quot-programmirovanie-v-mashinnykh-kodakh-i-na-yazyka-assemblera-quot-ot-inforkoma.html?p=990257&viewfull=1#post990257). Когда будут достойные результаты, выложу их там.


Некоторые аналоги Z80 не поддерживают такие команды.
Видел материал об этом. Но насколько понял, это очень не большое число команд, связанных с вводом/выводов в порты.
Об этом так же можно указать в тексте. Так как в настоящее время планирую работать только под Profi в CP/M, что могу сильно ограничить вопросы к железу (всё спорные моменты указать в сносках).

Denn
07.12.2018, 13:34
Некоторые аналоги Z80 не поддерживают такие команды.

Вот только из-за этого я бы уже в принципе не стал связываться

Raydac
08.12.2018, 13:23
команда z80 состоит из полей которые диктуют поведение (http://www.z80.info/decoding.htm) и по ним видно поведение и документированных и в разных странных режимах

tae1980
08.12.2018, 14:12
Raydac, Интересно. То есть можно все посчитать математически. Нужно будет попробовать написать алгоритм разбора всех возможных комбинаций.
Можно сделать вывод, что любые команды явятся корректными, не важно описаны они или нет. А если их железо не поддерживает - вопросы к глючному железу.

Raydac
08.12.2018, 14:20
Raydac, Интересно. То есть можно все посчитать математически. Нужно будет попробовать написать алгоритм разбора всех возможных комбинаций.
Можно сделать вывод, что любые команды явятся корректными, не важно описаны они или нет. А если их железо не поддерживает - вопросы к глючному железу.

я попробовал в свое врема, вроде как вполне работает (https://github.com/raydac/zxpoly/blob/85306bf3224d6c875218f321290cde65792597f4/z80/src/main/java/com/igormaznitsa/z80/Z80.java#L1051)

tae1980
08.12.2018, 15:34
Raydac, а как это запускать? Ни когда не имел дела с ява.
Если на выходе файл, можно получить его?

Shiny
08.12.2018, 16:49
и этот светоч собрался писать книгу об ассемблере.

Raydac
08.12.2018, 17:01
Raydac, а как это запускать? Ни когда не имел дела с ява.
Если на выходе файл, можно получить его?

да в принципе в любом Java IDE открыть проект, можно взять тот же IDEA community edition или NetBeans, это уже кто что юзает, там есть тесты на команды процессора (https://github.com/raydac/zxpoly/blob/master/z80/src/test/java/com/igormaznitsa/z80/Z80Test.java), можно посмотреть как там сделано, каждый тест в IDE можно отдельно запускать

tae1980
08.12.2018, 23:23
Shiny, обычно я стараюсь избегать дрязк, тем более в обществе своих. Поэтому игнорировал ваши бредни. Но ваш последний бред - это клевета и прямой наезд, за которую у нас бьют морду.
Я конечно понимаю, что понятие меры и чести у подобных вам людей отсутствует, но это не оправдывает ваше недержание.
Я ни разу не назвал себя программист и считаю себя и людей подобных мне "продвинутыми пользователями", или есть еще такое слово "компьютерщик".
Я понимая, что логика для вас непостижима, но замечу, что вы не найдете ни одной фразы вида "я хочу написать книгу". Я понимаю, что связывать отдельные слова в предложения, а уж тем более понимать их смысл для людей вашего толка вещь мифическая. Но во всех своих сообщениях я писал лишь о том, что хочу переформатировать текст по современным требованиям, исправить опечатки, дополнить табличную информацию недокументированными командами. Замечу, что не собираюсь их "придумывать", а возьму за основу данные из других публичных источников.
Подобная деятельность называться - редактурой. Но ваше образование не позволяет вам это знать.

Прошу вас впредь, здесь и в любых других местах, игнорировать моё существованию. Что я собираюсь делать относительно вас. Жаль на форуме нельзя настроить личный бан (классическая фидошная функция).

- - - Добавлено - - -


в любом Java IDE открыть проект
Для меня сложность этой задачи весьма велика. Ни разу в жизни не имел дел ни с одним "Java IDE" или чем-то подобным. Старался держать от ява как можно дальше (в связи с идеологическими разногласиями). Кроме того, старюсь не ставить на комп то чем не буду пользоваться постоянно.
За материал, огромное спасибо! Постараюсь отработать его по полной когда буду составлять таблицы команд.

SoftLight
08.12.2018, 23:58
Жаль на форуме нельзя настроить личный бан (классическая фидошная функция).
Ну почему нельзя? Можно: В шапке форума "Кабинет" - слева "Список игнорирования" - и там добавляете кого хотите в игнор.

Shiny
09.12.2018, 04:32
Shiny, обычно я стараюсь избегать дрязк, тем более в обществе своих. Поэтому игнорировал ваши бредни. Но ваш последний бред - это клевета и прямой наезд, за которую у нас бьют морду.

Боксер по переписке? ну ступай по холодку, непризнанный гений.

tae1980
09.12.2018, 09:16
SoftLight, О, спасибо! Воспользовался.