Commit Graph

42 Commits

Author SHA1 Message Date
Wayne Warthen
ed53030de2 Extend IDE Reset Delay & Support Duodyne FDC
- The post-reset delay of both the IDE and PPIDE drivers has been extended.  The SD-IDE adapters need more time to initialize before being ready to behave as proper IDE devices.
- Added support for the FDC section of the Duodyne Disk-IO board.
2023-12-10 17:28:04 -08:00
Wayne Warthen
72cdbdd4ad Documentation Updates Inspired by Martin R
- Implemented a crude mechanism to output config settings during a build which can be imported into the User Guide appendix.
2023-11-29 18:54:51 -08:00
Wayne Warthen
8b7e71049b FDC Detection Update & Enable ESP Driver on Duodyne
- Based on reports from Martin R, the FDC detection algorithm has been updated to try reading the FDC MSR register twice to try and get the desired value of 0x80.
- Dan Werner's ESP board for Duodyne is working well, so the default Duodyne config has been changed to automatically detect this board.
2023-08-25 10:25:07 -07:00
Wayne Warthen
5610e79db4 Improve FD Driver Detection
Credit to Martin R for reporting that his FDC was not being detected.  The delay between FDC status register reads was increased in the detection routine to correct this.
2023-08-22 15:22:11 -07:00
Wayne Warthen
f8c800e527 Create DSKY Driver Framework
Added a new driver category for DSKY (Display/Keypad) devices.  Existing DSKY devices were converted into drivers ICM and PKD.  These devices were previously DSKY and DSKYNG.

This removes substantial code duplication and recovers significant space in romldr and dbgmon.
2023-06-28 15:06:53 -07:00
Wayne Warthen
b90e4d932a Update fd.asm
- Fix typo
2023-06-20 16:12:49 -07:00
Wayne Warthen
5457a7e7fd Improve OS Boot Drive Assignment
- Modified the Disk Device function call (DIODEVICE) to provide new attributes related to disk size and removability.
- Leveraged API change to allow handling drive assignment differently depending on ATAPI vs. ATA interface.
2023-06-20 15:52:34 -07:00
Wayne Warthen
e5b7409f44 Support Per-floppy Device Drive Types
- Floppy devices are now configured per-device so that each floppy drive can be different (e.g., first floppy is 3.5" and second floppy is 5.25").
- Removed need to use termination signal on floppy sector I/O.

Addresses issue #318
2023-04-20 16:24:14 -07:00
b1ackmai1er
590dcd0b4f SYSCHK driver syncing 2022-11-06 10:46:46 +08:00
Wayne Warthen
150a02358e Support MBC FDC in HBIOS
- Not yet tested.
2021-07-28 17:19:31 -07:00
Wayne Warthen
e60bf088c9 DSKY Disk Activity Cleanup
- The DSKY(ng) can display disk I/O activity as the system runs.  This capability was implemented very erratically.  This update overhauls the mechanism, makes it consistent, and implements it across all disk drivers.
2021-07-13 17:11:35 -07:00
Wayne Warthen
8e4ea799af FDC Detection Improvement
- Some FDC modules startup with the FDC reset signal active.  This fix ensures that reset is not asserted when FDC hardware prove is performed.
2021-06-01 15:44:16 -07:00
Wayne Warthen
31b09f4ab9 Update fd.asm
- Improve FDC hardware detection.
2021-05-24 11:26:10 -07:00
Wayne Warthen
242dc59471 FDC hardware auto-detection
- FD driver will now detect presence of FDC hardware and install if found in all standard configurations
- Does *not* detect type of FDC which must still be set in config
- Added default FD driver MODE to all configs
- Thanks to Alan Cox for the technique!
2021-05-14 17:53:34 -07:00
Wayne Warthen
9857dda5b5 Finish DEVICE API extension 2020-05-27 16:44:52 -07:00
Wayne Warthen
3f46921c6c Change PANIC behavior a bit
- Also includes a fix for a build issue in PPIDE identified by Richard Deane.
2020-05-18 15:33:28 -07:00
Wayne Warthen
1a8cfb91e7 Changes from Dean Netherton
- Allow immediate autoboot (no timeout)
- Allow configuring number of floppy devices
2020-05-02 14:58:07 -07:00
Wayne Warthen
e50f5f0935 Add support for EPFDC
Credit to Alan Cox for the changes.
2020-04-29 17:45:04 -07:00
Wayne Warthen
5244ea9e79 FD Motor Timeout
- Made FDC motor timeout smaller and more consistent across different speed CPUs
- Added "boot" messaging to RTC
2020-03-24 12:48:48 -07:00
Wayne Warthen
e9709fcde6 Floppy Driver fixes from Steve Garcia 2020-01-06 10:59:03 -08:00
Wayne Warthen
3c8cd5219e Preliminary support for Dyno Computer
Dyno Computer is the work of Steve Garcia and much of the code checked in is based on his work.
2020-01-05 15:26:08 -08:00
Wayne Warthen
0bdecc9a4a Floppy Fix
Floppy I/O was failing for slower CPUs when the timer interrupts were active.  Now fixed.

