Commit graph

499 commits

Author SHA1 Message Date
tildearrow
2255bdf6c7 release Furnace Pro 2023-04-01 17:00:51 -05:00
tildearrow
88654e26fc command stream arps 2023-03-27 03:29:43 -05:00
tildearrow
da7d67fa85 more command stream playback work 2023-03-27 00:40:54 -05:00
tildearrow
c4510e16e0 add experimental command stream player
for verification

after that I am going to write optimization code
2023-03-26 18:48:16 -05:00
KMoene
913d22fd57 init support for setting program change 2023-03-22 00:51:54 -04:00
tildearrow
a144ca75b4 release for intro tune contest 2023-02-19 15:58:56 -05:00
tildearrow
2343cdecc5 VGM export: add "trailing ticks" option
issue #695
2023-02-08 19:25:03 -05:00
cam900
03e0c8d8ee Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-02-06 08:56:14 +09:00
tildearrow
ac5986e44f dev139 - groove patterns! 2023-02-05 02:56:39 -05:00
cam900
f8b9901e4b Fix command order 2023-02-05 10:04:31 +09:00
cam900
dd79ae401b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-02-05 10:00:27 +09:00
tildearrow
31ccb58a48 implement tremolo 2023-02-04 16:08:20 -05:00
tildearrow
43ba2ff8f2 OPZ: implement LFO2
issue #831

