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