Я снова с другим безобидным вопросом Z80 :-) Так как ядро ядра эмулятора в настоящее время структурировано, я увеличиваю младшие 7 бит регистра обновления памяти каждый раз, когда байт кода операции извлекается из памяти - это означает для многобайтовых инструкций, таких как те, которые начинают DD или FD, я увеличиваю регистр дважды - или в экземпляре инструкции, такой как RLC (IX + d) три раза (так как он выложен opcode1-opcode2-d -opcode3).Z80 memory refresh register
Это правильно? Я не уверен - руководство Z80 немного неясно, так как это говорит о том, что CPDR (двухбайтная команда) увеличивает его дважды, однако в разделе «Реестр обновления памяти» просто говорится, что он увеличивается после каждой выборки команд. Я заметил, что J80 (эмулятор, который я проверил, поскольку я не уверен в этом), только увеличивается после первого байта кода операции инструкции.
Что именно? Думаю, это не очень важно в любом случае, но было бы неплохо узнать :-) Большое спасибо.
С уважением, Фил Поттер
Я бы подумал, что инструкция CPDR увеличит регистр обновления памяти не один раз, не дважды, а столько раз, сколько будет повторяться, поскольку это повторяющаяся инструкция. (И я сомневаюсь, что ожидалось, что память не будет обновляться в течение всей продолжительности повторяющихся инструкций.) –