Commit Graph

92 Commits

Author SHA1 Message Date
e5a3b88d43 Add missing #include 2018-04-05 04:25:07 +02:00
2e65f87140 Provide the correct compilation flags for an amd64 kernel 2018-04-05 04:24:25 +02:00
0ccbbe5a03 Detect the ELF class of the kernel 2018-04-05 04:09:51 +02:00
0345a05e14 Introduce <elf.h> 2018-04-05 03:51:40 +02:00
00d1287c60 Add more integer types and constants to <stdint.h> 2018-04-05 03:51:15 +02:00
b2f2cf4131 Code cleanup 2018-04-05 03:47:53 +02:00
54ee4ecadd Let the i386 kernel possibly boot on its own 2018-04-05 03:47:17 +02:00
beff2a1007 Report errors when missing the kernel 2018-04-05 03:37:19 +02:00
7562b69ed5 Let the console be located by name 2018-04-05 03:24:14 +02:00
861e03c019 Use puts(9) to print to the console 2018-04-05 03:09:27 +02:00
186cfff0f1 Introduce <stdio.h> 2018-04-05 03:08:56 +02:00
cbe0064bac Avoid potential crashes in the console 2018-04-05 03:08:04 +02:00
54a5481bb7 Also ship "arch/i386/start.S" for the userland kernel 2018-04-05 02:25:55 +02:00
eeff2ec519 Let shipping architecture-dependent files be easier 2018-04-05 02:25:01 +02:00
33d59ed969 Also ship <errno.h> 2018-04-05 02:15:54 +02:00
18db76ca5a Move code around for better isolation 2018-04-05 02:15:30 +02:00
58bb9a5124 Code cleanup 2018-04-05 01:20:57 +02:00
4aac25ed3c Fix the build 2018-04-05 01:19:53 +02:00
ca7fa1fac5 Turn the current kernel into a Multiboot loader 2018-04-05 01:10:08 +02:00
7411da160f Import a blunt version of <sys/types.h> 2018-04-05 01:08:35 +02:00
286d2aba01 Add strlen() to <string.h> 2018-04-05 01:08:07 +02:00
1a8cf835fb Let the default bus be configured 2018-04-04 23:45:40 +02:00
6b9ec3f30b Add strcmp() to <string.h> 2018-04-04 23:45:09 +02:00
75087533be Rework cursor management for the "vga" console 2018-04-04 05:18:58 +02:00
31bd71852a Rename the "stdio" bus to "tty"
This will help disambiguate from the console driver of the same name.
2018-04-04 03:58:20 +02:00
67d8e3d42a Register some dependencies 2018-04-04 03:54:59 +02:00
7416dcb8ac Avoid some compilation warnings 2018-04-04 03:54:49 +02:00
d5a8a6b6ee Match the errno values from NetBSD for the moment 2018-04-04 03:54:06 +02:00
edbfc3602a Consider the address as the file descriptor 2018-04-04 03:46:34 +02:00
cfe8938f38 Also ship the "stdio" bus driver 2018-04-04 03:45:42 +02:00
5e2ba55f86 Also ship the "stdio" console driver 2018-04-04 03:45:20 +02:00
ca9dc4bb53 Use buses for the userland implementation as well 2018-04-04 03:29:15 +02:00
7bb329e41a Migrate the console driver to a class 2018-04-04 02:43:48 +02:00
9bd6b85451 Code cleanup 2018-04-04 02:12:00 +02:00
202e0bb0ce Add a prefix to kernel classes 2018-04-04 02:11:01 +02:00
0ef750cd7e Migrate the bus driver to a class 2018-04-04 02:04:09 +02:00
e938588d31 Always report success from outb() 2018-04-04 02:00:17 +02:00
520baba815 Add support for moving the cursor 2018-04-04 01:47:03 +02:00
d67fe7e2f0 Introduce the "ioport" bus 2018-04-04 01:46:35 +02:00
0daf183bb0 Introduce <stdbool.h> 2018-04-04 01:43:03 +02:00
00360e361d Introduce <errno.h> 2018-04-04 01:37:36 +02:00
c1fa89b2fb Code cleanup 2018-04-02 12:35:36 +02:00
d1d4cc194e Factor common code for syscalls 2018-04-02 12:34:57 +02:00
290855355a Add support for OpenBSD to the user-land kernel 2018-03-29 22:47:19 +02:00
0602e738c2 Register a missing dependency 2018-03-29 22:47:19 +02:00
61dd856d6c Really disable the stack protector on OpenBSD 2018-03-28 06:25:39 +02:00
f46f70cc18 Fix importing crt{begin,end}.o
This may not bring the right versions of the object files though
(missing flags to $(CC)).
2018-03-28 05:52:45 +02:00
80045e1887 Also build the userland kernel with platform.sh 2018-03-28 05:43:41 +02:00
7a4342dfba Determine the {C,LD}FLAGS from a shell script
This should simplify targeting specific architectures for the moment.
2018-03-28 05:20:30 +02:00
5ca17648bf Begin a port on the amd64 architecture
This is still far from working.
2018-03-27 00:11:45 +02:00