Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: Ashbad on September 25, 2011, 08:09:48 pm

Title: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 25, 2011, 08:09:48 pm
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:

(http://img.removedfromgame.com/imgs/DoorBellDemo.gif)


Brought to you by Cemetech and Dalan Polytechnic, (C) 2011.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Deep Toaster on September 25, 2011, 08:14:10 pm
Reminds me of the MOS CLI... Nice job!
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: DJ Omnimaga on September 25, 2011, 08:31:40 pm
Hmm I'M not too familiar with this, but it looks nice. It kinda reminds me of the Axe Terminal a while ago, although I'm unsure if this ever got finished. Also the fact it's launched from DCS reminded me my days on Windows 95 when I launched MS DOS from the desktop. Good ol' memories.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 25, 2011, 09:03:47 pm
Yeah, that's pretty much the feel I'm going for :)
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: DJ Omnimaga on September 25, 2011, 09:14:44 pm
Yeah but you're not going to mimic the Windows bugs too I hope? O.O
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 25, 2011, 09:17:19 pm
Yeah but you're not going to mimic the Windows bugs too I hope? O.O

Hopefully not ;)
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: TIfanx1999 on September 26, 2011, 02:43:57 pm
Very cool Ashbad! :) You choose a really catchy name as well. =)
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Spyro543 on September 26, 2011, 03:11:13 pm
I'd love to help with making potential DSL syntax.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Eeems on September 26, 2011, 03:48:43 pm
How about having alternatives to the commands that are more bash based?
mv instead of mov
rm instead of del
cp instead of cpy
exit as well as quit/q/x
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 27, 2011, 05:52:48 am
How about having alternatives to the commands that are more bash based?
mv instead of mov
rm instead of del
cp instead of cpy
exit as well as quit/q/x

Didn't I already say I'm supporting Unix-like commands?
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: DJ Omnimaga on September 27, 2011, 01:48:11 pm
Not everyone notices everything said in a huge post, especially that only one set of command is listed. No need to be a jerk about it. Remember some people got banned in the past for doing it Ashbad. If you can't be nice anymore to everyone on the forums, it might be best you just don't post at all altogether, even about your projects. We don't want trolls on the forums.

Also advertising other calc sites is against the rules.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: shmibs on September 27, 2011, 03:35:37 pm
ooh, i like this idea!
i've mostly just shied away from the Doors gui in favour of running things the noshell way, but this adds all the other features i would possibly boot into the gui for (mostly just renaming and copying, but i think i could find a use for the new command as well.) i would definitely try this out, and, most likely, use it regularly.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 27, 2011, 03:48:13 pm
Shmibs: exactly the reason I started it :) you have no idea how many people are complaint about the DCS7 GUI, so I decided to help Kerm draw more people in with a Uber Haxor CLI thing :)

Not everyone notices everything said in a huge post, especially that only one set of command is listed. No need to be a jerk about it. Remember some people got banned in the past for doing it Ashbad. If you can't be nice anymore to everyone on the forums, it might be best you just don't post at all altogether, even about your projects. We don't want trolls on the forums.

Also advertising other calc sites is against the rules.

1) It's rather annoying when people ask for things you stated like three times in your project Abstract

2) How can I not advertise the partners in the project?  Leaving out Kerm's organization in the credits would be rather fraudulent.  Would you like it if I took "Omnimaga" out of all of ky previous credits for my programs?  It sounds like you're thinking Omnimaga is the only organization that should get credit.

Please, please see that (frustration & giving credit where due) != trolling.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: DJ Omnimaga on September 27, 2011, 04:17:48 pm
1) Your post is TL;DR. Obviously people will sneak through it and miss stuff. Some people are also visual: They'll pay attention at the list of commands and features rather than reading everything. I myself did not notice you included Unix commands until the third time I read it, and sometimes we don't have the time.

2) Given that you only post here to post updates on projects, it seemed like you decided to only post on Omni to lure members for Cemetech. In the readme and download description it's fine. It's the same thing as when over one and half a year ago someone joined #omnimaga to /invite members to his chan.

Also it is trolling because you know it's against the rules and that someone will get offended, yet you do it anyway.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 27, 2011, 04:21:24 pm
No rules against frustration.  However, we need rules against unnecessarily derailing topics like this; can this get back on point, and let's stop causing unneeded drama?  Especially in my project thread?
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: DJ Omnimaga on September 27, 2011, 04:24:20 pm
No rule against frustration, but there are rules against being rude. We don't give a fuck if you,re frustrated, you are forced to be nice about it!

Go away ashbad I don,t want to see you anymore here.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Hayleia on September 28, 2011, 01:19:18 am
Didn't I already say I'm supporting Unix-like commands?

I agree with DJ_O saying Ashbad was rude here. But...

We don't give a fuck if you,re frustrated, you are forced to be nice about it!

Go away ashbad I don,t want to see you anymore here.

I don't think being rude to him will get him nice. I don't know what happened between you two but I'd really like you, Ashbad and DJ_O, to stay with us in the same way it was before, like you did here (in the spoiler)
Spoiler For good mood:
Hmm I'M not too familiar with this, but it looks nice. It kinda reminds me of the Axe Terminal a while ago, although I'm unsure if this ever got finished. Also the fact it's launched from DCS reminded me my days on Windows 95 when I launched MS DOS from the desktop. Good ol' memories.
Yeah, that's pretty much the feel I'm going for :)
Yeah but you're not going to mimic the Windows bugs too I hope? O.O
Yeah but you're not going to mimic the Windows bugs too I hope? O.O

Hopefully not ;)


On an other side note, very good project Ashbad. I really liked MirageOS' Command Prompt (but it could not run noshell progs for example) so I'd really like you to go on with this.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Eeems on September 28, 2011, 02:03:54 am
How about having alternatives to the commands that are more bash based?
mv instead of mov
rm instead of del
cp instead of cpy
exit as well as quit/q/x

Didn't I already say I'm supporting Unix-like commands?
My apologies, I missed that.
Be nicer though, not everybody has the same tolerance I have, and even mine is starting to stretch.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Ashbad on September 28, 2011, 04:50:07 pm
How about having alternatives to the commands that are more bash based?
mv instead of mov
rm instead of del
cp instead of cpy
exit as well as quit/q/x

Didn't I already say I'm supporting Unix-like commands?
My apologies, I missed that.
Be nicer though, not everybody has the same tolerance I have, and even mine is starting to stretch.

Well, I knew that you could handle it, so therefore I had no qualms saying it.  It isn't meant to be disrespectful -- just to point out that I had mentioned the topic you brought in my abstract.  Just a developer-to-developer hinting.
Title: Re: Doorbell -- DCS7 Command Line Interface
Post by: Eeems on September 28, 2011, 06:47:34 pm
How about having alternatives to the commands that are more bash based?
mv instead of mov
rm instead of del
cp instead of cpy
exit as well as quit/q/x

Didn't I already say I'm supporting Unix-like commands?
My apologies, I missed that.
Be nicer though, not everybody has the same tolerance I have, and even mine is starting to stretch.

Well, I knew that you could handle it, so therefore I had no qualms saying it.  It isn't meant to be disrespectful -- just to point out that I had mentioned the topic you brought in my abstract.  Just a developer-to-developer hinting.
It's best not do do that type of thing in a public manner like this though in case of misunderstandings made by others looking in like what has happened.