3056d659fa
fix syscall gateway not preserving DS on entry
2021-01-13 18:36:12 +00:00
440187c2a8
Harden drive.asm against unexpected DS and ES values
2021-01-13 18:32:17 +00:00
df243e668e
Remove PIC functionality from syscall.asm
...
Makes things easier
2021-01-13 17:38:22 +00:00
23c6223055
Relocate kernel to 0x0700 and use sections proper
2021-01-13 17:21:10 +00:00
4046dd7d6c
Improve syscall entrypoint
2021-01-13 17:20:49 +00:00
750bfbdc60
Remove outdated comments
2021-01-05 00:15:36 +00:00
34023678a4
Implement current drive for user programs
2021-01-04 23:29:50 +00:00
7e2e91b2b7
Reorder code and remove unused farptr components
2021-01-04 23:19:14 +00:00
0256d6ab36
Improve syscall gateway: now position-independent
...
Also it now keeps all register values except SS:SP on entry.
2021-01-04 23:01:14 +00:00
fb4bbfc8cf
Continued development on int 21h interface
2021-01-03 18:11:41 +00:00
3f8cfaac42
Remove debugging output
2021-01-03 18:10:54 +00:00
1dbfb2f592
Implement entrypoint and table for syscalls
2021-01-02 03:45:03 +00:00
015eea2f2f
Rename fndfst to open
2021-01-02 02:48:04 +00:00
9a1c4139a6
Implement searching directory for exact matches
2021-01-02 02:07:40 +00:00
7754312609
remove unused kernel/main
2020-12-27 00:25:30 +00:00
2bb40e315c
Fix ebios dap packet: wrong size
2020-12-26 20:58:51 +00:00
af5df85c16
Use ebios extensions if enabled
2020-12-26 20:54:39 +00:00
2d97bb57e5
Fix mbr: DAP size was incorrectly set to zero
2020-12-26 18:46:16 +00:00
c75b323d31
Add support for hard disks
2020-12-26 17:44:48 +00:00
b8b56e1f45
make logdrv also use int13 stub
2020-12-26 16:43:04 +00:00
c5afc6ec61
Add printf facility for kernel to allow debug messages on phys. system
2020-12-26 16:03:15 +00:00
424e174523
drive i/o: improvements regarding reset and stack usage
...
- read and write now run in the same function, less branching
- implemented on-demand controller reset
- set up a function stub for int 0x13 for later stack switching
2020-12-26 14:40:43 +00:00
0a2a0e4659
Support managing floppy parameter table
2020-12-22 21:14:16 +00:00
f10fa026cf
Add support for floppy types with other geometry than 18/2/80
2020-12-18 18:29:26 +00:00
de04b5ca01
Make logging in drive a no-op if drive already logged in
2020-12-17 00:41:53 +00:00
bd3b27362d
skip reads when sector number already matches
2020-12-17 00:10:02 +00:00
e096745c13
Implement map-like sector access for floppy drives
2020-12-15 23:29:35 +00:00
8c3d61e68d
Remove reserved sectors from generated disk, not needed anymore
2020-12-15 20:38:48 +00:00
c0bd238d54
New bootsect program to dump bios data area, aid for debugging hw
2020-12-15 20:16:42 +00:00
6bdb1da2ed
Read disk geometry and DPT from BIOS
2020-10-30 09:29:22 +00:00
c06c6ac918
fat vbr: fix incorrect addition of partition offset
2020-10-25 14:22:53 +00:00
50aa6e4eec
Use uppercase non-struct constants for BPB
2020-10-25 09:15:33 +00:00
dc6035fe9d
Protypical implementation of DPT copying
2020-10-24 22:50:23 +00:00
33f4fe37a8
Makefile: Fix KVM detection to not trigger on weird ass make versions
2020-10-20 21:03:47 +00:00
ca3eebd692
Remove fields from BPB that are EBPB actually
...
This is just a trick so i can use bpb_size in the kernel later,
omitting things that are not relevant to interfacing the FS.
2020-10-15 20:20:17 +00:00
7b18c6d236
fix bpb struc: forgot single byte for flags
2020-10-14 20:16:43 +00:00
c41782c78f
Build drive selection logic for FCBs
2020-10-13 20:10:23 +00:00
4e779c5a22
Lay out skeletons for FCB handling
2020-10-11 21:33:01 +00:00
31c6ef5876
boot/kernel: print banner
2020-09-27 15:45:19 +00:00
729e6790ef
boot/fat: Save a byte restoring DL
2020-09-27 15:10:28 +00:00
909349a4cf
boot/fat: Shave off a byte by storing final address on stack
2020-09-27 11:25:57 +00:00
386e91b4c8
boot/fat: Fix incorrect initialisation of dx
2020-09-27 10:48:05 +00:00
2dc6970721
boot/fat: Use segmentation to allow up to 64Kb fat/kernel size
2020-09-27 10:40:42 +00:00
adf67d9723
Rework fat boot sector, load FAT only once instead of partial
2020-09-23 23:01:50 +00:00
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
8ed9fe7465
Fix hdd booting using bpb struc
2020-09-19 08:22:50 +00:00
1d64c2364d
Improve build transparency (documentation and inline version number)
2020-09-17 08:59:22 +00:00
e1bfaa5d88
automatically use kvm if available
2020-09-17 06:47:32 +00:00
8e87cf0f75
Load kernel from reserved sectors in fatfs
2020-09-17 05:57:46 +00:00
1ee0637eab
Update goals
2020-09-15 22:02:38 +02:00