Commit Graph

116 Commits

Author SHA1 Message Date
2369a2338a Register a dependency 2018-04-08 00:21:50 +02:00
3369ba4ac6 Correct the entrypoint for 32-bit kernels 2018-04-07 07:26:55 +02:00
27ae6780e0 Really try to locate the entrypoint for 64-bit kernels 2018-04-07 07:25:55 +02:00
b9ff984718 Look harder for the kernel's entrypoint 2018-04-07 07:13:06 +02:00
0aa13f90b3 Correct setting the size of the GDT descriptor 2018-04-07 06:21:58 +02:00
e160aa08be Print the amount of memory available 2018-04-07 06:08:30 +02:00
14a418a3a2 Make the .bss section bigger for the i386 loader 2018-04-07 05:54:00 +02:00
fdd310cb0c Attempt to jump into 32-bit kernels 2018-04-07 05:40:21 +02:00
ec663f4669 Allow booting 64-bit kernels 2018-04-07 05:05:15 +02:00
e3859505d0 Setup the GDT on i386 2018-04-07 05:00:34 +02:00
2912fe790e Pass the Multiboot information on to the kernel 2018-04-07 03:14:42 +02:00
a44261a91c Code cleanup 2018-04-07 03:14:28 +02:00
f2c140dc41 Make better use of <stdio.h> 2018-04-06 00:58:42 +02:00
524ae76303 Avoid some compilation warnings 2018-04-06 00:56:43 +02:00
d0a4284250 Import printf(3) into libuKernel 2018-04-06 00:18:16 +02:00
41ecca190c Do not mention the red zone in 32-bit mode 2018-04-05 22:45:10 +02:00
479f4258c8 Fix linking the userland kernel 2018-04-05 22:45:00 +02:00
65614789e0 Fix write(2) on amd64 2018-04-05 21:29:58 +02:00
bae76e2a62 Bring the 64-bit kernel closer to reality 2018-04-05 20:20:13 +02:00
f6d7587066 Generate a smaller version of libuKernel for the loader
This will also help build the 64-bit version of the kernel.
2018-04-05 19:45:23 +02:00
5084948028 Obtain the entrypoint for the kernel 2018-04-05 19:30:25 +02:00
e0c575856b Register the u{Kernel,Loader}.bin targets 2018-04-05 04:39:32 +02:00
e94b1124da Remove the multiboot header for the 64-bit kernel 2018-04-05 04:41:36 +02:00
a34543e1df Fix the build 2018-04-05 04:40:55 +02:00
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