- QEMU can now boot a PowerPC Linux kernel (Jocelyn Mayer)
- User mode network stack
- imul imm8 fix + 0x82 opcode support (Hidemi KAWAI)
- QEMU can now boot a PowerPC Linux kernel (Jocelyn Mayer)
- User mode network stack
- imul imm8 fix + 0x82 opcode support (Hidemi KAWAI)
+ - precise self modifying code (aka BeOS install bug)
+- physical memory cache (reduce qemu-fast address space size to about 32 MB)
+- better code fetch (different exception handling + CS.limit support)
+- do not resize vga if invalid size.
+- avoid looping if only exceptions
- handle fast timers + add explicit clocks
- OS/2 install bug
- handle fast timers + add explicit clocks
- OS/2 install bug
-- handle Self Modifying Code even if modifying current TB (BE OS 5 install)
-- physical memory cache (reduce qemu-fast address space size to about 32 MB)
-- better code fetch
-- XP security bug
- cycle counter for all archs
- TLB code protection support for PPC
- add sysenter/sysexit and fxsr for L4 pistachio 686
- basic VGA optimizations
- cycle counter for all archs
- TLB code protection support for PPC
- add sysenter/sysexit and fxsr for L4 pistachio 686
- basic VGA optimizations
-- disable SMC handling for ARM/SPARC/PPC
+- disable SMC handling for ARM/SPARC/PPC (not finished)
- see undefined flags for BTx insn
- user/kernel PUSHL/POPL in helper.c
- keyboard output buffer filling timing emulation
- return UD exception if LOCK prefix incorrectly used
- see undefined flags for BTx insn
- user/kernel PUSHL/POPL in helper.c
- keyboard output buffer filling timing emulation
- return UD exception if LOCK prefix incorrectly used
-- cmos clock update and timers
- test ldt limit < 7 ?
- tests for each target CPU
- fix CCOP optimisation
- test ldt limit < 7 ?
- tests for each target CPU
- fix CCOP optimisation
lower priority:
--------------
lower priority:
--------------
+- HDD geometry in CMOS (not used except for very old DOS programs)
- suppress shift_mem ops
- fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
- sysenter/sysexit emulation
- suppress shift_mem ops
- fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
- sysenter/sysexit emulation
As QEMU requires no host kernel driver to run, it is very safe and
easy to use.
As QEMU requires no host kernel driver to run, it is very safe and
easy to use.
-For system emulation, only the x86 PC emulator is currently
-usable. The PowerPC system emulator is being developped.
+For system emulation, the following hardware targets are supported:
+@itemize
+@item PC (x86 processor)
+@item PREP (PowerPC processor)
+@end itemize
For user emulation, x86, PowerPC, ARM, and SPARC CPUs are supported.
For user emulation, x86, PowerPC, ARM, and SPARC CPUs are supported.
Mac OS X is currently not supported.
Mac OS X is currently not supported.
-@chapter QEMU System emulator invocation
+@chapter QEMU PC System emulator invocation
@section Introduction
@c man begin DESCRIPTION
@section Introduction
@c man begin DESCRIPTION
-The QEMU System emulator simulates a complete PC.
+The QEMU System emulator simulates a complete PC.
In order to meet specific user needs, two versions of QEMU are
available:
In order to meet specific user needs, two versions of QEMU are
available:
@table @option
@item -n script
@table @option
@item -n script
-Set network init script [default=/etc/qemu-ifup]. This script is
-launched to configure the host network interface (usually tun0)
+Set TUN/TAP network init script [default=/etc/qemu-ifup]. This script
+is launched to configure the host network interface (usually tun0)
corresponding to the virtual NE2000 card.
corresponding to the virtual NE2000 card.
-@item nics n
-Simulate @var{n} network interfaces (default=1).
-
@item -macaddr addr
Set the mac address of the first interface (the format is
aa:bb:cc:dd:ee:ff in hexa). The mac address is incremented for each
new network interface.
@item -macaddr addr
Set the mac address of the first interface (the format is
aa:bb:cc:dd:ee:ff in hexa). The mac address is incremented for each
new network interface.
-@item -tun-fd fd1,...
-Assumes @var{fd} talks to tap/tun and use it. Read
-@url{http://bellard.org/qemu/tetrinet.html} to have an example of its
-use.
+@item -tun-fd fd
+Assumes @var{fd} talks to a tap/tun host network interface and use
+it. Read @url{http://bellard.org/qemu/tetrinet.html} to have an
+example of its use.
+
+@item -user-net
+(Experimental) Use the user mode network stack. This is the default if
+no tun/tap network init script is found.
+
+@item -dummy-net
+Use the dummy network stack: no packet will be received on the network
+cards.
Wait gdb connection to port 1234 (@xref{gdb_usage}).
@item -p port
Change gdb connection port.
Wait gdb connection to port 1234 (@xref{gdb_usage}).
@item -p port
Change gdb connection port.
+@item -S
+Do not start CPU at startup (you must type 'c' in the monitor).
@item -d
Output log in /tmp/qemu.log
@end table
@item -d
Output log in /tmp/qemu.log
@end table
c (char) or i (asm instruction).
@item size
c (char) or i (asm instruction).
@item size
-can be b (8 bits), h (16 bits), w (32 bits) or g (64 bits)
+can be b (8 bits), h (16 bits), w (32 bits) or g (64 bits). On x86,
+@code{h} or @code{w} can be specified with the @code{i} format to
+respectively select 16 or 32 bit code instruction size.
@code{x/10i $cs*16+*eip} to dump the code at the PC position.
@end enumerate
@code{x/10i $cs*16+*eip} to dump the code at the PC position.
@end enumerate
+@chapter QEMU PREP PowerPC System emulator invocation
+
+Use the executable @file{qemu-system-ppc} to simulate a complete PREP
+PowerPC system.
+
+QEMU emulates the following PREP peripherials:
+
+@itemize @minus
+@item
+2 IDE interfaces with hard disk and CD-ROM support
+@item
+Floppy disk
+@item
+up to 6 NE2000 network adapters
+@item
+Serial port
+@item
+PREP Non Volatile RAM
+@end itemize
+
+You can read the qemu PC system emulation chapter to have more
+informations about QEMU usage.
+
+More information is available at
+@url{http://jocelyn.mayer.free.fr/qemu-ppc/}.
+
@chapter QEMU User space emulator invocation
@section Quick Start
@chapter QEMU User space emulator invocation
@section Quick Start