Commit Graph

121 Commits

Author SHA1 Message Date
tildearrow f4c26dbea7 document some of the structures 2022-03-15 22:05:55 -05:00
tildearrow 9b3e0d45bd prepare for decimal Hz? 2022-03-15 18:36:34 -05: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 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 c6fda7a156 Merge branch 'x1_010' of https://github.com/cam900/furnace into cam900-x1_010 2022-03-10 18:24:52 -05:00
Natt Akuma 3b88786ffb Merge branch 'master' of https://github.com/tildearrow/furnace into x16 2022-03-07 16:46:32 +07:00
cam900 7a2c86e9d7 Merge branch 'master' of https://github.com/tildearrow/furnace into x1_010 2022-03-07 10:28:54 +09:00
tildearrow 2bfb84cd1e AY: add 1.10 and 2.10 rates 2022-03-06 14:18:18 -05: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
tildearrow 16dfc785d3 PC speaker: improvements 2022-03-05 00:36:50 -05:00
Natt Akuma 9abf872ff3 Add VERA support for Commander X16 2022-03-04 18:20:38 +07: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
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 b90fb02e63 OPLL: 99.9%
all features usable, except for custom patchsets (not sure how am i
gonna implement it)
2022-03-01 23:07:29 -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 ccfed873e8 system master race 2022-02-23 21:53:07 -05:00
tildearrow e4b9a6d1d9 compound system flattening, part 1
as of now compound systems (Genesis and Arcade) are translated to
separate chips.

this improves audio quality and makes things easier.

it also allows you to change the volume of each chip on a Genesis.

also adds SegaPCM system with 16 channels!
2022-02-23 02:52:30 -05:00
tildearrow e6ee28ce0d Merge branch 'cps2' of https://github.com/superctr/furnace into superctr-cps2 2022-02-22 18:21:57 -05:00
Ian Karlsson b3908216f8 Implement QSound support 2022-02-22 11:36:12 +01:00
Waldemar Pawlaszek 2e4c7ec60a Initial Atari Lynx Support 2022-02-20 18:15:15 +01:00
tildearrow fa363384aa 1.1 .DMF saving
as of now you're given a choice between 1.1 and 1.0 module
2022-02-20 03:18:20 -05:00
tildearrow 464ad5a825 preliminary 1.1 .dmf loading 2022-02-19 02:52:53 -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 b9832abbeb license clarification, part 3 2022-02-14 22:12:20 -05:00
tildearrow d27dcfecac rename Neo Geo to Neo Geo CD
pave the way for Neo Geo with ADPCM-B
2022-02-10 03:28:20 -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 89d47da795 prepare to add more compatibility flags 2022-02-08 15:32:10 -05:00
tildearrow 8d45236cce SMS: add option to disable noise phase reset
issue #83
2022-02-07 23:05:50 -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 088e49a3f4 implement channel hiding, names and song comment 2022-02-05 01:48:35 -05:00
tildearrow 58b14fccd6 aaaaaaa 2022-02-04 21:35:32 -05:00
tildearrow 6b040084e0 Genesis: add alternate clock speed 2022-02-04 21:35:24 -05:00
tildearrow acdf4d6503 Amiga: add stereo separation setting 2022-02-04 17:59:55 -05:00
tildearrow 3379e8b380 prepare for compat flags, piano, comments, etc. 2022-02-03 00:34:48 -05:00
tildearrow e9f9cfd518 prepare for E5xx behavior flag 2022-02-02 23:16:59 -05:00
tildearrow da8e4715bd finally fix the build 2022-02-02 18:24:33 -05:00
tildearrow 14760e0669 **DO NOT BUILD THIS ONE** 2022-02-02 15:29:20 -05:00
tildearrow 227fff021e try fixing .dmp loading
what a mess this format was before 1.0
2022-02-01 00:58:00 -05:00
tildearrow 629d229bc1 i will finish this later today 2022-01-28 18:12:56 -05:00
tildearrow 09ebadf479 ( 2022-01-28 17:10:22 -05:00
tildearrow 8c353548f5 prepare for system flags
issue #61
2022-01-28 03:40:06 -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 67b47b43b2 prepare to add compatibility flags 2022-01-22 15:30:23 -05:00
tildearrow 8b79bf78a9 add Furnace instrument loading
TODO: .dmp loading
2022-01-22 00:14:48 -05:00
tildearrow dce06d8ec4 add AY8930 platform 2022-01-14 00:02:10 -05:00
tildearrow 2fcb474544 stuff
implement two systems and system vol/pan
2022-01-13 01:03:57 -05:00
tildearrow 9b40dd994b prepare for more platforms 2022-01-12 22:58:51 -05:00
tildearrow f47543ab98 prepare for multiple chip support, part 2 2022-01-08 03:02:04 -05:00
tildearrow 121a9b2cb8 prepare for multiple chip support 2022-01-08 01:57:37 -05:00
tildearrow 7ed1777bdc fix 128 instrument song failing to read 2022-01-03 03:35:13 -05:00
tildearrow be3b4da834 add note preview feature 2021-12-28 18:23:57 -05:00
tildearrow c4c019e593 fix E5xx range in old modules 2021-12-18 01:09:43 -05:00
tildearrow ebb28d912b untested saving code and memory leak fix 2021-12-15 14:15:44 -05:00
tildearrow 3af0a9feda set default time base of song to 0 2021-12-13 20:31:27 -05:00
tildearrow 285cc9b766 allow running GUI without loaded module 2021-12-13 14:40:03 -05:00
tildearrow 760fa43a4f fill in a blank line 2021-12-04 02:34:13 -05:00
tildearrow 23dc645ced out of bounds and non-determinism fixes
the soldiers play properly now
2021-05-28 02:02:54 -05:00
tildearrow a1ab7c5d57 game boy progress, part 1
noise and wave channels don't play correctly yet
2021-05-27 13:30:37 -05:00
tildearrow 3a1019a08c more fixes and tweaks
memory management party
2021-05-16 20:49:54 -05:00
tildearrow 76a345ef25 rebranding 2021-05-13 03:22:57 -05:00
tildearrow 062a9837c0 G E N E S I S
without SN
2021-05-12 17:19:18 -05:00
tildearrow 783d56c72a initial commit
took me a day to make the base...
...and ~12 hours to write a reader that reads 100% of all demo songs in
1.0
2021-05-11 15:08:08 -05:00