Detect keyboard ctrl-alt-delete and try to reset machine.
[seabios.git] / TODO
1 Review changes committed to coreboot, virtualbox, qemu, kvm, and bochs
2 cvs tip.
3   * bochs cvs 20081016:           -- better post resume support
4   * coreboot (r3348):    20060708 -- no noteworthy enhancements
5   * qemu (r5536):        20080603 -- has cmos smp count
6   * kvm (1a33292):       20071016 -- acpi dsdt changes, e820 vmx
7     pages, setup mtrrs, clear tsc, acpi intsrcovr table, different pci
8     irqs, smbios always uses 16 cpus, no acpi ssdt, fadt->gpe0_blk set
9   * virtualbox (r13560): 20061231 -- lots of mouse changes, logo,
10     scsi/etherboot hooks, int 1589, floppy data rate?, int19 calls
11     post
12
13 Look into ways to reduce stack usage.  Alter ISRs so that they do not
14 enable irqs.  Only call out to other bios functions after minimizing
15 stack usage.
16
17 Audit all sti/cli calls.  Audit all call16 calls to make sure flags is
18 setup properly with respect to irqs.
19
20 Audit statements where a 32bit intermediary changes meaning of a 16bit
21 comparison.
22
23 Code assumes ebda segment is static - it doesn't read 0x40e.
24
25 The __call16 code does a long jump to the interrupt trampolines - this
26 is unnecessary.
27
28 Cleanup setting of ES on GET/SET_BDA
29
30 Audit code for 16bit protected mode accesses.  Support 1ab1 from 16bit
31 protected mode.  The BDA is technically at segment 0x0040 (not
32 0x0000).
33
34 Possibly implement 32bit pcibios support.
35
36 Allow one to select adding 32 bit code to 0xf000 or in a separate
37 location.
38
39 See if it is possible to handle interrupts while in 32bit mode.
40
41 Add a kconfig style configuration program instead of requiring users
42 to modify config.h.
43
44 Look at integrating the lgpl vgabios into tree.
45
46 Look at usb booting specs.  Look at possibly supporting usb
47 keyboard/mice.
48
49 Add a graphical boot splash screen?