2008-05-10 14:09:24 +02:00
|
|
|
TODO-list:
|
|
|
|
|
|
|
|
CPU common:
|
|
|
|
- Unimplemented features/bugs:
|
|
|
|
- Delay slot handling may fail sometimes (branch end of page, delay
|
|
|
|
slot next page)
|
|
|
|
- Atomical instructions
|
|
|
|
- CPU features should match real CPUs (also ASI selection)
|
2008-05-17 08:08:15 +02:00
|
|
|
- Allow choosing of NWINDOWS (CPU model specific and as a CPU feature)
|
2008-05-10 14:09:24 +02:00
|
|
|
- Optimizations/improvements:
|
|
|
|
- Condition code/branch handling like x86, also for FPU?
|
2008-05-17 08:08:15 +02:00
|
|
|
- Remove remaining explicit alignment checks
|
2008-05-10 14:09:24 +02:00
|
|
|
- Global register for regwptr, so that windowed registers can be
|
|
|
|
accessed directly
|
|
|
|
- Improve Sparc32plus addressing
|
|
|
|
- NPC/PC static optimisations (use JUMP_TB when possible)? (Is this
|
|
|
|
obsolete?)
|
|
|
|
- Synthetic instructions
|
|
|
|
- MMU model dependant on CPU model
|
|
|
|
- Select ASI helper at translation time (on V9 only if known)
|
|
|
|
- KQemu/KVM support for VM only
|
|
|
|
- Hardware breakpoint/watchpoint support
|
|
|
|
- Cache emulation mode
|
|
|
|
- Reverse-endian pages
|
|
|
|
- Faster FPU emulation
|
|
|
|
- Busy loop detection
|
|
|
|
|
|
|
|
Sparc32 CPUs:
|
|
|
|
- Unimplemented features/bugs:
|
|
|
|
- Sun4/Sun4c MMUs
|
|
|
|
- Some V8 ASIs
|
|
|
|
|
|
|
|
Sparc64 CPUs:
|
|
|
|
- Unimplemented features/bugs:
|
|
|
|
- Interrupt handling
|
|
|
|
- Secondary address space, other MMU functions
|
|
|
|
- Many V9/UA2005/UA2007 ASIs
|
|
|
|
- Rest of V9 instructions, missing VIS instructions
|
|
|
|
- IG/MG/AG vs. UA2007 globals
|
|
|
|
- Full hypervisor support
|
|
|
|
- SMP/CMT
|
|
|
|
- Sun4v CPUs
|
|
|
|
- Optimizations/improvements:
|
|
|
|
- Use TCG logic ops for VIS when possible
|
|
|
|
|
|
|
|
Sun4:
|
|
|
|
- To be added
|
|
|
|
|
|
|
|
Sun4c:
|
|
|
|
- A lot of unimplemented features
|
|
|
|
- Maybe split from Sun4m
|
|
|
|
|
|
|
|
Sun4m:
|
|
|
|
- Unimplemented features/bugs:
|
|
|
|
- Hardware devices do not match real boards
|
|
|
|
- Floppy does not work
|
|
|
|
- Missing keys, sendkey support for all keys
|
|
|
|
- CS4231 (DMA, make sound, make available for PC)
|
|
|
|
- Add cg6, bwtwo
|
|
|
|
- Arbitrary resolution support
|
|
|
|
- PCI for MicroSparc-IIe
|
|
|
|
- JavaStation machines
|
2008-05-17 08:08:15 +02:00
|
|
|
- SBus slot probing, FCode ROM support
|
2008-05-10 14:09:24 +02:00
|
|
|
- SMP probing support
|
|
|
|
- Interrupt routing does not match real HW
|
|
|
|
- SuSE 7.3 keyboard sometimes unresponsive
|
|
|
|
- Gentoo 2004.1 SMP does not work
|
|
|
|
- SS600MP ledma -> lebuffer
|
|
|
|
- Type 5 keyboard
|
|
|
|
- Less fixed hardware choices
|
|
|
|
- DBRI audio (Am7930)
|
|
|
|
- BPP parallel
|
|
|
|
- Diagnostic switch
|
2008-05-17 08:08:15 +02:00
|
|
|
- ESP PIO mode
|
2008-05-10 14:09:24 +02:00
|
|
|
|
|
|
|
Sun4d:
|
|
|
|
- A lot of unimplemented features:
|
|
|
|
- SBI
|
|
|
|
- IO-unit
|
|
|
|
- Maybe split from Sun4m
|
|
|
|
|
|
|
|
Sun4u:
|
|
|
|
- Unimplemented features/bugs:
|
|
|
|
- Interrupt controller
|
|
|
|
- PCI/IOMMU support (Simba, JIO, Tomatillo, Psycho, Schizo, Safari...)
|
|
|
|
- SMP
|
|
|
|
- Happy Meal Ethernet, flash, I2C, GPIO
|
|
|
|
- A lot of real machine types
|
|
|
|
|
|
|
|
Sun4v:
|
|
|
|
- To be added
|