Merge into main the new state of the operating system/kernel #1
							
								
								
									
										10
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								Makefile
									
									
									
									
									
								
							@ -95,17 +95,17 @@ $(BUILD_DIR)/io.o:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/idt.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/idt/idt.cpp -o $(BUILD_DIR)/idt.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/interrupts/idt/idt.cpp -o $(BUILD_DIR)/idt.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/gdtc.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/gdt/gdtc.cpp -o $(BUILD_DIR)/gdtc.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/pic.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/pic/pic.cpp -o $(BUILD_DIR)/pic.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/pic/pic.cpp -o $(BUILD_DIR)/pic.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/string.o:
 | 
			
		||||
	$(CC) -c $(SRC_DIR)/libc/include/string.c  -o $(BUILD_DIR)/string.o $(CFLAGS) -std=gnu99
 | 
			
		||||
	$(CC) -c $(SRC_DIR)/lib/include/string.c  -o $(BUILD_DIR)/string.o $(CFLAGS) -std=gnu99
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/PhysicalMemoryManager.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/memory/PhysicalMemoryManager.cpp  -o $(BUILD_DIR)/PhysicalMemoryManager.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
@ -114,7 +114,7 @@ $(BUILD_DIR)/pci.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/IO/PCI/pci.cpp  -o $(BUILD_DIR)/pci.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/pcidevice.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/pci/pciDevice.cpp  -o $(BUILD_DIR)/pcidevice.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/pci/pciDevice.cpp  -o $(BUILD_DIR)/pcidevice.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/atapiDevice.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/IO/atapi/atapiDevice.cpp  -o $(BUILD_DIR)/atapiDevice.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
@ -127,7 +127,7 @@ $(BUILD_DIR)/rsdp.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/ACPI/rsdp.cpp  -o $(BUILD_DIR)/rsdp.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/pit.o:
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/pit.cpp  -o $(BUILD_DIR)/pit.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
	$(CPP) -c $(SRC_DIR)/kernel/drivers/pit/pit.cpp  -o $(BUILD_DIR)/pit.o $(CFLAGS) -fno-exceptions -fno-rtti
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
$(BUILD_DIR)/keyboard.o:
 | 
			
		||||
 | 
			
		||||
@ -24,7 +24,7 @@ stack_top:
 | 
			
		||||
.include "./source/kernel/gdt/gdt.s"
 | 
			
		||||
.include "./source/kernel/irs_table.s"
 | 
			
		||||
.include "./source/kernel/irq_table.s"
 | 
			
		||||
.include "./source/kernel/idt/idt.s"
 | 
			
		||||
.include "./source/kernel/interrupts/idt/idt.s"
 | 
			
		||||
.include "./source/kernel/memory/paging.s"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
#pragma once 
 | 
			
		||||
#include "bootloader/multiboot.h"
 | 
			
		||||
#include "boot/multiboot.h"
 | 
			
		||||
#define CHECK_FLAG(flags, bit) ((flags) & (1 <<(bit)))
 | 
			
		||||
 | 
			
		||||
#include "tty/kterm.h"
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include "./../../tty/kterm.h"
 | 
			
		||||
#include "../../../libc/include/mem.h"
 | 
			
		||||
#include "../../../lib/include/mem.h"
 | 
			
		||||
struct RSDPTR {
 | 
			
		||||
    char signature[8];
 | 
			
		||||
    uint8_t Checksum ;
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,7 @@
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include "../io.h"
 | 
			
		||||
#include "../../../tty/kterm.h"
 | 
			
		||||
#include "../../../pci/pciDevice.h"
 | 
			
		||||
#include "../../pci/pciDevice.h"
 | 
			
		||||
 | 
			
		||||
// Configuration Space Access Mechanism #1
 | 
			
		||||
#define CONFIG_ADDRESS 0xCF8 // Configuration adress that is to be accessed
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include "../io.h"
 | 
			
		||||
#include "../../../ide/ideCommands.h"
 | 
			
		||||
#include "../../../ide/sampleIDE.definitions.h"
 | 
			
		||||
#include "../../ide/ideCommands.h"
 | 
			
		||||
#include "../../ide/sampleIDE.definitions.h"
 | 
			
		||||
 | 
			
		||||
#include "../../../tty/kterm.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include "../io.h"
 | 
			
		||||
#include "../../../ide/ideCommands.h"
 | 
			
		||||
#include "../../../ide/sampleIDE.definitions.h"
 | 
			
		||||
#include "../../ide/ideCommands.h"
 | 
			
		||||
#include "../../ide/sampleIDE.definitions.h"
 | 
			
		||||
 | 
			
		||||
#include "../../../tty/kterm.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
#include <stdint.h> 
 | 
			
		||||
#include "../pci/pciDevice.h"
 | 
			
		||||
#include "../tty/kterm.h"
 | 
			
		||||
#include "../../tty/kterm.h"
 | 
			
		||||
#include "ideCommands.h"
 | 
			
		||||
#include "sampleIDE.h"
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
#include <stdint.h> 
 | 
			
		||||
#include "../tty/kterm.h"
 | 
			
		||||
#include "../../tty/kterm.h"
 | 
			
		||||
#include "sampleIDE.definitions.h"
 | 
			
		||||
#include "ideCommands.h"
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
#pragma once 
 | 
			
		||||
#include "../drivers/IO/io.h"
 | 
			
		||||
#include "../IO/io.h"
 | 
			
		||||
 | 
			
		||||
#define PIC1		0x20		/* IO base address for master PIC */
 | 
			
