Commit graph

226 commits

Author SHA1 Message Date
tildearrow
82eed26094 chip flags rewrite, part 1 2022-09-29 03:19:48 -05:00
tildearrow
6028523eaf dev118 - SNES true sustain 2022-09-28 19:08:22 -05:00
tildearrow
3329e98c51 new MSM5232 chip ID 2022-09-28 17:05:48 -05:00
tildearrow
1ceca2a509 release v0.6pre1.5 2022-09-22 04:13:26 -05:00
tildearrow
e22d7484cb dev115 - automatic system detection 2022-09-21 19:27:42 -05:00
tildearrow
7b1713758b dev114 - operator muting for OPN/OPM 2022-09-12 00:37:25 -05:00
tildearrow
8e256d4dd5 allocate ID for MSM5232 2022-09-10 16:33:40 -05:00
tildearrow
187653a70f dev113 - loop detection changes 2022-09-10 01:39:42 -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
tildearrow
6e87bc5dd6 update format.md 2022-08-22 04:38:46 -05:00
tildearrow
2650fe609f dev111 - many macro changes
- max macro length is now 255
- loop/rel pos is now unsigned (255 = no)
- prepare for macro speed/delay
2022-08-22 02:13:33 -05:00
tildearrow
c74d7fab37 dev108 - add SN period range compat flag
there's room for possible improvement
2022-08-19 18:46:19 -05:00
tildearrow
952a2a66e8 store ES5506 params in format 2022-08-18 23:55:29 -05:00
tildearrow
28698beaf3 dev106 - Game Boy: implement hw seq
and prepare for software envelope maybe
2022-08-10 01:55:44 -05:00
tildearrow
9f8c96d45b dev105 - prepare for Game Boy hardware sequences
issue #27
2022-08-07 00:03:27 -05:00
tildearrow
5534f55f7a dev104 - add "is sample" flag to Sound Unit ins 2022-08-06 04:04:18 -05:00
tildearrow
b75787603a I missed something 2022-07-24 02:52:39 -05:00
tildearrow
8d88ac766c dev103 - store system name and other info in song 2022-07-23 17:02:03 -05:00
tildearrow
d004629a58 dev102 - new sample storage format 2022-07-22 02:29:01 -05:00
tildearrow
5aa287eece update format.md - CSM for all OPN chips soon 2022-07-21 14:51:26 -05:00
tildearrow
f4a85bebff dev101 - fix SMSFM_intro.dmf 2022-07-04 01:43:59 -05:00
Natt Akuma
fac415c8e8 Prepare for NGP system
Also add PCM DAC as system format 0xc0
2022-07-02 08:19:25 +07:00
tildearrow
fd5f1106bc update format.md 2022-07-01 14:13:50 -05:00
tildearrow
a8a38dce2b 0.6pre1 - introduce the final changes
- implement E1xy/E2xy Defle bug when using same note twice
- add SNK Touchdown Fever preset
- update README.md and to-do list
- update credits

thank you for your patience!

see you in 0.6pre1.5 coming soon...
2022-06-29 04:57:05 -05:00
tildearrow
6fe7e638d5 update format.md 2022-06-29 01:56:57 -05:00
tildearrow
b99dce5362
Merge pull request #499 from superctr/220527_blocksize
Save the size of each block in a Furnace module
2022-06-29 01:54:05 -05:00
Postbox2
ecb6635c50
Fix typo 2022-06-24 13:51:05 +07:00
Ian Karlsson
5378974b96 Save the size of each block in a Furnace module 2022-05-27 21:42:14 +02:00
tildearrow
68cc84253c dev99 - major Fractal system change
7 channels instead of 8 - CSM only supported on ExtCh system
2022-05-27 05:13:10 -05:00
tildearrow
a776129c3d dev98 - YM2612: add Fractal system
partially done
2022-05-27 04:02:53 -05:00
tildearrow
393d1c018d dev97 - add old octave boundary compat flag 2022-05-22 13:25:59 -05:00
tildearrow
251734bd04 prepare for the last chips for 0.6pre1
YMZ280B is counted. don't worry.
2022-05-20 02:43:39 -05:00
tildearrow
aa1bccd8fe allocate ID for 3-channel Namco WSG
8-channel variants to be allocated
2022-05-19 18:24:53 -05:00
tildearrow
2a77abbaf9 update format.md 2022-05-19 04:36:04 -05:00
tildearrow
cfa05143ab dev96 - add virtual tempo 2022-05-18 00:05:25 -05:00
tildearrow
c5786b61fb dev95 - multiple songs in a single file (READ)
experimental feature! proceed with caution.
if you experience song corruption or crashes, report issue immediately!

