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