blob: 178a071bfa9d45beeecf927ee4a4c3fd43d2c399 [file] [log] [blame]
bellard728c9fd2004-01-05 00:08:14 +00001short term:
2----------
bellard47378eb2006-07-04 16:33:33 +00003- cycle counter for all archs
bellard2023a2c2005-11-23 21:03:04 +00004- cpu_interrupt() win32/SMP fix
bellard47378eb2006-07-04 16:33:33 +00005- support variable tsc freq
bellard2023a2c2005-11-23 21:03:04 +00006- USB host async
7- IDE async
bellard8f468202004-11-07 17:44:42 +00008- debug option in 'configure' script + disable -fomit-frame-pointer
bellard53360e02004-11-14 18:58:40 +00009- Precise VGA timings for old games/demos (malc patch)
10- merge PIC spurious interrupt 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)
bellard8f468202004-11-07 17:44:42 +000013- update doc: PCI infos.
bellard8f468202004-11-07 17:44:42 +000014- basic VGA optimizations
bellard52c00a52004-04-25 21:27:03 +000015- better code fetch (different exception handling + CS.limit support)
16- do not resize vga if invalid size.
17- avoid looping if only exceptions
bellard2be3bc02004-01-18 23:14:25 +000018- TLB code protection support for PPC
ths5fafdf22007-09-16 21:08:06 +000019- see openMosix Doc
bellard52c00a52004-04-25 21:27:03 +000020- disable SMC handling for ARM/SPARC/PPC (not finished)
bellard2be3bc02004-01-18 23:14:25 +000021- see undefined flags for BTx insn
bellard82c7e2a2004-01-04 16:10:33 +000022- user/kernel PUSHL/POPL in helper.c
23- keyboard output buffer filling timing emulation
bellard3d4b4c02004-01-25 15:22:15 +000024- return UD exception if LOCK prefix incorrectly used
bellard82c7e2a2004-01-04 16:10:33 +000025- test ldt limit < 7 ?
bellard285dc332003-10-27 23:58:04 +000026- tests for each target CPU
bellard411bffc2003-06-09 15:38:23 +000027- fix CCOP optimisation
bellarddf0f11a2003-05-28 00:27:57 +000028- fix all remaining thread lock issues (must put TBs in a specific invalid
29 state, find a solution for tb_flush()).
bellarddf0f11a2003-05-28 00:27:57 +000030
bellard8f468202004-11-07 17:44:42 +000031ppc specific:
32------------
33- TLB invalidate not needed if msr_pr changes
bellard8f468202004-11-07 17:44:42 +000034- enable shift optimizations ?
35
bellard2023a2c2005-11-23 21:03:04 +000036linux-user specific:
37-------------------
bellard285dc332003-10-27 23:58:04 +000038- add IPC syscalls
bellard8f468202004-11-07 17:44:42 +000039- handle rare page fault cases (in particular if page fault in helpers or
bellarddf0f11a2003-05-28 00:27:57 +000040 in syscall emulation code).
bellardb03c60f2003-03-23 17:19:56 +000041- more syscalls (in particular all 64 bit ones, IPCs, fix 64 bit
42 issues, fix 16 bit uid issues)
bellarddf0f11a2003-05-28 00:27:57 +000043- use page_unprotect_range in every suitable syscall to handle all
44 cases of self modifying code.
bellard2023a2c2005-11-23 21:03:04 +000045- fix thread stack freeing (use kernel 2.5.x CLONE_CHILD_CLEARTID)
46- use kernel traps for unaligned accesses on ARM ?
47
48
49lower priority:
50--------------
51- int15 ah=86: use better timing
52- suppress shift_mem ops
53- fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
54- optimize FPU operations (evaluate x87 stack pointer statically)
55- use -msoft-float on ARM