commit 69ba92644958a1226b3c5bf4ad37b289f855cb67 Author: Ingo Korb Date: Sat Oct 10 17:11:56 2026 +0200 fileops: clarify behaviour on re-opening an open secondary Replace a FIXME comment with a better one that provides a rationale for keeping the current, not strictly original-drive-matching behaviour. commit c9e60136dbb11327c1a269f24a4efa4711654525 Author: Ingo Korb Date: Sat Oct 10 17:07:23 2026 +0200 buffers: continue running cleanup callbacks after failure Due to the short-circuit behaviour of ||, free_multiple_buffers would stop running the cleanup callbacks after one of them failed. Rewrite to always run the cleanup instead while still accumulating "at least one failed" information. commit 7ff72733054c6f47f4032d5d0bb65a53600a2a45 Author: Ingo Korb Date: Sat Oct 10 17:01:59 2026 +0200 set error channel to 00,OK on (most) successful close commands To match the behaviour of an FD2000 more closely, explicitly reset the error channel to 00,OK when secondaries 2-15 are closed unless the current error is REL-related. To avoid clobbering the error channel, this also required a change in fatops to only update the error channel during close if closing the FAT file reported an error. commit 591d577edcab4498f150c692d5864618c5e4eb6e Author: Ingo Korb Date: Sat Oct 10 16:55:43 2026 +0200 doscmd: check parse_path result in scratch command Abort a scratch command if parsing the path failed. Previously it would try to scratch the given file in whatever location the parser gave up, potentially deleting a file in a completely different directory. commit a4458470854c53fcd9e2b2b8066d98ab149c082a Author: Ingo Korb Date: Sat Oct 10 16:53:30 2026 +0200 fl-samsjourney: discard remaining data if writing fails When flushing a full buffer during a write operation fails, just receive and discard the following data instead of writing it to a buffer that has been freed by the failed refill callback. commit be99fd958fbda471d3d2adc6d47d4bb93f75d0b1 Author: Ingo Korb Date: Sat Oct 10 16:49:31 2026 +0200 n0sdos: Exit read loop on error n0sdos has no way for the drive to signal an error, but if we just leave when reading the next sector failed there should at least be a blinking error LED. commit 7c824ff4cff60d1b6aa4d18640f3ee6e14333c81 Author: Ingo Korb Date: Sat Oct 10 16:46:28 2026 +0200 fileops: free buffers after opening if open failed Add an explicit freeing of buffers to file_open_previous and file_open that triggers if the buffer isn't actually set up for reading writing. This ensures that downstream code (e.g. various fastloaders) that look for the buffer with find_buffer don't find it if opening the file failed due to an error. commit 24559adfcebf93bd1c48cc0d536f81286d497183 Author: Ingo Korb Date: Sat Oct 10 15:30:53 2026 +0200 fix detected_loader type confusion detected_loader had inconsistent (but compatible) types between the declaration and definition, which newer gcc versions warn about. Fix by using the intended fastloader_t type everywhere. commit beecd2e35048eb70d82608684e9f1d959ceda00a Author: Ingo Korb Date: Sat Oct 10 15:29:08 2026 +0200 add nonstring attribute to some constants gcc 15 has started to warn about assigning a constant string to an array that is too small to hold the terminating 0. Add the nonstring attribute (and a compatibility header for gcc <8) to the two instances where this is intentional. commit 210ffd026e058e1a1a567ed01472c2ba6afe72a6 Author: Ingo Korb Date: Sat Oct 10 15:15:16 2026 +0200 Update copyright notices for 2026