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

Recoding programs and OSes to OpenComputers

Started by CaptainStandard, 09 December 2014 - 03:51 PM
CaptainStandard #1
Posted 09 December 2014 - 04:51 PM
Hi everyone!
I'm quite new to these forums, so please don't get mad at me if I have posted this in the wrong Category.

I'm a big fan of ComputerCraft and I have made some simple programs myself. But the last week I decided to test OpenComputers, because of the realism, and I think the mod is quite interesting.

Lets get to the point:
There are NO good OSes for OpenComputers but there is a lot of OSes to ComputerCraft. And since OC and CC cannnot into compatible I wonder if someone of you who have made an OS for CC would like to take their time and recode it to OC? I am sure that not only I would be very happy about that.

Thanks in advance!
Lyqyd #2
Posted 09 December 2014 - 07:39 PM
The differences between the two mods generally make this infeasible. Some things that are fast in CC are reportedly slow in OC (intensive screen drawing), and the coroutine model is completely different.
CaptainStandard #3
Posted 09 December 2014 - 08:23 PM
The differences between the two mods generally make this infeasible. Some things that are fast in CC are reportedly slow in OC (intensive screen drawing), and the coroutine model is completely different.

I perfectly know what you mean, I just think that it would be fun to use an ingame OS with limitations. Well computercraft has some limitations too, but not so visible ones. My friends would also have great use of an OS for OC. If any developer would be atleast a bit interested I would really apreciate it.

But if you say it's "infeasible" I will not stick so much to this idea. CC is still great. But if any developer would like to just make some super simple OS I would be more than satisfied.
syfygirl #4
Posted 10 December 2014 - 09:27 PM
You could make a compatibility layer.
CaptainStandard #5
Posted 11 December 2014 - 06:28 AM
What do you mean?
I'm not really an expert in programming.
Bomb Bloke #6
Posted 11 December 2014 - 07:57 AM
He's suggesting you write code for OpenComputers that reads a ComputerCraft script and automatically translates it for use with the other mod.

Unfortunately, it wouldn't be a simple project by any stretch of the imagination.
theoriginalbit #7
Posted 11 December 2014 - 09:11 AM
As Bomb Bloke said, not a simple project to create a compatibility layer, especially if you were to make it work bi-directionally (CC => OC and OC => CC).

The first hurdle you'd have to cross is by far the biggest; the versions of Lua being used. CC uses Lua 5.1, OC uses Lua 5.2, which going from 5.1 => 5.2 is sadly not as easy as it should be, and the news only gets worse from there. Going from 5.2 => 5.1 is nearer impossible, particularly if the OC program in question is making use of statements like goto (**shudders**) or various other additions, creations, and removals of constructs and syntax between 5.1 and 5.2; changes to environments comes to mind as a big one there, decent CC Operating Systems all kinda rely on it the way it is.

Other hurdles to cross would be things like hardware differences etc. in all honest a compatibility layer would just be too difficult to successfully pull off for someone that is well versed with Lua 5.1/5.2, let alone someone who is just starting out in programming.
CaptainStandard #8
Posted 11 December 2014 - 09:33 AM
Thanks for the explaination! It is very helpfull.
I wonder: can you create a craftOS installation disk for OC? Because you "install" openOS on OC computers from a floppy disk. Is it possible to create a floppy with craftOS and then copy all the files from the floppy to the OC ingame computer?
Thanks in advance.
Bomb Bloke #9
Posted 11 December 2014 - 10:28 AM
Putting aside the significant point that the code would still need to be ported to something OpenComputers could run, that would depend on whether or not an OpenComputers floppy has the capacity to hold CraftOS plus all the APIs CraftOS depends on in order to function, and on how an OpenComputers disk works. A better question might be "can you make an alternate OS install disk for OpenComputers at all?", and I'm not sure if anyone on this ComputerCraft forum can answer that. In any case, if you can answer one then odds are the same answer applies to the other.

The points BIT listed out also apply to porting a single OS - though there's a lot less "work" involved in applying them to one project than there is in building a system that can automatically apply it to any project, one would still need to satisfy the "knowledge" requirements.

Frankly, if I were one who cared about custom OSes, I would look at this as an opportunity to get my foot in the door and come up with something decent that's exclusively for OpenComputers. I'd need less knowledge in order to do it, and I'd be able to build something that is, from the ground up, suited to those particular machines. The key factor in coming up with something good is purely dedication.
CaptainStandard #10
Posted 11 December 2014 - 10:51 AM
Ok thanks. I have lots of free time on the weekend and I will experiment a bit.
It seems that you can make an alternate install disk for OC, someone posted a DOS like system on OC forums. But the file is on pastebin. But you can copy it to a floppy.
Anyway, it seems difficult.
CaptainStandard #11
Posted 11 December 2014 - 03:18 PM
One, probably last, question:
Is it possible to "fuse" CraftOS APIs with OpenOS APIs to create a HYBRID OS? Would it work?
Dragon53535 #12
Posted 11 December 2014 - 05:06 PM
It would not work, as CC uses directions for their peripherals, OC uses id's. You could rig up a way to find a CERTAIN peripheral, but not one on a side.
CaptainStandard #13
Posted 11 December 2014 - 06:56 PM
Ok, thanks.