Цитата:
Встречный вопрос? А какая совместимость у вашего решения? Так же с конкретной программой (ассемблером), вот я нее могу её использовать, так как не могу использовать ваш ассемблер. В чём разница для конечного пользователя?
Текстовый файл с брейкпойнтами можешь хоть вручную создавать. И про совместимость я имею ввиду изменения в эмуляторе, где ты предлагаешь отладчику эмулятора выскакивать по каким-то только тебе ведомым наборам байт, тем самым сломав нормальную работу у остальных программ, которые не должны так реагировать.
Цитата:
А в чём проблема? Обычно монитор ставит ловушку, как правило 2 байта. Хороший монитор делает не установку, а подмену, тогда наличия ловушки проходит прозрачно для пользователя. В данном случае можно реализовать только установку. Поставить её в эмуле можно через несуществующий код команды процессора, а уже в мониторе менять их на NOP или пропускать на уровне эмулятора. Да, код на этапе отладки подрастёт на 2 байта, но на его работе это ни как не скажется. Иногда может и окажутся критичны эти 2 байта, но в 99.999999999% будет работать без проблем. За то решение универсальное и не накладывает дополнительные требования на ассемблер.
Там создается файл с брейкпойнтами. Это вообще в ассемблере просто удобно делать, а не обязательное условие.
Цитата:
Если в процессе генерации формируется текстовый с координатами точек останова, на подобие как для меток. Можно подробнее о его структуре, где он должен лежать, как его грузить и т.п.? Может я смогу его "подделать" на базе данных своего ассемблера.
Она там банальная, просто список хекс-адресов типа BD28 через перевод строки.