| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | [mubios] Derive the E820 map from the CMOS memory size | Richard Qin | 19 hours | 3 | -2/+66 |
| | | | | | | | | | | | The E820 map ended the usable region at a hardcoded 0x08000000, so a guest with more RAM had the extra memory reported as reserved and ran out of memory during initramfs unpacking. Add cmos_read8() and size the extended memory entry from CMOS registers 0x34 and 0x35, falling back to the 16 MiB units in 0x30 and 0x31 and then to the previous 128 MiB end when neither is programmed. | ||||
| * | [mubios] Initialize the 8042 keyboard controller | Richard Qin | 19 hours | 5 | -30/+150 |
| | | | | | | | | | | | | | | | | POST only unmasked IRQ1 in the PIC and never configured the 8042 itself, so the keyboard stayed in its post-reset disabled state: the clock was inhibited and no scan code ever reached the output buffer. IRQ1 never fired, the BDA keyboard buffer stayed empty, and GRUB polling INT 16h AH=01h never saw a key. Add kbd_init() to disable both ports, drain the output buffer, clear the clock inhibit bits in the command byte, enable the keyboard and auxiliary IRQs and select set 1 translation, then enable scanning with 0xF4. The IRQ1 handler now checks the status register for a pending output byte before reading the data port and drops auxiliary port bytes. The set 2 break prefix tracking is gone because translation is enabled. | ||||
| * | [mubios] Initialize VGA mode and serial BIOS services | Richard Qin | 40 hours | 9 | -2/+205 |
| | | |||||
| * | [mubios] Add CHS disk services and multi-sector PIO reads | Richard Qin | 40 hours | 3 | -23/+167 |
| | | |||||
| * | [mubios] Add EDD parameters and normalize PS/2 input | Richard Qin | 41 hours | 5 | -4/+129 |
| | | |||||
| * | [mubios] Handle IRQ7 and mask unused IOAPIC inputs | Richard Qin | 43 hours | 3 | -2/+50 |
| | | |||||
| * | [mubios] Fixed BDA Offset and IRQ1 Save Order | Richard Qin | 2 days | 3 | -9/+17 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Store and Restore DS in irq0_entry | Richard Qin | 2 days | 1 | -0/+2 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add cursor and char service | Richard Qin | 2 days | 1 | -3/+55 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Fixed wrong mask | Richard Qin | 2 days | 2 | -3/+12 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement INT 16h Keyboard Service | Richard Qin | 2 days | 6 | -0/+183 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement INT 15h E820h | Richard Qin | 2 days | 5 | -0/+92 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Extend registers from 16-bit to 32-bit | Richard Qin | 2 days | 5 | -43/+30 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Multi-sector INT 13h AH=42h | Richard Qin | 2 days | 4 | -7/+30 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add switching and return paths between real-mode interrupts and ↵ | Richard Qin | 2 days | 2 | -283/+166 |
| | | | | | | | protected-mode C services. Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add Interrupt Dispatch Service | Richard Qin | 2 days | 2 | -0/+44 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add C implementation of INT 10h | Richard Qin | 2 days | 2 | -0/+93 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add services INT 13h | Richard Qin | 2 days | 1 | -0/+104 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Establish the BIOS interrupt register context | Richard Qin | 2 days | 1 | -0/+41 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement INT 13h AH=42h | Richard Qin | 3 days | 1 | -1/+148 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement INT 13h AH=41h | Richard Qin | 3 days | 2 | -0/+38 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement a minimal INT 10h AH=0Eh | Richard Qin | 3 days | 2 | -0/+94 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Transfer control from the BIOS to the MBR, which has been loaded at ↵ | Richard Qin | 3 days | 1 | -0/+18 |
| | | | | | | | 0x7C00. Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add ATA | Richard Qin | 3 days | 4 | -1/+115 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] fixed memory address | Richard Qin | 3 days | 1 | -1/+1 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Have IRQ0 maintain the BIOS clock, and implement INT 1Ah AH=00h. | Richard Qin | 3 days | 3 | -0/+82 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Enable IRQ0 | Richard Qin | 3 days | 7 | -19/+112 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Transition from protected mode back to real mode | Richard Qin | 3 days | 1 | -0/+74 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Create 16-bit entry points for IRQ0/IRQ1 and install the IVT vectors. | Richard Qin | 3 days | 5 | -1/+92 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Fix the link order for the 16-bit entries | Richard Qin | 3 days | 3 | -3/+11 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement the PIC and PIT. | Richard Qin | 3 days | 4 | -1/+117 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement the COM1 serial port driver and POST output. | Richard Qin | 3 days | 4 | -0/+151 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add Clangd Support | Richard Qin | 3 days | 2 | -1/+5 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Initialize IVT, BDA and EBDA. | Richard Qin | 3 days | 4 | -2/+116 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add Clang Format based on GNU style | Richard Qin | 3 days | 2 | -1/+5 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Add CFLAGS to close Exception Unwinding and Stack Unwinding Mechanism | Richard Qin | 3 days | 1 | -1/+2 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Building a 32-bit C entry in protected mode | Richard Qin | 3 days | 4 | -0/+58 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Implement the switch from 16-bit to 32-bit protected mode | Richard Qin | 3 days | 2 | -0/+112 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] Write mubios reset entry point | Richard Qin | 3 days | 2 | -1/+63 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [mubios] setup Makefile and linker script | Richard Qin | 3 days | 3 | -0/+153 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [Tests] Remove LLVM tests | Richard Qin | 3 days | 464 | -119059/+0 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [Doc] Move README to plain text | Richard Qin | 4 days | 1 | -0/+0 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | [Doc] Update README | Richard Qin | 4 days | 1 | -34/+26 |
| | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| * | Merge remote-tracking branch 'rv64cpu-import/master' | Richard Qin | 4 days | 40 | -0/+11937 |
| |\ | |||||
| | * | chore: update ignore rules | Richard Qin | 4 days | 1 | -17/+41 |
| | | | |||||
| | * | build: reorganize CMake configuration | Richard Qin | 4 days | 2 | -42/+55 |
| | | | |||||
| | * | refactor: update README | Richard Qin | 4 days | 1 | -139/+5 |
| | | | | | | | | | Signed-off-by: Richard Qin <richard.qin.x@gmail.com> | ||||
| | * | refactor: rename documents | Richard Qin | 4 days | 2 | -0/+0 |
| | | | |||||
| | * | chore: remove obsolete tooling | Richard Qin | 4 days | 3 | -503/+0 |
| | | | |||||
| | * | refactor: reset software and test directories | Richard Qin | 4 days | 27 | -6731/+0 |
| | | | |||||
