update
[qemu] / Changelog
1 version 0.8.0:
2
3   - ARM system emulation: Arm Integrator/CP board with an arm1026ej-s
4     cpu (Paul Brook)
5   - SMP support
6   - Mac OS X cocoa improvements (Mike Kronenberg)
7   - Mac OS X CoreAudio driver (Mike Kronenberg)
8   - DirectSound driver (malc)
9   - ALSA audio driver (malc)
10   - new audio options: '-soundhw' and '-audio-help' (malc)
11   - ES1370 PCI audio device (malc)
12   - Initial USB support
13   - Linux host serial port access
14   - Linux host low level parallel port access
15   - New network emulation code supporting VLANs.
16   - MIPS and MIPSel User Linux emulation
17   - MIPS fixes to boot Linux (Daniel Jacobowitz)
18   - NX bit support
19   - Initial SPARC SMP support (Blue Swirl)
20   - Major overhaul of the virtual FAT driver for read/write support
21     (Johannes Schindelin)
22
23 version 0.7.2:
24   
25   - x86_64 fixes (Win2000 and Linux 2.6 boot in 32 bit)
26   - merge self modifying code handling in dirty ram page mecanism.
27   - MIPS fixes (Ralf Baechle)
28   - better user net performances
29
30 version 0.7.1:
31
32   - read-only Virtual FAT support (Johannes Schindelin)
33   - Windows 2000 install disk full hack (original idea from Vladimir
34     N. Oleynik)
35   - VMDK disk image creation (Filip Navara)
36   - SPARC64 progress (Blue Swirl)
37   - initial MIPS support (Jocelyn mayer)
38   - MIPS improvements (Ralf Baechle)
39   - 64 bit fixes in user networking (initial patch by Gwenole Beauchesne)
40   - IOAPIC support (Filip Navara)
41
42 version 0.7.0:
43
44   - better BIOS translation and HDD geometry auto-detection
45   - user mode networking bug fix
46   - undocumented FPU ops support
47   - Cirrus VGA: support for 1280x1024x[8,15,16] modes
48   - 'pidfile' option
49   - .dmg disk image format support (Johannes Schindelin)
50   - keymaps support (initial patch by Johannes Schindelin)
51   - big endian ARM support (Lennert Buytenhek)
52   - added generic 64 bit target support
53   - x86_64 target support
54   - initial APIC support
55   - MMX/SSE/SSE2/PNI support
56   - PC parallel port support (Mark Jonckheere)
57   - initial SPARC64 support (Blue Swirl)
58   - SPARC target boots Linux (Blue Swirl)
59   - armv5te user mode support (Paul Brook)
60   - ARM VFP support (Paul Brook)
61   - ARM "Angel" semihosting syscalls (Paul Brook)
62   - user mode gdb stub support (Paul Brook)
63   - Samba 3 support
64   - initial Cocoa support (Pierre d'Herbemont)
65   - generic FPU emulation code
66   - Virtual PC read-only disk image support (Alex Beregszaszi)
67
68 version 0.6.1:
69
70   - Mac OS X port (Pierre d'Herbemont)
71   - Virtual console support
72   - Better monitor line edition
73   - New block device layer 
74   - New 'qcow' growable disk image support with AES encryption and
75     transparent decompression
76   - VMware 3 and 4 read-only disk image support (untested)
77   - Support for up to 4 serial ports
78   - TFTP server support (Magnus Damm)
79   - Port redirection support in user mode networking
80   - Support for not executable data sections
81   - Compressed loop disk image support (Johannes Schindelin)
82   - Level triggered IRQ fix (aka NE2000 PCI performance fix) (Steve
83     Wormley)
84   - Fixed Fedora Core 2 problems (now you can run qemu without any
85     LD_ASSUME_KERNEL tricks on FC2)
86   - DHCP fix for Windows (accept DHCPREQUEST alone)
87   - SPARC system emulation (Blue Swirl)
88   - Automatic Samba configuration for host file access from Windows.
89   - '-loadvm' and '-full-screen' options
90   - ne2000 savevm support (Johannes Schindelin)
91   - Ctrl-Alt is now the default grab key. Ctrl-Alt-[0-9] switches to
92     the virtual consoles.
93   - BIOS floppy fix for NT4 (Mike Nordell, Derek Fawcus, Volker Ruppert)
94   - Floppy fixes for NT4 and NT5 (Mike Nordell)
95   - NT4 IDE fixes (Ben Pfaf, Mike Nordell)
96   - SDL Audio support and SB16 fixes (malc)
97   - ENTER instruction bug fix (initial patch by Stefan Kisdaroczi)
98   - VGA font change fix
99   - VGA read-only CRTC register fix
100
101 version 0.6.0:
102
103   - minimalist FPU exception support (NetBSD FPU probe fix)
104   - cr0.ET fix (Win95 boot)
105   - *BSD port (Markus Niemisto)
106   - I/O access fix (signaled by Mark Jonckheere)
107   - IDE drives serial number fix (Mike Nordell)
108   - int13 CDROM BIOS fix (aka Solaris x86 install CD fix)
109   - int15, ah=86 BIOS fix (aka Solaris x86 hardware probe hang up fix)
110   - BSR/BSF "undefined behaviour" fix
111   - vmdk2raw: convert VMware disk images to raw images
112   - PCI support
113   - NE2K PCI support
114   - dummy VGA PCI support
115   - VGA font selection fix (Daniel Serpell)
116   - PIC reset fix (Hidemi KAWAI)
117   - PIC spurious irq support (aka Solaris install bug)
118   - added '-localtime' option
119   - Cirrus CL-GD54xx VGA support (initial patch by Makoto Suzuki (suzu))
120   - APM and system shutdown support
121   - Fixed system reset
122   - Support for other PC BIOSes
123   - Initial PowerMac hardware emulation
124   - PowerMac/PREP OpenFirmware compatible BIOS (Jocelyn Mayer)
125   - initial IDE BMDMA support (needed for Darwin x86)
126   - Set the default memory size for PC emulation to 128 MB
127
128 version 0.5.5:
129
130   - SDL full screen support (initial patch by malc)
131   - VGA support on PowerPC PREP
132   - VBE fixes (Matthew Mastracci)
133   - PIT fixes (aka Win98 hardware probe and "VGA slowness" bug)
134   - IDE master only fixes (aka Win98 CD-ROM probe bug)
135   - ARM load/store half word fix (Ulrich Hecht)
136   - FDC fixes for Win98
137
138 version 0.5.4:
139   
140   - qemu-fast fixes
141   - BIOS area protection fix (aka EMM386.EXE fix) (Mike Nordell)
142   - keyboard/mouse fix (Mike Nordell)
143   - IDE fixes (Linux did not recognized slave drivers)
144   - VM86 EIP masking fix (aka NT5 install fix) (Mike Nordell)
145   - QEMU can now boot a PowerPC Linux kernel (Jocelyn Mayer)
146   - User mode network stack
147   - imul imm8 fix + 0x82 opcode support (Hidemi KAWAI)
148   - precise self modifying code (aka BeOS install bug)
149
150 version 0.5.3:
151
152   - added Bochs VESA VBE support
153   - VGA memory map mode 3 access fix (OS/2 install fix)
154   - IDE fixes (Jens Axboe)
155   - CPU interrupt fixes
156   - fixed various TLB invalidation cases (NT install)
157   - fixed cr0.WP semantics (XP install)
158   - direct chaining support for SPARC and PowerPC (faster)
159   - ARM NWFPE support (initial patch by Ulrich Hecht)
160   - added specific x86 to x86 translator (close to native performance
161     in qemu-i386 and qemu-fast)
162   - shm syscalls support (Paul McKerras)
163   - added accurate CR0.MP/ME/TS emulation
164   - fixed DMA memory write access (Win95 boot floppy fix)
165   - graphical x86 linux loader
166   - command line monitor 
167   - generic removable device support
168   - support of CD-ROM change
169   - multiple network interface support
170   - initial x86-64 host support (Gwenole Beauchesne)
171   - lret to outer priviledge fix (OS/2 install fix)
172   - task switch fixes (SkyOS boot)
173   - VM save/restore commands
174   - new timer API
175   - more precise RTC emulation (periodic timers + time updates)
176   - Win32 port (initial patch by Kazu)
177
178 version 0.5.2:
179
180   - improved soft MMU speed (assembly functions and specializing)
181   - improved multitasking speed by avoiding flushing TBs when
182     switching tasks
183   - improved qemu-fast speed
184   - improved self modifying code handling (big performance gain in
185     softmmu mode).
186   - fixed IO checking
187   - fixed CD-ROM detection (win98 install CD)
188   - fixed addseg real mode bug (GRUB boot fix)
189   - added ROM memory support (win98 boot)
190   - fixed 'call Ev' in case of paging exception
191   - updated the script 'qemu-binfmt-conf.sh' to use QEMU automagically
192     when launching executables for the supported target CPUs.
193   - PowerPC system emulation update (Jocelyn Mayer)
194   - PC floppy emulation and DMA fixes (Jocelyn Mayer)
195   - polled mode for PIC (Jocelyn Mayer)
196   - fixed PTE dirty bit handling
197   - fixed xadd same reg bug
198   - fixed cmpxchg exception safeness
199   - access to virtual memory in gdb stub
200   - task gate and NT flag fixes
201   - eflags optimisation fix for string operations
202
203 version 0.5.1:
204   
205   - float access fixes when using soft mmu
206   - PC emulation support on PowerPC
207   - A20 support
208   - IDE CD-ROM emulation
209   - ARM fixes (Ulrich Hecht)
210   - SB16 emulation (malc)
211   - IRET and INT fixes in VM86 mode with IOPL=3
212   - Port I/Os use TSS io map
213   - Full task switching/task gate support
214   - added verr, verw, arpl, fcmovxx
215   - PowerPC target support (Jocelyn Mayer)
216   - Major SPARC target fixes (dynamically linked programs begin to work)
217
218 version 0.5.0:
219   
220   - full hardware level VGA emulation
221   - graphical display with SDL
222   - added PS/2 mouse and keyboard emulation
223   - popw (%esp) fix
224   - mov to/from segment data width fix
225   - added real mode support
226   - added Bochs BIOS and LGPL'ed VGA BIOS loader in qemu
227   - m68k host port (Richard Zidlicky)
228   - partial soft MMU support for memory mapped I/Os
229   - multi-target build
230   - fixed: no error code in hardware interrupts
231   - fixed: pop ss, mov ss, x and sti disable hardware irqs for the next insn
232   - correct single stepping thru string operations
233   - preliminary SPARC target support (Thomas M. Ogrisegg)
234   - tun-fd option (Rusty Russell)
235   - automatic IDE geometry detection
236   - renamed 'vl' to qemu[-fast] and user qemu to qemu-{cpu}.
237   - added man page
238   - added full soft mmu mode to launch unpatched OSes.
239
240 version 0.4.3:
241
242   - x86 exception fix in case of nop instruction.
243   - gcc 3.2.2 bug workaround (RedHat 9 fix)
244   - sparc and Alpha host fixes
245   - many ARM target fixes: 'ls' and 'bash' can be launched.
246
247 version 0.4.2:
248
249  - many exception handling fixes (can compile a Linux kernel inside vl)
250  - IDE emulation support
251  - initial GDB stub support
252  - deferred update support for disk images (Rusty Russell)
253  - accept User Mode Linux Copy On Write disk images
254  - SMP kernels can at least be booted
255
256 version 0.4.1:
257   
258  - more accurate timer support in vl.
259  - more reliable NE2000 probe in vl.
260  - added 2.5.66 kernel in vl-test.
261  - added VLTMPDIR environment variable in vl.
262
263 version 0.4:
264
265  - initial support for ring 0 x86 processor emulation
266  - fixed signal handling for correct dosemu DPMI emulation
267  - fast x86 MMU emulation with mmap()
268  - fixed popl (%esp) case
269  - Linux kernel can be executed by QEMU with the 'vl' command.
270
271 version 0.3:
272
273  - initial support for ARM emulation
274  - added fnsave, frstor, fnstenv, fldenv FPU instructions
275  - added FPU register save in signal emulation
276  - initial ARM port
277  - Sparc and Alpha ports work on the regression test
278  - generic ioctl number conversion
279  - fixed ioctl type conversion
280
281 version 0.2:
282
283  - PowerPC disassembly and ELF symbols output (Rusty Russell)
284  - flock support (Rusty Russell)
285  - ugetrlimit support (Rusty Russell)
286  - fstat64 fix (Rusty Russell)
287  - initial Alpha port (Falk Hueffner)
288  - initial IA64 port (Matt Wilson)
289  - initial Sparc and Sparc64 port (David S. Miller)
290  - added HLT instruction
291  - LRET instruction fix.
292  - added GPF generation for I/Os.
293  - added INT3 and TF flag support.
294  - SHL instruction C flag fix.
295  - mmap emulation for host page size > 4KB
296  - self-modifying code support
297  - better VM86 support (dosemu works on non trivial programs)
298  - precise exception support (EIP is computed correctly in most cases)
299  - more precise LDT/GDT/IDT emulation
300  - faster segment load in vm86 mode
301  - direct chaining of basic blocks (faster emulation)
302
303 version 0.1.6:
304
305  - automatic library search system. QEMU can now work with unpatched
306    ELF dynamic loader and libc (Rusty Russell).
307  - ISO C warning fixes (Alistair Strachan)
308  - first self-virtualizable version (works only as long as the
309    translation cache is not flushed)
310  - RH9 fixes
311
312 version 0.1.5:
313
314  - ppc64 support + personality() patch (Rusty Russell)
315  - first Alpha CPU patches (Falk Hueffner)
316  - removed bfd.h dependancy
317  - fixed shrd, shld, idivl and divl on PowerPC.
318  - fixed buggy glibc PowerPC rint() function (test-i386 passes now on PowerPC).
319
320 version 0.1.4:
321
322  - more accurate VM86 emulation (can launch small DOS 16 bit
323    executables in wine).
324  - fixed push/pop fs/gs
325  - added iret instruction.
326  - added times() syscall and SIOCATMARK ioctl.
327
328 version 0.1.3:
329
330  - S390 support (Ulrich Weigand)
331  - glibc 2.3.x compile fix (Ulrich Weigand)
332  - socketcall endian fix (Ulrich Weigand)
333  - struct sockaddr endian fix (Ulrich Weigand)
334  - sendmsg/recvmsg endian fix (Ulrich Weigand)
335  - execve endian fix (Ulrich Weigand)
336  - fdset endian fix (Ulrich Weigand)
337  - partial setsockopt syscall support (Ulrich Weigand)
338  - more accurate pushf/popf emulation
339  - first partial vm86() syscall support (can be used with runcom example).
340  - added bound, cmpxchg8b, cpuid instructions
341  - added 16 bit addressing support/override for string operations
342  - poll() fix
343  
344 version 0.1.2:
345
346  - compile fixes
347  - xlat instruction
348  - xchg instruction memory lock
349  - added simple vm86 example (not working with QEMU yet). The 54 byte
350    DOS executable 'pi_10.com' program was released by Bertram
351    Felgenhauer (more information at http://www.boo.net/~jasonp/pipage.html).
352
353 version 0.1.1:
354
355  - glibc 2.2 compilation fixes
356  - added -s and -L options
357  - binary distribution of x86 glibc and wine
358  - big endian fixes in ELF loader and getdents.
359
360 version 0.1:
361
362  - initial public release.