Commit graph

7674 commits

Author SHA1 Message Date
tildearrow c9f9cc0d8b GUI: add a setting to toggle fallback pat font 2025-03-27 19:02:29 -05:00
tildearrow e02404222d planes 2025-03-26 20:39:39 -05:00
tildearrow c9e48fb17b PC speaker: fix chan osc in real output 2025-03-26 14:01:22 -05:00
tildearrow a3a0acd871 run the last step 2025-03-25 00:55:10 -05:00
Electric Keet 14e5db0efc Some letter icons realigned.
Also, the instructional MD file and the comment within the SFD file have been updated to make the steps a little clearer.

Catch is, something broke and I can't fully run `make-iconfont.sh` so until I can fix that someone else will have to do that step.
2025-03-25 00:55:10 -05:00
tildearrow f21da72eaf NES: fix envelope mode not set in reset/forceIns 2025-03-24 18:04:20 -05:00
tildearrow 2871e8df07 NDS: fix non 8/16/IMA sample formats 2025-03-24 15:05:17 -05:00
tildearrow 3020485500 release v0.6.8pre2 2025-03-23 14:01:43 -05:00
tildearrow c1e99b94ef OPL4: fix corrupted non-8/12/16-bit samples 2025-03-23 13:53:08 -05:00
tildearrow fd3335f1ee OPL4: fix end of sample 2025-03-23 13:49:23 -05:00
tildearrow 4370f77230 GUI: fix the chevron 2025-03-23 13:24:06 -05:00
tildearrow 1470564267 C64: fix PCM chan osc 2025-03-23 13:02:12 -05:00
tildearrow 402a658454 OPNA/B: fix ADPCM-A/RSS muting with LLE core 2025-03-23 04:36:20 -05:00
tildearrow 2e9621073e OPZ: add FMS2/AMS2 macros 2025-03-23 04:22:43 -05:00
tildearrow beb7411ba7 what is this tab doing in my CODE!!!!!!! 2025-03-23 03:59:47 -05:00
tildearrow fadf516d0b GUI: improve chan export chan count estimation
issue #2431
2025-03-23 03:57:39 -05:00
tildearrow 0d1a482cbd Supervision: some hopeful fixes 2025-03-23 03:44:06 -05:00
tildearrow f919d1779a GUI: fix macro list jumping around
in single macro editor layout
2025-03-23 03:30:31 -05:00
tildearrow 9b3da929bf GUI: add presets for C64 PCM and Defle MSX2 2025-03-22 20:44:19 -05:00
tildearrow 24b2440daf .ftm import: VRC7 patch switch effect
thanks LTVA
2025-03-22 20:16:00 -05:00
tildearrow 9297ff7c8b release v0.6.8pre1
after a thousand years
2025-03-22 03:38:01 -05:00
tildearrow 76cdc66e05 X1-010: fix env slides in low latency mode 2025-03-22 02:05:24 -05:00
tildearrow bdc10b2ca0 credits 2025-03-22 01:38:08 -05:00
tildearrow 841af611ba WonderSwan: bring Mednafen core back 2025-03-22 01:38:08 -05:00
Adrian Siekierka b4b0481b3f swan: fix edge case in APU emulation 2025-03-22 01:38:08 -05:00
Adrian Siekierka 17363d9a28 swan: Fix new engine command name position 2025-03-22 01:38:08 -05:00
Adrian Siekierka 652f3662af swan: Support higher frequency rates at the emulation core level 2025-03-22 01:38:08 -05:00
Adrian Siekierka 99c022cd82 swan: Fix new engine command position 2025-03-22 01:38:08 -05:00
Adrian Siekierka c4561b15a5 swan: Fix noise emulation 2025-03-22 01:38:08 -05:00
Adrian Siekierka 14bdbd852e swan: Minor fixes 2025-03-22 01:38:08 -05:00
Adrian Siekierka c93dc6f4f3 swan: Add command to change internal speaker loudness 2025-03-22 01:38:08 -05:00
Adrian Siekierka b59fc1e8f5 swan: Implement headphone/internal speaker output toggle 2025-03-22 01:38:08 -05:00
Adrian Siekierka 03b87258c8 swan: Rewritten audio driver
Now outputs 24000 Hz digital samples, matching real hardware (as
opposed to 3072000 Hz samples). It has also been rewritten from
scratch to match recent research and make the code significantly
more readable.
2025-03-22 01:38:08 -05:00
tildearrow 8dcb2d02ad OPL4: fix a couple issues with samples
issue #2217
2025-03-21 17:38:28 -05:00
tildearrow 4546df5636 ES5506: fix memory overflow
issue #2422
2025-03-21 16:01:07 -05:00
tildearrow 97d6b00322 fix another possible hang in MIDI code 2025-03-21 02:34:02 -05:00
tildearrow 8692aa5ff5 fix a possible hang in MIDI clock code 2025-03-20 17:26:49 -05:00
tildearrow 7e3c879a39 GUI: fix NES loop end hint 2025-03-20 03:20:01 -05:00
tildearrow 0f4d70a34e GUI: add chan osc DC off correction strat options
off: no DC offset correction
normal: the old algorithm
high-pass: a new algorithm

