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