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