files with multiple songs will be readable in older versions of Furnace,
but only the first song will be read in those versions.

issue #199
2022-05-15 01:42:49 -05:00
tildearrow
ce253230ce add AICA and YMZ ADPCM formats 2022-05-14 16:59:07 -05:00
tildearrow
a2ae7dbb3d allocate ID for YMZ280B 2022-05-14 16:18:24 -05:00
tildearrow
8784fe5664 dev94 - add a full linear pitch mode, part 1 2022-05-10 03:51:18 -05:00
Laurens Holst
3784c4e1d2 MultiPCM instrument type, editor and file ops. 2022-05-05 21:56:48 +02:00
tildearrow
4bc70fad7b format oops 2022-05-01 13:41:30 -05:00
tildearrow
2a1d45fa35 update format.md for eventual ExtCh extra systems 2022-04-28 15:07:28 -05:00
tildearrow
66f5b2117f dev90 - linear pitch macro option 2022-04-28 00:26:21 -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
2a952b1a66 dev87 - C64 changes
issue #335
2022-04-25 17:55:48 -05:00
tildearrow
bd68ef5cc3 dev86 - SN duty macro phase reset fix 2022-04-24 18:12:18 -05:00
tildearrow
23be8d9336 the final piece of f-num/block work 2022-04-24 14:40:07 -05:00
tildearrow
dd8df45519 update format.md with more clarifications 2022-04-16 18:01:12 -05:00
tildearrow
fbf7f9304e dev83 - yet another E1xy/E2xy fix
and 17xx fix in ExtCh
2022-04-13 00:34:00 -05:00
tildearrow
17d06de55c allocate SCC+ channel ID 2022-04-12 15:13:02 -05:00
tildearrow
bd49daad48 another format.md update 2022-04-12 15:06:11 -05:00
tildearrow
b69b456ef8 update format.md 2022-04-12 14:57:55 -05:00
tildearrow
24209c7853 dev82 - amiga wavetables
closes #16 (yay!)
2022-04-12 01:19:00 -05:00
tildearrow
9e0e8f3345 dev80 - increase song limits
up to 256 patterns
up to 256 orders
2022-04-08 17:21:36 -05:00
tildearrow
65f893822a dev79 - wave synth data storage
also wave synth works on swan and X1-010 now
however it's untested on X1 because i wrote it in bed
2022-04-08 04:34:39 -05:00
tildearrow
ad09254cf4 dev78 - new compat flag that fixes ExtCh 2022-04-07 01:14:34 -05:00
tildearrow
b162c09f7c GUI: OPZ instrument editor work - dev77 2022-04-07 00:45:53 -05:00
tildearrow
58abed3fa1 update pattern format spec 2022-04-06 20:21:20 -05:00
tildearrow
ccb8d3d355 dev76 - format changes
- 8 more macros
- FDS instrument data
2022-04-04 04:47:52 -05:00
tildearrow
1a7074d0e5 Furnace system IDs are no longer compatible 2022-04-03 13:54:02 -05:00
tildearrow
d321292543 separate VRC6 and VRC6 saw ins types 2022-03-31 15:25:58 -05:00
tildearrow
075f758e4d Namco 163 refinements 2022-03-27 22:04:01 -05:00
tildearrow
9b6e582f8d dev72 - two more compat flags 2022-03-26 22:15:15 -05:00
tildearrow
bd36a4ffdc dev71 - more compatibility flags for .mod 2022-03-23 23:57:10 -05:00
tildearrow
ac79e7d6af add broken speed alternation flag - dev70 2022-03-23 01:35:57 -05:00
tildearrow
6c5e6c2a0f
Merge pull request #294 from cam900/bubsys
Reduce naming confusion in Bubble System Wavetable Sound
2022-03-17 22:03:24 -05:00
tildearrow
8ee7efc8a0 update format 2022-03-17 16:39:01 -05:00
tildearrow
c264678fdc dev68 2022-03-17 14:35:38 -05:00
cam900
234c5e9295 Reduce naming confusion in Bubble System Wavetable Sound
It means Custom wavetable sound generator logic on Bubble System.
It's wavetable select and volume is controlled by single AY-3-8910 IO for both channels, Another AY-3-8910 IO is used for reading sound status.

