Commit Graph

50 Commits

Author SHA1 Message Date
1c4886153f driver/ps2: remove irq_ from names 2021-11-04 22:31:28 +08:00
98f92a9958 makefile: move pdlibc to extlib, add C++ stub standard headers
It now kind of compiles with x86_64-elf gcc (does not link though)
2021-11-04 20:15:58 +08:00
964893b14a filesystem/fat: WIP 2021-11-04 18:05:19 +08:00
7158c3535e driver/filesystem: add Ioctl() 2021-10-28 23:15:40 +08:00
699c1fc8ae driver/filesystem: filesystem interface
mostly from FUSE (https://github.com/libfuse/libfuse/blob/master/include/fuse.h)
2021-10-28 22:36:23 +08:00
3a8b59c39f kernel, driver/ps2: move decoding from kMain to interrupt handler 2021-10-28 20:18:01 +08:00
94ab9ffb41 driver/input: most of the input code 2021-10-28 18:20:02 +08:00
4da91139a7 graphics: optimize Unifont rendering, remove builtin width info 2021-10-28 16:03:17 +08:00
430a3abf7d driver/ps2: move EnableReporting to the end of mouse init sequence 2021-10-28 16:02:39 +08:00
218e5c2c96 graphics: make SetPixel() an inline instead of a function pointer
graphics_Init() happens before relocation, so the function breaks once the identity mapping is removed (or flagged NX)
2021-10-28 16:00:25 +08:00
b361c6830b graphics: fix invalidated screen not restoring flag 2021-10-28 15:54:05 +08:00
876ed1eba8 graphics: optimize rendering with Invalidate() 2021-10-25 04:39:11 +08:00
f14df89469 util: add stack_Clear 2021-10-23 21:10:04 +08:00
5293cd52ff makefile: remove -std=c99 from .clangd 2021-10-23 20:57:46 +08:00
6bd5e2dbab util: add fixed-size stack 2021-10-23 20:57:29 +08:00
55d3da43a2 graphics: remember last mouse cursor size 2021-10-23 20:56:50 +08:00
e611bcc760 util: trivially implement queue_Push/Pop 2021-10-23 20:15:41 +08:00
5a4f1cc745 util: export queue_FrontByte correctly 2021-10-23 20:11:37 +08:00
69f50aa3e8 runtime: add cppruntime/perm 2021-10-23 19:40:11 +08:00
71377dcc47 driver/block: add base class & ramdisk 2021-10-23 19:39:23 +08:00
a3fe5c5902 memory: add AllocateKernelMapping
This is just quick and dirty, with nothing to free it
2021-10-23 19:38:19 +08:00
ade70d176a makefile: specify C99/C++17 standards in .clangd 2021-10-23 18:37:08 +08:00
c504b5dc31 memory: add all kinds of C++ new/delete operators 2021-10-23 18:36:31 +08:00
78314c25fb driver/ps2: set ps2_Mouse4Bytes instead of assuming it is false 2021-10-23 13:57:45 +08:00
a0c2b8d8fd graphics: render mouse using copying overlay, optimize copying 2021-10-22 00:28:13 +08:00
986b135403 graphics: mention XCursor uses premultiplied alpha 2021-10-21 23:39:49 +08:00
b89617b46a interrupt: load data segment 0 instead of 2 2021-10-14 15:52:38 +08:00
aa11d25fa8 interrupt: load GDT/IDT on the stack
We have to use a separate Assembly function to do that, but maybe with some effort we can make that inline too
2021-10-14 15:51:50 +08:00
ebdc816d82 interrupt: make LoadIDT/GDT() inline 2021-10-14 14:45:57 +08:00
f241551d64 memory: fix InitPaging memory map dump overflow 2021-10-12 20:17:33 +08:00
6a664234a2 driver/ps2: tell if the system has PS/2 mouse, replate Printfs with WriteConsoles 2021-10-12 15:07:50 +08:00
8d53812b36 memory: implememt sbrk() clone for dlmalloc 2021-10-11 23:36:05 +08:00
cd287fe8cb memory: implement kMalloc() to use dlmalloc 2021-10-11 23:35:54 +08:00
947cf0b4aa extlib: add and configure dlmalloc
Get dlmalloc here: ftp://gee.cs.oswego.edu/pub/misc/malloc.c and ftp://gee.cs.oswego.edu/pub/misc/malloc-2.8.6.h
2021-10-11 23:31:23 +08:00
5a7e1863e8 memory: fix paging_map_PageAllocated/2M 2021-10-11 23:23:24 +08:00
ddc08cabaf main: align Buffer to 4K boundary 2021-10-11 23:22:22 +08:00
4b59394238 interrupt: dump all registers and panic on INT<32 2021-10-11 22:52:02 +08:00
6ff7aff718 runtime: increase printf() buffer to 512
Mostly to fit the long panic message by interrupt_Handler, dumping all the registers
2021-10-11 22:50:56 +08:00
103996db2a extlib, memory: remove liballoc and implementation 2021-10-11 21:01:10 +08:00
c3d2cebaaa execformat/pe: test_headers.c support for arbitrary file, disable relocate 2021-10-11 20:48:02 +08:00
b0815a9638 memory: mention map_PagingAllocated zeroes the memory 2021-10-11 20:39:47 +08:00
1fa1a088ab graphics: draw mouse cursor with hotspot 2021-10-10 23:49:50 +08:00
d6ae83b0a8 util: refactor intmin/max to standalone file 2021-10-10 23:45:47 +08:00
dfce649314 graphics, kernel: update cursor pos on kMain hlt hit 2021-10-10 23:20:00 +08:00
def2c3bf7a graphics: refactor Color to a standalone file 2021-10-10 23:18:25 +08:00
abb6a8ea08 graphics: Xcursor load from memory 2021-10-10 23:16:23 +08:00
bb5a8fbfb1 embed: Add default mouse cursor (DMZ-Black) 2021-10-10 23:15:35 +08:00
ec72314963 makefile: add .clangd config 2021-10-10 15:32:55 +08:00
87c86b39a4 makefile: chmod +x for run.cmd 2021-10-10 15:21:59 +08:00
d25da95e1e Initial commit 2021-10-10 14:39:17 +08:00