tildearrow
9cb1fbcc45
chan osc volume balancing, part 1
2023-06-18 20:00:20 -05:00
tildearrow
29dfeccfe7
change chan osc range - PLEASE READ
...
as of now the range is ~32768, either from -16384 to 16383, or 0 to 32767.
it previously was -32768 to 32767 (~65536).
this change was made to better suit chips that only output a positive value.
if you are working on a new chip, update your code and shift right by one if necessary.
2023-06-16 17:30:11 -05:00
tildearrow
d644189201
C64: prevent multiple write to filter reg
...
issue #1114
2023-05-20 15:19:45 -05:00
tildearrow
45faadd4c8
update copyright year
2023-01-19 19:18:40 -05:00
tildearrow
7b14175e45
C64: fix frequency overflow
2023-01-13 01:10:57 -05:00
tildearrow
3e0dcbb0ae
aaaaaaaa
2023-01-02 04:53:37 -05:00
tildearrow
2600d4c576
new arp strategy, part 2
2022-12-17 02:10:20 -05:00
tildearrow
6f22ade69a
new arp strategy, part 1
2022-12-17 02:07:24 -05:00
tildearrow
3eb3d8a6f1
prepare for new arp strategy
2022-12-17 01:21:08 -05:00
tildearrow
9da46ee8ba
implement macro masking
2022-12-17 00:09:56 -05:00
tildearrow
1fe4230e82
C64: possibly fix write delay issue in reSIDfp
2022-12-11 16:46:25 -05:00
tildearrow
c6604ff581
add ability to select custom clock rates
2022-12-04 02:04:42 -05:00
tildearrow
80f8ccf627
C64: partially fix wave after gate
2022-10-07 17:21:53 -05:00
tildearrow
48db9a1d0c
chip flags rewrite, part 4 - DO NOT USE
...
the next part is to drop systemFlagsOld completely
and then to fix the GUI
2022-09-29 20:13:40 -05:00
tildearrow
4b4a254064
C64: reSIDfp per-chan osc
2022-08-29 03:54:55 -05:00
tildearrow
8d280fd9a3
C64: bind reSIDfp
2022-08-29 03:26:49 -05:00
tildearrow
c009cb3536
dev112 - prepare for advanced arp macro
...
this new advanced arp macro offers more flexibility and reduces code duplication
it allows you to set each step of the macro to either relative or fixed mode
(instead of just one mode for the entire macro)
the UI is still a work in progress and doesn't work well
this change is big and may break things! further fixes incoming
2022-08-22 15:59:45 -05:00
Natt Akuma
7c42453422
Rewrite per-system effect handling ( #548 )
...
* Rewrite per-system effect handling
* fix build
* C64: fix fine cutoff regression
* fix some more crashes
Co-authored-by: tildearrow <tildearrow@protonmail.com>
2022-08-18 01:26:22 -05:00
tildearrow
52c3b10373
add getWantPreNote()
...
currently only C64 system requires this
2022-08-03 16:21:30 -05:00
tildearrow
f4a85bebff
dev101 - fix SMSFM_intro.dmf
2022-07-04 01:43:59 -05:00
tildearrow
e39a923b23
C64: fix per-channel osc for 6581
2022-06-24 03:26:00 -05:00
tildearrow
2932a7281d
implement getChanMacroInt() on supported systems
2022-06-05 18:17:00 -05:00
tildearrow
82eaa45f5d
increase range of relative pitch macro
...
-32768 to 32767 should be enough
2022-05-22 22:47:40 -05:00
tildearrow
8784fe5664
dev94 - add a full linear pitch mode, part 1
2022-05-10 03:51:18 -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
c738ece374
per-channel oscilloscope, part 2
...
AY8930, K00, C64 and NES
2022-04-30 14:36:12 -05:00
tildearrow
d211170e86
implement relative pitch macro mode
2022-04-28 01:31:16 -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
2a952b1a66
dev87 - C64 changes
...
issue #335
2022-04-25 17:55:48 -05:00
tildearrow
79fa8f1d02
better default instrument for OPL/OPLL
...
no longer silence
2022-04-21 02:24:06 -05:00
tildearrow
211a4b1821
C64: fix portamento not working...
2022-04-17 01:37:33 -05:00
tildearrow
b4ac5c7e6a
implement pitch macro
2022-04-16 01:39:40 -05:00
tildearrow
fd3d57b1cb
even more improvements to low-latency mode
2022-04-15 15:01:11 -05: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
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
51761bc6df
part 3 - C64 mishap
2022-04-10 16:53:43 -05: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
OPNA2608
4c19a973ef
Fix for C4805: '|': unsafe mix of type 'unsigned char' and type 'bool' in operation
2022-04-09 10:54:06 +02:00
cam900
87561bf9cf
Fix spacing
2022-03-03 03:12:10 +09:00
cam900
d4d1ade513
Add various system, Minor corrections
...
YM2413 (drums mode)
Standalone YM2413 with allows drum channel.
Sound Expander for Commodore 64
OPL FM Sound expander cartridge for Commodore 64, it's placeholder until OPL is implemented.
MSX-MUSIC:
MSX's sound standard, appeared after MSX-AUDIO. it's basically OPLL FM sound expansion for MSX.
SSI 2001:
ISA Sound card with SID 6581. SID input clock is driven from ISA clock, so I modified flags value check routine.
Sound Blaster w/Game Blaster Compatible
Earliest Sound Blaster models has featured with Game Blaster compatiblity, It's has 2 SAA1099s like CMS/Game Blaster. It's removed at later models, but some hardware has just empty socket; you can restore this feature when you mount SAA1099 at empty socket.
Sharp X1:
Predecessor of X68000. it has built in AY PSG like competitors of the same period, but it has YM2151 FM sound addon in later models. FM sound is embedded in turbo Z, and that is succeeded by X68000.
X68000 hasn't AY, instead OKI MSM6258.
YM2151 in OutRun Board and X Board is 4MHz
2022-03-03 03:10:04 +09:00
tildearrow
df35b8fb45
add register view
...
supported chips only.
2022-02-21 22:31:27 -05:00
tildearrow
5ae4d883a5
one more mishap
2022-02-20 22:48:42 -05:00
tildearrow
28e6c205ee
C64: fix wave effect bypassing mute
2022-02-20 22:23:32 -05:00
tildearrow
1030bc13b2
C64: fix wiz lab one more time
2022-02-20 21:45:28 -05:00
tildearrow
e697c055b6
replay keyOn in active channels during forceIns
...
fixes an issue when playing orders
2022-02-20 21:39:14 -05:00
tildearrow
853ade2416
improve the status bar
...
issue #39
2022-02-15 01:46:03 -05:00
tildearrow
b9832abbeb
license clarification, part 3
2022-02-14 22:12:20 -05:00
tildearrow
5b7240bb4f
and fix it again
2022-02-08 22:49:52 -05:00
tildearrow
f1730baefa
fix artificial intelligence bomb
...
and a couple of songs that used 02xx after note off
2022-02-08 22:46:58 -05:00
tildearrow
23dc509524
implement reset macro on porta flag
2022-02-08 17:02:27 -05:00
tildearrow
bf537881ce
possibly implement envelope release points
...
no way to set them yet tho other than the MML string
2022-02-08 13:11:04 -05:00
tildearrow
20ac87d256
C64: add ring/sync macro
2022-02-06 15:56:10 -05:00
tildearrow
e2c2e8140b
C64 filter mode macro i think
2022-02-06 15:44:06 -05:00
tildearrow
584b8426ff
GUI: improve debug menu
2022-02-03 18:38:57 -05:00
tildearrow
5086bc1097
implement the linear pitch flag
2022-02-03 02:24:11 -05:00
tildearrow
cbf66b1e62
prepare to add register cheat sheets
2022-02-02 02:14:42 -05:00
tildearrow
d691ec6d76
add a chip playground
...
in debug menu
2022-02-01 18:08:19 -05:00
tildearrow
f75803c3b2
C64: fix filter reset not working well
2022-02-01 03:16:03 -05:00
tildearrow
822d542350
limit volume macro to system maximum
...
fixes #71
2022-01-30 12:31:50 -05:00
tildearrow
b6da7871d4
make the flags option actually work
2022-01-29 00:20:27 -05:00
tildearrow
bfed0b3209
change setPAL to setFlags
2022-01-28 12:59:53 -05:00
tildearrow
ec66b7a21b
add song tuning
...
soon: system clock settings
2022-01-28 00:55:51 -05:00
tildearrow
0e633ea69b
GUI: add a debug window
2022-01-27 00:29:16 -05:00
tildearrow
f86838df99
no longer shift arpeggio macro by 12
2022-01-26 15:53:52 -05:00
tildearrow
e394b5ca5a
C64: solve one ADSR bug
...
set decay to 0 if sustain is 15
2022-01-19 22:58:37 -05:00
tildearrow
e87239f8ce
fix retrigger implementation
...
no longer broken
2022-01-19 00:01:34 -05:00
tildearrow
6d9f5db6a4
add notifyInsChange
...
see issue #8
2022-01-17 23:59:52 -05:00
tildearrow
ce027d99f6
force insChanged on note input
...
partially solves issue #8
2022-01-17 18:01:40 -05:00
tildearrow
8b89f1b516
prepare for writing register dumps
2022-01-17 13:29:35 -05:00
tildearrow
12236248dd
prepare for eventual export
2022-01-16 23:21:27 -05:00
tildearrow
91e8ff01cf
add notifyInsDeletion
...
prevent invalid memory access when deleting instruments
2022-01-13 19:36:02 -05:00
tildearrow
651db5784e
implement more effects
...
- C64: set fine duty and filter
- Neo Geo: slide SSG envelope
2022-01-11 18:38:26 -05:00
tildearrow
5bcc3d5d6d
absolute C64 filter macros!
...
exclusive to .fur format
2022-01-10 17:04:31 -05:00
tildearrow
9f6bb570c9
absolute C64 duty macros!
...
exclusive to .fur format
2022-01-10 16:54:58 -05:00
tildearrow
9b6db75d4f
C64: use full cutoff/duty range
...
this means .dmf becomes a second-class citizen since it only supports a
range of 0-100 (yeah) for arbitrary reasons...
the last bit to do is add effect that allows you to use the full range
2022-01-09 17:00:52 -05:00
tildearrow
0479650597
C64: fix volume not being set after skip
2021-12-28 01:20:48 -05:00
tildearrow
d766c4aaf0
finally do EFxx right
...
took a while to figure out...
2021-12-28 00:51:38 -05:00
tildearrow
65444d4a99
el diego 2 finally plays back correctly
...
ALMOST
2021-12-27 16:31:16 -05:00
tildearrow
726b457ae7
another uninitialized variable
2021-12-21 16:02:31 -05:00
tildearrow
997c460fc1
greatly improved playback resume
...
no more song weirding out when changing orders
2021-12-21 01:29:07 -05:00
tildearrow
b3b66ecbdb
channel mute/solo!
2021-12-18 03:25:42 -05:00
tildearrow
c54df74df1
GUI: rate change and new window title
2021-12-15 17:32:08 -05:00
tildearrow
52087edceb
lots of changes
...
- GUI: ability to load files
- GUI: arrow key navigation
- fix sample volumes
2021-12-15 00:37:27 -05:00
tildearrow
bde8a7f79d
warning-free compilation
2021-12-14 12:33:26 -05:00
tildearrow
a17e91955a
add reset() for every platform
2021-12-11 13:14:38 -05:00
tildearrow
6a02754996
add PAL flag to dispatch
...
now platforms run at their correct clock speed when in PAL mode
also fix clipping in Genesis
2021-12-08 01:56:40 -05:00
tildearrow
4eec990ec1
when the fix breaks something
2021-12-08 01:16:29 -05:00
tildearrow
db46dd79d2
honor arpeggio macro during legato
2021-12-08 00:56:46 -05:00
tildearrow
3f5b0019dc
C64: fix rael
2021-12-07 16:25:42 -05:00
tildearrow
3ee761fc87
C64: finish it all
...
all modules play correctly, bar:
- motherfunksignal (almost)
- filters are a bit weird
2021-12-07 01:23:57 -05:00
tildearrow
145403e7dd
Merge branch 'master' of github.com:tildearrow/furnace
2021-12-06 16:52:03 -05:00
tildearrow
d6fb6b0bb3
more optimization
...
as of now non-stereo sound chips are only processed once
2021-12-06 16:51:18 -05:00
tildearrow
6efcfc2e8a
prepare for possible major optimization
...
by just forwarding an output buffer to the dispatch and begin/length,
the number of calls may be reduced which improves performance.
2021-12-06 05:21:42 -05:00
tildearrow
18fb2a4b9f
C64: more work!
2021-12-06 03:26:39 -05:00
tildearrow
8478481466
hmmm
2021-12-06 02:59:12 -05:00
tildearrow
480b26c95c
more C64 work
2021-12-05 16:45:29 -05:00
tildearrow
24956e8177
Merge branch 'master' of github.com:tildearrow/furnace
2021-12-05 16:21:28 -05:00