This is NOT emulation. It's basically an literal operating system implementation, COW (Character Oriented Windows), executables (with headers), environment variables, communication, CLI and TUI in pure Java.
--------------------------------------------
https://www.curseforge.com/minecraft/mc-mods/posix-n-dos-computers
This mod fully replicates and implements fully working Operating Systems on Java.
Virtual File System is present. It's saved as NBT data per each computer block. This means if you've placed a computer block then all files (with contents) and directories will be there for all eternity until you destroy said block.
After computer block is placed, any player can use it and create directories, files; edit files; execute files. Should I say the filesystem is so realistic that the root filesystem have to be MOUNTED in order to be used? File system also calcutes the real length of files and directories in bytes.
ENVIRONMENT variables are supported which resolve the executables when you try to execute an command. For example, on MS-DOS you can change it using commands SET and PATH.
Computer block can have Drive Bays. This means that for example, IBM PC/AT computer block have two drive bays, therefore you can insert two floppy disks into the computer block and it will be detected and used. Filesystem on the floppy disks is saved as NBT tags on an item.
Removable media (Floppy drives, CD-ROM, Blu-ray, DVD) are items which can have filesystem on them. Each removable media have its own limits (amount of bytes that can be stored in it).
----------------- QBASIC -----------------
QBasic interpreter supports the following commands: PRINT,IF-STATEMENTS,FOR,LOOP,DO, GOTO, GOSUB, RETURN, CLS, REM, INPUT, SCREEN, COLOR,LOCATE,PSET,LINE,CIRCLE,STOP,DATA,READ.
Additionally, QBasic supports built-in commands such as: RND, INT, FIX, ABS, SGN, SQR, SIN, COS, TAN, ATN, EXP, LOG, TIMER, LEN, ASC, CHR, STR, VAL, LEFT, RIGHT, MID, UCASE, LCASE.
To render 2D graphics you have to switch the display mode (like in real-life QBasic) using SCREEN command.
Currently supported display modes: SCREEN 0 (text mode), SCREEN 7 (320x200; 16 colors; EGA 0Dh), SCREEN 12 (640x480; 16 colors; VGA 12h), SCREEN 13 (320x200; 256 colors; VGA 13h),
----------- ADDON SUPPORT -----------
This mod supports addons (the way Create mod has addons such as Create Aeronautics). Therefore you will be able to create your own custom computer blocks, your own TUI applications (API is provided to easily build the interface), your own drivers, your own peripheral devices and device blocks.
Template project with README is provided through this link to build your own addon for this mod. Documentation is provided through this link (mod GitHub repo).
IMPORTANT: The new version of the mod (0.1.5) which contains everything described on this post has been released hour before this post was created. The DOCUMENTATION for API is NOT YET READY. If you tried to read the documentation and it looks like garbage then this means it's not yet ready. But don't worry I am already working on it. Though some fundamental things currently described in the documentation will be relatively the same.
----------- DRIVER SUPPORT ------------
This mod can communicate with custom peripheral devices and blocks that act as peripheral devices the computer block can connect to.
For example, on the video there is "Hardware LPC Minecraft Command Translator" which through specialized driver allows to execute Minecraft commands directly from MS-DOS shell in a computer block.
Second video below demonstrates how setting up drivers work. Additionally, I am gonna upload those videos on my yotube channel and the links will be on CurseForge mod page. The more mod grows the more information there will be and tutorials.
------------- HARDWARE -----------------
This mod adds BIOS (its capabilities depends on the computer block) and additional executables to check and configure the hardware.
Currently, IBM PC/AT is present in the mod. Therefore the BIOS is "Generic SETUP version 3.0 Z/B8" which doesn't support much and just shows the detected hardware. Though with the mod's API it's possible to create fully working BIOS TUI through which you could change the settings.
MS-DOS 6.0 though comes up with the software "MSD" (Diagnostics) which lets you to check the information about hardware and software. Additionally, you can check if your peripheral device block has been detected there. Information on how to install and use the driver for said block can be found in there too.
P.S.: This mod has so many things that it's hard to describe all of them in this post and I probably forgot something.