Schematics: http://pdf.textfiles.com/manuals/ARCADE/K-R/Nemesis%20[Schematics]%20[English].pdf (Nemesis, derivative of Bubble system)
2022-03-17 10:11:48 +09:00
tildearrow
3163730fe8 prepare for drum kits/sample map 2022-03-16 17:01:44 -05:00
tildearrow
6b5bbae1c1 allocate bubble system ID 2022-03-14 12:03:10 -05:00
tildearrow
e009fc64f2 allow instrument change during slides 2022-03-14 01:23:31 -05:00
tildearrow
cf07e1861e add "auto-insert one tick gap" option 2022-03-11 23:01:18 -05:00
tildearrow
2a0aa19b2b fix broken DAC mode
adds new compat flag
2022-03-11 22:11:33 -05:00
tildearrow
27758434af update format.md to parse op count 2022-03-07 17:07:00 -05:00
tildearrow
9333b5bd51 prepare for X1-010 2022-03-06 22:36:13 -05:00
tildearrow
5ad54dad4d allocate VERA chip 2022-03-04 14:31:29 -05:00
tildearrow
8758277199 OPLL: implement fixed freq mode for drums
issue #249
2022-03-04 01:18:16 -05:00
tildearrow
8e5b3abab8 add two more compatibility flags
issue #167 and #249:
- stop porta on note off
- continuous vibrato
2022-03-03 23:14:38 -05:00
cam900
e49ee1cd3d
0xa9 is already allocated 2022-03-03 14:14:54 +09:00
tildearrow
1973992064 allocate system IDs for OKI chips 2022-03-02 18:39:21 -05:00
tildearrow
acc9b0aa57
Merge pull request #225 from cam900/ym2610b
Prepare to experimental support YM2610B and with Extended channel 3 mode, Some additions
2022-03-01 23:21:46 -05:00
tildearrow
066769379b update format.md a bit 2022-03-01 20:58:27 -05:00
cam900
1631af8f8e Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b 2022-03-02 01:18:36 +09:00
tildearrow
bd9289cfdd store OP macros
todo
2022-02-28 18:16:05 -05:00
tildearrow
3ca90fd0c8 format oops 2 2022-02-27 17:31:11 -05:00
tildearrow
dcead63a7d format oops 2022-02-27 17:30:33 -05:00
cam900
6d36a8fdd2 Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b 2022-02-28 03:04:28 +09:00
tildearrow
3e3d42a76a update format.md for better GitHub compat 2022-02-27 00:28:16 -05:00
tildearrow
0b8372b44b clarify about compression 2022-02-26 23:00:02 -05:00
cam900
ee013ad7a9 Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b 2022-02-27 06:41:11 +09:00
tildearrow
c52258f943 update format to store OPLL preset number 2022-02-25 23:59:08 -05:00
cam900
cd4c876c5e Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b
# Conflicts:
#	src/engine/engine.cpp
#	src/engine/playback.cpp
2022-02-25 23:47:28 +09:00
tildearrow
19c4f5559a bring crash fix from 0.5.8 2022-02-24 22:52:20 -05:00
cam900
d831a522a4 Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b
# Conflicts:
#	src/engine/engine.cpp
#	src/engine/platform/ym2610Interface.cpp
2022-02-25 12:20:00 +09:00
tildearrow
4b6d9adcb9 volume changes
as of now the master volume is 1.0x (it was 2.0x before)
NES has also been amplified.
these changes should not affect older songs.
2022-02-24 17:56:19 -05:00
cam900
1e2d5694b9 Prepare to support YM2610B and with Extended channel 3 mode
Allow 8 bit volume for YM2610 ADPCM-B
Remove sample mode macro in YM2610, it's always enabled and seperated channels.

