dingusppc README

The project's README from github.com/dingusdev/dingusppc. As one markdown file: README.md.

DingusPPC

Written by The DingusPPC Development Team

(who are Divingkatae, maximumspatium, joevt, mihaip, kkaisershot, Cacodemon345, Wack0, et. al. Check CREDITS.md for more info)

Be warned the program is highly unfinished and could use a lot of testing. Any feedback is welcome.

Philosophy of Use

While many other PowerPC emus exist (PearPC, Sheepshaver), none of them currently attempt emulation of PowerPC Macs accurately (except for QEMU).

This program aims to not only improve upon what Sheepshaver, PearPC, and other PowerPC Mac emulators have done, but also to provide a better debugging environment. This currently is designed to work best with PowerPC NuBus and Old World ROMs, including those of the Power Mac 6100, 7200, and G3 Beige.

Implemented Features

Several machines have been implemented to varying degrees, like many Old World PowerPC Macs, early New World PowerPC Macs, and the Pippin.

This emulator has a debugging environment, complete with a disassembler.

How to Use

This program currently uses the command prompt to work.

There are a few command line arguments one can enter when starting the program.

-r, --run

Run the emulator. Currently only goes to an interpreter.

-d, --debugger

Enter the interactive debugger.

-b, --bootrom TEXT:FILE

Specifies the Boot ROM path. It otherwise looks for bootrom.bin.

-m, --machine TEXT

Specify machine ID. Otherwise, the emulator will attempt to determine machine ID from the boot rom otherwise.

As of now, the most complete machines are the Power Mac 6100, the Power Mac 7500, and the Power Mac G3 Beige.

To go into to the debugger regardless of how you started the emulator, press Control and C on the terminal window.

How to Compile

You need to install development tools first.

At minimum, a C++20 compliant compiler and CMake are required.

Clone the repository using the appropriate command:

git clone https://github.com/dingusdev/dingusppc

If this is from a mirror, replace the argument with the source you want to use instead.

You will also have to recursive clone or run

git submodule update --init --recursive

This is because the CubeB, Capstone, and SDL2 modules are not included by default.

For SDL2, Linux users may also have to run:

sudo apt install libsdl2-dev

macOS users can use Homebrew or MacPorts to install SDL2.

CLI11 and loguru are already included in the thirdparty folder and compiled along with the rest of DingusPPC.

For Raspbian, you may also need the following command:

sudo apt install doxygen graphviz

To build the project in a Unix-like environment, create a build folder, change the directory to the build folder, and use cmake to create the Makefile files in that build folder. Use make to do the building. You don't need to execute cmake again unless you add/remove/change options or source files.

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make

You may specify another build type using the variable CMAKE_BUILD_TYPE. Each build type should have its own build folder.

mkdir build-debug
cd build-debug
cmake -DCMAKE_BUILD_TYPE=Debug ..
make

Testing

DingusPPC includes a test suite for verifying the correctness of its PowerPC CPU emulation. To build the tests, use the following terminal commands:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DDPPC_BUILD_PPC_TESTS=True ..
make testppc

Intended Minimum Requirements

dingusppc (dingusdev/dingusppc)

Searching Database…

这是什么?DingusPPC 是一个实验性的 PowerPC Macintosh 电脑模拟器,目标是精确模拟 Old World 和早期 New World 的 PowerPC Mac(以及 Pippin),注重精度和调试,而不只是兼容性。
它和 PearPC、SheepShaver 这类其他 PowerPC Mac 模拟器有什么不同?与 PearPC 和 SheepShaver 不同,DingusPPC 专门追求对 PowerPC NuBus 和 Old World ROM Mac 的精确硬件级模拟,并内置交互式调试器和反汇编器,而不只是把软件跑起来。
这个怎么运行?它是一个命令行程序:你用命令行参数启动编译好的二进制文件,选择 Boot ROM 路径和机器 ID(或者让它从 ROM 自动检测);除非请求使用调试器,否则它会进入一个解释器。
这个模拟器的完成度怎么样?该项目被明确标记为高度未完成、需要大量测试;到目前为止只有 Power Mac 6100、7500 和 G3 Beige 是完成度最高的机型,其他支持的机型实现程度参差不齐。
哪些操作系统可以运行它?它面向 Windows 7+(64 位)、Linux 4.4+ 和 Mac OS X 10.9+(64 位),至少需要 Intel Core 2 Duo、2GB 内存和 2GB 磁盘空间。
它对哪些 Mac 机型模拟得最好?目前开发最完善的机型是 Power Mac 6100、Power Mac 7500 和 Power Mac G3 Beige,兼顾了 Old World 和早期 New World 的 PowerPC Mac。
它内置了什么调试工具吗?有,DingusPPC 内置了带反汇编器的交互式调试器;你可以在启动时进入调试器,也可以随时在终端窗口按 Control+C 进入。
有没有用来验证 CPU 模拟的测试套件?有,它包含一个专门的测试套件,用于验证其 PowerPC CPU 模拟的正确性,可以用它自己的一组终端命令来构建。
Creator
dingusdev
Size
6.1 MB
Stars
410
Updated
CommitOct 16
Age
7y
Commits · 90 Days