Commit graph

2428 commits

Author SHA1 Message Date
tildearrow
c23ee8e7c9 GUI: put "OK" and "Cancel" buttons in the bottom 2022-05-03 01:48:57 -05:00
tildearrow
31a35e5395 better FM chip names 2022-05-03 01:29:31 -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
0d5962bb08 Reduce unnecessary line 2022-05-03 10:28:01 +09:00
cam900
2412f688de Merge branch 'master' of https://github.com/tildearrow/furnace into osc_debug
* 'master' of https://github.com/tildearrow/furnace:
  document (NON-WORKING) extended op param effects
  FDS: add NSFPlay core
  NES: fix Furnace-style DPCM
  SoundUnit: fix PCM pitch
  SoundUnit: PCM support

# Conflicts:
#	src/gui/debugWindow.cpp
2022-05-03 10:23:36 +09:00
cam900
3f0c83eb45 Debug improvements
Add oscilloscope debug, Hideable sample debug
2022-05-03 10:20:20 +09:00
tildearrow
62289d924e FDS: add NSFPlay core 2022-05-02 16:53:55 -05:00
tildearrow
960048cf4b NES: fix Furnace-style DPCM 2022-05-02 16:05:07 -05:00
Laurens Holst
ffa0727bf6 AY8930: Fix VGM output.
It was generating writes to register addresses > 15.
2022-05-02 22:49:55 +02:00
tildearrow
ce40085d3b SoundUnit: fix PCM pitch 2022-05-02 15:07:59 -05:00
tildearrow
a6ef36d42e SoundUnit: PCM support 2022-05-02 14:51:06 -05:00
tildearrow
66f6ab4307 prepare for #38 2022-05-02 03:52:45 -05:00
tildearrow
5a724e4949 NES: DPCM work! 2022-05-02 03:42:40 -05:00
tildearrow
dbe9bf25e7 fix bug caused by new renderSamples approach
when doing switchMaster
2022-05-02 02:54:23 -05:00
tildearrow
a7b8f81da7 NES: prepare for DPCM 2022-05-02 02:12:14 -05:00
tildearrow
b92ce84b34 OPZ: more fixed frequency mode fixes 2022-05-02 02:12:02 -05:00
tildearrow
a0db8ab49a OPZ: possibly fix fixed freq emulation 2022-05-02 01:22:49 -05:00
tildearrow
34f7750c27 OPZ: fix muting 2022-05-02 01:15:42 -05:00
tildearrow
6380876b9a OPL: fix panning 2022-05-02 00:41:58 -05:00
tildearrow
5adc29906a
Merge pull request #410 from grauw/dispatch-render-samples
Move renderSamples() to DivDispatch implementations.
2022-05-02 00:25:58 -05:00
tildearrow
7a67730c29 damn it 2022-05-02 00:23:03 -05:00
tildearrow
430d0329bd per-channel oscilloscope, part 10
OPZ
2022-05-02 00:22:34 -05:00
tildearrow
de09073232 NES: NSFPlay per-channel osc 2022-05-02 00:05:28 -05:00
tildearrow
61b4e3745f NES: NSFPlay muting 2022-05-01 23:57:53 -05:00
tildearrow
e1cec62af4 NES: now fix tri_mute 2022-05-01 23:48:35 -05:00
tildearrow
153e025cf8 NES: finally 2022-05-01 23:48:02 -05:00
tildearrow
9479a8aa0f fix typo in playback engine
possible memory leak
2022-05-01 23:29:00 -05:00
tildearrow
cb7aa4aa05 NES: wire up NSFplay
no muting supported for now
see #27
2022-05-01 23:20:20 -05:00
tildearrow
7b31f6a3e5 now fix it damn it 2022-05-01 22:52:22 -05:00
tildearrow
e873070d84 now move these files 2022-05-01 22:22:02 -05:00
tildearrow
2c9bad3b3d per-channel oscilloscope, part 9
work in progress!
2022-05-01 18:29:16 -05:00
tildearrow
269f07f597 these are debug messages 2022-05-01 17:26:56 -05:00
Laurens Holst
7f0074511c Move renderSamples() to DivDispatch implementations.
To prevent rendering samples for systems that are not in use.

Additionally, it gives the systems more flexibility to render the samples
according to their specific configuration.
2022-05-01 23:23:38 +02:00
tildearrow
58fe971a3c Clang you are so arrogant 2022-05-01 05:18:30 -05:00
tildearrow
9f19b5dfc4 ok so screw you 2022-05-01 05:10:41 -05:00
tildearrow
05ae774617 let's hope this works 2022-05-01 04:49:41 -05:00
tildearrow
e1a02f64de attempt to fix CI 2022-05-01 04:30:04 -05:00
tildearrow
3a4f120120 per-channel oscilloscope, part 8
TIA is done
2022-05-01 04:01:25 -05:00
tildearrow
47f83c0472 per-channel oscilloscope, part 7
YM2610 and YM2610B
only TIA is left
2022-05-01 03:47:04 -05:00
tildearrow
415e490025 per-channel oscilloscope, part 6
YM2612 and OPM (ymfm)!
2022-05-01 03:12:32 -05:00
tildearrow
c0e9b48b5b per-channel oscilloscope, part 5
SAA1099 (SAASound and MAME), Lynx, MMC5, N163, PC Engine, PC Speaker,
PET, QSound, WonderSwan, VERA, VIC-20, VRC6 and X1-010!
2022-05-01 02:40:03 -05:00
tildearrow
dadfd7efee but PCE supports samples! 2022-05-01 00:58:10 -05:00
tildearrow
e1fd16637c per-channel oscilloscope, part 4
OPM, OPN2, OPLL and SN
plus hide unimplemented channels
2022-04-30 22:59:26 -05:00
tildearrow
ddcd486c61 YM2612: fix Furnace DAC mode glitching slides 2022-04-30 20:52:48 -05:00
tildearrow
1c3dcae05e per-channel oscilloscope, part 3
K00/C64/NES fixed
FDS, Game Boy and Sound Unit
2022-04-30 18:33:12 -05:00
tildearrow
312a037816 GUI: add missing actions to settings 2022-04-30 17:50:38 -05:00
tildearrow
c738ece374 per-channel oscilloscope, part 2
AY8930, K00, C64 and NES
2022-04-30 14:36:12 -05:00
tildearrow
b3b747a67a
Merge pull request #406 from akumanatt/patch-1
Have host sound chip appear before expansions
2022-04-30 14:28:27 -05:00
tildearrow
fae3de53a9 maybe uninitialized 2022-04-30 04:30:33 -05:00
tildearrow
4197fa44fb GUI: prepare for a per-channel oscilloscope?
currently supported systems:
- Amiga
- AY-3-8910
- Dummy System
- OPLL
- SegaPCM

