Commit Graph

160 Commits

Author SHA1 Message Date
Andrius Štikonas 7ad5f2afac
Free memory of process that exited. 2023-12-31 21:18:01 +00:00
Andrius Štikonas 1cbca175a0
Fix pushing argv onto stack from execve calls. 2023-12-31 20:36:39 +00:00
Andrius Štikonas db2d001395
Simplify argc counting. 2023-12-31 20:05:09 +00:00
Andrius Štikonas ac13be4291
Initial version of sys_fork, sys_execve and sys_wait4.
It is not fully working yet, in particular child programs have broken
initial stack and argv returns garbage.
2023-12-30 23:45:10 +00:00
Andrius Štikonas 4f2a62fa34
Push envp onto a stack of new process. 2023-12-29 21:59:23 +00:00
Andrius Štikonas 1c12f7d869
Add sys_access, sys_chdir and sys_getcwd. 2023-12-29 01:09:00 +00:00
Andrius Štikonas 5385ab3c26
Add sys_unlink. 2023-12-29 00:37:34 +00:00
Andrius Štikonas 9d4a1e2159
Add sys_close. 2023-12-29 00:15:23 +00:00
Andrius Štikonas d9def6dd05
Add sys_mkdir. 2023-12-29 00:06:45 +00:00
Andrius Štikonas 29f38d943a
Just in case make sure to save and restore more registers. 2023-12-28 23:59:12 +00:00
Andrius Štikonas e61e1b16b4 Add sys_brk. 2023-12-28 23:59:04 +00:00
Andrius Štikonas e894942e52 Add sys_lseek. 2023-12-28 23:59:00 +00:00
Andrius Štikonas 572513c916
posix-runner: Add read,write and open syscalls. 2023-12-27 23:10:21 +00:00
Andrius Štikonas ebf61b2e9a Add syscall_table. 2023-12-26 23:57:20 +00:00
Andrius Štikonas ffe3f524a5 Initial version of posix-runner. 2023-12-26 21:30:19 +00:00
Andrius Štikonas 75398b0518
Update M2libc to fix stack alignment issues. 2023-12-24 12:44:08 +00:00
Andrius Štikonas 1407f92220
cc_amd64: fix stack alignment and save non-volatile registers. 2023-12-23 23:09:33 +00:00
Andrius Štikonas 8247a28f78
M0: fix stack alignment and save non-volatile registers. 2023-12-23 17:06:20 +00:00
Andrius Štikonas e871378bcf
catm: fix stack alignment and save non-volatile registers. 2023-12-23 01:12:17 +00:00
Andrius Štikonas c01f86c7c5
hex2: fix stack alignment and save non-volatile registers. 2023-12-22 23:16:51 +00:00
Andrius Štikonas 90d9bc7fb4
hex1: fix stack alignment and save non-volatile registers. 2023-12-22 19:13:27 +00:00
Andrius Štikonas 043f90d61b
Update bootstrap-seeds to those that fix stack alignment. 2023-12-21 22:43:52 +00:00
Andrius Štikonas ddcc53ab44 hex0: optimize stack alignment code. 2023-12-17 17:34:49 +00:00
Andrius Štikonas 78a70d0af8 Fix remaining alignment issues in kaem-optional. 2023-12-17 16:51:13 +00:00
Andrius Štikonas 20c3bfbb99 Further hex0 size reduction and calling convention fixes. 2023-12-16 17:09:51 +00:00
Andrius Štikonas 2e2f608c31 Minor whitespace cleanup. 2023-12-10 23:10:28 +00:00
Andrius Štikonas 4e0c63955d kaem-optional: fix stack alignment and save non-volatile registers. 2023-12-10 19:57:31 +00:00
Andrius Štikonas 4a1f2ba310 Reduce size of hex0 by 3 bytes. 2023-12-09 19:54:44 +00:00
Andrius Štikonas daba916619 hex0: Use $ for unsigned 2-byte constants. 2023-12-09 17:47:35 +00:00
Andrius Štikonas dde77cdb0f Fix stack alignment to 16 bytes and save non-volatile registers. 2023-12-09 17:23:27 +00:00
Andrius Štikonas d290d4101b Also fix clang build flags on amd64/Development to work with newer clang. 2023-12-07 20:43:37 +00:00
Andrius Štikonas 2b8bc1569e Fix development makefile to work with newer versions of clang. 2023-12-06 19:50:58 +00:00
Andrius Štikonas bd13a75dfc Fix typos. 2023-12-06 19:50:40 +00:00
Andrius Štikonas 8ee15ee90e Fix a typo. 2023-01-19 22:55:53 +00:00
Andrius Štikonas 62d0f98d5e Minor update to comments. 2023-01-15 00:03:34 +00:00
Andrius Štikonas 85ece09803 Update M2-Mesoplanet. 2023-01-10 23:36:58 +00:00
Andrius Štikonas 01de00400e Update M2-Planet to fix macros with brackets. 2023-01-09 01:48:15 +00:00
Andrius Štikonas b9feaab627 Update M2libc. 2023-01-02 01:37:08 +00:00
Andrius Štikonas 85f0a81aa5 Update mescc-tools-extra. 2023-01-01 12:50:40 +00:00
Andrius Štikonas a1f0c65143 Mention blood-elf in README. 2022-12-31 22:06:38 +00:00
Andrius Štikonas dcdb221042 mkdir fixes. 2022-12-31 21:00:19 +00:00
Andrius Štikonas 164b8857c4 Add Generate-amd64-answers make target to calculate checksums. 2022-12-31 18:18:54 +00:00
Andrius Štikonas 77f78b2fe5 Add mescc-tools-extra. 2022-12-31 17:20:13 +00:00
Andrius Štikonas 33714ff1dd Update M2libc to pull in pwd for kaem. 2022-12-28 21:49:04 +00:00
Andrius Štikonas 990a2a2acc Fix get_machine. 2022-12-27 22:59:11 +00:00
Andrius Štikonas 52c1b7bb4f Build (still somewhat broken) M2-Mesoplanet and get_machine. 2022-12-26 23:05:50 +00:00
Andrius Štikonas e57d5363a4 Fix a typo. 2022-12-12 23:38:34 +00:00
Andrius Štikonas 5f43609fe9 Add description of bootstrap stages to README. 2022-12-12 23:24:20 +00:00
Andrius Štikonas e4443a731a Add support for spawning processes in kaem. 2022-12-08 21:22:07 +00:00
Andrius Štikonas 378e2a5b36 Also build kaem (though it's not yet functional). 2022-11-26 18:34:44 +00:00