bd24d83fa3
Basic virtual boot support(no actual boot protocol though)
...
Quick and dirty impl(map_region_lessthan2mb would probably be a good idea,though would we really need it? all we need is map the kernel and a small part of bootloader)
2025-08-09 12:44:25 +03:00
257b432c61
test commit
2025-03-21 01:25:30 +03:00
rgimad
b805d54896
Do ExitBootServices before jumping to kernel, add comments on how to get switching virt memory work
2025-03-21 01:23:59 +03:00
rgimad
2d7bef624f
correct stupid mistake but still reboot when trying to load cr3
2025-03-02 01:54:43 +03:00
rgimad
e15e608062
jump to physical address of kernel works, kernel prints HI to COM1
2025-02-27 11:19:19 +03:00
rgimad
0c16a5f65a
draft of mapping kernel to VIRT_KERNEL_BASE
2025-02-25 15:33:26 +03:00
rgimad
5ccef2931b
fix typo
2025-02-23 18:39:47 +03:00
rgimad
22da7d2e62
upd codestyle
2025-02-16 21:47:19 +03:00
rgimad
b39aa43d2f
impl phys page region allocation for kernel code and stack, and load them to allocated space. but dont jum to kernel yet, need to set up upper mapping
2025-02-16 21:39:43 +03:00
rgimad
ccdcf7190d
add get_file_size function, get size of kernel file in bytes, get number of pages needed for it
2025-02-14 14:59:11 +03:00
rgimad
4ceda7e1cb
Read header from kernel.bin. Works!
...
fix build.bat error handling
2025-02-11 01:37:58 +03:00
rgimad
4c01ebbf60
update kernel skeleton, started implement kernel loading
2025-02-09 22:35:48 +03:00
rgimad
3fe39de8bf
remove accidently commited binary
2025-02-09 22:35:02 +03:00
rgimad
64700394fa
add kernel test skeleton, todo: load it
2025-02-09 19:55:01 +03:00
rgimad
98b3d652d1
print memmap entries idx's
2025-02-07 19:13:31 +03:00
rgimad
c1aa775d83
print memory map, separate print functions used for uefi
2025-02-05 12:12:45 +03:00
rgimad
de87ec4d9f
seems like now doesnt violate 16 byte alignment of stack, refactoring
2025-02-04 23:48:54 +03:00
rgimad
a8891056d5
print hex without leading zeros, clean code
2025-02-04 15:02:35 +03:00
rgimad
ddc65d92d3
fixed stupid mistake with rcx destroying
...
todo: maybe use uefi_call_wrapper, it also seems like check alignment. Does fstcall chack alignment of stack by 16?
2025-02-02 17:11:50 +03:00
rgimad
2ee47b9cff
disable default watchdog timer
...
tested on real laptop, works
2025-02-01 23:17:26 +03:00
rgimad
42d9f82971
fix previous (forgot to load register)
2025-02-01 21:32:59 +03:00
rgimad
bd4a478855
some refactoring, try show firmware vendor and revision
2025-02-01 21:21:36 +03:00
rgimad
5c18f0cbba
CODESTYLE.md: word wrap 100
2025-02-01 15:56:47 +03:00
rgimad
6ab513e17d
CODESTYLE.md: word wrap
2025-02-01 15:46:23 +03:00
a20ffc6542
fix typo
2025-02-01 11:59:27 +01:00
rgimad
2eb8befaf9
Add codestyle and license
2025-02-01 13:53:09 +03:00
rgimad
ad6ea383d7
Add efi_print_hex
...
Seems its working
2025-01-26 23:35:32 +03:00
rgimad
f7729c3cbf
don't use proc & fastcall when not necessary i.e with my own simple internal functions. But we keep using it i.e when invoking uefi functions cause then follow calling convention
2025-01-26 01:01:31 +03:00
17c2ae5818
README: Set description and link to roadmap
2025-01-25 13:09:52 +01:00
22d66e6739
test notifications
2025-01-25 12:28:37 +01:00
rgimad
1843c9ff69
add efi_putc
2025-01-25 13:15:48 +03:00
rgimad
fa217d4578
some comments
2025-01-21 01:20:34 +03:00
rgimad
3aa3180cd8
add print_string
2025-01-21 01:06:25 +03:00
rgimad
9cf053b56c
add windows build script
2025-01-20 12:04:20 +03:00
rgimad
83551f2aff
add set_text_color, add constants for colors
2025-01-19 23:51:04 +03:00
rgimad
654cdefb7f
rework project structure, base on uefi4kos
2025-01-19 17:24:20 +03:00
rgimad
28d8d0bcfb
update readme, minimal roadmap
2025-01-19 01:15:02 +03:00
rgimad
afbfe4ad08
first commit. UEFI hello world works
2025-01-19 01:05:34 +03:00
1282a5f321
Add README.md
2025-01-18 23:01:59 +01:00