Commit Graph

86 Commits

Author SHA1 Message Date
Drew Galbraith e0bf7a9a1c [Mammoth] Add a call for listing a directory. 2023-11-26 14:48:20 -08:00
Drew Galbraith 134185117d [Teton] Handle Tab and Backspace. 2023-11-26 13:21:04 -08:00
Drew Galbraith f01b447af4 [Mammoth] Add keycodes for all non-fn keys. 2023-11-26 12:12:27 -08:00
Drew Galbraith a83893d110 [Mammoth] Add keycodes for most symbol scancodes and shift. 2023-11-26 11:48:30 -08:00
Drew Galbraith 2bc64b045c [Mammoth] Add a keyboard library that translates scancode to keycodes. 2023-11-26 11:21:56 -08:00
Drew Galbraith 1b7d2b9085 [Teton/Voyageurs] Subscribe to scancodes in teton and print them to screen.
Right now there appears to be an error with the font so that the
proper character is received but we write an incorect character to the
screen (off by one?).
2023-11-25 19:48:06 -08:00
Drew Galbraith 8365d47cbe [Voyageurs] Add a basic ps/2 keyboard driver. 2023-11-25 13:08:30 -08:00
Drew Galbraith 7151a509ee [Mammoth] clean up check crash (we log the error code in the kernel. 2023-11-25 13:07:59 -08:00
Drew Galbraith 8e4cd1562f [Mammoth] Merge freed slices in buddy allocator. 2023-11-24 14:10:55 -08:00
Drew Galbraith 7715a5898b [Mammoth] Naively free buddy allocated blocks.
We don't yet attempt to merge them with nearby blocks.
Currently this reduces the number of 2 page blocks we allocate down from
40 to 29.
2023-11-24 09:01:25 -08:00
Drew Galbraith 0915cf45dc Remove the basically-empty C library for now. 2023-11-24 08:48:16 -08:00
Drew Galbraith cbeb736e8c [Mammoth] Write a custom buddy allocator to replace libc malloc. 2023-11-23 18:55:02 -08:00
Drew Galbraith d44be91099 [Zion] Add an argument to memory align a mapping. 2023-11-23 18:52:28 -08:00
Drew Galbraith 8ceab2ad23 [Yellowstone] Use the file api to load the init file. 2023-11-22 16:58:13 -08:00
Drew Galbraith 86ce0a68a3 [Mammoth/Teton] Add an OpenFile interface and use it to load a font. 2023-11-22 16:42:42 -08:00
Drew Galbraith 8d730c67c1 [Mammoth] Move most classes to the mmth namespace. 2023-11-22 14:59:41 -08:00
Drew Galbraith 5f8d577948 [Mammoth] Move remaining classes to a shared folder. 2023-11-22 14:39:27 -08:00
Drew Galbraith c42fb858ba [Mammoth] Move thread and process to the proc/ folder 2023-11-22 14:10:10 -08:00
Drew Galbraith 99a75a4a76 [Mammoth] Move request/response context to ipc/ folder. 2023-11-22 13:56:40 -08:00
Drew Galbraith f1cbfd18b7 [Mammoth] Move Mutex and Semaphore to a separate folder. 2023-11-22 13:45:04 -08:00
Drew Galbraith ad5b55bf37 [Mammoth] Move ipc calls to separate folder mammoth. 2023-11-22 13:41:14 -08:00
Drew Galbraith 4c2492e985 [Mammoth] Add a user-space semaphore object. 2023-11-22 10:55:40 -08:00
Drew Galbraith 0f2d6d7cc8 [Mammoth] Load non aligned ELF program sections properly.
Previously we would write into a memory object for an offset address but
when it would be mapped into the address space it would be page aligned.
2023-11-19 22:52:32 -08:00
Drew Galbraith 344e84c313 [Mammoth] Get rid of last uses of MappedMemoryRegion. 2023-11-19 20:48:23 -08:00
Drew Galbraith d41a565721 [Mammoth] Add an OwnedMemoryRegion for ContiguousPhysical. 2023-11-19 20:42:38 -08:00
Drew Galbraith deb2e708cd [Mammoth] Add a helper method for duplicating memory capabilities. 2023-11-19 20:35:55 -08:00
Drew Galbraith 8e827a5dfb [Mammoth] Move all callers of FromCapability to OwnedMemoryObject. 2023-11-19 20:33:15 -08:00
Drew Galbraith ced89834de [Mammoth] Unmap an OwnedMemoryObject when it is deleted. 2023-11-19 19:03:20 -08:00
Drew Galbraith 3e9923f227 [Mammoth] Add an owned memory capability that cleans itself up. 2023-11-19 17:54:28 -08:00
Drew Galbraith 29fa8045af [Mammoth] Fix accidental fall through on mammoth init switch. 2023-11-19 17:30:39 -08:00
Drew Galbraith a3defbba53 [Mammoth] Fix formatting in init debug message. 2023-11-15 16:20:56 -08:00
Drew Galbraith fa6a5949b2 [Zion] Pass the framebuffer info to yellowstone init process. 2023-11-09 11:20:41 -08:00
Drew Galbraith 601f29c324 [Glacier] Add a specific VariableStringBuilder for StrFormat. 2023-11-09 08:52:30 -08:00
Drew Galbraith 26b61db021 Move userspace to a templated StrFormat. 2023-11-03 02:48:21 -07:00
Drew Galbraith f31652b981 Add a way to restrict permissions on cap duplication. 2023-11-02 22:12:55 -07:00
Drew Galbraith e66706d381 [Glacier] Convert ErrorCode into an Enum. 2023-11-02 21:55:12 -07:00
Drew Galbraith 6cb0041253 [Mammoth] Create userspace mutex capability. 2023-10-25 19:07:36 -07:00
Drew Galbraith b516087922 [Zion] Add the ability to pass capabilities via endpoint call. 2023-10-24 23:32:05 -07:00
Drew Galbraith 2b27af5814 [Yellowstone] Move to yunq definition for yellowstone server. 2023-10-24 18:24:26 -07:00
Drew Galbraith d45f831b46 [Glacier] Add buffer types for holding bytes and capabilities. 2023-10-24 12:38:11 -07:00
Drew Galbraith 8f84f8c3ca [zion] Remove temp PCI Memory Object create function.
Pass the PCI memory space to the yellowstone init process instead.
2023-08-01 17:13:19 -07:00
Drew Galbraith c70b5b0753 [mammoth] Run EndpointServer in its own thread. 2023-08-01 16:08:34 -07:00
Drew Galbraith caccb08e16 Generalize the EndpointServer to require less boilerplate.
Classes can now inherit from the EndpointServer and just implement the
HandleRequest function.
2023-08-01 15:52:08 -07:00
Drew Galbraith 52b4b273b7 [victoriafalls] Add InodeTable class to cache Inode info 2023-07-06 09:39:17 -07:00
Drew Galbraith c057da88ad [yellowstone] Add registration to yellowstone stub. 2023-07-05 15:01:29 -07:00
Drew Galbraith 16dd675828 [denali] Get Ahci device address from yellowstone. 2023-06-26 17:01:59 -07:00
Drew Galbraith 7f2530bc15 [zion] Rename cmake zion_lib to zion_stub. 2023-06-26 11:57:19 -07:00
Drew Galbraith 380953937f [mammoth] Rename cmake target to remove _lib 2023-06-26 11:56:09 -07:00
Drew Galbraith 90f33f31c5 [mammoth] Move EndpointClient to move-only semantics. 2023-06-26 11:54:36 -07:00
Drew Galbraith 2e89aee5a3 [mammoth] Update EndpointServer to have move-only semantics. 2023-06-26 11:38:17 -07:00