Things to do ~~~~~~~~~~~~ *Implmenet Set /P This is pretty straight forward. When doing this make sure to take into account the way MS handles "set /A /P foo=5" compared to "set /P /A foo=5". *Compile as unicode Not sure what is wrong with it, put probably more then just one thing blocking this. For sure pipes break when it is compiled as unicode. *Move.c code clean up It works, but it needs to be cleaned up, the code is long and overly complex for what it needs to do. Also, we can remove the hack to cover for MoveFileEx bug as it isnt a bug anymore. *If rewrite It works decent but looks _awful_. Very hard to maintain and/or understand what the hell is going on. *Remove Hardcoded buffers This is mostly done thanks to Greatlord(cmd.c is the hardest spot that is left). ANytime when you are handling a string that is taken from the commandline there should be no limit to the size. *Implment & and && & runs two commands no matter what. && runs the 2nd command only if the first was a success Not sure where to put this code even *mkdir needs recurvisly create folders When doing "mkdir c:\windows\foo\bar\foofoo" where foo, bar, and foofoo are not folders, it will create all the folders to that a vaild path *Correct Error checking A lot of commands on failure just spit out GetLastError instead of looking for the real cause. It should give a better output to give at least some kinda clue what is wrong. *Reg Testing We need more batch files like the one Royce made for "set /a". What out for if bugs when doing this... could lead to in the wrong direction when looking for a regression. *Add Breaker THere is partly code in place for this already. However it is broken and not finished. PocketCMD which is open source and based off ros cmd does do this correctly though. So there is something to look at and see how it can be done. though it is hard to find where they are doing it even though they are based on eachother they look pretty different now a days.