98 Commits

Author SHA1 Message Date
Alexander Myltsev
57704ff8dd Rule for ejudge.sh; fix declaration of video_memory. 2023-01-14 12:12:26 +04:00
Alexander Myltsev
6e5222e2e3 Initial commit 2023-01-13 13:07:06 +04:00
Alexander Myltsev
7bf039da8b Improve prompting. 2022-12-14 17:17:27 +03:00
Alexander Myltsev
c3992d8db5 Add user/div0. 2022-12-14 17:10:34 +03:00
Alexander Myltsev
a6598886f0 Add two syscalls. 2022-12-14 17:10:34 +03:00
Alexander Myltsev
069625a6e0 Enable int 0x84 from userspace. 2022-12-14 16:54:47 +03:00
Alexander Myltsev
5f3cbb988d Fix TSS init. 2022-12-14 16:54:47 +03:00
Alexander Myltsev
dd9f5786c2 Run user process. 2022-12-14 16:54:36 +03:00
Alexander Myltsev
529ba03e50 Add lib/mem.*. 2022-12-13 19:12:31 +03:00
Alexander Myltsev
b0c53f6c83 Move string.[ch] to lib/. 2022-12-13 19:06:51 +03:00
Alexander Myltsev
507d47f0b7 Fix Linux build. 2022-12-13 15:33:10 +00:00
Alexander Myltsev
caf78f3c9f Use __builtin_unreachable. 2022-12-13 01:25:27 +03:00
Alexander Myltsev
781029e00a Support the "halt" command. 2022-12-13 01:20:42 +03:00
Alexander Myltsev
5c804fa301 crt.c: extract _exit. 2022-12-13 00:51:05 +03:00
Alexander Myltsev
babf3897f4 Add fs.c. 2022-12-13 00:50:28 +03:00
Alexander Myltsev
8cafc15116
README.md: quickstart note. 2022-12-12 19:13:49 +03:00
Alexander Myltsev
af760c928c Add setup.sh. 2022-12-12 19:07:48 +03:00
Alexander Myltsev
f79a0a1cd7 Unified debug-boot*. 2022-11-30 18:13:16 +03:00
Alexander Myltsev
e6dc668a3f Disable -Os; reformat ata.c. 2022-11-30 15:06:33 +00:00
Alexander Myltsev
f564a042d8 Better ELF header parsing. 2022-11-25 10:42:07 +00:00
Alexander Myltsev
1d4edf4e0c Amend CFLAGS. 2022-11-25 12:58:13 +03:00
Alexander Myltsev
6ddcf19a06 GDB var. 2022-11-25 09:57:00 +00:00
Alexander Myltsev
2e56f726c3 Make it run on Linux. 2022-11-25 09:18:38 +00:00
Alexander Myltsev
7a2cc02ba8 Setup TSS. 2022-11-22 22:40:10 +03:00
Alexander Myltsev
1e326bddc1 Use xv6 macros for gdt init. 2022-11-22 21:43:13 +03:00
Alexander Myltsev
fb88c62f67 Install new GDT in C code. 2022-11-22 21:24:49 +03:00
Alexander Myltsev
f6bbebbee3 Add user/. 2022-11-21 01:50:02 +03:00
Alexander Myltsev
c40e007d8a Add .gitignore. 2022-11-21 01:07:39 +03:00
Alexander Myltsev
48eaa5c94f Give credit to code sources. 2022-11-21 01:07:39 +03:00
Alexander Myltsev
bdfcf429db Copy UART driver from xv6. 2022-11-21 01:07:39 +03:00
Alexander Myltsev
2ebc32c21c Add keyboard driver. 2022-11-21 00:16:28 +03:00
Alexander Myltsev
250372de4b Fix trap frame layout. 2022-11-21 00:05:59 +03:00
Alexander Myltsev
e4fcd27e31 Make .data empty. 2022-11-20 23:40:45 +03:00
Alexander Myltsev
38d384175c Attempt to fix bootloader. 2022-11-20 22:17:13 +03:00
Alexander Myltsev
b8604932eb Load kernel with a .data segment. 2022-11-20 19:48:55 +03:00
Alexander Myltsev
f860ec1ef0 Load IDT. 2022-11-20 18:59:53 +03:00
Alexander Myltsev
f29ddf75d4 Move vga.* to drivers/. 2022-11-20 16:06:32 +03:00
Alexander Myltsev
e40bde036d Enable A20. 2022-11-19 22:02:37 +03:00
Alexander Myltsev
7e678618d1 Add fs.h. 2022-11-18 23:02:32 +03:00
Alexander Myltsev
24e807423c Fix binary architectures. 2022-11-18 19:27:04 +03:00
Alexander Myltsev
8a8fb95965 Enable debug info. 2022-11-18 18:45:26 +03:00
Alexander Myltsev
3acb397549 Use ELF kernel image. 2022-11-18 17:08:31 +03:00
Alexander Myltsev
e31e56f8f9 Steal ata driver. 2022-11-17 22:57:04 +03:00
Alexander Myltsev
0be6fbed9d Scrolling support. 2022-11-14 01:01:22 +03:00
Alexander Myltsev
d95ab832c3 Add vga_print_string. 2022-11-14 00:23:42 +03:00
Alexander Myltsev
dbaad4cf88 Add dummy kernel. 2022-09-21 18:25:06 +03:00
Alexander Myltsev
1cc3169cd0 Add targets "debug" and "clean". 2022-09-21 17:37:27 +03:00
Alexander Myltsev
298d1be60c Initial commit 2022-09-21 16:53:45 +03:00