FREE | Win Mac Linux | 68/68/67/56 MBthe biggest multi-system chiptune tracker ever made!
features
a multi-system chiptune tracker compatible with DefleMask modules
a large selection of sound chips:
Yamaha FM chips:
YM2151 (OPM)
YM2203 (OPN)
YM2413 (OPLL)
YM2414 (OPZ) used in Yamaha TX81Z
YM2608 (OPNA) used in PC-98
YM2610 (OPNB) used in Neo Geo
YM2610B (OPNB2)
YM2612 (OPN2) used in Sega Genesis and FM Towns
YM3526 (OPL) used in C64 Sound Expander
YM3812 (OPL2)
YMF262 (OPL3) with full 4-op support!
Y8950 (OPL with ADPCM)
ESS ESFM (like OPL3 but with more features)
square wave chips:
AY-3-8910/YM2149(F) used in several computers and game consoles
Commodore VIC used in the VIC-20
Microchip AY8930
TI SN76489 used in Sega Master System, BBC Micro, and many others
PC Speaker
Philips SAA1099 used in SAM Coupé
OKI MSM5232 used in some arcade boards
sample chips:
SNES
Amiga
SegaPCM - all 16 channels
Capcom QSound
Yamaha YMZ280B (PCMD8)
Ricoh RF5C68 used in Sega CD and FM Towns
OKI MSM6258 and MSM6295
Konami K007232
Konami K053260
Irem GA20
Ensoniq ES5506
Namco C140
Namco C219
wavetable chips:
HuC6280 used in PC Engine
Konami Bubble System WSG
Konami SCC/SCC+
Namco arcade chips (WSG/C15/C30)
WonderSwan
Seta/Allumer X1-010
Sharp SM8521 used in Tiger Game.com
NES (Ricoh 2A03/2A07), with additional expansion sound support:
Konami VRC6
Konami VRC7
MMC5
Famicom Disk System
Sunsoft 5B
Namco 163
Family Noraebang (OPLL)
SID (6581/8580) used in Commodore 64
Mikey used in Atari Lynx
ZX Spectrum beeper
SFX-like engine
QuadTone engine
Pokémon Mini
Commodore PET
TED used in Commodore Plus/4
Casio PV-1000
TIA used in Atari 2600
including software tuning engine (TIunA)
POKEY used in Atari 8-bit computers
Game Boy
including SOFTWARE ENVELOPES (zombie mode)
Virtual Boy
Game Boy Advance
DMA (direct memory access) two channel mode
MinMod software driver by Natt Akuma
Nintendo DS
modern/fantasy:
Commander X16 VERA
tildearrow Sound Unit
PowerNoise
Bifurcator
SID2
Generic PCM DAC
mix and match sound chips!
over 200 ready to use presets from computers, game consoles and arcade boards...
...or create your own presets - up to 32 chips or a total of 128 channels!
DefleMask compatibility
loads .dmf modules from all versions (beta 1 to 1.1.9)
saves .dmf modules - both modern and legacy
Furnace doubles as a module downgrader
loads/saves .dmp instruments and .dmw wavetables as well
clean-room design (guesswork and ABX tests only, no decompilation involved)
some bug/quirk implementation for increased playback accuracy through compatibility flags
VGM export
ZSM export for Commander X16
TIunA export for Atari 2600
modular layout that you may adapt to your needs
audio file export - entire song, per chip or per channel
quality emulation cores (Nuked, MAME, SameBoy, Mednafen PCE, NSFplay, puNES, reSID, Stella, SAASound, vgsound_emu and ymfm)
wavetable synthesizer
available on wavetable chips
create complex sounds with ease - provide up to two wavetables, select an effect and let go!
MIDI input support
additional features:
FM macros!
negative octaves
advanced arp macros
arbitrary pitch samples
sample loop points
SSG envelopes and ADPCM-B in Neo Geo
pitchable OPLL drums
full duty/cutoff range in C64
full 16-channel SegaPCM
ability to change tempo mid-song
decimal tempo/tick rate
multiple sub-songs in a module
per-channel oscilloscope with waveform centering
built-in sample editor
chip mixing settings
built-in visualizer in pattern view
open-source under GPLv2 or later.
Changelog:
Furnace v0.6.8 - the last
change log
add Watara Supervision system
a rather obscure console from Taiwan with two pulse channels, a noise and primitive sample channel
add SID3 fantasy chip
inspired by SID, this chip has 6 channels of analog-synth-like goodness, a boatload of macros and even one wave channel
add OPL4 system
OPL3 with 24 sample channels taken from the to-be-implemented MultiPCM
fix 5E01 not producing sound at all
SNES anti-click
note that this does not eliminate clicks in samples with incompatible loop regions! it only applies to note playback.
POKEY SAP type R export (playable by Altirra and lzss-sap on hardware)
FamiTracker import improvements
create instrument copies to represent what FamiTracker does (in particular, on VRC6 channels when using 2A03 instruments)
fix Hxy effect for S5B (AY)
fix virtual tempo going outside range
fix VRC7 patch switch effect (Dn-FamiTracker) not being imported correctly
find/replace improvements
make the note selector a bit more comfortable
search in selection now works on selected channels only (previously it would search on all channels... issue #2393)
fix a possible crash (issue #2328)
cut/delay policy is now lax
set macro release mode to Active (issue #2376)
C64 4-bit PCM/digi (using volume control)
performance optimizations for certain chips
up to 10 times less CPU usage during playback and faster audio exports
optimized chips include: PC Speaker, GA20, Amiga, PC Engine, SCC, NES, MMC5, VRC6, TIA, Virtual Boy, AY (not so much), Nintendo DS, T6W28, SN, SM8521, Bubble System WSG and K007232
new WonderSwan emulation core courtesy of asiekierka (#2401)
Virtual Boy changes
one notorious Virtual Boy quirk is that you cannot write to wave/modulation table memory unless all channels are disabled
Furnace wasn't taking this quirk into account, which means that exported VGMs wouldn't play on hardware
this release makes exported VGMs work on hardware by disabling all channels on wave change
however, this means there will be a "click" on every wave change, which can get very annoying
it is recommended you use static mode, or change waves sparingly...
there's a setting to go back to the old behavior, but keep in mind this will break VGM export and is not hardware-accurate!
TFM import improvements
implement looping
XM import improvements
new envelope conversion algorithm
add ability to set multiple key binds for actions
FM 30xx (hard reset envelope) now working on VGM export
OPZ improvements (per-op frequency control including arp/pitch macros)
support for MSX2 .dmf (no, I am not going to support its weird AY manners. sorry!)
add ability to create a sample from a wavetable
per-op fixed octave/block setting in OPN, OPL and ESFM (useful for SSG-EG)
CSM on all OPN chips
Combat Vehicle improvements
small stages, modifiers, special powerups and planes
fix a possible crash on macOS when the font texture is too large
fix two possible hangs in MIDI code when audio output isn't working
fix crash when selecting all after expanding/collapsing/change-effect-counting channel
OPN: fix possible crash when using FM effects on non-FM channels (issue #2286)
fix some file loading exploits
negative sample length (issue #2316)
samples too long in .dmf
invalid pitches in .dmf
command palette improvements
show shortcuts (for actions)
color the search characters
use non-greedy search to find optimal fuzzy match order
fix the "Rendering..." window being too small at times
add cursor undo/redo actions
add the ability to set a channel visibility mask for user presets
use chanMask in the Advanced parameter. for example: chanMask=0,2 will hide the first and third channel.
fix certain things not marking song as modified
fix preset patches not having DC, DM and KSL set correctly in the editor
fix WaveTools in wavetable editor not updating wave in chips
fix volume portamento inhibiting volume column after it has reached target
add setting to auto-zoom macro editor depending on macro length(s)
horizontal wavetable list
fix an EDxx bug (issue #2014)
add ctrlWheelModifier option for Alt
slightly improve the welcome screen
SID2: fix chan osc overflow
remove party mode
fix order nibble when moving cursor with keys (issue #2170)
fix QSound ADPCM in VGM export
OPL3: fix 4-op mode toggle corrupting volume (#2171)
fix YMF289 in ymfm
Y8950: fix ADPCM pitch (issue #2028)
add a warning when importing a MOD/S3M/XM/IT file for the first time
implement auto-fill file name when saving in system file picker (Windows and macOS only)
fix DT2 effect in OPM and OPZ
fix possible issue in config files when a line is too long (issue #2025)
freaking workaround for Flatpak quirks (issue #2096)
fix built-in file picker X scroll (issue #2190)
don't show duty macro in beeper-type instrument if ZX Spectrum is not present
add a little visual description for chip channels in the chip selector
fix "play/repeat from beginning" not doing so from beginning at times (issue #2182)
Lynx VGM export sample support
Lynx Load LFSR macro fix
allow the user to change octave when the built-in file picker is open (issue #1895)
VIC-20: add option to disable filters
fix PZI import (it did not import most of the samples before)
fix moveSelected going out of bounds
fix several problems with AtomicSSG
work around some possible text overflow situations by implementing a scroll text (issue #1961)
fix incorrect commands on VGM export (issue #2226)
C64: fix global param again... (issue #2181)
fix file remaining open when loading .dmc or .brr
MSM6258: fix panning in VGM export (#2249)
fix sample loop crossfade overflow (thanks Eknous)
handle more errors in DirectX 9 backend
fix orders not scrolling when pattern changes due to cursor movement
fix sample drawing rounding in sample editor
fix backup size calculation
text wrap for sub-song notes
OPL: kind of fix drum muting (issue #1945)
fix song timer drift (issue #2189)
add a command line parameter for exporting text files
add a command line parameter for exporting ROM where supported
PCE: fix DAC data being offset in VGM export
correct cursor position on song stop (issue #2274)
drag-and-drop in assets to reorder them
fix user systems not loading when language is not set to English
SegaPCM: fix sample offset effect moving loop (issue #2306)
YMZ280B: fix sample offset effect moving loop (issue #2213)
fix possible bug notes in .mod import
fix paste overflow not changing order
fix panning in command stream export
add ability to copy by dragging selection
add ability to skip intro immediately with keyboard... somebody made one heck of a complaint despite a skip feature already existing
add a button in sample editor to preview selection
don't sort note keys in settings until Apply or OK are clicked (issue #2345)
add "set effect" option to randomize
this sets the effect to a fixed value
Amiga validation export improvements (now it uses VBlank interrupts and supports fast RAM)
load fallback fonts in pattern font (issue #2312)
this may use too much video memory so I have added an option to disable...
WaveSynth: add change detection (don't update wave if it is intact... issue #2298)
PCE: fix sample volume and linger in VGM export (issues #2319 and #2322)
ES5506: increase precision in Amiga pitch mode (fixes cal-cal.xm and issue #2120)
fix compilation when using CMake 4.0
scroll pattern view horizontally when moving the mouse cursor out of bounds during selection
optimize pattern view a bit
optimize order window as well
disable 32-bit float audio export in per-chip mode (issue #2389)
add an audio load chart
fix samples sometimes not triggering in Amiga
note input improvements during playback
add a "sweep" option to sample editor apply filter (you no longer have to type two frequencies when you just want to use one)
SM8521: fix chip output rate
add DC offset correction settings for per-channel osc view
ES5506: fix memory overflow
X1-010: fix envelope slides in low-latency mode
fix macro list jumping around in single macro editor layout
improve the progress bar in per-channel audio export (issue #2431)
OPNA/B: fix ADPCM-A/RSS muting with LLE core
OPZ: add FMS2/AMS2 macros
fix range chevron in arp/pitch macro being too large if horizontal zoom was set to a high enough value
DS: fix non-8/16/IMA sample formats
NES: fix envelope mode not being set when playing song (which would cause everything to be silent in specific circumstances)
new demo songs
translation updates
several documentation updates
note for Windows users:
there are two 64-bit versions: the normal one, and a "console" version.
the console version has the subsystem set to console so you can use Furnace for parsing files and/or playing in console mode (with the -console parameter). be noted that a command prompt will pop up when launching it through Explorer!
if you don't need to do that, just get the regular version.
User Manual:
https://github.com/tildearrow/furnace/blob/master/doc/README.md
quick start guide:
https://github.com/tildearrow/furnace/blob/master/doc/1-intro/quickstart.md
Chips Documentation:
https://github.com/tildearrow/furnace/blob/master/doc/7-systems/README.md
https://github.com/tildearrow/furnace/tree/master/doc/7-systems
FAQ:
https://github.com/tildearrow/furnace/blob/master/doc/1-intro/faq.md
download from free file storage