diff options
Diffstat (limited to 'Adam/ABlkDev')
| -rw-r--r-- | Adam/ABlkDev/Patches/Mount2CaseAFDC.HC | 80 | ||||
| -rw-r--r-- | Adam/ABlkDev/Patches/Mount2CaseBFDC.HC | 22 | ||||
| -rw-r--r-- | Adam/ABlkDev/Patches/Mount2LtrsFDC.HC | 14 | ||||
| -rw-r--r-- | Adam/ABlkDev/Patches/Mount2VarsFDC.HC | 10 | ||||
| -rw-r--r-- | Adam/ABlkDev/Patches/Mount2VarsFDC2.HC | 7 |
5 files changed, 133 insertions, 0 deletions
diff --git a/Adam/ABlkDev/Patches/Mount2CaseAFDC.HC b/Adam/ABlkDev/Patches/Mount2CaseAFDC.HC new file mode 100644 index 0000000..2e70791 --- /dev/null +++ b/Adam/ABlkDev/Patches/Mount2CaseAFDC.HC @@ -0,0 +1,80 @@ +// PATCH: Add the ability to configure floppy BlkDevs (part 1 of 2) +// FILE: ::/Adam/ABlkDev/Mount.HC +// TO INSTALL: #include this file at the end of the first switch statement. +// ADAM PATCH: Must be installed after kernel patches! + +case BDT_FLOPPY: + do { + "Include $PURPLE$0x$FG$ prefix.\nI/O Port Base:\n"; + GetS(base0_buf,STR_LEN); + } while (!Str2I64(base0_buf)) + do { + "Drv Num:\n"; + unit=GetChar-'0'; + } while (0<=unit<=3) + "If you have a 3.5-inch high-density (1.44 Meg)\n" + "floppy disk, there are some default params you can use.\n" + "Otherwise, you will need to set the manually (Intel's datasheet\n" + "for the 82077AA is very useful here).\n\n" + "Use default params "; + If (YorN) { + defaults=TRUE; + } else { + "The folowing parameters are used to configure the ctrlr:\n" + "Most can be entered in either decimal or hex, but the head\n" + "count, sector size, and data rate take single decimal digits.\n" + do { + "Cylinders:\n"; + GetS(cyl_buf,STR_LEN); + } while (!Str2I64(cyl_buf)); + do { + "Heads:\n"; + heads=GetChar-'0'; + } while (1<=heads<=2); + do { + "Sectors:\n"; + GetS(spt_buf,STR_LEN); + } while (0<=Str2I64(spt_buf)<=255); + do { + "Sector Size (128<<X bytes):\n"; + size=GetChar-'0' + } while (0<=size<=7); + if (size==0) { + do { + "DTL (data length):\n"; + GetS(dtl_buf,STR_LEN); + } while (1<=Str2I64(dtl_buf)<=128); + } else { + dtl_buf="0xFF"; // If sect size is not 128, DTL is set to 255 + } + do { + "Step Rate:\n"; + GetS(srt_buf,STR_LEN); + } while (0<=Str2I64(srt_buf)<=15); + do { + "Head Unload Time:\n"; + GetS(hut_buf,STR_LEN); + } while (0<=Str2I64(hut_buf)<=15); + do { + "Head Load Time:\n"; + GetS(hlt_buf,STR_LEN); + } while (0<=Str2I64(hlt_buf)<=127); + do { + "GPL1 (normal GAP3 len):\n"; + GetS(gpl1_buf,STR_LEN); + } while (1<=Str2I64(gpl1_buf)<=255); + do { + "NOTE: Setting GPL2 to 0 will disable low-level fmt!\n"; + "GPL2 (fmt GAP3 len):\n"; + GetS(gpl2_buf,STR_LEN); + } while (0<=Str2I64(gpl2_buf)<=255); + do { + "*** Data Rates ***\n" + "0=500 Kbit\n" + "1=300 Kbit\n" + "2=250 Kbit\n" + "3=1 Mbit (Not Supported)\n\n"; + "Data Rate:\n"; + bps=GetChar-'0' + } while (0<=bps<=3); + }
\ No newline at end of file diff --git a/Adam/ABlkDev/Patches/Mount2CaseBFDC.HC b/Adam/ABlkDev/Patches/Mount2CaseBFDC.HC new file mode 100644 index 0000000..2ffaa2f --- /dev/null +++ b/Adam/ABlkDev/Patches/Mount2CaseBFDC.HC @@ -0,0 +1,22 @@ +// PATCH: Add the ability to configure floppy BlkDevs (part 2 of 2) +// FILE: ::/Adam/ABlkDev/Mount.HC +// TO INSTALL: #include this file at the end of the second switch statement. +// ADAM PATCH: Must be installed after kernel patches! + +case BDT_FLOPPY: + if (defaults) { + // These assume a 1.44 Meg, 3.5-inch floppy + DocPrint("bd->base0=%s;",base0_buf); + DocPrint("bd->blk_size=128<<%d;",2); + DocPrint("bd->cyls=%s;bd->heads=%d;bd->spt=%s;","80",2,"18"); + DocPrint("bd->srt=%s;bd->hut=%s;bd->hlt=%s;","13","5","0"); + DocPrint("bd->bps=%d;bd->gpl1=%s;bd->gpl2=%s",0,"27","124"); + DocPrint("bd->dtl=%s","255"); + } else { + DocPrint("bd->base0=%s;",base0_buf); + DocPrint("bd->blk_size=128<<%d;",size); + DocPrint("bd->cyls=%s;bd->heads=%d;bd->spt=%s;",cyl_buf,heads,spt_buf); + DocPrint("bd->srt=%s;bd->hut=%s;bd->hlt=%s;",srt_buf,hut_buf,hlt_buf); + DocPrint("bd->bps=%d;bd->gpl1=%s;bd->gpl2=%s",bps,gpl1_buf,gpl2_buf); + DocPrint("bd->dtl=%s",dtl_buf); + }
\ No newline at end of file diff --git a/Adam/ABlkDev/Patches/Mount2LtrsFDC.HC b/Adam/ABlkDev/Patches/Mount2LtrsFDC.HC new file mode 100644 index 0000000..5325350 --- /dev/null +++ b/Adam/ABlkDev/Patches/Mount2LtrsFDC.HC @@ -0,0 +1,14 @@ +// PATCH: Update ltr lst to reflect remapping of drv ltrs +// FILE: ::/Adam/ABlkDev/Mount.HC +// TO INSTALL: Comment out the original Print call. +// THEN: #include this file after it. +// ADAM PATCH: Must be installed after kernel patches! + +"\n****** Mount Drives ******\n" + "$GREEN$A$FG$-$GREEN$B$FG$ are RAM drives.\n" + "$GREEN$C$FG$-$GREEN$L$FG$ are ATA hard drives.\n" + "$GREEN$M$FG$-$GREEN$P$FG$ are ISO file read drives.\n" + "$GREEN$Q$FG$-$GREEN$S$FG$ are ISO file write drives.\n" + "$GREEN$T$FG$-$GREEN$V$FG$ are ATAPI CD/DVD drives.\n" + "$GREEN$W$FG$-$GREEN$Z$FG$ are floppy drives.\n" + "\nDrive Letter ($PURPLE$<ENTER>$FG$ to exit):";
\ No newline at end of file diff --git a/Adam/ABlkDev/Patches/Mount2VarsFDC.HC b/Adam/ABlkDev/Patches/Mount2VarsFDC.HC new file mode 100644 index 0000000..d6e4a0e --- /dev/null +++ b/Adam/ABlkDev/Patches/Mount2VarsFDC.HC @@ -0,0 +1,10 @@ +// PATCH: Add more U8 bufs for floppy configuration +// FILE: ::/Adam/ABlkDev/Mount.HC +// TO INSTALL: Comment out the original declaration. +// THEN: #include this file after it. +// ADAM PATCH: Must be installed after kernel patches! + +U8 blks_buf[STR_LEN],addr_buf[STR_LEN],base0_buf[STR_LEN],base1_buf[STR_LEN], + cyl_buf[STR_LEN],heads,spt_buf[STR_LEN],size,srt_buf[STR_LEN], + hut_buf[STR_LEN],hlt_buf[STR_LEN],bps,gpl1_buf[STR_LEN], + gpl2_buf[STR_LEN],dtl_buf[STR_LEN]*filename=NULL,*filename2=NULL,res=0;
\ No newline at end of file diff --git a/Adam/ABlkDev/Patches/Mount2VarsFDC2.HC b/Adam/ABlkDev/Patches/Mount2VarsFDC2.HC new file mode 100644 index 0000000..d148a83 --- /dev/null +++ b/Adam/ABlkDev/Patches/Mount2VarsFDC2.HC @@ -0,0 +1,7 @@ +// PATCH: Add two new Bools for floppy configuration +// FILE: ::/Adam/ABlkDev/Mount.HC +// TO INSTALL: Comment out the old Bool declaration. +// THEN: #include this file after it. +// ADAM PATCH: Must be installed after kernel patches! + +Bool whole_drv,make_free,defaults=FALSE;
\ No newline at end of file |
