MenuetOS has released two new versions recently, version 1.49.60 on 5 February, and 1.50.00 on 1 March. Aside from the usual bugfixes and updates, these two new versions bring, among other things, new screensavers, a musical chord calculator, and support for UEFI booting thanks to Easyboot.
MenuetOS is a small operating system written entirely in assembly, available in both 32bit and 64bit versions for x86.
Apparently I have not followed them in a while, but it turns out, they are no longer open source:
I cannot blame them, as not all open source projects can find revenue streams to stay viable. However, it is still sad to see another project going this way.
For reference, here is the header of that license:
2 is entirely reasonable. It seems like the team is being rather optimistic for an OS written in assembly. Especially since this seems to be targeted at x86 hardware. Arm microcontroller sure, but x86 procs?
I’m not sure about 3. I don’t think that would hold up legally. At least parts of it anyway.
Flatlander_Spider,
I think the idea of writing something in assembly is a bigger deal to those who aren’t assembly programmers. But for those who are it’s merely another language. Once you have some practice writing it a small x86 OS doesn’t seem like such a big deal. I haven’t done it in years but I used to write x86 assembly kernels and you get used to it. Of course you give up the benefits of modern optimizing compilers for questionable benefits. In general. For that reason I’d question the merits.
“EU highest court says software licence terms can be ignored” in downloadable software.
Ruling UsedSoft v Oracle (2012) in the highest EU court made the following decisions:
”
Oracle’s software licence was a contract of sale
the terms of the licence could be ignored
the downloading of the software from Oracle’s website by the licensee (now considered a purchaser) exhausted Oracle’s right to control further distribution of the downloaded copy
it was therefore not an infringement of Oracle’s copyright in the software for the licensee to onsell his licence
the trading of second hand licences and/or copies of the software was lawful.
”
“This means, for example, that if a licence for software to be downloaded has an indefinite or long period then the usual restrictions or obligations placed on a licensee as a condition for granting the licence such as number of servers, server location, confidentiality, security, field of use, termination for breach will all be unenforceable.”
src: https://www.lexology.com/library/detail.aspx?g=d1ff4369-afcc-4879-97fa-7a8afd8b3380
If someone is that good with assembly, they should be contributing to a compiler. LOL
I can see writing an entire OS in x86 assembly for fun, but admit it’s for fun.
I’m not sure how portable something like NASM is, but I’m assuming it’s locked to a particular ISA rather then being recompiled into something ISA specific.
Flatland_Spider,
You’re right that compilers are a good match for the skillset. Alas I think the vast majority of assembly programmers had to retool for the job market. Most employers aren’t building their own compilers and don’t use assembly haha.
I wanted to do OS dev after university, and I did work on my own…but I basically abandoned it when I entered the job market and realized no employers were interested.
I do like nasm alot. Certainly more than the ATT asm used by GNU tooling…uck! I think old school x86 assembly programmers feel this way. But assembly is assembly and by it’s nature isn’t very portable. Also, unlike a high level compiler that can be updated to target new CPU features & opcodes, assembly code has to be rewritten. Even if you find humans who are willing and able to do the work, IMHO it’s not a very efficient use of development resources.
Working on assembly language software improves that software naturally, but contributing to a compiler instead (as you mentioned) could bring improvements to thousands of other software packages. The later makes sense in terms of maximizing social benefit.
Reverse engineering is completely legal in almost all countries in the entire world.
“In trade secret law, similar to independent developing, reverse engineering is considered an allowed method to discover a trade secret. However, in patent law, because the patent owner has exclusive rights to use, own or develop the patent, reverse engineering is not a defense.”
But you can not patent general software or algorithms.
HOWEVER in the US: “Reverse engineering a software product with an end user license agreement is strictly prohibited.” (Section 1201 of the DMCA) The DMCA is not valid in the EU or any other country than the US (and sometimes applies to Canada and Mexico as well under the NAFTA agreements clause). It has not been ruled to be illegal for Software though, as seen in the ruling Compaq vs IBM on the BIOS court case, but that was before the DMCA was implemented.
EULA’s is not valid in the EU unless signed in person. But this may differ in the separate member countries as local laws may apply.
NaGERST,
This is interesting. I did not realize DMCA had that clause (such a lovely law we have made for ourselves). However looking at the discourse around it the situation is probably more nuanced.
Some examples:
https://law.stackexchange.com/questions/51638/is-it-illegal-to-reverse-engineer-a-software-if-the-eula-prohibits-it-for-all-pu
https://law.stackexchange.com/questions/5403/can-i-be-prohibited-from-fixing-bugs-in-a-licensed-software
https://law.stackexchange.com/questions/36607/legality-of-reverse-engineering-when-licensing-code-stops-working-and-the-author
Just speculating (this probably needs to though a lawyer, or more likely an actual court since there are conflicts in the laws themselves).
1. If you have never agreed to the EULA, the clause does not apply. (How you got the software without agreeing might also be important)
2. Outputs of the program, like data files, might still be reverse engineered offline, but possibly by another person who has not used the program / agreed to that EULA (this of course does not apply to the operating system, except for maybe configuration files and so on).
3. Interoperability might supersede.
4. Then again, if there is an active anti-circumvention measure, that also has legal implications against tampering wrt. DMCA (though does for example cover “rot13” encoding?)
Yeah, I didn’t think the DMCA kicked in unless the thing was protected.
Not a lawyer and haven’t thought about this in a while, so this is speculation on my part.
I thought menuetOS was mostly abandonded in favour of it’s fork in 2004. (KollibriOS)
Not true. Menuet development has been going on for years. Also, Menuet moved to 64bit years ago.
Makes sense, as this post summarizes the open source contributors to menuet did not want to continue after it was closed.
https://www.reddit.com/user/r-eg/comments/99fud9/menuetos_kolibrios_an_amazing_and_absolutely/
I could not find a more recent comparison though. But according to this particular one, the source code difference was already over 50% 6 years ago.
Menuet64 (2005) went closed source because russians (2004, kolibri) just took gpl/Menuet32 source code and slapped their copyrights to the beginning of all kernel files without making any changes.
Interesting,
I probably should learn more about the story, but it looks like both sides are blaming each other:
https://news.ycombinator.com/item?id=27249075 vs.
https://board.kolibrios.org/viewtopic.php?t=994
Anyway, according to Google, “KolibriOS is an operating system created by Ukrainian programmer Georgiy Shuvalov”. If that is true, he would probably not be thrilled being called russian in this day. But that is probably another story.
In reality both Menuet32 (16.5.2000) and Menuet64 (22.6.2005) were created by Ville Turjanmaa. The info is at menuetos.net-site and at the youtube videos below.
Menuet64 videos: https://www.youtube.com/@menuetos64bit56/videos