Commit graph

582 commits

Author SHA1 Message Date
cam900 a18dea53e3 Fix tooltip for OPL waveforms 2024-09-09 20:26:59 +09:00
tildearrow 5e5896fd52 Merge branch 'master' into ymf278b 2024-09-05 19:32:48 -05:00
tildearrow 435c858dc9 a couple fixes 2024-09-05 19:24:42 -05:00
tildearrow eb95024fb9 Merge branch 'master' into master 2024-09-05 18:13:46 -05:00
cam900 3e1e2fc2a6 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-25 12:50:51 +09:00
tildearrow 5a79a70980 GUI: missing WonderSwan pan macros 2024-08-23 20:10:23 -05:00
alederer c5310d1855
Instrument editor undo (minus FixedQueue change) (#2094)
* add undo to instrument editor (check for diffs on the current DivInstrument in insEdit, record them in a stack)

* style fixes

* accidentally left some logs in

* typo in style fix

* cheat to avoid warning -Werror=class-memaccess on linux

* warn instead of assert on case where MemPatch application would exceed size of target buffer (which should never happen, if you're applying the patch to the same type it was generated from)

* instrument editor undo: don't check delta if no user input has come in that could potentially have dirtied the editor

* don't run a delta against cached instrument if not insEditOpen

* revert fixedQueue to before my 'fix' (if i touch it again i'll add unit tests)

* explicitly cast to (DivInstrumentPOD*) when memsetting DivInstrumentPOD in DivInstrument constructor, rather than relying on implicit memory layout

* use delete[] instead of free (whoops)

* MemPatch/DivInstrumentUndoStep -- remove clear() function (ambiguous whether it should free data, it only existed to set data to null after the swap, so just do that directly now). Also set data to null after delete.

* DivInstrument -- fix dangling undo-step pointers being created on duplicate (potentially leading to use-after-free), fix undo-step objects being shamelessly leaked

---------

Co-authored-by: Adam Lederer <adam@adamlederer.com>
2024-08-23 15:17:19 -05:00
tildearrow d3af810462 Revert "add undo to instrument editor (check for diffs on the current DivInstrument in insEdit, record them in a stack)"
This reverts commit 5c9fd69ac1.
2024-08-19 02:49:24 -05:00
tildearrow f1de0bf2b7 Revert "style fixes"
This reverts commit 15d47d0aae.
2024-08-19 02:49:24 -05:00
tildearrow 251be67b69 Revert "instrument editor undo: don't check delta if no user input has come in that could potentially have dirtied the editor"
This reverts commit ad53b33d7c.
2024-08-19 02:49:24 -05:00
tildearrow 4f3d61c0f1 Revert "don't run a delta against cached instrument if not insEditOpen"
This reverts commit 2ab5ac4e07.
2024-08-19 02:49:24 -05:00
Adam Lederer 2ab5ac4e07 don't run a delta against cached instrument if not insEditOpen 2024-08-19 02:44:18 -05:00
Adam Lederer ad53b33d7c instrument editor undo: don't check delta if no user input has come in that could potentially have dirtied the editor 2024-08-19 02:44:18 -05:00
Adam Lederer 15d47d0aae style fixes 2024-08-19 02:44:18 -05:00
Adam Lederer 5c9fd69ac1 add undo to instrument editor (check for diffs on the current DivInstrument in insEdit, record them in a stack) 2024-08-19 02:44:18 -05:00
cam900 2c417811b3 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-16 20:35:16 +09:00
Aleksi Knutsi a9591fae71
AY Timer bug fixes and some QOL improvements (#2073)
* Create android.yml

* bug fixes part 1

* bollocks number 1

* Update android.yml

* why are you crackling you arent supposed to do that

* stop crackling please

* what a load of

* what a load of part 2

* what a load of part 3

* what a load of part 4

* final commit... i hope!

* final commit my rear bottom

* final commit for real this time

* Delete .github/workflows/android.yml

* Update sysDef.cpp
2024-08-15 15:55:29 -05:00
AArt1256 f14ff25796 added basic uPD1771C support 2024-08-11 09:22:49 +03:00
AArt1256 9b363eb04c fixed more bugs yay 2024-08-09 12:09:11 +03:00
AArt1256 5532965925 added some more stuff to supervision support 2024-08-09 09:57:35 +03:00
AArt1256 3e774ddb6f finally added DMA sample support and panning 2024-08-09 00:36:34 +03:00
AArt1256 9d279ceadb added basic watara supervision support 2024-08-08 22:58:01 +03:00
cam900 34c3748406 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-03 08:17:33 +09:00
tildearrow c2f2aa3024 AY: merge TFX from host12prog 2024-08-02 16:52:54 -05:00
cam900 4b0080c509 Merge branch 'master' of https://github.com/tildearrow/furnace into ymf278b 2024-08-01 19:32:02 +09:00
tildearrow 4c6a774731 GUI: fix it 2024-07-25 20:03:10 -05:00
tildearrow fc772388b7 GUI: this sucks... 2024-07-25 19:59:21 -05:00
tildearrow 4774a38669 GUI: two more options for SL position 2024-07-25 19:36:40 -05:00
tildearrow 3ac17d3a11 GUI: implement auto macro size setting 2024-07-25 13:18:22 -05:00
tildearrow e3daca9c83 get rid of these macros 2024-07-13 18:31:28 -05:00
cam900 00e9ca29fa Revert "Re-split OPL4 PCM instruments due to hardware differences"
This reverts commit 87ac12e143.
2024-07-13 16:28:20 +09:00
cam900 87ac12e143 Re-split OPL4 PCM instruments due to hardware differences
- MultiPCM also has level direct, so it's remained in DivInstrumentMultiPCM. everything else don't support at MultiPCM is moved into DivInstrumentOPL4PCM.
- MultiPCM can't modify ADSR envelope unless reading instrument from ROM, so I decided to remove ADSR envelope macros. these are moved into OPL4 PCM instrument.
- Save/Load of MultiPCM level direct parameter is still disabled until main version update (for disallow crash).
- Also, this PR fixes OPL4 VGM output.
2024-07-13 13:09:10 +09:00
cam900 b1937b9834 Revert and Re-add instrument parameter into multipcm instruemnt
Fix per-channel OSC
2024-07-13 07:34:53 +09:00
cam900 65f48cc574 Add instrument for OPL4 PCM, Macros and Effects
TODO: Phase reset, Keyon/off
2024-07-12 17:37:27 +09:00
tildearrow f09c30a383 GUI: lazily remove waveform from OPM ins editor
needs improvement
2024-07-06 19:21:32 -05:00
tildearrow c9b2172c4f C64: filter toggle macro 2024-07-05 17:03:01 -05:00
tildearrow 8f577fb669 AY/8930: implement tone and env period macros 2024-07-05 16:18:08 -05:00
tildearrow 473defff35 GUI: new macro colors and fixes
bitfields now have proper macro color
macro position indicator is no longer hard-coded
2024-07-04 18:08:07 -05:00
tildearrow f09c263d2c fix one-frame glitch 2024-06-24 14:56:47 -05:00
tildearrow 6d8a343ead ES5506: Amiga pitch option...... 2024-06-24 02:44:17 -05:00
tildearrow 3197e73b2c localize window names 2024-05-27 17:53:46 -05:00
tildearrow e12bf82f49 the massive preparations - settings and sysConf 2024-05-26 23:30:33 -05:00
tildearrow 00e0679442 the massive preparations - GUI 2024-05-26 19:31:17 -05:00
tildearrow 603249573a GUI: separate wantScrollList
issue #1894
2024-05-21 17:26:04 -05:00
tildearrow f994c7c5e3 GUI: insEdit refactor, part 3
prepare to split
2024-05-04 22:10:31 -05:00
tildearrow fb16897e76 GUI: insEdit refactor, part 2
all general macros are now part of a switch block
now it is cleaner than the previous mess
2024-05-04 13:34:29 -05:00
tildearrow be48cb5ccb GUI: insEdit refactor, part 1
do not complain yet
2024-05-03 18:34:30 -05:00
tildearrow b955b26af6 SID2: remove volume parameter
redundant since we have volume macro
2024-04-25 13:02:40 -05:00
tildearrow d5633e7484 dev199 - SID2: fix cut/res range 2024-04-22 06:21:13 -05:00
tildearrow 6d62f92f92 SID2, part 5
ready for upstream

differs from LTVA1/furnace a bit
2024-04-21 13:18:44 -05:00