50 ancestors of 858eba7607ec397d
2019-08-24
| ||
00:20 | improve comments check-in: 858eba7607 user: lexi tags: trunk | |
2019-08-22
| ||
20:04 | fix another typo check-in: 8618103a4e user: lexi tags: trunk | |
20:04 | fix typo check-in: 957b5fa848 user: lexi tags: trunk | |
08:52 | add tests for linear allocators, fix dumb bug in kmheapf() that caused it to return an error on success check-in: f37ee769c9 user: lexi tags: trunk | |
08:45 | check in missing files check-in: 269baab90a user: lexi tags: trunk | |
08:44 | add kmlini() and kmlina() functions; restructure allocation functions to work more reasonably (returning a tuple struct instead of making a user pass in a void**); update docs accordingly check-in: acb4a9944e user: lexi tags: trunk | |
04:31 | finish moving heap allocation/free functions to the posix syscall apparatus and deprecate the direct assembly implementations of platform_mmap; update the kmem docs to match new function signatures (and remove typos) check-in: 709ffb094d user: lexi tags: trunk | |
02:52 | removed sneaky segfault in x86-64 syscall fn where %r8 (the register that contains the pointer to the syscall arguments from the C syscall wrapper, which need to be copied into the correct registers before the kernel is invoked) gets overwritten if the syscall valency > 5, because of overlapping ccall and syscall ABI argument registers - r8 is clobbered by argument 5 and any further attempts to use it as a ptr segfault at best. also modified the report function so that it immediate cancels compilation if a sub-process reports failure. changed allocator function signatures so they can return a condition code if the kernel reports an error; updated example code so it compiles and runs without fault. check-in: e50a476efe user: lexi tags: trunk | |
01:37 | add first iteration of knum header check-in: 5560c2725b user: lexi tags: trunk | |
00:03 | insert explicit cast to hopefully silence compiler warnings on some systems check-in: 7c202a8b17 user: lexi tags: trunk | |
2019-08-21
| ||
23:35 | replace `.` with `source` in shell scripts for compatibility; change `sh` shebangs to use bash instead check-in: 34059b4bf6 user: lexi tags: trunk | |
06:43 | create dist folder for OS-specific supporting build files check-in: 49b6e9c7f6 user: lexi tags: trunk | |
06:00 | move modules to a subdirectory in order to keep the directory tree organized and make room for OS-specific build files check-in: 14172a910a user: lexi tags: trunk | |
04:50 | Add initial build setup for Nix check-in: a26e579866 user: glow tags: trunk | |
04:24 | modify build system to replace extremely fragile error code generation mechanism check-in: d77ef26adf user: lexi tags: trunk | |
03:44 | make crt behave as a C runtime launcher should; comment code thoroughly check-in: f0f16493ca user: lexi tags: trunk | |
03:10 | add assembly output flag to build.sh check-in: 06e32bd3b4 user: lexi tags: trunk | |
01:58 | enable debugging and add -ffreestanding to gcc cmd line to squash attempts to "optimize" functions by converting them to libc calls, e.g. turning kmzero() calls into memset() calls check-in: 49bf71fb47 user: lexi tags: trunk | |
01:20 | rename $out build var to $to for nixos compat; refactor announce command to choose a color automatically instead of forcing it to be specified on every command line check-in: b590aba21d user: lexi tags: trunk | |
00:28 | Switch to using command -v to check for commands instead of which check-in: fd95e5bc93 user: glow tags: trunk | |
00:16 | switch ansi "bold off" code to "reset" for terminals that interpret "bold off" as "double underline"; remove (incorrect) test code from kiosend check-in: cef83f0167 user: lexi tags: trunk | |
2019-08-20
| ||
22:54 | reorganize posix assembly code check-in: f85e6a07dd user: lexi tags: trunk | |
04:04 | improve syscall collection mechanism check-in: 9dd8bab2ac user: lexi tags: trunk | |
03:04 | address case where syscall numbers in header derive from deeper includes check-in: 09a1767049 user: lexi tags: trunk | |
02:03 | partially unfuck x86-32, correct major error in syscall ABI check-in: f9bf0d662b user: lexi tags: trunk | |
2019-08-19
| ||
23:57 | add detection loop for syscall headers check-in: c7732c41c9 user: lexi tags: trunk | |
22:40 | add documentation compilation check-in: 8d6d792515 user: lexi tags: trunk | |
05:42 | switch over to new build mechanism and formally deprecate makefiles check-in: 34c625a47b user: lexi tags: trunk | |
04:51 | begin move away from legacy build system check-in: 26c340d29e user: lexi tags: trunk | |
02:18 | clean out legacy code check-in: 724bbbbe91 user: lexi tags: trunk | |
02:13 | add missing script check-in: a6aed292a5 user: lexi tags: trunk | |
02:04 | add makerule, add include mode to typesize check-in: 8b84a67d85 user: lexi tags: trunk | |
01:46 | updates, begin putting together error-handling mechanism check-in: b5f6f19923 user: lexi tags: trunk | |
2019-08-18
| ||
18:29 | add error reporting to kiosend() check-in: b2f129d7b9 user: lexi tags: trunk | |
17:56 | revamp arch/ makefile, add generic syscall fn on posix, rewrite kiosend() to use k_platform_syscall instead of k_platform_write check-in: 37b0cfaa06 user: lexi tags: trunk | |
13:42 | add functions, generate C syscall table check-in: a8d93823f1 user: lexi tags: trunk | |
11:34 | add memory functions check-in: 5393623a84 user: lexi tags: trunk | |
10:20 | fix kmheapa() and add kmheapf() check-in: 5279674525 user: lexi tags: trunk | |
2019-07-27
| ||
05:28 | port header macro files to m4; delete gpp infra; fix glaring syntax errors in kcore/type.h check-in: 0c20d256a6 user: lexi tags: trunk | |
03:59 | fix typo check-in: 85bec55157 user: lexi tags: trunk | |
03:55 | add docs/manifesto for kfile; add initial kfile headers and function prototypes; update headers to include c++ extern guards so libk functions can be used from c++ check-in: 926d05a4ce user: lexi tags: trunk | |
2019-07-26
| ||
21:56 | add kmath module stub check-in: 85a8c60bd2 user: lexi tags: trunk | |
10:52 | update kcore docs, fix bad type names and dumb logic check-in: 175dc46a91 user: lexi tags: trunk | |
09:51 | major update. fix ridiculous old type size determination mechanism. mmap is still broken and i'm not sure why; the syscall does not appear to be going through correctly - see posix_mmap, kmheapa, and kcore/testbin.exe.fn check-in: 6479e060a3 user: lexi tags: trunk | |
2019-06-29
| ||
09:31 | add a bunch of code, port the header mechanism to gpp; add a fuckton of definitions and compatibility header code; notably, add core function kstop and x86.lin.{32,64} impl. update docs accordingly check-in: e794c5edef user: lexi tags: trunk | |
2019-06-28
| ||
04:52 | fix stupid bullshit that was including boot.o in libk.a which already HAS the runtime shit ohmyGOD check-in: de8e1eb5d2 user: lexi tags: trunk | |
04:48 | add Kmsz macro check-in: 51af496851 user: lexi tags: trunk | |
04:35 | fix useless params check-in: f5e894f1c4 user: lexi tags: trunk | |
04:32 | restructure file naming conventions and conclusively fix longstanding architectural build system problems with loads and loads of variables and a shit ton of function calls check-in: d27f92e3b7 user: lexi tags: trunk | |
01:59 | add {,un}install rule check-in: 2ed2a90fe5 user: lexi tags: trunk | |
2019-06-27
| ||
22:14 | fixes for shared building check-in: ec9b2b74b3 user: lexi tags: trunk | |