also fix a hang!
2025-03-17 04:07:22 -05:00
tildearrow 1dcb9e809b XM import: improve envelope conversion again
issue #2026
2025-03-16 16:28:36 -05:00
tildearrow 3fae6a4ba8 XM import: improve envelope conversion
still buggy
2025-03-16 04:21:21 -05:00
tildearrow 93f3ff3500 change default TIunA export params
so it works by just replacing song.asm
2025-03-15 04:09:59 -05:00
tildearrow 7a544fc0e0 GUI: optimize orders window
don't render cell if not visible
2025-03-14 14:27:27 -05:00
tildearrow 036fd94ea6 GUI: fix a spacing issue in FM editor 2025-03-14 13:56:11 -05:00
tildearrow 7d483e1bbb GUI: hide custom clock for PCM DAC
doesn't make sense
2025-03-14 13:14:26 -05:00
tildearrow 07fd199ffd NDS: fix custom clock not working 2025-03-14 13:12:45 -05:00
tildearrow f04fa49de2 add invincible powerup and allow quit on mobile
after game over
2025-03-14 13:11:55 -05:00
tildearrow a551b2d194 and more
make user listen at least 1/4 of a song
2025-03-14 04:52:57 -05:00
tildearrow 896c84c205 Combat Vehicle changes
- new "speed" mod
- small stages
2025-03-14 04:35:51 -05:00
tildearrow b52699d370 GUI: fix note input when follow pattern is off 2025-03-12 18:33:46 -05:00
tildearrow 96405706a8 GUI: fix note input not working when step playing 2025-03-12 18:32:30 -05:00
tildearrow c5dca3cc52 GUI: fix it 2025-03-11 12:04:56 -05:00
tildearrow 411e492c81 GUI: a better strat to find init samp in chan osc 2025-03-11 12:00:11 -05:00
tildearrow 5ac5006a21 C64: possibly fix chan osc when using reSIDfp 2025-03-11 11:34:45 -05:00
tildearrow ab4922def7 TIA: fix chan osc
issue #2409
2025-03-11 11:29:46 -05:00
tildearrow 79e71c3d02 possibly fix VGM, ZSM and SAP-R export
issue #2408
2025-03-11 11:23:25 -05:00
tildearrow 6ae3f33513 GUI: disable sample filter sweep by default 2025-03-11 05:10:42 -05:00
tildearrow 1642646899 GUI: fix when using groove 2025-03-11 04:15:14 -05:00
tildearrow ad8d1b5060 GUI: improve note input timing
during playback, it rounds to nearest cell now
this greatly enhances the recording experience

to-do: test on higher latencies and see if we have to compensate somehow...
2025-03-11 04:03:05 -05:00
tildearrow 6deee95d87 GUI: prepare to improve note input timing
the idea is to snap to the closest Y position...
2025-03-10 19:31:05 -05:00
tildearrow 44605a42a5 GUI: make non-sweep sample filter not sweep
issue #2407
2025-03-10 17:37:23 -05:00
tildearrow 1321979017 GUI: honor DC off correction setting in chan osc
issue #2405
2025-03-10 12:52:28 -05:00
tildearrow 957a05665a fix crash 2025-03-10 12:46:46 -05:00
tildearrow b46a60e96d possibly solve vZoom/vScroll issue
move these to a new DivInstrumentTemp struct
this way, undo history is not altered every time these change

issue #2179
2025-03-10 12:35:05 -05:00
tildearrow b7a8745581 GUI: hide SCV once again
after the unification the system ID and chan count are stable
however, the system is still beta...
it won't be ready by 0.6.8 so I am going to hide it
2025-03-10 11:43:17 -05:00
tildearrow 72a2fa1b2e GUI: fix instrument drag
issue #2386
2025-03-10 04:16:38 -05:00
tildearrow b64a92668a GUI: fix drag-and-drop crash
this time for real!
issue #2327
2025-03-10 04:14:01 -05:00
tildearrow f49395194b µPD1771C: unification work... 2025-03-10 04:11:26 -05:00
tildearrow d853c59b3d SCV unification 2025-03-10 04:05:12 -05:00
tildearrow 85981822fa K007232: acquireDirect() 2025-03-09 18:20:44 -05:00
tildearrow 804e8b7fb8 NDS: fix chan osc 2025-03-09 16:19:13 -05:00
freq-mod ca89b5beb8 Add files via upload 2025-03-09 13:46:24 +01:00
tildearrow 418780b82b BubSys: acquireDirect() 2025-03-09 04:16:41 -05:00
tildearrow ef1fae3bee SM8521: the actual rate is /2 rather than /4 2025-03-09 04:06:47 -05:00
tildearrow d1234ad59e SM8521: acquireDirect() 2025-03-09 03:58:09 -05:00
tildearrow 1c05bb8b05 T6W28: fix chan osc! 2025-03-09 03:31:03 -05:00
tildearrow e7df0c7b0a fix possible incomplete MIDI message 2025-03-09 02:25:20 -05:00
tildearrow 5a2d4662aa NDS: get rid of core quality 2025-03-09 01:27:59 -05:00
tildearrow 87d1cf24a1 T6W28: chan osc which does not work right 2025-03-09 01:23:10 -05:00
tildearrow 6537125976 T6W28: acquireDirect() 2025-03-09 00:03:11 -05:00
tildearrow 001cda561a T6W28: fix
but no sound
2025-03-08 22:57:29 -05:00
tildearrow 1e8b93c92a T6W28: completely break the system 2025-03-08 19:38:16 -05:00
tildearrow eea95b1f90 2%
LD.ZRsku p jrsyju rsp jyrsp jyrsp nyeapby eal
 PT P#
2025-03-08 19:32:11 -05:00
tildearrow 3d59d68158 it gets worse 2025-03-08 18:58:31 -05:00
tildearrow 0d78e9bb10 NDS: squeeze out a bit more 2025-03-08 18:48:06 -05:00
tildearrow c9695caf35 NDS: acquireDirect()
it took a while

