Commit Graph

2755 Commits

Author SHA1 Message Date
tildearrow e5e024c5f9
Merge pull request #633 from djtuBIG-MaliceX/hotfix/WOPL-OPLI-2x2op-missing-FeedConnect-fix
WOPL/OPLI Load bugfix for 2nd 2op pair
2022-08-15 05:35:15 -05:00
tildearrow 20c5e14f26 FC loader: the final fixes for this night 2022-08-15 04:22:14 -05:00
tildearrow 206b3af12a FC loader: aaaaaaand more fixes 2022-08-15 03:40:04 -05:00
tildearrow bef8cf5f5f FC loader: sample loop point and more fixes 2022-08-15 03:32:27 -05:00
tildearrow 4663534fa3 FC loader: preset waveforms, vibrato and stuff 2022-08-15 03:18:54 -05:00
tildearrow 15b4294532 FC loader: fix wave, sample and freq seq loading 2022-08-15 02:01:08 -05:00
tildearrow 779fc889c0 fix system definition for ES5506 - again 2022-08-14 23:34:57 -05:00
tildearrow a34c9806cb Game Boy: whoops 2022-08-14 23:30:36 -05:00
tildearrow 1a4a58d970 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-14 23:28:28 -05:00
tildearrow a8d3803efc Game Boy: now fix wave channel volume column 2022-08-14 23:28:15 -05:00
cam900 23276211f5
Fix incorrect info on ES5506 2022-08-15 13:25:31 +09:00
tildearrow f8b3c089a4 Game Boy: fix volume column 2022-08-14 23:07:19 -05:00
tildearrow 9b6730607e OPL: finally fix the carnival night zone bug
TODO: RUN TEST SUITE!
2022-08-14 19:17:03 -05:00
tildearrow cb4417824d YMZ280B: restore panning in forceIns 2022-08-14 14:26:55 -05:00
tildearrow 1b10c547e3 SoundUnit: implement switch roles flag 2022-08-14 14:19:30 -05:00
James Alan Nguyen 6344a1d23f Reported bug - 2nd 2op pair did not read ALG and FB registers to instrument patch 2022-08-14 16:09:31 +10:00
tildearrow 774a949cca GUI: fix labels being empty 2022-08-13 18:16:24 -05:00
tildearrow bb5cee4a66 GUI: add pattern label customization settings 2022-08-13 18:00:29 -05:00
tildearrow ee16d20047 add demo song
by brickblock369
2022-08-13 15:53:47 -05:00
tildearrow 02fb5abc02 add ability to save ins/wave as .dmp/.dmw
also saving wavetables as raw data
2022-08-13 15:43:13 -05:00
tildearrow 041a76ad81 raw sample import fixes 2022-08-13 06:25:11 -05:00
tildearrow 91f9352eaf implement raw sample import
untested
2022-08-13 05:50:36 -05:00
tildearrow ce2d322e47 GUI: add replace for wave/sample and prepare for
raw sample import
2022-08-13 04:17:32 -05:00
tildearrow 2743c60cf3 Game Boy: fix wave channel auto-enable on wave cha 2022-08-12 23:09:34 -05:00
tildearrow 39feda54ac OPZ: volume macro should go to 127 2022-08-12 04:11:17 -05:00
tildearrow b156336216 GUI: fix Game Boy ins edit crashes 2022-08-11 14:27:33 -05:00
tildearrow 00ae5b4142 GUI: fix volume macro always being 15
issue #629
2022-08-11 11:30:45 -05:00
tildearrow 01d1556fb4 GUI: rename "system" to "chip"
"system" made sense when Furnace was a .dmf tracker and had
compound setups like Genesis (YM2612+SN)

