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