master volume may not work
2025-03-08 18:42:19 -05:00
tildearrow ce59a015e9 fix build failure 2025-03-08 04:59:01 -05:00
tildearrow d8f66523b6 NDS: prepare for optimization 2025-03-08 04:37:42 -05:00
tildearrow 9981ab7e43 SN: acquireDirect() 2025-03-08 03:23:49 -05:00
tildearrow b8f214020f AY: get TFX and DAC working!
sadly I don't think I can improve this any further for now...
2025-03-08 03:05:09 -05:00
tildearrow 42920b9101 AY: this sucks, part 3
improve heuristics... noise is very slow
2025-03-08 02:22:45 -05:00
tildearrow ccf9277bfe AY: this sucks, part 2 2025-03-07 20:32:23 -05:00
tildearrow 9681f25e54 AY: this sucks, part 1 2025-03-07 20:19:24 -05:00
tildearrow cb67527103 AY: prepare for optimization 2025-03-07 19:37:18 -05:00
tildearrow 33aebf29c6 PCE: improve sample performance 2025-03-07 18:46:53 -05:00
yohannd1 f2d6ae78fa sample filter ui: clamp frequency on popup 2025-03-07 18:41:17 -05:00
yohannd1 37d49ffe0f sample filter ui: add sweep option 2025-03-07 18:41:17 -05:00
tildearrow 0d7ef2e8eb WonderSwan: acquireDirect() 2025-03-07 18:37:25 -05:00
tildearrow 3d915270b1 GUI: remove Virtual Boy quality setting 2025-03-07 17:06:47 -05:00
tildearrow 6050b2c31b Virtual Boy: acquireDirect() 2025-03-07 17:05:12 -05:00
tildearrow 229003c597 VRC6: acquireDirect()
to-do: check for regressions? I need to sleep
2025-03-07 06:28:03 -05:00
tildearrow 0e7df18ab3 NES and MMC5: heuristic oopsie 2025-03-07 05:11:18 -05:00
tildearrow c5492f2f2c PCE: oh man a typo 2025-03-07 04:34:27 -05:00
tildearrow 8ee01d15f7 TIA: acquireDirect()
# TIA Benchmark

twin.fur

acquire(): 11.324s
acquireDirect(): 1.267s

Balmeranda.fur

acquire(): 11.923s
acquireDirect(): 1.093s

# MMC5 (Goofy Asses per second)

unoptimized: 9.22/s
optimized: 108.96/s
2025-03-07 03:58:13 -05:00
tildearrow 9730988cef MMC5: reset write queue... 2025-03-07 03:21:04 -05:00
tildearrow 47f176b0f0 MMC5: acquireDirect(), part 2
PCM now works
2025-03-07 03:12:18 -05:00
tildearrow 1070fb5d10 MMC5: acquireDirect(), part 1
no samples
also fixed chan osc
2025-03-07 03:07:52 -05:00
tildearrow 86fb92595a NES: fix a little accuracy problem 2025-03-07 02:31:38 -05:00
tildearrow 54d1998c70 make it clear I modified some of these cores 2025-03-07 02:16:09 -05:00
tildearrow 007ef91e84 NES: puNES acquireDirect(), part 3
reduce CPU usage a bit
2025-03-07 02:10:08 -05:00
tildearrow 08e7112d85 NES: fix unused variable 2025-03-07 02:02:55 -05:00
tildearrow 29849972dd NES: puNES acquireDirect(), part 2
per-chan osc
2025-03-07 02:02:04 -05:00
tildearrow 5df3e1f030 NES: make it C++
so we can submit to chan osc buffer
2025-03-07 01:57:52 -05:00
tildearrow 1d60bb03cc NES: reduce CPU usage when no channels active 2025-03-07 01:48:10 -05:00
tildearrow dde97171ab NES: puNES acquireDirect(), part 1
no per-chan osc
2025-03-07 01:29:40 -05:00
tildearrow ad8437e5ae this is why I don't use tabs
in one editor it's 8 spaces, in another it's 2...
spaces on the other hand are the same regardless of editor
2025-03-06 23:23:46 -05:00
tildearrow f43715775c no to-do 2025-03-06 20:23:10 -05:00
tildearrow 645e97ef93 NES: puNES macro expansion
preparations for acquireDirect()
2025-03-06 20:21:26 -05:00
tildearrow c2228cd74b SCC: acquireDirect() 2025-03-06 19:06:45 -05:00
tildearrow 7a6f6a6745 PCE: remove core quality 2025-03-06 12:18:10 -05:00
tildearrow 4c166b9b5a move blip_buf to extern
so it can be used by other cores
2025-03-06 12:07:28 -05:00
tildearrow 2078949093 Amiga: tweak the filters once again 2025-03-06 02:00:07 -05:00
tildearrow abaea665af GUI: find/replace selection in selected channels
issue #2393
2025-03-05 19:27:15 -05:00
tildearrow 43891b8d79 PCE: optimize 5ms 2025-03-05 19:07:10 -05:00
tildearrow 68a550a419 update the acquireDirect API
size_t offset is no more - it is always 0
2025-03-05 18:57:17 -05:00
tildearrow ec451cd80e Amiga: acquireDirect, part 3 2025-03-05 15:26:17 -05:00
tildearrow 69a43a70fc Amiga: improve filter calc 2025-03-05 05:40:39 -05:00
tildearrow e941dfb174 Amiga: acquireDirect, part 2
the filter is back!
2025-03-05 04:49:22 -05:00
tildearrow e116f2e523 PCE: fix anti-click 2025-03-05 00:17:09 -05:00
tildearrow 655b3621f6 Merge branch 'master' into amigaOpt 2025-03-04 13:18:07 -05:00
tildearrow 6e40a6980b PCE: fix chan osc!
ready to merge...
2025-03-04 12:57:59 -05:00
tildearrow ac8df480ab PCE: half working channel osc
it doesn't look right
2025-03-04 12:37:31 -05:00
tildearrow 11c99f9f96 PCE: push it even further!
now a bit faster
2025-03-04 12:21:56 -05:00
tildearrow ec5aafb9ad PCE: PCM works
CPU usage increases though when it's in use :<
2025-03-04 12:19:46 -05:00
tildearrow 5d3a22a502 PCE: PCM might work again 2025-03-04 11:57:41 -05:00
tildearrow f0a3e3f590 PCE: Mednafen is wonderful
the PSG emulator already comes with heuristics... I stripped them off
for Furnace but now that we have acquireDirect() we can give it our
blip_buf and handle everything there

