12014-08-12  Tim Marston  <tim@ed.am>
2
3	* gtypist.c: #include sys/time.h (for gettimeofday() and timeval)
4
52014-06-22  Tim Marston  <tim@ed.am>
6
7	* gtypist.c: lesson timing in do_drill() and do_speedtest() is now
8	done to millisecond (not second) resolution
9
102013-06-01  Felix Natter <fnatter@gmx.net>
11
12	* utf8.c: Avoid that Alt+<anything> is treated as ESC, which could
13	  lead to accidentally aborting a lesson reported by Chris Jones
14	  <cjns1989@gmail.com>.
15
162012-07-08  Felix Natter <fnatter@gmx.net>
17
18	* gtypist.c, utf8.[ch]: Avoid collision between 0x107 unicode char
19	  (c with accent) and KEY_BACKSPACE by honoring the return value
20	  of get_wch() (Reported by Kalthor <kalthor@interia.pl>)
21
222011-11-05  Felix Natter <fnatter@gmx.net>
23
24	* utf8.c use MultiByteToWideChar() also in utf8len() on minGW
25	  (this fixes problems with ru.typ on minGW)
26
272011-11-04  Felix Natter <fnatter@gmx.net>
28
29	* utf8.c: use MultiByteToWideChar() in widen() on Windows. This will
30	  convert to two-byte wchar_t which is what minGW + PDCurses support
31
322011-10-30  Tim Marston <edam@waxworlds.org>
33
34	* gtypist.c, utf8.c/h, cursmenu.c: get_widech() uses ints to avoid
35	  using wint_t, which is broken on Windows. Also, simplified reading
36	  characters so that get_widech() is always used. It also now
37	  handles windows newline characters for us.
38
392011-10-26  Felix Natter <fnatter@gmx.net>
40
41	* gtypist.c, utf8.c/h: add get_widech() wrapper which
42	  calls getch() or get_wch() depending on whether it's a UTF8
43          console or not => fixes input problems with KOI8-R terminals
44	* script.c, gtypist.c: try to read (convertFromUTF8()) the whole
45	  lesson at the very beginning, in order to terminate at the very
46          beginning in the case of conversion errors (and not in the middle
47	  of typing)
48
492011-10-24  Felix Natter <fnatter@gmx.net>
50
51	* gtypist.c, utf8.c/h: use convertFromUTF8() instead of widen()
52	  for Y/N and R/N/E. add towideupper() and iswideupper() helper
53	  functions that do they right thing depending on whether it's
54	  a UTF8 terminal or an 8bit-terminal
55
562011-10-22  Felix Natter <fnatter@gmx.net>
57
58	* *.c, *.h: make gtypist run on non-utf8 locales with
59	  international lessons
60	* gtypist.c: add RETURN_CHARACTER (unicode symbol to designate
61	  newlines that must be typed)
62
632011-10-14  Tim Marston <edam@waxworlds.org>
64
65	* gtypist.c, cursmenu.c, script.h: minor fixes to get gtypist to
66	  build under MinGW
67	* gtypist.c: removed call to MessageBeep() on windows, since it just
68	  corrupts the stack! Currently we don't beep on error on windows, as
69	  sending ASCII_BELL to the terminal just pauses and does no "bell".
70
712011-08-07  Felix Natter <fnatter@gmx.net>
72
73	* utf8.c: new wchar_t* widen(char*) helper function
74	* gtypist.c: widen the YN and RNE strings, but their usage isn't yet
75	  fixed
76
772011-07-08  Felix Natter <fnatter@gmx.net>
78
79	* utf8.c, utf8.h: use proper #define before #include for cchar_t
80	  (needed for wide character output)
81
822011-02-28  Tim Marston <edam@waxworlds.org>
83
84	* gtypist.c: rewrote the code to open a script file and check for the
85	  presence of HOME environment variable (required for the bestlog) so
86	  that it should work on Windows platforms when HOME is not present.
87
882011-02-26  Tim Marston <edam@waxworlds.org>
89
90	* gtypist.c: added best-score tracking feature and re-wrote some of the
91	  speed calculation/display code to always work with CPM (which are
92	  saved in the bestlog) and convert to WPM only at display-time.
93
942011-01-03  Tim Marston <edam@waxworlds.org>
95
96	* gtypist.c: fixed a bug where pressing escape during wait_user()
97	  caused seek_label() to be called, but get_script_line() was never re-
98	  called. This meant that the previously buffered next script line
99	  (from before the seek) would still get executed. wait_user() now
100	  treats escape as a "continue" character for all but tutorial prompts,
101	  which now handle the seek properly by calling get_script_line().
102
1032009-02-19  Paul Goins  <general@vultaire.net>
104
105	* gtypist.c: Re-fixed the rounding bug by adding a function which
106	  compares floats using sprintf-based rounding.  (Bug re-reported by
107	  Jakub Gedeon.)
108
1092009-02-04  Paul Goins  <general@vultaire.net>
110
111	* gtypist.c: (display_speed): Fixed long-standing bug where gtypist
112	  would display that an error rate of =< 3.0% is needed, but the
113	  displayed error rate would sometimes be 3.0% due to rounding.  (Now
114	  we use floor() to always round down and avoid this.)
115	  (Error reported by Ali Gundaz)
116
1172008-05-17  Paul Goins  <general@vultaire.net>
118
119	* gtypist.c (display_speed): Changed maximum speed to 9999.99.  CPM
120	  mode could go into 4 digits for really, really fast typists.
121
1222008-05-12  Paul Goins  <general@vultaire.net>
123
124	* cursmenu.c, gtypist.c, script.h: Updated copyright notices.
125	* gtypist.c: Bug fix: --banner-colour, the alternate option for
126	  --banner-colours, changed to --banner-colors.
127
1282008-05-07  Paul Goins  <general@vultaire.net>
129
130	* gtypist.c: Bug fix: added "break;" for "--scoring" case
131
1322008-05-06  Paul Goins  <general@vultaire.net>
133
134	* gtypist.c: Added switch for "characters-per-minute" mode.  This
135	  is pretty much cosmetic since "words" are standardized to 5
136	  characters, but some countries tend to use CPM instead of WPM.
137	  However, speeds will top out at 999.99 CPM (200 WPM).
138