Releases: tildearrow/furnace
Furnace v0.6.8.1 - fixes
this version fixes some problems that were introduced in 0.6.8.
hopefully this is actually the final version in the 0.6 series - 0.7 is long overdue!
change log
- remove all April 1 bullcrap
- these "jokes" were programmed to occur only in 2025, but I am removing them to be sure since it annoyed some users
- I would like to apologize for not offering an option to disable these jokes (adding one would reveal the fact that there were jokes)
- actually fix compilation with CMake 4.0
- fix NDS DC drift when DC offset correction is disabled
- speed up .tfe loader
- fix pitch issues in YM2612 when using non-linear pitch
- fix 12-bit sample glitches in OPL4
Furnace v0.6.8 - the last
it's been a while since 0.6.7...
this is (hopefully) the final release in the 0.6 series. 0.7 development will begin very soon.
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
-
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.
- use
-
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.
Furnace v0.6.8pre2
this fixes a couple bugs, including a critical macOS crash on startup.
Furnace v0.6.8pre1 - new stuff
this is the first pre-release of the upcoming 0.6.8. give this one a try and report any issues you come across.
features coming in 0.6.8 include:
- SID3, OPL4 and Watara Supervision systems
- C64 4-bit PCM/digi (using volume control)
- OPZ improvements (per-op frequency control including arp/pitch macros)
- CSM on all OPN chips
- SNES anti-click
- 5E01 no sound fix
- POKEY SAP type R export (playable by Altirra and lzss-sap on hardware)
- 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)
- FM 30xx (hard reset envelope) now working on VGM export
- per-op fixed octave/block setting in OPN, OPL and ESFM (useful for SSG-EG)
- VGM export QSound ADPCM fix
- Virtual Boy VGM export fixes (now it works on real hardware)
- support for MSX2 .dmf (no, I am not going to support its weird AY manners. sorry!)
- FTM, TFM and XM import fixes
- note input improvements during playback
- ability to export ROM from command line (only on certain systems!)
- drag-and-drop in assets to reorder them
- translation updates
- many bug fixes
a more complete change log will be available in the 0.6.8 release notes.
I will release 0.6.8 in a couple days if no issues pop up.
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.
sorry, no AppImage version...
a build failure prevents me from making the AppImage release. for now, use the .tar.
thanks
- freq-mod: testing, assistance and overall help
- Electric Keet: documentation
- AshKirby: cheering
- cam900: OPL4
- akumanatt: OPN/OPL/ESFM fixed block
- asiekierka: WonderSwan core and SAP-R export
- yohannd1, alederer, daliacoss, LTVA and Eknous: miscellaneous contributions such as asset list drag-and-drop, OPN CSM, SID3 and others
Furnace v0.6.7 - DPCM loop bug fix
this release fixes a major bug introduced in 0.6.6. NES DPCM sample loop wasn't working properly.
it also fixes 60xy in FM chips not working if x is between 1 to 4 (set op mask for one op).
Furnace v0.6.6 - S3M/XM/IT import
to-do: write fancy summary explaining how this has import, a couple other features and bug fixes
change log
-
S3M import - no longer beta!
- many crashes and bugs fixed
-
XM and IT import!
-
instrument editor undo!
-
add "absorb instrument" action
- it changes the current instrument to the one at pattern cursor
-
begin work on the ROM export framework
- TIunA and ZSM export have been ported to it
- this was done since TIunA export is a lengthy process due to multiple optimization passes
- now you can see it in action, complete with progress bars
-
sample bank import. the following formats are supported:
- PMD YM2608 ADPCM-B sample bank (.ppc)
- PDR 4-bit AY-3-8910 sample bank (.pps)
- FMP YM2608 ADPCM-B sample bank (.pvi)
- MDX OKI ADPCM sample bank (.pdx)
- FMP 8-bit PCM sample bank (.pzi)
- PMD 8-bit PCM sample bank (.p86)
- PMD OKI ADPCM sample bank (.p)
- thanks to freq-mod and LTVA
-
AY improvements
- add raw period and envelope period macros
- timer effects (PWM!)
- fix generation of garbage commands during VGM export
-
FDS: add automatic modulation speed effect
- I don't like how it works though
-
add a couple new effects
- panning slides:
83x0
slides left and830x
slides right - panbrello (wave panning left-right):
84xy
where x is speed and y is depth - delayed mute:
DCxx
- volume portamento:
D3xx
andD4xx
(fast)
- panning slides:
-
add DAC interrupt simulation to YM2612
- allows you to recreate a sample playback quirk present in games like Sonic 2 and 3
-
add progress bar during audio export
-
add options to save all assets
-
fix crash when switching OPL drums mode using 18xx
-
fix crash when playing samples in banked MSM6295
-
fix possible hang when loading instrument with invalid macro or op macro data
-
Dave: fix hang when DAC rate is too high
-
lots of documentation updates
- including a quick start guide!
-
better Windows icon
- now it shows up on Windows XP
-
the Linux release does not use system libintl anymore
- it is too picky in regards to what is localized and what is not
- too many issues led me to make this decision and switch to the built-in implementation
-
fix another rounding error in ADSR/LFO macros when bottom is higher than top
-
OPL: fix YMF262-LLE skipping some register writes
-
new macro colors for certain types of macro
-
do not play the intro when using software renderer
-
ES5506: fix a bug in pitch slides
-
C64 improvements
- add filter toggle macro
-
fix rendering not going well when using DirectX 9 backend on certain cards that do not support non-square textures
-
fix fonts sometimes not loading
-
remove waveform from OPM ins editor
-
hide two Defle compatibility options when disabled
- both are ridiculous... one is in Game Boy and the other in C64
-
fix
##
hiding channel, instrument and sample names -
fix files/directories named
##
becoming invisible in built-in file picker -
improve status bar volume mapping
-
add an option to scale macro editor zoom with macro length
-
two more options for SL position in FM editor
-
fix non-ASCII characters in user systems erasing them
-
add "show in pattern/per-chan osc" options for per-channel export
-
add a parameter which disables start-up error message box (
-quiet
)- does not have effect on Linux as errors do not show message boxes
-
Game Boy: enable VIN mixing
- useful for sound expansions
- explanation: the Game Boy has a pin in the cartridge port which allows a cartridge to provide expansion audio, similar to the VRC6, VRC7 or FDS in Famicom.
- however, whether to mix in the cartridge expansion audio can be controlled by a register.
- in previous versions, Furnace set this register to off. this prevented expansion audio from working.
- now it is set to on. this means that if you develop a player with expansion audio support, it will work.
-
add new VERA revision
-
fix Y8950 ADPCM memory addressing
- max sample size is 256K
-
NES DPCM loop position
-
SN: fix arp macros in easy period mapping
-
include song comments in VGM export
-
WonderSwan: fix missing panning macros
-
fix QSound ADPCM in VGM export
-
add operator mask effect (60xx) for FM chips which support it (OPN and OPM)
-
SNES: add sample interpolation option
-
translation updates
erratum
effect 601x-604x to set operator mask of each operator is not implemented. sorry!
use 600x for now.
thanks
to be done... I will be back
Furnace v0.6.5 - the TIA update!
a new era has begun.
changes
- software tuned TIA driver: TIunA!
- similar to TIATune
- uses rapid pitch changing to achieve more precise tuning
- includes export option
- fix locale installation path on Linux (no more patch)
- S3M import (beta)
- there are a couple gotchas
- import for XM and IT modules is coming soon
- add new revision of VERA chip with slightly different volume table
- SNES improvements
- add option to the sample editor not to use BRR filter, which removes glitches when using sample offset/position effects
- ES5506 changes
- mostly for S3M import and upcoming XM/IT import
- Amiga volume and pitch options
- added more vibrato shapes
- see the manual for more information (effect E3xx)
- translation updates
note for macOS users
hopefully this doesn't crash anymore.
thanks
- Abstract
- Natt Akuma
Furnace v0.6.4
important update for those using macOS and those without video cards.
changes
-
default to OpenGL on macOS
- the Metal backend has rendered Furnace unusable for many users, therefore I have decided to set the OpenGL backend as default.
- if you still cannot launch Furnace, try a configuration reset by removing the config files in
~/Library/Application Support/Furnace
.
-
fix crash when using software renderer
- previously, Furnace would crash during the intro...
-
Furnace Localization!
- that's right - Furnace translated to many languages!
- currently supporting (in order of completion) Spanish, Swedish, Polish, Russian, Portuguese (Brazil), Slovak and Indonesian.
- work in progress languages include Korean, Thai, Dutch, and Armenian. these are hidden but accessible if either your computer is set to one of these languages, or you edit the config manually.
- if you want to translate Furnace to your language, feel free to! check out the
po
directory in the repository for more.
-
more Furnace for Legacy Systems
- new DirectX 9 render backend
- designed to work with older cards and drivers that don't support OpenGL 1.1 (or support it poorly)
- disable SSE on 32-bit Windows builds
- so you can run this on Pentium
- new DirectX 9 render backend
-
improve audio export options
- now you can disable channels during per-channel export
- also change the sample rate and more
-
backup management
- see how much disk space is being used by backups
- purge old backups
- change backup settings such as interval and number of copies
- go to Settings > Backup to see it
-
improve cursor focus when clicking on the pattern
- now it doesn't jump around anymore
-
fix crash when trying to add or clone a chip after the 32 chip limit has been reached
-
DS: fix inability to go back to sample mode in PSG channels
-
add automatic noise freq (AutoPWM) effect for AY8930
-
add action to move selected content in pattern editor
-
OPLL: add effect to change patch (10xx)
-
add settings to configure render backend
-
add settings to import/export config and do a factory reset
-
add setting to automatically fill in the name field of the file picker when saving
- only works on the built-in file picker. sorry!
-
add Japanese and Korean versions of IBM Plex Sans
-
expose all audio formats supported by libsndfile
-
fix rounding error in ADSR and LFO macros when bottom is higher than top
-
fix left and right outputs being swapped when using YM2608-LLE
-
fix old sample offset compatibility flag not being there at all
-
fall back to software rendering when GL pixel format is incompatible
-
more aggressive power saving
-
fix a conflict in the colors of SID2 and C64 instruments
-
fix sudden window scroll if you have the instrument/wave/sample lists untabbed
-
fix on/off mute in VIC-20
-
fix fade-in happening when enabling startup fade-in
-
fix Wayland icon
- thanks ColinKinloch
-
remove basic output channels selector
- now you can use your 16-output audio interface with Furnace
click here to see the full changelog (warning: messy!)
- .- ...
- aaaaaaaaa
- AAAAAAAAAAAAAAAAA
- actually consider locale script requirements
- add a string to force glyph ranges
- add characters
- add check for setlocale in C library
- Add files via upload
- add IBM Plex Sans Japanese/Korean
- add Indonesian language
- Add NL and send a pull request
- add option to build with console subsystem on Wind
- add translation credits
- again
- again...
- allow installation of locale into system
- Almost There
- and more
- audio export: fix channel count in per-chan export
- audio export: fix sample rate change
- audio export: more stuff
- auto-detect USE_MOMO
- AY8930: finally implement auto noise freq
- AY8930: fix typo in noise freq effect
- backporting, part 1
- backporting pl i10n, episode 1
- backporting Russian, part 2
- backup management, part 1
- backup management, part 2
- backup management, part 3
- blind coding moment
- BULSLHTI!
- cherry-pick ImGui code
- CI: build locale branch
- CI: enable for locale branch
- CI: re-enable
- close parenthesis
- comment
- debug
- decapitalize a mistake
- Demo Song: Operation Please Leave, Leave
- Demo Song: Wait for me
- dev211
- DirectX 9 backend, part 1
- DirectX 9 backend, part 10
- DirectX 9 backend, part 2
- DirectX 9 backend, part 3
- DirectX 9 backend, part 4
- DirectX 9 backend, part 5
- DirectX 9 backend, part 6
- DirectX 9 backend, part 7
- DirectX 9 backend, part 8
- DirectX backend, part 9
- disable SSE on 32-bit Windows builds
- document it
- do I really have to do this
- don't display locale fail error when using Momo
- don't localize empty strings in about screen
- don't use CPack
- driver info
- engine/sysDef/ImGui
- ES5506: fix loop end
- es.po: remove fuzzy
- expose all audio formats supported by sndfile
- fall back to software if no matching GL pixel form
- finally, finally fix VIA
- find exe path
- fix
- fix
- fix
- FIX
- fix about screen
- fix build
- fix build
- Fix build on OpenBSD
- fix build without PortAudio or JACK
- fix checks
- fix crash when adding/cloning more than 32 chips
- fix GNU gettext locale finding
- Fixing some errors for Swedish
- fix left/right out being swapped in YM2608-LLE
- fix locale loading
- fix mishap in subSongs
- fix mkdir
- fix modal fade-in
- fix ngettext issue
- fix path
- fix pl.po
- fix possible crash when texture size is 0
- fix sv.po
- fix syntax errors
- fix the fix
- Fix wayland icon with SDL_VIDEO_WAYLAND_WMCLASS
- freak it
- FU
- GB percussion and Lead
- guess work
- GUI: add action to move selected content
- GUI: add missing sample offset compat flag
- GUI: add render preInit settings
- GUI: auto-fill on save
- GUI: default to OpenGL on macOS
- GUI: drop non-pro audio outputs setting
- GUI: fix empty tree node
- GUI: fix empty tree node
- GUI: fix fade in when enabling fade in
- GUI: fix recent file regression
- GUI: fix SID2 and C64 colors conflicting
- GUI: improve cursor focus
- GUI: insEdit refactor, part 1
- GUI: insEdit refactor, part 2
- GUI: insEdit refactor, part 3
- GUI: more aggressive power saving
- GUI: possibly make it work on sys file picker
- GUI: prepare backup management
- GUI: prepare to add auto-fill on save
- GUI: separate wantScrollList
- handle device death
- handle other texture formats
- handle texture death
- here's a translation guide
- hide incomplete languages
- how did it win
- huh?????????????
- i don't understand.
- I HATE GLOBAL CONFIGS I HATE GLOBAL CONFIGS I HATE
- i may have done
- imgui_sw: do not allow out of bounds UV
- imgui_sw: possible optimization?
- imgui_sw: possible optimization?
- import/export config and factory reset
- improve audio export options - UNTESTED/UNFINISHED
- improve the menu
- incomplete code, because yes
- I SEE........
- i shall make stack machine
- it appears order matters
- it appears this sucks
- it's working
- Japanese language?
- Keygen Bass
- let me release already!
- let s try this
- let's try this
- libintl for systems without libintl
- localize file dialog
- localize window names
- mac
- macroInt: fix rounding error when bottom>top
- magia
- magic.
- magic. (pl.po)
- magic. (pt_BR)
- make a macOS debug build
- make credits translatable
- Marvel sv. Capcom
- maybe you have to specify everything in one comman
- Merge branch 'dx9'
- Merge branch 'dx9' of github.com:tildearrow/furnace into dx9
- Merge branch 'dx9' of github.com:tildearrow/furnace into dx9
- Merge branch 'locale'
- Merge branch 'locale' of github.com:tildearrow/furnace into locale
- Merge branch 'master' into configSettings
- Merge branch 'master' into dx9
- Merge branch 'master' into locale
- Merge branch 'master' of github.com:tildearrow/furnace
- Momo: Android system locale
- Momo: disable formatarg on MSVC
- Momo: fix pt_BR
- Momo: optimize
- Momo: optimize empty strings? (wait)
- Momo: optimize initial search
- Momo: stack machine, part 1
- Momo: stack machine, part 2
- Momo: stack machine, part 3
- Momo: stack machine, part 4
- Momo: string hashing
- more
- more es.po updates
- more Spanish translation
- More wavetables
- NDS: fix switching back to PSG mode
- new demo song
- new demo song
- new.demo.song
- no way
- oh my freaking
- oh you demand an ABSOLUTE PATH...
- only sign Contents
- OPLL: add effect to change patch
- OPM instruments
- OPZ Organ
- pl translation: some progress
- plural test
- polish transl backport, episode 3
- polish transl episode 2
- polish transl episode 3
- POP THE TREE
- possibly fix resize...
- possibly fix text issues in about screen
- prepare Armenian language
- prepare for config import/export/reset
- prepare for DirectX 9 backend...
- prepare for translations
- prepa...
Furnace v0.6.3
check out the changelog.
changes
-
say hello to my new commitment: Furnace for Legacy Systems!
- as of now Windows XP is a first-class citizen
- better defaults for the Windows XP version of Furnace
- OpenGL 2.0 and 1.1 backends for those with old graphics cards
- software backend if you don't have graphics at all
- yes, it's faster than SDL_Renderer software backend
- safe mode now uses this backend
- added setting to disable loading fallback fonts to save memory
- added setting to configure font oversample, again to save memory
-
macOS improvements
- fix macOS .dmg not being mountable in OS X (10.11 and earlier)
- Metal render backend
- OpenGL render backend now available as well
- fix macOS version not running at all on macOS 10.12 and earlier
- thanks to macports-legacy-support
- finally, FINALLY fix "damaged" issue
- you still have to right click and select Open though
- in recent versions of macOS you may still have to go to System Preferences > Privacy and allow the application to be opened...
-
new Bifurcator system
- featuring an unique sound generation method. check it out!
-
SID2 fantasy chip
-
user presets category!
- create your own system presets so you can select them in the New Song dialog
-
TFM Music Maker import
- thanks techmetx11
-
the 9xxx (sample offset) effect has changed
- it's now 90xx for the first byte, 91xx for the second byte (equivalent to old 90xx) and 92xx for the third byte (9x00)
-
implement sample offset effect for some chips which didn't support it before
- AY-3-8910
- AY8930
- Dave
- Lynx
- MMC5
- NES
- PC Engine
- QSound
- SegaPCM
- VERA
- VRC6
- WonderSwan
-
add emu2413 core
- 20% the load of Nuked-OPLL for those with slower CPUs
-
add YM2608-LLE core
- new core by nukeykt
- very, VERY slow but accurate. not useful for playback.
-
add AtomicSSG core
- SSG core extracted from YM2608-LLE
-
add core quality settings for some emulation cores
- allows you to reduce CPU usage, or increase quality
-
add option to disable VSync
- including a frame limiter
-
NES: retrigger note if sweep is enabled
-
faster sample format conversion
-
add option to repeat note/value input when key is held
-
add ability to change coarse edit step
-
store keyboard note input binds when exporting keybinds
-
built-in fonts now better compressed
-
update Unifont to unifont_jp 15.1.05
-
graphics vendor/device/API version now displayed in settings
-
compress intro tune a bit
-
add command line options to disable keyboard input and status output
-
add "pipe" audio output mode
- outputs 16-bit little-endian audio to stdout
- useful for chaining with other programs
-
add MIME types on Linux/Unix
- thanks Essem
-
PowerNoise fixes
- fix volume column ignored on lack of volume macro
- fix muting (for real this time)
- remove PAL option
-
OPNA and OPNB: fix ADPCM-A/RSS volume not restoring when playing back from the middle of the song
-
fix crash when loading IMA ADPCM sample
-
fix crash when configuring GBA MinMod chip in Initial system
-
fix crash when changing interface colors if per-channel osc is multi-threaded
-
fix Nintendo DS noise LFSR
-
fix Nintendo DS PSG output
-
fix background color not changing at all
-
fix macro scale still being limited to 128
-
fix FreeType font advance when hinting is off
-
fix duplicate entries in wave size selector
-
fix missing TED instrument color setting
-
fix FDxx/FExx effect colors
-
AY: fix 1.99MHz clock rate not being there (used by PC-88 preset)
-
fix make patterns unique and sort orders buttons in pattern manager not working
-
fix some BRR samples not stopping
-
fix keybind reset not affecting note input binds
-
OPL: fix OPL3-L rate when using YMF262-LLE
-
fix issue with "apply filter" option in sample editor
- make sure from/to cutoff values are within range
- use rate for reference instead of compat rate
-
documentation updates
-
new demo songs
macOS users
the "damaged" issue is finally fixed - hopefully. right click Furnace and select Open to open Furnace.
try out the new Metal render backend. go to Settings.
thanks
Metal testing team:
- Diggo
- konard
- NaxeCode
- scratchminer
macOS "damaged" app investigation:
- emberdex
- nadiaholmquist
other:
- LTVA1 for SID2
- techmetx11 for TFM import
Furnace v0.6.2 - Dave, DS and GBA
this release brings in a couple things....
notice for Windows users
please re-download! a major crash has been found when enabling serious mode, but I have fixed it now. I hope.
apologies for this issue!
changes
- added Dave system
- a chip found in the Enterprise 128 computer. it is similar to POKEY, but better.
- added Nintendo DS system
- 16 channels of samples. the last 8 can be placed in a PSG mode.
- added Game Boy Advance system
- never though I would see GBA in Furnace considering it's just sample playback...
- comes with two drivers: DMA (two channels) and MinMod by Natt Akuma (up to 16 channels)
- FamiTracker import!
- now you can load .ftm, .0cc, .dnm and .eft files into Furnace
- not all modules work though
- playback may not be perfect since it is import
- special thanks to LTVA for working on most of the import code
- basic mode has been removed
- add ability to clone chips
- new Memory Composition window
- this is the successor to the Statistics window.
- it displays detailed information about chip memory usage.
- optimize saving
- add two effects for delayed note/macro release
- FCxx: note release
- E7xx: macro release
- add effects to change virtual tempo
- FDxx: set numerator
- FExx: set denominator
- add effects for quick legato
- E8xy: quick legato up
- E9xy: quick legato down
- E6xy: quick legato FamiTracker-style (in where it is called "delayed transpose")
- re-organize window menu
- re-organize system presets in New Song
- AY: fix "clock divider" option being inconsistent
- add 5E01 chip
- for .eft compatibility
- this chip is like 2A03, but has 32 noise frequencies, a different duty cycle and the triangle channel has 4 possible waveforms
- Namco 163: fix major bug in where 10xx wouldn't work at all
- make FM preview follow op mute
- YM2612: add YMF276-LLE core
- POKEY: fix 10xx glitching up frequency
- YM2612: fix CSM VGM export
- SCC: fix volume when playing after first order
- add ESFMu fast core
- slight modification of ESFMu which runs faster for lower-end machines
- OPLL: enable "apply fixed frequency on all drums" by default
- Lynx changes:
- add load LFSR macro
- add option for "tuned" frequencies
- C64: prevent cutoff macro race
- OPL: fix drum muting
- fix possible config loss when using specific graphics drivers
- fix possible crash when loading invalid song
- add option for playback status in menu bar
- C219: fix surround in chan osc
- fix possible crash when changing chip beyond 128 channel limit
- fix panning indicator when using LFO in PC Engine
- fix Windows release readme (so it looks correct on Windows <10)
- add an action to quit
- search bar in effect list
- X1-010: fix switching back to wave mode
- clarify errors when saving as .dmp
- fix .dmp saving for OPM and NES instruments
- couple new demo songs
- add a better command stream player
- development purposes only!
- new experimental GLSL oscilloscope renderer
- testing reveals it is mostly useless as it is too slow...
click here to see the full changelog (warning: messy!)
- ...- 17xx should be 10xx
- 5E01: fix 12xx
- 5E01: sysConf
- 6 more demo tunes for Commander X16
- a better command stream debugger
- add 5E01
- Add brackets to quit handler
- add Chimera Linux package link
- Add Ctrl+Q to quit
- add delayed release effects
- add effects for quick legato
- add effects to change virtual tempo
- Add files via upload
- Add files via upload (#1782)
- Add getPaired function for PCE LFO
- Add global volume command
- Add NDS sound support TODO: - IMA ADPCM - Instrument color, icon
- Add notice about force-pushing to PR template
- afsdfadsfasd
- align to 4
- allocate chip ID for NDS
- allocate Game Boy Advance chip IDs
- and now for .dmp loading
- and now for .dmp saving
- another fix
- Another PowerNoise Song
- asdfasdfasdf
- ASDGF;LKJ
- AY: fix clockSel on non-YM2149
- AY: fix half clock divider
- AY: reminder to fix wave macro
- blalbaablabl
- C219: bank hints
- C219: fix surround chan osc
- can we have recursion
- capacity/used
- censor
- Changed samples names
- command stream ending fix?
- command stream player now loops
- CRLF on Windows release readme
- Dave demo song
- Dave: fix DAC
- Dave: fix DAC when rate is higher than out rate
- Dave: fix getPan
- Dave: fix max volume
- Default exit shortcut to zero
- deferred config saving
- define these two functions
- Delete demos/x16/Cot.fur
- Delete demos/x16/thecloud.fur
- Delete demos/x16/Xenon.fur
- Delete demos/x16/ZARDOZ.fur
- description
- dev193 - AY: fix wave macro
- dev194 - OPLL: enable fixedAll by default
- dev195 - C64: prevent cutoff macro race
- .dmf demo song exodus
- DO NOT USE BECAUSE THIS WILL FAIL
- Don't initialize sigaction
- do use because this will succeed
- downgrade .dmf to export status
- effect searching
- enl_track1.ftm now loads
- ESFM: add "fast" mode
- Fake SNES Bass
- Final ARM ASM fix
- fine
- first C219 demo
- Fix 9xxx effect
- fix build...
- fix build...
- fix chanShowChanOsc-related bugs
- fix compilation
- fix crash when changing chip
- fix .dmp saving for OPM and NES
- fix .dnm and .eft loading
- Fix frequency effect
- fix initial panning
- Fix Mac build
- Fix masking
- Fix MSVC build
- fix Namco 163 waves in .ftm import
- Fix phase reset macro
- Fix placeholder for ADPCM
- fix possible crash when loading invalid song
- fix status view
- fix virtual tempo in .ftm import
- fool-proof getBool()
- force POKEY freq recalc when changing wave with an effect
- GBA: memory safety
- GBA: wahahaha
- Grape Jelly
- GUI: add Dave color entry in settings
- GUI: Add menu option to open examples directory
- GUI: add option for playback status in menu bar
- GUI: add option to set amount of cursor follows wh
- GUI: better presets organization
- GUI: change .dmf color to import
- GUI: clarify .dmp saving error
- GUI: clarify "duplicate end" order
- GUI: code style
- GUI: Count -> Length
- GUI: Dave, NDS and GBA letter icons
- GUI: disable debug message
- GUI: fix
- GUI: fix "I'm feeling lucky" button
- GUI: fix system detection
- GUI: forgot about sysConf
- GUI: get rid of bitOffset
- GUI: hover box
- GUI: hovering over the triangle
- GUI: how about this
- GUI: make FM preview follow op mute
- GUI: make memory usage unit setting effective
- GUI: more menu reordering
- GUI: new osc renderer, part 1
- GUI: new osc renderer, part 10
- GUI: new osc renderer, part 11
- GUI: new osc renderer, part 11
- GUI: new osc renderer, part 12
- GUI: new osc renderer, part 13
- GUI: new osc renderer, part 14
- GUI: new osc renderer, part 15 - do not use
- GUI: new osc renderer, part 16
- GUI: new osc renderer, part 17
- GUI: new osc renderer, part 18
- GUI: new osc renderer, part 19
- GUI: new osc renderer, part 21
- GUI: new osc renderer, part 22
- GUI: new osc renderer, part 23
- GUI: new osc renderer, part 24
- GUI: new osc renderer, part 25
- GUI: new osc renderer, part 26
- GUI: new osc renderer, part 27
- GUI: new osc renderer, part 28
- GUI: new osc renderer, part 29
- GUI: new osc renderer, part 2 - warning
- GUI: new osc renderer, part 3
- GUI: new osc renderer, part 30
- GUI: new osc renderer, part 31
- GUI: new osc renderer, part 32
- GUI: new osc renderer, part 33
- GUI: new osc renderer, part 34
- GUI: new osc renderer, part 4
- GUI: new osc renderer, part 5
- GUI: new osc renderer, part 6
- GUI: new osc renderer, part 7
- GUI: new osc renderer, part 8
- GUI: new osc renderer, part 9
- GUI: prepare for user presets
- GUI: prepare to improve pattern manager
- GUI: remove basic mode
- GUI: remove command palette entry in window
- GUI: rename broken DAC mode
- GUI: rename NDS ins type
- GUI: span avail width
- GUI: user preset saving and prepare edit window
- GUI: yet another fix
- Hi-Hat
- I did it
- I give you less clobbers now. Just build already!
- IMA DO MY ADPCM
- implement chip cloning/duplication
- implement YMF276-LLE core
- initialize
- is this cat and mouse now
- K053260: fix chan osc
- low quality code detected
- Lynx: Add a chip config for constant tone frequency
- Lynx: Add Load LFSR macro PowerNoise had it
- me an idiot
- memory composition, part 1
- memory composition, part 2
- memory composition, part 3
- memory composition, part 4
- memory composition, part 5
- memory composition, part 6
- Merge branch 'wintrace2'
- Merge pull request #1160 from YohananDiamond/command-palette
- Merge pull request #1447 from tildearrow/nmk112
- Merge pull request #1737 from akumanatt/esfm
- Merge pull request #1803 from akumanatt/minmod
- MinMod: add phase reset macro
- MinMod: fix spikes
- MinMod: use loop end instead of sample end
- more changes
- more .ftm import cherry-picking
- more optimize?
- more preparation
- more work on the command stream debugger
- mov...