Commit graph

326 commits

Author SHA1 Message Date
freq-mod
c381b60143
Update saa1099.md 2022-04-08 23:03:02 +02:00
freq-mod
e10a410cf1
some docs improvemets 2022-04-08 22:59:51 +02:00
freq-mod
89455959fc
slightly improve fds docs 2022-04-08 22:34:13 +02: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
7f51f0f246 update system list in doc 2022-04-06 00:45:56 -05:00
tildearrow
91738dbf23 add MMC5 documentation 2022-04-06 00:45:26 -05:00
tildearrow
280cbb3e39 FDS: possibly final work
the last thing left to do is the filter, but everything works now
2022-04-05 18:18:14 -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
25b07fb4f1 typo fixes 2022-03-27 22:18:50 -05:00
tildearrow
4422ff7695 Merge branch 'vrc6' of https://github.com/cam900/furnace into cam900-vrc6 2022-03-27 22:16:04 -05:00
tildearrow
075f758e4d Namco 163 refinements 2022-03-27 22:04:01 -05:00
tildearrow
c4fc797578
Merge #304 - DO NOT COMPILE
Add Namco 163 Support
Not final - changes needed
2022-03-27 21:35:58 -05:00
cam900
c430d24d2f VRC6 has internal timer 2022-03-28 01:12:44 +09:00
cam900
ef104ce0b0 Add VRC6 support
2 Pulse channels:
- 8 level pulse duty cycle, DAC mode(just ignores duty cycle)/pulse wave mode, 4 bit volume.
- Furnace support PCM playback in pulse channels with duty cycle ignore mode.

Sawtooth:
- nothing but 6 bit volume (8 bit accumulator in technically) and 12 bit frequency (periodic).

VRC6 instrument:
- 6 bit Volume macro for finer sawtooth volume handling, also 3 bit Duty cycle macro for pulse channels.

