@@ -17,11 +17,10 @@ the ability to play around and explore their computers.
1717
1818![ MeghaOS Screenshot] ( /docs/images/meghaos_vesafb.png )
1919
20- I am working to make MeghaOS a completely graphical operating system and text mode will only be for
21- debugging and development. It can run variety of graphics modes and supports 8-bit, 24 & 32-bit
22- color.
20+ MeghaOS is primarily a graphical operating system with text mode reserved for debugging &
21+ development. It supports variety of graphics modes and has 8-bit, 24 & 32-bit color suport.
2322
24- ![ MeghaOS Screenshot] ( /docs/images/meghaos_mpdemo .gif )
23+ ![ MeghaOS Screenshot] ( /docs/images/meghaos_gui0 .gif )
2524
2625Multitasking capabilities using Cooperative multitasking allows processes and threads to run
2726simultaneously. The choice of Cooperative multitasking was intentional as it provides a good base
@@ -52,7 +51,7 @@ used by another.
5251- [X] Enhancements to the process management.
5352- [X] VESA VGA frame buffer.
5453- [X] Basic graphics & fonts library
55- - [ ] Basic drivers (Keyboard, Mouse, RTC)
54+ - [ ] Basic drivers (PS2, PIT, PIC, Keyboard, Mouse, RTC)
5655- [ ] CPIO based RAMDISK FS, for loading kernel modules and other programs.
5756- [ ] Graphical shell.
5857
@@ -83,35 +82,38 @@ used by another.
8382* ` MOS_PORT_E9_ENABLED ` (Defaults to 0) - Enables/disables debug printing using port 0xE9.
8483* ` CMAKE_PREFIX_PATH ` - Path to where cross compiler is installed. Required if PATH environment
8584 variable does not include it.
85+ * ` MOS_GRAPHICS_ENABLED ` (Defaults to No) - Enables/disables VESA graphics.
86+ * ` MOS_GRAPHICS_BPP ` (Defaults to 32) - Graphics bits per pixel. Valid values are 8, 24, 32.
8687
8788Generate the build system and then start the build:
8889```
89- # Option 1: DEBUG build and cross compiler installation path passed explicitly.
90+ # Example 1: DEBUG build and cross compiler installation path passed explicitly.
91+ # NOTE: If full path was not provided the, Cross compiler path taken from $PATH variable.
9092
9193$ cmake -DCMAKE_TOOLCHAIN_FILE=./tools/toolchain-i686-elf-pc.cmake \
9294 -DCMAKE_PREFIX_PATH=~/.local/opt/i686-cross \
9395 -B build-os
9496
95- # Option 2: NDEBUG mode build with MOS_PORT_E9_ENABLED = 1.
96-
97- # NOTE; Cross compiler path taken from $PATH.
98- # NOTE: MOS_PORT_E9_ENABLED will enable printing debug messages to host terminal.
97+ # Example 2: DEBUG mode build with Graphics mode.
9998
10099$ cmake -DCMAKE_TOOLCHAIN_FILE=./tools/toolchain-i686-elf-pc.cmake \
101- -DMOS_BUILD_MODE=NDEBUG -DMOS_PORT_E9_ENABLED=true -B build-os
100+ -DMOS_BUILD_MODE=DEBUG -DMOS_GRAPHICS_ENABLED='Yes' -B build-os
102101```
102+
103103```
104104$ cd build-os
105105
106106# Compiles the Kernel and user programs. Does not bulid disk image.
107107$ make
108108
109109# Compiles and bulids disk image.
110- $ make mos.flp
110+ $ make image
111111```
112+
112113### Running
113114
114115To run the disk image in Qemu use the following command:
116+
115117```
116118$ cd build-os
117119
0 commit comments