summaryrefslogtreecommitdiff
path: root/README
blob: 0d1a9343eda72ce484bf8a41a34509aca91077f0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Welcome ! It seems you are intrested in my Melon OS...

** HOW TO BUILD MELON : **
This is supposed to work in a Linux environment. Maybee it could work on *BSD, or Cygwin, but that wasn't tested.

You need :
- GCC
- Nasm
- Qemu or Bochs for testing (Qemu works better, debugging is planned for bochs)

If you haven't yet downloaded the source code, then commit the GIT repository :
$ git clone git://github.com/Alexis211/Melon.git

Then, rebuild everything :
$ make mrproper
$ make

Create the floppy image :
$ make floppy
You will probably be prompted for your password. We need it to mount the floppy image as a loopback device.

And run it with Qemu :
$ make qemu

** HOW TO CONFIGURE THE GRUB ENTRIES : **
If you want to change the entries that appear when you `make qemu`, then edit the Grub-menu.cfg and `make floppy` again.

The options for the kernel command line are the following :
- vesa:[disabled|enabled]	enables or disables the VESA driver (hangs on Bochs when enabled)
- keymap:[builtin|...]		selects a keymap. keymaps are in Source/Kernel/Ressources/Keymaps
							built-in keymap is defined in Source/Kernel/DeviceManager/Kbd.ns.cpp
- init:<init_app>			select the init application to run. empty string = go to kernel shell.
							default is /System/Applications/PaperWork.app

** About HDD.img **
This file is not used yet, although it is attached to the qemu and bochs VMs.
Its content can be updated with `make hdd`, the file copying happens in CopyToHDD.sh.
For the moment, we use a boot floppy for loading the kernel as the floppy is the only thing the kernel can read for now,
but we could as well use the GRUB that is installed on HDD.img.