home *** CD-ROM | disk | FTP | other *** search
- THINGS TO DO
- ============
-
- Change the FINDPORT method in main.c to an external reference, ala MAIN8.C
-
- Update SMUS.H to reflect recent additions to SMUS IFF spec.
- Update play.c to reflect new SEvents.
-
- Above changes incorporated. - DJH
-
- REV 2.0-------------------------------------------------------------------------
-
- ARRGGH! Can no longer rely on 1 instrument per track ala Instant Music:
- A 4-TRAK song could have 3 or 8 instruments! Since there's no way a 1-pass
- reader could know how many instruments there are, RefInstruments would have
- to be handled as a dynamically-allocated linked list! SET_INST cmds would
- have to traverse the list to execute! (fixed - DJH)
-
- According to the IM error requester, at least some of those IM S_Events
- are "pitch guides". Just a note.
-
- ARRGGH II! Can no longer rely on a maximum of 1 TRAK per audio channel.
- Fix SMUS reader to delete unplayable tracks. (fixed - DJH)
-
- Minor volume adjustment problem in SMUS fixed.
-
- SET_INST error trapping added to compensate for possible errors generated
- by DMCS SMUS files. See PLAY for details.
-
- Chords now recognized. Routine skips over non-tonic chord notes, as noted
- in specs for simple SMUS players. Chords may be implementable like so :
- 1) Play all non-tonics on any available (not ringing) channel.
- 2) Tonics may interrupt any previously ringing note.
- This gives priority to the important notes in the track. Even better :
- 1) Play all non-chord notes (includes tonics), which can interrupt
- any previously ringing notes.
- 2) Play all non-tonics on any open channels.
-
- Of course, if no channel is available, the note gets skipped. The above
- schemes could possibly be extendable to more than four TRAK's, in which case
- method (2) would give more important notes on more tracks higher priority.
-
- SID_TimeSig's now recognized.
- Incorrect formula for SID_Tempo's corrected.
- SID_Tempo now takes into account time signatures.
-
- Smain.c now references Instruments/ by disk label. Other minor changes.
-
- Ties now implemented.
-
- REV 2.4-------------------------------------------------------------------------
-
- Instrument numbers no longer assumed to match physical numbers.
- Volume computations now take current instrument # into account.
- MIDI instruments ignored by LoadSamples().
- Attempts to play MIDI Instruments now routed any REAL instruments.
- New NO_INSTRUMENTS error for files with All-MIDI instruments added.
-
- REV 2.5-------------------------------------------------------------------------
-
- Short8.C attempts to resolve instruments w/undefined pitch (won't guru!)
- Volumes and dynamics now correctly resolved.
-
- REV 3.0-------------------------------------------------------------------------
- Rev 3.0 and later are available as a separate enhancement ONLY!
-
- Chord support added. (yea!)
- Conditional compilation for octave extrapolation added.
- More sensible handling of undefined pitches.
- max trackcount increased to MAXCLEFS; dynamic allocation proved unfeasible.
-
- Need to add ties for new environment.
- Need to add CMD_STOP support. (done - DJH)
-
- Need to check on absolute pitches vs. DMCS & IM.
-
- REV 3.5-------------------------------------------------------------------------
-
- Ties added for tonics. Chord ties will reattack if not stolen.
- Minor 3.0 bug fixes added to Rev 2.5, creating Rev 2.7.
- Minor fixes for revised 1.2 PRECOMP.PRE
- REALLY implemented CMD_STOP.
-
- REV 3.6------------------------------------------------------------------------
-
- Source now correctly compiles under both 16 and 32-bit Aztec modes
- New, corrected pitch algorithms (see READ_ME file)
- "FIXME" files renamed to "REV_HISTORY", a more accurate name.
- Smus2.7 is no longer included with the Toolkit.
- _safe and _extra versions are no longer necessary.
- All files (incl. precomp.pre) recompiled under Aztec 3.60a (16-bit mode)
- Include files are now explicitly declared in the source.
- All source files have been passed through Lint.
- Missing failed allocation test in short8.c corrected.
- Instrument pathnames no longer have "Instruments/" prepended to them.
- smain.c (demo player) revised. More sensible handling of instrument paths.
- StartNote function in play.c optimized by user suggestion.
-
- REV 3.6A-----------------------------------------------------------------------
-
- Minor problem corrected in short8.c where instruments recorded exactly at
- a pitch of 'C' would play back one octave too low.
-