summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/imagedev/floppy.cpp
Commit message (Collapse)AuthorAgeFilesLines
* enmirage: fixed and updated to load and play via MIDI, panel controls hooked ↵ tim lindner2021-06-031-1/+37
| | | | up [Tim Lindner]
* floppy: Change the formats from an intrusive list to a vector Olivier Galibert2021-05-271-17/+8
|
* flux viewer switched on by mistake Olivier Galibert2021-05-261-1/+1
|
* vtech: Add floppy formats and fs Olivier Galibert2021-05-261-1/+1
|
* floppy: Allow the vtech floppy with its 32.2us gaps read back unscathed Olivier Galibert2021-05-251-1/+28
|
* floppy.cpp: Disable new code when FLUX_SCREEN is #defined as 0 (and thereby ↵ AJR2021-05-251-27/+34
| | | | work around crash with some disks)
* flux screen: accelerate writes Olivier Galibert2021-05-251-2/+18
|
* Experimental flux viewer, activate by #define FLUX_SCREEN 1 in floppy.cpp Olivier Galibert2021-05-251-1/+171
|
* reorganize the floptool code, add some write support Olivier Galibert2021-05-241-11/+11
|
* pc_formats: Believe it or not, but it seems there has been released ↵ Olivier Galibert2021-05-161-0/+2
| | | | pc-format ipfs
* floppy: first steps on metadata, and hopefully make gcc happier on enumerate Olivier Galibert2021-04-281-3/+3
|
* floppy: start block-devicing fielsystem support Olivier Galibert2021-04-281-6/+13
|
* Allow UI file manager to create floppy images before machine is started AJR2021-04-141-2/+3
|
* floppy: Fix an annoyingly subtle write bug Olivier Galibert2021-03-291-5/+6
|
* Turned off log output per step. Michael Zapf2021-03-211-1/+1
|
* apple2gs: updates [R. Belmont] arbee2021-03-151-1/+10
| | | | | | - Fix 3.5" floppy motor sound never turning off - Fix $C00X and $C01X readbacks to match hardware (GitHub issue #7867) - Some minor cleanup and modernization
* swim2: Correct writing Olivier Galibert2021-03-061-4/+4
| | | | floppy: Correct index duration (2ms, not 20us) and polarity in superdrive
* floppy: make format determination earlier Olivier Galibert2021-03-051-7/+12
|
* Copypasta my love, finish fixing for osx Olivier Galibert2021-03-051-2/+2
|
* fs_prodos: Explain the init better Olivier Galibert2021-03-051-7/+4
| | | | floppy: Don't fail creation because the extension is unknown
* floppy: Beginning of the support for preformatted floppy images. Olivier Galibert2021-03-051-4/+118
| | | | | | 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)
* superdrive: Theoretically support 720K MFM Olivier Galibert2021-03-041-1/+1
|
* floppies: Turn the format arrays into function calls. Create a default ↵ Olivier Galibert2021-03-021-17/+68
| | | | "mfm", "fm" and "pc" list of formats. Their contents, and which driver uses what, may need some tuning.
* mac128: Implement the PWM (NEW_IWM only), fix the via clocks Olivier Galibert2021-02-231-0/+14
| | | | superdrive: Hopefully implement the HD/DD detection
* floppy: ignore set_write_splice when the motor is not running Olivier Galibert2021-02-141-1/+1
|
* apple floppy: Correct the dskchg polarity. Olivier Galibert2021-02-121-2/+2
|
* floppy: Filter out the writes when write protected, useful when when the ↵ Olivier Galibert2021-02-121-0/+16
| | | | apple2gs does a packet send (e.g a write) over DCD with write protect forced on (to avoid damaging a possibly present disk).
* floppy 525: Better wpt management Olivier Galibert2021-02-041-7/+18
|
* 2gs: Fixes, and more fixes Olivier Galibert2021-02-041-1/+1
|
* 2gs: Better floppy interaction Olivier Galibert2021-02-041-10/+25
|
* iwm: remove disable_mon, move to floppy Olivier Galibert2021-01-311-2/+6
|
* floppy: Be really sure a cleared cache is seen as such Olivier Galibert2021-01-251-1/+1
|
* floppy.cpp: as_ticks returns a u64, so go unsigned all the way AJR2021-01-251-3/+1
|
* floppy: When the floppy head stays on an unformatted track from more than an ↵ Olivier Galibert2021-01-251-1/+1
| | | | hour and ten minutes and reading happens then interval_index*2+1 overflows. Wow. Found and tracked down by Colin Howell, with much thanks.
* floppy: Add dir read on apple floppies Olivier Galibert2021-01-231-0/+3
|
* flopimg: Fix gcr checksum Olivier Galibert2021-01-221-1/+1
|
* Apple 2 floppy drive (diskiing, diskiing13): added sounds (#7685) leesaudan22021-01-211-2/+4
|
* swim2: Add mfm read, fix mfm write and mfm detection. SWIM2 seems done at ↵ Olivier Galibert2021-01-171-9/+5
| | | | that point.
* floppy: fix regression in new floppy [O. Galibert] arbee2021-01-161-2/+2
|
* floppy: fix precision issue and missing cache clear on write Olivier Galibert2021-01-161-7/+8
|
* swim2: Add reading, writing gcr up to track 63. Olivier Galibert2021-01-151-26/+134
|
* mac/swim2: Add apple drivers and associated communications Olivier Galibert2021-01-111-0/+170
|
* Provide the variants to the floppy formats Olivier Galibert2021-01-091-4/+4
|
* Actually build the accepted variants list in floppy Olivier Galibert2021-01-091-206/+82
|
* formats/apridisk.cpp: Don't use megabytes of stack space. Vas Crabb2020-10-101-5/+3
|
* Got rid of global_alloc/global_free. Vas Crabb2020-10-031-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | The global_alloc/global_free functions have outlived their usefulness. They don't allow consistently overriding the default memory allocation behaviour because they aren't used consistently, and we don't have standard library allocator wrappers for them that we'd need to use them consistently with all the standard library containers we're using. If you need to change the default allocator behaviour, you can override the new/delete operators, and there are ways to get more fine-grained control that way. We're already doing that to pre-fill memory in debug builds. Code was already starting to depend on global_alloc/global_free wrapping new/delete. For example some parts of the code (including the UI and Windows debugger) was putting the result of global_alloc in a std::unique_ptr wrappers without custom deleters, and the SPU sound device was assuming it could use global_free to release memory allocated with operator new. There was also code misunderstanding the behaviour of global_alloc, for example the GROM port cartridge code was checking for nullptr when a failure will actually throw std::bad_alloc. As well as substituting new/delete, I've made several things use smart pointers to reduce the chance of leaks, and fixed a couple of leaks, too.
* Complete sound modernization of remaining devices. Legacy callbacks and ↵ Aaron Giles2020-09-281-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | stream_sample_t removed. (#7297) * a2mcms/coco_ssc/gus/cassette/floppy/8364_paula/laserdsc/s2636/spg2xx_audio/arcadia/channelf/cmi01a/cps3/dai_snd: Update to new stream callbacks * dsbz80/elan_eu3a05/exidy/exidy440/flower/geebee/gomoku/gridlee: Update to new stream callbacks * hyprolyb/lynx/micro3d/phoenix/pleiads/polepos: Update to new sound stream callback * redbaron/segag80r/segausb/seibu/snk6502/socrates/special/svis_snd: Update to new stream callbacks. * tiamc1/turrett/tvc/tx1/vboy/vc4000: Update to new stream callbacks * warpwarp/wiping/wswan/xavix/esq1/istrebiteli/milton6805/pv1000/mega32x/gic: Update to new stream callback * sound: Remove legacy stream support and stream_sample_t * * gomoku/wiping: Remove silly mixer tables in favor of math * micro3d: Remove tiny vectors in favor of fixed arrays * phoenix: Went back to std::unique_ptr array for LFSR * wiping: Fixed the scale factor.
* Significant internal changes to sound streams (#7169) Aaron Giles2020-09-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Significant internal changes to sound streams: Abstracted buffers of sound data into an internal stream_buffer class, with helper classes read_stream_view and write_stream_view which offer readable/writable "views" into the buffers Internal sound calculations are all done using stream_buffer::sample_t, which is a 32-bit float; existing callbacks are supported through an adapter that converts to/from signed 32-bit integers Improved behavior of dynamic stream sample rate changes to resample a short runway of data to preserve continuity across transitions Created a new stream update callback which passes a std::vector of read_stream_views for inputs, and a std::vector of write_stream_views for outputs Updated core mixer and speaker devices to the new stream update callback Updated the following sound cores to the new stream update callback: ay8910, dac, k054539, msm5205, namco, netlist, okim6295, pokey, samples, sn76496, sp0250, tms5220, tms57002, upd7759, vgm_visualizer, volt_reg Changed existing stream update callback to make inputs explicitly const and the output pointers const as well, since they are re-used across calls; fixed several engines that violated this rule Sound_manager::stream_alloc can no longer automatically connect to a device's sound_stream_update callback; instead, the stream_alloc() on the sound_device_interface should be called; updated many violators of this rule Streams can be created with SAMPLE_RATE_OUTPUT_ADAPTIVE, which dynamically tracks the sample rate of its first downstream output, or with SAMPLE_RATE_INPUT_ADAPTIVE, which tracks the sample rate of its first input Changed resampling to be a separate sound_stream that is invoked as needed, opening the path for selectable resampling implementations Added a flags parameter to the new stream allocation method that allows you to specify a that input streams should not be resampled Exposed stream_input and stream_output classes directly, simplifying access to user gains and stream names Added a simple dynamic compressor to sound_manager to provide nicer results when overdriven sound happens; compression does not affect speaker_report results Improved verbose speaker_report to print a graph of peaks over time More aggressive debugging enabled for now even in release builds (should be disabled prior to next release) via SOUND_DEBUG define in sound.h; report any assertions for fixing
* Spring cleaning: Vas Crabb2019-11-011-1/+0
| | | | | | | | | | | | * Changed emu_fatalerror to use util::string_format semantics * Fixed some incorrectly marked up stuff in build scripts * Make internal layout compression type a scoped enum (only zlib is supported still, but at least the values aren't magic numbers now) * Fixed memory leaks in Xbox USB * There can only be one "perfect quantum" device - enforce that only the root machine can set it, as allowing subdevices to will cause weird issues with slot cards overiding it * Allow multiple devices to set maximum quantum and use the most restrictive one (it's maximum quantum, it would be minimum interleave) * Got rid of device_slot_card_interface as it wasn't providing value * Added a helper template to reduce certain kinds of boilerplate in slots/buses * Cleaned up some particularly bad slot code (plenty more of that to do), and made some slots more idiomatic
* srcclean (nw) Vas Crabb2019-07-281-7/+7
|