TODO: ADPCM-B is still not implemented, FM Channel 2 is silenced in extended channel 3 configuration
2022-02-25 01:02:35 +09:00
tildearrow
1e98f0c4a1 sample system rewrite! **PLEASE READ**
this commit mostly rewrites the sample system.
as of now samples can be ADPCM, 8-bit, BRR or 16-bit
or something...

consider this VERY EXPERIMENTAL.
if you find any issues REPORT THEM immediately.

it's nearly 4am...
2022-02-24 03:57:45 -05:00
tildearrow
259b6598d0 update format.md 2022-02-23 23:22:46 -05:00
tildearrow
38e948e6e1 update format.md 2022-02-22 17:49:29 -05:00
tildearrow
9068b7013b update format.md for upcoming systems 2022-02-20 22:49:18 -05:00
tildearrow
cda18d32b3 store pattern names 2022-02-19 18:18:12 -05:00
tildearrow
ce2af4303e yay for more compatibility flags
ignore duplicate slides on .dmf
2022-02-18 02:03:31 -05:00
tildearrow
fbed03dd0c fix E1xy/E2xy behaving wrong with arps 2022-02-18 01:27:26 -05:00
tildearrow
62f2f67b9d add two more compatibility flags
for songs that relied upon pre-0.5.5 broken behavior
2022-02-09 22:07:32 -05:00
tildearrow
3d8991cdb8 save compat flags in the file 2022-02-08 16:43:40 -05:00
tildearrow
4ce116ca0a prepare for macro release points
issue #142
2022-02-08 03:50:42 -05:00
tildearrow
e06e316e10 add two new compatibility flags
proper noise range and duty macro is wave volume
2022-02-06 01:56:50 -05:00
tildearrow
088b3eece3 clarifications to format 2022-02-04 15:20:49 -05:00
tildearrow
fcb02ddece update format.md for upcoming features 2022-02-04 14:44:07 -05:00
tildearrow
2fdca5a98f update format.md 2022-02-02 18:25:32 -05:00
tildearrow
ec66b7a21b add song tuning
soon: system clock settings
2022-01-28 00:55:51 -05:00
tildearrow
b812fc4041 prepare for sample C-4 freq
issue #70
2022-01-27 16:52:06 -05:00
tildearrow
f86838df99 no longer shift arpeggio macro by 12 2022-01-26 15:53:52 -05:00
tildearrow
58c9edf9c1 store FM macros in file
a few more steps and then we'll have functional FM macros
2022-01-22 22:21:21 -05:00
tildearrow
9940222a6f prepare for storage of FM macros 2022-01-22 18:28:43 -05:00
tildearrow
785f7e4d40 samples may have loop points 2022-01-15 17:54:21 -05:00
tildearrow
be9f3c8101 update format with new chips 2022-01-15 15:51:58 -05:00
tildearrow
805cf69c52 deprecate macro heights
now we do everything based on the ins type
2022-01-13 20:44:45 -05:00
tildearrow
943f88b306 add four more macros
they eventually will be used
2022-01-13 13:55:33 -05:00
tildearrow
36e52ec564 update format.md 2022-01-13 03:31:58 -05:00
tildearrow
a62b37603d update format spec for eventual ins/wave format 2022-01-11 04:45:07 -05:00
tildearrow
02b5b05e04 prepare for 0.3 2022-01-10 17:30:36 -05:00
tildearrow
8d9cddde37 implement Furnace format saving
experimental and no loading yet
2022-01-09 03:52:41 -05:00
tildearrow
d2e98301e2 am I gonna make a new format 2021-12-29 17:00:49 -05:00