Update files
10
.github/workflows/makefile.yml
vendored
@ -136,7 +136,7 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 build-essential bison flex libgmp3-dev libmpc-dev libmpfr-dev texinfo -y
|
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 build-essential bison flex libgmp3-dev libmpc-dev libmpfr-dev texinfo -y
|
||||||
make --quiet -C tools do_limine
|
make --quiet -C tools do_limine
|
||||||
make --quiet -C Modules prepare
|
make --quiet -C Drivers prepare
|
||||||
make --quiet -C Userspace prepare
|
make --quiet -C Userspace prepare
|
||||||
make --quiet -C Lynx prepare
|
make --quiet -C Lynx prepare
|
||||||
make --quiet -C Kernel prepare
|
make --quiet -C Kernel prepare
|
||||||
@ -159,7 +159,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
make build_lynx
|
make build_lynx
|
||||||
make build_userspace
|
make build_userspace
|
||||||
make build_modules
|
make build_drivers
|
||||||
make build_kernel
|
make build_kernel
|
||||||
make build_userspace
|
make build_userspace
|
||||||
|
|
||||||
@ -180,7 +180,7 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
||||||
make --quiet -C tools do_limine
|
make --quiet -C tools do_limine
|
||||||
make --quiet -C Modules prepare
|
make --quiet -C Drivers prepare
|
||||||
make --quiet -C Userspace prepare
|
make --quiet -C Userspace prepare
|
||||||
make --quiet -C Lynx prepare
|
make --quiet -C Lynx prepare
|
||||||
make --quiet -C Kernel prepare
|
make --quiet -C Kernel prepare
|
||||||
@ -237,7 +237,7 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
||||||
make --quiet -C tools do_limine
|
make --quiet -C tools do_limine
|
||||||
make --quiet -C Modules prepare
|
make --quiet -C Drivers prepare
|
||||||
make --quiet -C Userspace prepare
|
make --quiet -C Userspace prepare
|
||||||
make --quiet -C Lynx prepare
|
make --quiet -C Lynx prepare
|
||||||
make --quiet -C Kernel prepare
|
make --quiet -C Kernel prepare
|
||||||
@ -295,7 +295,7 @@ jobs:
|
|||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
sudo apt-get install rustc xorriso mtools genisoimage ovmf nasm doxygen make meson gcc-10 g++-10 gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y
|
||||||
make --quiet -C tools do_limine
|
make --quiet -C tools do_limine
|
||||||
make --quiet -C Modules prepare
|
make --quiet -C Drivers prepare
|
||||||
make --quiet -C Userspace prepare
|
make --quiet -C Userspace prepare
|
||||||
make --quiet -C Lynx prepare
|
make --quiet -C Lynx prepare
|
||||||
make --quiet -C Kernel prepare
|
make --quiet -C Kernel prepare
|
||||||
|
@ -83,7 +83,7 @@ build64:
|
|||||||
script:
|
script:
|
||||||
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
||||||
- make --quiet -C tools do_limine
|
- make --quiet -C tools do_limine
|
||||||
- make --quiet -C Modules prepare
|
- make --quiet -C Drivers prepare
|
||||||
- make --quiet -C Userspace prepare
|
- make --quiet -C Userspace prepare
|
||||||
- make --quiet -C Lynx prepare
|
- make --quiet -C Lynx prepare
|
||||||
- make --quiet -C Kernel prepare
|
- make --quiet -C Kernel prepare
|
||||||
@ -107,7 +107,7 @@ build32:
|
|||||||
script:
|
script:
|
||||||
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
||||||
- make --quiet -C tools do_limine
|
- make --quiet -C tools do_limine
|
||||||
- make --quiet -C Modules prepare
|
- make --quiet -C Drivers prepare
|
||||||
- make --quiet -C Userspace prepare
|
- make --quiet -C Userspace prepare
|
||||||
- make --quiet -C Lynx prepare
|
- make --quiet -C Lynx prepare
|
||||||
- make --quiet -C Kernel prepare
|
- make --quiet -C Kernel prepare
|
||||||
@ -130,7 +130,7 @@ buildarm64:
|
|||||||
script:
|
script:
|
||||||
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
- apt-get update && apt-get install -y rustc xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64
|
||||||
- make --quiet -C tools do_limine
|
- make --quiet -C tools do_limine
|
||||||
- make --quiet -C Modules prepare
|
- make --quiet -C Drivers prepare
|
||||||
- make --quiet -C Userspace prepare
|
- make --quiet -C Userspace prepare
|
||||||
- make --quiet -C Lynx prepare
|
- make --quiet -C Lynx prepare
|
||||||
- make --quiet -C Kernel prepare
|
- make --quiet -C Kernel prepare
|
||||||
|
4
.gitmodules
vendored
@ -8,5 +8,5 @@
|
|||||||
path = Userspace
|
path = Userspace
|
||||||
url = https://github.com/Fennix-Project/Userspace.git
|
url = https://github.com/Fennix-Project/Userspace.git
|
||||||
[submodule "Modules"]
|
[submodule "Modules"]
|
||||||
path = Modules
|
path = Drivers
|
||||||
url = https://github.com/Fennix-Project/Modules.git
|
url = https://github.com/Fennix-Project/Drivers.git
|
||||||
|
4
Doxyfile
@ -864,7 +864,7 @@ WARN_LOGFILE =
|
|||||||
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
|
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
|
||||||
# Note: If this tag is empty the current directory is searched.
|
# Note: If this tag is empty the current directory is searched.
|
||||||
|
|
||||||
INPUT = Kernel Lynx Userspace tools/Doxygen_README.md
|
INPUT = Kernel Lynx Userspace Drivers tools/doxymds/main.md
|
||||||
|
|
||||||
# This tag can be used to specify the character encoding of the source files
|
# This tag can be used to specify the character encoding of the source files
|
||||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
|
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
|
||||||
@ -1064,7 +1064,7 @@ FILTER_SOURCE_PATTERNS =
|
|||||||
# (index.html). This can be useful if you have a project on for instance GitHub
|
# (index.html). This can be useful if you have a project on for instance GitHub
|
||||||
# and want to reuse the introduction page also for the doxygen output.
|
# and want to reuse the introduction page also for the doxygen output.
|
||||||
|
|
||||||
USE_MDFILE_AS_MAINPAGE = tools/Doxygen_README.md
|
USE_MDFILE_AS_MAINPAGE = tools/doxymds/main.md
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# Configuration options related to source browsing
|
# Configuration options related to source browsing
|
||||||
|
1
Drivers
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit da4a6317ea49c46a0ba7527a2387cf5e7169541e
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"folders": [
|
"folders": [
|
||||||
{
|
{
|
||||||
"path": "./Modules"
|
"path": "./Drivers"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"settings": {
|
"settings": {
|
||||||
@ -14,6 +14,7 @@
|
|||||||
"Cardbus",
|
"Cardbus",
|
||||||
"CFIEN",
|
"CFIEN",
|
||||||
"cmdret",
|
"cmdret",
|
||||||
|
"cmpb",
|
||||||
"ECTRL",
|
"ECTRL",
|
||||||
"EEPROM",
|
"EEPROM",
|
||||||
"Fennix",
|
"Fennix",
|
||||||
@ -25,6 +26,7 @@
|
|||||||
"inportw",
|
"inportw",
|
||||||
"INTX",
|
"INTX",
|
||||||
"KAPI",
|
"KAPI",
|
||||||
|
"LEDS",
|
||||||
"LPBK",
|
"LPBK",
|
||||||
"LSTA",
|
"LSTA",
|
||||||
"mminb",
|
"mminb",
|
||||||
@ -87,8 +89,23 @@
|
|||||||
"TXDESCLEN",
|
"TXDESCLEN",
|
||||||
"TXDESCLO",
|
"TXDESCLO",
|
||||||
"TXDESCTAIL",
|
"TXDESCTAIL",
|
||||||
|
"TYPEMATIC",
|
||||||
|
"ubit",
|
||||||
"Virtio",
|
"Virtio",
|
||||||
"Wmissing"
|
"Wmissing"
|
||||||
]
|
],
|
||||||
|
"files.associations": {
|
||||||
|
"*.su": "tsv",
|
||||||
|
"driver.h": "c",
|
||||||
|
"base.h": "c",
|
||||||
|
"types.h": "c",
|
||||||
|
"syscall.h": "c",
|
||||||
|
"aip.h": "c",
|
||||||
|
"input.h": "c",
|
||||||
|
"errno.h": "c",
|
||||||
|
"io.h": "c",
|
||||||
|
"rtl8139.hpp": "c",
|
||||||
|
"net.h": "c"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -46,7 +46,16 @@
|
|||||||
"utility": "cpp",
|
"utility": "cpp",
|
||||||
"algorithm": "cpp",
|
"algorithm": "cpp",
|
||||||
"functional": "cpp",
|
"functional": "cpp",
|
||||||
"stdio.h": "c"
|
"stdio.h": "c",
|
||||||
|
"string": "cpp",
|
||||||
|
"list": "cpp",
|
||||||
|
"stdexcept": "cpp",
|
||||||
|
"unistd.h": "c",
|
||||||
|
"unordered_map": "cpp",
|
||||||
|
"sched.h": "c",
|
||||||
|
"mman.h": "c",
|
||||||
|
"string.h": "c",
|
||||||
|
"macro.hpp": "c"
|
||||||
},
|
},
|
||||||
"cSpell.words": [
|
"cSpell.words": [
|
||||||
"AABBCC",
|
"AABBCC",
|
||||||
@ -71,6 +80,8 @@
|
|||||||
"ARRAYSZ",
|
"ARRAYSZ",
|
||||||
"auxv",
|
"auxv",
|
||||||
"BADRAM",
|
"BADRAM",
|
||||||
|
"BGRT",
|
||||||
|
"bimi",
|
||||||
"binfo",
|
"binfo",
|
||||||
"biosdev",
|
"biosdev",
|
||||||
"BIST",
|
"BIST",
|
||||||
@ -105,6 +116,7 @@
|
|||||||
"daifclr",
|
"daifclr",
|
||||||
"daifset",
|
"daifset",
|
||||||
"DAPI",
|
"DAPI",
|
||||||
|
"DBGP",
|
||||||
"DEBUGCTL",
|
"DEBUGCTL",
|
||||||
"defragment",
|
"defragment",
|
||||||
"dfdesc",
|
"dfdesc",
|
||||||
@ -115,12 +127,14 @@
|
|||||||
"Drivermemset",
|
"Drivermemset",
|
||||||
"Driversprintf",
|
"Driversprintf",
|
||||||
"drvdir",
|
"drvdir",
|
||||||
|
"DRVER",
|
||||||
"DSDT",
|
"DSDT",
|
||||||
"DUID",
|
"DUID",
|
||||||
"dynstr",
|
"dynstr",
|
||||||
"dynsym",
|
"dynsym",
|
||||||
"EBDA",
|
"EBDA",
|
||||||
"edid",
|
"edid",
|
||||||
|
"EEPROM",
|
||||||
"EFER",
|
"EFER",
|
||||||
"Ehdr",
|
"Ehdr",
|
||||||
"ehsize",
|
"ehsize",
|
||||||
@ -156,6 +170,7 @@
|
|||||||
"FSGSBASE",
|
"FSGSBASE",
|
||||||
"fxrstor",
|
"fxrstor",
|
||||||
"fxsave",
|
"fxsave",
|
||||||
|
"Gamepad",
|
||||||
"Gameport",
|
"Gameport",
|
||||||
"geopbyte",
|
"geopbyte",
|
||||||
"GETVERSION",
|
"GETVERSION",
|
||||||
@ -189,8 +204,10 @@
|
|||||||
"KAPI",
|
"KAPI",
|
||||||
"KAPIPCI",
|
"KAPIPCI",
|
||||||
"kcalloc",
|
"kcalloc",
|
||||||
|
"kcon",
|
||||||
"kernelctl",
|
"kernelctl",
|
||||||
"kfree",
|
"kfree",
|
||||||
|
"klog",
|
||||||
"kmalloc",
|
"kmalloc",
|
||||||
"kproc",
|
"kproc",
|
||||||
"krealloc",
|
"krealloc",
|
||||||
@ -208,6 +225,7 @@
|
|||||||
"MADT",
|
"MADT",
|
||||||
"MADTIO",
|
"MADTIO",
|
||||||
"malloc",
|
"malloc",
|
||||||
|
"MCFG",
|
||||||
"memdbg",
|
"memdbg",
|
||||||
"memmap",
|
"memmap",
|
||||||
"memsz",
|
"memsz",
|
||||||
@ -243,6 +261,7 @@
|
|||||||
"MWAIT",
|
"MWAIT",
|
||||||
"NIDENT",
|
"NIDENT",
|
||||||
"NOBITS",
|
"NOBITS",
|
||||||
|
"nullfd",
|
||||||
"nullptr",
|
"nullptr",
|
||||||
"objptr",
|
"objptr",
|
||||||
"OEMID",
|
"OEMID",
|
||||||
@ -278,20 +297,24 @@
|
|||||||
"PHYSMASK",
|
"PHYSMASK",
|
||||||
"Pico",
|
"Pico",
|
||||||
"PINBASED",
|
"PINBASED",
|
||||||
|
"Pipefd",
|
||||||
"PKRU",
|
"PKRU",
|
||||||
"PLTGOT",
|
"PLTGOT",
|
||||||
"PLTREL",
|
"PLTREL",
|
||||||
"PLTRELSZ",
|
"PLTRELSZ",
|
||||||
"POPCNT",
|
"POPCNT",
|
||||||
|
"PORTHB",
|
||||||
"powerline",
|
"powerline",
|
||||||
"Prefetchable",
|
"Prefetchable",
|
||||||
"PREINIT",
|
"PREINIT",
|
||||||
"PROCBASED",
|
"PROCBASED",
|
||||||
"PTMX",
|
"PTMX",
|
||||||
|
"ptys",
|
||||||
"pushfl",
|
"pushfl",
|
||||||
"pushfq",
|
"pushfq",
|
||||||
"Raphson",
|
"Raphson",
|
||||||
"RARP",
|
"RARP",
|
||||||
|
"RBSTART",
|
||||||
"rdmsr",
|
"rdmsr",
|
||||||
"RDRAND",
|
"RDRAND",
|
||||||
"rdseed",
|
"rdseed",
|
||||||
@ -304,6 +327,7 @@
|
|||||||
"RELASZ",
|
"RELASZ",
|
||||||
"RELSZ",
|
"RELSZ",
|
||||||
"Rodata",
|
"Rodata",
|
||||||
|
"RPCI",
|
||||||
"RRGGBB",
|
"RRGGBB",
|
||||||
"RSDP",
|
"RSDP",
|
||||||
"RSDT",
|
"RSDT",
|
||||||
@ -323,6 +347,7 @@
|
|||||||
"showbuf",
|
"showbuf",
|
||||||
"shstrndx",
|
"shstrndx",
|
||||||
"sidt",
|
"sidt",
|
||||||
|
"sigsetsize",
|
||||||
"SIVR",
|
"SIVR",
|
||||||
"SMAP",
|
"SMAP",
|
||||||
"SMBASE",
|
"SMBASE",
|
||||||
@ -331,6 +356,8 @@
|
|||||||
"SMRR",
|
"SMRR",
|
||||||
"SMXE",
|
"SMXE",
|
||||||
"SNTP",
|
"SNTP",
|
||||||
|
"SRAT",
|
||||||
|
"SSDT",
|
||||||
"sspt",
|
"sspt",
|
||||||
"SSSE",
|
"SSSE",
|
||||||
"stac",
|
"stac",
|
||||||
@ -345,6 +372,7 @@
|
|||||||
"Tamsyn",
|
"Tamsyn",
|
||||||
"targp",
|
"targp",
|
||||||
"TCCR",
|
"TCCR",
|
||||||
|
"TCLO",
|
||||||
"TCPA",
|
"TCPA",
|
||||||
"TDCR",
|
"TDCR",
|
||||||
"TEXIT",
|
"TEXIT",
|
||||||
@ -352,6 +380,7 @@
|
|||||||
"Thrd",
|
"Thrd",
|
||||||
"TICR",
|
"TICR",
|
||||||
"tlbi",
|
"tlbi",
|
||||||
|
"Touchpad",
|
||||||
"tracepagetable",
|
"tracepagetable",
|
||||||
"tskdbg",
|
"tskdbg",
|
||||||
"ttbr",
|
"ttbr",
|
||||||
@ -365,6 +394,7 @@
|
|||||||
"UMIP",
|
"UMIP",
|
||||||
"UMWAIT",
|
"UMWAIT",
|
||||||
"UNMAP",
|
"UNMAP",
|
||||||
|
"Unmaskable",
|
||||||
"Unreserving",
|
"Unreserving",
|
||||||
"Unswap",
|
"Unswap",
|
||||||
"unsynchronized",
|
"unsynchronized",
|
||||||
@ -381,6 +411,7 @@
|
|||||||
"Virtio",
|
"Virtio",
|
||||||
"VMCS",
|
"VMCS",
|
||||||
"VMFUNC",
|
"VMFUNC",
|
||||||
|
"vmouse",
|
||||||
"VMXE",
|
"VMXE",
|
||||||
"VNNI",
|
"VNNI",
|
||||||
"VNNIW",
|
"VNNIW",
|
||||||
@ -388,6 +419,7 @@
|
|||||||
"VPID",
|
"VPID",
|
||||||
"VPOKE",
|
"VPOKE",
|
||||||
"VPOPCNTDQ",
|
"VPOPCNTDQ",
|
||||||
|
"WAET",
|
||||||
"weakrefalias",
|
"weakrefalias",
|
||||||
"Wignored",
|
"Wignored",
|
||||||
"Wmissing",
|
"Wmissing",
|
||||||
|
@ -39,7 +39,12 @@
|
|||||||
"syscall.h": "c",
|
"syscall.h": "c",
|
||||||
"stdint.h": "c",
|
"stdint.h": "c",
|
||||||
"setjmp.h": "c",
|
"setjmp.h": "c",
|
||||||
"limits.h": "c"
|
"limits.h": "c",
|
||||||
|
"fcntl.h": "c",
|
||||||
|
"pty.h": "c",
|
||||||
|
"string.h": "c",
|
||||||
|
"time.h": "c",
|
||||||
|
"reboot.h": "c"
|
||||||
},
|
},
|
||||||
"cSpell.words": [
|
"cSpell.words": [
|
||||||
"auxv",
|
"auxv",
|
||||||
|
2
Kernel
@ -1 +1 @@
|
|||||||
Subproject commit 889e1522a36576822aa63598e825dd971aa204e9
|
Subproject commit 96daa43d3880126119bf775b3c5400aae7764392
|
54
Makefile
@ -32,7 +32,10 @@ QEMUFLAGS += -device vmware-svga -M q35 \
|
|||||||
-device ide-hd,drive=disk,bus=ahci.1 \
|
-device ide-hd,drive=disk,bus=ahci.1 \
|
||||||
-audiodev pa,id=pa1,server=/run/user/1000/pulse/native \
|
-audiodev pa,id=pa1,server=/run/user/1000/pulse/native \
|
||||||
-machine pcspk-audiodev=pa1 \
|
-machine pcspk-audiodev=pa1 \
|
||||||
-device AC97,audiodev=pa1
|
-device AC97,audiodev=pa1 \
|
||||||
|
-device intel-hda \
|
||||||
|
-device ich9-intel-hda \
|
||||||
|
-acpitable file=tools/SSDT1.dat
|
||||||
else ifeq ($(OSARCH), i386)
|
else ifeq ($(OSARCH), i386)
|
||||||
QEMUFLAGS += -M q35 \
|
QEMUFLAGS += -M q35 \
|
||||||
-usb \
|
-usb \
|
||||||
@ -49,7 +52,10 @@ QEMUFLAGS += -M q35 \
|
|||||||
-hda $(OSNAME).iso \
|
-hda $(OSNAME).iso \
|
||||||
-audiodev pa,id=pa1,server=/run/user/1000/pulse/native \
|
-audiodev pa,id=pa1,server=/run/user/1000/pulse/native \
|
||||||
-machine pcspk-audiodev=pa1 \
|
-machine pcspk-audiodev=pa1 \
|
||||||
-device AC97,audiodev=pa1
|
-device AC97,audiodev=pa1 \
|
||||||
|
-device intel-hda \
|
||||||
|
-device ich9-intel-hda \
|
||||||
|
-acpitable file=tools/SSDT1.dat
|
||||||
else ifeq ($(OSARCH), aarch64)
|
else ifeq ($(OSARCH), aarch64)
|
||||||
QEMUFLAGS += -M raspi3b \
|
QEMUFLAGS += -M raspi3b \
|
||||||
-cpu cortex-a57 \
|
-cpu cortex-a57 \
|
||||||
@ -57,7 +63,8 @@ QEMUFLAGS += -M raspi3b \
|
|||||||
-serial file:profiler.log \
|
-serial file:profiler.log \
|
||||||
-serial file:serial3.dmp \
|
-serial file:serial3.dmp \
|
||||||
-serial file:serial4.dmp \
|
-serial file:serial4.dmp \
|
||||||
-kernel $(OSNAME).img
|
-kernel $(OSNAME).img \
|
||||||
|
-acpitable file=tools/SSDT1.dat
|
||||||
endif
|
endif
|
||||||
|
|
||||||
doxygen:
|
doxygen:
|
||||||
@ -66,7 +73,7 @@ doxygen:
|
|||||||
doxygen Kernel/Doxyfile
|
doxygen Kernel/Doxyfile
|
||||||
doxygen Lynx/Doxyfile
|
doxygen Lynx/Doxyfile
|
||||||
doxygen Userspace/Doxyfile
|
doxygen Userspace/Doxyfile
|
||||||
doxygen Modules/Doxyfile
|
doxygen Drivers/Doxyfile
|
||||||
|
|
||||||
qemu_vdisk:
|
qemu_vdisk:
|
||||||
ifneq (,$(wildcard ./qemu-disk.img))
|
ifneq (,$(wildcard ./qemu-disk.img))
|
||||||
@ -81,9 +88,9 @@ tools:
|
|||||||
make --quiet -C Kernel prepare
|
make --quiet -C Kernel prepare
|
||||||
make --quiet -C Lynx prepare
|
make --quiet -C Lynx prepare
|
||||||
make --quiet -C Userspace prepare
|
make --quiet -C Userspace prepare
|
||||||
make --quiet -C Modules prepare
|
make --quiet -C Drivers prepare
|
||||||
|
|
||||||
build: build_lynx build_kernel build_userspace build_modules build_image
|
build: build_lynx build_kernel build_userspace build_drivers build_image
|
||||||
|
|
||||||
dump:
|
dump:
|
||||||
make --quiet -C Kernel dump
|
make --quiet -C Kernel dump
|
||||||
@ -109,24 +116,24 @@ ifeq ($(BUILD_USERSPACE), 1)
|
|||||||
make $(MAKE_QUIET_FLAG) -C Userspace build
|
make $(MAKE_QUIET_FLAG) -C Userspace build
|
||||||
endif
|
endif
|
||||||
|
|
||||||
build_modules:
|
build_drivers:
|
||||||
ifeq ($(BUILD_MODULES), 1)
|
ifeq ($(BUILD_DRIVERS), 1)
|
||||||
make $(MAKE_QUIET_FLAG) -C Modules build
|
make $(MAKE_QUIET_FLAG) -C Drivers build
|
||||||
endif
|
endif
|
||||||
|
|
||||||
build_image:
|
build_image:
|
||||||
mkdir -p iso_tmp_data
|
mkdir -p iso_tmp_data
|
||||||
mkdir -p initrd_tmp_data
|
mkdir -p initrd_tmp_data
|
||||||
cp -r initrd/* initrd_tmp_data/
|
cp -r initrd/* initrd_tmp_data/
|
||||||
ifeq ($(BUILD_MODULES), 1)
|
ifeq ($(BUILD_DRIVERS), 1)
|
||||||
cp -r Modules/out/* initrd_tmp_data/modules/
|
cp -r Drivers/out/* initrd_tmp_data/usr/lib/drivers/
|
||||||
endif
|
endif
|
||||||
ifeq ($(BUILD_USERSPACE), 1)
|
ifeq ($(BUILD_USERSPACE), 1)
|
||||||
cp -r Userspace/out/* initrd_tmp_data/
|
cp -r Userspace/out/* initrd_tmp_data/
|
||||||
endif
|
endif
|
||||||
# tar czf initrd.tar.gz -C initrd_tmp_data/ ./ --format=ustar
|
# tar czf initrd.tar.gz -C initrd_tmp_data/ ./ --format=ustar
|
||||||
tar cf initrd.tar.gz -C initrd_tmp_data/ ./ --format=ustar
|
tar cf initrd.tar.gz -C initrd_tmp_data/ ./ --format=ustar
|
||||||
cp Kernel/kernel.fsys initrd.tar.gz \
|
cp Kernel/fennix.elf initrd.tar.gz \
|
||||||
iso_tmp_data/
|
iso_tmp_data/
|
||||||
ifeq ($(BOOTLOADER), lynx)
|
ifeq ($(BOOTLOADER), lynx)
|
||||||
cp tools/lynx.cfg Lynx/loader.bin Lynx/efi-loader.bin iso_tmp_data/
|
cp tools/lynx.cfg Lynx/loader.bin Lynx/efi-loader.bin iso_tmp_data/
|
||||||
@ -137,10 +144,17 @@ ifeq ($(BOOTLOADER), lynx)
|
|||||||
iso_tmp_data -o $(OSNAME).iso
|
iso_tmp_data -o $(OSNAME).iso
|
||||||
endif
|
endif
|
||||||
ifeq ($(BOOTLOADER), limine)
|
ifeq ($(BOOTLOADER), limine)
|
||||||
cp tools/limine.cfg $(LIMINE_FOLDER)/limine.sys $(LIMINE_FOLDER)/limine-cd.bin $(LIMINE_FOLDER)/limine-cd-efi.bin iso_tmp_data/
|
cp tools/limine.cfg $(LIMINE_FOLDER)/limine-bios.sys \
|
||||||
xorriso -as mkisofs -quiet -b limine-cd.bin \
|
$(LIMINE_FOLDER)/limine-bios-cd.bin \
|
||||||
|
$(LIMINE_FOLDER)/limine-uefi-cd.bin \
|
||||||
|
iso_tmp_data/
|
||||||
|
mkdir -p iso_tmp_data/EFI/BOOT
|
||||||
|
cp $(LIMINE_FOLDER)/BOOTX64.EFI \
|
||||||
|
$(LIMINE_FOLDER)/BOOTIA32.EFI \
|
||||||
|
iso_tmp_data/EFI/BOOT/
|
||||||
|
xorriso -as mkisofs -quiet -b limine-bios-cd.bin \
|
||||||
-no-emul-boot -boot-load-size 4 -boot-info-table \
|
-no-emul-boot -boot-load-size 4 -boot-info-table \
|
||||||
--efi-boot limine-cd-efi.bin -V FENNIX \
|
--efi-boot limine-uefi-cd.bin -V FENNIX \
|
||||||
-efi-boot-part --efi-boot-image --protective-msdos-label \
|
-efi-boot-part --efi-boot-image --protective-msdos-label \
|
||||||
iso_tmp_data -o $(OSNAME).iso
|
iso_tmp_data -o $(OSNAME).iso
|
||||||
endif
|
endif
|
||||||
@ -152,7 +166,7 @@ ifeq ($(BOOTLOADER), grub)
|
|||||||
grub-mkrescue -o $(OSNAME).iso iso_tmp_data
|
grub-mkrescue -o $(OSNAME).iso iso_tmp_data
|
||||||
endif
|
endif
|
||||||
ifeq ($(OSARCH), aarch64)
|
ifeq ($(OSARCH), aarch64)
|
||||||
$(COMPILER_PATH)/$(COMPILER_ARCH)objcopy Kernel/kernel.fsys -O binary $(OSNAME).img
|
$(COMPILER_PATH)/$(COMPILER_ARCH)objcopy Kernel/fennix.elf -O binary $(OSNAME).img
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(OSARCH), amd64)
|
ifeq ($(OSARCH), amd64)
|
||||||
@ -192,12 +206,12 @@ vscode_debug_only:
|
|||||||
rm -f serial.log profiler.log serial3.dmp serial4.dmp network.dmp parallel.log
|
rm -f serial.log profiler.log serial3.dmp serial4.dmp network.dmp parallel.log
|
||||||
$(QEMU) -S -gdb tcp::1234 -d int -no-reboot -no-shutdown $(QEMU_UEFI_BIOS) -m 512M $(QEMUFLAGS) $(QEMU_SMP_DBG)
|
$(QEMU) -S -gdb tcp::1234 -d int -no-reboot -no-shutdown $(QEMU_UEFI_BIOS) -m 512M $(QEMUFLAGS) $(QEMU_SMP_DBG)
|
||||||
|
|
||||||
vscode_debug: build_lynx build_kernel build_userspace build_modules build_image vscode_debug_only
|
vscode_debug: build_lynx build_kernel build_userspace build_drivers build_image vscode_debug_only
|
||||||
|
|
||||||
qemu: qemu_vdisk
|
qemu: qemu_vdisk
|
||||||
rm -f serial.log profiler.log serial3.dmp serial4.dmp network.dmp parallel.log
|
rm -f serial.log profiler.log serial3.dmp serial4.dmp network.dmp parallel.log
|
||||||
# touch serial.log parallel.log
|
touch serial.log parallel.log
|
||||||
# x-terminal-emulator -e tail -f serial.log &
|
# x-terminal-emulator -e tail -f serial.log &
|
||||||
# x-terminal-emulator -e tail -f parallel.log &
|
# x-terminal-emulator -e tail -f parallel.log &
|
||||||
$(QEMU) $(QEMU_UEFI_BIOS) -cpu host $(QEMUFLAGS) $(QEMUHWACCELERATION) $(QEMUMEMORY) $(QEMU_SMP)
|
$(QEMU) $(QEMU_UEFI_BIOS) -cpu host $(QEMUFLAGS) $(QEMUHWACCELERATION) $(QEMUMEMORY) $(QEMU_SMP)
|
||||||
|
|
||||||
@ -213,4 +227,4 @@ clean:
|
|||||||
make -C Kernel clean
|
make -C Kernel clean
|
||||||
make -C Lynx clean
|
make -C Lynx clean
|
||||||
make -C Userspace clean
|
make -C Userspace clean
|
||||||
make -C Modules clean
|
make -C Drivers clean
|
||||||
|
@ -20,7 +20,7 @@ BOOTLOADER = grub
|
|||||||
|
|
||||||
BUILD_KERNEL = 1
|
BUILD_KERNEL = 1
|
||||||
BUILD_USERSPACE = 1
|
BUILD_USERSPACE = 1
|
||||||
BUILD_MODULES = 1
|
BUILD_DRIVERS = 1
|
||||||
|
|
||||||
QUIET_BUILD = 1
|
QUIET_BUILD = 1
|
||||||
|
|
||||||
|
1
Modules
@ -1 +0,0 @@
|
|||||||
Subproject commit 2ee57b9756ac97daf7f6dc5a5d4575a8a97ffc10
|
|
@ -1 +1 @@
|
|||||||
Subproject commit 17787dbc9b0ccf366b363e035b3333e1a131719c
|
Subproject commit c685a37c15adcecf9ba600c81894b4f8e993caca
|
@ -1 +0,0 @@
|
|||||||
/Test.txt
|
|
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
Before Width: | Height: | Size: 625 KiB |
6
initrd/etc/cross/linux
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[uname]
|
||||||
|
sysname=Linux
|
||||||
|
nodename=auto
|
||||||
|
release=3.2.0-10-generic
|
||||||
|
version=#10-Ubuntu SMP Mon Jav 1 00:00:00 UTC 0
|
||||||
|
machine=auto
|
@ -1,7 +0,0 @@
|
|||||||
[FAKE_API_VERSION]
|
|
||||||
Enable=0
|
|
||||||
Major=0
|
|
||||||
Minor=0
|
|
||||||
Patch=0
|
|
||||||
|
|
||||||
[BLACKLIST]
|
|
33
initrd/tmp/chars.txt
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
Hello World!
|
||||||
|
Bună Lume!
|
||||||
|
¡Hola Mundo!
|
||||||
|
Привет, мир!
|
||||||
|
Selam Dünya!
|
||||||
|
「こんにちは世界」
|
||||||
|
你好世界!
|
||||||
|
안녕하세요 월드!
|
||||||
|
مرحبا بالعالم!
|
||||||
|
Բարեւ աշխարհ!
|
||||||
|
Γειά σου Κόσμε!
|
||||||
|
Helló Világ!
|
||||||
|
Përshendetje Botë!
|
||||||
|
|
||||||
|
------------------
|
||||||
|
|
||||||
|
ĂăÎîÂâȘșȚț
|
||||||
|
|
||||||
|
ΩŁ€®Ŧ¥←↑↓→ØÞ
|
||||||
|
ƧЪŊĦ̛̛Ł˝
|
||||||
|
«»©¢“‘”’µº×÷
|
||||||
|
|
||||||
|
ёЁъЪЧчШшЩщЭэ
|
||||||
|
ЯВЕРТЫУИОП
|
||||||
|
явертыуиоп
|
||||||
|
АСДФГХЙКЛ
|
||||||
|
асдфгхйкл
|
||||||
|
ЗЬЦЖБНМ
|
||||||
|
зьцжбнм
|
||||||
|
|
||||||
|
顲³¼⅜±°¿
|
||||||
|
ĞğÜü
|
||||||
|
|
1
initrd/tmp/invalid
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/foo/bar
|
1
initrd/tmp/link
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/tmp/test.txt
|
@ -1,3 +0,0 @@
|
|||||||
# Doxygen
|
|
||||||
|
|
||||||
This is a README file for Doxygen.
|
|
@ -2,9 +2,9 @@ WORKING_DIR = $(shell pwd)
|
|||||||
CROSS_DIR=$(WORKING_DIR)/cross
|
CROSS_DIR=$(WORKING_DIR)/cross
|
||||||
export PATH := $(CROSS_DIR):$(PATH)
|
export PATH := $(CROSS_DIR):$(PATH)
|
||||||
|
|
||||||
QEMU_VERSION = qemu-7.1.0
|
QEMU_VERSION = 8.1.2
|
||||||
|
|
||||||
all: do_rep do_ep do_fex do_limine clone_all do_binutils_64 do_gcc_64 do_binutils_32 do_gcc_32 do_qemu
|
all: do_rep do_ep do_limine clone_all do_binutils_64 do_gcc_64 do_binutils_32 do_gcc_32 do_qemu
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f rep ep fex
|
rm -f rep ep fex
|
||||||
@ -17,20 +17,16 @@ do_ep:
|
|||||||
g++ -w ErrorParser.cpp -o ep
|
g++ -w ErrorParser.cpp -o ep
|
||||||
chmod +x ep
|
chmod +x ep
|
||||||
|
|
||||||
do_fex:
|
|
||||||
gcc -w Fex.c -o fex
|
|
||||||
chmod +x fex
|
|
||||||
|
|
||||||
do_limine:
|
do_limine:
|
||||||
git clone https://github.com/limine-bootloader/limine.git --branch=v4.x-branch-binary --depth=1
|
git clone https://github.com/limine-bootloader/limine.git --branch=v6.x-branch-binary --depth=1
|
||||||
|
|
||||||
clone_all:
|
clone_all:
|
||||||
git clone https://github.com/Fennix-Project/binutils-gdb.git binutils-gdb
|
git clone https://github.com/Fennix-Project/binutils-gdb.git binutils-gdb
|
||||||
git clone https://github.com/Fennix-Project/gcc.git gcc
|
git clone https://github.com/Fennix-Project/gcc.git gcc
|
||||||
wget https://download.qemu.org/${QEMU_VERSION}.tar.xz
|
wget https://download.qemu.org/qemu-${QEMU_VERSION}.tar.xz
|
||||||
tar xvJf ${QEMU_VERSION}.tar.xz
|
tar xvJf qemu-${QEMU_VERSION}.tar.xz
|
||||||
rm -f ${QEMU_VERSION}.tar.xz
|
rm -f qemu-${QEMU_VERSION}.tar.xz
|
||||||
mv ${QEMU_VERSION} qemu
|
mv qemu-${QEMU_VERSION} qemu
|
||||||
mkdir -p cross
|
mkdir -p cross
|
||||||
mkdir -p qemu
|
mkdir -p qemu
|
||||||
mkdir -p build-binutils64
|
mkdir -p build-binutils64
|
||||||
@ -49,17 +45,25 @@ __clone_all_no_qemu:
|
|||||||
|
|
||||||
do_qemu:
|
do_qemu:
|
||||||
cd qemu && \
|
cd qemu && \
|
||||||
bash ./configure --target-list=x86_64-softmmu,i386-softmmu,aarch64-softmmu --prefix="$(CROSS_DIR)" --enable-gtk && \
|
bash ./configure --target-list=x86_64-softmmu,i386-softmmu,aarch64-softmmu \
|
||||||
|
--prefix="$(CROSS_DIR)" \
|
||||||
|
--enable-gtk --disable-tools \
|
||||||
|
--disable-gio --disable-virtfs --disable-vnc \
|
||||||
|
--disable-opengl && \
|
||||||
make -j$(shell nproc) && make install
|
make -j$(shell nproc) && make install
|
||||||
|
|
||||||
do_binutils_64:
|
do_binutils_64:
|
||||||
cd build-binutils64 && \
|
cd build-binutils64 && \
|
||||||
../binutils-gdb/configure --target=x86_64-fennix --prefix="$(CROSS_DIR)" --with-sysroot --enable-shared --disable-werror && \
|
../binutils-gdb/configure --target=x86_64-fennix \
|
||||||
|
--prefix="$(CROSS_DIR)" \
|
||||||
|
--with-sysroot --enable-shared --disable-werror && \
|
||||||
make all -j$(shell nproc) && make install
|
make all -j$(shell nproc) && make install
|
||||||
|
|
||||||
do_gcc_64:
|
do_gcc_64:
|
||||||
cd build-gcc64 && \
|
cd build-gcc64 && \
|
||||||
../gcc/configure --target=x86_64-fennix --prefix="$(CROSS_DIR)" --enable-languages=c,c++ --enable-shared --without-headers && \
|
../gcc/configure --target=x86_64-fennix \
|
||||||
|
--prefix="$(CROSS_DIR)" \
|
||||||
|
--enable-languages=c,c++ --enable-shared --without-headers && \
|
||||||
make all-gcc -j$(shell nproc) && \
|
make all-gcc -j$(shell nproc) && \
|
||||||
make all-target-libgcc -j$(shell nproc) && \
|
make all-target-libgcc -j$(shell nproc) && \
|
||||||
make install-gcc -j$(shell nproc) && \
|
make install-gcc -j$(shell nproc) && \
|
||||||
@ -67,12 +71,16 @@ do_gcc_64:
|
|||||||
|
|
||||||
do_binutils_32:
|
do_binutils_32:
|
||||||
cd build-binutils32 && \
|
cd build-binutils32 && \
|
||||||
../binutils-gdb/configure --target=i386-fennix --prefix="$(CROSS_DIR)" --with-sysroot --enable-shared --disable-werror && \
|
../binutils-gdb/configure --target=i386-fennix \
|
||||||
|
--prefix="$(CROSS_DIR)" \
|
||||||
|
--with-sysroot --enable-shared --disable-werror && \
|
||||||
make all -j$(shell nproc) && make install
|
make all -j$(shell nproc) && make install
|
||||||
|
|
||||||
do_gcc_32:
|
do_gcc_32:
|
||||||
cd build-gcc32 && \
|
cd build-gcc32 && \
|
||||||
../gcc/configure --target=i386-fennix --prefix="$(CROSS_DIR)" --enable-languages=c,c++ --enable-shared --without-headers && \
|
../gcc/configure --target=i386-fennix \
|
||||||
|
--prefix="$(CROSS_DIR)" \
|
||||||
|
--enable-languages=c,c++ --enable-shared --without-headers && \
|
||||||
make all-gcc -j$(shell nproc) && \
|
make all-gcc -j$(shell nproc) && \
|
||||||
make all-target-libgcc -j$(shell nproc) && \
|
make all-target-libgcc -j$(shell nproc) && \
|
||||||
make install-gcc -j$(shell nproc) && \
|
make install-gcc -j$(shell nproc) && \
|
||||||
|
@ -7,7 +7,7 @@ menuentry "Fennix" {
|
|||||||
load_video
|
load_video
|
||||||
clear
|
clear
|
||||||
echo "Loading kernel"
|
echo "Loading kernel"
|
||||||
multiboot2 /kernel.fsys --ioapicirq=1 --linux=false --ioc=true --udl=true --simd=true
|
multiboot2 /fennix.elf --ioapicirq=1 --ioc=true --udl=true --simd=true
|
||||||
echo "Loading initrd"
|
echo "Loading initrd"
|
||||||
module2 /initrd.tar.gz initrd
|
module2 /initrd.tar.gz initrd
|
||||||
echo "Booting..."
|
echo "Booting..."
|
||||||
|
@ -5,8 +5,8 @@ INTERFACE_BRANDING=Fennix
|
|||||||
# DO NOT EDIT!
|
# DO NOT EDIT!
|
||||||
COMMENT=Boot Fennix using limine protocol
|
COMMENT=Boot Fennix using limine protocol
|
||||||
PROTOCOL=limine
|
PROTOCOL=limine
|
||||||
KERNEL_CMDLINE=--ioapicirq=1 --linux=false --ioc=true --udl=true --simd=true
|
KERNEL_CMDLINE=--ioapicirq=1 --ioc=true --udl=true --simd=true
|
||||||
KERNEL_PATH=boot:///kernel.fsys
|
KERNEL_PATH=boot:///fennix.elf
|
||||||
|
|
||||||
MODULE_PATH=boot:///initrd.tar.gz
|
MODULE_PATH=boot:///initrd.tar.gz
|
||||||
MODULE_CMDLINE=initrd
|
MODULE_CMDLINE=initrd
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
<a class="hdrbtn" href="/fulldoc"><i class="fa-solid fa-book-bookmark"></i> Full Documentation</a>
|
<a class="hdrbtn" href="/fulldoc"><i class="fa-solid fa-book-bookmark"></i> Full Documentation</a>
|
||||||
<a class="hdrbtn" href="/lynx"><i class="fa-solid fa-file-code"></i> Lynx Bootloader</a>
|
<a class="hdrbtn" href="/lynx"><i class="fa-solid fa-file-code"></i> Lynx Bootloader</a>
|
||||||
<a class="hdrbtn" href="/kernel"><i class="fa-solid fa-file-code"></i> Kernel</a>
|
<a class="hdrbtn" href="/kernel"><i class="fa-solid fa-file-code"></i> Kernel</a>
|
||||||
<a class="hdrbtn" href="/modules"><i class="fa-solid fa-file-code"></i> Modules</a>
|
<a class="hdrbtn" href="/drivers"><i class="fa-solid fa-file-code"></i> Drivers</a>
|
||||||
<a class="hdrbtn" href="/userspace"><i class="fa-solid fa-file-code"></i> Userspace</a>
|
<a class="hdrbtn" href="/userspace"><i class="fa-solid fa-file-code"></i> Userspace</a>
|
||||||
<a class="hdrbtn" style="float:right" href="https://github.com/Fennix-Project/Fennix/releases/latest"><i
|
<a class="hdrbtn" style="float:right" href="https://github.com/Fennix-Project/Fennix/releases/latest"><i
|
||||||
class="fa-solid fa-download"></i> Download</a>
|
class="fa-solid fa-download"></i> Download</a>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
User-agent: *
|
User-agent: *
|
||||||
Disallow: /userspace/
|
Disallow: /userspace/
|
||||||
Disallow: /modules/
|
Disallow: /drivers/
|
||||||
Disallow: /kernel/
|
Disallow: /kernel/
|
||||||
Disallow: /lynx/
|
Disallow: /lynx/
|
||||||
Disallow: /fulldoc/
|
Disallow: /fulldoc/
|