blob: 8cc9aa55f073887d80a110e87876b367a7d4e2da [file] [log] [blame]
bellard728c9fd2004-01-05 00:08:14 +00001short term:
2----------
bellard2023a2c2005-11-23 21:03:04 +00003- support variable tsc freq
4- cpu_interrupt() win32/SMP fix
5- USB host async
6- IDE async
bellard8f468202004-11-07 17:44:42 +00007- debug option in 'configure' script + disable -fomit-frame-pointer
bellard53360e02004-11-14 18:58:40 +00008- Precise VGA timings for old games/demos (malc patch)
9- merge PIC spurious interrupt patch
bellard8f468202004-11-07 17:44:42 +000010- merge Solaris patch
bellard6df700c2005-02-22 19:43:42 +000011- warning for OS/2: must not use 128 MB memory (merge bochs cmos patch ?)
bellard8f468202004-11-07 17:44:42 +000012- config file (at least for windows/Mac OS X)
13- commit message if execution of code in IO memory
14- update doc: PCI infos.
15- VNC patch + Synaptic patch.
16- basic VGA optimizations
bellard52c00a52004-04-25 21:27:03 +000017- physical memory cache (reduce qemu-fast address space size to about 32 MB)
18- better code fetch (different exception handling + CS.limit support)
19- do not resize vga if invalid size.
20- avoid looping if only exceptions
bellard50691462004-03-17 23:44:10 +000021- cycle counter for all archs
bellard2be3bc02004-01-18 23:14:25 +000022- TLB code protection support for PPC
bellard8f468202004-11-07 17:44:42 +000023- see openMosix Doc
bellard52c00a52004-04-25 21:27:03 +000024- disable SMC handling for ARM/SPARC/PPC (not finished)
bellard2be3bc02004-01-18 23:14:25 +000025- see undefined flags for BTx insn
bellard82c7e2a2004-01-04 16:10:33 +000026- user/kernel PUSHL/POPL in helper.c
27- keyboard output buffer filling timing emulation
bellard3d4b4c02004-01-25 15:22:15 +000028- return UD exception if LOCK prefix incorrectly used
bellard82c7e2a2004-01-04 16:10:33 +000029- test ldt limit < 7 ?
bellard285dc332003-10-27 23:58:04 +000030- tests for each target CPU
bellard411bffc2003-06-09 15:38:23 +000031- fix CCOP optimisation
bellarddf0f11a2003-05-28 00:27:57 +000032- fix all remaining thread lock issues (must put TBs in a specific invalid
33 state, find a solution for tb_flush()).
bellard46907642003-07-07 12:17:46 +000034- fix arm fpu rounding (at least for float->integer conversions)
bellarddf0f11a2003-05-28 00:27:57 +000035
bellard8f468202004-11-07 17:44:42 +000036ppc specific:
37------------
38- TLB invalidate not needed if msr_pr changes
bellard8f468202004-11-07 17:44:42 +000039- SPR_ENCODE() not useful
40- enable shift optimizations ?
41
bellard2023a2c2005-11-23 21:03:04 +000042linux-user specific:
43-------------------
bellard285dc332003-10-27 23:58:04 +000044- add IPC syscalls
bellard8f468202004-11-07 17:44:42 +000045- handle rare page fault cases (in particular if page fault in helpers or
bellarddf0f11a2003-05-28 00:27:57 +000046 in syscall emulation code).
bellardb03c60f2003-03-23 17:19:56 +000047- more syscalls (in particular all 64 bit ones, IPCs, fix 64 bit
48 issues, fix 16 bit uid issues)
bellarddf0f11a2003-05-28 00:27:57 +000049- use page_unprotect_range in every suitable syscall to handle all
50 cases of self modifying code.
bellard2023a2c2005-11-23 21:03:04 +000051- fix thread stack freeing (use kernel 2.5.x CLONE_CHILD_CLEARTID)
52- use kernel traps for unaligned accesses on ARM ?
53
54
55lower priority:
56--------------
57- int15 ah=86: use better timing
58- suppress shift_mem ops
59- fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
60- optimize FPU operations (evaluate x87 stack pointer statically)
61- use -msoft-float on ARM