Commit Graph

53 Commits

Author SHA1 Message Date
Alexander Babikov
9f4886e031 Only define FLUIDSYNTH_NOT_A_DLL when linking statically 2024-07-15 10:59:35 +05:00
Alexander Babikov
ad51c62451 Remove a redundant and pointless #ifdef in midi_fluidsynth.c 2023-11-18 02:31:49 +05:00
Jasmine Iwanek
ee695e71f9 More sonarlint work 2023-07-25 17:59:22 -04:00
Alexander Babikov
c6b0c9f2e8 midi_fluidsynth.c: Adjust the config defaults and limits to be in line with (latest) FluidSynth defaults 2023-07-13 04:38:58 +05:00
Alexander Babikov
908108b6ef midi_fluidsynth.c: Don't use API functions deprecated in FluidSynth v2.2.0 if building with v2.2.0 or later 2023-07-13 04:38:55 +05:00
Alexander Babikov
8d07acd0b5 midi_fluidsynth.c: minor cleanup
Remove unneeded #includes, unused #defines, use proper types for FluidSynth-specific structs
2023-07-13 03:20:26 +05:00
RichardG867
4ecfdb4834 midi: Switch to dynamic fluidsynth 2023-07-08 13:49:02 -03:00
Jasmine Iwanek
e39dde3413 Magic numbers for sound freq changed to defines 2023-03-01 03:00:47 -05:00
Jasmine Iwanek
3fe4f75108 A bit more clang-format 2022-11-19 11:53:07 -05:00
Jasmine Iwanek
6919451ae4 Fix string offsetting 2022-11-09 23:19:17 -05:00
Jasmine Iwanek
645732b7bf clang-format in src/sound/ 2022-09-18 17:22:55 -04:00
Cacodemon345
b793e9fe2b fluidsynth: Add channel pressure handling 2022-08-03 01:39:43 +06:00
David Hrdlička
e60af6c29d Clean up plat.h a bit 2022-04-20 01:03:39 +02:00
Jasmine Iwanek
3431e01d4a src/sound 2022-04-12 17:26:07 -04:00
Cacodemon345
cbff8e0927 fluidsynth: Fallback to system soundfont if one isn't specified 2022-03-20 16:22:18 +06:00
Jasmine Iwanek
c195b348a7 src/sound 2022-03-13 10:03:39 -04:00
Jasmine Iwanek
297909a884 midi out device named correctly to aid code readability 2022-03-13 09:00:03 -04:00
Jasmine Iwanek
f7084993c3 Formatting updates in src/sound + related includes 2022-02-25 22:06:27 -05:00
David Hrdlička
6a63ae21f8 Remove the USE_OPENAL define as the reason for its introduction is gone 2022-02-20 00:46:24 +01:00
RichardG867
70219ec6a2 midi_fluidsynth: Also look for libfluidsynth2 on Linux 2022-02-14 11:54:26 -03:00
Jess Lovelace
f18615ae87 refactored device_t and all declarations 2022-02-02 16:31:22 -05:00
Jasmine Iwanek
c1d2a50175 Give OpenAL the ability to be optional 2022-01-29 20:25:00 -05:00
David Hrdlička
7381ab6928 Minor changes to threading
- Renamed `cpp11_thread.cpp` to `thread.cpp`
- Removed features that are only supported by Win32 threads (`thread_wait` with timeout and mutex with spinlock)
- Fixed formatting in `thread.cpp`
2021-12-17 19:59:25 +01:00
RichardG867
02df33d1aa Change some dynamically loaded library names to reflect the new build infrastructure 2021-11-08 23:54:41 -03:00
Cacodemon345
426df48151 Add correct library names for macOS 2021-08-29 23:50:22 +06:00
OBattler
0faf6692c9 WARNING: CONFIGS MIGHT PARTIALLY BREAK WHERE DEVICE NAMES HAVE CHANGED.
Changes to device_t struct to accomodate the upcoming PCI IRQ arbitration rewrite;
Added device.c/h API to obtain name from the device_t struct;
Significant changes to win/win_settings.c to clean up the code a bit and fix bugs;
Ported all the CPU and AudioPCI commits from PCem;
Added an API call to allow ACPI soft power off to gracefully stop the emulator;
Removed the Siemens PCD-2L from the Dev branch because it now works;
Removed the Socket 5 HP Vectra from the Dev branch because it now works;
Fixed the Compaq Presario and the Micronics Spitfire;
Give the IBM PC330 its own list of 486 CPU so it can have DX2's with CPUID 0x470;
SMM fixes;
Rewrote the SYSENTER, SYSEXIT, SYSCALL, and SYSRET instructions;
Changed IDE reset period to match the specification, fixes #929;
The keyboard input and output ports are now forced in front of the queue when read, fixes a number of bugs, including the AMI Apollo hanging on soft reset;
Added the Intel AN430TX but Dev branched because it does not work;
The network code no longer drops packets if the emulated network card has failed to receive them (eg. when the buffer is full);
Changes to PCI card adding and renamed some PCI slot types, also added proper AGP bridge slot types;
USB UHCI emulation is no longer a stub (still doesn't fully work, but at least Windows XP chk with Debug no longer ASSERT's on it);
Fixed NVR on the the SMC FDC37C932QF and APM variants;
A number of fixes to Intel 4x0 chipsets, including fixing every register of the 440LX and 440EX;
Some ACPI changes.
2020-11-16 00:01:21 +01:00
RichardG867
0a6e3ee1e2 Improve FluidSynth library dependency error 2020-06-18 21:35:42 -03:00
David Hrdlička
7d2f9189d3 win: Re-number string table entries 2020-04-26 21:03:31 +02:00
David Hrdlička
a505894a10 Move all include files to src/include
- 86Box's own headers go to /86box
- munt's public interface goes to /mt32emu
- all slirp headers go to /slirp (might want to consider using only its public inteface)
- single file headers from other projects go in include root
2020-03-29 19:53:29 +02:00
OBattler
490c04fcae Current WIP code. 2020-02-29 19:12:23 +01:00
OBattler
46d0ed2baa Rewritten 808x CPU emulation core based on reenigne's XTCE, VisiOn, SnatchIt, and 8088 MPH now work correctly;
Fixed PC speaker sound volume in PIT mode 0;
A few CPU emulation clean-ups;
Hard disk controller changing redone in a less messy way;
Re-added the long-missing key send delay handling to the XT keyboard handler;
Fixed a bug that was causing SLiRP not to work when compiled with MingW/GCC 7.3.0-2 or newer;
Some serial mouse and port fixes;
A lot of changes to printer emulation, mostly based on DOSBox-X;
Printer PNG writer now uses statically linked libpng;
Added support for the HxC MFM floppy image format and upped 86F format version to 2.12;
Ported various things from PCem and some from VARCem;
Added the S3 86c801/805 emulation (patch from TheCollector1995);
Fixed and renamed the EGA monitor options;
Better synchronized the 808x to the PIT and the CGA;
Fixed the CGA wait state calculation;
Cleaned up some things in mem.c;
Fixed some things in the floppy emulation to make VisiOn get the correct errors from the copy protection disk;
Fixed several renderer-related bugs, including the SDL2 renderer's failure to take screenshots;
The Jenkins builds are now compiled with MingW/GCC 7.4.0-1 and include all the required DLL's.
2019-02-06 03:34:39 +01:00
OBattler
5641519d5f Slight sound cleanups. 2018-10-26 04:05:29 +02:00
OBattler
6155802b59 Split generic CD-ROM from SCSI-style CD-ROM;
Redid the way SCSI and ATAPI devices are handled;
Slight timings change in the NCR 5380;
Devices are now closed by device_close_all() in the reverse order of the one in which they were started;
Slight changes to some code in win/;
Added the WM_HARDRESET and WM_SHUTDOWN window messages for configuration manager purposes.
2018-10-10 22:33:24 +02:00
OBattler
ea5a226a97 Brought the ISA memory card emulation and some other things up to par with VARCem and fixed the ISA memory card configuration. 2018-09-06 14:38:43 +02:00
OBattler
950ce8f5aa Added the 3Com 3C503 Network card;
Several bug fixes;
Preliminar addition of the SDL 2 renderer (does not yet work correctly in full screen mode);
SCSI devices no longer have configurable LUN's (this matches the configurability of real SCSI devices);
SCSI LUN's are now handed by the device's handler;
Removed all unused strings;
Removed some unused code files;
Significantly rewrote the bus mouse emulation.
2018-07-15 01:41:53 +02:00
OBattler
5d8deea63b Changes to logging - nothing (other than some parts of pc.c) uses the global pclog anymore (and logs will be almost empty (until the base set logging flags is agreed upon);
Fixes to various hard disk controllers;
Added the Packard Bell PB640;
Fixed the InPort mouse emulation - now it works correctly on Windows NT 3.1;
Removed the status window and the associated variables;
Completely removed the Green B 486 machine;
Fixed the MDSI Genius;
Fixed the single-sided 5.25" floppy drive;
Ported a CPU-related commit from VARCem.
2018-05-21 19:04:05 +02:00
OBattler
16a7b1cef2 Removed win_status.c and the related stuff as it was not updated for a while and no longer displayed useful information. 2018-04-26 13:33:29 +02:00
OBattler
a412ceb4d9 Applied all relevant PCem commits;
Extensively cleaned up and changed the CD-ROM code;
Removed CD-ROM IOCTTL (it was causing performance and stability issues);
Turned a lot of things into device_t's;
Added the PS/1 Model 2011 XTA and standalone XTA hard disk controllers, ported from Varcem;
Numerous FDC fixes for the PS/1 Model 2121;
NVR changes ported from Varcem;
The PCap code no longer requires libpcap to be compiled;
Numerous fixes to various SCSI controllers;
Updated NukedOPL to 1.8;
Fixes to OpenAL initialization and closing, should give less Audio issues now;
Revorked parts of the common (S)VGA code (also based on code from QEMU);
Removed the Removable SCSI hard disks (they were a never finished experiment so there was no need to keep them there);
Cleaned up the SCSI hard disk and Iomega ZIP code (but more cleanups of that are coming in the future);
In some occasions (IDE hard disks in multiple sector mode and SCSI hard disks) the status bar icon is no longer updated, should improve performance a bit;
Redid the way the tertiary and quaternary IDE controllers are configured (and they are now device_t's);
Extensively reworked the IDE code and fixed quite a few bugs;
Fixes to XT MFM, AT MFM, and AT ESDI code;
Some changes to XTIDE and MCA ESDI code;
Some fixes to the CD-ROM image handler.
2018-04-25 23:51:13 +02:00
OBattler
b1efb99ed6 Applied a whole slew of patches, getting RAM usage down by a further 10 MB. 2018-03-19 01:02:04 +01:00
OBattler
081d114cf1 Modified midi_fluidsynth.c so fluidsynth.h (and with it, libfluidsynth) is no longer needed. 2018-02-26 13:45:11 +01:00
OBattler
4a829b31ad Commented out a lot of excess logging;
Updated Makefile.local to add comments about NCR 53C810 and Voodoo log enable flags.
2017-12-28 20:42:45 +01:00
waltje
fc34a6eaf3 Re-worked mouse code to be devices (to allow for configuration.)
Re-worked the system pathnames (pc.c), renamed cfg_path to usr_path.
Other small things here and there.
Logitech bus mouse re-worked, should be OK now.
2017-12-04 12:01:56 -05:00
waltje
bfe038ded9 Cleanup, mostly network threading madness. Statusbar is now created at hard reset, IF the configuration has changed. Other minor things. 2017-10-29 04:20:59 -05:00
waltje
4a1bd38435 Network portability fixes - SLiRP and Pcap now both work on Linux and FreeBSD. 2017-10-28 03:33:05 -04:00
waltje
7f24ba9fe9 Another cleanup run. 2017-10-17 02:01:03 -04:00
OBattler
2792da5432 Refactored AHA-154x and BusLogic emulation and made them use a common core;
Fixed AHA-154x scatter/gather transfers;
Two-phased SCSI read-direction commands;
Made scsi_bus.c use a dynamically malloc'd buffer instead of a giant fixed-size buffer;
The AHA-154x/BusLogic thread now uses mutexes;
The BusLogic BT-545C is now the BT-545S;
Added the BusLogic BT-542BH;
The AHA-1542CF now again uses the v2.11 BIOS as the CD booting now works;
Applied PCem commit that adds NMI support to the recompiler;
Applied PCem commit that adds the IBM XT 286;
Applied PCem commits that have to do with sound, including the ES1371;
Fixed the NCR5380 output data register;
Moved the SLiRP mutex stuff from win.c to the appropriate network files;
Added sanity checks to everything in win_thread.c.
2017-10-14 07:03:19 +02:00
waltje
57c2a3615e Hmm, will it pick it up this time? 2017-10-11 05:51:42 -04:00
waltje
0c282a2edd And, of course, fluidsynth... 2017-10-11 05:47:30 -04:00
waltje
c7e3adf446 For real, this time... 2017-10-10 03:24:55 -04:00
waltje
b763887320 Hopefully fixed fluidsynth.. 2017-10-10 03:22:33 -04:00