however, it doesn't make too much sense now when compared to "chip"
2022-08-11 05:38:31 -05:00
tildearrow 0528f4e7bd Game Boy: possibly fix wave soft env 2022-08-11 05:04:35 -05:00
tildearrow 81482c2f2b QSound: SAMPLE LOOP BUG DEBUG BEGIN 2022-08-11 04:50:16 -05:00
tildearrow 762b3b2928 PCE: per-chan osc DAC mode overflow fix 2022-08-11 02:08:24 -05:00
tildearrow ed98df91d2 turn on proper noise layout by default 2022-08-11 02:05:05 -05:00
tildearrow 7e7a5a8e30 Game Boy: software envelopes, part 4
fixes
2022-08-11 01:34:18 -05:00
tildearrow d30f9bc8a0 Game Boy: software envelopes, part 3
zombie mode
2022-08-11 01:24:53 -05:00
tildearrow 340052cf0a Game Boy: add chip revision flag 2022-08-11 00:46:15 -05:00
tildearrow 92f40774e4 Game Boy: I hate your artificial limitations
fixes a DefleMask demo module
2022-08-10 23:56:25 -05:00
tildearrow 51db06298b Game Boy: fix volume regression 2022-08-10 23:53:47 -05:00
tildearrow 4b18d0920b Game Boy: software envelopes, part 2 2022-08-10 17:02:45 -05:00
tildearrow bccecc4c07 Game Boy: software envelopes, part 1 2022-08-10 16:27:29 -05:00
tildearrow df10b6cc59 Game Boy: hardware sequences, part 3
the previous commit was part 2
2022-08-10 14:16:26 -05:00
tildearrow 28698beaf3 dev106 - Game Boy: implement hw seq
and prepare for software envelope maybe
2022-08-10 01:55:44 -05:00
tildearrow da8f7dabd5 i guess
to anybody who bothers reading the contents of this commit:
who cares? you promised me C163 would become the name
but nobody has bothered to call it C163 for an entire week.

