Commit Graph

35 Commits

Author SHA1 Message Date
Nero 31eac279c2 Revert to more sensible kernel.bs boot scheme
I think i should consider it a necessity that the kernel is accessible
as a regular file. This makes installing rdos on another blockdev
much easier.
2020-09-20 19:58:19 +02:00
Nero 1d64c2364d Improve build transparency (documentation and inline version number) 2020-09-17 08:59:22 +00:00
Nero 8e87cf0f75 Load kernel from reserved sectors in fatfs 2020-09-17 05:57:46 +00:00
Nero 303b1756e0 Fuck up the kernel, i have other ideas now 2020-09-15 21:44:32 +02:00
Nero 352540bd25 kernel: First steps of calculating drive tab data from BPB 2020-08-31 20:11:05 +00:00
Nero cc3fe6c4ee kernel: fix banner printing 2020-08-27 21:01:41 +00:00
Nero f0a000b7d1 kernel: implement diskio using drive table 2020-08-27 20:52:16 +00:00
Nero fde87d651c kernel: read A: geometry from BIOS 2020-08-15 21:15:31 +00:00
Nero 626b7e5624 Add struc for disk parameter table 2020-08-15 18:30:17 +00:00
Nero 5382edc2ae Improve ordering of binary data in kernel 2020-07-04 10:35:38 +02:00
Nero f9b180ea57 Implement file descriptor table and CON as file descriptor 2020-06-28 19:01:14 +02:00
Nero 1b42f1a480 Implement calculation for FAT position 2020-05-10 16:47:48 +00:00
Nero 36f4673c91 Another attempt on disk i/o 2020-05-02 23:57:23 +02:00
Nero b73bfbe043 Split out kernel components in kernel/ 2020-04-27 15:56:41 +02:00
Nero 2d949a01f8 Implement whacky first version for 25h disk read 2020-04-26 23:14:34 +02:00
Nero 43e5cd6379 Direct console input: Dont return non-ascii keypresses 2020-04-25 21:54:15 +02:00
Nero da41f6b0e2 Rework early startup and fix bss memory reservation 2020-04-23 21:49:10 +02:00
Nero 4804bf28ea Place variables into area after binary 2020-04-23 21:36:20 +02:00
Nero 3619a20703 Implement some console i/o 2020-04-23 21:35:28 +02:00
Nero bbfcd42f61 Set up interrupt table at startup directly (less code), not calling setint 2020-04-21 20:22:42 +02:00
Nero f8788720f5 Implement int 28h: Idle callout 2020-04-20 19:21:02 +02:00
Nero 40065266f3 Implement int 29h: Fast console output 2020-04-20 19:20:43 +02:00
Nero c5088789f9 Proof kernel against being invoked via 0x7C0:0 2020-04-19 15:14:10 +02:00
Nero 97f26c1f89 Remove stack switching, implement some syscalls 2020-04-19 00:35:31 +02:00
Nero c1c012c5fc Make getint and setint reuse cs segment 2020-04-18 23:44:16 +02:00
Nero 4a92c4bc1e Drop MCBs as mean to manage memory 2020-04-18 22:59:46 +02:00
Nero 6c165f40c0 Create basic MCB at boot 2020-04-17 01:24:23 +02:00
Nero 70a675442a Reorder disk access and fix missing si setting 2020-04-16 23:04:06 +02:00
Nero 27e4dec580 Implement loading BPB from media 2020-04-15 23:51:07 +02:00
Nero 23ddd6b41a Implement some PoC of reading from disk 2020-04-15 00:17:58 +02:00
Nero 6b49a20865 Implement syscall subfunction jump table 2020-04-13 18:03:54 +02:00
Nero 39ef1f9a3e Implement some syscall handling 2020-04-13 13:53:21 +00:00
Nero 6ba3e0c071 Implement stack switching for dos syscall entry point 2020-04-10 15:00:26 +00:00
Nero cb48e628db kernel stub: force large size to make sure cluster chaining works 2020-04-01 13:09:01 +00:00
Nero 955acdacba Split code up into directories for bs and com binaries 2020-03-30 12:14:47 +00:00