This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's Your Projects subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. NimbusOS => Your Projects
United-TI Archives -> NimbusOS
 
    » Goto page 1, 2  Next
» View previous topic :: View next topic  
Author Message
Darth Android
DragonOS Dev Team


Bandwidth Hog


Joined: 31 May 2003
Posts: 2104

Posted: 11 Jun 2003 02:49:54 pm    Post subject:

I beleive that support of TSE/TSE II prgms would help Nimbus
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 11 Jun 2003 02:56:30 pm    Post subject:

Either way the survey goes, TSE will not be supported in App 2.
Back to top
62 52 53 53
Formerly known as 62 52 53 53


Active Member


Joined: 30 May 2003
Posts: 607

Posted: 11 Jun 2003 02:58:04 pm    Post subject:

What about app3? Actually, the nimbus format could allow certain programs to switch tasks(maby). And it could have the libs from other formats accessable from nimbus progs.(ex: a prog would call a nimbus routine, which would run the routine(from say, Ion))

Last edited by Guest on 11 Jun 2003 03:02:18 pm; edited 1 time in total
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 11 Jun 2003 02:59:23 pm    Post subject:

I have not thought about APP 3.
Back to top
62 52 53 53
Formerly known as 62 52 53 53


Active Member


Joined: 30 May 2003
Posts: 607

Posted: 11 Jun 2003 03:04:11 pm    Post subject:

That's ok: I don't want TSE emulation anymore, I want task switching as part of the nimbus file format. (we need a "retract vote" button)
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 11 Jun 2003 03:40:36 pm    Post subject:

That may become a possibility.

I have been working with interrupts long enough that I think I could at least create a non coopertive task handler to at least kill a program without asking it to quit.

How it works.

An interrupt takes over, resets all flags, resets the stack pointer to what it was when the first program was executed, ret from interrupt will now return to NimbusOS instead of program, SP, PC, and Flags will be okay; thus, the calculator should not crash.
Back to top
Adm.Wiggin
aka Tianon


Know-It-All


Joined: 02 Jun 2003
Posts: 1874

Posted: 11 Jun 2003 03:42:03 pm    Post subject:

doesn't non-cooperative mean it is a task switcher, not a multi tasker?
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 11 Jun 2003 03:44:37 pm    Post subject:

It means neither.

It means that NimbusOS will be able to take control of any program without asking permission.

Cooperative means that you press a key, and the program is expected to catch it and act upon it.

I do not know if we will ever do task switching or multitasking, but they are both possible.

Multitasking would be slow; however, possible.
Back to top
Adm.Wiggin
aka Tianon


Know-It-All


Joined: 02 Jun 2003
Posts: 1874

Posted: 11 Jun 2003 03:49:24 pm    Post subject:

i personally think that multi-tasking is a kinda useless thing, but thats just me! i also think that task switching would be a very good aspect!
Back to top
62 52 53 53
Formerly known as 62 52 53 53


Active Member


Joined: 30 May 2003
Posts: 607

Posted: 11 Jun 2003 06:50:37 pm    Post subject:

Multitasking is good only in rare instances
Back to top
Pascal


Advanced Newbie


Joined: 24 May 2003
Posts: 76

Posted: 11 Jun 2003 10:24:34 pm    Post subject:

Multitasking on a calculator mabey. THough running 2 programs at once doesnt seem to usefull, accept in rare cases. Who knows when app 2 will come out, or what it will even be like , who knows if there will ever be an app 3! I think if we somehow got to the 10th version of nimbus, we could call is app x, that would be cool, or maby at 5 app V. Though im still confused to whyy it's even called app? does it refer to the applicatin form it was once converted to? why not something more nimbus like like nv2 9nimbus version 2) or something like that?
Just out of curiosity, becasue I liek the name app 1, it's origin is all that confuses me
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 12 Jun 2003 01:11:45 am    Post subject:

Nimbus started in basic about 3 years ago as nothing more than an idea.

I wrote a basic program called "NDOWS" It has the outline of a square icon, a crosshair for a mouse, a movable start bar, but was really slow, and only ran basic programs manually configured and designed to run under NDOWS.

Next, I started over wrighting a basic program I called "SHELL" for lack of a better name.

It started out on the homescreen and used ZPRGM which I sort of backwards engineered from ZDOS to put a featureless GUI on ZDOS 1.

At that point, I contacted David L (The Author of ZDOS) and asked him about how ZDOS works, about asm which I did not understand at that time, and I asked him how I could detect programs in basic.

He soon sent me a program called LISTPRGM wich reads all porgrams and stores their names to a string separated by commas.

e.g. A,ABC,MAZE,ZRACE...

I updated the shell much, and got to the point where the up and down arrows would display one program at a time on the screen, and pressing various buttons woud accomplish ZDOS Tasks. Essentially, I wrote a library for the ZDOS kernel which required another asm program.

Well, I soon discovered that sorting on the fly sucks because it is extremely slow to keep track of where you are and then try to find a comma closer to the beginning of a string Very Happy

So, I wrote a sorting routine to cache the locations of each program in the string to a list.

I contated David again, and told him that we need a way to detect the archived and locked status of a program.

David then sent PRGMLIST a program that would index the programs in a format like this:

*A,LABC,3MAZE, ZRACE

* ment archved un protected
L ment protected not archived
Cube ment protectd and archived
A space ment unarchived unprotectd

I then implemented the new ability into the shell which at this time was using the homescreen and output.

After each press of the arrow key, a new program woudl be displayed, and the yes/no status of the archive and protection.

Next, I decided that it would look more realistic on the graph screen, so I set up the graphscreen, and make a relativly complicated GUI for a basic program.

