Я критически эту идею со здоровыми таблицами обдумал... складывается у меня
мнение что одними таблицами мы пожалуй не обойдемся - это раз...
А во-вторых, как мне кажется, в таблице будет очень много повторяющихся участков... так?
Может тогда не делать их столь большими, а что-то решить логически?
Конечно в таблице будет очень много повторения.
А конкретно начало первого цикла каждой команды.
Подумываю в направлении реализации первого цикла отдельно,
затем по коду операции в таблицу (на 256 строк) и далее ...
Таблицы чем хороши - наглядностью и модифициромустью (сложное слово).
Сейчас таблица чисто тупо адресуется [код команды][номер такта]
Функция, реализующая кждый такт что-о делает (в настоящий
момент только дергает ногами) и меняет номер такта
(и есть возможность менять код команды) для следующей
обработки. Эти функции в качестве парамеров принимают
состояние входа CLK, я думмаю теперь они буду принимать сотояние
Ф1 и Ф2. И еще внутри проверять, что за процессор ...
Для обработки прерываний и для длинных команд Z80 думаю
в обработчиках менять код команды - к примеру обработка
прерываний - 256, ПДП -257, чтото длинное от Z80 - будет дальше...
Этот вопрос с таблицами - не таблицами нужно решить сейчас.
И по поводу M1 - так и непонятно:
NOP - 1 раз M1
MOV A,B - 1 раз M1
MVI A,# - 1 или 2 раза M1 ?
LXI HL,## - 1 или 3 раза M1 ?
Пишу с стиле 8080 поскольку Z80 нокогда не
спользовал (да и не было его у меня, и пока не нашел)
MessageBox - он очень утомляет...
Это пока только для отладки самой модели.