Commit Graph

504 Commits

Author SHA1 Message Date
Toni Riikonen
1859e7cf68 Floppy disks sound emulation prototype for reviewing (#6166)
* Initial spindle emulation working for windows atleast

* Spingle motor spin-up, spin-down implemented with smooth transitions to motor-on loop.

* Moved fdd audio emulation to a separate file

* Multiple drives sound emulation

* Single sector movement sound emulations implemented

* Rename project to Immersive86Box and update details

Updated README to reflect the new project name and added details about the Immersive86Box features and future plans.

* Revise contribution guidelines in CONTRIBUTING.md

* Update vulnerability reporting instructions

* System fan-sound next feature after basic fdd sound emulation is ready

* v0.5 multitrack audio seek sfx

* Removed unnecessary stuff

* no .vs folder for git

* Added currently used fdd sound effects and readme.txt for source of the files and intallation instructions

* Add audio emulation installation instructions

Added instructions for audio emulation installation.

* Code and audio samples merged

* Simplify audio emulation installation instructions

* FDC seeking fixed, not instant anymore drive is set to busy during the operation and when it's finished at call fdc to set the appropriate fdc flags.

Also added time logic to fdd to calculate seek duration and a callback function for it.

* FDD sound samples volume control

* Menu options to enable / disable fdd sound for all drives.
DISABLE_FDD_AUDIO definition added, to disable the feature via cmake/build.

* Revert readme etc. changes

* Revert "Revise contribution guidelines in CONTRIBUTING.md"

This reverts commit 98a0478225.

* Revert "Update vulnerability reporting instructions"

This reverts commit 7d32cb659b.

* Fixed merge issue

* Removed excess files

* Fixed PCJr seeking not to break the FDC implementation. Now seeking will take the "correct" amount of time for each system and the seek time is based on the track count. E.g. 40 track FDD system causes 40 track seek time to be 80/40 * 6ms * 40 tracks + 50ms = 480ms + 50ms -> 530ms.

80 track system full seek is 80/80 * 6ms * 80 + 50ms = 530ms, 40 track seek would take 240 + 50 = 290ms.

* Fixed PS/1, PS/2 and PS/55 FDD issues.

* FDD_AUDIO: Updating samples looked in executablePath/samples and if now found there, looks in the executable directory

* Updated installation instructions

* Removed samples path strcat use

* fdd_audio 5.25 samples and support added

* FDD audio timing/volume tunings

* Timing fixes for authentity and special longer timings for PCJr

* Fixed second drive motor keeps running when first drive is only accessed.

* Fixed PCJr random failure issue, timings

* CodeQL fix for load_wav-function. Check the filename to be proper filename

* Revert "Fixed second drive motor keeps running when first drive is only accessed."

This reverts commit 307b173ae7.

* Teac 5.25" drive samples added. Added per drive audio selection to FDD settings.

* Fixed mistake in samples folder recreation

---------

Co-authored-by: Toni Riikonen <domppari@hotmail.com>
2025-09-22 01:03:07 +02:00
RichardG867
25146643f9 Migrate remaining machine-specific checks from internal name to init function 2025-09-19 19:41:01 -03:00
OBattler
81e4d95fc7 Config: Fix HDC migration to avoid "internal" devices on hard disk controllers above the first and also remove them from the config on save. 2025-09-16 22:14:52 +02:00
RichardG867
d4f5331607 Fix full screen command line parameter 2025-09-05 17:38:49 -03:00
OBattler
15231c19aa Config: Save and restore the full screen state if window size and position is set to be remembered. 2025-09-03 00:56:12 +02:00
OBattler
6f71e92385 Implemented the "Parallel port FIFO" mode of ECP, made config.c sanitize the jumpered DMA on load and save, and made the PC87306 no longer able set the ECP dma if one is jumpered. 2025-08-31 23:33:42 +02:00
OBattler
de64f74c30 CD-ROM: Add configuration option to bypass CRC and ECC checks. 2025-08-31 21:29:32 +02:00
RichardG867
a55736282b config: Fix incorrect logic in an unused path for machine merge migration 2025-08-30 13:51:50 -03:00
OBattler
941d0850de Removed the prefixes. 2025-08-29 22:47:01 +02:00
OBattler
50cf7330a3 Added the ability to remap scan codes in the configuration file. 2025-08-29 22:41:00 +02:00
Cacodemon345
4f81c12b81 Add ability to switch color scheme from system default on Windows 2025-08-28 14:34:39 +06:00
Cacodemon345
18cdab52ac Port remaining PCem OpenGL renderer features 2025-08-27 13:01:55 +06:00
RichardG867
6486c5839a Fix warning in config.c 2025-08-26 14:50:37 -03:00
RichardG867
cb62be2663 Overhaul machine migration system with BIOS migration for machine merges 2025-08-26 14:49:41 -03:00
Cacodemon345
74e3c83bed Custom EDIDs 2025-08-26 01:42:59 +06:00
David Hrdlička
e3fe30cac5 Save VMM path relative to the EXE path 2025-08-24 23:15:44 +02:00
Jasmine Iwanek
03006ca078 More progress towards 2nd gameport support 2025-08-22 21:58:42 -04:00
David Hrdlička
1d97fd1274 Call load_global even with an empty config to populate default values 2025-08-21 19:14:33 +02:00
David Hrdlička
341b1a52a6 Fix -E argument; add ifdefs for SDL 2025-08-21 17:17:52 +02:00
David Hrdlička
b111b66949 Enable manager by default 2025-08-21 16:57:02 +02:00
David Hrdlička
b37cb502ba Implement default VMM directory 2025-08-21 16:51:36 +02:00
David Hrdlička
979d772ffe Add global config toggle for built-in manager 2025-08-21 15:28:32 +02:00
Cacodemon345
43db96831d Hook up CGA composite controls to rest of the emulator 2025-08-21 02:32:46 +06:00
OBattler
58d3073775 Added the option to force constant mouse updating. 2025-08-19 21:03:09 +02:00
Alexander Babikov
c6a75fa693 Fully split off global and local config file loading 2025-08-17 16:44:17 +05:00
OBattler
c3fae26ec7 Config: Introduce config_load_global() and config_save_global(). 2025-08-15 20:22:28 +02:00
OBattler
3a8fa196a8 Config: Use the correct default value for jumpered internal ECP DMA. 2025-08-14 09:19:22 +02:00
OBattler
a276ae94f8 ECP DMA jumpers, configuration via MBDMA where supported, and the Radisys Configuration device. 2025-08-13 12:52:24 +02:00
OBattler
84d50733d1 Config: Low the maximum size being checked for, to see if this fixes the warning. 2025-08-10 22:50:20 +02:00
David Hrdlička
9e7ecb8dba Merge branch 'master' into feature/global-config 2025-08-06 12:26:10 +02:00
Miran Grča
075e0831db Merge pull request #5878 from jriwanek-forks/ns-50
Network Switch Support (devbranched as not finished yet)
2025-08-03 01:04:35 +02:00
OBattler
8222bd1dba Some keyboard-related special casing for the PC5086, so the keyboard is locked to PC/XT but PS/2 mouse remains usable. 2025-08-03 00:40:14 +02:00
Jasmine Iwanek
2dc28d39b1 Network Switch support
Co-Authored-By: Alexander Babikov <2708460+lemondrops@users.noreply.github.com>
Co-Authored-By: cold-brewed <47337035+cold-brewed@users.noreply.github.com>
2025-08-02 16:18:09 -04:00
Cacodemon345
c464921428 Fix incorrect internal name 2025-08-03 01:30:01 +06:00
Cacodemon345
346d449643 Config migration for Panasonic/MKE configurations without model selection 2025-08-03 01:27:39 +06:00
OBattler
b9e294b781 Trned the LPT ports into device_t's. 2025-08-02 14:51:28 +02:00
RichardG867
1b2f2d7f75 config: Rework HDC migration to be in line with previous migrations 2025-08-01 17:53:02 -03:00
Alexander Babikov
81ac0d786e Fix MKE bus channels 2 and 3 not being usable 2025-07-30 16:26:10 +05:00
OBattler
7f7877e68c Config: Set an appropriate default type drive for MKE CD-ROM drives in configurations from before the type selection. 2025-07-30 11:30:00 +02:00
Alexander Babikov
bfd84a8be4 MKE: Fix channel not being saved (#5845) 2025-07-29 21:47:06 -03:00
OBattler
c675da4de7 MKE CD-ROM: Fix disc change detection, move model selection to CD-ROM type, and properly implement support for the up to 4 drives supported by the controller. 2025-07-29 22:40:02 +02:00
OBattler
12deafbe1d Config: Add some sanity checks. 2025-07-29 15:01:12 +02:00
Miran Grča
07bbf62563 Merge pull request #5825 from Cacodemon345/mke
Panasonic/MKE CD-ROM interface backport from PicoGUS
2025-07-27 17:46:27 +02:00
OBattler
0637b316ad Added keyboard type selection. 2025-07-27 15:23:43 +02:00
Cacodemon345
ecba9783b3 Merge remote-tracking branch 'origin/master' into mke 2025-07-27 02:27:14 +06:00
OBattler
ca400e11dd Implemented the CMD-648 PCI IDE controller, gave it to the CUBX which has it on-board, and added CMD-646 and CMD-648 as standalone options for PCI tertiary+quaternary controllers. 2025-07-26 20:38:15 +02:00
Cacodemon345
3933e032b0 Merge branch 'master' into mke 2025-07-26 01:13:59 +06:00
OBattler
64e85fdfbc Retooled ZIP emulation into more expansible Removable Disk emulation, ZIP 100 and 250 types remain selectable, alongside the new 86Box (ie. generic) option. 2025-07-25 16:30:40 +02:00
Cacodemon345
472f0cb7d9 Non-working MKE/Panasonic interface 2025-07-25 16:33:53 +06:00
OBattler
9063bbe68b Second and last part of the icon indicator work. 2025-07-23 15:53:34 +02:00