		||||
#define PIC2		0xA0		/* IO base address for slave PIC */
 | 
			
		||||
@ -1,5 +1,5 @@
 | 
			
		||||
#include "pit.h"
 | 
			
		||||
#include "tty/kterm.h"
 | 
			
		||||
#include "../../tty/kterm.h"
 | 
			
		||||
uint32_t pit_tick = 0;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#pragma once 
 | 
			
		||||
#include <stdint.h>
 | 
			
		||||
#include "drivers/IO/io.h"
 | 
			
		||||
#include "../IO/io.h"
 | 
			
		||||
#define PIT_DATA_0 0x40
 | 
			
		||||
#define PIT_DATA_1 0x41
 | 
			
		||||
#define PIT_DATA_2 0x42
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
#include "idt.h"
 | 
			
		||||
#include "../pit.h"
 | 
			
		||||
#include "../keyboard/keyboard.h"
 | 
			
		||||
#include "../../drivers/pit/pit.h"
 | 
			
		||||
#include "../../keyboard/keyboard.h"
 | 
			
		||||
 | 
			
		||||
IDT_entry idt_table[256];
 | 
			
		||||
IDT_ptr idt_ptr;
 | 
			
		||||
@ -2,10 +2,10 @@
 | 
			
		||||
 | 
			
		||||
#include "stdint.h"
 | 
			
		||||
#include "stddef.h"
 | 
			
		||||
#include "../drivers/VGA/colors.h"
 | 
			
		||||
#include "../pic/pic.h"
 | 
			
		||||
#include "../../drivers/VGA/colors.h"
 | 
			
		||||
#include "../../drivers/pic/pic.h"
 | 
			
		||||
 | 
			
		||||
#include "../tty/kterm.h"
 | 
			
		||||
#include "../../tty/kterm.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
extern "C" {
 | 
			
		||||
@ -1,14 +1,14 @@
 | 
			
		||||
#pragma once
 | 
			
		||||
extern "C" 
 | 
			
		||||
{
 | 
			
		||||
   #include "../libc/include/string.h" 
 | 
			
		||||
   #include "../lib/include/string.h" 
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#include "drivers/VGA/VBE.h"
 | 
			
		||||
#include "tty/kterm.h"
 | 
			
		||||
 | 
			
		||||
#include "./bootloader/multiboot.h"
 | 
			
		||||
#include "./boot/multiboot.h"
 | 
			
		||||
#include "bootinfo.h"
 | 
			
		||||
 | 
			
		||||
#include "memory/memory.h"
 | 
			
		||||
@ -16,21 +16,21 @@ extern "C"
 | 
			
		||||
#include "bootcheck.h"
 | 
			
		||||
 | 
			
		||||
#include "gdt/gdtc.h"
 | 
			
		||||
#include "idt/idt.h"
 | 
			
		||||
#include "interrupts/idt/idt.h"
 | 
			
		||||
 | 
			
		||||
#include "drivers/IO/io.h"
 | 
			
		||||
#include "time.h"
 | 
			
		||||
#include "pit.h"
 | 
			
		||||
#include "drivers/pit/pit.h"
 | 
			
		||||
 | 
			
		||||
#include "cpu.h"
 | 
			
		||||
#include "serial.h"
 | 
			
		||||
#include "drivers/IO/PCI/pci.h"
 | 
			
		||||
#include "ide/ide.h"
 | 
			
		||||
#include "drivers/ide/ide.h"
 | 
			
		||||
#include "./drivers/IO/ata/ataDevice.h"
 | 
			
		||||
#include "./PartitionTable/MBR/MasterBootRecord.h"
 | 
			
		||||
#include "./filesystems/FAT/BiosParameterBlock.h"
 | 
			
		||||
#include "./filesystems/FAT/ExtendBootRecord.h"
 | 
			
		||||
#include "./filesystems/FAT/DirectoryEntry.h"
 | 
			
		||||
#include "./filesystem/FAT/BiosParameterBlock.h"
 | 
			
		||||
#include "./filesystem/FAT/ExtendBootRecord.h"
 | 
			
		||||
#include "./filesystem/FAT/DirectoryEntry.h"
 | 
			
		||||
#include "drivers/ACPI/rsdp.h"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -3,9 +3,9 @@
 | 
			
		||||
#include <stddef.h>
 | 
			
		||||
 | 
			
		||||
#include "memoryinfo.h"
 | 
			
		||||
#include "../bootloader/multiboot.h"
 | 
			
		||||
#include "../boot/multiboot.h"
 | 
			
		||||
#include "../tty/kterm.h"
 | 
			
		||||
#include "../../libc/include/mem.h"
 | 
			
		||||
#include "../../lib/include/mem.h"
 | 
			
		||||
#include "../kstructures/bitmap.h"
 | 
			
		||||
 | 
			
		||||
#define BLOCK_SIZE 4092
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
#pragma once 
 | 
			
		||||
#include "../tty/kterm.h"
 | 
			
		||||
#include "../time.h"
 | 
			
		||||
#include "../pit.h"
 | 
			
		||||
#include "../drivers/pit/pit.h"
 | 
			
		||||
#include "../keyboard/keyboard.h"
 | 
			
		||||
#include "../memory/memory.h"
 | 
			
		||||
#include "../bootinfo.h"
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
#include "../drivers/IO/io.h"
 | 
			
		||||
 | 
			
		||||
extern "C"{
 | 
			
		||||
    #include "./../../libc/include/string.h"
 | 
			
		||||
    #include "./../../lib/include/string.h"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void kterm_init();
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user