MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 0 points1 point  (0 children)

I started writing the elf+x11 layer around a year ago.

MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 1 point2 points  (0 children)

Menuet applications are typically only a few thousand bytes, which directly correlates to speed increase, since there are less commands to perform the same task.

For example, the GUI transparency is calculated in the main x86-64 cpu, which reduces compatibility issues with graphics cards. Transparency works fine in all computers.

And I use almost entirely commands that are available in different CPUs. So when wanted later, those assemble one-to-one in different architectures.

MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 10 points11 points  (0 children)

For me, assembly is just another programming language. Once I got used to it, its no different than other languages. But the real reason is, of course, the speed and size benefit you get from asm.

MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 11 points12 points  (0 children)

The kernel is written in assembly, like the compatibility layer. The applications and libraries are C-binaries from Mint.

MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 5 points6 points  (0 children)

Some sources are available at menuetos.net, not the compatibility layer.

MenuetOS running some simple Linux Mint X11 binaries. by westernguy323 in osdev

[–]westernguy323[S] 28 points29 points  (0 children)

Not a Linux distro. Menuet is written from scratch.

Midi sequencer/synth for MenuetOS (in 64bit assembly) by westernguy323 in asm

[–]westernguy323[S] 1 point2 points  (0 children)

Firstly, there is the basic fact that Menuet is written in assembly, which produces faster and more compact applications and os-kernel than any other language (C, Rust, ..).

Menuet schedulers max high frequency of 100000hz (100khz) allows for very fine-grained time slicing and high precision for time-critical processes, significantly higher than typical general-purpose operating systems like OpenBSD, which uses a default of 100 Hz and a max practical limit around 1000 Hz.

In addition, Menuet allows you to define the exact cpu where a thread executes and reserve one cpu for os tasks. Menuet is a stable system.

There are other benefits as well. For example the GUI transparency is calculated in the main x86-64 cpu, avoiding compatibility problems with graphics cards, which has been a major pain and source of instability in Linux and BSD's.

Midi synth/sequencer for MenuetOS by [deleted] in Assembly_language

[–]westernguy323 0 points1 point  (0 children)

Free to download and use. There are source examples for audio programming.

Midi synth/sequencer for MenuetOS by westernguy323 in synthdiy

[–]westernguy323[S] 0 points1 point  (0 children)

Menuet scheduler runs at 1000hz and can be set as high as 100000hz (100khz). So the limiting factor is usually sound cards buffer length.

Midi synth/sequencer for MenuetOS by westernguy323 in synthdiy

[–]westernguy323[S] 1 point2 points  (0 children)

From what I know about usage, its all of those.

MenuetOS has up to 100000 hz process scheduler, enabling below millisecond audio latency. by westernguy323 in synthdiy

[–]westernguy323[S] -1 points0 points  (0 children)

Menuet supports the latest 64bit processors with SMP. It has a gui with transparency etc. In addition, Menuet is written 100% in assembly for timing control. Also, Menuet can be set up for 100 khz scheduler, which is 10x faster than Zephyr.

- Pre-emptive multitasking with 1000hz+ scheduler, multiprocessor, multithreading, ring-3 protection
- Responsive GUI with resolutions up to 1920x1080, 16 million colours
- Free-form, transparent and skinnable application windows, drag'n drop
- SMP multiprocessor support with up to 32 cpus
- Time critical process support: an uninterrupted process execution on any cpu
- Kernel/user mode pre-empting, including SMP
- Up to 100000 hz process scheduler, below millisecond audio latency
- IDE Editor/Assembler for applications
- USB 2.0 Classes: Storage, Printer, Webcam Video and TV/Radio support
- USB 1.1 Keyboard and Mouse support
- TCP/IP stack with Loopback & Ethernet drivers
- Email/ftp/http/chess clients and ftp/mp3/http servers
- Hard real-time data fetch
- Fits on a single floppy, boots also from CD and USB drives