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