Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: ClrDraw on October 20, 2013, 12:13:48 pm

Title: Terminal 4.4.1
Post by: ClrDraw on October 20, 2013, 12:13:48 pm
This is my terminal-style shell and utility, with many functions and cool features. See the attatched readme for more info.
Title: Re: Terminal 4.4.1
Post by: Streetwalrus on October 22, 2013, 09:15:12 am
This fits better in TI-z80 calc projects IMO. Sounds cool though. ;)
Title: Re: Terminal 4.4.1
Post by: shmibs on October 22, 2013, 10:09:23 am
^indeed. moving...
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 22, 2013, 11:47:17 am
Thanks. But I made it in Axe Parser  ???
Title: Re: Terminal 4.4.1
Post by: Streetwalrus on October 22, 2013, 11:55:46 am
The section is related to the calc model, so here you have Axe, BASIC, ASM, FastRPL, Grammer, BBC Basic, etc. ;)
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 22, 2013, 12:10:30 pm
Oh, ok!
Title: Re: Terminal 4.4.1
Post by: shmibs on October 22, 2013, 01:51:13 pm
yes, this section is for showing off your projects, while the other is for asking for help.
speaking of which.../me downloads to see what it does
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 22, 2013, 05:39:43 pm
It's not very original, but it does look cool.
Title: Re: Terminal 4.4.1
Post by: Sorunome on October 23, 2013, 08:01:16 am
Just tried it out, it's pretty neat!
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 23, 2013, 09:40:04 am
Thanks  :) anything I should add for future versions?
Title: Re: Terminal 4.4.1
Post by: Sorunome on October 23, 2013, 09:41:10 am
maybe help?
and something like displaying memory usage
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 23, 2013, 11:35:29 am
Yeah that's a good idea, I forgot memory. Do you know the opcode?
Title: Re: Terminal 4.4.1
Post by: Xeda112358 on October 23, 2013, 11:48:30 am
Here is a link that might be useful for opcodes: http://ourl.ca/8996/290840
To get the amount of free RAM, you could use this:
Code: [Select]
EFE542EF9247EF5641EFBF4AC9
However, if you are using this in an Axe program, you can probably just use Asm(EFE542).
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 24, 2013, 09:32:58 pm
Do you know how to find free archive?
+1
Title: Re: Terminal 4.4.1
Post by: tpt1234567890 on October 29, 2013, 05:52:40 pm
looks nice!
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 29, 2013, 06:04:09 pm
Thanks  ;D
Title: Re: Terminal 4.4.1
Post by: Xeda112358 on October 29, 2013, 10:47:24 pm
Free archive is a bit more difficult to assess. I've never actually written a decent routine but it would require looping through archive, noting variables marked for deletion, and then writing a routine to display 23-bit numbers
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 30, 2013, 11:42:05 am
 :-\ that's not worth it, that would take up to much space in my code and slow it down... Thanks though.
Title: Re: Terminal 4.4.1
Post by: Runer112 on October 30, 2013, 12:38:09 pm
There's a B_CALL that should be able to do most of the heavy lifting for you: B_CALL(_ArcChk) (http://tinyurl.com/ch4rw3g). It returns the amount of free archive space, as would be reported in the memory management menu, as a big-endian 32-bit integer at memory location $839F. To be able to display this, you then need a routine to convert this value into a string.

