89 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			89 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
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)
 | 
						|
- Optimizations/improvements:
 | 
						|
 - Condition code/branch handling like x86, also for FPU?
 | 
						|
 - Remove remaining explicit alignment checks
 | 
						|
 - 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 dependent 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
 | 
						|
 | 
						|
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
 | 
						|
 - CS4231: merge with cs4231a, add DMA
 | 
						|
 - Add cg6, bwtwo
 | 
						|
 - Arbitrary resolution support
 | 
						|
 - PCI for MicroSparc-IIe
 | 
						|
 - JavaStation machines
 | 
						|
 - SBus slot probing, FCode ROM support
 | 
						|
 - 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
 | 
						|
 - ESP PIO mode
 | 
						|
 | 
						|
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:
 | 
						|
- A lot of unimplemented features
 | 
						|
 - A lot of real machine types
 |