1 FreeDOS Command Line Interface Development History
2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10 o removed some scaffolding.
12 o added tab file completion.
13 o added command line history.
17 o formatted all existing source modules.
18 o added prompt support.
19 o added drive selection.
21 o started this development log.
23 08/06/95 prerelease of version 0.30
24 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25 o reorganized code into separate source modules.
26 o added batch processing support (thanks to Evan Jeffrey).
27 o added exec code (thanks to Steffan Kaiser).
28 o removed environment handling (thanks again to Steffan Kaiser)
30 [ 08/08/95 -- Matt Rains ]
31 o formatted this development log.
32 o formatted all existing source modules so that they comply with recommended
37 o replaced CD command.
38 o modified DIR command.
39 o DIR now called regardless of other DIR.??? files. this is done because of
44 o used Borland's spawnve to fix exec problem
45 o fixed CD again so you don't need a space after it
46 o couple of spelling fixes
50 o modified cmdinput.c to work with non-standard screen sizes (see 28.com)
51 o fixed a bug in history.c that made it not work when you hit the up arrow
53 o fixed DIR to work a little more like MS-DOS's DIR (see internal.c)
54 o fixed some code in where.c to make things a bit more efficient and nicer
56 01/06/96 version 0.40 (never released)
58 o added redirection and piping support!!! (see redir.c and command.c)
59 o fixed a stupid pointer problem in where.c that was causing LOTS of
60 problems in the strangest places...
61 o added day of the week support to prompt.c (oops, that was already supposed
63 o fixed and reorganized the EXEC code!!! Thanks to Svante Frey!
64 o reorganized command.c and internal.c to handle parsing internal commands
65 more efficiently and consistently.
66 o changed the behavior of MD, CD, RD to work without spaces (e.g. CD\DOS)
67 o small changes here and there to make it work with redirection/piping
68 (e.g. DIR only pauses if you're not doing redirection)
72 Version 0.40 was never released because I was home on Christmas vacation,
73 and I couldn't upload it. By the time I got back to school, I had the
74 LOADHIGH patch from Svante Frey, so I decided to jump up to 0.50 without any
75 release of 0.40... - Tim Norman
77 o LOADHIGH/LOADFIX/LH support added!!!! Many thanks go to Svante Frey!
78 o bug fixed in command parsing that didn't handle / switches correctly...
79 o removed debugging output from history.c
83 Lots of internal changes here... Not much added to the interface.
85 o Changed internals to use first,rest parameters instead of arrays of params
87 o Some other things I don't remember :)
93 o Added hook to the PATH command
98 Finally added Oliver Mueller's ALIAS command! Also numerous bug fixes.
100 o Added ALIAS command
101 o Removed support for - as a switch in LOADHIGH.C
102 o Bugfixes in BATCH.C. %0 was returning garbage
103 o Removed lots of unused variables, reducing # of warnings when compiling
104 o Other miscellaneous code clean-ups
105 o Changed WHERE.C to use a little less memory
107 06/14/97 version 0.71
108 ~~~~~~~~~~~~~~~~~~~~~
109 Lots of bug fixes, plus some additional features.
111 o New DIR command. Now more like MS-DOS's DIR. /p supported, /s coming soon
112 o bug fix in internal.c - parse_firstarg
113 o Rewrote parser in batch.c (Steffan Kaiser)
114 o Ctrl-Break checking in various places (Steffan Kaiser)
115 o Error level setting/checking (%? in batch files) (Steffan Kaiser)
116 o bug fix in cmdinput.c ("%i" on command-line caused weird behavior)
117 o bug fix in where.c (first item in path wasn't searched)
119 07/12/97 version 0.72
120 ~~~~~~~~~~~~~~~~~~~~~
121 More bug fixes and code cleanup
123 o Rewrote cmdinput.c to be more efficient (Marc Desrochers)
124 o Added insert/overstrike modes (Marc Desrochers)
125 o Replaced findxy() with pointers into BIOS (maxx, maxy) (Marc Desrochers)
126 o Fixed bug that disallowed listing of root directories
127 o Fixed bug that didn't search the first path (again!)
129 07/13/97 version 0.72b
130 ~~~~~~~~~~~~~~~~~~~~~~
131 Disabled a feature that caused a crash on some machines.
133 o Replaced setcursor calls in cmdinput.c with _setcursortype
134 o Added dir.c to the distribution (was left out in 0.72)
136 07/01/98 version 0.73 (Rob Lake)
137 ~~~~~~~~~~~~~~~~~~~~~~
138 o New DIR commands supported: /S, /B, /L, /A and /W.
139 (/R changed to /S). Also /? added.
140 o Supports DIRCMD in environment.
141 o Supports turning off commands with hyphen (ex. /-S
142 turns off recursive listing)
143 o Changed error messages for DIR and DEL to more MS-DOS'ish
144 o Moved error messages from DIR.C and DEL.C to COMMAND.H
145 (more may go there soon)
146 o Fixed bug that caused dir *.ext/X not to work (no spaces
147 between filespec and slash)
148 o Added wildcard support for DEL command
149 o Added prompt and help switch for DEL command, /P and /?
151 o Added support for /C when envoking the shell
152 o Added /P support when Kernel loads shell. This means
153 the shell now is permanent and runs the autoexec.bat
154 (/E is not implemented)
155 o Added my name (Rob Lake) to the developer listing
156 o Changed version routine to print out copyright notice
157 with no args, and with appropriate switches, warranty
158 and redistribution notices and developer listing
160 07/08/1998 version 0.74 (John P. Price (linux-guru@gcfl.net))
161 ~~~~~~~~~~~~~~~~~~~~~~~~
163 o Now sets COMSPEC environment variable
164 o misc clean up and optimization
165 o added date, time and type commands
166 o changed to using spawnl instead of exec. exec does not copy the
167 environment to the child process!
169 o removed extra returns; closer to MSDOS
170 o fixed wide display so that an extra return is not displayed when
171 there is five filenames in the last line.
173 o commented out show_environment function. Not used anymore.
175 o removed call to show_environment in set command.
176 o moved test for syntax before allocating memory in set command.
177 o misc clean up and optimization.
183 07/08/1998 version 0.74b (John P. Price (linux-guru@gcfl.net))
184 ~~~~~~~~~~~~~~~~~~~~~~~~
186 o fixed call to spawnl so that it would pass command line arguments
189 07/12/98 version 0.74c (Rob Lake rlake@cs.mun.ca)
190 ~~~~~~~~~~~~~~~~~~~~~~
192 o removed redundant use of error message defines and moved
193 error printing calls to ERROR.C to reduced program size.
196 o created ERR_HAND.C/H
199 07/13/98 version 0.74d (Rob Lake rlake@cs.mun.ca)
200 ~~~~~~~~~~~~~~~~~~~~~~
202 o removed most of the commands and placed them in there own file
203 -- del, ren, set and ver
204 o created DEL.C, REN.C SET.C and VER.C
205 o fixed bug that caused del not to delete files with no attributes
206 o the critical error handler count number of times called, autofails
210 16 Jul 1998 (Hans B Pufal <hansp@digiweb.com>)
211 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
213 A new version, implements CALL, ECHO, GOT, IF, PAUSE, SHIFT and
214 BEEP. There is a stub for FOR but that's all.
217 New file to keep the internal command table. I plan on getting rid
218 of the table real soon now and replacing it with a dynamic
222 A new (improved ;) version. Conforms closely to MS-DOS specs.
223 Cleaned up (and fixed) the redirection handler.
226 Version D with changes. Look for the HBP tag.
229 Modified file, now supports append redirects.
232 16 Jul 1998 (Rob Lake rlake@cs.mun.ca)
233 ~~~~~~~~~~~~~~~~~~~~~~
234 Added TRUENAME command.
237 19 Jul 1998 (Hans B Pufal) <hansp@digiweb.com>)
238 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
239 o Preserve state of echo flag across batch calls.
240 o Implementation of FOR command
243 20 Jul 1998 (John P Price <linux-guru@gcfl.net>)
244 ~~~~~~~~~~~~~~~~~~~~~~
245 o Fixed bug in DATE.C.
246 o Fixed bug in LH.ASM.
247 o Separated commands into individual files.
250 28 Jul 1998 (John P Price <linux-guru@gcfl.net>)
251 ~~~~~~~~~~~~~~~~~~~~~~
253 o Put ifdef's around all commands and added include file config.h
254 Now you can define exact what commands you want to include in
256 o Also added ifdefs for optional features: aliases, command history
257 and filename completion.
258 o Added display of available internal commands and options at startup.
261 29 Jul 1998 (Rob Lake rlake@cs.mun.ca)
262 ~~~~~~~~~~~~~~~~~~~~~~
263 o changed date.c and time.c, and wrote datefunc.c and timefunc.c to
264 impliment _dos_getdate, _dos_setdate, _dos_gettime and _dos_settime.
265 This is the first of many steps to make the shell compatible under
268 30-Jul-1998 (John P Price <linux-guru@gcfl.net>)
269 ~~~~~~~~~~~~~~~~~~~~~~
270 o Changed filename completion so that a second TAB displays a list of
272 o made filename be lower case if last character typed is lower case.
273 o Moved filename completion code to filecomp.c.
274 o Change ver command to display email address to report bugs, and the
275 web page address for updates.
276 o fixed so that it find_which returns NULL if filename is not
277 executable (does not have .bat, .com, or .exe extension). Before
278 command would to execute any file with any extension. (opps!)
280 30-Jul-1998 (John P Price <linux-guru@gcfl.net>)
281 ~~~~~~~~~~~~~~~~~~~~~~
282 o Fixed bug where if you typed something, then hit HOME, then tried to
283 type something else in insert mode, it locked up.
284 o Changed default insert mode to on. There should be a way to change
285 this. Maybe options to doskey command.
286 o Added VERIFY command
288 02-Aug-1998 (Hans B Pufal) <hansp@digiweb.com>)
289 ~~~~~~~~~~~~~~~~~~~~~~
290 o batch.c: Fixed bug in ECHO flag restoration at exit from batch file
291 o command.c: Fixed return value when called with /C option
292 o Terminate label on first space character, use only first 8 chars of
295 04-Aug-1998 (Hans B Pufal) <hansp@digiweb.com>)
296 ~~~~~~~~~~~~~~~~~~~~~~
297 o call.c: added lines to initialize for pointers. This fixed the
298 lock-up that happened sometimes when calling a batch file from
301 07-Aug-1998 (John P Price <linux-guru@gcfl.net>)
302 ~~~~~~~~~~~~~~~~~~~~~~
303 o Fixed carrage return output to better match MSDOS with echo on or off.
306 07-Dec-1998 ReactOS CMD version 0.0.1 (Eric Kohl <ekohl@abo.rhein-zeitung.de>)
307 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
308 o First test release.
309 o Added internal ATTRIB command.
311 11-Dec-1998 ReactOS CMD version 0.0.2 (Eric Kohl <ekohl@abo.rhein-zeitung.de>)
312 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
313 o Fixed bug in ALIAS. CMD crashed when you tried to remove an alias.
314 o Fixed bug in split(). Added freep(). This fixed the DEL command.
315 o Improved ATTRIB command.
316 o Added most help texts.
317 o Fixed recursive DIR ("dir /s").
318 o Fixed DATE and TIME command. Now they accept values when used
320 o Implemented LABEL command.
322 05-Jan-1999 ReactOS CMD version 0.0.3 (Eric Kohl <ekohl@abo.rhein-zeitung.de>)
323 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
324 o Added COLOR command and "/t" option.
325 o Cursor shows insert/overwrite mode.
326 o COMSPEC environment variable is set upon startup.
327 o Started COPY command.
328 o Started MOVE command.
329 o Added directory stack (PUSHD and POPD commands).
330 o Added support for file names or paths that contain spaces
331 (quoted paths / file names).
332 o Added recursion to ATTRIB command.
333 o Added locale support for DIR, DATE, TIME and PROMPT.
336 10-Feb-1999 ReactOS CMD version 0.0.4 (Eric Kohl <ekohl@abo.rhein-zeitung.de>)
337 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
338 o "?" lists all available commands.
339 o Most commands are unicode and redirection aware now.
340 o Input-, Output- and Error-Redirections works with most commands.
341 o ATTRIB and DEL can handle multiple filenames now.
342 o Fixed handling of environment variables.
343 o Added CHCP command.
344 o Fixed keyboard input bug.
345 o Rewrote DEL and MOVE commands.
347 28-Dec-1999 ReactOS CMD version 0.1 (Eric Kohl <ekohl@abo.rhein-zeitung.de>)
348 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
349 o Cleaned up DIR command.
350 o Searching for executables in the right order.
351 o Fixed some little but nasty bugs.
352 o Added TITLE command. Thanks to Emanuele Aliberti!
353 o Added "/Q", "/W" and "/Z" options to DEL command.
354 o Added CHOICE, TIMER, FREE and MEMORY commands.
355 o Added MSGBOX command (not available under ReactOS).
356 o Added and fixed missing help texts.
357 o Fixed bugs in MD and RD that crashed cmd when no directory was specified.
358 o Improved history support.
359 o Improved COLOR command.
361 09-Apr-2000 ReactOS CMD version 0.1 (EricKohl <ekohl@rz-online.de>
362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
363 o Fixed bug in COPY command. CMD crashed if source file didn't exist.
365 13-Jul-2000 ReactOS CMD version 0.1.1 (EricKohl <ekohl@rz-online.de>
366 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
367 o Implemented 'ECHO.' and 'ECHOERR.' commands.