4 ms·
Memory-safe language. x86_64, with Arm on the roadmap. Networking stack. Boots from a CD and via multiboot. Your hobby project wipes the floor with DOS.
by rollcat 1y ago
Memory-safe language. x86_64, with Arm on the roadmap. Networking stack. Boots from a CD and via multiboot. Your hobby project wipes the floor with DOS.
- pvg 1y agoWhoa there. Gotta run Doom and BASIC to compete with DOS. That is the officially recognized DOS-Kármán line.
- krustowski 1y agoWhat a challenge! Need to implement some interrupts it seems then, to provide an API for filesystem and so... Thank you for such idea
- rollcat 1y agoDOOM required DOS 5.0. rou2exOS is only the second take. Watch this area ;)
- jdsully 1y agoNobody cares about Lotus 1-2-3 support any longer :)
- jmspring 1y agoWhat about Wordstar?
- hans_castorp 1y agoWordPerfect was better anyway :) (SCNR)
- RoyTyrell 1y agoThe text editor JOE has a WordStar mode.
- mycall 1y agoalso, can't be a dos with the 'dir' command.
- krustowski 1y agoAfaik there is a 'DIR' command in MS-DOS. Anyway, what would be a better command to list a directory? I could think of 'ls' maybe
- rzzzt 1y agoCATALOG, DSPFLR, Get-ChildItem
- onre 1y agoI would most likely end up with something like this: CAT CATalogue - output the contents of current directory RM to Raster Memory - load contents of named file in framebuffer MV Make Virtual - map the file into memory and output the address LS Load System - attempt to reboot using the named file as the kernel CD Create Directory - self-explanatory SH System Halt - immediately stop all processing ...and so on.
- anyfoo 1y agoVery good design. Implements only the essential tasks an operator would need with concise and well-known mnemonics. I’m sure this will be immediately intuitive to anyone, with no potential for mistakes whatsoever.
- OccamsMirror 1y agoI suggest: RM Relocate me - you could also use the "-rf" flag to relative fuzzy matching, for instance `rm -rf tmp` to find any temp-like folder near your current location. Pretty standard stuff. CD Clear data - `cd -L /temp` would "liquidate" the directory. This would be a much simpler command interface.
- koziserek 1y ago
- pjmlp 1y agoBorland languages and xBase ecosystem as well
- MoonGhost 1y ago> Rust and x86 assembly then > Memory-safe language. What's the point? Looks like today Rust is like 3D printing was. As if it makes something better. Printing was hyped and advertised by printers sellers and manufacturers. Finally they run out of money. As for project, it's cool if compatible with old soft. Otherwise suitable mostly for education and masochism. Long way to become practical anyway even if it gets traction.
- unchar1 1y agoYou can write memory safe code in any language, but having a machine i.e. the Rust compiler check it for you is less error-prone than if a human does it. Also if you look at the repo, only 3% of the codebase is in Assembly. IMO if >95% project is in Rust, you can definitely claim it's a Rust project.
- PaulDavisThe1st 1y agoFinally, a positive comment about Rust that I can 100% agree with :)
- whytevuhuni 1y agoThe idea of Rust is not that it is 100% safe, but rather that it is able to encapsulate unsafety and divide the program in two parts: - unsafe code plus modules that support it (the "trusted base") - all the rest Rust's promise is that there is no way to trigger any undefined behavior from bugs happening in "all the rest" of the code. If that code makes for more than 95% of the total, then that's a huge win compared to a completely unsafe language. Also, Rust's support for inline assembly is in my opinion better than C's, it's much easier to specify and figure out the constraints on the boundary between Rust/assembly.
- krustowski 1y agoWell, the point is to experiment with Rust no_std+no_main environment while trying to educate myself on how the things work under the hood. The project itself is part "just" a rewritten system (from C to Rust), and part an enhancement of such system furthermore. It lacks the external program execution though yet.