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 13th March 2011 01:17

1 Attachment(s)
Ошибку с избыточным инкрементированием нашёл.
Первые 2 строки исправились, а третья что-то не хочет:

Higgins 13th March 2011 11:22

Quote:

Originally Posted by Lisitsin (Post 365830)
Первые 2 строки исправились, а третья что-то не хочет:

NF надо сбрасывать. В обеих инструкциях.

Lisitsin 13th March 2011 13:58

1 Attachment(s)
Такая хорошая погода на улице. Весна: солнышко, птички ...
А слово FAILED всё настроение портит.

Higgins 13th March 2011 14:06

Quote:

Originally Posted by Lisitsin (Post 365921)
А слово FAILED всё настроение портит.

HF тоже сбросьте, и настроение поднимется. :)

Lisitsin 13th March 2011 14:27

1 Attachment(s)
И вправду !!! Слово PASSED на настроение влияет с обратной логикой.

Higgins 13th March 2011 14:36

Quote:

Originally Posted by Lisitsin (Post 365930)
И вправду !!!

Условие для "BIT n, (HL)": PC=#8858 ИЛИ #885A ИЛИ #885D ИЛИ #885F ИЛИ #8862 ИЛИ #8864 ИЛИ #8867 ИЛИ #8869 ИЛИ #886C ИЛИ #886E ИЛИ #8871 ИЛИ #8873 ИЛИ #8876 ИЛИ #8878 ИЛИ #887B ИЛИ #887D. Регистры PC, HL, AF.

Lisitsin 13th March 2011 15:46

1 Attachment(s)
Я условие сделал #8858<=PC<=#887d

Higgins 13th March 2011 17:12

Quote:

Originally Posted by Lisitsin (Post 365948)
TRACE_BIT(HL)_1.zip

Во второй строке неправильно установлены флаги 3 и 5.

Как устанавливать эти флаги:
- Для "BIT n, r" -- копируются разряды 3 и 5 регистра "r".
- Для "BIT n, (HL)" -- копируются разряды 3 и 5 старшей половины MEMPTR. Сам MEMPTR при этом не меняется.
- Для "BIT n, (i+d)" -- тоже копируются разряды 3 и 5 старшей половины MEMPTR. Но поскольку это индексная инструкция, MEMPTR получает значение адреса (i+d). Копировать разряды из MEMPTR следует после присваивания ему (MEMPTR) значения адреса.

Lisitsin 13th March 2011 19:13

1 Attachment(s)
А у меня MEMPTR ущё и не после каждой команды отрабатывается, после которой его нужно обрабатывать. BIT (IX/Y+d) исправил. BIT n (HL) и BIT n,r в отношении битов 3 и 5 прописаны.

Higgins 13th March 2011 19:33

Quote:

Originally Posted by Lisitsin (Post 365977)
А у меня MEMPTR ущё и не после каждой команды отрабатывается, после которой его нужно обрабатывать. Я его начал прописывать по Шону Янгу, но пока только до половины документа. BIT (IX/Y+d) исправил. BIT n (HL) и BIT n,r в отношении битов 3 и 5 прописаны.

Процедура тестирования для "BIT n, (HL)" начинается по адресу #8855. Вызывается она инструкцией "CALL #8855". Эта инструкция копирует #8855 в MEMPTR, поэтому тестирование всегда начинается с этого значения MEMPTR.

Во второй строке у вас F=#38 вместо #18. Старшая половина пправильного значения MEMPTR = #88 = %10001000 -- 3-й и 5-й разряды сброшены.

Если MEMPTR для "CALL #nn" не реализован, то сейчас самое время.


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

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