from 40-70% to 10% CPU usage on my phone, and highest quality!

TODO:
- PCM
- chan osc (should be very easy)
2025-03-03 20:29:34 -05:00
tildearrow 95b1085aed I have no idea what's going on 2025-03-03 17:18:52 -05:00
tildearrow acdce2c795 Amiga: acquireDirect, part 1
filter no longer works... I'll think of a possible approach
2025-03-03 04:11:01 -05:00
tildearrow f5589d0084 Amiga: increase DMA off delay 2025-03-03 02:32:11 -05:00
tildearrow 71ac185cbf FDS: lower CPU usage 2025-03-03 02:27:00 -05:00
tildearrow b3b50bdb66 ESFM: optimize osc buf 2025-03-03 01:45:42 -05:00
tildearrow cf4807b5d0 optimize putSample a bit
use 16-bit precision even on 64-bit....
this allows some code optimizations
2025-03-03 00:51:47 -05:00
tildearrow 2926fad77e ASHA SDGFHJKLADG F;LHKJ 2025-03-02 23:18:02 -05:00
tildearrow 6f8da93714 size_t 2025-03-02 23:04:48 -05:00
tildearrow 8dcbd0fe1c Merge branch 'ga20opt' 2025-03-02 20:53:53 -05:00
tildearrow f39039766e possibly fix build. 2025-03-02 20:49:10 -05:00
tildearrow 6d55c8088c GA20: yaaaay I fixed chan osc 2025-03-02 20:41:34 -05:00
tildearrow 8f54445625 GA20: acquireDirect optimizations, part 1
buggy, slow and glitchy
output is good but chan osc is now broken

from 1.5 to 0.4 seconds
2025-03-02 20:29:28 -05:00
tildearrow 2c75555fae GA20: excellent... 2025-03-02 19:34:52 -05:00
tildearrow 6813c30e3a new chan osc, part 8
fix remaining bugs
2025-03-02 18:02:38 -05:00
tildearrow 49a8693dcb new chan osc, part 7
i am done
2025-03-02 16:14:49 -05:00
tildearrow 6265d2cd39 new chan osc, part 6
more adaptations

how can I get you out of my head... I want to go back to work!
2025-03-02 04:11:10 -05:00
tildearrow fe00ee805d new chan osc, part 5
fix C64 rate
2025-03-01 19:57:16 -05:00
tildearrow a16d20e190 new chan osc, part 4
adapt dispatch code to it
2025-03-01 19:49:56 -05:00
tildearrow c0e4552c52 new chan osc, part 3
fix the jerkiness!
2025-03-01 18:46:11 -05:00
tildearrow 10e60ec8c1 new chan osc, part 2
why is it jerky?
2025-03-01 17:22:34 -05:00
tildearrow 6dc4f16689 GUI: add an audio load chart 2025-03-01 06:10:59 -05:00
tildearrow dd7e1def3d new chan osc work in progress 2025-03-01 05:05:50 -05:00
tildearrow 0eea0ec139 a new method for setting chan osc rate... 2025-03-01 00:33:15 -05:00
tildearrow c83ecfe993 prepare new chan osc code
chan osc output will be 65536Hz - always
new functions for initializing the osc buffer and all
2025-02-26 20:29:13 -05:00
tildearrow e94d99d79e PC Speaker: fix it 2025-02-26 15:45:26 -05:00
tildearrow d935d3c6d1 acquireDirect proof of concept
extremely low CPU usage in PC Speaker

WARNING! no per-chan osc yet!
2025-02-25 19:58:25 -05:00
tildearrow 4502fa6912 FIX BUILD FAILURE 2025-02-25 18:56:04 -05:00
tildearrow 4b1e883d1b PC speaker: prepare for acquireDirect 2025-02-25 18:53:02 -05:00
tildearrow 231819da2e Revert "Revert "prepare acquireDirect API" - stupid crap"
thought of an idea for optimization. let's try again.

This reverts commit 4ca7033dec.
2025-02-25 18:45:28 -05:00
tildearrow 8d8e51d36a disable 32-bit float audio export in per-chip mode
issue #2389
2025-02-25 15:34:36 -05:00
tildearrow 7d0ef24574 GUI: use three hashes
it wasn't two...
2025-02-22 20:25:42 -05:00
tildearrow f674a38d8e GUI: optimize pattern view
don't render what isn't visible
from 3.5ms to 2ms in my phone

