Commit Graph

409 Commits

Author SHA1 Message Date
d88b1bcb70 use gs for vesa framebuffer (was fs) 2024-10-08 20:23:16 -04:00
75c046f9cd use gs for vesa framebuffer (was fs) 2024-10-08 20:23:16 -04:00
13ff42a7d1 unreal gdt now has 2 selectors 1 code, 1 data
ss, and e/f/g segments are loaded to the same flat 4gb segment
moved gdt notes to documentation
2024-10-08 20:22:21 -04:00
00daf92df5 unreal gdt now has 2 selectors 1 code, 1 data
ss, and e/f/g segments are loaded to the same flat 4gb segment
moved gdt notes to documentation
2024-10-08 20:22:21 -04:00
61f27cabd7 Update README.md 2024-10-08 09:08:47 -04:00
5ab7e70455 Update README.md 2024-10-08 09:08:47 -04:00
6643e3c990 ensure 2 byte jmp rel8 thunk to init
surpress reloc abs warnings
corrected include paths/filenames
2024-10-08 08:55:17 -04:00
6ae68d1a19 ensure 2 byte jmp rel8 thunk to init
surpress reloc abs warnings
corrected include paths/filenames
2024-10-08 08:55:17 -04:00
09d33086a0 converted error handler to a 16bit far jump
optimized the early error printer a bit to save some bytes
removed DEBUG_HCF macro
2024-10-08 08:53:30 -04:00
586f3f0106 converted error handler to a 16bit far jump
optimized the early error printer a bit to save some bytes
removed DEBUG_HCF macro
2024-10-08 08:53:30 -04:00
8e05e071e8 renamed files to show code vs defs
files that actually include code should be in .nasm files
defines/macros/non-code should be in .inc files
2024-10-07 20:41:15 -04:00
8301fc20a8 renamed files to show code vs defs
files that actually include code should be in .nasm files
defines/macros/non-code should be in .inc files
2024-10-07 20:41:15 -04:00
ca195e6048 force the first jump to init in all stages to be the rel8 version 2024-10-07 20:39:39 -04:00
4218a08658 force the first jump to init in all stages to be the rel8 version 2024-10-07 20:39:39 -04:00
db45a5cf8b jmp imm32 vs jmp rel8 (5 bytes vs 2 bytes) 2024-10-06 21:46:32 -04:00
2bbdaddb68 jmp imm32 vs jmp rel8 (5 bytes vs 2 bytes) 2024-10-06 21:46:32 -04:00
aac964c378 cutting out everything from miniboot
this file has always just been a place holder to get some code to load from the disk
I wanted to cut out all the extra stuff in it just to simplify things down.
2024-10-06 18:52:20 -04:00
213ea11209 cutting out everything from miniboot
this file has always just been a place holder to get some code to load from the disk
I wanted to cut out all the extra stuff in it just to simplify things down.
2024-10-06 18:52:20 -04:00
3c40190f23 surpress some of the relocation warnings for mbr, vbr & stage2 2024-10-06 18:50:32 -04:00
e41b597056 surpress some of the relocation warnings for mbr, vbr & stage2 2024-10-06 18:50:32 -04:00
39e977ea2c make the Linux bochs run more inline with the Windows one 2024-10-06 15:37:19 -04:00
f33ecbcea2 make the Linux bochs run more inline with the Windows one 2024-10-06 15:37:19 -04:00
7e0cd2a931 Merge pull request #2 from Nivirx/FAT_Refactor
Full refactor for modularization
2024-10-05 20:19:51 -04:00
03a09ed54b Merge pull request #2 from Nivirx/FAT_Refactor
Full refactor for modularization
2024-10-05 20:19:51 -04:00
4c4c3b0e27 fixed read_disk_raw in ReadFATCluster
boot_drive and partition_offset are global pointers now
removed an extra error from mbr disk read
and some general formating and cleanup 😅
2024-10-05 20:14:00 -04:00
145e9fbaa9 fixed read_disk_raw in ReadFATCluster
boot_drive and partition_offset are global pointers now
removed an extra error from mbr disk read
and some general formating and cleanup 😅
2024-10-05 20:14:00 -04:00
f5f5a330cd tons more work on modularizing the code 2024-10-05 18:55:00 -04:00
8f95c8f267 tons more work on modularizing the code 2024-10-05 18:55:00 -04:00
446dd451be more modularization and updating date in MIT licence header 2024-10-05 13:35:39 -04:00
5440a1ae61 more modularization and updating date in MIT licence header 2024-10-05 13:35:39 -04:00
64f2453d61 typo fix 2024-10-05 12:16:31 -04:00
d6af15a7a6 typo fix 2024-10-05 12:16:31 -04:00
867232890e Move fat32 and BIOS functions to their own files 2024-10-05 12:04:40 -04:00
a4fa48949c Move fat32 and BIOS functions to their own files 2024-10-05 12:04:40 -04:00
bcb9fc2176 removed extra part probe and added sleep before removing disk
also back to putting the test 32bit mode code on the root of the volume
2024-10-05 10:14:02 -04:00
0a1123c5b5 removed extra part probe and added sleep before removing disk
also back to putting the test 32bit mode code on the root of the volume
2024-10-05 10:14:02 -04:00
a0df1cb100 remove the dword stack macros and just use the 32bit override 2024-10-05 10:13:18 -04:00
e162e268c4 remove the dword stack macros and just use the 32bit override 2024-10-05 10:13:18 -04:00
6b2b1d2fc9 change test kernel stage name
also pointed up a bug in memory.inc
2024-10-04 22:17:35 -04:00
62f036b645 change test kernel stage name
also pointed up a bug in memory.inc
2024-10-04 22:17:35 -04:00
aae0d6b5b3 increased disk size and moved bpb/ebpb a bit 2024-10-04 14:26:10 -04:00
fdbfd811d5 increased disk size and moved bpb/ebpb a bit 2024-10-04 14:26:10 -04:00
db1d0295c5 some bpb/ebpb tweaks 2024-10-04 11:48:25 -04:00
d93236d298 some bpb/ebpb tweaks 2024-10-04 11:48:25 -04:00
c1c6b25e6e remove old kmem functions 2024-10-04 09:57:32 -04:00
86fd76e909 remove old kmem functions 2024-10-04 09:57:32 -04:00
ecd858f030 vbr cdecl overhaul
refactored read_disk_raw to read_stage2_raw
switched to new kmem functions
2024-10-04 09:56:41 -04:00
3f029e6b4c vbr cdecl overhaul
refactored read_disk_raw to read_stage2_raw
switched to new kmem functions
2024-10-04 09:56:41 -04:00
e45f1cb27d move cdecl macros to nearly the top so early functions can use them 2024-10-04 09:55:45 -04:00
30c4f1b82c move cdecl macros to nearly the top so early functions can use them 2024-10-04 09:55:45 -04:00