An experimental emulator
Go to file
Maxim Poliakovski 2f06623c62 Rewrite MPC106 emualation from scratch.
From now on, ppcmemory delegates physical address translation
to MPC106 on PowerMac Beige G3.
2019-08-21 23:55:21 +02:00
.github/ISSUE_TEMPLATE Update issue templates 2019-07-07 11:27:39 -07:00
devices Rewrite MPC106 emualation from scratch. 2019-08-21 23:55:21 +02:00
.gitignore Rewrite MPC106 emualation from scratch. 2019-08-21 23:55:21 +02:00
CMakeLists.txt Add simple command-line debugger. 2019-07-17 17:56:08 +02:00
davbus.cpp Update for July 7, 2019 2019-07-06 23:10:32 -07:00
davbus.h Update for July 7, 2019 2019-07-06 23:10:32 -07:00
debugger.cpp Simplify initialization of ppc_cur_instruction. 2019-07-19 23:34:57 +02:00
debugger.h Add simple command-line debugger. 2019-07-17 17:56:08 +02:00
dingusppc.cbp More fixes, plus a temp icon 2019-07-19 14:24:39 -07:00
dppcicon.ico More fixes, plus a temp icon 2019-07-19 14:24:39 -07:00
icon.rc More fixes, plus a temp icon 2019-07-19 14:24:39 -07:00
LICENSE Initial commit 2019-07-01 19:13:30 -07:00
macioserial.cpp Worked more on Grackle, ESCC, and OpenPIC 2019-07-14 17:05:10 -07:00
macioserial.h Add files via upload 2019-07-01 19:15:33 -07:00
macscsi.cpp Add files via upload 2019-07-01 19:15:33 -07:00
macscsi.h Add files via upload 2019-07-01 19:15:33 -07:00
macswim3.cpp Add files via upload 2019-07-01 19:15:33 -07:00
macswim3.h Add files via upload 2019-07-01 19:15:33 -07:00
main.cpp Rewrite MPC106 emualation from scratch. 2019-08-21 23:55:21 +02:00
makefile Create base class for memory controller devices. 2019-08-21 23:43:59 +02:00
openpic.cpp Near-Midnight Update - July 18, 2019 2019-07-18 23:31:16 -07:00
openpic.h Add files via upload 2019-07-01 19:15:33 -07:00
poweropcodes.cpp Fix mask generator for rotate&shift if mb > me. 2019-08-06 01:42:07 +02:00
ppcemumain.h Rewrite MPC106 emualation from scratch. 2019-08-21 23:55:21 +02:00
ppcfpopcodes.cpp Fix the warnings for good 2019-08-04 08:43:20 -07:00
ppcgekkoopcodes.cpp Add files via upload 2019-07-01 19:15:33 -07:00
ppcmemory.cpp Rewrite MPC106 emualation from scratch. 2019-08-21 23:55:21 +02:00
ppcmemory.h ppcmemory: refactor memory reads/writes. 2019-08-03 02:59:42 +02:00
ppcopcodes.cpp More fixes and re-removed unneeded debug messages 2019-08-13 21:29:14 -07:00
README.md Near-Midnight Update - July 18, 2019 2019-07-18 23:31:16 -07:00
viacuda.cpp Replace '&&' with '&' where bitwise AND is expected. 2019-07-02 14:18:51 +02:00
viacuda.h Add files via upload 2019-07-01 19:15:33 -07:00

DingusPPC by divingkatae

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

PHILOSOPHY OF USE

Sheepshaver, while technically impressive, is becoming harder to compile and run. While many other PowerPC emus exist, none of them currently attempt emulation of PPC Macs (except for QEMU).

This program aims to not only improve upon what Sheepshaver has done, but also to provide a better debugging environment. This currently is designed to work best with PowerPC Old World ROMs, including those of the PowerMac G3 Beige.

HOW TO USE

This program uses the command prompt to work.

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

-fuzzer

Processor fuzzer, very unfinished.

-realtime

Run the emulator in runtime.

-loadelf

Load an ELF file into memory.

-debugger

Enter the interactive debugger.

-stepp

Execute a page of opcodes (256 instructions at a time).

-playground

allows users to enter 32-bit hex opcodes to mess with the PPC processor.

HOW TO COMPILE

Run sudo apt-get install build-essential

From the terminal, run makefile.

Due to the incomplete status of the program at this time, no additional libraries are required.

Future versions will include SDL 2 as a requirement.

Intended Minimum Requirements

  • Windows 7 or newer (64-bit), Linux 4.4 or newer, Mac OS X 10.9 or newer (64-bit)
  • Intel Core 2 Duo or better
  • 2 GB of RAM
  • 2 GB of Hard Disk Space
  • Graphics Card with a minimum resolution of 800*600

Compiler Requirements

  • GCC 4.7 or newer (i.e. CodeBlocks 13.12 or newer)
  • Visual Studio 2013 or newer