no trigger supported yet!
2022-04-30 03:58:30 -05:00
tildearrow
ba657fe4db GUI: add backdrop if system file picker is open 2022-04-30 02:02:55 -05:00
tildearrow
52c0044bd9 GUI: add ability to customize startup system 2022-04-30 01:37:37 -05:00
Natt Akuma
9f49504891
Revert PC speaker presets 2022-04-30 11:59:47 +07:00
tildearrow
d79e5d77a7 GUI: finally implement "don't scroll when moving c
ursor" setting
2022-04-29 23:53:15 -05:00
tildearrow
2e8634626d new panning effects (80/81/82) 2022-04-29 23:41:14 -05:00
tildearrow
9c4fed2f4e GUI: fix sample paste crash 2022-04-29 22:41:07 -05:00
tildearrow
a8da4f0dba GUI: implement sample scroll with mouse wheel 2022-04-29 17:55:22 -05:00
tildearrow
d16ee7ed45 sysDef oopsie 2022-04-29 15:36:03 -05:00
tildearrow
635bd72904 GUI: sample/macro zoom with ctrl-wheel 2022-04-29 05:39:18 -05:00
tildearrow
aeea8a4912 GUI: prevent division by zero 2022-04-29 04:42:18 -05:00
tildearrow
dbf4635646
Merge pull request #405 from ZoomTen/chip-randomize
add chip randomizer button (enhancement)
2022-04-29 04:38:27 -05:00
tildearrow
0817fdeb84 GUI: possibly fix an instrument saving issue 2022-04-29 04:34:20 -05:00
Natt Akuma
a9a01bad4a
Have host sound chip appear before expansions
So that they are consistent with NES expansions.
For X16, the VERA is more integral to the system and has lower I/O address than YM2151
and YM2151 was once an expansion chip during development.
2022-04-29 16:32:30 +07:00
Zumi Daxuya
ee4d4c4251 GUI: add chip randomizer button 2022-04-29 15:56:16 +07:00
tildearrow
8500fa4c4c NES: add DMC write effect 2022-04-29 00:18:51 -05:00
tildearrow
abd42cbb03 SoundUnit: implement panning 2022-04-29 00:08:56 -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
tildearrow
2ac0e8af42 further improve channel allocation 2022-04-28 18:32:24 -05:00
tildearrow
34c3473389 improvements to swap/stomp channel 2022-04-28 14:03:58 -05:00
tildearrow
8675cdf802 OPL 4-op note preview possible fix 2022-04-28 05:38:28 -05:00
tildearrow
3906fc1dd4 better channel allocation strategy
issue #376
2022-04-28 05:04:34 -05:00
tildearrow
859b2cf8db implement channel swapping
issue #378
2022-04-28 03:36:15 -05:00
tildearrow
d211170e86 implement relative pitch macro mode 2022-04-28 01:31:16 -05:00
tildearrow
77b4e57c58 prepare for relative pitch macro 2022-04-28 00:50:09 -05:00
tildearrow
66f5b2117f dev90 - linear pitch macro option 2022-04-28 00:26:21 -05:00
tildearrow
4a9855f090 dev89 - C64: add test/gate macro
and "don't test/gate before new note" setting
2022-04-27 23:54:45 -05:00
tildearrow
3e9c0dd066 YMU759: update system definition 2022-04-27 23:32:20 -05:00
tildearrow
c0df205f2d more changes to autoNoteOn
now that there's a second prefer ins type, we get rid of DIV_INS_AMIGA check
2022-04-27 23:32:07 -05:00
tildearrow
f2b974acc5 SoundUnit: ring modulation 2022-04-27 22:57:36 -05:00
tildearrow
ff33eed2fd GUI: improve the maximize auto-detection a bit 2022-04-27 20:43:34 -05:00
tildearrow
f057581b27 GUI: possibly remember maximized state 2022-04-27 20:40:30 -05:00
tildearrow
180ff2457d NES: fix audio resolution being too low 2022-04-27 20:36:32 -05:00
tildearrow
dce862fdb9 SoundUnit: more stuff 2022-04-27 18:28:46 -05:00
tildearrow
410a509d73 SoundUnit: max cutoff 16383 2022-04-27 18:03:24 -05:00
tildearrow
3306e853d1 effectRows -> effectCols
i don't know why did I call it "rows"
2022-04-27 17:53:55 -05:00
tildearrow
9eaf600b4b GUI: rename Amiga/Sample to Sample 2022-04-27 17:44:00 -05:00
tildearrow
c171f3255a
Merge pull request #371 from BlastBrothers/compact-wave-editor
Compact wave editor
2022-04-27 15:02:23 -05:00
tildearrow
8db3831ab6 fix MSVC oh my 2022-04-27 05:02:18 -05:00
tildearrow
78bdd98e0b improvements to sysDef and UX changes
- "no undo" in clear option
- only display instrument types depending on current systems
2022-04-27 04:48:56 -05:00
tildearrow
24d60507e7 sysDef refactor, part 2
to @cam900 and @grauw: you may now pull this to your branch.
check out the comments in sysDef.cpp though.
2022-04-27 00:56:15 -05:00
tildearrow
351c22cb77 sysDef refactor, part 1 - PLEASE READ NOTE
THIS WILL NOT COMPILE!!!
i'm still working on it

to @cam900: DO NOT PULL TO YOUR ES5506 BRANCH YET - wait until I am done
with this refactor