I then realized that the scrolling routine was now slow becasue text( is much slower than output(

So, I decided the solution was to show each program name as you scroll, and not read the status (file info) until after the arrow key was released.

At this time, I (mostly) and David (not as much) went crazy. I decided that what it needed was to scroll until it reached either the first or the end program, then stop, yet if you released and pressed again, it should scroll all the way around Very Happy

Then, we thought that APD would be awsome; sience, at that time, MirageOS had APD.

So, David sent me an asm program that was capable of turning off the calculator amoung other things.

I coded a bunch of timmers that reset on keypress into each endless loop, and I made countless optimizations. Heck, I emen made a popup for delete warning in Basic. We had uppercase and lowercase, and a bunch of other stuff in the options menu.

The project clearly got out of hand

At that point in time, we asked around to figure out what to call it, and someone posted VertigOS (almost made it too) and a few others.

Someone posted Nimbus (A type of clould), and I though Cirrus (another type of cloud) Programming..

Put two and two together, and we had an official name NimbusB1 Asm/Basic Hybrid Shell.

Later, we wanted speed, so it was recoded in asm. Beta 2 was unstable and unfinished, but cool.

Later, B2 was refinished and worked.

Beta 3 followed and actually worked great. Towards the end of B3, we were running basic and asm programs.

Finally, Beta 4 followed.

Soon, Beta 4 was changed into Application form, and can still be downloaded today from http://cirrus.tigalay.com under projects.

After that, we decided to re-design the entire application to make it better, make it faster, add features, and most of all, make it look as good as MirageOS.

We think we have it Very Happy

All that is left:
Express free mem in B, K, %
Options Menu
Scroll Box
Basic Program Execution/Error handler fix

We hope to have it ready soon!
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 12 Jun 2003 01:15:16 am    Post subject:

Finnaly, after getting lost and comming back to the question, the Answer is B.

No.

Actually, we thought that making another shell in application form would be kind of neat.

Instead of useing version 1, ver 2, ver 3...

We decided that APPLICATION 1, APP 2... would be better

In other words, APP 1 will be the first public release of Nimbus OS.
Back to top
62 52 53 53
Formerly known as 62 52 53 53


Active Member


Joined: 30 May 2003
Posts: 607

Posted: 12 Jun 2003 08:24:03 am    Post subject:

If that's how nimbus started, some of my concepts have a chance! like a shell that runs things from the program menu. (by the way, If you still have those asm programs, I would like them. [I don't think that they are all available at TIcalc. Which raises a question. Was TIcalc even arround when you started?])

Last edited by Guest on 12 Jun 2003 08:29:27 am; edited 1 time in total
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 12 Jun 2003 04:46:11 pm    Post subject:

Sure, I will send you NimbusOS B1 and all of the files that go along with it.

Yes, TiCalc did exist back then.
Back to top
Adm.Wiggin
aka Tianon


Know-It-All


Joined: 02 Jun 2003
Posts: 1874

Posted: 13 Jun 2003 08:29:49 pm    Post subject:

i think u should post all the *Stable* versions of Nimbus once the site is up... in order from Newest to Oldest... so that we can dl them... and if a version is unstable, u could still put it up, but put (UnStable) next to it, or just put the text (no dl)...
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 14 Jun 2003 04:48:47 am    Post subject:

B1 was stable
B2 was unstable
B3 was almost stable
B4 was stable
B4 App Stable
App 1 Stable
Back to top
Darth Android
DragonOS Dev Team


Bandwidth Hog


Joined: 31 May 2003
Posts: 2104

Posted: 14 Jun 2003 02:36:42 pm    Post subject:

ok, maybe no TSE, but if u have it so nimbus can kill prgms with a button press (that would be nice), it should be 2 keys simultaneously (like [On]+[Clear]) bcuz a prgm might use the button for something else. i could never use the "save and quit" feature in a game for mirage bcuz the key was used by mirage to kill prgms. also, could a prgm get aroung it by disabling the interupts ("di")?

Last edited by Guest on 14 Jun 2003 02:37:36 pm; edited 1 time in total
Back to top
NETWizz
Byte by bit


Bandwidth Hog


Joined: 20 May 2003
Posts: 2369

Posted: 15 Jun 2003 04:22:41 am    Post subject:

Yes, a program would be able to get around it by using di.

Still, the main difference between the way Nimbus will do it and the way MirageOS does it is that we are going to have two ways to kill a program.

1. On + something

What it will do is jump to a location secified in the header, so the program will be expected to clean up after itself and exit correctly wihtout bugging the user.

The other method will be On + Something else.

It will reset the system flags, delmem (remove running program from ram), reset the stack pointer to the value it was when the program started, push an exit address to the stack, ret within the interrupt to return to NimbusOS (will not return to program).

I have not figured it all out, but I believe we can kill a program directly.

Oh, one other thing, I will have to check the flash page to ensure that I do not kill a program in a system call while in flash Confused It might be bad to quit in the middle of a bcall Rolling Eyes

Think if you ended up with a partially archived program or something. Surprised You might be currious what happend.
Back to top
Pascal


Advanced Newbie


Joined: 24 May 2003
Posts: 76

Posted: 15 Jun 2003 08:49:17 pm    Post subject:

Hey I remember that post Jbirk. I remember is was an old post, I arrived about a month late to see it calle nimbus, but I was there for the rest. Its funney, I used that sme list program routine to make a basica shell of my own. It was called Taja, adn the routine actaully worked, but the OS was never completed.
Back to top
Display posts from previous:   
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
    » Goto page 1, 2  Next
» View previous topic :: View next topic  
Page 1 of 2 » All times are UTC - 5 Hours

 

Advertisement