Credit to Jorge Jorge Rodrigues for finding this problem and pointing me in the right direction for the fix.
2019-09-06 15:47:46 -07:00
Wayne Warthen
b856a1a529 Disk I/O to/from Banked Memory
Supports double-buffered disk i/o to read/write to/from any memory bank specified.

NOTE:  Disk I/O will be temporarily slower than normal because all I/O is being forced thru double-buffering for testing.
2019-09-03 15:12:56 -07:00
Wayne Warthen
5196a56267 Support LBA Access for Floppy Devices 2019-05-06 19:26:59 -07:00
Wayne Warthen
35d3408ab6 Floppy Driver Updates
Minor fixes in fd.asm.
2019-03-16 16:41:37 -07:00
Wayne Warthen
5fc01b4100 Finalize RC2014 floppy updates
RC2014 floppy controller support completed and tested for Scott Baker
SMC and WDC controller modules.  FDU application updated as well.
2018-01-08 16:45:43 -08:00
Wayne Warthen
768e41c933 New disk driver interface logic 2018-01-07 15:04:00 -08:00
Wayne Warthen
fb63612ebf RC2014 Floppy
- Support for RC2014 SMB Floppy (WDC & SMC), but not yet tested.
- Final work on Multi-Sector I/O
2018-01-01 16:12:12 -08:00
Wayne Warthen
c9869344e2 Disk Driver Multi-Sector I/O
Added multi-sector I/O to all disk drivers.
Added SMB variant to PPIDE driver.
2017-12-29 16:57:06 -08:00
Wayne Warthen
feee56990a Finalize 2.8.6
- Support for RC2014
- Handle IDE disk spinup without timing out
2017-12-10 19:54:34 -08:00
Wayne Warthen
5e6196d541 Update Doc build process 2016-09-29 17:01:46 -07:00
Wayne Warthen
5154713644 Config Files Overhaul 2016-04-06 18:14:14 -07:00
Wayne Warthen
8fe3526ecd API Revisions / Cleanup
- Improved banked copy size and performance
- Revised API for SETCPY, BNKCPY, SETBNK, and GETBNK
2016-03-30 17:10:08 -07:00
Wayne Warthen
8aedfbb7f3 Add Device Summary Display 2016-03-25 21:20:05 -07:00
Wayne Warthen
b4fc05acfb Incorporate FDISK80 2016-03-21 17:05:57 -07:00
Wayne Warthen
5adbef5f68 Revised Emulation Services 2016-03-19 21:21:17 -07:00
Wayne Warthen
b63dfdf587 Revised Disk API 2016-03-10 17:44:42 -08:00
Wayne Warthen
6354bd300d Revised disk API 2016-03-04 20:09:47 -08:00
Wayne Warthen
b67106889e Add HBIOS Heap Memory
- New heap memory functions
- Restructured new disk I/O functions
2016-01-10 16:01:33 -08:00
Wayne Warthen
25974843e3 Storage Driver Refactoring 2015-12-06 20:10:00 -08:00
Wayne Warthen
df74f73d5b PROPIO Driver Refactoring 2015-11-21 13:16:23 -08:00
wwarthen
de52c4f560 Reintegrate wbw -> trunk 2015-08-19 17:34:42 +00:00