GithubHelp home page GithubHelp logo

duoduo70 / plant-os Goto Github PK

View Code? Open in Web Editor NEW

This project forked from min0911y/plant-os

1.0 0.0 0.0 16.88 MB

A simple OS used to study made by two students

License: GNU General Public License v3.0

Shell 0.01% C++ 1.16% Python 0.02% C 97.57% Lua 0.34% Assembly 0.43% Awk 0.03% Makefile 0.37% HTML 0.03% Batchfile 0.01% GDB 0.01% Roff 0.03% BASIC 0.01%

plant-os's Introduction

About Powerint DOS

  • Powerint DOS is an operating system used for learning purposes only.
  • At first, the operating system was in 16-bit real mode, but now it is in 32-bit protected mode (386 version).
  • Due to COVID-19, Zhou Zhihao stayed at home and started the project in December 2020.
  • The project was about operating systems and Zhou Zhihao named it 'Powerint,' meaning powerful interrupts that we can use. After coding for about a year, the operating system had the normal functionality like MS-DOS but it was still in 16-bit real mode.
  • In December 2021, the writer of Simple OS, Qiu Chenjun, collaborated with Zhou Zhihao. They helped Powerint DOS transition into a new world, 32-bit protected mode, and renamed it Powerint DOS 386.
  • After over a year of coding, Powerint DOS 386 is continuously improving.

Build

Note: you may need to install nasm, gcc, g++, mtools and qemu before build

First, you have to clone the repo, like this:

git clone https://github.com/ZhouZhihaos/Powerint-DOS-386.git

Second, go to the apps folder:

cd apps

Then, use make to compile the apps:

make

If you don't see an error message, then go to the Loader folder then type make in the cmd prompt:

cd ..
cd Loader
make

If you don't see an error message, then you can run flowing commands to go to the kernel folder and build the kernel:

cd ..
cd kernel
make

Or you can add run in order to start debug after the compilation:

make run

You will see Powerint DOS splitted into four images in kernel/img folder.

Done! You can try Powerint DOS by using qemu or any other virtualization software you like right now!

Boot

In kernel directory:

make full_run

you can also use make run or make img_run, they differ.

Doom Game

If you want to run Doom, after the build:

  1. You can binary concat kernel/img/doom1.img and kernel/img/doom2.img. After that, run in kernel directory:
qemu-system-i386 -net nic,model=pcnet -net user -serial stdio -device sb16 -device floppy -fda ./img/Powerint_DOS_386.img -drive id=disk,file=disk.img,if=none -device ahci,id=ahci -device ide-hd,drive=disk,bus=ahci.0 -hdb <YOUR-DOOM-HARD-DISK-FILE-NAME> -boot a -m 512 -enable-kvm
  1. You can also use doomcpy provided by PlantOS, see doomcpy.c.

Developer

Thanks

  • TheFlySong
  • yywd_123
  • Oildum-was-ejected
  • wenxuanjun
  • duoduo70(time.c)
  • ...

plant-os's People

Contributors

duoduo70 avatar min0911y avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.