Misc minor improvements.
[seabios.git] / TODO
1 Clean up timer code.  Don't use PORT_DIAG as delay mechanism.
2
3 Disable a20 on jump to 16bit mode.
4
5 Do a pci scan for ide controllers - don't just assume ISA ports are
6 available.
7
8 The keyboard driver should detect ctrl+alt+del and reboot the
9 machine.
10
11 Fix keyboard LEDs.
12
13 Improve option rom handling.  A real bios can copy the option roms
14 from PCI space.  Also, there is no handling for BCVs today.
15
16 Clean up and clarify usage/scope of .bss and .data variables.
17
18 Review changes committed to coreboot, virtualbox, qemu, kvm, and bochs
19 cvs tip.
20   * bochs cvs (1.209)         -- all changes synched
21   * coreboot (r3348): 1.163   -- no noteworthy enhancements
22   * qemu (r4675): 1.207       -- supports >4Gig memory
23   * kvm (45a442c): 1.182      -- >4gig, e820 vmx pages, enable cache?,
24     wrmsr in smp_start and rombios32, acpi insrcovr table
25   * virtualbox (r9404): 1.176 -- f11/f12 kbd, lots of mouse changes,
26     logo, set text mode?, int 1589, floppy data rate?,
27     dummy_isr_function, int19 calls post
28
29 Look into ways to reduce stack usage.  Alter ISRs so that they do not
30 enable irqs.  Only call out to other bios functions after minimizing
31 stack usage.
32
33 Audit all sti/cli calls.  Audit all call16 calls to make sure flags is
34 setup properly with respect to irqs.
35
36 Audit statements where a 32bit intermediary changes meaning of a 16bit
37 comparison.
38
39 Code assumes ebda segment is static - it doesn't read 0x40e.
40
41 The __call16 code does a long jump to the interrupt trampolines - this
42 is unnecessary.
43
44 Cleanup setting of ES on GET/SET_BDA
45
46 Audit code for 16bit protected mode accesses.
47
48 Support 1ab1 from 16bit protected mode.
49
50 Verify option roms wont stomp on seabios stack and bss.
51
52 Possibly implement 32bit pcibios support.
53
54 Allow one to select adding 32 bit code to 0xf000 or in a separate
55 location.
56
57 See if it is possible to handle interrupts while in 32bit mode.
58
59 Add a kconfig style configuration program instead of requiring users
60 to modify config.h.
61
62 Look at integrating the lgpl vgabios into tree.
63
64 Look at usb booting specs.  Look at possibly supporting usb
65 keyboard/mice.
66
67 Add a graphical boot splash screen?