SD_INVCS in the sd.asm had been incorrectly changed from FALSE to TRUE. This changes it back to FALSE which is correct.
Thanks and credit to Peter Kuebler for bringing this to my attention.
Some disk drivers still had internal code for multi-sector I/O. With the read supervisors, this is no longer needed. Removed the extraneous code from these drivers.
- Modified SD driver to keep SD card clock consistently fast after card init. This only seemed to effect a Lexar 32GB uSD Card on CSIO interface. Thanks and credit to Richard Deane for reporting this.
- Improved hard disk layout documentation.
- Rearranged HBIOS code to improve colocation of related code.
- Implemented macros to improve control over assembly diagnostic output.
- Improved handling of diagnostic LEDs.
- Improved application boot bank management.
- Implemented application boot for Z280 systems.
- Moved Z280_BNKSEL into proxy.
-
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.
- 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.
As suggested by Laszlo Szolnoki, I have added an additional CF Card signature to the IDE and PPIDE drivers. He also pointed out a deficiency in the disk size printing which has been addressed.
- 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.
- DSKYng now has same features as original DSKY including debug monitor
- Added support for MBS LEDs
- Elevated MBS to a platform instead of just a sub-config of SBC
Based on a logic analyzer trace from Andy Cooper, it appears that some SD cards want the unused CRC byte of the command packet to be 0xFF instead of the 0x00 filler I was using. Changed to put 0xFF in the CRC byte when unused.