C64桥
Commodore 64的人工智能指挥桥。
](https://www.npmjs.com/package/c64bridge)    
   
C64 Bridge是一个MCP服务器,用于从AI客户端控制Commodore 64并与之协同工作。
它允许您在真实的计算机上运行程序、读写内存、渲染图形和播放声音 Commodore 64终极版 或 终极64。您也可以切换到 副 仿真器会话随时可用,因此相同的MCP对话适用于硬件和仿真器。
它基于官方的TypeScript构建 @modelcontextprotocol/sdk 并支持两者 stdio 用于本地AI集成,以及用于手动检查的可选HTTP桥。
C64桥列在 MCP官方登记处.
目录
- 目录 - 概述 - 特性 - 快速开始 - - 2.启动服务器 - 3.添加后端配置 - 4.从MCP客户端连接 - 配置 - 配置文件顺序 - 配置合并规则 - 后端配置:C64终极版 - 后端配置:VICE - 运行时后端切换 - VS代码MCP设置 - 启用C64代理 - 可选替代 - MCP客户端配置中的环境变量 - 运行时环境变量引用 - 服务器运行时 - C64终极版 - VICE运行时 - VICE音频采集 - SID播放 - 检索增强生成 - 测试 - 示例工作流程 - HTTP调用 - 构建和测试 - 文档 - 静态MCP接口 - MCP API参考 - 工具 - c64_config - c64_debug - c64_disk - c64_drive - c64_提取 - c64_图形 - c64_内存 - c64_打印机 - c64_程序 - c64_rag - c64_选择_备份 - c64_声音 - c64_流 - c64_系统 - c64_冰 - 资源 - 提示
概述
C64 Bridge为AI代理提供了一个地方,可以在Commodore 64环境中驱动程序执行、内存访问、图形、声音、存储、打印机工作流程和知识检索。
核心工作流程很简单:
- 启动MCP服务器。
- 将其指向C64 Ultimate硬件、VICE或两者。
- 让客户端调用分组的MCP工具,例如
c64_program,c64_memory,c64_graphics,以及c64_sound. - 使用以下命令在运行时切换后端
c64_select_backend当两者都被配置时。
特性
- 用于BASIC、6510汇编和PRG或CRT执行的程序运行器
- 完全内存访问,包括原始读写和屏幕轮询
- 驱动器、文件、打印机和任务编排的系统集成
- 用于播放、作曲、生成和验证的SID音乐工具
- 内置知识资源和提示,实现更安全的法学硕士工作流程
- 硬件的混合运行时支持
c64u和模拟器vice
快速开始
如果你想走最短的路,做以下四件事:
- 安装Node.js 24+和npm。
- 启动服务器。
- 为C64 Ultimate、VICE或两者添加后端配置。
- 从VS Code或其他MCP客户端连接。
1.安装Node.js 24+和npm
Linux(Ubuntu或Debian):
推荐:
sudo apt update
sudo apt install -y curl ca-certificates
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
sudo apt install -y nodejs退路:
sudo apt install -y nodejs npmmacOS:
brew install node@24
brew link --overwrite node@24窗户:
# winget
winget install OpenJS.NodeJS.LTS
# or Chocolatey
choco install nodejs-lts -y验证安装:
node --version预期结果: v24.x
2.启动服务器
使用以下入口点之一。
逃离 npx 零设置:
npx -y c64bridge@latest从本地npm安装运行:
mkdir -p ~/c64bridge && cd ~/c64bridge
npm init -y
npm install c64bridge
node ./node_modules/c64bridge/dist/index.js从源代码运行以进行开发或测试:
git clone https://github.com/chrisgleissner/c64bridge.git
cd c64bridge
./build install
npm start启动时,服务器探测所选目标,执行连接检查,然后宣布它正在stdio上运行。
3.添加后端配置
服务器可以针对以下对象运行:
- 只有C64终极硬件
- 只有VICE
- 一个会话中的两个后端,具有运行时切换功能
详细的查找顺序、合并规则、后端示例和覆盖模型在 配置 下面的部分。
4.从MCP客户端连接
如果您使用VS Code,请按照 VS代码MCP设置 下面的部分。
如果您使用另一个MCP客户端,请将其指向 stdio 服务器入口点,并按照本README和 mcp.json.
配置
配置文件顺序
服务器按以下顺序读取配置:
C64BRIDGE_CONFIG,如果它指向配置文件.c64bridge.json在项目根中~/.c64bridge.json在主目录中
配置合并规则
在按顺序扫描这些文件时,每个后端部分都会合并配置。
- 第一个包含
c64u第节提供了C64终极配置。 - 第一个包含
vice部分提供VICE配置。 - 这允许项目在本地
.c64bridge.json定义c64u当~/.c64bridge.json定义vice,两个后端在运行时都可用。
后端配置:C64终极版
将此用于C64终极版或终极64:
{
"c64u": {
"host": "c64u",
"port": 80,
"networkPassword": "secret"
}
}- 如果找不到文件,则默认目标为
c64u:80没有网络密码。 networkPassword仅当您在C64 Ultimate网络设置中启用密码时才需要。C64U_HOST,C64U_PORT,以及C64U_PASSWORD覆盖配置的主机、端口和网络密码。
后端配置:VICE
将此用于受管理的VICE启动:
{
"vice": {
"exe": "/usr/bin/x64sc",
"directory": "/usr/local/share/vice"
}
}directory是可选的。如果省略,C64 Bridge会通过查找仿真器二进制文件附近和公共系统位置中的标准C64 ROM集来自动检测VICE资源目录。VICE_BINARY,VICE_DIRECTORY,VICE_HOST,VICE_PORT,VICE_VISIBLE,VICE_WARP,以及VICE_ARGS在不编辑配置文件的情况下覆盖受管理的VICE启动。- 如果没有配置显式二进制文件,运行时更喜欢
/usr/local/bin/x64sc如果存在,则回退到x64sc或x64上PATH因此,相同的设置在操作系统之间仍然是可移植的。
\[!注意\] VICE仅支持在中标记有VICE复选标记的操作 MCP API参考.返回不支持的操作 unsupported_platform.运行时后端切换
当两者都 c64u 和 vice C64 Bridge从一个活动后端开始,并保持另一个可用于运行时切换。
C64_MODE选择初始后端:c64u或vicec64_select_backend在不重新启动MCP服务器的情况下切换后端c64://platform/status报告活动后端和完整配置的后端集- 在提示中,说出以下内容
use vice,vice: run this program,use c64u,或run this on the real machine - 在VS Code中,当您想强制执行模拟器而不是硬件时,请在同一提示中包含后端首选项
提示图(通过VS Code中的Copilot发布,使用GPT 5.4 Medium):
c64u: write a small BASIC program that clears the screen and prints HELLO C64U
vice: write a small BASIC program that clears the screen and prints HELLO VICE下面的屏幕截图是在这些提示运行后,使用相同的方法从实际的后端位图响应中捕获的 c64_graphics capture_frame MCP工具位于两个后端。C64U实现捕获流式视频帧,而VICE实现捕获并规范仿真器显示帧。然后,使用C64字符生成器对这两幅图像与预期文本进行光学验证,两者完全匹配。
VS代码MCP设置
如果此存储库已在本地签出,请打开准备好的 .vcode/mcp.json.
否则,请将以下内容放入您自己的 .vscode/mcp.json:
{
"servers": {
"c64bridge": {
"command": "npx",
"args": [
"-y",
"c64bridge@latest"
]
}
}
}然后单击上面显示的开始按钮 c64bridge 进入。
您的MCP服务器现在应该正在运行:
有关更多详细信息,请参阅官方 VS代码MCP服务器文档.
启用C64代理
服务器运行后,切换到 C64 VS Code中的代理。
此代理已针对Commodore 64工作进行了预配置。它将Copilot引导到 c64bridge BASIC、6502组装、SID音频、VIC-II图形、内存检查、磁盘操作、打印、流媒体和设备控制的工作流程。
可选替代
您可以添加 env 条目在 .vscode/mcp.json 要选择配置文件,请覆盖C64 Ultimate连接详细信息,或强制初始后端:
{
"servers": {
"c64bridge": {
"command": "npx",
"args": [
"-y",
"c64bridge@latest"
],
"env": {
"C64BRIDGE_CONFIG": "/home/you/.c64bridge.json",
"C64U_HOST": "192.168.1.99",
"C64U_PORT": "80",
"C64U_PASSWORD": "secret",
"C64_MODE": "c64u",
"LOG_LEVEL": "debug"
}
}
}
}C64BRIDGE_CONFIG指向特定的配置文件C64U_HOST,C64U_PORT,以及C64U_PASSWORD在不编辑配置文件的情况下覆盖C64 Ultimate连接C64_MODE强制初始后端c64u或viceLOG_LEVEL=debug启用详细日志记录
MCP客户端配置中的环境变量
根目录中记录的每个运行时环境变量 mcp.json 可以由您的MCP客户端配置提供,包括 .vscode/mcp.json 在...之下 servers.c64bridge.env.
当环境变量映射到JSON配置字段时,覆盖顺序始终为:
- MCP客户端配置或shell中的显式环境变量
- 从加载的合并JSON配置部分
C64BRIDGE_CONFIG,回购.c64bridge.json那么~/.c64bridge.json - 编译到服务器中的内置默认值
当环境变量没有等效的JSON配置时,顺序为:
- MCP客户端配置或shell中的显式环境变量
- 内置默认值
该规则统一适用于下面记录的运行时环境变量。
示例:具有特定ROM或资源目录的可见VICE,以及在运行时仍可以立即选择的硬件回退:
{
"servers": {
"c64bridge": {
"command": "node",
"args": ["${workspaceFolder}/scripts/start.mjs"],
"type": "stdio",
"env": {
"C64_MODE": "vice",
"C64U_HOST": "c64u",
"C64U_PORT": "80",
"VICE_BINARY": "/usr/local/bin/x64sc",
"VICE_DIRECTORY": "/usr/local/share/vice",
"VICE_VISIBLE": "true",
"VICE_WARP": "false"
}
}
}
}示例:保留后端端点的JSON配置文件,但覆盖VS代码中的诊断、轮询和RAG行为:
{
"servers": {
"c64bridge": {
"command": "node",
"args": ["${workspaceFolder}/scripts/start.mjs"],
"type": "stdio",
"env": {
"C64BRIDGE_CONFIG": "/home/you/.c64bridge.json",
"LOG_LEVEL": "debug",
"C64BRIDGE_POLL_MAX_MS": "8000",
"C64BRIDGE_POLL_INTERVAL_MS": "200",
"RAG_BUILD_ON_START": "1",
"RAG_EMBEDDINGS_DIR": "/home/you/c64bridge-data"
}
}
}
}运行时环境变量引用
中记录的每个运行时环境变量 mcp.json 可以在MCP客户端配置中设置,包括 .vscode/mcp.json 在...之下 servers.c64bridge.env.
服务器运行时
| 变量 | 默认值 | JSON配置键 | 描述 |
|---|---|---|---|
C64_MODE | c64u | -- | 选择活动后端(c64u用于终极硬件,反之用于仿真器) |
C64_TASK_STATE_FILE | auto | -- | 覆盖用于持久化MCP后台任务状态的路径 |
C64BRIDGE_CONFIG | ~/.c64bridge.json | 配置路径 | 配置json的路径 |
C64BRIDGE_DIAGNOSTICS_DIR | ~/.c64bridge/discoverys | -- | 覆盖写入持久MCP诊断文件的目录 |
C64BRIDGE_DISABLE_DIAGNOSTICS | 0 | -- | 设置为1可禁用持久诊断日志记录 |
C64BRIDGE_POLL_INTERVAL_MS | 200 | -- | 正常运行时模式下程序输出验证期间屏幕轮询之间的间隔 |
C64BRIDGE_POLL_MAX_MS | 2000 | -- | 在正常运行时模式下超时之前轮询程序输出验证的最长时间 |
C64BRIDGE_POLL_STABILIZE_MS | 100 | -- | 投票匹配成功后,在考虑输出稳定之前,需要额外的稳定时间 |
LOG_LEVEL | info | -- | 记录器详细信息(调试、信息、警告、错误) |
C64终极版
| 变量 | 默认值 | JSON配置键 | 描述 |
|---|---|---|---|
C64U_HOST | c64u | c64u.host | 覆盖C64最终主机名或IP地址 |
C64U_PASSWORD | c64u.networkPassword | 覆盖作为X-password发送的C64 Ultimate网络密码 | |
C64U_PORT | 80 | c64u.port | 覆盖C64终极REST端口 |
VICE运行时
| 变量 | 默认值 | JSON配置键 | 描述 |
|---|---|---|---|
DISABLE_XVFB | 0 | -- | 设置为1可禁用Xvfb回退并仅使用当前显示 |
FORCE_XVFB | 0 | -- | 设置为1,强制受管理的VICE启动在Xvfb下运行 |
VICE_ARGS | vice.args | 转发给托管vice启动的额外命令行参数 | |
VICE_BINARY | x64sc | vice.exe | 启动用于托管模拟器会话和音频捕获的vice二进制文件 |
VICE_DIRECTORY | 自动检测 | 副目录 | 覆盖用于ROM和UI资产发现的vice资源目录 |
VICE_HOST | 127.0.0.1 | vice.host | 覆盖vice二进制监视器主机 |
VICE_PORT | 6502 | vice.port | 覆盖vice二进制监视器端口 |
VICE_VISIBLE | true | vice.visible | 尽可能在桌面上以可见方式启动vice,而不是无头/Xvfb |
VICE_WARP | 可见时为false,无头时为true | vice.warp | 为受管理的vice会话启用扭曲模式 |
VICE_XVFB_DISPLAY | :99 | -- | 在Xvfb下启动托管VICE时使用的显示编号 |
VICE音频采集
| 变量 | 默认值 | JSON配置键 | 描述 | |
|---|---|---|---|---|
VICE_LIMIT_CYCLES | 120000000 | -- | VICE生成音频时渲染的最大CPU周期 | |
VICE_MODE | ntsc | -- | VICE音频捕获的默认视频标准(ntsc | pal) |
VICE_RUN_TIMEOUT_MS | 10000 | -- | 无头VICE运行超时(毫秒) |
SID播放
| 变量 | 默认值 | JSON配置键 | 描述 | |
|---|---|---|---|---|
SIDPLAY_BINARY | sidplayp | -- | sidplaypp二进制文件在生成音频时启动 | |
SIDPLAY_LIMIT_CYCLES | 120000000 | -- | sidplaysp生成音频时渲染的最大CPU周期 | |
SIDPLAY_MODE | ntsc | -- | 默认SID播放模式(ntsc | pal) |
SIDPLAYFP_BINARY | -- | SIDPLAY_BINARY的旧别名(sidplaypp可执行文件名) |
检索增强生成
| 变量 | 默认值 | JSON配置键 | 描述 |
|---|---|---|---|
GITHUB_TOKEN | -- | 用于对GitHub进行可选RAG发现的个人访问令牌 | |
RAG_BUILD_ON_START | 0 | -- | 设置为1以在服务器启动时重建嵌入 |
RAG_DISCOVER_FORCE_REFRESH | 0 | -- | 设置为1以在获取外部文档时忽略缓存的发现结果 |
RAG_DOC_FILES | -- | RAG中包含的逗号分隔的额外文档 | |
RAG_EMBEDDINGS_DIR | data | -- | 包含RAG嵌入JSON文件的目录 |
RAG_REINDEX_INTERVAL_MS | 0 | -- | 周期性重新索引间隔(毫秒)(0禁用) |
测试
| 变量 | 默认值 | JSON配置键 | 描述 | |
|---|---|---|---|---|
C64_TEST_TARGET | -- | 覆盖集成测试以攻击模拟或真实硬件(模拟 | 真实) |
示例工作流程
使用ChatGPT和VS Code创作一首儿歌:
然后为它渲染PETSCII艺术:
这代表了预期的工作流程:
- 要求MCP客户端生成或改进面向C64的内容。
- 使用分组工具,如
c64_program,c64_graphics,以及c64_sound执行它。 - 通过屏幕读取、帧捕获、内存检查或音频分析验证结果。
HTTP调用
- 首选交通工具是
stdio. - 默认情况下,HTTP桥被禁用,仅用于手动测试。
- 以下curl命令是说明性的,因此您可以看到HTTP上分组的MCP调用是什么样子的。
# Upload and run BASIC
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"op":"upload_run_basic","program":"10 PRINT \"HELLO\"\n20 GOTO 10"}' \
http://localhost:8000/tools/c64_program | jq
# Read current screen (PETSCII→ASCII)
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"op":"read_screen"}' \
http://localhost:8000/tools/c64_memory | jq
# Reset the machine
curl -s -X POST -H 'Content-Type: application/json' \
-d '{"op":"reset"}' \
http://localhost:8000/tools/c64_system构建和测试
这 ./build 项目根目录下的脚本将所有开发任务封装在一个单独的、自文档化的界面后面:
./build --help # full command reference
./build # install + build + test matrix (full CI run)
./build --skip-tests # install + build only
./build build # TypeScript compile + doc generation
./build test # integration tests (mock backend)
./build test --real # test against real hardware
./build test --platform vice --target mock # single test leg
./build test:matrix # full matrix (c64u/mock · vice/mock · vice/device)
./build coverage # merged coverage report
./build coverage:single --platform c64u --target mock
./build check # build + test matrix (no install)
./build rag:rebuild # rebuild RAG embeddings
./build release --version 1.2.3 # prepare a release启动MCP服务器 不由管理./build.使用npm start(来源)或npx -y c64bridge@latest(已发布的包)如所示 快速开始 上面的部分。
文档
- doc/developer.md --开发工作流程和RAG详细信息
- data/context/bootstrap.md --在提示之前注入底漆
- doc/c64u/c64-openapi.yaml --REST界面(OpenAPI 3.1)
- 代理商.md --LLM面临快速设置、使用和角色
静态MCP接口
存储库包含MCP服务器接口的自动生成的静态镜像 ./mcp 文件夹。
这允许代理在不连接到服务器的情况下检查可用的工具、资源、提示和模式。
MCP API参考
此MCP服务器公开 15工具, 26资源,以及 10个提示 用于控制Commodore 64。
工具
c64_config
配置读/写、诊断和快照的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
batch_update | 在单个请求中应用多个配置更新。 | — | — | ✅ | ✅ |
diff | 将当前配置与快照进行比较。 | path | — | ✅ | ✅ |
get | 读取配置类别或特定项目。 | category | — | ✅ | ✅ |
info | 检索终极硬件信息和状态。 | — | — | ✅ | ✅ |
list | 列出固件报告的配置类别。 | — | — | ✅ | ✅ |
load_flash | 从闪存加载配置。 | — | — | ✅ | |
read_debugreg | 读取终极调试寄存器($D7FF)。 | — | — | ✅ | |
reset_defaults | 将固件配置重置为出厂默认值。 | — | — | ✅ | |
restore | 从快照文件还原配置。 | path | — | ✅ | ✅ |
save_flash | 将当前配置保存到闪存。 | — | — | ✅ | |
set | 在所选类别中写入配置值。 | category, item, value | — | ✅ | ✅ |
shuffle | 发现PRG/CRT文件,并使用可选的屏幕截图运行每个文件。 | — | — | ✅ | |
snapshot | 将快照配置到磁盘,以便以后进行还原或差异 | path | — | ✅ | ✅ |
version | 获取固件版本详细信息。 | — | — | ✅ | ✅ |
write_debugreg | 将十六进制值写入终极调试寄存器($D7FF)。 | value | — | ✅ |
c64_debug
VICE调试器操作的分组入口点(断点、寄存器、步进)。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
create_checkpoint | 在VICE中创建新的检查点(断点)。 | address | — | ✅ | |
delete_checkpoint | 按id删除检查点 | id | — | ✅ | |
get_checkpoint | 按id获取单个检查点 | id | — | ✅ | |
get_registers | 读取寄存器值,可选择按名称或id进行筛选。 | -- | -- | ✅ | |
list_checkpoints | 列出所有活动的VICE检查点(断点)。 | — | — | ✅ | |
list_registers | 列出可用寄存器(元数据)。 | — | — | ✅ | |
set_condition | 将条件表达式附加到检查点。 | id, expression | — | ✅ | |
set_registers | 写入寄存器值。 | writes | — | ✅ | |
step | 单步CPU执行。 | — | — | ✅ | |
step_return | 继续执行,直到当前例程返回。 | — | — | ✅ | |
toggle_checkpoint | 按id启用或禁用检查点 | id, enabled | — | ✅ |
c64_disk
磁盘装载、列表、映像创建和程序发现的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
create_image | 创建指定格式的空白磁盘映像。 | format, path | — | ✅ | |
file_info | 检查Ultimate文件系统上文件的元数据。 | path | — | ✅ | |
find_and_run | 按名称子字符串搜索PRG/CRT并运行第一个匹配。 | nameContains | — | ✅ | |
list_drives | 列出Ultimate驱动器插槽及其安装的映像。 | — | — | ✅ | ✅ |
mount | 装载带有可选验证的磁盘映像并重试。 | drive, image | 支持验证 | ✅ | ✅ |
unmount | 从Ultimate驱动器插槽中删除已安装的映像。 | drive | — | ✅ | ✅ |
c64_drive
驱动器电源、模式、重置和ROM操作的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
load_rom | 将自定义ROM临时加载到Ultimate驱动器插槽中。 | drive, path | — | ✅ | |
power_off | 关闭特定Ultimate驱动器插槽的电源。 | drive | — | ✅ | ✅ |
power_on | 打开特定Ultimate驱动器插槽的电源。 | drive | — | ✅ | ✅ |
reset | 为所选驱动器插槽发出IEC重置。 | drive | — | ✅ | ✅ |
set_mode | 设置驱动器插槽(1541/1571/1581)的仿真模式。 | drive, mode | — | ✅ | ✅ |
c64_提取
用于精灵/字符集提取、内存转储、文件系统统计和固件健康检查的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
charset | 从RAM中查找并提取2KB字符集。 | -- | -- | ✅ | |
firmware_health | 运行固件就绪检查并报告状态指标。 | — | — | ✅ | |
fs_stats | 遍历文件系统,按扩展名聚合计数/字节。 | — | — | ✅ | |
memory_dump | 将RAM范围转储为包含清单元数据的十六进制或二进制文件。 | address, length, outputPath | — | ✅ | |
sprites | 扫描RAM中的精灵,并可选择导出.spr文件。 | address, length | — | ✅ |
c64_图形
帧捕获和图形渲染工作流的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
capture_frame | 从活动后端捕获一个或多个完整的视频帧。 | — | — | ✅ | ✅ |
render_bitmap | 导入图像文件,将其转换为VIC-II位图内存,将其写入RAM并显示 | imagePath, format | — | ✅ | ✅ |
render_petscii_art | 根据提示、文本或显式位图数据创建PETSCII艺术,并可选择在C64上显示。 | — | — | ✅ | ✅ |
render_petscii_text | 显示带有可选边框和背景颜色的PETSCII文本。 | text | — | ✅ | ✅ |
render_sprite | 通过直接写入存储器和修补VIC-II寄存器,显示器在请求的位置和颜色提供了63字节的子画面数据。 | sprite | — | ✅ | ✅ |
c64_内存
内存I/O、屏幕读取和屏幕轮询的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
read | 读取一个字节范围,并返回一个包含地址元数据的十六进制转储。 | address | — | ✅ | ✅ |
read_screen | 返回转换为ASCII的当前40x25文本屏幕。 | — | — | ✅ | ✅ |
wait_for_text | 轮询屏幕,直到出现子字符串或正则表达式,或者超时。 | pattern | — | ✅ | ✅ |
write | 将十六进制字节序列写入RAM | address, bytes | 支持验证 | ✅ | ✅ |
c64_打印机
Commodore和Epson打印助手的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
define_chars | 定义自定义打印机字符(Commodore DLL模式)。 | firstChar, chars | — | ✅ | |
print_bitmap | 通过Commodore(BIM)或Epson ESC/P工作流打印位图行。 | printer, columns | — | ✅ | |
print_text | 生成BASIC,将文本打印到设备4。 | text | — | ✅ |
c64_程序
程序上传、执行和批处理工作流的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
batch_run | 使用运行后断言运行多个PRG/CRT程序。 | programs | — | ✅ | ✅ |
bundle_run | 将屏幕、内存和调试寄存器捕获到工件包中。 | runId, outputPath | — | ✅ | |
cross_platform_greeting | 在一个或多个配置的后端上显示平台自定义的问候语,捕获屏幕截图,并验证结果。 | -- | 支持验证 | ✅ | ✅ |
load_prg | 从Ultimate存储加载PRG,而不执行它 | path | — | ✅ | |
run_crt | 安装并运行CRT盒式映像。 | path | — | ✅ | |
run_prg | 从c64u上的Ultimate可见存储或VICE上的主机本地路径加载并执行PRG。 | path | — | ✅ | ✅ |
upload_run_asm | 组装6502/6510源代码,上传PRG并执行 | program | 支持验证 | ✅ | ✅ |
upload_run_basic | 上传Commodore BASIC v2源代码并立即执行。 | program | 支持验证 | ✅ | ✅ |
c64_rag
BASIC和汇编RAG查找的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
asm | 从本地知识库中检索6502/6510个装配参考。 | q | — | ✅ | ✅ |
basic | 从本地知识库中检索BASIC参考文献和代码片段。 | q | — | ✅ | ✅ |
c64_选择_备份
在运行时在C64U硬件和VICE仿真器之间切换活动后端。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
select | 在不重新启动MCP服务器的情况下切换活动运行时后端。 | backend | — | ✅ | ✅ |
c64_声音
SID控制、播放、合成和分析工作流的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
analyze | 请求验证时自动分析SID回放。 | request | — | ✅ | |
capture_samples | 从C64 Ultimate音频UDP流中捕获原始立体声PCM样本。 | — | — | ✅ | |
compile_play | 编译SIDWAVE或CPG源代码,并可选择立即播放。 | — | — | ✅ | ✅ |
generate | 生成一个轻量级的SID琶音播放序列。 | — | — | ✅ | ✅ |
note_off | 通过清除SID的门位来释放SID语音 | voice | — | ✅ | ✅ |
note_on | 使用可配置的波形、ADSR和音调触发SID语音。 | — | — | ✅ | ✅ |
pipeline | 编译SIDWAVE乐谱,播放并分析录音。 | -- | 支持验证 | ✅ | |
play_mod_file | 通过Ultimate SID播放器播放MOD跟踪器模块。 | path | — | ✅ | |
play_preset | 编译并播放内置的SID预设,如贝多芬的Für Elise。 | -- | 支持验证 | ✅ | ✅ |
play_sid_file | 播放存储在Ultimate文件系统上的SID文件。 | path | — | ✅ | |
record_analyze | 在固定持续时间内录制音频,并返回SID分析指标。 | durationSeconds | — | ✅ | |
reset | 软或硬重置SID寄存器以清除故障。 | — | — | ✅ | ✅ |
set_volume | 将SID主卷寄存器设置为$D418(0-15)。 | volume | — | ✅ | ✅ |
silence_all | 通过可选的音频验证使所有SID声音静音。 | -- | 支持验证 | ✅ | ✅ |
c64_流
用于启动和停止Ultimate流媒体会话的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
start | 向主机:端口目标启动终极流会话。 | stream, target | — | ✅ | |
stop | 停止活动的Ultimate流媒体会话。 | stream | — | ✅ |
c64_系统
电源、重置、菜单和后台任务控制的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
list_tasks | 列出具有状态元数据的已知后台任务。 | — | — | ✅ | ✅ |
menu | 切换终极菜单按钮进行导航。 | — | — | ✅ | |
pause | 暂停机器,直到恢复。 | — | — | ✅ | |
performance_report | 总结当前或最新MCP会话的诊断范围和工具延迟。 | — | — | ✅ | ✅ |
poweroff | 通过Ultimate固件请求受控关机。 | — | — | ✅ | ✅ |
reboot | 触发固件重新启动以从故障中恢复。 | — | — | ✅ | ✅ |
reset | 在不切断电源的情况下发出软重置。 | — | — | ✅ | ✅ |
resume | 暂停后恢复CPU执行。 | — | — | ✅ | |
start_task | 启动一个按间隔运行的命名后台任务。 | name, operation | — | ✅ | ✅ |
stop_all_tasks | 停止所有正在运行的后台任务并保持状态。 | — | — | ✅ | ✅ |
stop_task | 停止特定的后台任务并清除其计时器。 | name | — | ✅ | ✅ |
c64_冰
用于读取和更新选定VICE资源的分组入口点。
| 操作 | 说明 | 所需输入 | 注释 | C64U | VICE |
|---|---|---|---|---|---|
resource_get | 读取VICE配置资源(仅限安全前缀)。 | name | — | ✅ | |
resource_set | 编写VICE配置资源(仅限安全前缀)。 | name, value | — | ✅ |
资源
| 名称 | 摘要 |
|---|---|
c64://docs/index | 解释如何处理每个知识包以及何时查阅 |
c64://context/bootstrap | C64上安全自动化、验证和回滚的分步规则。 |
c64://context/fast-paths | 简明的路由指南,用于一次调用演示、后端切换以及何时更喜欢编排而不是手动工具组合。 |
c64://specs/basic | BASIC v2的令牌定义、语法规则和设备I/O指南。 |
c64://docs/basic/pitfalls | Quickref涵盖了报价处理、行长、标记化、变量名和其他BASIC陷阱。 |
c64://specs/assembly | 6510 CPU的官方操作码矩阵、寻址模式和零页策略。 |
c64://specs/sid | 注册映射、波形行为和ADSR包络,以进行富有表现力的SID回放。 |
c64://specs/sidwave | 定义SID编辑器工作流使用的SIDWAVE交换格式。 |
c64://docs/sid/file-structure | 解释导入音乐的PSID/RSID标头、元数据块和兼容性注释。 |
c64://docs/sid/best-practices | 捕获经过验证的波形、ADSR预设、措辞和验证工作流程,以获得令人愉悦的SID音乐。 |
c64://specs/vic | 涵盖VIC-II上的光栅定时、子画面控制、彩色RAM和位图模式。 |
c64://specs/charset | 将PETSCII代码映射到屏幕代码、字形和键盘输入的字符代码表。 |
c64://docs/petscii-style | 文档调色板、可读性预设、抖动模式以及创建艺术性和可读性PETSCII显示的最佳实践。 |
c64://docs/sprite-charset-workflows | 记录精灵和字符集工作流程、内存布局、VIC-II配置、常见陷阱以及硬件加速图形的成熟技术。 |
c64://specs/memory-map | 64KB地址空间的逐页细分,包括硬件、ROM和RAM区域。 |
c64://specs/memory-low | 记录零页变量、BASIC指针和KERNAL工作区地址。 |
c64://specs/memory-kernal | 列出操作系统级功能的KERNAL ROM向量和服务例程。 |
c64://specs/io | 涵盖VIC-II、SID、CIA和系统控制寄存器,包括地址范围和使用说明。 |
c64://specs/cia | 详细介绍CIA 1/2寄存器、定时器、中断和键盘矩阵布局。 |
c64://specs/printer | 涵盖设备设置、控制代码和打印机的Ultimate 64集成。 |
c64://docs/printer/guide | 快速查看工作流程,涵盖两个打印机系列的设置、故障排除和示例作业。 |
c64://docs/printer/commodore-text | Commodore MPS文本输出的字符集、控制代码和格式。 |
c64://docs/printer/commodore-bitmap | 详细介绍MPS位图打印的位图模式、图形命令和数据布局。 |
c64://docs/printer/epson-text | 列出Epson FX文本输出的ESC/P控制代码和格式建议。 |
c64://docs/printer/epson-bitmap | 解释Epson位图作业的位图模式、密度选项和数据打包。 |
c64://docs/printer/prompts | 可重用的提示模板,通过MCP服务器驱动复杂的打印机作业。 |
提示
| 名称 | 描述 |
|---|---|
assembly-program | 路线6502/6510向规范装配技能发出例行请求。 |
basic-program | 将定制的Commodore BASIC v2请求路由到规范的BASIC技能。 |
cross-platform-demo | 将快速可见的演示请求发送给跨平台演示技能。 |
drive-manager | 将磁盘映像和驱动器状态请求路由到规范驱动器技能。 |
graphics-demo | 将图形请求路由到规范图形技能。 |
hello-world | 路由超快速问候世界和烟雾测试请求到规范的问候技巧。 |
memory-debug | 将可逆内存检查或修补工作交给规范内存技能。 |
preset-music-demo | 将快速可识别的曲调请求发送给SID音乐技能。 |
printer-job | 将打印机工作安排到规范的打印机技能。 |
sid-music | 将SID播放和合成工作路由到规范的SID技能。 |