Duty, PCM mode command and Duty macro affects for pulse channel only.
2022-03-28 01:06:56 +09:00
tildearrow
688190db91 improve VIC-20 doc 2022-03-27 02:31:03 -05:00
tildearrow
08dd693fa0 Amiga: add AM/PM effects 2022-03-27 00:02:17 -05:00
tildearrow
154ef3f9a3 Amiga: filter emulation 2022-03-26 23:39:20 -05:00
tildearrow
9b6e582f8d dev72 - two more compat flags 2022-03-26 22:15:15 -05:00
tildearrow
00876a461a update effect list 2022-03-26 21:16:15 -05:00
tildearrow
3ea9c0360f implement F3xx and F4xx for fine vol slides 2022-03-26 20:58:33 -05:00
tildearrow
73536c0691 AY: add effects to write to I/O ports 2022-03-26 20:55:43 -05:00
nicco1690
8c6c3f1707
Add the VIC-20 to the systems list in README.md 2022-03-26 21:34:32 -04:00
nicco1690
1022d64bd0
Create VIC-20 documentation
funny low-pass sound chip waves go brr
2022-03-26 21:32:29 -04:00
freq-mod
1a4290f1c3
somewhat improved system descriptions 2022-03-26 19:55:20 +01:00
AugiteSoul
2489428795
Cleaned up grammar, mostly
Might need some changes after this considering some lines were rather confusing - I don't actually know much about how this chip works exactly
2022-03-26 19:37:07 +01:00
tildearrow
bd36a4ffdc dev71 - more compatibility flags for .mod 2022-03-23 23:57:10 -05:00
cam900
df8f40486d Fix frequency, Loading waveform, Add instrument tab for waveform initialize
now for saving DivInstrumentN163 struct is... needs to compatibility breaks?
2022-03-24 03:53:07 +09:00
cam900
e8d567d3df Merge branch 'master' of https://github.com/tildearrow/furnace into n163 2022-03-24 03:22:33 +09:00
tildearrow
ac79e7d6af add broken speed alternation flag - dev70 2022-03-23 01:35:57 -05:00
cam900
abb5f03143 System docs 2022-03-23 03:16:20 +09:00
cam900
2eaa6ed0ce Merge branch 'master' of https://github.com/tildearrow/furnace into n163
# Conflicts:
#	CMakeLists.txt
#	papers/doc/7-systems/README.md
#	src/engine/dispatchContainer.cpp
#	src/gui/gui.cpp
#	src/gui/insEdit.cpp
2022-03-23 02:44:13 +09:00
cam900
5fdce33b11 Add Namco 163 Support 2022-03-23 01:48:45 +09:00
tildearrow
6c10c269a1 VERA: Furnace does support stereo for panning 2022-03-22 01:18:22 -05:00
tildearrow
3b63ca9455 update ay8930.md 2022-03-22 01:06:13 -05:00
tildearrow
ae3165dbb4 system doc work 2022-03-22 00:58:07 -05:00
tildearrow
8ae0796f00 now add it to the list 2022-03-22 00:17:00 -05:00
tildearrow
2589709d1a add doc for VERA chip 2022-03-22 00:16:19 -05:00
tildearrow
a1969d30f6 rename x1_010 to x1-010 2022-03-22 00:06: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
Natt Akuma
7308114475 Document new effects 2022-03-15 03:59:52 +07:00
tildearrow
9f7b18d038
Merge pull request #286 from cam900/scc
Add Bubble System Support
2022-03-14 14:41:33 -05:00
tildearrow
6b5bbae1c1 allocate bubble system ID 2022-03-14 12:03:10 -05:00
cam900
f24a776a7a More user friendly instrument name 2022-03-14 19:40:27 +09:00
cam900
2c6267bd6b Merge branch 'master' of https://github.com/tildearrow/furnace into scc 2022-03-14 19:22:31 +09:00
cam900
69aeb7dd58 Add Bubble System Support
Bubble System 2 channel Wavetable sound generator logic is configuration with K005289, 4 bit PROM and DAC.
K005289 controls pitch and 5 bit address generator per channel, Waveform select and Volume control is tied to AY-3-8910 ports. (each port for per channels)
these configuration is better known as K005289, the part of logic.
furnace emulates this configurations as single system, waveform format is 15 level and 32 width.
2022-03-14 19:22:12 +09:00
tildearrow
e009fc64f2 allow instrument change during slides 2022-03-14 01:23:31 -05:00
tildearrow
d607f35aa2
Merge pull request #279 from cam900/intv_alt
Add AY-3-8914 support as configurable in AY-3-8910
2022-03-13 11:17:36 -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
cam900
3ac1dce3fe Add AY-3-8914 support as configurable in AY-3-8910
Previous PR (https://github.com/tildearrow/furnace/pull/278) is closed due this, but archived for info.
It's AY with 4 level envelope volume per channel and different register format.
2022-03-12 03:30:54 +09:00
tildearrow
eb48a3d108
Revert "Create OPL3 docs (read Effect Commands section)" 2022-03-10 21:35:34 -05:00
tildearrow
8d0ac3cbba
Merge pull request #269 from nicco1690/patch-2
Create OPL3 docs (read Effect Commands section)
2022-03-10 18:32:11 -05:00
tildearrow
c871239736
Merge pull request #257 from nicco1690/patch-1
Create Lynx MIKEY sound docs
2022-03-10 18:31:41 -05:00
tildearrow
c6fda7a156 Merge branch 'x1_010' of https://github.com/cam900/furnace into cam900-x1_010 2022-03-10 18:24:52 -05:00
nicco1690
f372088aad
Create OPL3 docs (read Effect Commands section) 2022-03-08 23:15:52 -05:00
nicco1690
0826f22d8b
Update docs to add more info
Thanks to @freq-mod for providing the effect commands section and some more general information which has been copied into this version.
2022-03-08 22:42:43 -05:00
cam900
a32781bb1a grammar 2022-03-09 01:17:16 +09:00
cam900
ba68ad6ed5 More info in waveform size 2022-03-09 01:06:47 +09:00
cam900
6c432bc42e Allow Left waveform can be invertable,
Improvement documents
2022-03-09 00:50:10 +09:00
Natt Akuma
43cfb09acf Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-08 17:53:00 +07:00
cam900
2e6cc9fc7c Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010
# Conflicts:
#	CMakeLists.txt
#	papers/doc/7-systems/README.md
#	src/engine/dispatch.h
#	src/engine/dispatchContainer.cpp
#	src/engine/playback.cpp
#	src/engine/sysDef.cpp
#	src/gui/gui.cpp
2022-03-08 13:38:24 +09:00
tildearrow
0210548291
swan let's go
Add WonderSwan support and flatten second chip checks in VGM export into variables
2022-03-07 23:05:32 -05:00
tildearrow
27758434af update format.md to parse op count 2022-03-07 17:07:00 -05:00
cam900
b270513639
Frequency range limit 2022-03-07 19:41:26 +09:00
Natt Akuma
3b88786ffb Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-07 16:46:32 +07:00
Natt Akuma
840a6fa306 Add WonderSwan support 2022-03-07 15:44:59 +07:00
tildearrow
9333b5bd51 prepare for X1-010 2022-03-06 22:36:13 -05:00
cam900
666b061c8b Fix year info 2022-03-07 03:08:47 +09:00
cam900
4a83c7c5a7 Add Seta/Allumer X1-010 Support
its 16 channel wavetable/PCM chip, with (optional) stereo support.
Its also has envelope, this feature has similar as AY PSG's one but its shape is also stored at RAM, and each nibble in envelope data is for each output: so i decided to added some feature for more stereo-ish envelope.
Split: Envelope shape will be splitted to Left and Right half for each output.
HInv, Vinv: Envelope shape will be Horizontally/Vertically mirrored the left one.

Max sample length is sample bank size of Seta 2 arcade hardware (currently not emulated yet, nor it doesn't support on VGM).

Chip id is temporary, it can be changed with to suggestions.
2022-03-07 02:31:03 +09:00
nicco1690
7935f52737
Create Lynx MIKEY sound docs 2022-03-05 23:27:48 -05:00
tildearrow
5ad54dad4d allocate VERA chip 2022-03-04 14:31:29 -05:00
Natt Akuma
9abf872ff3 Add VERA support for Commander X16 2022-03-04 18:20:38 +07: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
f85c6913ce update doc 2022-02-28 22:49:03 -05:00
tildearrow
bd9289cfdd store OP macros
todo
2022-02-28 18:16:05 -05:00
cam900
de8c79e306 Further informations 2022-03-01 02:50:26 +09: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
tildearrow
77e4875300 update doc 2022-02-27 16:56:46 -05:00
cam900
d92b662851 Typo 2022-02-28 03:05:31 +09:00
cam900
6d36a8fdd2 Merge branch 'master' of https://github.com/tildearrow/furnace into ym2610b 2022-02-28 03:04:28 +09:00
cam900
2312ab19d2 Split YM2610B document 2022-02-28 03:04:04 +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
e243a8558e Add YM2610B in documents 2022-02-27 06:47:31 +09: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
381f3e07ee Merge branch 'master' of github.com:tildearrow/furnace 2022-02-22 18:22:52 -05:00
tildearrow
e6ee28ce0d Merge branch 'cps2' of https://github.com/superctr/furnace into superctr-cps2 2022-02-22 18:21:57 -05:00
tildearrow
a29fcee3c3
Merge pull request #205 from nicco1690/patch-1
Add OPLL docmentation
2022-02-22 18:06:20 -05:00
tildearrow
38e948e6e1 update format.md 2022-02-22 17:49:29 -05:00
Ian Karlsson
e32ef2d881 Add 3xxx effect to set echo delay buffer length. Add documentation 2022-02-22 21:16:46 +01:00
Waldemar Pawlaszek
d15b3d6ffd Some documentation 2022-02-22 13:36:21 +01:00
nicco1690
6dff2c91bb
Add OPLL docmentation
May need edits when OPLL support is added.
2022-02-21 22:37:11 -05:00
tildearrow
fa9905633b more attribution 2022-02-21 12:49:13 -05:00
That8BitChiptuneGuy
381d53964f Added a tip about Sampling 2022-02-21 12:38:44 -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
nicco1690
65e3e623f2 Include brief summary in the intro README file 2022-02-13 00:11:35 -05:00
tildearrow
36787cb33e update doc 2022-02-10 04:19:15 -05:00
tildearrow
c60cb9a137 Merge branch 'master' of github.com:tildearrow/furnace 2022-02-09 23:02:16 -05:00
nicco1690
6a1d143fab Update sample docs to be more clear
Changed according to changes requested by tildearrow
2022-02-09 23:02:06 -05:00
nicco1690
2b80dd74fc Add sample documentation (WIP, needs images) 2022-02-09 23:02:06 -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
30d279ea89 attribution 2022-02-09 03:02:28 -05:00
tildearrow
af80908581 update instrument doc 2022-02-09 02:55:53 -05:00
tildearrow
3054c7ad6f write pattern documentation 2022-02-09 02:12:37 -05:00
tildearrow
3d8991cdb8 save compat flags in the file 2022-02-08 16:43:40 -05:00
tildearrow
480ae960e4 add interface documentation (partial) 2022-02-08 05:19:32 -05:00
tildearrow
4ce116ca0a prepare for macro release points
issue #142
2022-02-08 03:50:42 -05:00
nicco1690
4d14a19267
Fix typo in Wavetable docs (#149) 2022-02-07 21:37:04 +01:00
freq-mod
fd12d5c232
Wave editor doc
Rather simple description
2022-02-07 20:52:21 +01:00
freq-mod
077fae80d6
Complete the instruments documentation 2022-02-07 20:13:27 +01: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
freq-mod
ffb0058ea1
Merge pull request #137 from cam900/patch-2
fm.md: YM2151 has no SSG-EG
2022-02-05 18:18:40 +01:00
cam900
27864aeef2
fm.md: YM2151 has no SSG-EG 2022-02-06 01:49:08 +09:00
cam900
685b4d2f9e
ay8910.md: Fix document correction 2022-02-05 23:48:34 +09:00
freq-mod
31bda87bb7 Update README.md 2022-02-04 16:10:27 -05:00
freq-mod
c5612fa9ab add instrument docs 2022-02-04 16:10:27 -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
b57e85134e prepare for end of song effect 2022-02-04 14:43:57 -05:00
tildearrow
2fdca5a98f update format.md 2022-02-02 18:25:32 -05:00
tildearrow
f03ed7c833 NES: add hardware sweep effect 2022-02-01 18:28:48 -05:00
freq-mod
320bebb4be
Add 12xx duty cycle description (#101) 2022-02-01 15:15:05 -05:00
tildearrow
f0eca1bea2 huh? the screenshot did not update 2022-01-28 01:28:30 -05:00
tildearrow
faa6273718 update readme and screenshot
to reflect upcoming 0.5 version
2022-01-28 01:26:40 -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
da7893f015 use the old version of Exo font
i liked it more
2022-01-22 02:54:32 -05:00
tildearrow
730561d3a3 arcade: add effects to control AMD/PMD 2022-01-20 17:54:11 -05:00
tildearrow
75ce5f4e2a add auto-envelope mode (29xy effect)
this closes #32
2022-01-20 03:23:03 -05:00
tildearrow
379d90ae4d add more fonts
partially related to an issue when displaying non-Latin characters
however a true fix isn't coming yet as I haven't figured out a way
to load glyphs during run-time as needed
2022-01-19 16:58:01 -05:00
tildearrow
850e270f7d update doc 2022-01-18 18:22:17 -05:00
tildearrow
104295e06d update TIA doc 2022-01-18 15:16:03 -05:00
tildearrow
818ebcd195 hmmm 2022-01-16 15:16:05 -05:00
tildearrow
45b6c19867 rename system to platform
easier to understand
2022-01-16 01:17:30 -05:00
tildearrow
ed5279f96c update documentation 2022-01-16 01:10: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
tildearrow
6006862f86 add a screenshot to readme 2021-12-19 03:36:42 -05:00
tildearrow
dcbb41bc2f add IBM Plex license info 2021-12-11 21:18:53 -05:00