Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
O

osakaOS

> 编程语言
Open source

The de facto operating system developed for the cult of Ayumu "Osaka" Kasuga.

1.3K stars0 likes0 views
WebsiteGitHub

About

The de facto operating system developed for the cult of Ayumu "Osaka" Kasuga.

osakaOS v3.0

The Osaka Operating System v3.0.

osakaOS is a 32 bit, (optionally) multitasking, megalithic operating system that is made with a focus on unconventional/ridiculous design choices. It is meant to emulate the experience of a videogame or demo software rather than a traditional desktop operating system. It uses different text modes and graphical programs to edit files using the Osaka FileSystem and create programs using the AyumuScript scripting language.

Multitasking kernel programs, file allocation, networking utilities, a paint GUI program, and much more :)

The desktop of osakaOS, you can enter the GUI by pressing the windows/command key.

How to run/compile

Included is a pre-compiled bootable iso image that you can use in any normal virtualization software. To compile from source do 'sudo make run' and pray for the best. The binary will be built and QEMU will boot from the virtual disk.

You will probably need the following software packages: g++, binutils, libc6-dev-i386, qemu-system-x86_64 grub-legacy, grub2, xorriso.

If you plan on using other emulators then make sure it has piix4 ide support for storage, at least 16MB of memory, standard VGA emulation, and pc speaker support for basic audio. Emulation is the preferred way to run the OS as running it on real hardware requires a very old machine for the drivers to work, as well as a lack of concern for the data on the machine since the OS doesn't care to ask if you want to write over a pre-existing system partition, it will just do it. There is also a lack of error catching that can cause crashes, which would be annoying to deal with on real machines.

How to get audio using PulseAudio

If you're using a linux host and use pulseaudio like me, add this line load-module module-native-protocol-unix auth-anonymous=1 socket=/tmp/pulse-socket to /etc/pulse/default.pa. Then restart pulseaudio and the settings in the makefile should work. (original post here)

Extra

During development this project was/will receive monthly updates on my youtube page.

This project is partly based on the WYOOS tutorial series. Although many things from the tutorial have been changed or removed for various reasons.

Current bugs may include, window input for scripts being janky, paint width being difficult, small GUI errors when drawing programs, and other stuff too long to list here.

For the next major update I plan on further building the network stack and implement internet functionality, along with more advanced graphical applications and custom media encodings.

Why did you make an entire OS after this character? Are you obsessed or something? No, I just thought it would be funny.

Important Command List

GENERIC

"say (string)" - print out whatever arguments were passed.

"help" - list common commands and keyboard shortcuts.

"clear" - clear text from screen.

DRIVERS/SYSTEM

"delay (int)" - use the PIT timer to delay the system by (int) number of milliseconds.

"beep (int)" - use the pc speaker to beep at (int) frequency.

"rmem (int)" - read value from (int) memory address.

"wmem (int) (int)" - write 2nd (int) value to 1st (int) memory address.

"rdisk (int) (int)" - read from 1st (int) sector number for 2nd (int) number of bytes.

"wdisk (int) (string)" - write (string) data to (int) sector.

FILESYSTEM

"files" - list all known files and number of files currently allocated.

"tag (string) (file)" - assign an organizational tag (string) to given files.

"size (file)" - print out size of (file) in bytes.

"delete (file)" - deletes and removes (file) from filesystem.

AYUMUSCRIPT

"var (string) (type)" - define variable with name (string) and value (type).

"= (variable) (arithmetic expression)" - compute an arithmetic expression and store in variable.

"if/loop (var/int) (op) (var/int)" - determine if expression is true, if so nothing changes, if not, commands won't be processed.

"fi/pool" - allow command to be processed again.

"putpixel (int) (int) (int)" - draw pixel at x and y coordinates with given color value.

"window (string)" - create user window for graphical programming.

"drawpic (file)" - fill buffer of image onto graphical target.

"// (string)" - does nothing, meant for comments in AyumuScript files.

"ex (file)" - executes files as a script (singletasking).

"ext (file)" - executes files as a script (multitasking).

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C++operating-system

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言