there's no point on pushing a dead idea forward!
2022-08-09 14:53:31 -05:00
tildearrow 2af4992e9b JACK: fix crash when changing buffer size 2022-08-08 00:25:05 -05:00
tildearrow 1c92d23d27 commands view now only displays useful commands 2022-08-07 17:40:01 -05:00
tildearrow b8012344e7 fix possible crash when closing Furnace 2022-08-07 17:37:07 -05:00
tildearrow f80488d9b0 minimize allocations in nextBuf 2022-08-07 17:32:39 -05:00
tildearrow 829db187df Y8950: fix ADPCM per-chan osc I think 2022-08-07 06:24:48 -05:00
tildearrow 800f08b0fd Game Boy: hardware sequences, part 1
still not working! just the UI for it
2022-08-07 06:06:14 -05:00
tildearrow 45196daf95 Game Boy: fix serious typo 2022-08-07 01:32:28 -05:00
tildearrow 1721e1d03e Game Boy: re-enable wave corruption bug emulation 2022-08-07 00:40:26 -05:00
tildearrow 7dad9098b6 Game Boy: fix wave channel 2022-08-07 00:37:35 -05:00
tildearrow ab013291d4 Game Boy: make channel state independent of instru 2022-08-07 00:22:03 -05:00
tildearrow 9f8c96d45b dev105 - prepare for Game Boy hardware sequences
issue #27
2022-08-07 00:03:27 -05:00
tildearrow 47ea8132b2 QSound: limit max frequency to $EFFF
it appears $F000 and beyond cause glitches (#256)
2022-08-06 23:05:54 -05:00
tildearrow 17dba66fa0 MMC5: finally fix PCM linear pitch mode issues 2022-08-06 22:52:39 -05:00
tildearrow 42a0ee13b8 add two demo songs
by psdominator and LVintageNerd
2022-08-06 22:26:18 -05:00
tildearrow 6934a499c1 SoundUnit: actually finish it 2022-08-06 18:23:11 -05:00
tildearrow e0c5029769 Merge branch 'master' of github.com:tildearrow/furnace 2022-08-06 16:24:11 -05:00
tildearrow f03123fd75 SoundUnit: implement missing input line emulation 2022-08-06 16:22:57 -05:00
tildearrow fa66fb1c9a
Merge pull request #622 from djtuBIG-MaliceX/hotfix/opm-loading-discrepancy
Fix OPM load bug relating to AM-ENA values above 1
2022-08-06 14:57:34 -05:00
freq-mod a841296219
Y8950: PCM -> ADPCM
also where the f is my write access
2022-08-06 17:50:15 +02:00
freq-mod b5fa556a38
Merge branch 'tildearrow:master' into wave-edit-tooltip 2022-08-06 17:44:18 +02:00
tildearrow 5534f55f7a dev104 - add "is sample" flag to Sound Unit ins 2022-08-06 04:04:18 -05:00
tildearrow 0946d23883 Game Boy: fix phase reset macro when anti-click is 2022-08-06 00:39:09 -05:00
tildearrow 8a7d352ec6 PCE: fix phase reset macro when anti-click is on 2022-08-06 00:38:24 -05:00
tildearrow 6ec9cceb09 PCE: remove some sample playback clicking 2022-08-06 00:34:28 -05:00
tildearrow a0968aed07 GUI: fix text/binary command stream outs being swa 2022-08-05 03:27:35 -05:00
tildearrow 049ab06544 PCE: add option to pick A/non-A revision of chip 2022-08-04 23:37:28 -05:00
tildearrow 3a18e1e6fc partially implement command stream binary mode 2022-08-04 18:50:52 -05:00
tildearrow 2e41d117d7 fix some of these command hints 2022-08-04 17:47:59 -05:00
tildearrow 67e7e07048 add -cmdout option 2022-08-04 15:18:48 -05:00
tildearrow 09e32c7050 finish command dump hints 2022-08-04 15:14:29 -05:00
James Alan Nguyen 810eabca99 derp limits 2022-08-04 17:50:33 +10:00
James Alan Nguyen edb0f51131 stdint required 2022-08-04 17:43:42 +10:00
James Alan Nguyen b030f8285d Bugfix for OPM file load - correctly handle AM-ENA where value is arbitrarily nonzero 2022-08-04 17:33:36 +10:00
tildearrow d54d853ff8 add a command stream dump option 2022-08-04 00:51:47 -05:00
tildearrow a0d10aa60b Game Boy: implement anti-click 2022-08-03 19:17:18 -05:00
tildearrow 7ec4f7cb9e VGM export: add option to insert pattern change hi
nts
2022-08-03 18:44:45 -05:00
tildearrow eafbf24290 GUI: YM2423 patch names
thanks freq-mod!
2022-08-03 17:31:00 -05:00
tildearrow fce0371756 add "hint" commands 2022-08-03 17:21:47 -05:00
tildearrow 52c3b10373 add getWantPreNote()
currently only C64 system requires this
2022-08-03 16:21:30 -05:00
tildearrow 53120edd99 disable MIDI clock 2022-08-03 14:41:53 -05:00
tildearrow 46425655ad YM2612: fix possible ExtCh DualPCM muting issue 2022-08-03 14:41:53 -05:00
tildearrow 0183c5d9ff GUI: remove one new line 2022-08-03 14:41:53 -05:00
cam900 89042f61eb Fix link for vgsound_emu (moved into https://gitlab.com/cam900/vgsound_emu) 2022-08-03 21:56:22 +09:00
tildearrow 034b4fd4f6 GUI: YMF281 patch names
thanks nicco1690!
2022-08-03 00:10:32 -05:00
tildearrow 0d4f20b7a6 SoundUnit: add 64K chip revision 2022-08-03 00:05:58 -05:00
tildearrow 1f57d09fbf GUI: display correct OPLL patch names 2022-08-02 23:16:42 -05:00
tildearrow fe07051f89 rename Envelope release to Macro release 2022-08-01 22:51:13 -05:00
Waldemar Pawlaszek 5feba3a716 More robust popcnt 2022-07-31 22:26:59 +02:00
tildearrow a9afcf873c fix ARM build 2022-07-31 14:05:23 -05:00
Waldemar Pawlaszek 6ff51ce8f3 #511 Added dynamic popcnt dispatcher 2022-07-31 11:33:38 +02:00
tildearrow 1921fd1759 PCE: implement anti-click technology 2022-07-30 01:00:51 -05:00
tildearrow b3e9f53ec4 GUI: the poll 2022-07-27 17:57:36 -05:00
freq-mod 9447442fed Update waveform editor height/width guide 2022-07-27 16:09:36 +02:00
tildearrow 2b4b320a74 fix noMultiSystem setting being inverted 2022-07-27 02:36:48 -05:00
tildearrow 185b283ef6 GUI: wave generator, part 3 2022-07-27 02:36:36 -05:00
tildearrow 693d457fff GUI: wave generator, part 2 2022-07-27 02:23:29 -05:00
tildearrow 7d5f5a91c6 GUI: wave generator, part 1 2022-07-27 01:20:26 -05:00
tildearrow 173e9b0df9 **Namco C163** 2022-07-26 18:23:01 -05:00
tildearrow 47aba6186d GUI: fix possible crash in sample editing actions 2022-07-26 03:34:41 -05:00
tildearrow 92c3e75bee why! 2022-07-26 03:11:46 -05:00
tildearrow 606215ef9f OH MY 2022-07-26 02:54:35 -05:00
tildearrow c6d5f55335 AND REALLY FIX IT THIS TIME 2022-07-26 02:28:28 -05:00
tildearrow a9bfe7f452 fix build... again! 2022-07-26 02:13:19 -05:00
tildearrow 280592cf33 fix build 2022-07-26 01:42:34 -05:00
tildearrow 8d17500315 jlhafasjkhdgkdhjasfd 2022-07-25 19:45:49 -05:00
tildearrow 3ff8f3d860 FC loader: read slides 2022-07-25 19:09:42 -05:00
tildearrow 09e457003b add option for soft-clipping 2022-07-25 18:41:47 -05:00
tildearrow b0c2b10135 GUI: add "scale" option to find/replace 2022-07-25 18:32:26 -05:00
tildearrow 83386d082d add a proper CLI
featuring skip order (left/right) and pause (space)!
currently available on macOS and Linux only.
2022-07-25 17:23:56 -05:00
tildearrow 3183400019 it appears SDL2 takes over interrupt in console
mode
2022-07-25 16:21:39 -05:00
tildearrow 542a46e89b remove log spam (hopefully) 2022-07-24 03:41:01 -05:00
tildearrow 1d77719640 prevent exception in MIDI in/out from crashing 2022-07-24 02:45:21 -05:00
tildearrow 9a0609ae1a fix build... 2022-07-24 02:24:57 -05:00
tildearrow ffe06013d7 GUI: fix preset typo 2022-07-24 01:58:14 -05:00
tildearrow 1dbdf8558c Merge branch 'master' of github.com:tildearrow/furnace 2022-07-24 01:57:21 -05:00
tildearrow 588f3f737c preliminary Future Composer module loading
only loads patterns and doesn't deduplicate
conversion required to fit in the Furnace format (no transpose ins/note)
even the pattern loader itself isn't complete due to how different the
format is
2022-07-24 01:57:10 -05:00
cam900 6697be4d95
Add/Update more presets
Williams/Midway ADPCM Sound board
Used for conjunction with their Y/T unit, it has ordinary de facto standard OPM+MSM6295 on this era with software controlled DAC from predecessors.

Konami Battlantis
Used at Battlantis arcade hardware, It is early SB Pro but mono configuration.

Sega System 24
This Sega's early arcade system featured to floppy disk and high resolution graphics. Sound hardware is similar as their System 16, but ADPCM is replaced to software controlled DAC.

Namco System 86
Predecessor of System 1(a.k.a. System 87), It features similar sound hardware and optional ROM and DAC expansion.

Namco Thunder Ceptor
Used at Thunder Ceptor, their Front view arcade machine. Namco system 86 and System 1 sound system is directly derived from this machine's sound system.

Irem M72
Irem's first arcade system with FM sound system, All released game except R-Type is featured also LOUD software controlled DAC, inherited from their predecessors sound system.
2022-07-24 13:28:26 +09:00
cam900 49cb216594 Merge branch 'master' of https://github.com/tildearrow/furnace 2022-07-24 12:25:17 +09:00
cam900 b48b7c8bc5 Apply loop end position for generic DAC 2022-07-24 12:23:38 +09:00
tildearrow 84c955058b GUI: Z280 whoops
issue #576
2022-07-23 22:22:05 -05:00
Christoph Neidahl e08399156a
Haiku support (#596)
* Don't apply Wayland videodriver workaround on Haiku

* dirent.d_type-less type detecting in IGFD

The Dumb Way(tm). `stat`'s `st_mode` should be nicer?

* CMake check for dirent.d_type, stat-based fallback

* Move config dir setup to separate function

Nicer to work with than macro kerfuffle.

* Default sysFileDialog to off on Haiku

* Logging stuff

* Honour CMAKE_INSTALL_BINDIR

* Use find_directory on Haiku

Includes forgotten configPath line when home==NULL.

* Address PR review notes
2022-07-23 22:11:30 -05:00
tildearrow de77d51d7a GUI: update credits 2022-07-23 21:19:43 -05:00
Aleksi Knutsi 8011e7adc7
Implement Phase Reset Timer macro for Sound Unit (#573)
* Implement Phase Reset Timer Macro

* And make the macro actually work

* Delete ex4Max variable
2022-07-23 19:13:30 -05:00
tildearrow 623c0efbba
Merge pull request #578 from tildearrow/ngp
Add generic PCM DAC system
2022-07-23 19:12:51 -05:00
tildearrow 78b5419004 GUI: fix effect list hotkey 2022-07-23 19:08:39 -05:00
tildearrow 26d60dd107 GUI: fix per-chan osc debug crash
fixes #600
2022-07-23 19:01:30 -05:00
tildearrow 984d61d081 GUI: update song information 2022-07-23 18:53:49 -05:00
tildearrow dfcb9551e7 GUI: update credits 2022-07-23 18:53:42 -05:00
tildearrow efa75a4480 GUI: sub-song info experiment 2022-07-23 18:40:48 -05:00
tildearrow 6051f92e68 GUI: add setting to customize initial system name 2022-07-23 18:22:42 -05:00
tildearrow 8d88ac766c dev103 - store system name and other info in song 2022-07-23 17:02:03 -05:00
tildearrow d004629a58 dev102 - new sample storage format 2022-07-22 02:29:01 -05:00
tildearrow 7bc3166ed5 YMZ280B: frequency precision improvement
frequency is now multiplied by 256 and then fed to the chip divided by
256 to increase freq precision
2022-07-22 00:01:29 -05:00
cam900 5127d5ef18
Implement sample loop end position, enum-ise sample depth (#557)
TODO: new sample format
2022-07-21 23:36:42 -05:00
tildearrow a137eefd20 GUI: refine the Namco [C]163 chip name option 2022-07-21 19:00:32 -05:00
tildearrow f6b45d3d9b GUI: add Namco C163 chip name option 2022-07-21 15:21:29 -05:00
tildearrow 09b47fafe3 update demo songs 2022-07-21 14:49:42 -05:00
tildearrow 191a0dedf9 GUI: improve wavetable editor, part 2 2022-07-21 03:14:52 -05:00
tildearrow 962dab012c GUI: improve wavetable editor, part 1 2022-07-21 02:49:19 -05:00
cam900 4e8d71fc22
Fix sample map struct
Structize sample map variable is for easily extend features.
2022-07-21 13:42:20 +09:00
cam900 a5959ae7b9 Struct-ize sample map variable 2022-07-20 23:01:06 +09:00
tildearrow dff7c61b79 GUI: add option to disable threaded input 2022-07-20 00:32:06 -05:00
tildearrow cd7b333b2d introduce a benchmark mode 2022-07-19 17:01:19 -05:00
tildearrow a4741861ce fix audio output being reset on cmd line export 2022-07-19 15:57:06 -05:00
tildearrow 707dc30f15
Revert "Fix issue #567: LFO disable/enable behavior for YM2151." 2022-07-17 00:05:56 -05:00
Natt Akuma e334fdddb8
Merge pull request #572 from ZeroByteOrg/opmlfo
Fix issue #567: LFO disable/enable behavior for YM2151.
2022-07-17 12:04:38 +07:00
tildearrow 96b7e5d353 GUI: implement multi sel on NFD and IGFD 2022-07-16 01:52:15 -05:00
tildearrow 666b0d581a GUI: add multi-selection capability to file dialog 2022-07-15 02:23:16 -05:00