Skip to content

Releases: pinobatch/pently

v0.05wip11

14 Mar 02:14
Compare
Choose a tag to compare

This release fixes a few of the most long-standing issues and adds NSFe metadata support.

Driver

  • Attack track allows grace notes (#35, reported by retrodpc)
  • Channel volume in attack track is ignored rather than clobbering another variable (#35, reported by retrodpc)
  • Option to round row grid to nearest tick on loop, pattern start, or beat (#37)
  • Remove use of other .proc's labels in preparation for ASM6 port

pentlyas.py

  • Fix bugs in fallthrough command and document it (#1, reported by jroatch)
  • Specify tempo based on a musical duration other than a beat (#34)
  • Calculate duration of each song and sound effect (#40)

Packaging and demo

  • NES shell: Take track titles from score (#38)
  • NSF shell: Take NSF title, author, and copyright from score (#38)
  • NSF shell: Write NSFe and NSF2 formats (#39, #41)
  • sfxed: Fix display of rate in slow (rate 10+) effects
  • Move .pently files to audio folder
  • Document workarounds for lack of reentrancy (#2)
  • makefile: Add a recipe to convert a FamiTracker module with ft2pently (#36)

v0.05wip10

14 Dec 02:55
Compare
Choose a tag to compare

This is a fairly big release that brings Pently 5 toward completion after the development cycle of Nova the Squirrel and Mega Mountain.

Driver

  • Grace note durations no longer reduced by 1 frame
  • Always write period high byte for triangle, fixing problem with zero volume in instruments (#32, reported by NovaSquirrel)
  • Suppress linker warnings for export/import address size mismatch
  • Overhaul names and scope of internal subroutines
  • Rearrange conductor processing based on bytecode order
  • Move sustain phase processing above pitch effects
  • Remove redundant checks for attack injection in pitch effects
  • Fix misbehavior when music and a slowed-down sound effect are played at once
  • C bindings for commonly used functions (requested by adrian09_01)
  • pentlyseq.inc: don't truncate patdef at 7 bits (reported and fixed by NovaSquirrel)
  • mkrammap.py: rename to pentlybss.py to encourage remembering to include it when vendoring Pently

pentlyas.py

  • A score can include other files, such as an instrument set (#29)
  • o0 through o7 to set reference pitch (requested by zzo38)
  • Allow grace notes in drum patterns
  • Playing a pattern with only rests or waits is nonfatal
  • Fix warnings for missing "fine" or "dal segno"
  • Order of objects in the output is explicit, the same order in which they appear in the score (requested by NovaSquirrel)
  • Error if no songs are defined (reported by NovaSquirrel)
  • -A means --period-tuning; --output means -o

Packaging and demo

  • Profiler: don't overreport CPU use if the shell has a lag frame
  • Document how to skip the makefile's default autoplay (#30)
  • makefile: Allow building from an arbitrarily named score by giving the name of the corresponding .nes or .nsf
  • Add pseudocode to aid in porting to non-6502 platforms
  • Add Travis CI build script
  • Sample songs: Include the soundtrack of all games by Damian Yerrick that have appeared in Action 53. These are Concentration Room, Thwaite, Zap Ruder, and RHDE: Furniture Fight.

v0.05wip9

21 Feb 23:34
Compare
Choose a tag to compare

This release adds several features useful for iterating on part of a piece, such as a visualizer, channel muting, seeking to rehearsal marks, and slow motion playback. It also adds an editor to create sound effects right on your console.

Engine changes

  • PENTLY_USE options to disable music engine entirely, disable 303 portamento, and enable triangle channel duty fix
  • Regression fix: Cancel injection when attack ends (had been broken since slow arps)
  • Cancel grace note when pattern begins
  • Add rehearsal transport control to skip to a row or slow down or pause playback
  • Add variable mix to mute tracks
  • Store current pitch and volume for use by visualizer

pentlyas.py changes

  • Add warning infrastructure
  • v1 through v4 as synonyms for pp through ff
  • p (pause) is synonym for r (rest)
  • q repeats last chord, as in LilyPond
  • Bar check in pattern to warn if not on a measure boundary
  • pickup works in patterns as well
  • Unreachable A in tunings below A=437 is nonfatal
  • mmloctaves off, which future chord syntax will require
  • Set rehearsal marks for navigation in score
  • Set initial playback position and track muting

NES shell changes

  • Add per-song screen with visualizer, rehearsal mark navigation, track muting, tempo, and pause-and-step
  • Import Sound Effects Editor as of 2014-09-10

Manual and other changes

  • Script to estimate pitch of 93-step noise
  • docs: Recalculate PENTLY_USE savings

v0.05wip8

29 Dec 03:06
Compare
Choose a tag to compare

Summary of changes in past 3 months:

  • Uses less RAM when effects are disabled at build time
  • Instrument envelopes with many 0 pitch frames use fewer bytes
  • Drum names can start with l again
  • Tuning can be changed from A440
  • NES shell displays Pently's ROM size and CPU usage