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