Commit graph

1982 commits

Author SHA1 Message Date
tildearrow 4c9b172b50 YM2610: optimize oscilloscope fetch CPU usage 2022-05-03 02:52:38 -05:00
tildearrow b8a2c90b61 GUI: add audio load meter to statistics 2022-05-03 02:29:12 -05:00
tildearrow 3d541682e6
Merge pull request #412 from grauw/ay8930-vgm
AY8930: Fix VGM output.
2022-05-03 01:53:41 -05:00
tildearrow 7d684654fc
Merge pull request #413 from cam900/osc_debug
Debug improvements
2022-05-03 01:51:18 -05:00
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