The Ultimate Shell "NoShell"

A General Discussion forum for TI calculators

Moderator: MaxCoderz Staff

Post Reply
User avatar
kalan_vod
Calc King
Posts: 2932
Joined: Sat 18 Dec, 2004 6:46 am
Contact:

The Ultimate Shell "NoShell"

Post by kalan_vod »

Well, those who visit ticalc.org regularly would see the program BrandonW released (the msd8x and bcall guy).
Noshell is a TI-83/84 Plus Flash application which installs a parser hook that allows you to run all programs (BASIC, assembly, Ion, and MirageOS, whether in RAM or archived) as if they were BASIC, right from the PRGM menu. Neither "Asm(" nor any other shell is required to run them. It also supports optional program writeback and chaining with other parser hooks, such as xLIB.
Which means, you can run any Ion, MirageOS, NoStub or basic program. I think this is the ultimate answer to shells...Last night someone asked for him to add Crunchy (which I would love to see, as for the compression). I would like to see another thing added: the appdata that Crunchy does so that it would not require automatic write back (if you enable it to save high scores and data).
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

I'm amazed to see how far the misconception that Crunchy actually compresses other programs has spread. The feature only works for programs specifically compiled for CrunchyOS. A newer version which actually let you compress other programs was in the works, but never finished.

Sometimes though it seems like you are compressing programs since you use the remaining 12k of the application's space for storing programs.
(edit: sorry, CrunchyOS is 6.5k in size, not 4k. Remaining space is 9.5k.)
Last edited by Dwedit on Fri 22 Jun, 2007 10:34 pm, edited 1 time in total.
You know your hexadecimal output routine is broken when it displays the character 'G'.
User avatar
kalan_vod
Calc King
Posts: 2932
Joined: Sat 18 Dec, 2004 6:46 am
Contact:

Post by kalan_vod »

Dwedit wrote:I'm amazed to see how far the misconception that Crunchy actually compresses other programs has spread. The feature only works for programs specifically compiled for CrunchyOS. A newer version which actually let you compress other programs was in the works, but never finished.

Sometimes though it seems like you are compressing programs since you use the remaining 12k of the application's space for storing programs.
I understand that, which is why if crunchy support was added it would be able to play compressed (crunchy compression, not sure the right format it is in) games/programs.
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

For some reason, I've started modifying an apack decompression routine to be an Apack decompress/patch creation routine, to allow arbitrary programs to be compressed with apack. Decompress the program, then re-decompress the program to create a patch. Then apply the patch the next time the progam is run to get writeback for compressed programs.
You know your hexadecimal output routine is broken when it displays the character 'G'.
User avatar
tr1p1ea
Maxcoderz Staff
Posts: 4141
Joined: Thu 16 Dec, 2004 10:06 pm
Location: I cant seem to get out of this cryogenic chamber!
Contact:

Post by tr1p1ea »

NoShell is pretty sweet, but who knows if it will be able to penetrate the user base effectively. Im not sure lots of people like change when their favourite shell already works. Still it reminds me of venus (but obviously works different).
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."
Image
Image
User avatar
kalan_vod
Calc King
Posts: 2932
Joined: Sat 18 Dec, 2004 6:46 am
Contact:

Post by kalan_vod »

tr1p1ea wrote:NoShell is pretty sweet, but who knows if it will be able to penetrate the user base effectively. Im not sure lots of people like change when their favourite shell already works. Still it reminds me of venus (but obviously works different).
That is the thing, if it works perfectly with other hooks like xlib it has me. I tried it out and have not had a problem yet. I think it was a great idea, and if it works with all the shells (DCS and others besides crunchy) it can be just as popular.
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

Venus was great because it was tiny. Noshell still fills an entire page of memory. Right now, effectively, CrunchyOS is the smallest App shell since it allows you to store programs inside it.

I've actually ported Venus to the TI83+, but since there is no way to do a token hook, you can't run archived programs.

I think the best possible answer is an Ion-compatible noshell-style hook shell, but build it into any app which has enough room left inside to hold the shell.
Or possibly something truly ugly: A token hook pointing to an archived program! (assuming the program is designed for execution from any address)
You know your hexadecimal output routine is broken when it displays the character 'G'.
Liazon
Calc Guru
Posts: 962
Joined: Thu 27 Oct, 2005 8:28 pm

Post by Liazon »

so is that why you built a chu chu rocket demo into crunchy? because you had so much left over space on the app page?
Image Image Image
User avatar
Dwedit
Maxcoderz Staff
Posts: 579
Joined: Wed 15 Dec, 2004 6:06 am
Location: Chicago!
Contact:

Post by Dwedit »

No, that was me screwing up and forgetting to delete it. Never actually had a TI83+ to test my own releases...
You know your hexadecimal output routine is broken when it displays the character 'G'.
User avatar
calc84maniac
Regular Member
Posts: 112
Joined: Wed 18 Oct, 2006 7:34 pm
Location: The ex-planet Pluto
Contact:

Post by calc84maniac »

Dwedit wrote:Or possibly something truly ugly: A token hook pointing to an archived program! (assuming the program is designed for execution from any address)
*cough*Flash Execution Protection*cough*
Found that out the hard way... :x
~calc84maniac has spoken.

Projects:
F-Zero 83+
Project M (Super Mario for 83+)
Post Reply