untested and I can't test now
2023-02-03 17:00:15 -05:00
cam900
3403e10b0b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-24 08:14:29 +09:00
tildearrow
45faadd4c8 update copyright year 2023-01-19 19:18:40 -05:00
cam900
7340d029ae Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-19 16:51:27 +09:00
tildearrow
539b2ec2db dev138 - fix broken porta after legato 2023-01-17 01:58:59 -05:00
cam900
536c345763 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-12 23:31:56 +09:00
tildearrow
01f6e8f963 make patchbay effective on samplepreview/metronome 2023-01-12 03:31:43 -05:00
tildearrow
e0785d9f00 fix front/rear being inverted 2023-01-07 16:39:01 -05:00
tildearrow
1154a2bda6 implement patchbay-based output 2023-01-06 18:44:20 -05:00
tildearrow
6273275b47 new floating-point volumes and patchbay 2023-01-06 17:43:08 -05:00
tildearrow
707bbb54ea add effects for rear panning 2023-01-05 03:08:57 -05:00
tildearrow
71e40dc015 support more than 2 output channels
up to 16 on JACK
to-do: add more mixer settings
2023-01-05 02:40:17 -05:00
tildearrow
48bcc6a124 prepare for handling more than 2 channels 2023-01-04 20:04:02 -05:00
tildearrow
6c834524aa new dispatch, part 4 2023-01-04 17:01:14 -05:00
tildearrow
a29f36a5df new dispatch, part 1 2023-01-03 01:09:46 -05:00
cam900
8a71a81ffb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2023-01-02 09:26:05 +09:00
tildearrow
e31f8a2115 SegaPCM: fix new arp strat 2022-12-29 15:42:01 -05:00
tildearrow
ae4cb78c2c ... 2022-12-29 15:25:38 -05:00
tildearrow
f8bceecebf another update 2022-12-29 14:43:42 -05:00
tildearrow
e8d9fd6a15 maybe fix possible crash in low buffer sizes 2022-12-29 14:34:19 -05:00
cam900
f992346772 Addressing comments 2022-12-25 18:51:23 +09:00
cam900
429aed0ab1 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-17 15:00:44 +09:00
tildearrow
9da46ee8ba implement macro masking 2022-12-17 00:09:56 -05:00
cam900
37e83c0905 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-10 14:29:13 +09:00
tildearrow
423978cba7 possibly fix crash on high smpl rates & low bufsiz 2022-12-08 04:37:43 -05:00
cam900
2ec35d903f Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-12-04 16:53:54 +09:00
tildearrow
992fefd9d2 C64: fix glitches when one-tick gap is on 2022-11-30 02:14:02 -05:00
tildearrow
a09c1949ac fix oneTickCut overriding ECxx 2022-11-30 02:07:44 -05:00
cam900
46880634b4 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-11-15 11:52:30 +09:00
tildearrow
3f2f8a7197 GUI: add a clock 2022-11-10 01:26:59 -05:00
tildearrow
baa3989502 fix metronome in virtual tempo 2022-11-09 23:52:10 -05:00
cam900
13b2a72a01 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-10-26 12:28:24 +09:00
tildearrow
9a1447e392 NES: envelope and length counter effects 2022-10-25 00:43:03 -05:00
tildearrow
8b80009d92 still tick subticks in freelance mode 2022-10-24 03:25:19 -05:00
tildearrow
a8def55d56 fix song stopping too early 2022-10-22 03:46:39 -05:00
cam900
87cb3c49a4 Update ES5506:
Remove transwave for now
- It consumes high CPU usage, so possibly little headroom for anything else.
Fix per-voice OSC via git master
Fix default channel for ES5506
Fix macro order - Filter macro must be executed after key on
Add SSV preset
2022-10-22 17:19:39 +09:00
cam900
f8c494e1dd
Merge branch 'master' into es5506_alt 2022-10-09 20:05:15 +09:00
tildearrow
9c22b4671c improve playback hang detection logic 2022-10-09 01:14:02 -05:00
tildearrow
76f1717b14 the cursor can't get tired 2022-10-02 01:54:31 -05:00
tildearrow
0c79280aae GUI: fix loop not updating samples on SNES 2022-10-02 01:32:12 -05:00
cam900
62f1ba73eb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-29 22:05:41 +09:00
tildearrow
86fe6206be another tiny fix 2022-09-29 00:27:58 -05:00
tildearrow
6ed50d717c fix song stop screwing everything up 2022-09-29 00:27:40 -05:00
cam900
013c7b92fb Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-27 00:01:10 +09:00
tildearrow
122694d7c9 MIDI output improvements 2022-09-26 01:27:36 -05:00
tildearrow
c27c650c11 MIDI out: prevent out of range notes 2022-09-25 23:43:01 -05:00
cam900
a0745e80b5 Accidentally removed this 2022-09-25 20:25:05 +09:00
cam900
a11440ac0f Fix cmdName 2022-09-25 20:22:22 +09:00
cam900
81bebc5112 Reduce unnecessary changes, Volume macro fixes, calcArp 2022-09-25 19:21:49 +09:00
cam900
5a6cde65ed Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-25 18:34:36 +09:00
cam900
0a49d4bfd0 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt 2022-09-25 18:32:06 +09:00
tildearrow
01a592100f SNES: define effects (they don't work yet) 2022-09-25 04:02:06 -05:00
cam900
e00758d67c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-09-22 23:02:01 +09:00
tildearrow
401581e892 fix 116.5 2022-09-21 23:41:22 -05:00
cam900
0f5a400b29 Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro 2022-09-18 00:11:53 +09:00
tildearrow
187653a70f dev113 - loop detection changes 2022-09-10 01:39:42 -05:00
cam900
3fcccb52ee Reduce performance issue 2022-08-28 10:50:57 +09:00
cam900
54dbd0690c Merge branch 'master' of https://github.com/tildearrow/furnace into sample_macro
# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/lynx.cpp
#	src/engine/platform/rf5c68.cpp
#	src/engine/platform/su.cpp
#	src/engine/platform/x1_010.h
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610.h
#	src/engine/platform/ym2610b.cpp
#	src/engine/platform/ym2610b.h
#	src/engine/sysDef.cpp
#	src/gui/insEdit.cpp

Add effect command for ADPCM-A global volume, X1-010 Sample bank slot
2022-08-27 17:25:48 +09:00
cam900
4cc79fb49d Prepare for split sample chip instrument
(MSM6258, MSM6295, QSound, Sega PCM, ADPCM-A, ADPCM-B, YMZ280B, RF5C68)
Instrument color and icons are placeholder.

different volume range, hard panned/soft panned and/or independent volume per output, chip-dependent features (global volume, echo, etc)
Allow use sample in instrument tab for chip with sample support
Prepare to support X1-010 Seta 2 style bankswitch behavior
Prepare to support AY89x0 PCM DAC
Support volume for PCE sample (DAC)
Fix Lynx, Y8950 sample pitch matches to sample preview
Support PCM DAC with backward and pingpong loop mode
Reduce some codes
Add Sega PCM, AY89x0, QSound, PCM DAC, Lynx per-channel debug support
2022-08-27 16:27:36 +09:00
tildearrow
d577755035 fix note on sometimes not working in jam mode 2022-08-27 00:37:32 -05:00
tildearrow
16309a8429 allow it 2022-08-22 00:20:40 -05:00
tildearrow
629cca9df1 ECxx 2022-08-22 00:01:21 -05:00
tildearrow
38afdd3378 dev110 - add cut/delay effect policy compat flag
INCOMPLETE!!!
2022-08-21 23:56:58 -05:00
Natt Akuma
7c42453422
Rewrite per-system effect handling (#548)
* Rewrite per-system effect handling

* fix build

* C64: fix fine cutoff regression

* fix some more crashes

Co-authored-by: tildearrow <tildearrow@protonmail.com>
2022-08-18 01:26:22 -05:00
tildearrow
5fe661e9a3 allow rates down to 1Hz 2022-08-15 22:40:04 -05:00
cam900
d44f5f0b2b Prepare for backward and bi-directional loop 2022-08-11 22:21:54 +09:00
tildearrow
1c92d23d27 commands view now only displays useful commands 2022-08-07 17:40:01 -05:00
tildearrow
f80488d9b0 minimize allocations in nextBuf 2022-08-07 17:32:39 -05:00
tildearrow
2e41d117d7 fix some of these command hints 2022-08-04 17:47:59 -05:00
tildearrow
09e32c7050 finish command dump hints 2022-08-04 15:14:29 -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
09e457003b add option for soft-clipping 2022-07-25 18:41:47 -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
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
0ec28f168e more .dmf compatibility stuff 2022-07-03 23:31:35 -05:00
cam900
f3b9c6dde6
Merge branch 'master' into es5506_alt 2022-07-02 13:28:49 +09:00
tildearrow
a8a38dce2b 0.6pre1 - introduce the final changes
- implement E1xy/E2xy Defle bug when using same note twice
- add SNK Touchdown Fever preset
- update README.md and to-do list
- update credits

thank you for your patience!

see you in 0.6pre1.5 coming soon...
2022-06-29 04:57:05 -05:00
tildearrow
be7d7002e2 fix opening/saving audio files with non-ASCII char
s on Windows

this required making a wrapper...
2022-06-28 02:00:08 -05:00
cam900
3119ed8cc5 Merge remote-tracking branch 'upstream/master' into es5506_alt 2022-06-26 00:47:34 +09:00
tildearrow
d48801cfde GUI: slight visualizer tweaks 2022-06-14 04:41:57 -05:00
tildearrow
b6ea8ede86 fade out experiments - DO NOT COMPILE 2022-06-06 03:05:55 -05:00
tildearrow
5a0a9db9c3 highlight cur row instead of next one on playback 2022-06-06 01:05:06 -05:00
tildearrow
2932a7281d implement getChanMacroInt() on supported systems 2022-06-05 18:17:00 -05:00
cam900
e8c672f91e Fix preview 2022-05-31 14:20:15 +09:00
cam900
4f6f13e938 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  GUI: improve unified data view
  GUI: sample editor preview in selection
  finally
  Revert "fudge and bread"
  Revert "fire!"
  Revert "temporarily kill MSVC"
  Revert "MSVC: ughh, f**k you, you d**khead."
  MSVC: ughh, f**k you, you d**khead.
  temporarily kill MSVC
  fire!

# Conflicts:
#	src/engine/engine.h
#	src/engine/playback.cpp
2022-05-30 08:13:27 +09:00
tildearrow
84d4ca63c2 GUI: sample editor preview in selection 2022-05-29 02:13:08 -05:00
cam900
32152fd89b Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (53 commits)
  prepare for better backward writing
  VGM export: fix oops
  GUI: drag-and-drop ins/wave/sample loading
  GUI: add "set loop" to sample editor
  MSM6295: VGM export!
  oops
  MSM6295: add rate select effect (20xx)
  update meteor shower
  MSVC is better than GCC right?
  update to-do list
  door into summer
  GUI: implement input for touch events
  GUI: update SDL hints
  fix Termux build
  add another demo song
  add demos/ecolove.fur
  update to-do list
  update demos/README.md
  add new demo songs
  dev99 - major Fractal system change
  ...

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/platform/genesis.cpp
#	src/engine/playback.cpp
#	src/engine/song.h
#	src/engine/vgmOps.cpp
2022-05-29 13:47:39 +09:00
tildearrow
0b7d27dc29 YM2612: add reverse sample playback 2022-05-27 02:47:44 -05:00
cam900
cbf20c6320 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (58 commits)
  SMS: early Nuked-PSG modding
  SMS: add modified Nuked-PSG core
  build release and don't strip
  strip MinGW builds
  FDS: a bit more
  FDS: set a post-amp value
  FDS: fix NSFplay core low pass filter precision
  fix .dmf saving
  fix compilation on GCC 12
  Fix multithreading on CI
  Lynx: why did I not commit this
  Lynx: more sample improvements
  Lynx: sample improvements
  Lynx: add sample support!
  GUI: fix wavetable list oversight
  WaveSynth: fix phase modulation - again
  GUI: fix possible wave editor crash
  WaveSynth: fix phase modulation
  Lynx: add phase reset macro
  fix another fucking IGFD crash bug
  ...

# Conflicts:
#	src/gui/insEdit.cpp
#	src/gui/presets.cpp
2022-05-27 13:01:06 +09:00
cam900
17881837ab Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (64 commits)
  finish wave synth!
  update contributing guidelines
  Namco WSG: make non-linear slides faster
  wave synth work
  SoundUnit: fix order of filter bits
  GUI: add Namco arcade presets
  implement some dual wave synth effects
  Y8950: fix ADPCM VGM export
  Namco WSG: finish it up
  Namco WSG: 8 channel WSG (CUS30) now works
  Namco WSG: muting
  Namco WSG: 8 channel WSG (15xx) now works
  Namco WSG: 3 channel WSG now works
  YM2612: change key on/off strategy
  GUI: fix scrollbars not working
  Please enter the commit message for your changes.
  shhhhhhhhhhhh
  update to-do list
  Whoops
  it doesn't work (yet)
  ...

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/platform/su.cpp
#	src/engine/playback.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/song.h
#	src/engine/vgmOps.cpp
#	src/gui/presets.cpp
2022-05-25 00:52:00 +09:00
tildearrow
3aa8ea3625 fix Cxxx/F0xx being delayed in low-latency mode 2022-05-22 22:36:48 -05:00
tildearrow
e17c99dcdf allow building Furnace without SDL2 and libsndfile
for eventual libfurnace
2022-05-22 19:01:50 -05:00
tildearrow
6ec8674072 SoundUnit: many fixes. implement effects 2022-05-19 04:36:26 -05:00
tildearrow
cfa05143ab dev96 - add virtual tempo 2022-05-18 00:05:25 -05:00
cam900
028adf2c8e Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (70 commits)
  whoops
  GUI: AY8930 credits
  GUI: fix inability to close subsongs
  BANK
  OPN: wire up ExtCh system
  fix build failure
  dev95 - multiple songs in a single file (READ)
  DO NOT USE - THIS FAILS - WORK IN PROGRESS
  enforce asset limits
  old .dmf loading improvements
  add AICA and YMZ ADPCM formats
  allocate ID for YMZ280B
  harden .fur file saver
  Fix AY VGM output, Fix presets
  preparations for UI improvements
  GUI: add more presets
  prepare for ExtCh OPN/OPNA
  GUI: clarify that lock layout doesn't work yet
  GUI: remember last state of order edit mode
  GUI: store edit/followOrders/followPattern state
  ...

# Conflicts:
#	src/engine/fileOps.cpp
#	src/engine/platform/ym2610.cpp
#	src/engine/platform/ym2610b.cpp
#	src/engine/sample.cpp
#	src/engine/sample.h
#	src/engine/sysDef.cpp
#	src/gui/doAction.cpp
#	src/gui/sysConf.cpp
2022-05-18 03:09:55 +09:00
tildearrow
c5786b61fb dev95 - multiple songs in a single file (READ)
experimental feature! proceed with caution.
if you experience song corruption or crashes, report issue immediately!

files with multiple songs will be readable in older versions of Furnace,
but only the first song will be read in those versions.

issue #199
2022-05-15 01:42:49 -05:00
tildearrow
431b6b5957 fix 09xx, 0Bxx, 0Dxx and 0Fxx being ignored on ED 2022-05-11 02:42:05 -05:00
cam900
54e78699a7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  dev94 - add a full linear pitch mode, part 1
  YM2610(B): use f-num/block baseFreq calculation
  GUI: remove insLoadAlwaysReplace setting
  GUI: right click menu for open instrument
  GUI: add a threshold for macro right click
  OPZ: remove debug printf
  GUI: add macro right click menu
  GUI: prepare for macro right click menu
  update gitignore
  add something
  prepare for something
  did i fix macOS build?
  GUI: macro edit improvements
2022-05-11 00:55:03 +09:00
tildearrow
8784fe5664 dev94 - add a full linear pitch mode, part 1 2022-05-10 03:51:18 -05:00
cam900
0ab1f69c7c Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  fix sample saving
  add extra FM effects to effect post handler
  dev91 - it's a breaking change
  aaaaaa
  AY8930: Fix tone and noise period in expanded mode.
  OPL: fix possible crash
2022-05-04 10:31:15 +09:00
cam900
4595e18aea Oops 2022-05-04 10:28:30 +09:00
tildearrow
30e60f643c add extra FM effects to effect post handler
see #38
the last thing left to do is to put these effects on the dispatch code
2022-05-03 17:37:17 -05:00
cam900
4021abe495 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  YM2610: optimize oscilloscope fetch CPU usage
  GUI: add audio load meter to statistics
  GUI: put "OK" and "Cancel" buttons in the bottom
  better FM chip names
  sysDef refactor, part 3 - PLEASE READ
  NO
  Reduce unnecessary line
  Debug improvements
  AY8930: Fix VGM output.

# Conflicts:
#	.gitignore
#	src/engine/playback.cpp
#	src/gui/debugWindow.cpp
2022-05-04 03:32:26 +09:00
tildearrow
b8a2c90b61 GUI: add audio load meter to statistics 2022-05-03 02:29:12 -05:00
tildearrow
e40e7c0fef sysDef refactor, part 3 - PLEASE READ
to cam900 and grauw: I have moved the per-system effect processing code
to sysDef.cpp as lambdas
you may want to do the same when you pull this commit.
2022-05-03 01:23:38 -05:00
cam900
e136db6d7a Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (26 commits)
  prepare for #38
  NES: DPCM work!
  fix bug caused by new renderSamples approach
  NES: prepare for DPCM
  OPZ: more fixed frequency mode fixes
  OPZ: possibly fix fixed freq emulation
  OPZ: fix muting
  OPL: fix panning
  damn it
  per-channel oscilloscope, part 10
  NES: NSFPlay per-channel osc
  NES: NSFPlay muting
  NES: now fix tri_mute
  NES: finally
  fix typo in playback engine
  NES: wire up NSFplay
  now fix it damn it
  now move these files
  add readme
  convertir de Shift-JIS a UTF-8
  ...

# Conflicts:
#	src/engine/engine.cpp
#	src/engine/engine.h
#	src/engine/platform/nes.cpp
#	src/engine/vgmOps.cpp
#	src/gui/stats.cpp
2022-05-03 11:07:50 +09:00
tildearrow
66f6ab4307 prepare for #38 2022-05-02 03:52:45 -05:00
tildearrow
dbe9bf25e7 fix bug caused by new renderSamples approach
when doing switchMaster
2022-05-02 02:54:23 -05:00
tildearrow
9479a8aa0f fix typo in playback engine
possible memory leak
2022-05-01 23:29:00 -05:00
cam900
5414213710 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  maybe uninitialized
  GUI: prepare for a per-channel oscilloscope?
  GUI: add backdrop if system file picker is open
  GUI: add ability to customize startup system
  GUI: finally implement "don't scroll when moving c ursor" setting
  new panning effects (80/81/82)
  GUI: fix sample paste crash
  GUI: implement sample scroll with mouse wheel
  sysDef oopsie

# Conflicts:
#	src/gui/guiConst.cpp
2022-05-01 00:25:21 +09:00
tildearrow
2e8634626d new panning effects (80/81/82) 2022-04-29 23:41:14 -05:00
cam900
72e8bb89a7 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  GUI: sample/macro zoom with ctrl-wheel
  GUI: prevent division by zero
  GUI: possibly fix an instrument saving issue
  GUI: add chip randomizer button
  update to-do list
  oops
  NES: add DMC write effect
  SoundUnit: implement panning
  QSound: implement panning macro - PLEASE READ
  further improve channel allocation
  update format.md for eventual ExtCh extra systems
  improvements to swap/stomp channel

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-30 02:32:55 +09:00
tildearrow
8500fa4c4c NES: add DMC write effect 2022-04-29 00:18:51 -05:00
tildearrow
5567746e0b QSound: implement panning macro - PLEASE READ
the panning strategy for QSound has changed!
it's now 08xy where x is left and y is right (muting is not possible though!)
this makes it consistent with other chips, plus QSound's pan range was
32 anyway

in order to toggle the QSound effect use effect 12xx
2022-04-28 23:58:11 -05:00
cam900
3956b2cd30 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  dev90 - linear pitch macro option
  dev89 - C64: add test/gate macro
  YMU759: update system definition
  more changes to autoNoteOn
  SoundUnit: ring modulation
  GUI: improve the maximize auto-detection a bit
  GUI: possibly remember maximized state
  NES: fix audio resolution being too low
  update to-do list
  SoundUnit: more stuff
  SoundUnit: max cutoff 16383
  effectRows -> effectCols
  GUI: rename Amiga/Sample to Sample
  This is not a sample properties table
  Define the compact wave editor
  Menu option, settings file

# Conflicts:
#	src/gui/insEdit.cpp
2022-04-28 16:05:01 +09:00
tildearrow
3306e853d1 effectRows -> effectCols
i don't know why did I call it "rows"
2022-04-27 17:53:55 -05:00
cam900
0209ebda03 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace:
  sysDef refactor, part 2
  sysDef refactor, part 1 - PLEASE READ NOTE
  prepare for macroInt preview in instrument editor
  GUI: fix #400
  fix metronome in low-latency mode

# Conflicts:
#	src/engine/dispatch.h
#	src/engine/dispatchContainer.cpp
#	src/engine/instrument.h
#	src/engine/song.h
#	src/engine/sysDef.cpp
#	src/gui/dataList.cpp
#	src/gui/gui.h
#	src/gui/guiConst.cpp
2022-04-27 19:52:04 +09:00
cam900
482dbf8dd5 Checkpoint
Addressing reviews, Fix GCC/Clang builds, Core updates
2022-04-27 14:29:53 +09:00
tildearrow
28af57c4f0 fix metronome in low-latency mode 2022-04-26 00:22:49 -05:00
cam900
49a41ff862 Merge branch 'master' of https://github.com/tildearrow/furnace into es5506_alt
* 'master' of https://github.com/tildearrow/furnace: (77 commits)
  GUI: use pattern font for input latch
  GUI: partially implement note input latch UI
  GUI: transpose value does not transpose effect ID
  GUI: prepare for note input latch UI
  GUI: min ins selector width fix
  GUI: separate operation masks
  GUI: add missing FDS preset
  GUI: prepare for separate operation mask
  GUI: "none" instrument should not remove inscolumn
  GUI: fix ins 0 being inserted on blank song
  GUI: add a "none" option to instrument list
  update to-do list
  GUI: add "absorb" instrument input mode
  use good default instrument when adding ins
  better default instrument for OPL/OPLL
  GUI: fix selection being visible in dummy row area
  Further fix looped sample preview
  GUI: fix about screen in power saving mode
  VRC6: saw volume 63
  GUI: add an effect list window
  ...

# Conflicts:
#	src/engine/platform/amiga.cpp
#	src/engine/vgmOps.cpp
#	src/gui/dataList.cpp
#	src/gui/guiConst.cpp
#	src/gui/insEdit.cpp
#	src/gui/sampleEdit.cpp
2022-04-26 12:04:23 +09:00
cam900
29ea6dc360 Partially ES5506 support (not working yet!)
Add sample related enums
Add support for backward/pingpong loop, loop end position
Structize Notemap in sample instrument
2022-04-21 01:52:37 +09:00
tildearrow
6b294933bc VGM export: fix it under low-latency mode 2022-04-15 22:27:44 -05:00
tildearrow
b48a2368be more low-latency mode work
playSub() runs at normal tick rate
2022-04-15 22:22:47 -05:00
tildearrow
98b9bd32b9 static_assert() on cmdName 2022-04-15 16:10:57 -05:00
tildearrow
fd3d57b1cb even more improvements to low-latency mode 2022-04-15 15:01:11 -05:00
tildearrow
45460df96d improve low-latency mode strategy 2022-04-15 14:38:25 -05:00
tildearrow
96715ed88c add experimental low-latency mode
do not use (yet)!
2022-04-15 05:37:23 -05:00
tildearrow
2e2fafd878 GUI: add metronome volume setting 2022-04-13 02:29:07 -05:00
tildearrow
fbf7f9304e dev83 - yet another E1xy/E2xy fix
and 17xx fix in ExtCh
2022-04-13 00:34:00 -05:00
tildearrow
fddd05dc1a improve logging facility
we have a log viewer within the program now
2022-04-10 22:12:02 -05:00
tildearrow
f42855f170 add 30xx effect to hard reset envelope
currently only for 2612!
2022-04-10 02:11:36 -05:00
tildearrow
38ca437190 DC offset improvements 2022-04-09 18:25:25 -05:00
tildearrow
46bf69769b
Merge pull request #331 from OPNA2608/msvc/sane_warning_level
Resolve/Mute MSVC warnings, enable WAE for MSVC
2022-04-09 15:26:58 -05:00
OPNA2608
b6fb3820da Remove unneeded includes
Some are harmless, some screw with SDL's standard includes due to preceeding `_USE_MATH_DEFINES`.
2022-04-09 21:10:15 +02:00
tildearrow
785ac8d1a7 small oscBuf fix 2022-04-09 02:45:06 -05:00
tildearrow
7bf2a3ea1a GUI: prepare for oscilloscope improvements 2022-04-09 02:42:58 -05:00