-- NitrousTracker v0.6.5 (2026-07-17)

Fixes:

- fix off by one sample read error in ping pong loops
- fix potential song timing issues

-- NitrousTracker v0.6.4 (2026-06-21)

New features:

- in fx mode, display a preview cursor for `09XX` offset commands

Improvements:

- hide the theme button in settings if DLDI driver fails (asie)
- disable paste button if the clipboard is empty
- reset sample display zoom level when switching samples
- wrap around 'add' value
- updated BlocksDS to 1.21.1

Fixes:

- fix awkward selection drawing logic in pattern editor (asie)
- fix samples with a sample rate below 1191 causing hanging
- fix scroll lock edge case allowing deleted patterns to be played (#249)
- fix sliding on the FX keyboard parameter input
- other minor fixes

-- NitrousTracker v0.6.3 (2026-05-06)

New features:

- two new interface themes (Gobiodon.nttheme, 14.4mL/BubblegumWhite.nttheme)

Improvements:

- in fx mode, truncate pattern selection when channels are deleted or pattern length is reduced
- prevent typing illegal characters in file names
- expanded interface theming
 
Fixes:

- fix crash caused by finishing a pattern selection on the last pixel column of the last channel
- fix dummy instruments in imported songs crashing

-- NitrousTracker v0.6.2 (2026-04-16)

New features:

- four new themes! (Orjis)

Improvements:

- moved sample editor and envelope editor zoom buttons to the horizontal scrollbar (prayerie)
- confirmation dialog box before previewing a large sample (prayerie)
- increase maximum note skip from 8 to 32 (prayerie)
- updated BlocksDS to 1.19.1

Fixes:

- fix accessing uninitialized memory when playing auto notes (asie)
- fix record box RAM check crashing (asie)
- fix use-after-free when loading modules (asie)
- fix effects commands not displaying a parameter of `00` (prayerie)
- fix incorrect fx parameter interpolation (prayerie)
- other minor fixes

Additional thanks to oxygenfad for helping to test this release!

-- NitrousTracker v0.6.1 (2026-03-21)

New features:

- sample trim button (prayerie)

Improvements:

- removed confusing quirk in "clr" button behaviour added in v0.4.6 (prayerie)
- the "ren" button is now disabled when not useful (prayerie)
- touch keyboard can now be used while the song is playing (prayerie)
- updated BlocksDS to 1.19.0

Fixes:

- fixed memory corruption by adding more than 256 patterns
- fixed scroll bar not becoming visible after inserting patterns (prayerie)
- fixed visual bug when scrolling the envelope editor with sustain set
- fixed visual bug when switching instruments in effect mode (prayerie)
- fixed wifi crash when trying to enable dsmidi

-- NitrousTracker v0.6.0 (2026-03-02)

New features:

- effect editing keyboard (prayerie, exelotl)
- support for loading 24/32-bit WAV files (asie)
- support for loading WAV files with JUNK headers (prayerie)
- support for 09xx sample offset effect (prayerie)
- support for E1x/E2x/X1x/X2x fine portamento effects (exelotl)

Improvements:

- improved portamento accuracy (exelotl)
- optimized sample display drawing (prayerie)
- separated message box and sample editor zoom button colors
  (prayerie)
- updated BlocksDS to 1.18.0

Fixes:

- fixed disk tab being visible without DLDI driver (asie)
- fixed scroll bar not working in sample drawing mode (asie)

-- NitrousTracker v0.5.2 (2025-11-29)

New features:

- automatic normalization for samples (prayerie)
- instrument zapping can now filter to selected or unused
  instruments only (prayerie)
- songs with unsaved changes now have a visual indicator
  in the file tab icon (prayerie)
- typewriter theming support (prayerie)

Improvements:

- clear button in typewriter (prayerie)
- support for polyphony in DSMIDI and for Easy Piano (exelotl)

Fixes:

- fixed libntxm loading >16-channel XM files which it could not
  play (asie)
- fixed memory leak in NormalizeBox (prayerie)
- fixed red border disappearing after recording from mic in edit
  mode (prayerie)
- fixed regression in selection pasting (prayerie)
- fixed settings reading uninitialized values on first boot
  (prayerie)
- fixed visual indicators for mute/solo channels being incorrect
  upon changing songs (asie)

-- NitrousTracker v0.5.1 (2025-11-22)

New features:

- additional themes! (oxygenfad, prayerie)
- support for the piano in interface theming (prayerie)

Improvements:

- improved button disabling depending on state (prayerie)
- reduced flicker when adjusting sample loop points
- the currently displayed/selected sample is now switched based on
  the multisample note just played (prayerie)
- the piano is now outlined when in mapping mode (prayerie)
- when out of memory, the tracker will now "fail fast" instead of
  causing potential unwanted memory corruption and leading to
  unpredictable errors

Fixes:

- fixed a slight inconsistency regarding the current sample when clicking
  on a new instrument which should reset it to 0, but only did so
  visually (prayerie)
- fixed drawing mapping labels when in mapping mode but after disabling
  the sample listbox (prayerie)
- fixed memory corruption issues involving ping-pong loop samples
- fixed minor theme color calculation bugs (prayerie)
- fixed piano not respecting volume envelope (prayerie)
- fixed strange behaviour when mapping a key to a null sample then
  playing that after playing a non-null one (prayerie)
- fixed tabbox rounding disappearing after selecting a tab (prayerie)

-- NitrousTracker v0.5.0 (2025-11-11)

New features:

- interface theming support! (prayerie)
  - many themes are bundled with this release, with more to come
  - the .nttheme format is documented here: https://docs.asie.pl/nitroustracker/contributing/theming/

Improvements:

- disabled live memory indicator updates, improving stability
- slight tweaks to UI font and button layout
- songs and samples are now saved as .tmp files first, preventing data loss if a crash occurs
  mid-saving
- updated BlocksDS toolchain

Fixes:

- [#146] fixed not displaying instrument values properly in edge cases, part 2 (Arikari405)
- fixed incorrectly trying to load .xm files with OpenMPT format hacks (prayerie)
- fixed regression in tab box rendering
- fixed text being overzealously trimmed
- fixed typewriter not showing when paused (prayerie)
- general stability improvements and minor fixes

-- NitrousTracker v0.4.16 (2025-10-21)

Improvements:

- [#147] transpose buttons! hold R to transpose selection by an octave (Arikari405)
- updated BlocksDS toolchain

Fixes:

- [#142] fixed oversized pastes not working (prayerie)
- [#143] fixed crashes on too short microphone samples
- [#146] fixed not displaying instrument values properly in edge cases (Arikari405)

-- NitrousTracker v0.4.15 (2025-07-12)

Improvements:

- DSMIDI now better handles polyphony (Rachel Birdy)
- updated BlocksDS toolchain

Fixes:

- [#126] poor performance in large directories
- [#128] fixed bugs in DSMIDI USB support (Rachel Birdy)

-- NitrousTracker v0.4.14 (2025-04-26)

Improvements:

- actually enabled USB cartridge support for DSMIDI
- updated BlocksDS toolchain

Fixes:

- [#125] Fix playback regressions from v0.4.12

-- NitrousTracker v0.4.13 (2024-11-10)

Fixes:

- [#40] Fix freeze when attempting to loop samples in certain .xm files
- [#117] Fix "map samples" button UI overlap
- [#123] Fix playback regressions from v0.4.12
- [#84] Fix sample selection glitch

-- NitrousTracker v0.4.12 (2024-11-10)

New features:

- [#95] WAV sample import and export now supports loop points
- [#111] adjustable lines per beat

Improvements:

- minor maintenance work in libntxm
- updated BlocksDS toolchain
- updated DSMIDI NRIO USB support library

Fixes:

- fixed some scrollbar render issues in list boxes

-- NitrousTracker v0.4.11 (2024-11-04)

New features:

- DSMIDI support for NRIO/DS Linker Writer Slot-2 USB cartridges

Improvements:

- updated BlocksDS toolchain to 1.6.2
- the about screen now lists the version and the Git commit hash of the build

-- NitrousTracker v0.4.10 (2024-07-08)

New features:

- support for Bxx XM command (exelotl)
- support for EEx XM command (exelotl)

Improvements:

- updated BlocksDS toolchain to 1.3.0

Fixes:

- [#112] fixed freeze on recording long samples
- fixed XM pattern decoding bug leading to missing notes (exelotl)

-- NitrousTracker v0.4.9 (2024-04-26)

New features:

- env sustain playback + configuration (LeviathaninWaves)
- player now supports more pattern effects (LeviathaninWaves)

Improvements:

- NitrousTracker now uses a distinct logo
- updated BlocksDS toolchain

Fixes:

- fixed about message box width
- fixed crash if paths were set without trailing slashes in config file
- fixed combined loop and lock not working correctly
- fixed panning being incorrectly set (exelotl)
- fixed sample panning slider (exelotl)
- fixed saving of sample panning information (exelotl)

-- NitrousTracker v0.4.8 (2023-11-27)

Improvements:

- updated BlocksDS toolchain

-- NitrousTracker v0.4.7 (2023-11-26)

Improvements:

- updated BlocksDS toolchain

Fixes:

- fixed microphone recording length

-- NitrousTracker v0.4.6 (2023-11-10)

New features:

- holding "clr" while playing music will now continue clearing notes

Improvements:

- faster file I/O operations
- updated BlocksDS toolchain

Fixes:

- fixed ".." appearing in root directory
- fixed pattern lock and loop being enabled at the same time

-- NitrousTracker v0.4.5 (2023-04-08)

New features:

- nowifi build: ~100K more free RAM, but no dsmidiwifi support
- scroll lock: loop pattern + detach cursor from song playback
  - the old "loop ptn" option has been moved to the pattern/song tab

Improvements:

- general layout adjustments
- shaved ~10K more from the filesize/starting RAM usage
- the "sel" button can now be used to clear a selectiont

Fixes:

- fixed sample tune value not displaying correctly for values below -99
- fixed some directories being above ".." in file selector
- general minor visual glitch fixes

-- v0.4.4-unofficial (2023-04-07)

New features:

- "lock" option in pattern/song tab
  - allows queueing patterns to be played without immediately jumping to them
- new directory creation button in file manager
- mono/stereo output override in the options tab

Improvements:

- sample highlight visual now darkens the sample area
- adjusted the pattern/song tab's button layout

Fixes:

- fixed visual glitch upon a failed file save
- fixed visual glitches when font goes outside a list box
- further fixes to saving files in subdirectories

-- v0.4.3-unofficial (2023-04-07)

Improvements:

- migrated to the BlocksDS toolchain
  - the most visible difference is about ~140KB more free RAM on start
- minor optimizations
- support renaming longer filenames

Fixes:

- fixed crash related to song renaming
- fixed loading 8-bit stereo .WAV files
- fixed minor memory leak when loading .WAV files
- fixed race condition causing some sample files to not be previewable

-- v0.4.2-beta (2023-02-19)

New features:

- in-tracker file deletion support (#5)

Improvements:

- further filesize reduction
- further improvements to file selector

Fixes:

- fixed file selector crashing when tapping ".." on the root directory
- updated to devkitARM r59, libnds 1.8.2

-- v0.4.1-beta (2020-07-09)

New features:

- full DSi/3DS support
  - improved CPU/RAM specifications
  - support for built-in SD card reader
  - support for built-in microphone (with 16-bit samples)
- undo/redo buffer
  - use undo and redo buttons in the UI to prevent mistakes
  - currently limited to pattern operations (no order table/sample/instrument)
- untested DS Easy Piano peripheral support
- it is now possible to exit NitroTracker by tapping on the logo and selecting
  "exit" -> "yes"

Improvements:

- pattern viewer:
  - new, more readable 3x5 font
  - slight tweak to font colors for better readability
  - selections are now visible behind current row highlight
- pattern editing:
  - ins/del/clr/--/vol now operate on selections in addition to single cells
- piano:
  - added the ability to slide your stylus on the keyboard (@reinvdwoerd)
- "stop" immediately jumps back to top of pattern (@reinvdwoerd)
- NitroTracker now starts in the directory it's launched from
- the "disk" tab is now only shown if a filesystem has been detected
- the memory indicator is now dynamically updated as a .XM/.WAV file is
  being loaded
- the config is now saved explicitly as opposed to automatically, to reduce
  SD card wear and improve UI performance
- major performance improvements to tobkit (widget drawing library)
- minor performance improvements in other areas
- minor visual tweaks
- better mechanisms for checking free RAM

Fixes:

- settings now work even without a filesystem (@0xtob)
- fixed file browser crashing after deleting a folder (@0xtob)
- slight improvements to executable size
- fixed many memory leaks (including fixes by @fincs)
- updated to devkitARM r54, libnds 1.8.0

There may have been further changes, made between July 2008 and April 2010,
which are unfortunately not fully recorded in this changelog.

The following changelog entries are based off the archived blog posts from the
original website, http://nitrotracker.tobw.net/.

-- v0.4 (2008-07-10)

New features:

- Loops
- Volume Envelopes (drawable)
- Multi-Sample Instruments
- Channel Mute / Solo

Improvements:

- .WAV saving
- free RAM indicator
- sample preview
- the file browser remembers recent folders and files
- hands-free recording (push B in the record dialog)
- improved .XM player
- volume column editing
- sample panning
- improved left-handed mode

-- v0.3 (2007-01-05)

New features:

- DSMIDIWiFi support
- the song restart position can now be set
- .WAV preview in the file selector
- pause/resume
- pattern looping

Improvements:

- reboot console (press START+SELECT)
- some nice icons :-)
- shrinking the pattern cannot destroy data any more
  if you accidentally make a pattern too small, you can just enlarge it again
  and your data is still there.
- speed can now be adjusted while playing
- newer touch code => better touchscreen accuracy
- the "clr" button is now on both screens
- lines between all rows for better orientation
- record mode is more obvious (red border)
- application icon

Fixes:

- relnote/finetune calculation for .WAVs works again
- 8-bit .WAVs are now loaded correctly, without corruption
- stereo samples are now downsampled to mono
- better filesystem support
- .ds.gba version included
- fading no longer causes corruption on longer samples
- "ins" is now 100% stable
- updated to devkitARM r19b

-- v0.2 (2006-07-04)

New features:

- sample settings:
  - volume
  - relative note
  - finetune
- a basic sample editor that has:
  - selection with stylus
  - fading
  - reverse
  - delete
  - normalize

Fixes:

- loading of .WAVs with low sampling frequencies now works
- less memory usage while loading
- better sample drawing code

-- v0.1.4 (2006-04-16)

New features:

- added a "cln" button that clones the current pattern
- column selection: make a selection over the columns you want to select and
  press the "sel" button. this expands the selection to the complete column(s).
  without an active selection, the column under the cursor is selected.
- live recording: press play in record mode and play
- added del and ins buttons to the pattern screen
- removed the del button from the keyboard
- new settings tab
- left-handed mode (D-Pad swapped with ABXY and LR swapped)
- in list boxes, clicking below/above the "scroll thingy" scrolls down/up
  one page
- you can now tap on the song name / filename to change the name
- you now have to touch the splash screen

Fixes:

- improved filesystem device support
- updated to devkitARM r18
- fixed .WAV loading
- fixed strange looping behaviour
- list indices are now in hex, to be consistent with the instrument column
  in the pattern view and with FT2 :-)

-- v0.1.3 (2006-04-02)

Improvements:

- shoulder button functions: L switches screens / R + (up|down) scrolls to the (top|bottom)
- added a second splash screen

Fixes:

- several critical fixes in loading and saving
- reduced sample corruption
- fixed a looping problem that caused samples to repeat themselves at a higher pitch
- updated libnds => improved touch code, fixed touch precision problems
- recording works without a filesystem device
- ".Xm" and ".xM" files can now be loaded

-- v0.1.2 (2006-03-23)

- published .gba.nds version

-- v0.1.1 (2006-03-21)

- updated FAT library

-- v0.1 (2006-03-20)

Initial release.
