Commit 15a34c63642d8b70ad90bfbb2c2f823753e2dbf4

Authored by bellard
1 parent 1bfe856e

doc update


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@990 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 2 changed files with 176 additions and 118 deletions
qemu-doc.texi
... ... @@ -41,18 +41,19 @@ For system emulation, the following hardware targets are supported:
41 41 @itemize
42 42 @item PC (x86 processor)
43 43 @item PREP (PowerPC processor)
  44 +@item PowerMac (PowerPC processor, in progress)
44 45 @end itemize
45 46  
46 47 For user emulation, x86, PowerPC, ARM, and SPARC CPUs are supported.
47 48  
48 49 @chapter Installation
49 50  
  51 +If you want to compile QEMU yourself, see @ref{compilation}.
  52 +
50 53 @section Linux
51 54  
52   -If you want to compile QEMU, please read the @file{README} which gives
53   -the related information. Otherwise just download the binary
54   -distribution (@file{qemu-XXX-i386.tar.gz}) and untar it as root in
55   -@file{/}:
  55 +Download the binary distribution (@file{qemu-XXX-i386.tar.gz}) and
  56 +untar it as root in @file{/}:
56 57  
57 58 @example
58 59 su
... ... @@ -62,67 +63,13 @@ tar zxvf /tmp/qemu-XXX-i386.tar.gz
62 63  
63 64 @section Windows
64 65  
65   -@itemize
66   -@item Install the current versions of MSYS and MinGW from
67   -@url{http://www.mingw.org/}. You can find detailed installation
68   -instructions in the download section and the FAQ.
69   -
70   -@item Download
71   -the MinGW development library of SDL 1.2.x
72   -(@file{SDL-devel-1.2.x-mingw32.tar.gz}) from
73   -@url{http://www.libsdl.org}. Unpack it in a temporary place, and
74   -unpack the archive @file{i386-mingw32msvc.tar.gz} in the MinGW tool
75   -directory. Edit the @file{sdl-config} script so that it gives the
76   -correct SDL directory when invoked.
77   -
78   -@item Extract the current version of QEMU.
79   -
80   -@item Start the MSYS shell (file @file{msys.bat}).
81   -
82   -@item Change to the QEMU directory. Launch @file{./configure} and
83   -@file{make}. If you have problems using SDL, verify that
84   -@file{sdl-config} can be launched from the MSYS command line.
85   -
86   -@item You can install QEMU in @file{Program Files/Qemu} by typing
87   -@file{make install}. Don't forget to copy @file{SDL.dll} in
88   -@file{Program Files/Qemu}.
89   -
90   -@end itemize
91   -
92   -@section Cross compilation for Windows with Linux
93   -
94   -@itemize
95   -@item
96   -Install the MinGW cross compilation tools available at
97   -@url{http://www.mingw.org/}.
98   -
99   -@item
100   -Install the Win32 version of SDL (@url{http://www.libsdl.org}) by
101   -unpacking @file{i386-mingw32msvc.tar.gz}. Set up the PATH environment
102   -variable so that @file{i386-mingw32msvc-sdl-config} can be launched by
103   -the QEMU configuration script.
104   -
105   -@item
106   -Configure QEMU for Windows cross compilation:
107   -@example
108   -./configure --enable-mingw32
109   -@end example
110   -If necessary, you can change the cross-prefix according to the prefix
111   -choosen for the MinGW tools with --cross-prefix. You can also use
112   ---prefix to set the Win32 install path.
113   -
114   -@item You can install QEMU in the installation directory by typing
115   -@file{make install}. Don't forget to copy @file{SDL.dll} in the
116   -installation directory.
117   -
118   -@end itemize
119   -
120   -Note: Currently, Wine does not seem able to launch
121   -QEMU for Win32.
  66 +Download the experimental binary installer at
  67 +@url{http://www.freeoszoo.org/download.php}.
122 68  
123 69 @section Mac OS X
124 70  
125   -Mac OS X is currently not supported.
  71 +Download the experimental binary installer at
  72 +@url{http://www.freeoszoo.org/download.php}.
126 73  
127 74 @chapter QEMU PC System emulator invocation
128 75  
... ... @@ -138,11 +85,11 @@ available:
138 85 @enumerate
139 86  
140 87 @item
141   -@code{qemu-fast} uses the host Memory Management Unit (MMU) to simulate
142   -the x86 MMU. It is @emph{fast} but has limitations because the whole 4 GB
143   -address space cannot be used and some memory mapped peripherials
144   -cannot be emulated accurately yet. Therefore, a specific Linux kernel
145   -must be used (@xref{linux_compile}).
  88 +@code{qemu-fast} uses the host Memory Management Unit (MMU) to
  89 +simulate the x86 MMU. It is @emph{fast} but has limitations because
  90 +the whole 4 GB address space cannot be used and some memory mapped
  91 +peripherials cannot be emulated accurately yet. Therefore, a specific
  92 +guest Linux kernel can be used (@xref{linux_compile}) as guest OS.
146 93  
147 94 @item
148 95 @code{qemu} uses a software MMU. It is about @emph{two times
... ... @@ -153,22 +100,28 @@ slower} but gives a more accurate emulation.
153 100 QEMU emulates the following PC peripherials:
154 101  
155 102 @itemize @minus
  103 +@item
  104 +i440FX host PCI bridge and PIIX3 PCI to ISA bridge
156 105 @item
157   -VGA (hardware level, including all non standard modes)
  106 +Cirrus CLGD 5446 PCI VGA card or dummy VGA card with Bochs VESA
  107 +extensions (hardware level, including all non standard modes).
158 108 @item
159 109 PS/2 mouse and keyboard
160 110 @item
161   -2 IDE interfaces with hard disk and CD-ROM support
  111 +2 PCI IDE interfaces with hard disk and CD-ROM support
162 112 @item
163 113 Floppy disk
164 114 @item
165   -up to 6 NE2000 network adapters
  115 +NE2000 PCI network adapters
166 116 @item
167 117 Serial port
168 118 @item
169 119 Soundblaster 16 card
170 120 @end itemize
171 121  
  122 +QEMU uses the PC BIOS from the Bochs project and the Plex86/Bochs LGPL
  123 +VGA BIOS.
  124 +
172 125 @c man end
173 126  
174 127 @section Quick Start
... ... @@ -220,7 +173,7 @@ the raw disk image you use is not written back. You can however force
220 173 the write back by pressing @key{C-a s} (@xref{disk_images}).
221 174  
222 175 @item -m megs
223   -Set virtual RAM size to @var{megs} megabytes.
  176 +Set virtual RAM size to @var{megs} megabytes. Default is 128 MB.
224 177  
225 178 @item -initrd file
226 179 Use @var{file} as initial ram disk.
... ... @@ -238,6 +191,11 @@ with a serial console.
238 191 The SB16 emulation is disabled by default as it may give problems with
239 192 Windows. You can enable it manually with this option.
240 193  
  194 +@item -localtime
  195 +Set the real time clock to local time (the default is to UTC
  196 +time). This option is needed to have correct date in MS-DOS or
  197 +Windows.
  198 +
241 199 @end table
242 200  
243 201 Network options:
... ... @@ -261,11 +219,11 @@ it. Read @url{http://bellard.org/qemu/tetrinet.html} to have an
261 219 example of its use.
262 220  
263 221 @item -user-net
264   -(Experimental) Use the user mode network stack. This is the default if
265   -no tun/tap network init script is found.
  222 +Use the user mode network stack. This is the default if no tun/tap
  223 +network init script is found.
266 224  
267 225 @item -dummy-net
268   -Use the dummy network stack: no packet will be received on the network
  226 +Use the dummy network stack: no packet will be received by the network
269 227 cards.
270 228  
271 229 @end table
... ... @@ -287,7 +245,7 @@ Use @var{file} as initial ram disk.
287 245  
288 246 @end table
289 247  
290   -Debug options:
  248 +Debug/Expert options:
291 249 @table @option
292 250 @item -s
293 251 Wait gdb connection to port 1234 (@xref{gdb_usage}).
... ... @@ -297,6 +255,12 @@ Change gdb connection port.
297 255 Do not start CPU at startup (you must type 'c' in the monitor).
298 256 @item -d
299 257 Output log in /tmp/qemu.log
  258 +@item -isa
  259 +Simulate an ISA-only system (default is PCI system).
  260 +@item -std-vga
  261 +Simulate a standard VGA card with Bochs VBE extensions (default is
  262 +Cirrus Logic GD5446 PCI VGA)
  263 +
300 264 @end table
301 265  
302 266 During the graphical emulation, you can use the following keys:
... ... @@ -495,6 +459,10 @@ sendkey ctrl-alt-f1
495 459 This command is useful to send keys that your graphical user interface
496 460 intercepts at low level, such as @code{ctrl-alt-f1} in X Window.
497 461  
  462 +@item system_reset
  463 +
  464 +Reset the system.
  465 +
498 466 @end table
499 467  
500 468 @subsection Integer expressions
... ... @@ -904,63 +872,93 @@ Use @code{set architecture i8086} to dump 16 bit code. Then use
904 872  
905 873 @subsection Linux
906 874  
907   -To have access to SVGA graphic modes under X11, use the @code{vesa}
908   -X11 driver. For optimal performances, use the same depth as your
909   -native display.
  875 +To have access to SVGA graphic modes under X11, use the @code{vesa} or
  876 +the @code{cirrus} X11 driver. For optimal performances, use 16 bit
  877 +color depth in the guest and the host OS.
910 878  
911 879 @subsection Windows
912 880  
913 881 If you have a slow host, using Windows 95 is better as it gives the
914 882 best speed. Windows 2000 is also a good choice.
915 883  
916   -SVGA graphic modes support: QEMU currently supports the Bochs VESA VBE
917   -extensions. It supports color depths of 8, 15, 16 and 32 bits per
918   -pixel in 640x480, 800x600 and 1024x768. For optimal performances, use
919   -the same depth as your native display.
  884 +SVGA graphic modes support: QEMU emulates a Cirrus Logic GD5446 Video
  885 +card. All Windows versions starting from Windows 95 should recognize
  886 +and use this graphic card. For optimal performances, use 16 bit color
  887 +depth in the guest and the host OS.
920 888  
921   -@itemize
  889 +CPU usage reduction: Windows 9x does not correctly use the CPU HLT
  890 +instruction. The result is that it takes host CPU cycles even when
  891 +idle. You can install the utility from
  892 +@url{http://www.user.cityline.ru/~maxamn/amnhltm.zip} to solve this
  893 +problem. Note that no such tool is needed for NT, 2000 or XP.
922 894  
923   -@item Windows XP: it should be automatically detected.
  895 +@chapter QEMU PowerPC System emulator invocation
924 896  
925   -@item Windows NT4 or 2000: use the driver
926   -@url{http://www.volny.cz/xnavara/qemuvid_bin.zip} by Filip Navara.
  897 +Use the executable @file{qemu-system-ppc} to simulate a complete PREP
  898 +or PowerMac PowerPC system.
927 899  
928   -@item Windows 95/98/Me: no clean solution yet (but it will change
929   -soon). You can however use the shareware driver from SciTech. Here are
930   -the steps recommended by Christophe Bothamy on the Bochs mailing list:
  900 +QEMU emulates the following PowerMac peripherials:
931 901  
932   -@itemize
933   -@item install win95 with the VGA driver.
934   -@item download sdd 7 beta from @url{http://www.majorgeeks.com/download382.html}
935   -@item download pmhelp.vxd from @url{http://unununium.org/viewcvs/snap/redist/release/pmhelp.vxd}
936   -@item copy pmhelp.vxd to the win95 system directory
937   -@item install sdd7
938   -@end itemize
  902 +@itemize @minus
  903 +@item
  904 +UniNorth PCI Bridge
  905 +@item
  906 +PCI VGA compatible card with VESA Bochs Extensions
  907 +@item
  908 +2 PMAC IDE interfaces with hard disk and CD-ROM support
  909 +@item
  910 +NE2000 PCI adapters
  911 +@item
  912 +Non Volatile RAM
  913 +@item
  914 +VIA-CUDA with ADB keyboard and mouse.
939 915 @end itemize
940 916  
941   -@chapter QEMU PREP PowerPC System emulator invocation
942   -
943   -Use the executable @file{qemu-system-ppc} to simulate a complete PREP
944   -PowerPC system.
945   -
946 917 QEMU emulates the following PREP peripherials:
947 918  
948 919 @itemize @minus
949 920 @item
  921 +PCI Bridge
  922 +@item
  923 +PCI VGA compatible card with VESA Bochs Extensions
  924 +@item
950 925 2 IDE interfaces with hard disk and CD-ROM support
951 926 @item
952 927 Floppy disk
953 928 @item
954   -up to 6 NE2000 network adapters
  929 +NE2000 network adapters
955 930 @item
956 931 Serial port
957 932 @item
958 933 PREP Non Volatile RAM
  934 +@item
  935 +PC compatible keyboard and mouse.
959 936 @end itemize
960 937  
  938 +QEMU uses the Open Hack'Ware Open Firmware Compatible BIOS available at
  939 +@url{http://site.voila.fr/jmayer/OpenHackWare/index.htm}.
  940 +
961 941 You can read the qemu PC system emulation chapter to have more
962 942 informations about QEMU usage.
963 943  
  944 +@c man begin OPTIONS
  945 +
  946 +The following options are specific to the PowerPC emulation:
  947 +
  948 +@table @option
  949 +
  950 +@item -prep
  951 +Simulate a PREP system (default is PowerMAC)
  952 +
  953 +@item -g WxH[xDEPTH]
  954 +
  955 +Set the initial VGA graphic mode. The default is 800x600x15.
  956 +
  957 +@end table
  958 +
  959 +@c man end
  960 +
  961 +
964 962 More information is available at
965 963 @url{http://jocelyn.mayer.free.fr/qemu-ppc/}.
966 964  
... ... @@ -1065,3 +1063,76 @@ Activate log (logfile=/tmp/qemu.log)
1065 1063 Act as if the host page size was 'pagesize' bytes
1066 1064 @end table
1067 1065  
  1066 +@node compilation
  1067 +@chapter Compilation from the sources
  1068 +
  1069 +@section Linux/BSD
  1070 +
  1071 +Read the @file{README} which gives the related information.
  1072 +
  1073 +@section Windows
  1074 +
  1075 +@itemize
  1076 +@item Install the current versions of MSYS and MinGW from
  1077 +@url{http://www.mingw.org/}. You can find detailed installation
  1078 +instructions in the download section and the FAQ.
  1079 +
  1080 +@item Download
  1081 +the MinGW development library of SDL 1.2.x
  1082 +(@file{SDL-devel-1.2.x-mingw32.tar.gz}) from
  1083 +@url{http://www.libsdl.org}. Unpack it in a temporary place, and
  1084 +unpack the archive @file{i386-mingw32msvc.tar.gz} in the MinGW tool
  1085 +directory. Edit the @file{sdl-config} script so that it gives the
  1086 +correct SDL directory when invoked.
  1087 +
  1088 +@item Extract the current version of QEMU.
  1089 +
  1090 +@item Start the MSYS shell (file @file{msys.bat}).
  1091 +
  1092 +@item Change to the QEMU directory. Launch @file{./configure} and
  1093 +@file{make}. If you have problems using SDL, verify that
  1094 +@file{sdl-config} can be launched from the MSYS command line.
  1095 +
  1096 +@item You can install QEMU in @file{Program Files/Qemu} by typing
  1097 +@file{make install}. Don't forget to copy @file{SDL.dll} in
  1098 +@file{Program Files/Qemu}.
  1099 +
  1100 +@end itemize
  1101 +
  1102 +@section Cross compilation for Windows with Linux
  1103 +
  1104 +@itemize
  1105 +@item
  1106 +Install the MinGW cross compilation tools available at
  1107 +@url{http://www.mingw.org/}.
  1108 +
  1109 +@item
  1110 +Install the Win32 version of SDL (@url{http://www.libsdl.org}) by
  1111 +unpacking @file{i386-mingw32msvc.tar.gz}. Set up the PATH environment
  1112 +variable so that @file{i386-mingw32msvc-sdl-config} can be launched by
  1113 +the QEMU configuration script.
  1114 +
  1115 +@item
  1116 +Configure QEMU for Windows cross compilation:
  1117 +@example
  1118 +./configure --enable-mingw32
  1119 +@end example
  1120 +If necessary, you can change the cross-prefix according to the prefix
  1121 +choosen for the MinGW tools with --cross-prefix. You can also use
  1122 +--prefix to set the Win32 install path.
  1123 +
  1124 +@item You can install QEMU in the installation directory by typing
  1125 +@file{make install}. Don't forget to copy @file{SDL.dll} in the
  1126 +installation directory.
  1127 +
  1128 +@end itemize
  1129 +
  1130 +Note: Currently, Wine does not seem able to launch
  1131 +QEMU for Win32.
  1132 +
  1133 +@section Mac OS X
  1134 +
  1135 +The Mac OS X patches are not fully merged in QEMU, so you should look
  1136 +at the QEMU mailing list archive to have all the necessary
  1137 +information.
  1138 +
... ...
qemu-tech.texi
... ... @@ -258,7 +258,7 @@ segment base.
258 258  
259 259 @section Translation cache
260 260  
261   -A 2MByte cache holds the most recently used translations. For
  261 +A 16 MByte cache holds the most recently used translations. For
262 262 simplicity, it is completely flushed when it is full. A translation unit
263 263 contains just a single basic block (a block of x86 instructions
264 264 terminated by a jump or by a virtual CPU state change which the
... ... @@ -489,19 +489,6 @@ This program tests various Linux system calls. It is used to verify
489 489 that the system call parameters are correctly converted between target
490 490 and host CPUs.
491 491  
492   -@section @file{hello-i386}
493   -
494   -Very simple statically linked x86 program, just to test QEMU during a
495   -port to a new host CPU.
496   -
497   -@section @file{hello-arm}
498   -
499   -Very simple statically linked ARM program, just to test QEMU during a
500   -port to a new host CPU.
501   -
502   -@section @file{sha1}
503   -
504   -It is a simple benchmark. Care must be taken to interpret the results
505   -because it mostly tests the ability of the virtual CPU to optimize the
506   -@code{rol} x86 instruction and the condition code computations.
  492 +@section @file{qruncom.c}
507 493  
  494 +Example of usage of @code{libqemu} to emulate a user mode i386 CPU.
... ...