Add asynchronous machine over and out to shared MCP
This commit is contained in:
@@ -11,8 +11,8 @@
|
||||
`MAME.HT/plugins/mamebridge` вместе с `src/mame_mcp.py` публикует 30
|
||||
raw-инструментов. Удалённый на этапе А `src/mame_bridge.lua` использовал тот
|
||||
же Python frontend, но обрабатывал только 16 команд и не отвечал при hard-stop.
|
||||
`toolchain/sdbg_mcp.py` публикует 29 C-инструментов через общую с DAP сессию
|
||||
(31 в автономном режиме с командами start/stop).
|
||||
`toolchain/sdbg_mcp.py` публикует 31 C-инструмент через общую с DAP сессию
|
||||
(33 в автономном режиме с командами start/stop).
|
||||
**Цель — покрыть возможности всех 30 raw-инструментов в C-сессии, а не
|
||||
механически скопировать имена и небезопасную семантику.** Полный raw MCP
|
||||
остаётся отдельным режимом для задач без C-пакета и других машин MAME.
|
||||
@@ -169,6 +169,17 @@ C-строке. Это покрывает типовой строковый вв
|
||||
сохраняет control lease и событие остановки. Живой автономный MCP-прогон
|
||||
выполнил `count=3` в `main`, затем продолжил `hello` до `getchar()` и вышел
|
||||
через клавишу. DAP source-step не менялся.
|
||||
Отдельные машинные `step_over_instruction(count=1..64)` и
|
||||
`step_out_instruction()` теперь асинхронны: MAME-команда может ждать ввод,
|
||||
поэтому RPC не держит lock до остановки; события и Pause остаются доступны.
|
||||
Живой `hello` подтвердил `over` через call, счётчик `over` до второго call и
|
||||
`out` из возвращаемой функции `_gettextmode`. Вызов `out` из
|
||||
`___sdcc_enter_ix` выявил tail-jump вместо RET и не останавливался быстро:
|
||||
именно поэтому машинные over/out не должны быть синхронными. Отдельный живой
|
||||
MCP-прогон получил ответ `out` за 8 мс и остановил долгий выход через Pause.
|
||||
Консоль MAME
|
||||
считает числа без префикса шестнадцатеричными; для `over count` и длины
|
||||
`dasm` backend теперь передаёт явный десятичный префикс `#`.
|
||||
|
||||
## Г. Сделать запуск пригодным для Codex и Claude без VS Code
|
||||
|
||||
|
||||
Reference in New Issue
Block a user