to-do: check for regressions...
2025-02-22 19:57:53 -05:00
tildearrow dd9983778b GUI: selection/scroll improvements
now you can scroll left/right by dragging selection to the side edges
2025-02-22 18:43:46 -05:00
tildearrow f4d357ff6f GUI: update credits 2025-02-22 15:55:04 -05:00
techmetx11 18c5d80a09 Use more .getPattern() 2025-02-22 15:18:23 -05:00
techmetx11 27a1914924 Use .getPattern() 2025-02-22 15:18:23 -05:00
techmetx11 56937d8f05 Fix naming 2025-02-22 15:18:23 -05:00
techmetx11 308aacc1e6 Implement looping in TFM import 2025-02-22 15:18:23 -05:00
LTVA1 c58a7cba20 Update sid3.c 2025-02-22 14:45:09 -05:00
tildearrow a80cdbb1dd ES5506: increase precision in Amiga pitch mode
issue #2120
2025-02-22 01:32:31 -05:00
tildearrow c5576ebcd2 PCE: fix sample linger in VGM export
issue #2322
2025-02-21 19:41:48 -05:00
tildearrow 9af53cac73 PCE: fix sample volume in VGM export
issue #2319
2025-02-21 19:35:29 -05:00
tildearrow 41d3dcde66 Virtual Boy: handle phase reset first 2025-02-21 18:58:58 -05:00
tildearrow 0b1e90b908 Virtual Boy: disable channel 5 when changing mod t
able
2025-02-21 18:50:00 -05:00
tildearrow cfb962236a WaveSynth: add change detection
don't update wave if it is intact
issue #2298
2025-02-21 17:25:05 -05:00
tildearrow 8c67ea8eb9 GUI: load fallback fonts in pattern font...
issue #2312
2025-02-21 16:58:59 -05:00
tildearrow 040ceb788d .ftm import: improvements
- cut/delay policy is now lax (why was it set to strict?)
- macro release mode is now Active (issue #2376)
2025-02-21 16:23:21 -05:00
tildearrow 4ca7033dec Revert "prepare acquireDirect API" - stupid crap
the most POINTLESS plan of all time... acquireDirect.
why? because you gotta fill in the oscBufs anyway, which will take
precious CPU time, so you can't just pass the blip_bufs to dispatch
and hope it'll help by not processing when nothing's happening.

"so disable it when the per-chan osc is up!" NO! we need this for
volume calculation....

"how about rewrite per-chan osc logic?" you know what? I don't have
either the time or the will for that.
now back to Something Else......

This reverts commit 08177d839a.
2025-02-21 01:27:04 -05:00
tildearrow cf89a4ff44 GA20: yet another optimization 2025-02-20 04:44:19 -05:00
Natt Akuma c6bb7acfad Merge branch 'master' of https://github.com/tildearrow/furnace 2025-02-20 05:33:31 +07:00
Natt Akuma b084b5f977 Add a missing chrono include
This fixes MSVC v143 build failure
2025-02-20 05:33:06 +07:00
tildearrow 08177d839a prepare acquireDirect API
provide direct access to blip_buf to dispatch code, which may allow for some serious optimizations
2025-02-19 15:46:10 -05:00
tildearrow a2bd669792 Virtual Boy: where did the noise channel go? 2025-02-19 04:29:54 -05:00
tildearrow 1d445d574a Amiga: more validation export changes
this will do... i have no idea how it works
2025-02-19 04:28:22 -05:00
tildearrow 331c146ad8 Amiga: validation export improvements
now it uses VBlank interrupts
also works when fast memory is present!
2025-02-19 04:17:08 -05:00
tildearrow 5b6721738b GUI: change instrument on mobile? 2025-02-19 00:14:21 -05:00
tildearrow 0e0aab88de GA20: another optimization 2025-02-18 05:53:54 -05:00
tildearrow f55f92975a GA20: tiny optimization 2025-02-18 05:32:09 -05:00
tildearrow 556b268d80 Virtual Boy: we cannot take a fast path... 2025-02-18 03:11:52 -05:00
tildearrow e1b7618348 Virtual Boy: make it work on hardware
issue #2373
2025-02-18 02:30:14 -05:00
tildearrow 63ee7cf5d8 Virtual Boy: write waveforms before init channels 2025-02-18 00:36:20 -05:00
tildearrow 91ca79587b SNES: oh I can't believe I did not commit this yet 2025-02-15 22:21:39 -05:00
ExecThTs 63c98baf8e fix playback head when partially previewing a sample 2025-02-11 04:59:48 -05:00
tildearrow d073d17318 Low Quality tildearrow Code: Part III 2025-02-09 04:10:16 -05:00
tildearrow 845c5245c3 Time Is Fixed 2025-02-07 04:20:18 -05:00
tildearrow f09fd02971 MultiPCM: only set new params on ins change
fixes an issue regarding level direct effect
2025-02-07 04:15:20 -05:00
tildearrow cb616ae594 MultiPCM: I present to you a fix 2025-02-07 04:05:53 -05:00
tildearrow 4019066a64 GUI: add "set effect" option to randomize 2025-02-06 17:25:50 -05:00
tildearrow 096d9ebba8 GUI: command stream player memory safety 2025-02-06 14:09:16 -05:00
tildearrow 9dee51851f prepare for proper center rate
the correct rate is 8372Hz rather than 8363Hz
sadly this will require a compat flag so I am not making this change
effective until 0.7

issue #2347
2025-02-06 02:14:21 -05:00
tildearrow b95f9885a4 GUI: don't sort note keys in settings
until Apply or OK are clicked
issue #2345
2025-02-06 00:33:34 -05:00
ExecThTs 3464dd17f5 let's finish the job, pay attention to the selection as well 2025-02-05 04:17:27 -05:00
ExecThTs df830b46c0 Added a button into the sample editor to preview the currently edited sample from the selection cursor 2025-02-05 04:17:27 -05:00
tildearrow 659a16a489 C64: PCM chan osc, part 2
issue #2349
2025-02-05 04:10:16 -05:00
tildearrow dbe30c0d43 C64: PCM chan osc, part 1
it leaks into other channels
2025-02-05 04:01:22 -05:00
tildearrow ba90eafcf3 GUI: doSelectAll() safety checks 2025-02-02 19:37:28 -05:00
tildearrow 11f0448db4 GUI: finishSelection() xFine boundary check 2025-02-02 19:26:38 -05:00
tildearrow ce929d165c GUI: skip intro with keyboard
Escape, Space or Enter skip immediately
2025-02-01 22:18:41 -05:00
tildearrow 8c59d4bf8b remove two unused defines 2025-02-01 21:27:28 -05:00
tildearrow e5864144eb GUI: possib fix crsh on selall aftr ch coll/exp/fx 2025-02-01 04:51:16 -05:00
tildearrow c95e9684ed GUI: work around lack of PRIu64 in some systems 2025-02-01 02:32:59 -05:00
tildearrow b64c06dd4d GUI: add more options for selection drag
ability to copy by dragging selection
2025-01-31 17:29:51 -05:00
tildearrow e22d46e619 C64: implement 6581 bias on dSID
for PCM
2025-01-31 14:59:38 -05:00
tildearrow 1ceffc659c I will do this later 2025-01-30 16:24:33 -05:00
tildearrow b17b0e3f40 fix build... 2025-01-30 15:27:55 -05:00
tildearrow 6e63669501 add a bunch more TODOs 2025-01-29 04:38:12 -05:00
tildearrow 1e891e5e5f aaaaaaaaaaa 2025-01-29 04:12:01 -05:00
tildearrow 8776e1c442 µPD1771C: implement tone/noise mode 2025-01-29 04:10:54 -05:00
tildearrow 9e726eba83 LOW QUALITY TILDEARROW CODE... 2025-01-29 02:04:49 -05:00
tildearrow 97402e6d41 replace AArt µPD1771C core with MAME 2025-01-29 01:58:31 -05:00
tildearrow 00ad4e4a46 update copyright year 2025-01-28 18:49:19 -05:00
tildearrow 0d8b97b1a3 C64: add a sample channel
but don't get too excited! it's just $D418 PCM for now...
2025-01-28 17:33:08 -05:00
tildearrow f16b23772e prepare for something 2025-01-28 04:59:12 -05:00
tildearrow fd176dee84 dev224 - Merge branch 'fixedblock2' 2025-01-28 04:25:24 -05:00
tildearrow dd9d220f33 use state instead of accessing ins for block 2025-01-28 04:24:10 -05:00
tildearrow e713742985 GUI: some adjustments to FM block UI 2025-01-28 04:04:01 -05:00
tildearrow 58a58bdd98 GUI: fix crash in FM editor 2025-01-28 03:52:17 -05:00
tildearrow 24cffc562a Merge branch 'master' into fixedblock2 2025-01-27 16:33:45 -05:00
cam900 bd298e7ece Fix ES5506 filter slide 2025-01-27 13:49:38 +09:00
tildearrow 644b2cd699 so that's why panning was broken in command stream 2025-01-26 18:10:53 -05:00
tildearrow ae5788a572 GUI: fix paste overflow not changing order 2025-01-26 18:10:32 -05:00
tildearrow 36ba721ab2 same size 2025-01-26 05:00:12 -05:00
tildearrow 497ce44cd0 command stream was utterly broken 2025-01-26 04:28:03 -05:00
tildearrow 8965c60b0a MOD import: fix possible bug notes 2025-01-25 18:54:57 -05:00
tildearrow 304a8b8722 GUI: short circuit evaluation paranoia
issue #2327
2025-01-17 03:01:30 -05:00
tildearrow cfcad1e689 GUI: fix possible crash in find/replace
issue #2328
2025-01-17 02:58:22 -05:00
tildearrow a750157ab4 fix another out of bounds situation
this time if the pitch is invalid
2025-01-10 02:10:14 -05:00
tildearrow 732383c036 limit max sample size when loading .dmf 2025-01-10 02:06:25 -05:00
tildearrow 2b064f85bb SafeReader: fix exploit when using negative length
issue #2316
2025-01-10 02:06:14 -05:00
Natt Akuma cf3d08ca5a Add fixed octave for block+fnum systems
This isn't implemented in SAA1099, despite also being block+fnum system, as there are no benefits from it
2025-01-09 03:51:14 +07:00
Natt Akuma 6a58797669 Use bsr() in frequency shift calculations 2025-01-09 03:43:27 +07:00
tildearrow 68eeef28e4 YMZ280B: fix sample offset moving loop
issue #2213
2024-12-29 17:55:58 -05:00
tildearrow 5ffd47ed7b SegaPCM: fix sample offset moving loop
issue #2306
2024-12-29 16:53:19 -05:00
yohannd1 1b3a3c457d instrument drag&drop: fix marking as modified 2024-12-25 17:35:09 -05:00
Eknous-P d80fe7e0a7 fix user systems not loading when language is not english 2024-12-24 14:46:19 -05:00
tildearrow 6a091a785d clamp it 2024-12-24 01:38:04 -05:00
yohannd1 0b4cf34e4d instrument drag&drop: adding option to disable 2024-12-20 21:36:04 -03:00
yohannd1 8aeb50bc32 Merge remote-tracking branch 'tilde/master' into data-list-drag-and-drop 2024-12-20 21:17:06 -03:00
yohannd1 73c263c2b4 closing more popups with esc 2024-12-20 03:20:40 -05:00
yohannd1 674d3c6b12 fix code style for FurnaceGUI::doPasteMPT 2024-12-20 03:20:24 -05:00
yohannd1 2382c19583 ctrl drag&drop fix (use IsKeyDown instead of IsKeyPressed) 2024-12-19 16:23:11 -03:00
yohannd1 32ea140a61 wave+sample drag&drop, and supporting swap via ctrl-drag 2024-12-19 15:51:21 -03:00
yohannd1 6ffc495c81 instrument swap implemented (thanks to @Eknous-P) 2024-12-19 15:04:10 -03:00
yohannd1 806e56a3b2 instrument drag and drop: most of the code
Missing the code that actually swaps the instruments :)
2024-12-19 12:00:24 -03:00
bbbradsmith f3081dddef command line arguments: explicit mention of ROM multi-export path 2024-12-19 04:40:49 -05:00
bbbradsmith 65a6a55d3e avoid stricmp entirely, just use the lowerCase boilerplate found in many other places in the code 2024-12-19 04:40:49 -05:00
bbbradsmith 251bec69a9 MacOS ARM build is missing stricmp, hoping including string.h will correct this 2024-12-19 04:40:49 -05:00
bbbradsmith 13019b5fa4 -romconf command line option to provide -romout configuration parameters 2024-12-19 04:40:49 -05:00
bbbradsmith 55a189444f -romout command line export
consolidate DivEngine::isROMExportViable function from FurnaceGUI::updateROMExportAvail to avoid copy-paste
2024-12-19 04:40:49 -05:00
Dalia 6a8ca37a20 GUI: correct cursor position on song stop (fix #2274) 2024-12-18 19:07:14 -05:00
Dalia 67009ed548 mark as modified when collapsing/expanding song 2024-12-17 01:53:31 -05:00
tildearrow 1d3318c214 VGM export: fix DAC data being offset 2024-12-15 15:56:18 -05:00
bbbradsmith 6cc5bd8eb5 Replace cumbersome command line output strings test with shared boolean 2024-12-13 02:01:32 -05:00
bbbradsmith 8cd283c4e9 Command line outputs: use ps_fopen to support unicode filenames 2024-12-13 02:01:32 -05:00
bbbradsmith c757be6ea2 Command line outputs: replace filename error message with C filesystem error string 2024-12-13 02:01:32 -05:00
bbbradsmith ccda173a15 txt to text 2024-12-13 02:01:32 -05:00
bbbradsmith a9a6260f66 command line output error should report filename, not e.getLastError (error is with fopen, not e) 2024-12-13 02:01:32 -05:00
bbbradsmith 228e7d4676 txtout command line action to export text file 2024-12-13 02:01:32 -05:00
tildearrow 1d8c2e11bd change padding for ADPCM-A/B samples
issue #1910
may or may not fix the issue. testing needed.
2024-12-11 18:30:10 -05:00
tildearrow 609001cd0f GUI: fix wave to sample conversion 2024-12-11 18:19:28 -05:00
Eknous-P f853feed4f requested changes 2024-12-11 18:04:10 -05:00
Eknous-P d26c8d576b damn 2024-12-11 18:04:10 -05:00
Eknous-P 5f299996df create sample from wavetable action 2024-12-11 18:04:10 -05:00
tildearrow 79167c382f possibly fix timer issues
issue #2189
2024-12-09 13:56:20 -05:00
tildearrow 52a4588ad9 OPN: fix out of bounds when using some FM effects
on non-FM channels
issue #2286
2024-12-09 01:57:30 -05:00
tildearrow 3289f6628d fix AY being one octave down on .dmf import 2024-12-07 03:55:24 -05:00
tildearrow 54620b04e0 MSX2 is not FM system 2024-12-06 18:55:02 -05:00
tildearrow 8215371d31 saving 2024-12-06 18:51:44 -05:00
tildearrow 8263a320c3 improve ins type detection 2024-12-06 18:47:09 -05:00
tildearrow 192be95c14 OPL: instant drum muting
issue #1945
2024-12-06 18:28:09 -05:00
Eknous-P 4b1f993474 NO YOU MOTHERF- 2024-12-06 17:17:52 -05:00
Eknous-P 11c0ea0428 autoscroll orders when overflow scolling patterns 2024-12-06 17:17:52 -05:00
Eknous-P 52aad00382 sample editor: fix sample drawing rounding 2024-12-06 17:17:52 -05:00
Eknous-P 4938e1da36 fix backup size calc 2024-12-06 17:17:52 -05:00
Eknous-P e1a3675c4d system picker: change separator to table borders 2024-12-06 17:17:52 -05:00
Eknous-P 81719a79ea (sub)song notes: wrap text 2024-12-06 17:17:52 -05:00
Eknous-P ca6f4e2b86 effects list: properly scroll table 2024-12-06 17:17:52 -05:00
tildearrow 5ceccb5988 add support for MSX2 .dmf
your songs may sound different. I am not going to bother supporting effects
and quirks
2024-12-06 03:00:15 -05:00
Dalia e8a173f17d mark song as modified when wt params edited 2024-11-30 14:08:37 -05:00
Dalia 49e90f10f4 mark song as modified when wavetable synth is toggled 2024-11-30 14:08:37 -05:00
Natt Akuma ddb29874d7 SNES: Change base capacity to 0xf800 bytes instead of 0x10000
This is to reflect both source address calculations in the engine code, which assume an echo buffer to end at 0xf800
2024-11-27 18:37:39 +07:00
tildearrow d8d12fa215 renderDX9: handle more present errors 2024-11-24 17:03:01 -05:00
tildearrow 56f598cd41 GUI: fix sample loop crossfade overflow
co-authored by Eknous
2024-11-24 16:09:42 -05:00
tildearrow 5d47b50032 MSM6258: fix panning
issue #2249
2024-11-24 16:05:52 -05:00
tildearrow c140c94c5f OPL4: fix drums ins type not appearing 2024-11-24 15:53:51 -05:00
tildearrow 806d47ba9d disable WITH_DEMOS by default
due to unclear licensing
2024-11-24 15:38:27 -05:00
tildearrow c531f777af fix file not closing when loading .dmc or .brr 2024-11-24 15:31:52 -05:00
tildearrow 3ca9545b1e GUI: mark modified when replacing instruments 2024-11-14 15:03:56 -05:00
tildearrow ffba0daf1c GUI: fix hitbox issue in sys picker 2024-11-11 13:57:33 -05:00
tildearrow 6f61f6661f C64: fix global param again...
issue #2181
2024-11-11 04:17:02 -05:00
tildearrow 44e842530b VGM export: fix bugs in issue #2226
- wrong byte in PCM RAM write
- MSM6258 reset being MSM6295
2024-11-11 04:04:04 -05:00
tildearrow 5fcf42267a GUI: warn OPL snare mult
issue #2232
2024-11-11 03:57:23 -05:00
Dalia 78af94b5e9 don't play metronome unless song is playing 2024-11-11 01:36:52 -05:00
tildearrow 99e3c3fa33 AY: fix chan osc
issue #2235
2024-11-10 05:38:19 -05:00
tildearrow 39a5408e4e GUI: always scroll scrolltexts on mobile 2024-11-10 04:56:41 -05:00
tildearrow b701f06a98 Lynx: whoopsie 2024-11-10 04:18:22 -05:00
tildearrow e7375fd733 GUI: implement scrolltext
issue #1961
applied on Checkbox
2024-11-10 04:14:39 -05:00
tildearrow 76554cb8a2 GUI: prepare to fix text overflow 2024-11-09 19:44:28 -05:00
tildearrow a3ceae888e GUI: fix cur order outline 2024-11-08 04:42:45 -05:00
tildearrow 77374cf740 GUI: fix user presets loading for real
issue #2025
2024-11-08 03:41:58 -05:00
tildearrow 826d1730e0 fix possible ins create type error
when cursor is outside
2024-11-08 03:19:49 -05:00
tildearrow 3d7079226f OPN: implement phase reset macro on ExtCh 2024-11-08 02:47:51 -05:00
tildearrow 82d5139197 SegaPCM: its still there 2024-11-08 02:04:06 -05:00
tildearrow 7c1d8ef4bb Lynx: fix load LFSR 2024-11-08 02:00:58 -05:00
tildearrow 28bbe56a44 .ftm import: fix virtual tempo going outside range
issue #2230
2024-11-07 03:55:48 -05:00
tildearrow 9e093a20c1 GUI: allow octave up/down on file picker
second try
issue #1895
2024-11-07 03:33:43 -05:00
tildearrow 0d18b4828d OPN: fix 30xx 2024-11-07 03:23:45 -05:00
tildearrow 75ad701986 YM2151: Nuked 30xx 2024-11-06 18:42:21 -05:00
tildearrow c69f366942 OPL: ymfm 30xx 2024-11-06 18:36:51 -05:00
tildearrow ce453ac0a4 GUI: warn the user when using 8914 and AtomicSSG 2024-11-06 18:24:49 -05:00
tildearrow 1e68098cd3 AY: fix several problems with AtomicSSG 2024-11-06 18:09:26 -05:00
tildearrow a25b2c7cc8 GUI: fix moveSelected going out of bounds 2024-11-06 17:49:31 -05:00
tildearrow 5917831992 OPLL: fix 13xx typo 2024-11-04 04:12:05 -05:00
tildearrow b6820fd5d5 the final part of this branch 2024-11-04 04:00:50 -05:00
tildearrow a54fb85288 FINALLY FIX THE CRASH
YES

issue #2215
2024-11-04 03:08:32 -05:00
tildearrow 92a615eefc Merge branch 'master' into theUltimateFix 2024-10-30 14:57:09 -05:00
freq-mod 5ff6adc34d
fix pzi import even more 2024-10-27 10:58:26 +01:00
freq-mod 7578ce6015
fix pzi import
previously it didnt import most of the samples
2024-10-26 18:20:01 +02:00
tildearrow 0e70439d68 initialize selCore...
maybe issue #2180
2024-10-24 03:22:18 -05:00
tildearrow c20a839871 a couple mobile improvements
comment section in sub-songs
background play option!
2024-10-22 16:38:57 -05:00
tildearrow 48aa3b438f YM2608: fix possible crash 2024-10-20 18:10:57 -05:00
tildearrow 8c2b3ba438 OPN: fix possible crash when CSM is off 2024-10-20 18:04:08 -05:00
tildearrow 69b03172b1 get it done
OPL UNFINISHED
2024-10-19 18:28:27 -05:00
tildearrow dd9d8dccd1 proof of concept 2024-10-19 17:52:24 -05:00
tildearrow 27dc82c26a demo song removal 2 2024-10-19 16:16:53 -05:00
tildearrow 34752f8f49 demo song removal 2024-10-19 15:55:57 -05:00
tildearrow 4281acc9dc VGM export: prepare to implement 30xx
issue #1798
2024-10-19 14:25:12 -05:00
tildearrow 2385f6f51b GUI: clarify MultiPCM ins type 2024-10-18 18:38:25 -05:00
Eknous-P 3a0549a480 find/replace: dont show octave on note combo preview
ugh please
2024-10-18 16:26:57 -05:00
Natt Akuma 665b722f31 VIC-20: add an option to disable filters 2024-10-17 20:16:04 -05:00
tildearrow 9fbb7df674 GUI: allow use of octave up/down whn fil pick open
issue #1895
2024-10-17 16:22:04 -05:00
tildearrow 5eae36f092 Lynx: direct stream mode 2024-10-17 15:51:04 -05:00
tildearrow 3c892ada2a this does not work 2024-10-17 15:06:13 -05:00
tildearrow d5154a103e VGM export: prepare for Lynx samples 2024-10-17 04:04:00 -05:00