summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-06-12Split Mount2VarsFDC.HC into two filesHarley Travis
Since the U8 and Bool declarations in Mount2 are not on consecutive lines, I decided to split them for ease of patching.
2026-06-10Update changelog (June 4-10, 2026)Harley Travis
The changelog has been updated to reflect the changes made to the 'blkdev' branch between June 4 and June 10, 2026, 20:23 CDT.
2026-06-10Rename Mount2Ltrs.HC to Mount2LtrsFDC.HCHarley Travis
Mount2Ltrs was created without the normal "FDC" suffix, which I have now added.
2026-06-10Create Mount2Ltrs.HCHarley Travis
This file modifies the list of drive letter types printed by Mount2 to reflect the changes made by Let2BlkDevTypeFDC.HC. All lines of the original Print call are to be commented out and this file included in its place.
2026-06-10Create Let2BlkDevTypeFDC.HCHarley Travis
This file patches Let2BlkDevType to provide drive letters for floppy drives. The original function is to be commented out and this file included in its place.
2026-06-10Create BlkDevInitFDC.HCHarley Travis
This file adds a case to BlkDevInit for the floppy BDT, allowing it to be initialized. It is to be placed after the last case in the function's switch statement.
2026-06-10Update DskFDC.HCHarley Travis
The Bt call was modified to test for the corrrect bit of SRA.
2026-06-10Update DskFDC.HCHarley Travis
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.
2026-06-08Update Mount2CaseAFDC.HCHarley Travis
I re-worded the instructions for the manual floppy drive configuration, mainly to warn the user of the three single-digit questions.
2026-06-08Update Mount2CaseBFDC.HCHarley Travis
I added default parameters for 3.5-inch high-density drives for convenience.
2026-06-07Create Mount2CaseBFDC.HCHarley Travis
This file adds a case to Mount2's second switch statement to configure new FDC BlkDevs. It is to be included after the BDT_ATAPI case.
2026-06-07Create Mount2CaseAFDC.HCHarley Travis
This file adds a case to Mount2's first switch statement to configure FDC BlkDevs. It is to be included after the BDT_ATAPI case.
2026-06-07Create Mount2VarsFDC.HCHarley Travis
This file adds additional buffers and variables to Mount2 as required by the FDC mount code. The original code is to be commented out and this files included after it.
2026-06-07Update DskFDC.HCHarley Travis
I realized that the logic that determined the sector size value sent to the controller would not work properly on larger sector size, so I redid it.
2026-06-06Update BlkDevAddFDC.HCHarley Travis
The BlkDevAdd code now checks if the floppy disk has a valid RedSea boot sector before attempting to initialize it.
2026-06-06Update BlkDevAddFDC.HCHarley Travis
BlkDevAdd should set drv_offset to 0 (since the BlkDev's drv_offset will also be zero; floppies don't have a partition table), so I removed the forced-set to 0 in the code.
2026-06-06Update DskFDC.HCHarley Travis
I have added a function that will check for the presence of valid sector data on either side of a floppy disk. This function is used to check for the presence of a disk in a way that does not rely on the proper handling of the disk change flag.
2026-06-06Create BlkDevAddFDC.HCHarley Travis
This file adds code for handling floppy block devices to the BlkDevAdd function. It is to be included at the end of the function's switch statement.
2026-06-06Create KDefineBDTs.HCHarley Travis
This file replaces the DefineLstLoad call that sets ST_BLKDEV_TYPES to add the FDC type. The original code is to be commented out and this file included after it.
2026-06-06Create KernelABDTs.HHHarley Travis
This file replaces the block device type list in KernelA.HH. The original code is to be commented out and this file included after it.
2026-06-04Update KFloppyDMA.HCHarley Travis
I halved the size of the DMA buffer in keeping with the "one track at a time" methodology I have adopted.
2026-06-04Create KFloppyB2.HCHarley Travis
This file contains new headers for the BlkDev-ified driver.
2026-06-04Update KFloppyA.HHHarley Travis
I added the data rate values accepted by the FDC to the main header file.
2026-06-04Update DskFDC.HCHarley Travis
I moved the version check into the drive-0-only code; it wouldn't make sense to check the version each time a drive gets initialized.
2026-06-01Update changelogHarley Travis
I have updated the changelog to reflect the changes made to the blkdev branch as of June 1, 2026, 19:56 CDT.
2026-06-01Update DskFDC.HCHarley Travis
I have decided not to use multi-track mode and instead do atomic reads and writes to sector ranges. I have also added a timeout to the motor command when the motor is turned on (approximately 500 milliseconds to accomodate 5ΒΌ" drives). FDCInit now sets the highest-accessible block.
2026-06-01Update CBlkDevFDC.HCHarley Travis
DMA will always be used, so I have removed the DMA flag from CBlkDev.
2026-05-31Initial commit for BlkDev branchHarley Travis
This is the initial commit for the BlkDev-ified driver. It is not at all in a working state at this point, and the old files have been left for reference purposes.
2026-05-29Update ChangeLog.TXTHEAD2026-05-29mainHarley Travis
I updated the changelog to reflect the KFloppy and Installer patches made on May 29, 2026. These are expected to be the final update to the original driver codebase prior to BlkDev-ification.
2026-05-29Update Install.HCHarley Travis
I added a missing semicolon that caused the CopyTree call to trigger an exception upon being #included.
2026-05-29Update DskImg.HCHarley Travis
Since implied seek is enabled during the initialization process, I realized that I could make the disk dumper program much faster by just doing the read without first doing a manual seek. However, because the data transfer code does not do any error checking, I have made the program more prone to calamity in case of a read failure.
2026-05-29Update KFloppy.HCHarley Travis
I fixed the read and write functions so that they correctly check the status of the controller before performing the write (hopefully).
2026-05-27Refactor source code and create an "installer"Harley Travis
I have moved some source files into subdirectories for ease of installation. I have also added an installer script to automatically place driver files into their respective system directories.
2026-05-27Re-license all code under 0BSD in place of WTFPLHarley Travis
I have re-licensed all of my code under the more-serious 0BSD license rather than the WTFPL on the count of it being more legally sound (vulgarity was NOT a factor in this decision).
2026-05-26Update KFloppy.HC and ReadMe.TXTHarley Travis
I have corrected a copy-paste error I made while writing the multi-track write code that caused controller timeouts. I have also done further line length reduction. See ChangeLog.TXT for details.
2026-05-24Update changelog to reflect recent changesHarley Travis
2026-05-24Update KFloppyA.HHHarley Travis
I completed the flag definitions for the ST2 and ST3 registers, and updated the copyright notice accordingly. I also broke some long comments down into multiple lines to keep the line length to 80 columns or less.
2026-05-24Modify copyright statementsHarley Travis
I have modified (and added) copyright statements on all applicable files so that they are (mostly) in the form recommended by the WTFPL FAQ, which may be found at https://www.wtfpl.net/faq.
2026-05-23TOSFloppy_2025-04-20T2103-0500.zip2025-04-20Harley Travis
This was the second and final Discord release of the TempleOS floppy disk controller driver, released April 20, 2025. This release saw mainly structure changes, plus the addition of a license file (the code, at this point, is licensed under Do What The Fuck You Want To Public License, version 2.0).
2026-05-23Initial commit (TOSFloppy-2025-04-17.zip)2025-04-17Harley Travis
This is taken from the earliest Discord release of the TempleOS floppy disk driver, released on April 17, 2025.