返回 MCP 目录
public公开dns本地运行

HAN JIE

XenonRecomp是一个将Xbox 360可执行文件转换为C++代码的工具,支持跨平台重新编译,目前仅支持x86架构。该项目受N64 Recompiled启发,专注于指令转换、内存处理、优化和补丁机制,但不提供运行时实现。

article

README

🚀 XenonRecomp 编译器文档

XenonRecomp 是一款专门用于将 PowerPC(PPC)汇编代码转换为 C++ 的工具,在游戏模拟器开发领域发挥着重要作用。本文档将详细阐述 XenonRecomp 的使用方法和配置要点,涵盖其功能特性、输入输出格式、配置选项以及测试方式等内容。

🚀 快速开始

编译要求

项目要求 CMake 3.20 或更高版本和 Clang 18 或更高版本。由于仓库包含子模块,确保使用 git clone --recursive 进行克隆。

仅推荐使用 Clang 编译器进行开发,因为项目依赖于 Clang 的特定特性。在 Windows 上,可以使用 clang-cl 工具链,并通过 Visual Studio 的 CMake 集成进行开发。

测试转换

XenonRecomp 可以处理 Xenia 项目的 PPC 测试并生成相应的 C++ 文件。通过以下命令进行转换:

XenonRecomp [输入测试目录路径] [输入 PPC 上下文头文件路径] [输出目录路径]

生成的文件可以在 src/xenia/cpu/ppc/testing/bin 目录中找到。

✨ 主要特性

1. 中断处理

config.toml 配置文件中,用户可以定义需要跳过的代码段:

# 禁用中断处理的汇编代码转换为 C++
skip_assembler = ["Altivec"]

2. 调试钩子

通过 config.toml 配置文件,用户可以插入自定义调试钩子:

[[debug_hook]]
name = "调试钩子示例"
address = 0x12345678
registers = ["r0", "r1"]

3. 自定义转换规则

rules.toml 文件中,用户可以自定义汇编指令到 C++ 的转换规则:

# 示例:将 PPC 指令 'add' 转换为 C++ 表达式 'r0 = r1 + r2'
[add]
cpp = "r0 = r1 + r2;"

📦 安装指南

此文档未提及具体安装步骤,若有需要可根据编译要求进行环境搭建。

📚 详细文档

输入输出格式

输入格式

XenonRecomp 接受以下输入:

  • PPC 汇编代码文件:包含需要转换的 PPC 汇编指令。
  • 上下文头文件:定义了汇编代码中使用的寄存器和其他上下文信息。

输出格式

转换后的 C++ 文件,其中包含了将汇编指令转换为 C++ 代码后的结果。输出文件的位置由用户指定。

配置选项

XenonRecomp 提供以下配置选项:

  • 输入目录:指定包含 PPC 汇编代码和上下文头文件的目录路径。
  • 输出目录:指定生成转换后 C++ 文件的目标位置。
  • 调试模式:启用调试信息,便于调试和排错。

📄 许可证

此文档未提及许可证信息。

🔗 特别感谢

本项目得以实现离不开 Xenia 模拟器的 PPC 代码转换器的参考。项目还使用了来自 Xenia Canary 的补丁来处理 XEX 二进制文件。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端