KitsuneOS 0.01 Python Demo Prototype

The KitsuneOS 0.01 Python demo prototype is a prototype Python program developed by SteelsOfLiquid on 2023 October 25th. It directly pre-dates NanamiOS 1.00 and uses NanamiOS' preliminary name "KitsuneOS" and runs under the codename "Nanami". It runs inside of a command line, similar to SteelDOS and the NanamiCL shell in NanamiOS. It uses a user system, though it is not usable.

## How to log in

Two user accounts exist, named "default" and "guest". Use the following table to help with reference.

Users built-in to KitsuneOS/NanamiOS 0.01

## Programs

KitsuneOS comes with eight programs/commands: ProgramList, SystemInfo, KillAssist!!, WhoAmI?, RollDice, Calendar, UserManager, and Ver. These all are exclusive to this prototype (apart from ProgramList, SystemInfo, and Ver, which are either built-in to NanamiCL, programmed into a macro-command, or both). Most of these programs deploy the various Python modules the demo requires.

### Calendar

Calendar is a program that prompts the user to input a year, and then it displays a calendar.

### KillAssist!!

KillAssist!! is a program giving the user assistance on how to shut down NanamiOS 0.01, which can be done via the CTRL+C (also the copy) keyboard shortcut.

### ProgramList

ProgramList lists off all usable commands or programs. This build has these commands hard-coded into the prototype (similar to early builds of NanamiCL, as well as SteelDOS and AlphaCrypt, a software protection system made by SteelsOfLiquid).

### RollDice

RollDice will generate a number ranging from 1 to 6, and returns the result.

### SystemInfo

SystemInfo will display the platform the demo is running on. For example, if being ran on Linux, it returns with Linux(...), or on Windows 7 (unlikely choice), Windows-7-6.1.7601-SP1 (iirc).

#### Processor Info at startup

NanamiOS 0.01 also displays the processor info on startup.

### UserManager

UserManager is a program designed to manage user accounts in this build of NanamiOS. Most of its functions are useless, however you can view and add users.

### WhoAmI?

This command displays the user logged in.

## Bugs and quirks

This build is riddled with bugs, and may experience errors if modified to have more programs, such as SteelDOS 0.07's calculator, which uses "int(input(..." instead of the later, smoother "float(input..." code. It also has been noted by SteelsOfLiquid that during her testing, she encountered several errors with logging into nonexistent users.

### Error while closing out

A KeyboardInterrupt exception is thrown when the user shuts down NanamiOS 0.01. This is the only time such exception is known to be a valid method of shutting down or restarting NanamiOS, as the NanamiKeyboard driver doesn't support CTRL+ALT+DEL or other methods of shutdown, apart from pressing the power button on the computer.

## References

1. ↑ 1.0 1.1 The program's startup screen displays the build date and information.
2. ↑ NanamiOS 0.01 UserManager program (view option)
3. ↑ List of programs and commands obtained by NanamiOS 0.01 ProgramList program.
4. ↑ 4.0 4.1 4.2 My user experience.
5. ↑ NanamiOS 0.01 Program "KillAssist!!"
6. ↑ The program's code.
7. ↑ Testing Log, 2023 Oct. 25. However, this log is based off of Steel-chan's memory.
8. ↑ Ending the program by CTRL+C, you can see a "KeyboardInterrupt" error thrown for a split-second.