2023-07-06 21:42:10 +00:00
# settings
2024-07-26 03:48:58 +00:00
the Settings window allows you to change Furnace settings.
2024-04-07 21:47:42 +00:00
2024-07-26 18:12:30 +00:00
settings are saved when clicking the **OK** or **Apply** buttons at the bottom of the window, and when closing the program. several backups are kept in the Furnace settings directory.
2023-07-06 21:42:10 +00:00
2023-07-30 18:07:09 +00:00
## General
2023-07-06 21:42:10 +00:00
2023-07-30 18:07:09 +00:00
### Program
2024-07-26 03:48:58 +00:00
- **Language**: select the language used for the interface. some languages are incomplete, and are listed with their approximate completion percentage.
2024-04-07 21:47:42 +00:00
- **Render backend**: changing this may help with performace or compatibility issues. the available render backends are:
2024-07-26 03:48:58 +00:00
- SDL Renderer: this was the only available render backend prior to the addition of dedicated OpenGL/DirectX backends in 0.6. default on macOS.
- it is slower than the other backends.
2024-07-26 18:12:30 +00:00
- DirectX 11: works with the majority of graphics chips/cards and is optimized specifically for Windows.
2024-07-26 03:48:58 +00:00
- DirectX 9: use if your hardware is incompatible with DirectX 11.
2024-04-07 21:47:42 +00:00
- OpenGL 3.0: works with the majority of graphics chips/cards (from 2010 onwards). default on Linux.
- OpenGL 2.0: use if you have a card without OpenGL 3.0 support.
- OpenGL 1.1: use if your card doesn't even support OpenGL 2.0.
2024-04-14 15:15:23 +00:00
- Software: this is a last resort backend which renders the interface in software. very slow!
2024-07-26 03:48:58 +00:00
- **Advanced render backend settings**: only applicable with some render backends.
- **Render driver**: this setting only appears when using the SDL Renderer backend. it allows you to select an SDL render driver.
- OpenGL settings: these only appear when using an OpenGL backend, and should only be adjusted if the display is incorrect.
2024-04-07 21:47:42 +00:00
- **VSync**: synchronizes rendering to VBlank and eliminates tearing.
- **Frame rate limit**: allows you to set a frame rate limit (in frames per second).
- only has effect when VSync is off or not available (e.g. software rendering or force-disabled on driver settings).
2024-07-26 03:48:58 +00:00
- **Display render time**: displays frame rate and frame render time at the right side of the menu bar.
2023-08-26 01:41:50 +00:00
- **Late render clear**: this option is only useful when using old versions of Mesa drivers. it force-waits for VBlank by clearing after present, reducing latency.
2023-08-08 01:04:01 +00:00
- **Power-saving mode**: saves power by lowering the frame rate to 2fps when idle.
2023-07-30 18:07:09 +00:00
- may cause issues under Mesa drivers!
2023-08-08 01:04:01 +00:00
- **Disable threaded input (restart after changing!)**: processes key presses for note preview on a separate thread (on supported platforms), which reduces latency.
2023-08-26 01:41:50 +00:00
- **Enable event delay**: may cause issues with high-polling-rate mice when previewing notes.
2023-09-09 01:16:43 +00:00
- **Per-channel oscilloscope threads**: runs the per-channel oscilloscope in separate threads for a performance boost when there are lots of channels.
2024-04-07 21:47:42 +00:00
- **Oscilloscope rendering engine**: allows you to select between the following rendering engines for oscilloscope views (master and per-channel):
- **ImGui line plot**: the default engine. uses Dear ImGui line plotting functions for rendering.
- **GLSL**: uses OpenGL shaders for rendering. higher quality, but very GPU-intensive! only available in OpenGL 3.0 backend.
2023-07-30 18:07:09 +00:00
### File
2023-08-08 01:04:01 +00:00
- **Use system file picker**: uses native OS file dialog instead of Furnace's.
2023-08-26 01:41:50 +00:00
- **Number of recent files**: number of files that will be remembered in the _open recent..._ menu.
- **Compress when saving**: uses zlib to compress saved songs.
- **Save unused patterns**: stores unused patterns in a saved song.
- **Use new pattern format when saving**: stores patterns in the new, optimized and smaller format. only disable if you need to work with older versions of Furnace.
- **Don't apply compatibility flags when loading .dmf**: does exactly what the option says. your .dmf songs may not play correctly after enabled.
2023-08-19 22:55:33 +00:00
- **Play after opening song:**
- No
- Only if already playing
- Yes
2023-07-30 18:07:09 +00:00
- **Audio export loop/fade out time:**
- **Set to these values on start-up:**
- **Loops**: number of additional times to play through `0Bxx` song loop.
- **Fade out (seconds)**: length of fade out after final loop.
- **Remember last values**
2023-09-17 04:45:00 +00:00
- **Store instrument name in .fui**: when enabled, saving an instrument will store its name. this may increase file size.
- **Load instrument name from .fui**: when enabled, loading an instrument will use the stored name (if present). otherwise, it will use the file name.
2024-07-26 18:12:30 +00:00
- **Auto-fill file name when saving**: pre-fill the file name field when saving or exporting.
- when saving a module, the existing file name will be auto-filled.
- when saving an instrument or sample, its name will be auto-filled.
2023-07-30 18:07:09 +00:00
2023-09-17 04:45:00 +00:00
### New Song
2023-07-06 21:42:10 +00:00
- **Initial system**: the system of chips loaded on starting Furnace.
2023-08-08 01:04:01 +00:00
- **Current system**: sets current chips as default.
- **Randomize**: sets default to a random system.
2023-07-06 21:42:10 +00:00
- this will not choose a random system at each start.
2023-08-08 01:04:01 +00:00
- **Reset to defaults**: sets default to "Sega Genesis/Mega Drive".
2023-07-06 21:42:10 +00:00
- **Name**: name for the default system. may be set to any text.
2023-08-19 22:55:33 +00:00
- **Configure**: same as in the [chip manager ](../8-advanced/chip-manager.md ) and [mixer ](../8-advanced/mixer.md ).
2023-07-30 18:07:09 +00:00
- **When creating new song**:
- **Display system preset selector**
- **Start with initial system**
2023-10-30 22:51:41 +00:00
- **Default author name**
2023-07-30 18:07:09 +00:00
### Start-up
2023-07-06 21:42:10 +00:00
- **Play intro on start-up:**
- **No**: skips intro entirely.
- **Short**: shows silent title screen briefly.
- **Full (short when loading song)**: shows animated musical intro unless started with a song (command line, double-clicking a .fur file, etc.)
- **Full (always)**: always shows animated musical intro.
2023-07-30 18:07:09 +00:00
- **Disable fade-in during start-up**
### Behavior
2023-07-06 21:42:10 +00:00
2023-09-09 01:16:43 +00:00
- **New instruments are blank**: when enabled, adding FM instruments will make them blank (rather than loading the default one).
2023-07-06 21:42:10 +00:00
2024-07-26 03:48:58 +00:00
### Configuration
- **Import**: select an exported `.ini` config file to overwrite current settings.
- **Export**: select an `.ini` file to save current settings.
2024-07-26 18:12:30 +00:00
- **Factory Reset**: resets all settings to default and purges settings backups.
2024-07-26 03:48:58 +00:00
2024-08-26 00:29:02 +00:00
### Import
- **Use OPL3 instead of OPL2 for S3M import**: changes which system is used for the import of S3M files that contain FM channels.
2023-07-30 18:07:09 +00:00
## Audio
### Output
2023-07-06 21:42:10 +00:00
2023-09-01 21:43:08 +00:00
- **Backend**: selects a different backend for audio output.
- SDL: the default one.
- JACK: the JACK Audio Connection Kit (low-latency audio server). only appears on Linux, or MacOS compiled with JACK support.
- PortAudio: this may or may not perform better than the SDL backend.
- **Driver**: select a different audio driver if you're having problems with the default one.
- only appears when Backend is SDL.
2023-07-06 21:42:10 +00:00
- **Device**: audio device for playback.
2023-09-01 21:43:08 +00:00
- if using PortAudio backend, devices will be prefixed with the audio API that PortAudio is going to use:
- Windows WASAPI: a modern audio API available on Windows Vista and later, featuring an (optional) Exclusive Mode. be noted that your buffer size setting may be ignored.
- Windows WDM-KS: low-latency, direct to hardware output mechanism. may not work all the time and prevents your audio device from being used for anything else!
- Windows DirectSound: this is the worst choice. best to move on.
- MME: an old audio API. doesn't have Exclusive Mode.
- Core Audio: the only choice in macOS.
- ALSA: low-level audio output on Linux. may prevent other applications from using your audio device.
- **Sample rate**: audio output rate.
- a lower rate decreases quality and isn't really beneficial.
- if using PortAudio backend, be careful about this value.
2024-07-26 03:48:58 +00:00
- **Outputs**: number of audio outputs created, up to 16. default is 2 (stereo).
2023-07-06 21:42:10 +00:00
- **Buffer size**: size of buffer in both samples and milliseconds.
2023-08-26 01:41:50 +00:00
- setting this to a low value may cause stuttering/glitches in playback (known as "underruns" or "xruns").
- setting this to a high value increases latency.
2023-09-01 21:43:08 +00:00
- **Exclusive mode**: enables Exclusive Mode, which may offer latency improvements.
- only available on WASAPI devices in the PortAudio backend!
2023-10-30 22:51:41 +00:00
- **Low-latency mode**: reduces latency by running the engine faster than the tick rate. useful for live playback/jam mode.
2023-08-26 01:41:50 +00:00
- only enable if your buffer size is small (10ms or less).
- **Force mono audio**: use if you're unable to hear stereo audio (e.g. single speaker or hearing loss in one ear).
2023-07-06 22:45:43 +00:00
- **want:** displays requested audio configuration.
- **got:** displays actual audio configuration returned by audio backend.
2023-07-30 18:07:09 +00:00
### Mixing
2023-08-26 01:41:50 +00:00
- **Quality**: selects quality of resampling. low quality reduces CPU load by a small amount.
2023-08-08 01:04:01 +00:00
- **Software clipping**: clips output to nominal range (-1.0 to 1.0) before passing it to the audio device.
2023-07-30 18:07:09 +00:00
- this avoids activating Windows' built-in limiter.
2023-09-01 21:43:08 +00:00
- this option shall be enabled when using PortAudio backend with a DirectSound device.
2023-10-30 22:51:41 +00:00
- **DC offset correction**: apply a filter to remove DC bias, where the output is overall above or below zero. default is on.
2023-07-30 18:07:09 +00:00
### Metronome
2023-09-12 04:04:54 +00:00
- **Volume**: sets volume of metronome.
### Sample preview
- **Volume**: sets volume of sample preview.
2023-07-30 18:07:09 +00:00
## MIDI
### MIDI input
- **MIDI input**: input device.
2024-07-26 03:48:58 +00:00
- **Rescan MIDI devices**: repopulates list with all currently connected MIDI devices. useful if a device is connected while Furnace is running.
2023-08-26 01:41:50 +00:00
- **Note input**: enables note input. disable if you intend to use this device only for binding actions.
- **Velocity input**: enables velocity input when entering notes in the pattern.
- **Map MIDI channels to direct channels**: when enabled, notes from MIDI channels will be mapped to channels rather than the cursor position.
2023-12-18 20:21:51 +00:00
- **Program change pass-through**: when enabled, program change events are sent to each channel as instrument change commands.
- this option is only available when the previous one is enabled.
2023-08-26 01:41:50 +00:00
- **Map Yamaha FM voice data to instruments**: when enabled, Furnace will listen for any transmitted Yamaha SysEx patches.
- this option is only useful if you have a Yamaha FM synthesizer (e.g. TX81Z).
- selecting a voice or using the "Voice Transmit?" option will send a patch, and Furnace will create a new instrument with its data.
- this may also be triggered by clicking on "Receive from TX81Z" in the instrument editor (OPZ only).
- **Program change is instrument selection**: changes the current instrument when a program change event is received.
2023-12-18 20:21:51 +00:00
- this option is not available when "Program change pass-through" is enabled.
2023-08-26 01:41:50 +00:00
- **Value input style**: changes the way values are entered when the pattern cursor is not in the Note column. the following styles are available:
- **Disabled/custom**: no value input through MIDI.
- **Two octaves (0 is C-4, F is D#5)**: maps keys in two octaves to single nibble input. the layout is:
2023-12-19 09:50:59 +00:00
![two octaves layout 1 ](MIDI-value-input-1.png )
2023-08-26 01:41:50 +00:00
- **Raw (note number is value)**: the note number becomes the input value. not useful if you want to input anything above 7F.
- **Two octaves alternate (lower keys are 0-9, upper keys are A-F)**: maps keys in two octaves, but with a different layout:
2023-12-19 09:50:59 +00:00
![two octaves layout 2 ](MIDI-value-input-2.png )
2023-08-26 01:41:50 +00:00
- **Use dual control change (one for each nibble)**: maps two control change events to the nibbles of a value.
- **CC of upper nibble**: select the CC number that will change the upper nibble.
- **CC of lower nibble**: select the CC number that will change the lower nibble.
- **Use 14-bit control change**: maps two control change events that together form a single 14-bit CC. some MIDI controllers do these.
- **MSB CC**: select the CC containing the upper portion of the control.
- **LSB CC**: select the CC containing the lower portion of the control.
- **Use single control change**: maps one control change event. not useful if you want to input odd numbers.
- **Control**: select the CC number that will change the value.
- **Per-column control change**: when enabled, you can map several control change events to a channel's columns.
- **Volume curve**: adjust the velocity to volume curve.
2023-12-18 20:21:51 +00:00
- the default is 2.0, which matches General MIDI standard.
2023-08-26 01:41:50 +00:00
- **Actions**: this allows you to bind note input and control change events to actions.
2023-08-08 01:04:01 +00:00
- **`+`** button: adds a new action.
2023-07-30 18:07:09 +00:00
- window-with-arrow button: new action with learning! press a button or move a slider/knob/something on your device.
- each action has the following:
2023-08-26 01:41:50 +00:00
- **Type**: type of event.
- **Channel**: channel of event.
- **Note/Control**: the note/control change number.
- **Velocity/Value**: the velocity or control value
- **Action**: the GUI action to perform.
- **Learn**: after clicking on this button, do something in your MIDI device and Furnace will map that to this action.
- **Remove**: remove this action.
2023-07-30 18:07:09 +00:00
### MIDI output
- **MIDI output**: output device.
- **Output mode:**
2023-08-26 01:41:50 +00:00
- **Off (use for TX81Z)**: don't output anything. use if you plan to use Furnace as sync master, or the "Receive from TX81Z" button in the OPZ instrument editor.
- **Melodic**: output MIDI events.
- **Send Program Change**: output program change events when instrument change commands occur.
- **Send MIDI clock**: output MIDI beat clock.
- **Send MIDI timecode**: output MIDI timecode.
- **Timecode frame rate**: sets the timing standard used for MIDI timecode.
- **Closest to Tick Rate**: automatically sets the rate based on the song's Tick Rate.
- **Film (24fps)**: output at 24 codes per second.
- **PAL (25fps)**: output at 25 codes per second.
- **NTSC drop (29.97fps)**: output at ~29.97 codes per second, skipping frames 0 and 1 of each minute that doesn't divide by 10.
- **NTSC non-drop (30fps)**: output at 30 codes per second.
2023-07-30 18:07:09 +00:00
## Emulation
### Cores
2023-07-22 23:03:18 +00:00
2023-09-11 00:12:56 +00:00
- **Playback Core(s)**: core(s) to use for playback.
- **Render Core(s)**: core(s) to use when exporting audio.
all of these are covered in the [guide to choosing emulation cores ](../9-guides/emulation-cores.md ).
2023-07-22 23:03:18 +00:00
2024-04-07 21:47:42 +00:00
### Quality
some chips have output quality settings. these may be used to increase quality or lower CPU usage.
the available quality settings are:
- Lower: fastest but worst quality.
- Low
- Medium
- High: the default quality.
- Ultra
- Ultimate: highest available quality. may be very CPU heavy!
### Other
2023-09-09 01:16:43 +00:00
- **PC Speaker strategy**: this is covered in the [PC speaker page ](../7-systems/pcspkr.md ).
2023-07-06 21:42:10 +00:00
2023-07-30 18:07:09 +00:00
## Keyboard
### Keyboard
2024-04-07 21:47:42 +00:00
- **Import**: imports keyboard layout in `.cfgk` format.
- **Export**: exports keyboard layout in `.cfgk` format.
- **Reset defaults**: resets all keybinds to default values.
2023-07-30 18:07:09 +00:00
2023-09-09 01:16:43 +00:00
a list of keybinds is displayed.
- click on a keybind. then enter a key or key combination to change it.
- right-click to clear the keybind.
- the full list is in the [keyboard ](keyboard.md ) page.
#### note input
the settings for note input keybinds operate differently. each entry in the list of keybinds is made of the following:
- **Key**: key assignment.
- **Type**: type of note input. left-click cycles through "Note", "Note off", "Note release", and "Macro release".
2023-09-10 22:13:33 +00:00
- note: the list is sorted by type. on changing a key's type, it will instantly move to its new sorting position!
2023-09-09 01:16:43 +00:00
- **Value**: number of semitones above C at the current octave. only appears for note type binds.
- **Remove**: removes the keybind from the list.
2023-07-30 18:07:09 +00:00
2023-09-09 01:16:43 +00:00
below all the binds, select a key from the dropdown list to add it. it will appear at or near the top of the list as a note with value 0.
2023-07-30 18:07:09 +00:00
## Interface
### Layout
- **Workspace layout**
- **Import**: reads a .ini layout file.
- **Export**: writes current layout to a .ini file.
- **Reset**: resets layout to default.
2023-09-09 01:16:43 +00:00
- **Allow docking editors**: when enabled, you'll be able to dock instrument/wave/sample editors.
2023-08-08 01:04:01 +00:00
- **Remember window position**: remembers the window's last position on start-up.
2023-07-30 18:07:09 +00:00
- **Only allow window movement when clicking on title bar**
2023-08-19 22:55:33 +00:00
- **Center pop-up windows**
2023-07-30 18:07:09 +00:00
- **Play/edit controls layout:**
- **Classic**
- **Compact**
- **Compact (vertical)**
- **Split**
- **Position of buttons in Orders:**
- **Top**
- **Left**
- **Right**
### Mouse
- **Double-click time (seconds)**: maximum time between mouse clicks to recognize them as a double-click.
- **Don't raise pattern editor on click**
- **Focus pattern editor when selecting instrument**
2023-09-09 01:16:43 +00:00
- **Note preview behavior:** allows you to disable note preview when entering notes in the pattern.
- **Never**: don't preview notes at all.
- **When cursor is in Note column**: only when the cursor is in the Note column
- **When cursor is in Note column or not in edit mode**: erm... yeah.
- **Always**: always preview notes.
2023-07-30 18:07:09 +00:00
- **Allow dragging selection:**
2023-09-09 01:16:43 +00:00
- **No**: don't allow drag-and-drop.
- **Yes**: allow drag-and-drop.
- **Yes (while holding Ctrl only)**: allow drag-and-drop but only when holding Control (Command on macOS).
2023-08-08 01:04:01 +00:00
- **Toggle channel solo on:** selects which interactions with a channel header will toggle solo for that channel.
2024-10-02 22:13:07 +00:00
- **Right-click or double click**
- **Right-click**
- **Double-click**
- **Modifier for alternate wheel-scrolling (vertical/zoom/slider-input)**: selects which key to hold for alternate scrolling of interface elements that support it.
- **Ctrl or Meta/Cmd**
- **Ctrl**
- **Meta/Cmd**
- **Alt**
2023-09-09 01:16:43 +00:00
- **Double click selects entire column**: when enabled, double clicking on a cell of the pattern will select the entire column.
2023-07-30 18:07:09 +00:00
### Cursor behavior
2023-09-09 01:16:43 +00:00
- **Insert pushes entire channel row**: when enabled, pressing Insert will push the entire channel rather than the column at the cursor position.
- **Pull delete affects entire channel row**: when enabled, pull deleting (Backspace by default) will pull the entire channel rather than the column at the cursor position.
- **Push value when overwriting instead of clearing it**: in the order list and pattern editors, typing into an already-filled value will shift digits instead of starting fresh. for example:
2023-07-30 18:07:09 +00:00
- if off: moving the cursor onto the value `A5` and typing a "B" results in `0B` .
2023-08-05 17:32:14 +00:00
- if on: moving the cursor onto the value `A5` and typing a "B" results in `5B` .
2024-07-26 03:48:58 +00:00
- **Keyboard note/value input repeat (hold key to input continuously)**
2023-07-30 18:07:09 +00:00
- **Effect input behavior:**
2023-09-09 01:16:43 +00:00
- **Move down**: after entering an effect (or effect value), the cursor moves down.
- **Move to effect value (otherwise move down)**: after entering an effect, the cursor moves to its value. if entering a value, the cursor moves down.
- **Move to effect value/next effect and wrap around**: after entering an effect or effect value, the cursor moves right. if it was on the last column, it jumps back to the first effect.
- **Delete effect value when deleting effect**: if enabled, deleting effect will also delete its value.
- **Change current instrument when changing instrument column (absorb)**: if enabled, typing on the instrument column will also select the instrument you've typed.
- **Remove instrument value when inserting note off/release**: if enabled, inserting a note off or release on a row that has instrument value will remove the instrument value.
- **Remove volume value when inserting note off/release**: same as above, but for volume.
2023-07-30 18:07:09 +00:00
### Cursor movement
2023-09-09 01:16:43 +00:00
- **Wrap horizontally:** selects what to do when the cursor hits horizontal boundaries.
- **No**: don't wrap the cursor.
- **Yes**: wrap the cursor.
- **Yes, and move to next/prev row**: wrap the cursor and move it to the other row.
- **Wrap vertically:** selects what to do when the cursor hits vertical boundaries.
- **No**: don't wrap the cursor.
- **Yes**: wrap the cursor.
- **Yes, and move to next/prev pattern**: wrap the cursor and go to the next/previous order.
- **Yes, and move to next/prev pattern (wrap around)**: same as the previous option, but also wraps around the song.
- **Cursor movement keys behavior:** allows you to select how much will the cursor move by when pressing cursor movement keys.
- **Move by one**: guess.
- **Move by Edit Step**: guess.
- **Move cursor by edit step on delete**: when deleting, moves the cursor by Edit Step.
- **Move cursor by edit step on insert (push)**: when inserting, moves the cursor by Edit Step.
- **Move cursor up on backspace-delete**: when pull deleting (Backspace by default), moves cursor up.
- **Move cursor to end of clipboard content when pasting**: allows you to choose what happens after pasting.
- if on, the cursor will move to the end of the clipboard content.
- if off, the cursor won't move.
2023-07-30 18:07:09 +00:00
### Scrolling
- **Change order when scrolling outside of pattern bounds**:
- **No**: the pattern edit cursor will stay locked within the current order.
- **Yes**: moving the cursor past the edge of the previous or next order will move to that order, but not past the start or end of a song.
- **Yes, and wrap around song**: as above, but will wrap from song end to start.
- **Cursor follows current order when moving it**
- applies when playback is stopped.
- **Don't scroll when moving cursor**
- **Move cursor with scroll wheel**
2023-10-30 22:51:41 +00:00
- **No**
- **Yes**
- **Inverted**
2023-07-30 18:07:09 +00:00
2023-12-09 23:58:44 +00:00
### Assets
- **Display instrument type menu when adding instrument**
- if turned off, the menu can still be opened by right-clicking the add button.
- **Select asset after opening one**
2023-07-30 18:07:09 +00:00
## Appearance
### Scaling
2023-07-06 21:42:10 +00:00
2023-08-08 01:04:01 +00:00
- **Automatic UI scaling factor**: automatically matches the OS's UI scaling.
2023-08-05 17:32:14 +00:00
- **UI scaling factor**: only appears if "Automatic UI scaling factor" is off.
2023-07-30 18:07:09 +00:00
- **Icon size**
### Text
2023-10-16 12:10:05 +00:00
- **Font renderer**: this allows you to select which font renderer library to use. there are two choices:
- **stb_truetype**: the original font renderer used in Furnace 0.6 and before.
- **FreeType**: this font renderer has support for more font formats and provides more settings. introduced in Furnace 0.6.1.
- **Main font**: font for the user interface.
2023-09-11 00:12:56 +00:00
- **Header font**: font for section headers.
- **Pattern font** font for the pattern view, the order list, and related.
2023-08-05 19:44:49 +00:00
- if "Custom...", a file path selector will appear.
- **Size**: font size.
2023-10-16 12:10:05 +00:00
#### FreeType-specific settings
- **Anti-aliased fonts**: when enabled, fonts will be rendered smooth.
- **Support bitmap fonts**: this option allows you to enable the loading of bitmap fonts.
- be noted that this may force non-bitmap fonts to undesired sizes!
- **Hinting**: this option allows you to define how crisp fonts are rendered.
- **Off**: disable font hinting. at small sizes, fonts may be blurry.
- **Slight**: enable slight font hinting.
- **Normal**: enable font hinting.
- **Full**: enable harsh font hinting. fonts may look ugly/distorted to some people.
- **Auto-hinter**: some fonts contain hinting data, but some don't. this allows you to select what happens.
- **Disable**: only rely upon font hinting data.
- **Enable**: prefer font hinting data if present.
- **Force**: ignore font hinting data.
2024-07-26 03:48:58 +00:00
#### non-specific settings
- **Oversample**: renders the font internally at higher resolution for visual quality.
- higher settings use more video memory.
- for pixel or bitmap fonts, set this to **1x** .
- **Load fallback font**: load an extra font that contains nearly all characters that can be used, in case the selected fonts lack them. uses much video memory
- **Display Japanese characters**, **Display Chinese (Simplified) characters** , **Display Chinese (Traditional) characters** and **Display Korean characters** : only toggle these options if you have enough graphics memory.
- these are a temporary solution until dynamic font atlas is implemented in Dear ImGui.
2023-10-16 12:10:05 +00:00
2023-07-30 18:07:09 +00:00
### Program
2023-07-06 21:42:10 +00:00
- **Title bar:**
- **Furnace**
- **Song Name - Furnace**
- **file_name.fur - Furnace**
- **/path/to/file.fur - Furnace**
- **Display system name on title bar**
- **Display chip names instead of "multi-system" in title bar**
- **Status bar:**
- **Cursor details**
- **File path**
- **Cursor details or file path**
- **Nothing**
2024-07-26 03:48:58 +00:00
- **Display playback status when playing**: display playback time and current location in the menu bar.
- **Export options layout:**
- **Sub-menus in File menu**: export options appear in the File menu as sub-menus.
- **Modal window with tabs**: a single "export..." option that opens a dialog with export options. this is the default.
- **Modal windows with options in File menu**: like Sub-menus in File menu, but instead of being sub-menus, selecting one opens a dialog with export settings.
2023-08-19 22:55:33 +00:00
- **Capitalize menu bar**
2023-08-29 17:52:07 +00:00
- **Display add/configure/change/remove chip menus in File menu**: if enabled, the "manage chips" item in the file menu is split into the four listed items for quick access.
2023-07-06 21:42:10 +00:00
2023-07-30 18:07:09 +00:00
### Orders
- **Highlight channel at cursor in Orders**
- **Orders row number format:**
- **Decimal**
- **Hexadecimal**
### Pattern
2023-08-08 01:04:01 +00:00
- **Center pattern view**: centers pattern horizontally in view.
2023-07-30 18:07:09 +00:00
- **Overflow pattern highlights**
- **Display previous/next pattern**
- **Pattern row number format:**
- **Decimal**
- **Hexadecimal**
- **Pattern view labels:**
- **Note off (3-char)**: default is `OFF`
- **Note release (3-char)**: default is `===` .
- **Macro release (3-char)**: default is `REL` .
- **Empty field (3-char)**: default is `...` .
- **Empty field (2-char)**: default is `..` .
- **Pattern view spacing after:** number of pixels of space between columns.
- **Note**
- **Instrument**
- **Volume**
- **Effect**
- **Effect value**
- **Single-digit effects for 00-0F**
- **Use flats instead of sharps**
- **Use German notation**: display `B` notes as `H` , and `A#` notes as `B` .
### Channel
2023-07-06 21:42:10 +00:00
2023-08-08 01:04:01 +00:00
- **Channel style:** sets the appearance of channel headers in pattern view.
2023-07-06 21:42:10 +00:00
- **Classic**
- **Line**
- **Round**
- **Split button**
- **Square border**
- **Round border**
- **Channel volume bar:**
- **None**
- **Simple**
- **Stereo**
- **Real**
- **Real (stereo)**
- **Channel feedback style:**
- **Off**
- **Note**
- **Volume**
- **Active**
- **Channel font:**
- **Regular**
- **Monospace**
- **Center channel name**
2023-07-30 18:07:09 +00:00
- **Channel colors:**
- **Single**
- **Channel type**
- **Instrument type**
- **Channel name colors:**
- **Single**
- **Channel type**
- **Instrument type**
### Assets
2023-07-06 21:42:10 +00:00
2023-08-11 06:28:20 +00:00
- **Unified instrument/wavetable/sample list**: combines all three types of assets into one list.
- the buttons act as appropriate to the currently selected asset or header.
2024-09-12 08:04:56 +00:00
- **Horizontal instrument/wavetable list**: when there are more instruments/wavetables than there is room to display them...
2023-08-11 06:28:20 +00:00
- if on, scroll horizontally through multiple columns.
- if off, scroll vertically in one long column.
2023-08-19 22:55:33 +00:00
- only appears if "Unified instrument/wavetable/sample list" is off.
2023-08-15 04:34:04 +00:00
- **Instrument list icon style:**
- **None**
- **Graphical icons**
- **Letter icons**
2023-07-30 18:07:09 +00:00
- **Colorize instrument editor using instrument type**
### Macro Editor
- **Macro editor layout:**
- **Unified**
- **Grid**
- **Single (with list)**
- **Use classic macro editor vertical slider**
2024-09-11 21:30:32 +00:00
- **Macro step size/horizontal zoom:**
- **Manual**
- **Automatic per macro**
2024-09-11 21:31:43 +00:00
- **Automatic (use longest macro)**
2023-07-30 18:07:09 +00:00
### Wave Editor
- **Use compact wave editor**
### FM Editor
- **FM parameter names:**
- **Friendly**
- **Technical**
- **Technical (alternate)**
2023-07-06 21:42:10 +00:00
- **Use standard OPL waveform names**
2023-07-30 18:07:09 +00:00
- **FM parameter editor layout:**
- **Modern**
- **Compact (2x2, classic)**
- **Compact (1x4)**
- **Compact (4x1)**
- **Alternate (2x2)**
- **Alternate (1x4)**
- **Alternate (4x1)**
- **Position of Sustain in FM editor:**
- **Between Decay and Sustain Rate**
- **After Release Rate**
2024-09-06 00:07:51 +00:00
- **After Release Rate, after spacing**
- **After TL**
2023-07-30 18:07:09 +00:00
- **Use separate colors for carriers/modulators in FM editor**
2023-08-08 01:04:01 +00:00
- **Unsigned FM detune values**: uses the internal representation of detune values, such that detune amounts of -1, -2, and -3 are shown as 5, 6, and 7.
2023-07-06 21:42:10 +00:00
2024-03-28 18:50:15 +00:00
### Memory Composition
2023-07-30 18:07:09 +00:00
2024-03-28 18:50:15 +00:00
- **Chip memory usage unit:** unit for displaying memory usage in the Memory Composition window.
2023-07-30 18:07:09 +00:00
- **Bytes**
- **Kilobytes**
### Oscilloscope
- **Rounded corners**
- **Border**
2023-08-08 01:04:01 +00:00
- **Mono**: displays a single monaural waveform of all sound mixed together.
- if turned off, waves will be drawn on top of each other for each output channel.
- all colors are configurable via _Settings > Color > Color scheme > Oscilloscope > Wave (non-mono)._
- **Anti-aliased**: smoothes the lines of the waveform.
2023-08-05 19:42:43 +00:00
- slight performance cost and slightly buggy.
2023-08-08 01:04:01 +00:00
- **Fill entire window**: removes the gap between the waveform and the edge of the window.
- **Waveform goes out of bounds**: allows the waveform to draw past the top and bottom of the oscilloscope.
2023-07-30 18:07:09 +00:00
### Windows
2023-07-06 21:42:10 +00:00
- **Rounded window corners**
- **Rounded buttons**
- **Rounded menu corners**
2024-07-26 03:48:58 +00:00
- **Rounded tabs**
- **Rounded scrollbars**
2023-12-21 23:53:47 +00:00
- **Borders around widgets**: draws borders on buttons, checkboxes, text widgets, and the like.
2023-07-06 21:42:10 +00:00
2023-07-30 18:07:09 +00:00
## Color
### Color scheme
2023-07-06 21:42:10 +00:00
- **Import**
- **Export**
- **Reset defaults**
2023-12-21 23:53:47 +00:00
- **Guru mode**: exposes all color options (instead of accent colors).
2024-07-26 03:48:58 +00:00
- **Interface**
- **Frame shading**: applies a gradient effect to buttons and input boxes.
2023-07-30 18:07:09 +00:00
- **Color scheme type:**
- **Dark**
- **Light**
2024-07-26 03:48:58 +00:00
- **Accent colors**: select main interface colors.
- **Primary**
- **Secondary**
2023-07-30 18:07:09 +00:00
- several more categories...
2024-07-26 03:48:58 +00:00
## Backup
### Configuration
- **Enable backup system**: turn on automatic backups of the current open file.
- **Interval (in seconds)**: time between automatic backups.
2024-07-26 18:12:30 +00:00
- **Backups per file**: maximum number of backups to store for each file. oldest backups are deleted first.
2024-07-26 03:48:58 +00:00
### Backup Management
- **Purge before**:
2024-07-26 18:12:30 +00:00
- **Go**: purge all backups from before the selected date.
2024-07-26 03:48:58 +00:00
- total space used by all backups:
- **Refresh**: recalculate space.
- **Delete All**: purge all backups.