                 ooooo     ooo ooooooooo.   ooooooo  ooooo
                 `888'     `8' `888   `Y88.  `8888    d8'
                  888       8   888   .d88'    Y888..8P
                  888       8   888ooo88P'      `8888'
                  888       8   888            .8PY888.
                  `88.    .8'   888           d8'  `888b
                    `YbodP'    o888o        o888o  o88888o


                    The Ultimate Packer for eXecutables
          Copyright (c) 1996-2004 Markus Oberhumer & Laszlo Molnar
                       http://upx.sourceforge.net


Here are some possible projects from which you can choose if you'd like to
contribute to UPX. Be sure to get in touch with us first to avoid
duplicate efforts.


User interface:
---------------

 - Write a nifty Win32 GUI (in C++), but try to keep the size of the
   final executable small. Compression should be in a separate
   thread that calls do_one_file() [see src/work.cpp].

 - Draw a nice UPX icon.


More formats:
-------------

 - Amiga

 - BeOS

 - C64

 - elks/8086 (this is a 16-bit linux-8086 kernel)
   See http://www.elks.ecs.soton.ac.uk/

 - freebsd/386 (generic), freebsd/elf386 (specialized).
   Probably could share most of the linux code.

 - Windows CE

 - add support for self-extracting HTML pages using a Javascript stub
   (like the AlgART HTML Packer "AHP")


Existing formats:
-----------------

 - djgpp2/coff: add support for DLX dynamic loading
     (see SEAL http://www.home.sk/public/seal/ )

 - dos/com: add support for very long files - convert to exe if necessary

 - dos/exe: implement filter support

 - dos/sys: add support for sys/exe combos

 - linux/i386:
     - use the new assembly preprocessor stuff (ie. process the file
       headers internally)
     - UPX uncompressor daemon
     - rewrite the stub in assembly (not sure if this is a good idea...)

 - watcom/le: add support for per section compression, LX support, VXD

 - win32/pe: display a nice dialog box in the stub in case
     of problems (like importing a DLL or function fails)
 - win32/pe: finer control over resource compression, per section
     compression


Compression ratio:
------------------

 - invent more effective filters

 - I (Markus) will continue to work on better compression algorithms,
   so be sure to do better than me if you plan working on this ;-)


Other:
------

 - anything else you think that could improve UPX...


Thanks for your contribution.

