
This is the list of tasks still to be done for Powertweak before it goes 1.0.0
If you would like to help out on something, email dave@powertweak.com to make
sure that no-one else is already doing the same work.
(Or make a posting to the mailing list)

===============================================================================

- Update the config file parser.
  Upon loading the file, scan it once, and figure out where each section
  begins, and then pass these section pointers to the individual sub-parsers.
  This will stop the /proc parser having to grep through the pci section etc..
  Should be easy, just scan for #[PCI] or #[PROC]

- Write autoconf scripts.
  This will make things a little friendlier to build.
  It'll do stuff like not building the GTK interface when the GTK/GLIB
  libraries aren't installed etc..

- Finish off tweaks for certain chipsets.
  - The Intel chipsets have lots of stuff tweakable, which I've not
    added yet, such as DRAM timings etc..
    These haven't been added yet, as they must be implemented as code
    in the .c files rather than as tweaksets in the .h files.
    This obviously takes more time.

- More /proc/sys tweaks.

- Use capabilities instead of just checking if user==root.

- Additional command line arguments
    -safe
	This will tune everything to known safe parameters. [BIOS defaults]
    -optimal
	This will tune everything to safe but better than 'safe' parameters.
    -dangerous
	This will tune everything to the max!
    -f
	point to different config files
    -loglevel=n
	0=No logging
	1=Minimal logging (Startup msgs etc)
	2=Medium logging (Each device logged)
	3=Heavy logging (Register tweaks)
	4=Debugging (Everything short of an strace)

- Tweaks for more PCI devices.
  - Especially the remaining unknown chipsets.
	- Anyone want to add support for ALi ? Opti ? SiS ?
	- There are some remaining Intel & VIA chipsets still not done.
  - Non PCIset devices (NICs, Capture cards etc..)
	- At the least we can adjust the latencies of some cards.

- Optimisations for non-PCI devices. Possible? (E)ISA? VL-BUS?

- GUI for setting options.

    Currently, a GTK based GUI is in development.

    Hopefully an ncurses/newt/slang based GUI will be added at a later date.
    v0.1.0 showed a hack of the kernel menu system.
    I've reconsidered since then, and have decided several things.
    - It won't look anything like that.
      See the MSDOS 'TweakBIOS' program for inspiration.
    - It will be written in C, not a script like the kernel menu.
      This is because we need things like PCI bus reading routines.

- Analysis of system config files making sure all optimal settings are set.
    - httpd.conf
	- Number of clients
	- Toggle hostname lookup
    - nfs
    - ppp options
	- mtu
	- mru
    - X config
	- There are many options to increase performance of X.
	  These vary from server to server. As not many people read the X
	  documentation, these are missed. Adding them to the GUI should
	  get them used.

- Integration of other speed enhancing tools, such as proform, irqtune.

- Tidy some sections of the code
    Some bits are real ugly. Usually the bits I wrote late at night 8^|

- Support for architectures other than x86.
  I had reports from one user after v0.1.4 didn't compile on his Alpha.
  Hopefully the fixes in v0.1.5 should allow everything to compile and
  run without problems.
  - Does the PCI tuning work ?
  - Need to write non-x86 versions of 'cpuid' function.
