update
[qemu] / Changelog
1 version 0.5.4:
2   
3   - qemu-fast fixes
4   - BIOS area protection fix (aka EMM386.EXE fix) (Mike Nordell)
5   - keyboard/mouse fix (Mike Nordell)
6   - IDE fixes (Linux did not recognized slave drivers)
7   - VM86 EIP masking fix (aka NT5 install fix) (Mike Nordell)
8
9 version 0.5.3:
10
11   - added Bochs VESA VBE support
12   - VGA memory map mode 3 access fix (OS/2 install fix)
13   - IDE fixes (Jens Axboe)
14   - CPU interrupt fixes
15   - fixed various TLB invalidation cases (NT install)
16   - fixed cr0.WP semantics (XP install)
17   - direct chaining support for SPARC and PowerPC (faster)
18   - ARM NWFPE support (initial patch by Ulrich Hecht)
19   - added specific x86 to x86 translator (close to native performance
20     in qemu-i386 and qemu-fast)
21   - shm syscalls support (Paul McKerras)
22   - added accurate CR0.MP/ME/TS emulation
23   - fixed DMA memory write access (Win95 boot floppy fix)
24   - graphical x86 linux loader
25   - command line monitor 
26   - generic removable device support
27   - support of CD-ROM change
28   - multiple network interface support
29   - initial x86-64 host support (Gwenole Beauchesne)
30   - lret to outer priviledge fix (OS/2 install fix)
31   - task switch fixes (SkyOS boot)
32   - VM save/restore commands
33   - new timer API
34   - more precise RTC emulation (periodic timers + time updates)
35   - Win32 port (initial patch by Kazu)
36
37 version 0.5.2:
38
39   - improved soft MMU speed (assembly functions and specializing)
40   - improved multitasking speed by avoiding flushing TBs when
41     switching tasks
42   - improved qemu-fast speed
43   - improved self modifying code handling (big performance gain in
44     softmmu mode).
45   - fixed IO checking
46   - fixed CD-ROM detection (win98 install CD)
47   - fixed addseg real mode bug (GRUB boot fix)
48   - added ROM memory support (win98 boot)
49   - fixed 'call Ev' in case of paging exception
50   - updated the script 'qemu-binfmt-conf.sh' to use QEMU automagically
51     when launching executables for the supported target CPUs.
52   - PowerPC system emulation update (Jocelyn Mayer)
53   - PC floppy emulation and DMA fixes (Jocelyn Mayer)
54   - polled mode for PIC (Jocelyn Mayer)
55   - fixed PTE dirty bit handling
56   - fixed xadd same reg bug
57   - fixed cmpxchg exception safeness
58   - access to virtual memory in gdb stub
59   - task gate and NT flag fixes
60   - eflags optimisation fix for string operations
61
62 version 0.5.1:
63   
64   - float access fixes when using soft mmu
65   - PC emulation support on PowerPC
66   - A20 support
67   - IDE CD-ROM emulation
68   - ARM fixes (Ulrich Hecht)
69   - SB16 emulation (malc)
70   - IRET and INT fixes in VM86 mode with IOPL=3
71   - Port I/Os use TSS io map
72   - Full task switching/task gate support
73   - added verr, verw, arpl, fcmovxx
74   - PowerPC target support (Jocelyn Mayer)
75   - Major SPARC target fixes (dynamically linked programs begin to work)
76
77 version 0.5.0:
78   
79   - full hardware level VGA emulation
80   - graphical display with SDL
81   - added PS/2 mouse and keyboard emulation
82   - popw (%esp) fix
83   - mov to/from segment data width fix
84   - added real mode support
85   - added Bochs BIOS and LGPL'ed VGA BIOS loader in qemu
86   - m68k host port (Richard Zidlicky)
87   - partial soft MMU support for memory mapped I/Os
88   - multi-target build
89   - fixed: no error code in hardware interrupts
90   - fixed: pop ss, mov ss, x and sti disable hardware irqs for the next insn
91   - correct single stepping thru string operations
92   - preliminary SPARC target support (Thomas M. Ogrisegg)
93   - tun-fd option (Rusty Russell)
94   - automatic IDE geometry detection
95   - renamed 'vl' to qemu[-fast] and user qemu to qemu-{cpu}.
96   - added man page
97   - added full soft mmu mode to launch unpatched OSes.
98
99 version 0.4.3:
100
101   - x86 exception fix in case of nop instruction.
102   - gcc 3.2.2 bug workaround (RedHat 9 fix)
103   - sparc and Alpha host fixes
104   - many ARM target fixes: 'ls' and 'bash' can be launched.
105
106 version 0.4.2:
107
108  - many exception handling fixes (can compile a Linux kernel inside vl)
109  - IDE emulation support
110  - initial GDB stub support
111  - deferred update support for disk images (Rusty Russell)
112  - accept User Mode Linux Copy On Write disk images
113  - SMP kernels can at least be booted
114
115 version 0.4.1:
116   
117  - more accurate timer support in vl.
118  - more reliable NE2000 probe in vl.
119  - added 2.5.66 kernel in vl-test.
120  - added VLTMPDIR environment variable in vl.
121
122 version 0.4:
123
124  - initial support for ring 0 x86 processor emulation
125  - fixed signal handling for correct dosemu DPMI emulation
126  - fast x86 MMU emulation with mmap()
127  - fixed popl (%esp) case
128  - Linux kernel can be executed by QEMU with the 'vl' command.
129
130 version 0.3:
131
132  - initial support for ARM emulation
133  - added fnsave, frstor, fnstenv, fldenv FPU instructions
134  - added FPU register save in signal emulation
135  - initial ARM port
136  - Sparc and Alpha ports work on the regression test
137  - generic ioctl number conversion
138  - fixed ioctl type conversion
139
140 version 0.2:
141
142  - PowerPC disassembly and ELF symbols output (Rusty Russell)
143  - flock support (Rusty Russell)
144  - ugetrlimit support (Rusty Russell)
145  - fstat64 fix (Rusty Russell)
146  - initial Alpha port (Falk Hueffner)
147  - initial IA64 port (Matt Wilson)
148  - initial Sparc and Sparc64 port (David S. Miller)
149  - added HLT instruction
150  - LRET instruction fix.
151  - added GPF generation for I/Os.
152  - added INT3 and TF flag support.
153  - SHL instruction C flag fix.
154  - mmap emulation for host page size > 4KB
155  - self-modifying code support
156  - better VM86 support (dosemu works on non trivial programs)
157  - precise exception support (EIP is computed correctly in most cases)
158  - more precise LDT/GDT/IDT emulation
159  - faster segment load in vm86 mode
160  - direct chaining of basic blocks (faster emulation)
161
162 version 0.1.6:
163
164  - automatic library search system. QEMU can now work with unpatched
165    ELF dynamic loader and libc (Rusty Russell).
166  - ISO C warning fixes (Alistair Strachan)
167  - first self-virtualizable version (works only as long as the
168    translation cache is not flushed)
169  - RH9 fixes
170
171 version 0.1.5:
172
173  - ppc64 support + personality() patch (Rusty Russell)
174  - first Alpha CPU patches (Falk Hueffner)
175  - removed bfd.h dependancy
176  - fixed shrd, shld, idivl and divl on PowerPC.
177  - fixed buggy glibc PowerPC rint() function (test-i386 passes now on PowerPC).
178
179 version 0.1.4:
180
181  - more accurate VM86 emulation (can launch small DOS 16 bit
182    executables in wine).
183  - fixed push/pop fs/gs
184  - added iret instruction.
185  - added times() syscall and SIOCATMARK ioctl.
186
187 version 0.1.3:
188
189  - S390 support (Ulrich Weigand)
190  - glibc 2.3.x compile fix (Ulrich Weigand)
191  - socketcall endian fix (Ulrich Weigand)
192  - struct sockaddr endian fix (Ulrich Weigand)
193  - sendmsg/recvmsg endian fix (Ulrich Weigand)
194  - execve endian fix (Ulrich Weigand)
195  - fdset endian fix (Ulrich Weigand)
196  - partial setsockopt syscall support (Ulrich Weigand)
197  - more accurate pushf/popf emulation
198  - first partial vm86() syscall support (can be used with runcom example).
199  - added bound, cmpxchg8b, cpuid instructions
200  - added 16 bit addressing support/override for string operations
201  - poll() fix
202  
203 version 0.1.2:
204
205  - compile fixes
206  - xlat instruction
207  - xchg instruction memory lock
208  - added simple vm86 example (not working with QEMU yet). The 54 byte
209    DOS executable 'pi_10.com' program was released by Bertram
210    Felgenhauer (more information at http://www.boo.net/~jasonp/pipage.html).
211
212 version 0.1.1:
213
214  - glibc 2.2 compilation fixes
215  - added -s and -L options
216  - binary distribution of x86 glibc and wine
217  - big endian fixes in ELF loader and getdents.
218
219 version 0.1:
220
221  - initial public release.