diff options
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..725f438 --- /dev/null +++ b/src/main.c @@ -0,0 +1,45 @@ + +#define KERNEL + +#include "vga.h" +#include "interrupt.h" +#include "string.h" + +extern void *gdt; + +const char *pope = +"The pope, also known as the supreme pontiff (Pontifex maximus) or the Roman \n" +"pontiff (Romanus Pontifex), is the bishop of Rome, chief pastor of the \n" +"worldwide Catholic Church,[4] and head of state or sovereign of the Vatican \n" +"City State.[5] The primacy of the bishop of Rome is largely derived from his \n" +"role as the apostolic successor to Saint Peter, to whom primacy was conferred \n" +"by Jesus, giving him the Keys of Heaven and the powers of \"binding and \n" +"loosing\", naming him as the \"rock\" upon which the church would be built. \n" +"Since 1929, the pope has official residence in the Apostolic Palace in the \n" +"Vatican City, a city-state enclaved within Rome, Italy.[6] The current pope is \n" +"Francis, who was elected on 13 March 2013, succeeding Benedict XVI.[7] \n" +"While his office is called the papacy, the jurisdiction of the episcopal see is\n" +"called the Holy See.[8] It is the Holy See that is the sovereign entity by \n" +"international law headquartered in the distinctively independent Vatican City \n" +"State, established by the Lateran Treaty in 1929 between Italy and the Holy See\n" +"to ensure its temporal, diplomatic, and spiritual independence. The Holy See is\n" +"recognized by its adherence at various levels to international organization and\n" +"by means of its diplomatic relations and political accords with many \n" +"independent states.\n"; + +void kernel_main(void) { + vsetcolor(vga_color(vga_black, vga_white)); + vclear(); + interrupt_init(); + start_interrupts(); + + vprint(" _ _ \n"); + vprint(" ___(_) |_ _ __ ___ _ __ ___ ___ ___ \n"); + vprint(" / __| | __| '__/ _ \\| '_ \\/ __| / _ \\/ __|\n"); + vprint("| (__| | |_| | | (_) | | | \\__ \\ | (_) \\__ \n"); + vprint(" \\___|_|\\__|_| \\___/|_| |_|___/ \\___/|___/\n"); + + vprint(pope); + + while (1) asm("hlt"); +} |