Someone asked pretty much this same question a couple years ago. I gave an assembly solution for their question here (http://ourl.ca/11347/215279), which has code to get both the amount of free archive space and the amount of total archive space as printable strings. If you'd like me to convert it into something usable in Axe, I can do that easily enough.
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 30, 2013, 05:41:26 pm
Could you please? I only know Axe.
Title: Re: Terminal 4.4.1
Post by: Matrefeytontias on October 31, 2013, 06:12:31 am
I tried it, it looks very cool :D

But I can't seem to be able to do anything with my programs ... it always say "Prgm not found" :

(http://img.ourl.ca//bugNoPrgm.gif)
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 31, 2013, 11:49:22 am
My mistake, I must've made the readme confusing. What you must do is type "SHELL" and press enter. Type the name of your program, "FACES", and press enter. Then you can type "RUN", "LOCK", "HIDE", "ARCHIVE", etc  :) sorry again for the confusion, I fixed the readme.
Title: Re: Terminal 4.4.1
Post by: Matrefeytontias on October 31, 2013, 03:06:12 pm
Okay it's working now, thanks for the precision :)
Title: Re: Terminal 4.4.1
Post by: Runer112 on October 31, 2013, 04:11:56 pm
I went a little bit overkill, but I slightly optimized and turned my old free/total archive commands into a mini Axe library. It's fairly straightforward to use, consisting of two commands and one constant definition:


The library is attached. Just send it to your calculator (preferable archive so you don't lose it in a RAM clear) and include it in your program anywhere as prgmARCLIB.
Title: Re: Terminal 4.4.1
Post by: ClrDraw on October 31, 2013, 06:10:21 pm
Any time Matrefeytontias. And Runner, thanks a lot, I'm going to use that in AlphaCS and Terminal. I'll have a new version with your code soon and put you in info  :) +1

EDIT: added the new version next to the first.
Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 03, 2013, 11:01:18 pm
http://www.omnimaga.org/index.php?action=downloads;sa=view;down=866 (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=866)

Added a modified/updated version the download section, it's still being approved.
Title: Re: Terminal 4.4.1
Post by: Xeda112358 on November 04, 2013, 08:30:18 am
I think this is actually very cool and I have been checking Omni waiting for updates to this :thumbsup:


If there are certain programs that require a shell to be run, an easy way to do this is check if DoorsCS7 is on the calc and have it open the file. It felt kind of like cheating to me when I did that, but it saves a lot of work. of course, you would still have to handle the case of DCS7 not being on the calc :P
Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 04, 2013, 11:05:48 am
Quote
I think this is actually very cool and I have been checking Omni waiting for updates to this
  :) Just hang in there for two more weeks, I've got a crazy shell coming out soon. This was a warm-up!

Quote
If there are certain programs that require a shell to be run, an easy way to do this is check if DoorsCS7 is on the calc and have it open the file. It felt kind of like cheating to me when I did that, but it saves a lot of work. of course, you would still have to handle the case of DCS7 not being on the calc
That's a really good idea... IDK though, I want my shell to work as a replacement for DoorsCS and Mirage. Do you think learning ASM is worth it?
Title: Re: Terminal 4.4.1
Post by: Xeda112358 on November 04, 2013, 03:25:12 pm
Quote
If there are certain programs that require a shell to be run, an easy way to do this is check if DoorsCS7 is on the calc and have it open the file. It felt kind of like cheating to me when I did that, but it saves a lot of work. of course, you would still have to handle the case of DCS7 not being on the calc
That's a really good idea... IDK though, I want my shell to work as a replacement for DoorsCS and Mirage. Do you think learning ASM is worth it?
If you want to replace those shells, you will end up learning at least a little assembly. MirageOS, ION, DoorsCS7, and others like them not only work as a shell, but they also provide subroutines for assembly programs to use. For example, any MOS programs relying on the ionFastCopy routine (or whatever it is called) will need to have the appropriate jump table at the appropriate address so that the program can function.

Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 04, 2013, 04:43:01 pm
I'm not gonna go that far, at least not with this version. Maybe in a future version after I learn some ASM I'll look into that though  :)

EDIT: For anybody interested in the new and improved version, I finally got the download link to work! The new version has shorter commands so general use is quicker, plus I optimized the whole thing and trimmed out a ton of unnecessary code. Also used Runner112's RAM/ROM library and can display ALL programs and appvariables (prgm! and prgm# included, along with hidden programs and DoorsCS folders).

(once it becomes approved)
http://www.omnimaga.org/index.php?action=downloads;sa=view;down=866 (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=866)
Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 07, 2013, 08:12:52 pm
It's taking a while to get approved, so I'll just include a download link here too. Sorry for the wait.
Title: Re: Re: Terminal 4.4.1
Post by: DJ Omnimaga on November 07, 2013, 09:28:33 pm
Yeah you might need to PM juju or something
Title: Re: Terminal 4.4.1
Post by: Streetwalrus on November 08, 2013, 12:36:46 pm
I think what would be cool is if you used Zstart you can use the Zstaxe axiom to have Zstart run stuff. Zstart has Ion routines and supports calling other shells so it's a good idea since it lacks an UI.
Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 08, 2013, 04:26:29 pm
Are you serious!? If there's an axiom that can do all that then it would save me a huge load of work!
EDIT: I'm looking at it right now, I think this is gonna be really nice.
Title: Re: Terminal 4.4.1
Post by: DJ Omnimaga on November 08, 2013, 08:47:57 pm
Does this require ZStart to run your shell then, though? I am unsure if it would make much sense for a new calculator shell to require another one to be installed in order to run.
Title: Re: Terminal 4.4.1
Post by: ClrDraw on November 08, 2013, 09:20:35 pm
True, it would be much nicer if it didn't require zStart. But my program can also lock hide and archive, and AlphaCS will also embed icons and have folders.