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