summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/fsmgr.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Filesystem code refactoring (#11570) ajrhacker2023-09-271-243/+1
| | | | - Separate fs::block_t and fs::filesystem_t to a new source file and header - Remove inclusion of flopimg.h from fsmgr.h
* fsmgr.cpp: Restore trim_end_spaces as a std::string_view function and use it ↵ AJR2023-09-171-0/+6
| | | | in place of strtrimrightspace in FS code due to feedback on f5066881db7a601ba7031fbc996ab404e05e5dd5
* fsmgr.h: Cleanup AJR2023-09-171-152/+25
| | | | | | - Use multibyte.h functions for packing and unpacking words - Remove a few aliases for cstdlib functions - Convert rstr and wstr functions to std::string_view
* Changed fs::manager_t::enumerate_f() to simplify logic within file system ↵ npwoods2022-09-191-1/+12
| | | | | | | | | | | | | | | | | | | | | drivers (#10106) * Changed fs::manager_t::enumerate_f() to simplify logic within file system drivers enumerate_f() used to contain quite a bit of boilerplate logic to determine whether a particular floppy type should be added. This change attempts to move this logic outside the file system drivers to simplify the drivers. The riskiest part of this change is unformatted_image::enumerate_f(). I attempted to replicate the logic that was previously determining with unformatted image types to use, but the logic is tricky and it isn't clear to me that replicating the logic is the correct action - I may be cargo culting. * Fix to floppy_image_device::fs_enum::add_raw() * Updating FS_FAT to reflect this PR * On the advise of Sarayan, I moved the filtering to the fs::manager_t::fs_enum base class. This is actually a less intrusive change than what I originally had because it keeps the unformatted raw image handling closer to what we had previously. Some misgivings about these changes: 1. We now have fs::manager_t::fs_enum::add() being a thin call that invokes a protected method called fs::manager_t::fs_enum::add_format(). Better ideas for names are welcome. 2. It feels odd that we've removed the need to do filtering from the various FS modules, but the unformatted module has to ask the fs_enum() for its internal variables for filtering to perform the same logic. This seems to be the least worst option Feedback is welcome
* fs: new API, blk_t is probably going to change too Olivier Galibert2022-06-281-32/+46
|
* Created an initial file system implementation for OS-9 under the CoCo (#9096) npwoods2022-01-071-8/+8
| | | | | | | | * Created an initial file system implementation for OS-9 under the CoCo * Minor fixes to directory entry handling * Changed to use fsblk_t::r[8|16|24|32]b() - Changed the above functions to be const
* Move filesystem library into separate namespace and use shorter uX type ↵ AJR2021-12-311-86/+90
| | | | names there
* Filesystem code cleanup AJR2021-12-141-89/+50
| | | | | | | - Eliminate dependencies on emu.h, replacing most fatalerror calls and floptool's ersatz emu_fatalerror class with standard exception classes - Use range-based std::string constructors in some methods - Move filesystem metadata handling to a separate source file - Eliminate src/emu as an include path for libformats (necessitates kludge in ti99_dsk.cpp)
* formats/fsmgr.cpp: Don't assume string iterators can be indexed (reported by ↵ Vas Crabb2021-08-021-4/+2
| | | | coverity).
* vtech: Add floppy formats and fs Olivier Galibert2021-05-261-0/+9
|
* srcclean for release Vas Crabb2021-05-231-1/+1
|
* jasmin: Support write Olivier Galibert2021-05-161-6/+37
|
* prodos: Add file and resource reading Olivier Galibert2021-05-111-0/+117
|
* prodos: experiements in directory tree reading. Olivier Galibert2021-05-091-10/+14
|
* MacOS < 10.13 has an issue with std::get, use std::get_if instead Olivier Galibert2021-05-021-4/+4
|
* prodos: Start of read support Olivier Galibert2021-05-021-1/+8
|
* fs: Add full jasmin read support Olivier Galibert2021-04-301-15/+79
|
* fsmgr: more compiler error fighting [R. Belmont] arbee2021-04-281-0/+1
|
* fsmgr: temp hack to fix Clang compile [R. Belmont] arbee2021-04-281-0/+1
|
* floppy: first steps on metadata, and hopefully make gcc happier on enumerate Olivier Galibert2021-04-281-6/+70
|
* floppy: start block-devicing fielsystem support Olivier Galibert2021-04-281-30/+106
|
* fs_prodos: Explain the init better Olivier Galibert2021-03-051-2/+2
| | | | floppy: Don't fail creation because the extension is unknown
* floppy: Beginning of the support for preformatted floppy images. Olivier Galibert2021-03-051-0/+81
What's missing: - parameters (like the disk name when it exists) - possibly a cleanup of ram_open and friends (but not sure of the appropriate direction in which to go)