Kerm showed keen interest a few days ago when I proposed an idea for me to make a CLI to handle DCS7-related functions, so I decided to go and try my hand at making it.
What I'm essentially aiming for is an alternative way for uber-haxers who hate GUIs or just the DCS GUI in general to go about using doors effectively. I'm thinking for most efficiency, to have a somewhat-condensed system of scripting, with maybe 20-30 commands, all of which with short calling names and simple/rememberable parameter intakes. After some discussion with the Cemetech community, people were in favor of support both Unix and DOS-like commands (no specifically DOS, though, since the side effects and parameters to most DOS commands are rather.. interesting), so I'm going to support both methods. Since everyone is usually familiar with the Unix cmds, here are the proposed DOS-Like ones for now:
.(Program Name) // runs program
REN (Old Name) (New Name) // renames
MOV (Path) (New Path) // moves file/directory
CPY (Path) (New Path) // copies file/directory
DEL (Path) // deletes
LCK (Program Name) // locks program
HID (Program Name) // hides program
TYP (Program Name) // gets type(s) of fil(s)e in cur directory with name
CD (New Dir) // changes to new directory
CD // shows current directory
NEW (name) [size] [type] // creates new file of name, type, and size. If no type, creates directory and size is ignored
X/Q/QUIT // quits
INF (name) // gives info of given file, including size, locked, hidden, long desc., etc.
CHK // get a program's checksum and display it
Other things:
- Tab completion
- Easy to use key set
Possible candy features for this later on once the bare bones is finished:
- Possibility of making a new system to pass parameters to a program on running statement
- .DSL (Doors Scripting Language) files which contain pre-written DSL commands, like the bare bones ones above
- Simple variables
- Useful system commands (TIOS)
- Block/control statements (for .DSL files)
- Internal file manipulation
- Maybe a built in sed alternative
Anyways, I've been busy this weekend, but this is what I coughed up after reading about the DCS7 API from page 1 to 142. I have a lot of internals done, but for now all that I can really show is the text routines, the input buffering, and just the clear routine... so not much. Screenie:
Brought to you by Cemetech and Dalan Polytechnic, (C) 2011.