Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
PEARPC(1)		   PowerPC platform emulator		     PEARPC(1)

       pearpc  - architecture independent PowerPC platform emulator capable of
       running most PowerPC operating systems.

       ppc configfile

       PearPC (ppc) is an architecture independent PowerPC  platform  emulator
       capable of running most PowerPC operating systems.

	   * License: GPL
	   * Programming language: C++,	C and (on x86 platforms) assembler
	   * Supported platforms: POSIX-X11 (Linux, ...), Win32

       The  following  operating  systems were tested and run (to some extend)
       under PearPC:
	   * Mandrake Linux 9.1	for PPC: Runs very well
	   * Darwin for	PPC: Runs well
	   * Mac OS X 10.3: Runs well with some	caveats
	   * OpenBSD for PPC: Crashes while booting (accesses PCI in an	unsup-
       ported way)
	   * NetBSD for	PPC: Crashes while booting

       PearPC simulates	the following hardware:
	   *  CPU:  Sort of G3,	no altivec yet.	Includes a minimalistic	debug-
       ger. The	CPU is completely deterministic, optimal for OS-development.
	   * CPU JITC-X86: A very fast CPU for x86 systems that	translates the
       PowerPC	code  on-the-fly to native code. Still a little	bit experimen-
	   * PCI-Brige:	A barebone PCI-Bridge, enough to work with.
	   * IDE-Controller: Sort of CMD646 with  bus-mastering	 support.  You
       can  attach  IDE-Harddisk(s)  and/or  IDE-CDROM(s) (represented through
       files or	devices	on the host).
	   * PIC: A programmable interrupt controller (sort of Heathrow).
	   * VIA-Cuda: With attached Mouse and Keyboard.
	   * Network Controller: Emulates a 3COM 3C90x,	works  currently  only
       on POSIX	with /dev/tun support.
	   * NVRAM: Capable of storing 8KiB non-volatile memory.
	   *  USB:  A non-usable USB-hub, but enough to	make the OS think that
       there is	an USB-hub.
	   * PROM: Sort	of openfirmware. Ugly and contains a lot of hacks, but
       enough  to  support  Yaboot  and	BootX and to boot from HFS/HFS+	parti-

       See ppcconf.example for commented configuration	file  in  docs/example

       See also	online ppc documentation on the	website	URLed above.

       Due  to	the nature of emulation, PearPC	is quite slow (the client will
       run about 500 times slower than the host). Note that only  the  CPU  is
       that  slow, the speed of	the emulated hardware doesn't suffer that much
       from the	emulation; e.g.	the  speed  of	simulated  harddrive/CDROM  is
       quite  good, especially when using the busmaster	interface. This	situa-
       tion is better if you can use the JITC  (about  40  times  slower)  but
       still not ready for productive use.

       Because	the  author  has  only access to little	endian machine,	PearPC
       will most likely	only run on little endian architectures	 due  to  some
       stupid  assumptions in the code.	This shouldn't be hard to fix, the au-
       thor would fix this himself if he had big endian	 hardware  (Hint:  You
       should  donate big endian hardware to the author	if you want this to be

       Because of some equally stupid reasons PearPC will only run  on	32-bit
       architectures. Yes, this	also shouldn't be hard to fix.

       A  lot  of  unimplementated  features are currently critical (i.e. will
       abort PearPC).

       Timings are very	unaccurate. This will be fixed in later	versions.

       No idle sleep (PearPC will consume cpu resources	although the client is

       PearPC lacks a save/restore emulator-state feature.

       No Altivec support but planned.

       No  LBA48, so no	support	for harddisks greater than 128 GiB. But	I'd be
       really suprised if PearPC correctly supported harddisks greater than  4
       GiB, although that should theoretically be possible.

       Main developer: Sebastian Biallas <> Some major parts by:
       Stefan Weyergraf	<>

       Visit PearPC website at

				      0.1			     PEARPC(1)


Want to link to this manual page? Use this URL:

home | help