to @grauw: DO NOT PULL TO YOUR OPL4 BRANCH YET - wait until I am done
with this refactor
2022-04-26 18:32:33 -05:00
tildearrow
e8f29cf122 prepare for macroInt preview in instrument editor 2022-04-26 15:24:45 -05:00
tildearrow
9eb9561b53 GUI: fix #400 2022-04-26 01:07:28 -05:00
tildearrow
28af57c4f0 fix metronome in low-latency mode 2022-04-26 00:22:49 -05:00
cam900
584e97f313
Missing header 2022-04-26 09:20:41 +09:00
tildearrow
e8c9b645c5 GUI: implement instrument preview in file dialog
SADLY it's just for the built-in file dialog
but i'll think of a solution for the external one
2022-04-25 18:58:17 -05:00
tildearrow
663e724111 I KNEW IT 2022-04-25 18:41:24 -05:00
tildearrow
b3f1935f2b GUI: prepare for more UX improvements
- add "temporary instrument" to DivEngine
- prepare for two things:
  - instrument preview on file picker (at least built-in one)
  - instrument selector for banks (#364)
2022-04-25 18:23:12 -05:00
tildearrow
2e52a2855c WonderSwan: fix noise phase reset 2022-04-25 18:07:49 -05:00
tildearrow
3e1c2197eb OPL: fix #369 2022-04-25 18:04:13 -05:00
tildearrow
2a952b1a66 dev87 - C64 changes
issue #335
2022-04-25 17:55:48 -05:00
tildearrow
8ba2787160 GUI: add two ImGui settings 2022-04-25 16:46:38 -05:00
tildearrow
5821135b38 don't return 1 on -help and -version
fixes #385
2022-04-25 15:54:31 -05:00
tildearrow
f3f92b8035 GUI: deprecate compat rate 2022-04-25 15:07:36 -05:00
tildearrow
7b79c32258 increase range of arp macro to 120 2022-04-25 14:58:58 -05:00
OPNA2608
184236f202 Fix more MSVC warnings
- Only one graphical entry point may be defined, otherwise the linker is
  confused and has to implicitly make a decision on which one to use.
  WinMain has CLAs as ANSI strings, wWinMain as Unicode ones.
  We're not passing -municode on MinGW and both MSVC & MinGW default to WinMain.
2022-04-25 21:21:55 +02:00
tildearrow
1b97d3912b YM2612: hopefully the final pitch slide fix 2022-04-25 11:59:02 -05:00
tildearrow
17cf657f6a one more pitch calc fix 2022-04-25 11:52:05 -05:00
tildearrow
ed6820ac46 GUI: fix cursor going out of bounds on paste 2022-04-25 11:23:44 -05:00
tildearrow
bcade6931a YM2612: allow for DAC rate higher than 32KHz
issue #391
2022-04-25 01:42:26 -05:00
tildearrow
832df58929 YM2612: fix several sample bugs 2022-04-25 01:24:42 -05:00
tildearrow
c84ff399d9 YM2612: fix negative octaves 2022-04-24 22:45:59 -05:00
tildearrow
52e35fdf04 huh? TODO: fix this 2022-04-24 18:17:05 -05:00
tildearrow
bd68ef5cc3 dev86 - SN duty macro phase reset fix 2022-04-24 18:12:18 -05:00
tildearrow
f99ba810fe PC speaker: fix timer issue 2022-04-24 17:48:04 -05:00
tildearrow
521b311692 GUI: implement clear 2022-04-24 17:39:18 -05:00
tildearrow
e414056f2d prepare for a clear option 2022-04-24 16:57:58 -05:00
tildearrow
bb4bc01778 Merge branch 'newpitch' 2022-04-24 14:41:12 -05:00
tildearrow
23be8d9336 the final piece of f-num/block work 2022-04-24 14:40:07 -05:00
James Alan Nguyen
798bc08431 verdammte compilerschieß 2022-04-24 14:04:56 +10:00
James Alan Nguyen
2b90bd6c66 = 0 2022-04-24 13:55:21 +10:00
James Alan Nguyen
2a48adfde8 Inline error 2022-04-24 13:43:56 +10:00
James Alan Nguyen
580cff9d32 Decided to EOF fail seeks beyond bounds 2022-04-24 12:37:49 +10:00
James Alan Nguyen
18f7dcc0b0 Address review comments 2022-04-24 12:31:37 +10:00
tildearrow
dd9bb8327a and this finally does it
the last thing to do is a compatibility flag
2022-04-23 18:02:43 -05:00
tildearrow
0e3dbdc1b2 this might fix it 2022-04-23 16:52:31 -05:00
tildearrow
6493a0481c i hate this 2022-04-23 13:39:00 -05:00
James Alan Nguyen
6638941c9d Address unused stuff and CI fix 2022-04-24 04:34:32 +10:00
James Alan Nguyen
3865e3eac6 #79: OPNI support added...... 2022-04-24 03:49:01 +10:00
James Alan Nguyen
bb0253d82f Urgh why are your operators BACKWARDS FFS 2022-04-24 03:15:20 +10:00
James Alan Nguyen
6bd199923f OPLI progress... still figuring out correct readings 2022-04-24 02:37:25 +10:00
James Alan Nguyen
a049e43618 #79: .y12 import done 2022-04-24 00:45:19 +10:00
James Alan Nguyen
b8d9fab745 Start .y12 (Gens KMod/Kaneda) patch dump import 2022-04-24 00:29:33 +10:00
James Alan Nguyen
0f47a3ed7b Fix DT range 2022-04-23 23:40:58 +10:00
James Alan Nguyen
8ad827478c #79: OPM complete for now 2022-04-23 21:48:18 +10:00
James Alan Nguyen
3550ad512a OPM import: Fix reset read procedural flow 2022-04-23 20:20:29 +10:00
James Alan Nguyen
f716ac262d #79: OPM import progress and start everything else 2022-04-23 19:52:09 +10:00
tildearrow
f6b34a5bb0 huh? 2022-04-23 04:25:22 -05:00
tildearrow
dd80cb8b55 what the heck 2022-04-22 17:42:42 -05:00
tildearrow
943e013cb4 YM2612: new pitch slide formula
finally nailed it (almost)
2022-04-22 16:46:24 -05:00
tildearrow
8db53faf72 new FM frequency calculation experiments 2022-04-22 04:23:52 -05:00
tildearrow
9c8d122389 GUI: use pattern font for input latch 2022-04-22 01:27:27 -05:00
tildearrow
2278c1a465 GUI: partially implement note input latch UI 2022-04-21 18:30:32 -05:00
tildearrow
bd58059261 GUI: transpose value does not transpose effect ID 2022-04-21 18:11:34 -05:00
tildearrow
50deead11a GUI: prepare for note input latch UI 2022-04-21 18:10:59 -05:00
tildearrow
7410622425 GUI: min ins selector width fix 2022-04-21 17:39:13 -05:00
tildearrow
023761373d GUI: separate operation masks
also separate note/value transpose commands
2022-04-21 17:32:28 -05:00
tildearrow
521bb9c16a GUI: add missing FDS preset 2022-04-21 16:01:46 -05:00
tildearrow
bc235ed494 GUI: prepare for separate operation mask 2022-04-21 03:45:06 -05:00
tildearrow
21c4d09c06 GUI: "none" instrument should not remove inscolumn 2022-04-21 03:26:34 -05:00
tildearrow
bfdfac004f GUI: fix ins 0 being inserted on blank song 2022-04-21 03:22:01 -05:00
tildearrow
dba9482cee GUI: add a "none" option to instrument list 2022-04-21 02:53:09 -05:00
tildearrow
06a69a20e8 GUI: add "absorb" instrument input mode 2022-04-21 02:35:50 -05:00
tildearrow
4195715dc0 use good default instrument when adding ins 2022-04-21 02:29:20 -05:00
tildearrow
79fa8f1d02 better default instrument for OPL/OPLL
no longer silence
2022-04-21 02:24:06 -05:00
tildearrow
73a4552e09 Merge branch 'master' of github.com:tildearrow/furnace 2022-04-20 15:30:24 -05:00
tildearrow
5630b69e64 GUI: fix selection being visible in dummy row area 2022-04-20 15:29:07 -05:00
tildearrow
f18f2968bd
Merge pull request #382 from cam900/patch-8
Further fix looped sample preview
2022-04-20 14:15:32 -05:00
cam900
ce5f3fd94e
Further fix looped sample preview 2022-04-20 20:38:20 +09:00
tildearrow
dac6231574 GUI: fix about screen in power saving mode 2022-04-19 21:55:23 -05:00
tildearrow
1a81c6c3e7 VRC6: saw volume 63 2022-04-19 21:55:13 -05:00
tildearrow
d4380e1524 GUI: add an effect list window 2022-04-19 18:44:05 -05:00
tildearrow
b6026e76c5 SMS: fix noise pitch being odd on linear pitch off
issue #379
2022-04-19 18:10:43 -05:00
tildearrow
7767881ca7 VRC6: fix saw column not yielding saw type ins
fixes #374
2022-04-19 13:59:17 -05:00
tildearrow
f550bd82dd possibly fix #373 2022-04-18 16:21:00 -05:00
tildearrow
cc5013f3dc possibly fix OPl3 per-channel audio export 2022-04-18 04:42:51 -05:00
tildearrow
a4ff0c3876 GUI: fix relative/fixed toggle label being wrong 2022-04-18 04:18:33 -05:00
tildearrow
afa59a27ff fix note preview for ADPCM-A 2022-04-18 04:16:59 -05:00
tildearrow
cc08dd895b get rid of backward completely for real 2022-04-18 03:17:11 -05:00
tildearrow
4b0ffcafe8 take 2 2022-04-18 01:40:26 -05:00
tildearrow
744c5982e1 bring on backward-cpp
cross your fingers
2022-04-18 01:31:03 -05:00
tildearrow
b8c790bf79 dev84 - new compat flag and store macro modes 2022-04-18 00:52:29 -05:00
tildearrow
fc8a130c71 implement panning macro
except for QSound
2022-04-17 14:15:57 -05:00
BlastBrothers
4bb77ea3cb This is not a sample properties table 2022-04-17 11:38:28 -04:00
tildearrow
5e7a4eae16 VERA: finally proper volume 2022-04-17 05:01:54 -05:00
tildearrow
c9324e04bd GUI: vertical C64 envelope editor 2022-04-17 02:51:03 -05:00
tildearrow
0258342324 M S V C 2022-04-17 02:08:53 -05:00
tildearrow
53994cebbd GUI: new default key for full-screen 2022-04-17 02:08:19 -05:00
tildearrow
4f59eb2602 GUI: add toggle full-screen keybind 2022-04-17 01:57:50 -05:00
tildearrow
0952d1b2f9 GUI: add a full-screen option 2022-04-17 01:54:42 -05:00
tildearrow
27698892d2 do I have amnesia or what 2022-04-17 01:37:57 -05:00
tildearrow
211a4b1821 C64: fix portamento not working... 2022-04-17 01:37:33 -05:00
tildearrow
496031a41f
Merge pull request #370 from AYCEdemo/vgmfix
VGM: Support ROM data in the second chip
2022-04-17 01:19:21 -05:00
tildearrow
3ce617335c
Merge pull request #365 from djtuBIG-MaliceX/feature/More-OPL-Patch-Support
More OPL patch support
2022-04-17 01:17:57 -05:00
tildearrow
768419f461 GUI: implement GB envelope view 2022-04-17 01:15:34 -05:00
James Alan Nguyen
d1fadf1076 Address review comments take 2 2022-04-17 15:54:00 +10:00
James Alan Nguyen
ac656f07bb Merge branch 'master' into feature/More-OPL-Patch-Support 2022-04-17 15:41:18 +10:00
tildearrow
003c9c3235 GUI: prepare for GB envelope view 2022-04-16 23:58:29 -05:00
tildearrow
99d57bf342 GUI: C64 envelope view 2022-04-16 23:43:49 -05:00
tildearrow
42e8454143 ADSR test area 2022-04-16 22:53:40 -05:00
tildearrow
523adfac86 GUI: fix sample up/down actions not changing wavef
orm
2022-04-16 22:28:14 -05:00
tildearrow
6450a5323a fix preview of sample instruments 2022-04-16 22:26:41 -05:00
BlastBrothers
ab4f9945a5 Define the compact wave editor 2022-04-16 21:51:53 -04:00
BlastBrothers
559a99c5fc Menu option, settings file 2022-04-16 20:47:40 -04:00
tildearrow
164d56a21f YM2151: implement panning macro i think 2022-04-16 18:35:35 -05:00
tildearrow
ef6e63239c GUI: introduce power-saving mode 2022-04-16 18:35:25 -05:00
tildearrow
8669e2cddc GUI: a better look for panning macro 2022-04-16 17:24:40 -05:00
tildearrow
330171edc3 GUI: add "note preview behavior" setting 2022-04-16 13:13:19 -05:00
Natt Akuma
d16d1260cb VGM: Support ROM data in the second chip 2022-04-16 22:54:01 +07:00
tildearrow
b4ac5c7e6a implement pitch macro 2022-04-16 01:39:40 -05:00
tildearrow
af41e56acc Lynx: set freqChanged to false! 2022-04-16 00:39:03 -05:00
tildearrow
d0c76e020c GUI: more note preview fixes 2022-04-16 00:10:52 -05:00
tildearrow
a81393472c GUI: move all preview actions to callback 2022-04-15 23:47:39 -05: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
James Alan Nguyen
a8201fa535 Address review comments 2022-04-16 09:37:26 +10:00
James Alan Nguyen
836fb57f14 Merge branch 'master' into feature/More-OPL-Patch-Support 2022-04-16 09:11:45 +10:00
tildearrow
98b9bd32b9 static_assert() on cmdName 2022-04-15 16:10:57 -05:00
tildearrow
55d821de6e potential to-do for Windows 2022-04-15 16:00:21 -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
eb70086234 sample 8-bit blep resample fix 2022-04-15 14:38:13 -05:00
James Alan Nguyen
c3ca175e46 Nitpicky cruft cleanup. 2022-04-15 22:21:03 +10:00
James Alan Nguyen
c3b393004d Fix for -Werror o/ o/ o/ 2022-04-15 22:21:03 +10:00
James Alan Nguyen
1985546d0b Add file extension to picker 2022-04-15 22:20:46 +10:00
James Alan Nguyen
c431add35b BNK - Fix sustain flag 2022-04-15 22:20:46 +10:00
James Alan Nguyen
7e692eb073 Checkpoint: BNK presets now loading and also refactoring duplicated operations. 2022-04-15 22:20:46 +10:00
James Alan Nguyen
29ed73a157 Start BNK 2022-04-15 22:20:46 +10:00
James Alan Nguyen
ee14f0fa8c SBI fixes:
- Support 2OP\x1A header (used in some third party implementations)
- Include 2op pair for Freq Monster 801 6op (4+2op) patches.
- Fall back to filename if no internal patch name found.
2022-04-15 22:20:46 +10:00
tildearrow
96715ed88c add experimental low-latency mode
do not use (yet)!
2022-04-15 05:37:23 -05:00
tildearrow
d47a59f5f0 implement pitch macro
TODO: test!
2022-04-15 03:37:16 -05:00
tildearrow
c743a9e96a implement phase reset macro on supported systems 2022-04-15 03:16:14 -05:00
tildearrow
c76e719371 GUI: prepare for more macros 2022-04-15 02:51:38 -05:00
tildearrow
f9e9c6c179 huh 2022-04-15 01:30:21 -05:00
tildearrow
600c38543b what is valid then 2022-04-15 01:29:29 -05:00
tildearrow
a530934671 fix retrigger issue in sample instruments 2022-04-15 01:26:44 -05:00
tildearrow
397ab43ffd C64: better muting strategy
now directly inside reSID rather than in the DivDispatch
fixes #285
2022-04-15 01:20:09 -05:00
tildearrow
b77b9e61ec the ugliest way to fix klisje paa klisje 2022-04-15 00:47:25 -05:00
tildearrow
3e15a066f8 Soundtracker .mod loading support
this required a re-organization of DivEngine::load() but it works
eventually we'll be able to load other file formats this way
2022-04-15 00:45:55 -05:00
tildearrow
51bc1119e8 hopefully fix oscilloscope line being out of bound 2022-04-14 23:22:25 -05:00
tildearrow
aa415caa57 GUI: fix another cppcheck warning 2022-04-14 23:22:11 -05:00
tildearrow
be483470ef GUI: add "Use standard OPL waveform names" option 2022-04-14 21:57:39 -05:00
tildearrow
68445435f9 fix several misc issues 2022-04-14 18:25:59 -05:00
tildearrow
8ff694eb13 GUI: fix MIDI input settings crash 2022-04-14 16:20:10 -05:00
tildearrow
5eb2717884 GUI: slightly tweak note preview algorithm
issue #338
2022-04-14 13:54:47 -05:00
tildearrow
11516d7923 GUI: allow cursor movement when stepping 2022-04-14 03:05:58 -05:00
tildearrow
55e085b148 GUI: separate current order from engine order
fixes #105
2022-04-14 02:58:29 -05:00
tildearrow
9795bca2ca fix audio export not aborting in per-channel mode 2022-04-14 02:26:47 -05:00
tildearrow
cc1933dcbb export ExtCh op channels as a group
in per-channel audio export
2022-04-14 02:16:08 -05:00
tildearrow
8ce8e87922 VERA: halve PCM volume
this should be good
2022-04-14 02:04:18 -05:00
tildearrow
3707a86f42 VERA: 4x the volume 2022-04-14 01:51:21 -05:00
tildearrow
0e2ecaf6be add setting to disable scrollChangesOrder
it's kinda unreliable at the moment
2022-04-14 01:25:21 -05:00
tildearrow
d6333af330 GUI: unreliable version of #63 2022-04-13 18:16:55 -05:00
tildearrow
720f046f28 GUI: implement no-nibble-push value input 2022-04-13 17:42:55 -05:00
tildearrow
e86174921b GUI: partially add a piano 2022-04-13 03:24:49 -05:00
tildearrow
2e2fafd878 GUI: add metronome volume setting 2022-04-13 02:29:07 -05:00
tildearrow
2cd454a59d major warning dialog changes
it makes more sense now. closes #321
2022-04-13 02:09:59 -05:00
tildearrow
75f99cfb09 update credits 2022-04-13 00:37:48 -05:00
tildearrow
fd723763f6 fix serious issue! 2022-04-13 00:35:38 -05:00
tildearrow
fbf7f9304e dev83 - yet another E1xy/E2xy fix
and 17xx fix in ExtCh
2022-04-13 00:34:00 -05:00
tildearrow
aab7cf2512 oops 2022-04-12 23:03:24 -05:00
tildearrow
ff75c7fe01 GUI: implement macro line drawing 2022-04-12 23:03:20 -05:00
tildearrow
9bd8aef538 SMS: fix note slides on upper notes
hopefully this doesn't break anything
2022-04-12 21:30:35 -05:00
tildearrow
45f14a951a GUI: add Colorize instrument editor using instrume
nt type option
2022-04-12 21:30:12 -05:00
tildearrow
152d05dbfc GUI: add "separate car/mod colors" to FM editor
and other improvements
2022-04-12 18:26:25 -05:00
tildearrow
8facb43081 GUI: change behavior of play buttons 2022-04-12 17:01:41 -05:00
tildearrow
25c5c97c47 GUI: add YM2414 to system presets 2022-04-12 16:12:32 -05:00
tildearrow
8702effbb9 prepare for storing other details 2022-04-12 15:39:01 -05:00
tildearrow
bc3e64726e prepare for "select instruments to load" dialog 2022-04-12 15:38:40 -05:00
tildearrow
40451cc039 GUI: update credits 2022-04-12 04:36:45 -05:00
tildearrow
a20861559b implement .dmc loading 2022-04-12 03:34:53 -05:00
tildearrow
dae7a9a099 GUI: add "Create instrument from sample" option 2022-04-12 03:00:57 -05:00
tildearrow
3b0be2c42a GUI: focus sample editor when clicking on waveform 2022-04-12 02:46:51 -05:00
tildearrow
ea463e4dfd
Merge pull request #352 from OPNA2608/add/ff_import
Add FF bank import
2022-04-12 02:43:16 -05:00
tildearrow
5a5f800297 GUI: deduplicate a lot of code 2022-04-12 02:39:03 -05:00
tildearrow
ffef40c098 GUI: clampSetting() for sample layout 2022-04-12 02:24:42 -05:00
tildearrow
0ae414da01 Merge branch 'compact-sample-editor' of https://github.com/BlastBrothers/furnace into BlastBrothers-compact-sample-editor 2022-04-12 02:21:53 -05:00
tildearrow
455cccdef0 GUI: sample improvements
- resample change C-4 note
- add duplicate option
2022-04-12 02:15:12 -05:00
tildearrow
3d94aef14b WaveSynth: remove to-do 2022-04-12 01:51:45 -05:00
tildearrow
9baa261253 GUI: reduce initial oscilloscope latency 2022-04-12 01:51:15 -05:00
tildearrow
463090717b Amiga: what the hell? 2022-04-12 01:26:14 -05:00
tildearrow
24209c7853 dev82 - amiga wavetables
closes #16 (yay!)
2022-04-12 01:19:00 -05:00
tildearrow
014e86d3d1 add missing license headers 2022-04-12 00:18:29 -05:00
tildearrow
e77ecfd04b N163: implement wave synth
I hope this does not break any songs
2022-04-12 00:17:34 -05:00
tildearrow
0ea6437a86
Merge pull request #362 from BlastBrothers/master
OPLx / OPLL envelope graphs reflect the state of sustain and/or EGS flags
2022-04-11 22:41:26 -05:00
tildearrow
ef5953cda5 don't store the upper 24 bits of FM macro values
those are unnecessary (no FM parameter ever goes above 255)
2022-04-11 22:37:34 -05:00
tildearrow
456be8a08f Merge branch 'ins_fix' of https://github.com/cam900/furnace into cam900-ins_fix 2022-04-11 22:36:13 -05:00
BlastBrothers
0771cdcdae Add in the alternate editor as an option 2022-04-11 22:14:20 -04:00
BlastBrothers
93b87cc65d Sample preview can only be so tall now 2022-04-11 21:51:43 -04:00
BlastBrothers
f362b1288c Add (currently useless) menu option ofr compact editor 2022-04-11 21:27:23 -04:00
BlastBrothers
f6381771a9 Revert "Thin sample editor"
This reverts commit 8a2bf3ae39.
2022-04-11 20:16:51 -04:00
BlastBrothers
61715fd8b0 Revert "Rearrange buttons"
This reverts commit 052a0923fe.
2022-04-11 20:15:46 -04:00
BlastBrothers
af2b19ae62 Revert "Sample preview has maximum y height relative to x"
This reverts commit 1151db5091.
2022-04-11 20:15:03 -04:00
BlastBrothers
1d14ca2d88
Merge branch 'tildearrow:master' into master 2022-04-11 19:51:31 -04:00
tildearrow
8407a7d3a4 add several TODO comments
self-note: check this one after you come back!
2022-04-11 18:12:05 -05:00
BlastBrothers
83baae92d9 Now it works ofr OPLL too, plus global sus 2022-04-11 17:26:40 -04:00
tildearrow
b5472fb52e third attempt 2022-04-11 13:36:02 -05:00
tildearrow
1adc7753be second attempt 2022-04-11 13:08:12 -05:00
BlastBrothers
62ea469600 Works for OPLx 2022-04-11 13:55:20 -04:00
tildearrow
1abfa0644b oops 2022-04-11 12:49:43 -05:00
BlastBrothers
0094e75bcf Pass sus to drawFMEnv- but is this the right var? 2022-04-11 12:15:11 -04:00
BlastBrothers
72632b9b72
Merge branch 'tildearrow:master' into master 2022-04-11 10:15:47 -04:00
cam900
0bba063437 Fix possibly breaks instrument loading 2022-04-11 21:15:52 +09:00
cam900
a454afcd19 Fix possible instrument loading fix 2022-04-11 21:08:58 +09:00
tildearrow
128fc596cb GUI: wait what? 2022-04-11 04:07:01 -05:00
tildearrow
224d8e11e5 GUI: add some oscilloscope settings 2022-04-11 03:34:38 -05:00
tildearrow
7bb0743598 GUI: fix file path corruption on sys file picker 2022-04-11 03:14:12 -05:00
tildearrow
ac286fc8d1 GUI: real-time color setting preview 2022-04-11 02:53:21 -05:00
tildearrow
7905b813e0 GUI: TableSetupScrollFreeze() for log view 2022-04-11 02:45:02 -05:00
tildearrow
283d74c32f GUI: friendlier name for N163 TDM disable 2022-04-11 02:39:06 -05:00
tildearrow
d2a8b028e8
Merge pull request #354 from cam900/n163_demultiplex
Add support of N163 demultiplexed output
2022-04-11 02:38:17 -05:00
tildearrow
d485411727 hopefully fix Windows build 2022-04-11 02:01:23 -05:00
tildearrow
39784bc7c2 YMU759 samples at 48KHz 2022-04-11 01:58:41 -05:00
tildearrow
8a49522e59 beta 1-3 .dmf loading
i did it
2022-04-11 01:41:45 -05:00
tildearrow
9e0e725802 Sorry but I think I'd like to go now. 2022-04-11 00:12:24 -05:00
tildearrow
552967246d **SUBMODULE UPDATE - PLEASE READ!**
as of now I have added the Date library as a submodule in order to have
log messages in the correct time zone

please update your submodules by doing:
```
git submodule update --init --recursive
```
2022-04-10 23:01:55 -05:00
tildearrow
6b627ab885 TOOK 2022-04-10 22:16:42 -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
4ae13c15e6 get rid of <list> 2022-04-10 18:07:30 -05:00
tildearrow
09dec38407 Merge branch 'macro' (#353) 2022-04-10 17:26:15 -05:00
tildearrow
5f526f4b6e add playSub time log 2022-04-10 17:24:41 -05:00
tildearrow
51761bc6df part 3 - C64 mishap 2022-04-10 16:53:43 -05:00
tildearrow
51207e58ad part 2 - finally 2022-04-10 16:52:03 -05:00
tildearrow
c13358d96f part 1 2022-04-10 15:31:32 -05:00
OPNA2608
91d8c48542 Add FF bank import 2022-04-10 14:16:33 +02:00
cam900
86b523a83e Revert unnecessary changes 2022-04-10 20:24:31 +09:00
cam900
e6d74766ca Add support of N163 demultiplexed output
so, there's to way for reduce N163 noises: reduce channel limit and demultiplex
* channel limit is runtime changeable and it makes some usable effects with disable demultiplex
* demultiplex is used for "non-ear destroyable" emulators, but less hardware accurate. (when LPF and RF filter is not considered)
Furnace support both after this, You can choose output behavior via configuration flag.
2022-04-10 20:22:49 +09:00
cam900
9a6127e4c1 Change macro 2022-04-10 18:47:32 +09:00
cam900
78b88d61ce Fix format breaking 2022-04-10 18:45:55 +09:00
cam900
075ec9b6de Read and Write this 2022-04-10 18:38:48 +09:00
cam900
518841c17e Fix FM layout in "Compact" mode, Prepare for per-operator on/off control on FM (possibly controllable with phase reset macro?) 2022-04-10 18:36:04 +09:00
cam900
b167034e06 Merge remote-tracking branch 'upstream/master' into macro 2022-04-10 17:29:36 +09:00
cam900
2e6193706a Fix value fill 2022-04-10 17:26:50 +09:00
tildearrow
e23dcd6e1b implement hard reset on OPM/OPZ/OPNB 2022-04-10 03:04:31 -05:00
cam900
228822e19e Fix signed type issue 2022-04-10 16:43:32 +09:00
cam900
68cf969600 Merge remote-tracking branch 'upstream/master' into macro 2022-04-10 16:34:23 +09:00
cam900
55639747ee Make GCC happy 2022-04-10 16:32:58 +09:00
tildearrow
570c43e332 GUI: follow cursor when pasting 2022-04-10 02:20:16 -05:00
tildearrow
f42855f170 add 30xx effect to hard reset envelope
currently only for 2612!
2022-04-10 02:11:36 -05:00
cam900
4b912fd145 Code style 2022-04-10 15:50:59 +09:00
cam900
eb05310d37 Fix issue in instrument editor 2022-04-10 15:49:26 +09:00
cam900
13bdf2d86d Prepare for FMS2, AMS2 macro for YM2414 2022-04-10 15:16:51 +09:00
cam900
ae4f005d67 Merge remote-tracking branch 'upstream/master' into macro
# Conflicts:
#	src/engine/platform/c64.cpp
#	src/gui/insEdit.cpp
2022-04-10 14:47:10 +09:00
cam900
d3e5efe834 Prepare for macro refactoring 2022-04-10 14:01:55 +09:00
tildearrow
0eb02422d5 fix possible pattern crash
issue #325
2022-04-09 18:25:38 -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
11cdc3924d GUI: improve oscilloscope
it's not finished yet
2022-04-09 05:02:24 -05:00
OPNA2608
16ad29ae7a Fix C4293: '<<': shift count negative or too big, undefined behavior
MSVC seems kinda braindead: https://reviews.llvm.org/D41030#952363
2022-04-09 10:54:06 +02:00
OPNA2608
4c19a973ef Fix for C4805: '|': unsafe mix of type 'unsigned char' and type 'bool' in operation 2022-04-09 10:54:06 +02:00
OPNA2608
82d893082c Fix for C4005: '_CRT_SECURE_NO_WARNINGS': macro redefinition 2022-04-09 10:54:06 +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
tildearrow
320250b831 MIDI out improvements 2022-04-09 01:50:44 -05:00
tildearrow
9e0e8f3345 dev80 - increase song limits
up to 256 patterns
up to 256 orders
2022-04-08 17:21:36 -05:00
tildearrow
0fcc73b6c6 WaveSynth: implement more effects 2022-04-08 16:03:54 -05:00
tildearrow
8e364944dc
Merge pull request #349 from cam900/patch-7
Fix loop area view in sample editor
2022-04-08 12:26:31 -05:00
tildearrow
48e8e49ba8 whoops! 2022-04-08 12:21:42 -05:00
cam900
dccd30f73c
Fix loop area view in sample editor 2022-04-09 00:42:27 +09:00
BlastBrothers
052a0923fe Rearrange buttons 2022-04-08 10:48:42 -04:00
BlastBrothers
1151db5091 Sample preview has maximum y height relative to x 2022-04-08 10:23:51 -04:00
BlastBrothers
7850e892d5
Merge branch 'tildearrow:master' into master 2022-04-08 09:44:53 -04:00
tildearrow
65f893822a dev79 - wave synth data storage
also wave synth works on swan and X1-010 now
however it's untested on X1 because i wrote it in bed
2022-04-08 04:34:39 -05:00
tildearrow
26dca41b63 FDS: wave synth 2022-04-08 02:59:58 -05:00
tildearrow
3b7e9d2929 BubSys: bring on the wave synth 2022-04-08 02:42:33 -05:00
tildearrow
62ff7317e3 GUI: effectCursorDir improvements 2022-04-08 02:16:57 -05:00
tildearrow
5bd076d13e initial bring-up of the wave synth
issue #16
2022-04-08 02:11:33 -05:00
BlastBrothers
8a2bf3ae39 Thin sample editor 2022-04-08 00:01:42 -04:00
tildearrow
0c1e2ddcb0 OPL: fix OPL2 not having waveforms 2022-04-07 20:48:34 -05:00
tildearrow
5d52ef7f00 support .dmf with 6-bit wavetables 2022-04-07 20:13:11 -05:00
tildearrow
500ce8086d GUI: initial wave synth UI 2022-04-07 18:27:17 -05:00
tildearrow
4dfe9f97fb prepare for wavetable synth 2022-04-07 15:46:48 -05:00
tildearrow
05dfec9f3d GUI: fix VRC6 saw waveform macro being displayed 2022-04-07 13:48:22 -05:00
tildearrow
3f5d0a1e46 GUI: fix paste mode binds not working 2022-04-07 02:37:19 -05:00
tildearrow
48838440ba GUI: add ability to colorize rows per highlight 2022-04-07 02:24:54 -05:00
tildearrow
dab164f09e GUI: add "effect deletion alters value" setting 2022-04-07 02:02:52 -05:00
tildearrow
dd6229a6b9 OPZ: more work 2022-04-07 01:44:27 -05:00
tildearrow
ad09254cf4 dev78 - new compat flag that fixes ExtCh 2022-04-07 01:14:34 -05:00
tildearrow
96d45dafb2 OPZ: same 2022-04-07 01:04:35 -05:00
tildearrow
e1b77d7e2b OPM: if the LFO rate is 0, don't clock the counter 2022-04-07 01:03:16 -05:00
tildearrow
78cd99af32 update ymfm 2022-04-07 00:57:52 -05:00
tildearrow
b162c09f7c GUI: OPZ instrument editor work - dev77 2022-04-07 00:45:53 -05:00
tildearrow
530327383a initial OPZ bring-up
even emulation is incomplete and one thing is making me tired...
2022-04-06 22:56:06 -05:00
tildearrow
9345576fc3 MMC5: fix 12xx not working 2022-04-06 22:55:24 -05:00
tildearrow
2e327953e8 YM2610(B): AY unification
as of now the SSG part of these chips is handled by a DivPlatformAY8910
within the DivPlatformYM2610.
this means less code duplication and therefore prepares for
OPN/OPNA support.
2022-04-06 18:03:30 -05:00
tildearrow
6fb2a2e7f5
Merge pull request #343 from AYCEdemo/petvic
VIC-20: Make noise state consistent across inits
2022-04-06 15:06:08 -05:00
tildearrow
743664aad1 GUI: extension check for keybinds/colors/layout 2022-04-06 14:45:58 -05:00
tildearrow
4d23c1dc6d new extension for colors and keybinds 2022-04-06 14:17:29 -05:00
tildearrow
da1f34372a GUI: I forgot about layout! 2022-04-06 14:11:58 -05:00
tildearrow
eb8f99dafe GUI: import/export colors/keybinds/layout
untested
2022-04-06 13:53:39 -05:00
Natt Akuma
ba8ee96069 VIC-20: Make noise state consistent across inits 2022-04-06 19:11:45 +07:00
tildearrow
9d653b58b3 hopefully fix MSVC build 2022-04-06 04:24:20 -05:00
tildearrow
4a131952e4 GUI: ps_fopen 2022-04-06 02:46:09 -05:00
tildearrow
132c5007fa GUI: simplify color load/save code
they are in guiConst.cpp now too.
2022-04-06 02:30:12 -05:00
tildearrow
95ce867ce3 GUI: add mentions of FDS to wave editor 2022-04-06 02:09:53 -05:00
tildearrow
1054f92029 GUI: simplify keybind load/save code
as of now action definitions are in guiConst.cpp.
2022-04-06 01:52:58 -05:00
tildearrow
5de58e1f6d GUI: add settings for borders 2022-04-06 00:34:26 -05:00
tildearrow
2da96a7e76 initial MMC5 bring-up 2022-04-06 00:34:12 -05:00
tildearrow
280cbb3e39 FDS: possibly final work
the last thing left to do is the filter, but everything works now
2022-04-05 18:18:14 -05:00
tildearrow
4ba50b433a FDS: .dmf wavetables will be 6-bit soon 2022-04-05 15:14:48 -05:00
tildearrow
e1976b96a0 TODO: modulation table 2022-04-05 14:55:17 -05:00
tildearrow
5f71857439 GUI: attempt at optimizing pattern draw code 2022-04-04 23:38:38 -05:00
tildearrow
258a905aaa harden .dmf loader
issue #325
2022-04-04 14:15:26 -05:00
tildearrow
3a7a132f02 harden Furnace file loader
issue #325
2022-04-04 14:04:36 -05:00
tildearrow
590b21bc37 GUI: prepare for FDS ins editor 2022-04-04 13:26:02 -05:00
tildearrow
f89360392f GUI: add setting to customize the title bar
closes #339
2022-04-04 13:25:38 -05:00
tildearrow
81150d96fa FDS: add FDS ins type auto-detection on .dmf 2022-04-04 04:57:38 -05:00
tildearrow
ccb8d3d355 dev76 - format changes
- 8 more macros
- FDS instrument data
2022-04-04 04:47:52 -05:00
tildearrow
e5a162dbe6 GUI: add presets for FDS and MMC5 2022-04-04 00:48:08 -05:00
tildearrow
eee2500b5c FDS: effect names and register sheet 2022-04-04 00:47:27 -05:00
tildearrow
4ec91b8b42 fix .fui instruments not loading! 2022-04-04 00:12:11 -05:00
tildearrow
ac3772c024 initial FDS bring-up 2022-04-03 22:37:16 -05:00
tildearrow
9ef50bbda7 GUI: fix keybinds leaking after setting them to no 2022-04-03 19:23:02 -05:00
tildearrow
90bbc42290 GUI: more usability improvements
- move cursor to end of clipboard when pasting
- better effect input
2022-04-03 19:20:30 -05:00
tildearrow
d112cd0c68 what? 2022-04-03 17:22:44 -05:00
tildearrow
3a59e260d8 prepare for handling of FDS .dmf 2022-04-03 17:14:12 -05:00
tildearrow
d63ddda402 FDS preparation work DOES NOT COMPILE 2022-04-03 16:02:25 -05:00
tildearrow
109f80d4da re-organize instrument loading code 2022-04-03 13:53:34 -05:00
tildearrow
82ae2bf877 fix version 9 .dmp -_- 2022-04-03 02:34:35 -05:00
tildearrow
5ff1c9d70d OPN ext ch: fix mute being overridden when seeking 2022-04-03 02:28:46 -05:00
tildearrow
6567d29450 separate instrument file ops 2022-04-03 02:15:04 -05:00
tildearrow
e44d081adc prepare for .opm support
goodbye addInstrumentFromFile
hello instrumentFromFile + addInstrumentPtr

these changes are required to allow loading instrument banks
2022-04-03 01:56:49 -05:00
tildearrow
44d72c2106 GUI: add load/save/select to ins/wave editors
TODO: on sample editor
TODO: load replace instead of load insert
2022-04-02 18:22:06 -05:00
tildearrow
6c732a1891 GUI: change sample add icon to new 2022-04-02 18:21:29 -05:00
tildearrow
ffb536846b fix .dmp loading 2022-04-02 17:37:43 -05:00
tildearrow
fa234afc9d GUI: prepare to add a "lock layout" option 2022-04-02 15:07:47 -05:00
tildearrow
b90a26a33d GUI: order view similar pattern coloring 2022-04-02 00:41:52 -05:00
tildearrow
ab5ed4413e GUI: usability fixes (ctrl-wheel)
as of now Ctrl-wheel allows you to fine change sliders
also added undo/redo buttons to sample editor
2022-04-02 00:11:44 -05:00
tildearrow
81c8bf4e59 add ability to select VGM version when exporting
by default it is 1.71 but please tell me if you want this to be changed
2022-04-01 21:40:32 -05:00
tildearrow
13d08b3cb6 maybe fix another audio export crash 2022-04-01 16:31:06 -05:00
tildearrow
dfb4f211c1 PC speaker: volume macro (finally) 2022-04-01 13:47:58 -05:00
tildearrow
abd5dd3a12 TODO: rewrite getSystemSongName 2022-04-01 13:02:37 -05:00
tildearrow
251da3a9d0 dev75 - MIDI input improvements (mostly) 2022-04-01 05:24:35 -05:00
tildearrow
ffb01dd19c Revert "release 0.6pre0"
This reverts commit f7566455c2.
2022-04-01 05:20:00 -05:00
tildearrow
f7566455c2 release 0.6pre0 2022-04-01 04:45:06 -05:00
tildearrow
4b436ef1fc and more MIDI input refinements 2022-04-01 02:21:10 -05:00
tildearrow
052dcb2576 implement more MIDI stuff 2022-04-01 01:50:01 -05:00
tildearrow
a08f7507fd N163: don't auto-scale volume 2022-03-31 23:11:02 -05:00
tildearrow
de7a4eb2e9 GUI: better MIDI learn options 2022-03-31 22:48:46 -05:00
tildearrow
a5a65d4db3 GUI: implement MIDI learn 2022-03-31 18:39:01 -05:00
tildearrow
6d1d91ca68 AY8930: add TEST register effect 2022-03-31 17:14:45 -05:00
tildearrow
2d6a3b93d8 VRC6: change default saw volume 2022-03-31 15:40:46 -05:00
tildearrow
d321292543 separate VRC6 and VRC6 saw ins types 2022-03-31 15:25:58 -05:00
tildearrow
f689409f02 kind of MIDI output 2022-03-31 03:33:05 -05:00
tildearrow
45ce940d66 better MIDI and note input handling
closes #147
2022-03-31 01:51:57 -05:00
tildearrow
6f3b9f2e5d VRC6: changes around volume macro 2022-03-30 22:55:55 -05:00
tildearrow
a8ee4b1245 GUI: kinda working MIDI note input 2022-03-30 18:18:39 -05:00
tildearrow
501ecc063d GUI: earliest MIDI note input 2022-03-30 15:44:27 -05:00
tildearrow
cb107ebbac GUI: possibly fix out-of-range notes in preview
now they should release
2022-03-30 04:49:15 -05:00
tildearrow
cccf90d417 OPL: implement VGM export fake reset 2022-03-30 04:27:11 -05:00
tildearrow
cc152bc3d0 OPL: partially enable VGM export
it works except for fake reset
2022-03-30 03:36:16 -05:00
tildearrow
f1ee04393b GUI: fix log error if MIDI map file doesn't exist 2022-03-30 01:01:45 -05:00
tildearrow
12ade13580 SegaPCM: fix pitched samples on VGM export
fixes #291
2022-03-30 00:33:29 -05:00
tildearrow
941aab0def GUI: add ability to input waveform data in hex
closes #327
2022-03-30 00:28:49 -05:00
tildearrow
fb70afe50d
Merge pull request #329 from cam900/n163_macro
Minor N163 macro fix
2022-03-30 00:28:01 -05:00
tildearrow
80d67f9b23 BubSys: fix muting 2022-03-30 00:15:42 -05:00
tildearrow
af6bbf9493 OPN: fix LFO effect not working in ext ch mode 2022-03-30 00:09:53 -05:00
tildearrow
7e34c7746e change the porta logic a bit 2022-03-30 00:08:04 -05:00
tildearrow
a43034f559 OPN: fix portaPause not resetting on new note 2022-03-29 23:58:50 -05:00
cam900
6eba483cba Minor N163 macro fix 2022-03-30 08:28:38 +09:00
tildearrow
c7a37959f0 GUI: early MIDI action UI - COMPLETELY UNTESTED
it will crash (or not)
2022-03-29 17:38:30 -05:00
tildearrow
2921f88895 try using 0 2022-03-29 16:18:38 -05:00
tildearrow
77798f6ed7 more MIDI work... still not there 2022-03-29 16:09:15 -05:00
tildearrow
c26123e782 VIC-20: wait what? 2022-03-29 14:11:57 -05:00
tildearrow
5cea8ed3e3 QSound: change volume macro formula 2022-03-29 02:28:40 -05:00
tildearrow
f92eb9352d GUI: fix visual glitch when changing song length 2022-03-29 01:36:45 -05:00
tildearrow
92c1add075 GUI: prevent one possible bug when moving cursor 2022-03-29 00:37:45 -05:00
tildearrow
964039c8db fix file export crash
closes #323
2022-03-29 00:25:28 -05:00
tildearrow
4825fe7adb more work 2022-03-28 18:19:47 -05:00
tildearrow
81319e34bc error: There was a problem with the editor 'vi'. 2022-03-28 15:31:03 -05:00
tildearrow
08910d37b2 oh yes more MIDI work 2022-03-28 15:24:09 -05:00
cam900
1019faf34c Fix initial channel, Minor optimization for N163 2022-03-29 04:56:35 +09:00
tildearrow
3561d866fb
Merge pull request #317 from cam900/vrc6
Minor optimization
2022-03-28 13:23:52 -05:00
tildearrow
f1b5a35ff5
Merge pull request #306 from cam900/preset2
Add more presets
2022-03-28 13:23:22 -05:00
cam900
1ca63bdc09 Fix N163 2022-03-29 00:31:17 +09:00
tildearrow
5360cd73f4 earliest MIDI input! (no note input tho) 2022-03-28 03:46:50 -05:00
cam900
b11c840ed4
Merge branch 'master' into preset2 2022-03-28 12:46:52 +09:00
cam900
5060c0c140
Merge branch 'tildearrow:master' into vrc6 2022-03-28 12:39:00 +09:00
cam900
7bd39603a9 Further fix 2022-03-28 12:31:42 +09:00
tildearrow
13a8873050 VRC6: period tuning fixes
now it is identical to the NES channels
2022-03-27 22:30:29 -05:00
tildearrow
4422ff7695 Merge branch 'vrc6' of https://github.com/cam900/furnace into cam900-vrc6 2022-03-27 22:16:04 -05:00
tildearrow
075f758e4d Namco 163 refinements 2022-03-27 22:04:01 -05:00
tildearrow
c4fc797578
Merge #304 - DO NOT COMPILE
Add Namco 163 Support
Not final - changes needed
2022-03-27 21:35:58 -05:00
cam900
79d6433006 Merge branch 'master' of https://github.com/tildearrow/furnace into vrc6 2022-03-28 10:11:09 +09:00
tildearrow
e5ce7c63f8 GUI: redesign FM editor layout, part 4
now with OPL and OPLL
2022-03-27 18:30:46 -05:00
tildearrow
ef88fc57d8 GUI: remove invalid comment 2022-03-27 16:35:55 -05:00
tildearrow
a7647a1d57 nice troll 2022-03-27 13:38:28 -05:00
cam900
5c922a090e Fix enable bit correction 2022-03-28 01:43:43 +09:00
cam900
44b4c5c5aa Spacing 2022-03-28 01:23:52 +09:00
cam900
5c5c9199c7 Channel enable bit is inverted 2022-03-28 01:22:24 +09:00
cam900
ef104ce0b0 Add VRC6 support
2 Pulse channels:
- 8 level pulse duty cycle, DAC mode(just ignores duty cycle)/pulse wave mode, 4 bit volume.
- Furnace support PCM playback in pulse channels with duty cycle ignore mode.

Sawtooth:
- nothing but 6 bit volume (8 bit accumulator in technically) and 12 bit frequency (periodic).

VRC6 instrument:
- 6 bit Volume macro for finer sawtooth volume handling, also 3 bit Duty cycle macro for pulse channels.

Duty, PCM mode command and Duty macro affects for pulse channel only.
2022-03-28 01:06:56 +09:00
tildearrow
09b5dd556e GUI: add setting to change position of SL slider 2022-03-27 03:38:04 -05:00
tildearrow
f7d7b00e93 GUI: redesign FM editor layout, part 3 2022-03-27 03:29:45 -05:00
tildearrow
5dac609d92 Genesis: better DAC write algorithm
only write DAC if there aren't too many queued writes
2022-03-27 01:47:27 -05:00
tildearrow
1c98748a88 GUI: redesign FM editor layout, part 2 2022-03-27 01:38:24 -05:00
tildearrow
a58c6da19d Amiga: oops 2022-03-27 00:29:37 -05:00
tildearrow
08dd693fa0 Amiga: add AM/PM effects 2022-03-27 00:02:17 -05:00
tildearrow
154ef3f9a3 Amiga: filter emulation 2022-03-26 23:39:20 -05:00
tildearrow
b514ee30da MOD import: non-linear pitch 2022-03-26 22:34:11 -05:00
tildearrow
9b6e582f8d dev72 - two more compat flags 2022-03-26 22:15:15 -05:00
tildearrow
5c11150b87 T O D O 2022-03-26 21:43:15 -05:00
tildearrow
3ea9c0360f implement F3xx and F4xx for fine vol slides 2022-03-26 20:58:33 -05:00
tildearrow
73536c0691 AY: add effects to write to I/O ports 2022-03-26 20:55:43 -05:00
tildearrow
7237e8fb39 GUI: add a space
i am lazy
2022-03-26 18:30:08 -05:00
tildearrow
4caa9376bc GUI: what 2022-03-26 17:30:26 -05:00
tildearrow
d869c21f52 oops I forgot to commit! 2022-03-26 13:47:13 -05:00
tildearrow
26791df58e GUI: redesign FM editor layout, part 1
thanks Raijin for the concept
2022-03-25 18:16:47 -05:00
cam900
dc62c8610c SAA1099 in CMS/Game Blaster and Compatible isn't hard panned per chip
Info: http://hackipedia.org/browse.cgi/Computer/Platform/PC%2c%20IBM%20compatible/Sound%20and%20Music/Creative%20Labs/Game%20Blaster/C%e2%88%95MS%20Programming%20Information%20by%20Creative%20Labs%20%281990%29.pdf , VGMs recorded from CMS/Game Blaster
2022-03-26 02:24:58 +09:00
cam900
ae17f7e616 NES with Family Noraebang
An Karaoke unit connectable for NES cartridge slot.
And, sure. It is unlicensed.
2022-03-26 00:47:39 +09:00
tildearrow
5f7078db42 bang bang bang 2022-03-25 03:41:43 -05:00
tildearrow
0687a6f217 this stupid effect 2022-03-25 03:18:44 -05:00
tildearrow
ed857b20c4 potentially breaking change: better freq formula
now using a 4096-entry-long table for calculating final period/frequency
see issue #303
2022-03-25 02:52:41 -05:00
tildearrow
03da02711a OPLL: it's tested now. works
last thing to do is to restore drum pitches
2022-03-25 02:10:57 -05:00
tildearrow
6e35640537 GUI: less annoying PET waveform view 2022-03-25 02:10:44 -05:00
tildearrow
d2a78295ce OPLL: wooooow how did this break 2022-03-25 01:42:04 -05:00
tildearrow
ea49c760c5 OPLL: part 1 of fixing drum volumes 2022-03-24 04:53:09 -05:00
tildearrow
7f39ec723a SMS: overdrive 2 fixes
nice
2022-03-24 01:27:53 -05:00
tildearrow
bd36a4ffdc dev71 - more compatibility flags for .mod 2022-03-23 23:57:10 -05:00
cam900
168577e4b9
Revert preset 2022-03-24 13:49:41 +09:00
cam900
6f18be3ede Add presets:
Standalone OPLs

Sound Blaster Pro 1.0
Earliest Sound Blaster Pro has 2 OPL2s, it supports stereo like successor but with hardpanned OPL2: one for Left output and one for Right output.

PC-FXGA
PC-FX, SuperGrafx on steroids, Released at December 1994 in NEC.
PC-FXGA is PC add-on card version of PC-FX for IBM PC and PC-98. It's released at 1995 with 3D acceleration - it lacks at original PC-FX console.

SAAYM
Modern CMS/Game Blaster Compatible PC ISA sound card with YM2151 addon. Commander X16 will be use its configuration but SAA in X16 is finally replaced to VERA.

Seta 1 + FM Addon
X1-010 and YM3438, Both driven by Z80. Ultra Toukon Densetsu used this configuration.
2022-03-24 13:46:35 +09:00
tildearrow
ece34990e5 several pitch fixes and stuff
pull request #303
2022-03-23 23:19:16 -05:00
cam900
39654bfa86 Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 13:11:22 +09:00
tildearrow
3ed38aca5e GUI: allow customization of file picker colors 2022-03-23 22:32:36 -05:00
tildearrow
b292fcc646 YM2151: implement song tuning 2022-03-23 22:16:25 -05:00
tildearrow
47d7722f6e add a new log level (trace) 2022-03-23 22:05:09 -05:00
tildearrow
711b60d454 improved mutex locking - less xruns when seeking
especially in JACK and macOS
2022-03-23 21:38:28 -05:00
tildearrow
11d9ce3f87 what is going on 2022-03-23 17:00:40 -05:00
tildearrow
6492eeff56 GUI: proper sample errors 2022-03-23 16:39:08 -05:00
tildearrow
5a08e0d230 OPLL: add patch macro 2022-03-23 15:50:18 -05:00
cam900
df8f40486d Fix frequency, Loading waveform, Add instrument tab for waveform initialize
now for saving DivInstrumentN163 struct is... needs to compatibility breaks?
2022-03-24 03:53:07 +09:00
cam900
e8d567d3df Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 03:22:33 +09:00
tildearrow
ac79e7d6af add broken speed alternation flag - dev70 2022-03-23 01:35:57 -05:00
tildearrow
afc701b0b9 GUI: sample edit undo/redo!
it seems to work but if you find bugs/crashes tell me
2022-03-23 00:42:59 -05:00
tildearrow
f45273c89c OPL: better 4-op channel naming 2022-03-23 00:04:47 -05:00
tildearrow
2c05d56ab2 prepare for sample undo/redo 2022-03-22 18:36:29 -05:00
tildearrow
519dd7f2dd GUI: aaand more sample editor work
now it has a right click menu
2022-03-22 18:05:32 -05:00
tildearrow
8e0119b2d3 GUI: more sample editor fixes 2022-03-22 17:33:54 -05:00
tildearrow
97926c4e5c GUI: update sample texture 2022-03-22 17:04:36 -05:00
tildearrow
7ebc63a514 GUI: implement sample paste 2022-03-22 17:01:06 -05:00
tildearrow
a199c102ce GUI: hopefully better workaround to macOS #4 2022-03-22 15:37:36 -05:00
cam900
73267444fc
Merge branch 'master' into n163 2022-03-23 03:26:09 +09:00
tildearrow
c24ad24a03
Merge pull request #302 from AYCEdemo/petvic
Add VIC-20 support
2022-03-22 13:25:21 -05:00
cam900
4ba65d3906 Fix spacing 2022-03-23 03:17:06 +09:00
cam900
2eaa6ed0ce Merge branch 'master' of https://github.com/tildearrow/furnace into n163
# Conflicts:
#	CMakeLists.txt
#	papers/doc/7-systems/README.md
#	src/engine/dispatchContainer.cpp
#	src/gui/gui.cpp
#	src/gui/insEdit.cpp
2022-03-23 02:44:13 +09:00
cam900
5fdce33b11 Add Namco 163 Support 2022-03-23 01:48:45 +09:00
tildearrow
705ba4273b GUI: sample editor keybinds
works
2022-03-22 04:54:01 -05:00
Natt Akuma
feb138cefc Add VIC-20 support 2022-03-22 14:48:48 +07:00
tildearrow
f4f91ca49e GUI: ability to customize toggle button color 2022-03-22 01:57:06 -05:00
tildearrow
73d2f97274 GUI: fix visualizer option in menu 2022-03-22 01:34:53 -05:00
tildearrow
6dbc46d50e GUI: prevent editing non-8/16-bit samples 2022-03-22 01:21:13 -05:00
tildearrow
bfadb3b5cf OPL: oopsie. 20xx effect doesn't exist 2022-03-22 01:06:26 -05:00
tildearrow
848da5bcc5 VERA: 0 to 3F 2022-03-22 00:13:28 -05:00
tildearrow
16fe199cb2 scale loop when resampling 2022-03-21 23:54:01 -05:00
tildearrow
13eb0f96f1 double facepalm 2022-03-21 23:48:18 -05:00
tildearrow
e256efa641 GUI: add option to load Japanese chars
issue #52
2022-03-21 23:36:17 -05:00
tildearrow
bd84dc1c17 GUI: make clang happy 2022-03-21 21:48:36 -05:00
tildearrow
cec5def347 what?
unacceptable.
2022-03-21 21:47:27 -05:00
tildearrow
322981b021 maybe fix possible crash regarding smp loop points 2022-03-21 21:26:36 -05:00
tildearrow
6050fc7208 one more race condition fix 2022-03-21 17:56:48 -05:00