Абсолютно то же самое. Но не "внутри", а "снаружи" и не на асме Z80, а на чём-то более высокоуровневом. Никакой разницы чем ты будешь выводить содержимое ячеек, или выводить графику на основной экран - нет.
Однако налицо намного более высокая гибкость: в твоём варианте - событие только одно - INT, а тут событий может быть множество (указатель команды равен какому-то значению или содержимое памяти). Рисовать можно как внутри спектрумовского экрана, так и где-нибудь снаружи.
Если цель именно удобство отладки, "умная отладка" с контролем внутренностей, а не создание 2-х процессорного эмулятора, то мы говорим о решении одной и той же проблемы.
Если пугает необходимость знать что-то кроме асма z80 (ты как-то на нём зациклился, пытаясь все отладочные процедуры сделать на нём), то страх нужно преодолеть =)
Вот то-то и оно. А ко мне тоже друг заходил и сказал: "о! то, о чём ты говоришь — эквивалентно двухпроцессорному эмулятору-отладчику! но не ломает хода выполнения программы, не даёт побочных эффектов, и отлаживаемая и анализируемая программа не заметит разницы исполняется ли она на реальном спектруме или под отладчиком со скриптом. В отличие от двухпроцессорного варианта, где и растактовка и обработка прерываний будут отличаться и могут привести к трудновылавливаемым глюкам. Но, старик, у тебя так и не получилось объяснить это мне, представь как трудно будет объяснить это человеку, увлечённому своей взлелеянной идеей о двупроцессорном отладчике. Ты ничего не сможешь ему объяснить!" =)
P.S. У тебя объяснить получилось. Двупроцессорная идея милая, по своему революционная, но для умной отладки и контроля за внутренним состоянием программы - не подходящая, так как отладочная часть имеет побочные эффекты на отлаживаемую программу. Задача умной отладки на других платформах решается по-другому: контроль за состоянием эмулятора, отработка скриптов по событиям (см. выше). Скрипты могут показывать всё то же самое, что и твои z80-процедуры на виртуальных прерываниях, только проще, эффективнее и менее пагубно для отлаживаемой программы =)





Ответить с цитированием