This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
Lyqyd's profile picture

LyqydOS Teaser!

Started by Lyqyd, 21 October 2012 - 07:44 AM
Lyqyd #1
Posted 21 October 2012 - 09:44 AM
Here's a quick screenshot of an upcoming operating system sort of program for ComputerCraft. Thought you guys might like to take a look. There are still a couple features I need to implement before I release it, like minimizing and maximizing windows, as well as a slightly different window decoration system. Hopefully those will be pretty quick and you guys can enjoy the full release soon!

Spoiler
Mads #2
Posted 21 October 2012 - 11:07 AM
Woot! Neat!
Jan #3
Posted 21 October 2012 - 12:07 PM
Looks very nice! How did you do it? Did you make a fake 'term' API, or did you altered the 'edit' program to work within a window?
Lyqyd #4
Posted 21 October 2012 - 05:33 PM
Looks very nice! How did you do it? Did you make a fake 'term' API, or did you altered the 'edit' program to work within a window?

Well, I did end up adding four lines to the edit program, but that was only so it could handle being resized. This is done through a bit of term magic.
lieudusty #5
Posted 21 October 2012 - 06:15 PM
Looks nice
ElvishJerricco #6
Posted 22 October 2012 - 01:01 AM
Only thing i can think of as to how you did this is by using os.run() to run shell for each window, and providing an environment with a fake term API. Am i correct?
ChaddJackson12 #7
Posted 22 October 2012 - 01:46 AM
Wow if you actually made this to have windows (Which it looks like it will) then that is awesome. I think that will be the first OS to have windows that you can actually minimize, and stuff.
Lyqyd #8
Posted 22 October 2012 - 03:38 AM
Only thing i can think of as to how you did this is by using os.run() to run shell for each window, and providing an environment with a fake term API. Am i correct?

Nope, just a bit of terminal redirection!

Wow if you actually made this to have windows (Which it looks like it will) then that is awesome. I think that will be the first OS to have windows that you can actually minimize, and stuff.

Yep, actual windows. Working out a few bugs right now, but a release should be available in the next week or so. In the meantime, window decorations:

Spoiler
ElvishJerricco #9
Posted 22 October 2012 - 03:47 AM
Only thing i can think of as to how you did this is by using os.run() to run shell for each window, and providing an environment with a fake term API. Am i correct?

Nope, just a bit of terminal redirection!

Wow if you actually made this to have windows (Which it looks like it will) then that is awesome. I think that will be the first OS to have windows that you can actually minimize, and stuff.

Yep, actual windows. Working out a few bugs right now, but a release should be available in the next week or so. In the meantime, window decorations:

Spoiler

Dangit why didn't i think of terminal redirection? That's so obvious…

Although you'd probably be better off doing it the way i described it. That way you don't have to redirect to each window every time something needs to draw.
Lyqyd #10
Posted 22 October 2012 - 04:46 AM
The way you describe is basically the same thing, except more difficult. Redirecting isn't a very expensive operation.

Edit: A maximized window:

Spoiler
ElvishJerricco #11
Posted 22 October 2012 - 07:34 AM
The way you describe is basically the same thing, except more difficult. Redirecting isn't a very expensive operation.

Edit: A maximized window:

Spoiler

Not really. The difference is that instead of constantly managing where the term is redirected to (a task i'd consider annoying and prone to bugs), you just tell the shell what term to use and it automatically keeps them all updated and separated. Then when you redraw the screen it pulls from all the fake terms and draws them together.
Lyqyd #12
Posted 22 October 2012 - 03:53 PM
The way you describe is basically the same thing, except more difficult. Redirecting isn't a very expensive operation.

Edit: A maximized window:

Spoiler

Not really. The difference is that instead of constantly managing where the term is redirected to (a task i'd consider annoying and prone to bugs), you just tell the shell what term to use and it automatically keeps them all updated and separated. Then when you redraw the screen it pulls from all the fake terms and draws them together.

You vastly overestimate the difficulty of managing redirect targets, then. Also, you can start any program directly in a window, not just a shell. Just FYI.

Edit: What was I thinking? Posting without a preview image? Here's a terribly exciting shot of one window open, but minimized.

Spoiler
ChaddJackson12 #13
Posted 26 October 2012 - 05:08 AM
Now all you need is a screen saver, and a wallpaper (Hopefully colorful ones! :D/>/>)
Dlcruz129 #14
Posted 06 November 2012 - 05:25 PM
Now all you need is a screen saver, and a wallpaper (Hopefully colorful ones! :P/>/>)

Screensaver sounds cool. Just have an os.startTimer() that is cancelled on key press. If it runs out of time make a neat animation. Have it exit by pulling the key event.
[/ramble]
cheekycharlie101 #15
Posted 06 November 2012 - 07:37 PM
Cant wait for this :P/>/> im just really pissed as im using tekkit cc and it wont update for a while >.<
Expenox #16
Posted 24 November 2012 - 04:40 PM
Awesome! I want to make one of these when i get more advanced.