diff --git a/TO-DO b/TO-DO
new file mode 100644
index 0000000..ca47d02
--- /dev/null
+++ b/TO-DO
@@ -0,0 +1,212 @@
+-------------------------------------------------------------------------------
+-- Copyright (c) 1998-2007,2008 Free Software Foundation, Inc.               --
+--                                                                           --
+-- Permission is hereby granted, free of charge, to any person obtaining a   --
+-- copy of this software and associated documentation files (the             --
+-- "Software"), to deal in the Software without restriction, including       --
+-- without limitation the rights to use, copy, modify, merge, publish,       --
+-- distribute, distribute with modifications, sublicense, and/or sell copies --
+-- of the Software, and to permit persons to whom the Software is furnished  --
+-- to do so, subject to the following conditions:                            --
+--                                                                           --
+-- The above copyright notice and this permission notice shall be included   --
+-- in all copies or substantial portions of the Software.                    --
+--                                                                           --
+-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS   --
+-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF                --
+-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN --
+-- NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,       --
+-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR     --
+-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE --
+-- USE OR OTHER DEALINGS IN THE SOFTWARE.                                    --
+--                                                                           --
+-- Except as contained in this notice, the name(s) of the above copyright    --
+-- holders shall not be used in advertising or otherwise to promote the      --
+-- sale, use or other dealings in this Software without prior written        --
+-- authorization.                                                            --
+-------------------------------------------------------------------------------
+-- $Id: TO-DO,v 1.51 2008/10/11 19:22:27 tom Exp $
+-------------------------------------------------------------------------------
+
+SHORT-TERM TO-DO ITEMS:
+
+Known Problems:
+
++ libtool does not work with GNAT.
+
++ The screen optimization has been tested only in an ad hoc manner.  We should
+  develop a good set of regression tests to cover lib_doupdate.c and
+  lib_mvcur.c.
+
++ Magic cookie support (for nonzero xmc values) does not work, since the logic
+  does not take into account refresh.  Also, the initial optimize does not
+  adjust the current location when a cookie is emitted.
+
++ Scrolling optimization has holes:  for example, it forces repaints of the
+  screen between calls to refresh().
+
++ SVr4 uses slightly different rules for determining when softkeys are shown. 
+  For example, they are initially displayed (before the ncurses 'e' test
+  activates them), and a touchwin can apparently also force them to be
+  displayed.
+
++ The code departs from perfect 8-bit cleanness in one respect; you cannot
+  specify a character \200 as part of a capability string, because the
+  terminfo library interprets \200 as a request to embed NUL (\000) at that
+  point.  This is a legacy terminfo property we can't mess with.
+
++ The window classes defined in the c++ subdirectory need documentation.  Some
+  C++ programmer could earn a lot of good karma by doing this...
+
++ vid_attr() should support the set_a_attributes (sgr1) string, but does not. 
+  There appear to be no terminals that require that functionality.
+
++ the configure --disable-ext-funcs option does not work for Ada95 tree.
+
++ the --with-pthread configuration builds for Cygwin, but does not work
+  properly (test/worm.c shows all of the worms in the same location).
+
++ the --enable-rpath configure option builds for the corresponding platforms;
+  however combining it with --with-ticlib and --with-termlib does not always
+  produce libraries that can be run without setting environment variables.
+  Building those with libtool does not work either.  (This is a problem with
+  the BSD platforms).
+
+Portability (or lack thereof):
+
++ Users of older System V UNIXes (but not Solaris, and probably not SVr4) may
+  trip over a known problem with the signal-handling code which causes abrupt
+  termination of ncurses applications following resume from a ^Z suspend (this
+  problem was first seen running lynx).  You will not see this problem if you
+  are running Linux or one of the 4.4BSD derivatives like FreeBSD, NetBSD, or
+  BSDI.  For details, see the analysis in the header comment of
+  ncurses/tty/lib_tstp.c .
+
++ In theory, vwprintw and vwscanf are supposed to use the older varargs.h
+  interface for handling variadic argument lists (and are deprecated by X/Open
+  for that reason).  Linux doesn't have varargs.h, it has the newer
+  X/Open-standard stdargs.h equivalent.  So these functions use stdargs
+  instead.  This is unlikely to be a problem unless you're building ncurses on
+  a System V old enough to only have varargs.h.  (Solaris 2.5.1 used the
+  stdarg.h binding as well).
+
++ If you're using a BSD earlier than 4.4BSD, or a Linux old enough not to have
+  a native vsscanf(3) in its library, vwscanw() will not work.  You lose.  (It
+  should work on any System V, however).  If you want to fix this, add an
+  implementation to ncurses/vsscanf.c.
+
++ The C++ binding fails to build with a few C++ compilers.
+
++ terminfo.5 does not format with the SunOS (and most other platform's) tbl
+  utility because it relies on a diversion for each table entry.  Get the
+  groff package.
+
+Untested features:
+
++ The code for the HP color model using set_color_pair is untested.
+
++ The code for handling soft labels on a terminal type with built-in support
+  for them (num_labels > 0, label_height, label_width, label_format, label_off,
+  label_on, plab_norm, lab_f*) has not been tested.  The label_format and
+  lab_f* capabilities aren't presently used.
+
+LONGER-TERM TO-DO ITEMS:
+
+1. Extended COSE conformance
+
+There is an XPG4 standard released in 1996 which describes a superset
+of the SVr4 API.  The library is BASE conformant with this standard.
+We would like to make ncurses fully conformant at the EXTENDED level
+supporting internationalization.
+
+2. DOS port
+
+Only a few of the files in the library depend on the terminfo format.
+It should be possible to further kernelize the package, then rewrite 
+a small number of core files to produce a functionally-compatible
+port that would do updates to a memory-mapped screen area.  The first
+result of this would be a DOS port.
+
+3. X port
+
+It would be nice if ncurses could recognize when it was running under X and
+maintain its own window.  With this feature, all ncurses programs would
+automatically become X programs.  The challenge is to handle resize events
+properly.
+
+4. Unused capabilities
+
+The currently unused capabilities fall naturally into several groups:
+
+A. Status-line capabilities:
+
+	Booleans: has_status_line, status_line_esc_ok.
+	Numerics: width_status_line.
+	Strings: dis_status_line, from_status_line, to_status_line.
+
+System V Release 1 curses made no use of these at all.  SVr4's use, if
+any, is unknown.  From the AT&T termcap file it looks like curses, in general,
+shouldn't use them; terminal variants with status lines have their line count
+decremented by 1, suggesting that curses is supposed to leave the status line
+alone.
+
+B. Printer capabilities:
+
+	Boolean: col_addr_glitch, cr_cancels_micro_mode, has_print_wheel,
+		row_addr_glitch, semi_auto_right_margin, cpi_changes_res,
+		lpi_changes_res.
+	Numeric: buffer_capacity, dot_horz_spacing, dot_vert_spacing,
+		max_micro_address, max_micro_jump, micro_col_size,
+		micro_line_size, number_of_pins, output_res_char,
+		output_res_line, output_res_horz_inch, print_rate,
+		wide_char_size, bit_image_entwining, bit_image_type.
+	String: down_half_line, form_feed, up_half_line, set_left_margin,
+		set_right_margin, clear_margins, change_char_pitch
+		... set_page_length (all the SVr4 printer caps),
+
+Curses doesn't use these.
+
+C. Printer-control capabilities:
+
+	Boolean: prtr_silent.
+	Strings: print_screen, prtr_on, prtr_off, prtr_non.
+
+Curses doesn't use these.
+
+D. Dialer strings:
+
+	Strings: hangup, dial_phone, quick_dial, tone, pulse, flash_hook,
+		fixed_pause, wait_tone.
+
+Curses doesn't use these.
+
+E. Window and virtual-terminal capabilities:
+
+	Numerics: maximum_windows, virtual_terminal.
+	Strings: req_for_input, create_window, goto_window, set_window.
+
+These seem to be fossils from some AT&T experiments on character-based
+window systems that never escaped the lab.  The virtual_terminal cap had
+something to do with building terminal emulations into tty line disciplines.
+
+F. Unused VDT capabilities:
+
+	Booleans: erase_overstrike, has_meta_key, insert_null_glitch,
+		move_insert, dest_tabs_magic_smso, transparent_underline,
+		needs_xon_xoff, hard_cursor.
+	Numerics: lines_of_memory, buttons.
+	Strings: pkey_key, pkey_local, pkey_xmit, underline_char, 
+		enter_xon_mode,	exit_xon_mode, xon_character, xoff_character, 
+		display_clock, remove_clock, user[0-5], display_pc_char,
+		enter_scancode_mode, exit_scancode_mode, pc_term_options, 
+		scancode_escape, alt_scancode_esc.
+
+These are the potentially important ones for ncurses.  Notes:
+
+	i) ncurses doesn't need move_insert; it never uses cup/hpa/vpa while
+		insert_mode is on.
+
+	ii) We probably don't care about dest_tabs_magic_smso; only
+		Telerays used it and they're all long obsolete.
+
+-- vile:txtmode
