Add asynchronous machine over and out to shared MCP
This commit is contained in:
+11
-3
@@ -82,7 +82,8 @@ MCP-сервером MAME и удаляет socket. Закрытие самог
|
||||
`list_breakpoints`, `clear_breakpoint`, `clear_my_breakpoints`,
|
||||
`claim_control`, `release_control`,
|
||||
`continue_execution`,
|
||||
`pause_execution`, `step_instruction`, `step_source`. Ответы SDK 2.x содержат
|
||||
`pause_execution`, `step_instruction`, `step_over_instruction`,
|
||||
`step_out_instruction`, `step_source`. Ответы SDK 2.x содержат
|
||||
`structuredContent`. `step_source` принимает `into`, `over` или `out` и
|
||||
возвращает принятие команды; итоговую остановку получите через
|
||||
`recent_events` с курсором `last`. Логи `SDBG_LOG` приходят как события
|
||||
@@ -90,9 +91,16 @@ MCP-сервером MAME и удаляет socket. Закрытие самог
|
||||
`step_instruction(count)` синхронно выполняет 1..64 машинных шагов
|
||||
(`count=1` по умолчанию) и возвращает позицию остановки. Если раньше
|
||||
сработает breakpoint, выполнение может остановиться до заданного числа.
|
||||
Команды DAP F11/F10/Shift+F11 сохраняют прежнюю C-семантику.
|
||||
`step_over_instruction(count=1..64)` и `step_out_instruction()` дают именно
|
||||
машинную семантику MAME. Они отвечают сразу `accepted`; итоговую остановку
|
||||
получайте через `recent_events` или `session_status`, при долгом вызове
|
||||
доступен `pause_execution`. Например, `out` из `___sdcc_enter_ix` не
|
||||
останавливается быстро: этот helper возвращает управление через `jp (hl)`,
|
||||
а не через `ret`. Живой тест проверил `over` через такой вызов и `out` из
|
||||
возвращаемого `_gettextmode`. Команды DAP F11/F10/Shift+F11 сохраняют
|
||||
прежнюю C-семантику.
|
||||
|
||||
Число 29 в attach-режиме (31 в автономном с `start_session`/`stop_session`)
|
||||
Число 31 в attach-режиме (33 в автономном с `start_session`/`stop_session`)
|
||||
не означает полного переноса более нового `-plugin mamebridge`:
|
||||
его `src/mame_mcp.py` публикует 30 raw-инструментов, ориентированных на
|
||||
машину MAME. Здесь инструменты сгруппированы по операциям C-сессии, а
|
||||
|
||||
Reference in New Issue
Block a user