summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/ap2_dsk.cpp
Commit message (Collapse)AuthorAgeFilesLines
* ap2_dsk.cpp: fix loading bardstl3 (#13055) Roman Donchenko2024-12-071-2/+4
| | | | | | | | I accidentally broke this in 47d8c69b, where I forgot to account for the "oddball" images from the software list. AFAICS, bardstl3 is the only software to be broken, because its images are _shorter_ than they're supposed to be. In addition, disk 3 of this image has a different size that's not listed in `identify()`, so it couldn't even be loaded before that commit. Fix that too.
* ap2_dsk.cpp/h: clean up constants (#13021) Roman Donchenko2024-12-071-97/+100
| | | | | | * convert `#define` to `constexpr`. * remove unused constants. * replace magic numbers with constants where appropriate. * Fix style issues.
* ap2_dsk.cpp: add missing error handling code (#12980) Roman Donchenko2024-11-151-6/+16
|
* ap2_dsk.cpp: add read-only support for the D13 format (#12956) Roman Donchenko2024-11-111-0/+122
| | | | | | | This is the equivalent of DSK used for 13-sector disks. While `diskiing` cannot directly boot from 13-sector disks, you can still access such disks with it (for example, using the BOOT13 and MUFFIN programs), so list the format as supported by both `diskiing13` and `diskiing`.
* formats/ap2_dsk.cpp: don't crash when loading a NIB file with an all-zero ↵ Roman Donchenko2024-10-311-3/+3
| | | | | | | track (#12926) * In this case, `levels` is empty, and `generate_track_from_levels` immediately crashes with a division by zero. To fix this, just leave the track empty instead.
* util/ioprocs.cpp: Added wrappers for common patterns. (#11608) Vas Crabb2024-02-251-191/+182
| | | | | emu/diimage.h: Removed fread overloads that allocate memory for output. util/core_file.cpp: Changed output size of load to size_t.
* Floppy format API refinements AJR2023-10-081-31/+31
| | | | | - Add noexcept to format information overrides and several simple floppy_image accessors. - Be more const-correct and use references instead of raw pointers wherever applicable. In particular, floppy_image_device::load and floppy_image_device::save now take a reference to floppy_image rather than a pointer, const-qualified in the latter case.
* formats: Use multibyte.h functions in more files AJR2023-09-171-4/+5
|
* ap2_dsk: Move the applesauce formats in their own file Olivier Galibert2022-09-281-508/+0
| | | | as_dsk: Create a common base class, merge what is currently identical
* apple: remove legacy floppy format handlers. [R. Belmont] arbee2022-09-241-496/+1
|
* srcclean pass in preparation for release branch Vas Crabb2022-09-251-3/+3
|
* woz: fix missing breaks Olivier Galibert2022-09-011-0/+3
|
* moof: Some fixes [Disk Blitz] Olivier Galibert2022-09-011-9/+131
| | | | woz: put back the save support, will destroy any disk with FLUX encoded tracks though. How to handle that is still in discussion.
* woz: Remove write support, it can't really be made reliable Olivier Galibert2022-09-011-114/+162
| | | | moof: Added support.
* woz/flux: even more fixes after some clarifications Olivier Galibert2022-08-111-12/+8
|
* woz/flux: better implementation Olivier Galibert2022-08-111-7/+11
|
* woz: handle FLUX tracks, even when somewhat broken Olivier Galibert2022-08-101-4/+32
|
* apple2: don't force ProDOS 2.5a8 to ProDOS sector order. (Github #7707) [R. ↵ arbee2022-07-281-4/+0
| | | | Belmont]
* srcclean in preparation for 0.243 Vas Crabb2022-04-241-1/+1
|
* floppy: revisit the identify returns Olivier Galibert2022-03-301-8/+77
|
* floppy: Change the internal format to flux changes, update the mfi format ↵ Olivier Galibert2022-03-301-1/+15
| | | | accordingly (keep read compatibility with the old mfi)
* floppy: remove the intermediate allocator Olivier Galibert2022-03-301-6/+6
|
* Constify the floppy image handling interface Olivier Galibert2022-03-301-21/+13
|
* apple2: split the 16 sector format in dos/prodos types Olivier Galibert2022-03-301-94/+48
|
* formats, osd, util: Started refactoring file I/O stuff. (#8456) Vas Crabb2021-08-221-58/+83
| | | | | | | | | Added more modern generic I/O interfaces with implementation backed by stdio, osd_file and core_file, replacing io_generic. Also replaced core_file's build-in zlib compression with a filter. unzip.cpp, un7z.cpp: Added option to supply abstract I/O interface rather than filename. Converted osd_file, core_file, archive_file, chd_file and device_image_interface to use std::error_condition rather than their own error enums. Allow mounting TI-99 RPK from inside archives.
* srcclean in preparation for branching release Vas Crabb2021-02-211-5/+5
|
* woz: Correct trks chunk size Olivier Galibert2021-02-161-1/+1
|
* woz: Add write Olivier Galibert2021-02-151-2/+144
| | | | some formats: Correct setting up of form factor and variant
* woz: Fix 2.0 format track length Olivier Galibert2021-02-151-2/+2
|
* Eliminate ARRAY_LENGTH template in favor of C++17's std::size AJR2021-02-141-1/+1
| | | | | | | | | | * osdcomm.h: Move definition of EQUIVALENT_ARRAY to coretmpl.h * sharc.cpp, gt64xxx.cpp, ym2413.cpp, gb_lcd.cpp, snes_ppu.cpp: Use STRUCT_MEMBER for save state registration * gio/newport.cpp, megadrive/svp.cpp, nes_ctrl/bcbattle.cpp, arm7.cpp, tms9995.cpp, pckeybrd.cpp, sa1110.cpp, sa1111.cpp, jangou_blitter.cpp, vic4567.cpp: Use std::fill(_n) instead of memset * emucore.h: Remove obsolete typedef
* Added Apple 2 disk image format: .nib (read-only support) (#7725) leesaudan22021-01-301-0/+168
| | | | This format was not supported by the new floppy subsystem. This commit provides read-only support of .nib files.
* flopimg: Change the extracted bitstreams into vector<bool> Olivier Galibert2021-01-221-94/+27
| | | | | | | flopimg: Change the extracted sectors into vector<vector<uint8_t>> flopimg: Add a Mac sector extraction apple 3.5 gcr: Generalize track creation/extraction apple 3.5 gcr: Add a pure sector format
* Provide the variants to the floppy formats Olivier Galibert2021-01-091-10/+10
|
* Merge pull request #6195 from firewave/includes R. Belmont2020-01-221-3/+3
|\ | | | | use C++ library includes (nw)
| * use C++ library includes (nw) firewave2020-01-221-3/+3
| |
* | apply2 floppy format: bake in the track count 68bit2020-01-201-3/+3
|/ | | | | | | | The APPLE2_TRACK_COUNT macro was not being expanded here, at least on gcc8. This resulted in the string "APPLE2_TRACK_COUNT" being within the specification and that in turn broke option_resolution::lookup_in_specification leading to an assertion fail with the debug checks enabled. So bake in the numeric constant to at least get things working again.
* apple2: fix recognition of .NIB images on the old diskii controller (MT ↵ arbee2019-11-221-2/+2
| | | | #7496) [R. Belmont]
* ap2_dsk: recognize ProDOS 2.5 boot block (nw) arbee2019-09-201-0/+4
|
* apple2: fix regression using 35-track disks with the legacy floppy (nw) arbee2019-08-251-1/+1
|
* srcclean (nw) Vas Crabb2019-08-251-1/+1
| | | | I'm assuming atronic.cpp was supposed to be Windows-1252 with Euro currency symbol encoding. Everyone please use UTF-8 for source files.
* ap2_dsk: recognize ProDOS 2.5 boot block (nw) arbee2019-08-081-0/+4
|
* ap2_dsk: only save 40 tracks if the disk originally had that many [R. Belmont] arbee2019-06-091-3/+6
|
* Apple II dsk 35 to 40 track zzemu-cn2019-06-091-15/+16
| | | | Change Apple II dsk format 35 track to 40 track
* Fix (unused) 3.5" head calc (nw) arbee2018-12-251-1/+1
|
* Fix (currently unused) 3.5" track calc for WOZ2 (nw) arbee2018-12-241-1/+1
|
* apple2: Support the new version 2 .WOZ images [R. Belmont] arbee2018-12-231-14/+47
|
* ap2_dsk.cpp: avoid one type of .woz corruption (nw) Peter Ferrie2018-07-291-0/+2
|
* srcclean (nw) Vas Crabb2018-05-271-1/+1
|
* apple2: Add WOZ format [O. Galibert] Olivier Galibert2018-04-241-1/+122
|
* apple2: recognize another form of DOS 3.3 in ProDOS order [R. Belmont, Peter ↵ arbee2018-04-231-0/+5
| | | | Ferrie]