summaryrefslogtreecommitdiff
path: root/Kernel/BlkDev
diff options
context:
space:
mode:
authorHarley Travis <harleytravis123@outlook.com>2026-06-10 19:26:39 -0500
committerHarley Travis <harleytravis123@outlook.com>2026-06-10 19:26:39 -0500
commit6590b4942c0727903b42f9a34f7a076e034fda09 (patch)
treeba0e4c3698dad3250c2a8a28ec5dfd7a4b7eaadf /Kernel/BlkDev
parent04d1c9312e4814511b0b7c5aecb8391074a9f755 (diff)
downloadtempleos-floppy-driver-6590b4942c0727903b42f9a34f7a076e034fda09.tar.gz
Update DskFDC.HC
FDCWriteBlks now checks if the disk is write-protected before attempting a write, throwing an exception if it is. I also reworked the retry check for both it and FDCReadBlks.
Diffstat (limited to 'Kernel/BlkDev')
-rw-r--r--Kernel/BlkDev/DskFDC.HC7
1 files changed, 5 insertions, 2 deletions
diff --git a/Kernel/BlkDev/DskFDC.HC b/Kernel/BlkDev/DskFDC.HC
index 08dc470..ba4c007 100644
--- a/Kernel/BlkDev/DskFDC.HC
+++ b/Kernel/BlkDev/DskFDC.HC
@@ -309,7 +309,7 @@ U0 FDCReadBlks(CBlkDev *bd,U8 *buf,I64 blk,I64 cnt)
Bool unlock=BlkDevLock(bd);
retry:
- if (retries==0) throw('BlkDev');
+ if (retries) throw('BlkDev');
FDCSelDrv(bd);
@@ -352,8 +352,11 @@ U0 FDCWriteBlks(CBlkDev *bd,U8 *buf,I64 blk,I64 cnt)
U8 c,h,s,st0;
Bool unlock=BlkDevLock(bd);
+ if (Bt(InU8(bd->base0+FDC_STAT_A),2))
+ throw('BlkDev');
+
retry:
- if (retries==0) throw('BlkDev');
+ if (!retries) throw('BlkDev');
MemCpy(&FDC_DMA,buf,cnt);