home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: Disk Number 4 / Lowe_DiskNumber4.img / SNES / SNMANUAL.DOC < prev    next >
Encoding:
Text File  |  1994-08-31  |  25.2 KB  |  715 lines

  1. ******************************************************************************
  2.                   SUPER N.E.S. EDITOR Version 4.5
  3. ******************************************************************************
  4.  
  5. NEW FEATURES IN THIS VERSION
  6.  
  7.  
  8. 4.5  Release date 31/08/94
  9. --------------------------
  10. 1. New command 'I' (Info toggle) toggles between note names (useful with
  11. music) and note value (more useful with effects).
  12.  
  13. 2. 'Play' indicator now in hex as well as decimal.
  14.  
  15. 3. Filename for load/save no longer corrupted after a 'Find'.
  16.  
  17. 4. All downloads to console now verified. Single byte edits are still sent to
  18. the console immediately, but any block edits (C/R/A/ALT A/ALT C/ALT E) are
  19. only updated on the PC. When the next 'Play' command is sent, the console is
  20. updated and the new data verified. This ensures:
  21. a) On-screen editing is always as quick as possible.
  22. b) The data is only sent and verified when next needed. If your ESYS has any
  23. problems downloading you will know straight away (normally you can just try
  24. downloading straight away unless a hardware problem has occurred).
  25.  
  26. 6. Keyboard repeat speed forced to maximum for quick movement while editing.
  27.  
  28.  
  29.  
  30.  
  31. 4.4  Release date 22/02/94
  32. --------------------------
  33. 1. 'ALT X' added to convert SNES format .SND file to MEGADRIVE format.
  34. Procedure is:a) Alt L to load in SNES file b) Alt X to convert c)Alt S to Save
  35. (use NEW filename to avoid writing over SNES file).
  36.  
  37.  
  38.  
  39.  
  40. 4.3 Release date 20/12/93
  41. -------------------------
  42. 1. Editor 'ch0 tmp glb' display
  43.  
  44. 2. Append shows error if no SUB or TRK end found to append to.
  45.  
  46. 3. Malibu bug fix.
  47.  
  48. 4. Digit checks for time signature/ banks etc. e.g. previous entry of 4/4 time
  49. was 0004/0004, new entry can be 4/4 or 04/04.
  50.  
  51. 5. 'ALT F' FIND added /'ALT N' NEXT added. These commands work with either 1 or
  52. 2 byte entries e.g. 80 will find all voice commands/ 8005 will find all VOICE
  53. 05 occurrences (Previous ALT F - Full size command changed removed).
  54.  
  55. 6. 'CTRL HOME' and 'CTRL END' added to move to start/end of current column
  56. data.
  57.  
  58.  
  59.  
  60.  
  61. 4.2 Release date 10/11/93
  62. -------------------------
  63. 1. 'END' keyboard command added to move instantly to end of current column.
  64.  
  65. 2. Maximum expanded size of SUBs and TRKs increased to 128 bytes for more
  66. flexibility.
  67.  
  68. 3. Globoffset for individual channels reset to 0 with each new call.
  69.  
  70. 4. Detune now works properly with BEND.
  71.  
  72. 5. External clock now also indicates status of music (stopped/started).
  73.  
  74. 6. Info_Mode command added for programmers to test status of each channel.
  75.  
  76. 7. Fixed special ($80) added to voices. When on this ignores GLOBOFFSET and
  77. CHANOFFSET, and is very useful when transposing sections of music - set it on
  78. all drum voices and they will stay at the correct pitch whilst the tonal
  79. voices transpose correctly.
  80.  
  81. 8. Start of Musicdata moved from $1200 to $1300 to make room for new features.
  82.  
  83. 9. BEND replaces previous bend commands for clarity. Bend is now only for the
  84. duration of a single note - it no longer needs a BEND OFF after each note.
  85.  
  86. 10. CHANFADE is now cancelled by a subsequent CHANVOL.
  87.  
  88. 11. TRACK LINK added to tracks. Example 'FD,01' at the end of a track will
  89. link to track 1. This can be used to link modules of music, or automatically
  90. return to a main piece of music after a jingle.
  91.  
  92. 12. CALL LINK added to tracks. Example 'FC,01' at the end of a track will
  93. start call 1. This can be used to write music in self-contained sections, each
  94. calling the next.
  95.  
  96. 13. TRK0call can be read by programmers externally. The currently playing CALL
  97. in channel 0 can be used with CALL LINK so that the current section of music
  98. can be read by the programmer - this can be used as an intelligent pause mode
  99. - read the current section before stopping the music and then use this CALL
  100. number to restart the music from the beginning of the same section.
  101.  
  102. 14. GLB FADE replaces FADE ALL. This now allows a fade in multiple channels
  103. without affecting sound effect volumes in other channels.
  104.  
  105. 15. Channel MUTE added in editor on keys F1 to F8.
  106.  
  107.  
  108.  
  109.  
  110. 4.1 Release date 26/08/93
  111. -------------------------
  112. 1. Global clock added for realtime readout from SNES
  113.  
  114. 2. Global Offset readout in editor
  115.  
  116.  
  117.  
  118.  
  119. 4.0 Release date 18/05/93
  120.  
  121. 1.  SETPAN CANCELS AUTOPAN (previously a new SETPAN was ignored with AUTOPAN
  122.     on).
  123.  
  124. 2.  NEW .SND FILE FORMAT WITH BANK ADDRESSES INSIDE MUSIC DATA. The driver now
  125.     reads all addresses from inside the data file, so that no changes ever
  126.     need to be made to the driver source code (D-SNES27.ASM identical for each
  127.     project).
  128.  
  129. 3.  A NEW SUB RESETS RANDOFFSET AND RAND DUR (previously these always had to
  130.     be cancelled by hand).
  131.  
  132. 4.  NEW OPCODE GLB VOL ($9D) ADDED. Enables easy master volume changes for
  133.     all selected channels. This was introduced primarily for the setup SUB
  134.     used at the start of a piece of music, to aid level balancing of all music
  135.     channels against effects.
  136.  
  137. 5.  PLAY LIMITS CHECKED AGAINST CALL. Using '[' and ']' now only allows
  138.     settings within the current range of CALL. Using 'P' to play is very
  139.     useful when trying out two different calls - set up P to play the first
  140.     and use Return in the normal way for the second.
  141.  
  142. 6.  ALT M (MASK) REMOVED. This is no longer needed now that masks (.SND,.IFF)
  143.     are automatically provided by the editor.
  144.  
  145. 7.  ALT B ADDED TO ALLOW ENTRY OF NEW BANK ADDRESSES.
  146.  
  147. 8.  NEW VOICENUM RESETS LEGATO (previously this needed to be reset by hand,but
  148.     it is most likely that any different voice setting will need LEGATO to be
  149.     cancelled).
  150.  
  151. 9.  WARNING IF ALTERED DATA BEFORE NEW LOAD OR ESCape (this reduces the risk of
  152.     losing new data by loading something else over the top before saving it).
  153.  
  154. 10. COMPRESSION CHECKS FOR BLANK SUB. A warning box will appear if any SUB is
  155.     found during compression which is completely blank. Normally compression
  156.     stops at this point and discards any higher SUBS, assuming that the
  157.     highest SUB has already been found, but in many cases this may not be true
  158.     - you have the safer option of including the blank SUB (answer 'Y'), or
  159.     finishing at this point and discarding all higher SUBs (answer 'N').
  160.  
  161. 11. COMPRESSION CHECKS FOR EXTRA DATA IN TRKs. A warning box will appear if
  162.     any TRK is found with additional non-zero bytes after the end ($FF or $FE)
  163.     is found. This might be temporary alternate arrangements which you wish to
  164.     keep for the time being. You have the option of inluding the extra data
  165.     (answer 'Y') or stripping it off the final version when no longer needed
  166.     (answer 'N').
  167.  
  168. 12. LOOP TIMER DOUBLED TO 4mS - This cures 'slowing' of fast bends when many
  169.     channels are in operation simultaneously.
  170.  
  171. 13. OVER-RUN CHECKS FOR MUSIC DATA. A check is made every time the music data
  172.     grows in size to make sure it doesn't corrupt BANK1 samples. If corruption
  173.     would occur, Download is automatically switched off and the user alerted.
  174.     This avoids having to exit the editor and re-send the corrupted samples.
  175.  
  176. 14. 'INSTANT' SCREEN UPDATES BYPASSING BIOS.
  177.  
  178. 15. GENERAL SCREEN UPDATES - real time clock added, better on-screen layout &
  179.     colours.
  180.  
  181. 16. CALLclock ADDED - An internal tick timer which can be read externally
  182.     using the $85 command. It keeps a running total of ticks at the current
  183.     global tempo whenever there is any channel active.
  184.  
  185. 17. ALT T ADDED TO ALLOW ENTRY OF TIME SIGNATURES.
  186.  
  187.  
  188.  
  189.  
  190. 3.3 Release date 10/03/93
  191. -------------------------
  192. Occasional restart clicks removed.
  193. LEGATO opcode ($84) added for extra long sounds.
  194. RAND_DUR moved to opcode $9C.
  195. Bug with $FF duration sounds over 2 seconds cured.
  196. All edit functions downloaded, including Expand (ALT E) and Add (ALT A).
  197. (Edited data is now ALWAYS the same as SONY data unless download is off).
  198.  
  199.  
  200. 3.2 Release date 09/03/93
  201. -------------------------
  202. Anti Crash built-in if you try to use non-existing opcodes.
  203. RAND DUR and RANDNOTE opcodes added.
  204. $80 and $40 bits of PAN set inverted phase for left and right channels.
  205. New pan values $00=left/$0C=centre/$18=right
  206. Feedback from SONY running on PC screen.
  207. Global TEMPO readout on PC screen.
  208. Priority with $80 bit set calls SUB directly.
  209. New CALL editor reads out TRK or SUB depending on priority settings.
  210. Current column limits checked for every Load, and zeroed if invalid.
  211.  
  212.  
  213. 3.1 Release date 26/02/93
  214. -------------------------
  215. Bug only loading maximum of 10,000 bytes of .IFF sample cured.
  216. Alt O switches download On/Off for extensive editing.
  217. Alt F expands all SUB/TRKs to Full size.
  218.  
  219.  
  220. 3.0 Release date 19/02/93
  221. -------------------------
  222. The current SONY end address is constantly updated.
  223. Up/down cursor limits are checked for all lengths of SUB and TRK.
  224. Compression now has extra checks and aborts with an error if the data is
  225. strange e.g. SUB 00 is blank.
  226. File size is shown at bottom right of screen in decimal bytes.
  227. Alt C can now be used as many times as needed to re-compress a file.
  228. Alt I is the changed command for IFF format conversion.
  229. Alt A now adds a column at the cursor position.
  230. Alt E now expands a compressed SUB or TRK column to full size (96 steps).
  231. SONY headers added to musicdata by Editor (SNMUSIC.ASM is now redundant).
  232. Backspace and Escape now work in filename entry.
  233.  
  234.  
  235. 2.1 Release date 11/02/93
  236. -------------------------
  237. Up to 128 samples allowed (see VOICENUM for details)
  238. More reliable PC edit downloads.
  239.  
  240.  
  241. 2.0 Release date 09/02/93
  242. -------------------------
  243. $83 downbyte sound call added.
  244. Interactive PC editor and crash-free download fully functional.
  245. SETGATE added to opcodes.
  246. '80' bit no longer needed for voice atkdec ($8F/$E0 can be $0F/$E0).
  247. Sample end duration added.
  248. Key Off clicks removed (this gives an 8mS response time to new calls).
  249.  
  250.  
  251. 1.5 Release date 05/02/93
  252. -------------------------
  253. Maximum Conversion error reduced from 6% to 3%.
  254. Maximum size of IFF samples now decreased to 24000 bytes.
  255. Rest added/opcodes reorganised.
  256. Hanging notes bug cured.
  257. Hardware reset bug removed.
  258. Voice detune added (added to current channel DETUNE).
  259. Two Filter  coefficients only.
  260. Modified sample format (use .SNS extender instead of .NES).
  261. Editor will compress any file size.
  262. Shuffled driver.
  263.  
  264.  
  265. 1.4 Release date 22/01/93
  266. -------------------------
  267. Mastervol now defaults to $A0 and is reset with every sound call.
  268. Channels now stop singly without stopping everything.
  269. Bug if Track loops at beginning cured.
  270. SNES 'Y' button now fades sound calls.
  271. 'Shift -' now works in editor.
  272. All 'Off' commands now need a second zero byte e.g. TREMOFF,0
  273. Verify removed from SNES download for greatly increased speed.
  274. AUTOPAN has new format and AUTPANOF has been removed.
  275. Bug in SUB calls over $7F cured.
  276. SUB loop and stop removed.
  277.  
  278.  
  279. 1.3 Release date 21/01/93
  280. -------------------------
  281. SUB limit increased to 160.
  282. Maximum size of IFF samples now decreased to 15000 bytes.
  283. SUB commands with 3 parameters now decode correctly with no rogue notes.
  284. Insert,Delete,Append,Play no longer send data to the SNES causing a crash.
  285.  
  286.  
  287. 1.2 Release date 20/01/93
  288. -------------------------
  289. File Compression routine implemented.
  290. Track looping added.
  291.  
  292.  
  293. 1.1 Release date 20/01/93
  294. -------------------------
  295. Basic Download to SNES added.
  296. Maximum size of IFF samples now increased to 17000 bytes.
  297.  
  298.  
  299. 1.0 Release date 18/12/92
  300. -------------------------
  301. Initial release for IFF sample file conversion only.
  302.  
  303.  
  304.  
  305.  
  306. FUNCTIONS
  307.  
  308. ESC              Escape from disk operation or editor
  309. Alt A            Add a column at the cursor position
  310. Alt B            Bank Address (1 then 2)
  311. Alt C            Compress a music file
  312. Alt D            Download current music file
  313. Alt E            Expand a compressed column to full size
  314. Alt F            Find a hex byte
  315. Alt I            IFF format conversion to SNES format
  316. Alt L            Load a music file
  317. Alt N            find Next matching hex byte
  318. Alt O            Download ON/OFF
  319. Alt S            Save a music file
  320. Alt T            Time signature (e.g. 0006/0008 for 6/8)
  321. Alt X            convert SNES to MEGADRIVE .SND format
  322. F1-F8            Toggle channel Mute
  323. Return/Enter     Play current music track
  324. Spacebar         Stop all music/effects
  325. F                Fade music
  326. I                Info switch (toggle between note number/ value display
  327. K                Keymode (toggle between sharps and flats)
  328.  
  329.  
  330. MOVEMENT
  331.  
  332. Home             Move cursor to top of column
  333. Ctrl Home        Move cursor to beginning of column data
  334. End              Move cursor to bottom of column
  335. Ctrl End         Move cursor to end of column data
  336. Right & Left     Change edit column
  337. Up & Page Up     Move cursor up
  338. Down & Page Down Move cursor down
  339.  
  340. + & Shift +      Channel up
  341. - & Shift -      Channel down
  342.  
  343. [ & ]            Play up/down
  344. P                Play (using setting above)
  345.  
  346.  
  347. EDITING
  348.  
  349. < & >            Up/Down current parameter
  350. Keypad *         Zero current parameter
  351.  
  352. D                Down 1 octave for current parameter
  353. U                Up 1 octave for current parameter
  354. 1/2/4/8          Bitflip current parameter
  355.  
  356. Insert           Insert a byte at current cursor position
  357. Delete           Delete a byte at current cursor position
  358.  
  359.  
  360. BLOCK
  361.  
  362. C                Copy current column into buffer
  363. R                Replace current column with buffer
  364. A                Append buffer to current column
  365.  
  366.  
  367.  
  368. ------------------------------------------------------------------------------
  369. DEMO FUNCTIONS
  370.  
  371. To help test the music files, a file named 'SNESMUS.ROM' may be supplied.
  372. You can download this to the SNES for a demo of the music and effets.
  373. The joypad keys to use are as follows:
  374.  
  375. UP/DOWN          Increment/Decrement current call number.
  376. SELECT           Stop all sound calls.
  377. START            Start music/effect.
  378. Y                Fades all sound calls.
  379.  
  380.  
  381.  
  382. VOICE PARAMETERS (VCE)
  383.  
  384. atkdec           Decay=$00 (1.2S) to $70 (37mS)
  385.                  Attack=$00 (4.1S) to $0F (0mS)
  386.                  e.g. $0F = Use ADSR with Attack=0mS/Decay=1.2S
  387.  
  388. susrel           Sustain=$00,$20,$40,$60,$80,$A0,$C0,$E0 (1/8 to Full)
  389.                  Release=$00 (Infinite) to $1F (18mS)
  390.                  e.g. $F5 = Sustain full (100%)/Release 14S
  391.  
  392. level            $00-$FF balancing level for this voice
  393.  
  394. sample           $00 uses a preset 1 cycle sinewave loop
  395.                  $01-$3F use the sounds from BANK1.ASM
  396.                  $40-$7F use the sounds from BANK2.ASM
  397.                  $80-$9F use the inbuilt SNES noise with freq. $00-$1F
  398.  
  399. offset           signed Offset to note (e.g. $0C=up 1 octave/$FF=down 1 note)
  400.  
  401. detune           $00-$FF ($00=no detune/$FF=1 semitone up default=$00)
  402.  
  403.  
  404. specls           $80 Fixed (unaffected by global offsets e.g. for drums)
  405.  
  406. vspeed           Vibrato speed.
  407.  
  408. vdepth           Vibrato depth.
  409.  
  410. vdelay           Vibrato delay $00-$FF (in frames)
  411.  
  412.  
  413.  
  414.  
  415. SUBROUTINE PARAMETERS (SUB)
  416.  
  417. NAME             NO.      PARAMETERS
  418. ------------------------------------------------------------------------------
  419. note             $00-$6B  ,duration ($00-$7F or $FF)
  420.                  $3C = C3 = middle C
  421.                  duration = $FF waits for the sample to end (non-looping only)
  422.  
  423.                  A duration value of $FF will wait for the end of the sample
  424.                  before continuing to the next step of a subroutine. This is
  425.                  extremely useful with single-shot sound effects, since it
  426.                  avoids having to experiment with a duration dependent on
  427.                  pitch. However, since a normal 'note off' must take place to
  428.                  end the sound, there will be an 8mS delay before the next
  429.                  sound can start.
  430.  
  431.  
  432. VOICENUM         $80      ,number
  433.  
  434.                  The number is:
  435.                  $00-$3F  (BANK1 samples)
  436.                  $40-$7F  (BANK2 samples)
  437.                  $80-$9F  (NOISE freq $00-$1F)
  438.  
  439.  
  440. REST             $81      ,duration ($00-$7F)
  441.  
  442.  
  443. CHNTEMPO         $82      ,tempo ($01-$FF default=$FF)
  444.  
  445.  
  446. GLBTEMPO         $83      ,channelbits,tempo,dummy ($01-$FF default=$FF)
  447.  
  448.                  Sets the channel tempo of all associated channels. This is
  449.                  the value shown as TEMPO on the PC screen.
  450.  
  451.  
  452. LEGATO           $84      ,switch (Off=$00/On=$01 default=OFF)
  453.  
  454.                  Defaults to OFF whenever a new CALL is started. The first
  455.                  note following a LEGATO ON will start normally, but it will
  456.                  not be gated off at the end. Subsequent notes will continue
  457.                  without a new envelope being triggered. This mode continues
  458.                  until a LEGATO OFF command is issued.
  459.  
  460.  
  461. SETGATE          $85      ,notelength (default=$FF)
  462.  
  463.                  At the end of the gated duration a note off is sent. This
  464.                  allows staccato notes to be produced. The default value of
  465.                  $FF is reset at the beginning of each new subroutine.
  466.  
  467.  
  468. SETPAN           $86      ,position (default=$0C)
  469.                  $00 = Left
  470.                  $0C = Centre
  471.                  $18 = Right
  472.                  $80 = Inverted Left phase
  473.                  $40 = Inverted Right phase
  474.  
  475.                  Sets the position of the sound in the current channel between
  476.                  the two speakers. All Pan positions default to $0C (centre)
  477.                  whenever a new call is started. Pan is altered by SETPAN,
  478.                  PANSLIDE and AUTOPAN only, so only 1 SETPAN need be issued
  479.                  for each channel - new subroutines will continue with the
  480.                  existing value. SETPAN cancels AUTOPAN.
  481.  
  482.  
  483. PANSLIDE         $87      ,speed,final position,dummy
  484.  
  485.                  Moves the position of the sound in the current channel
  486.                  between the current position and the desired final position
  487.                  at the desired speed.
  488.  
  489.  
  490. AUTO PAN         $88      ,switch (Off=$00/On=$01 default=OFF)
  491.  
  492.                  Sets a random position between the speakers for each
  493.                  subsequent note when the switch = 1. A value of 0 cancels
  494.                  AUTO PAN. The final pan position is maintained for all
  495.                  subsequent notes until a new SETPAN or AUTO PAN command is
  496.                  encountered. AUTO PAN is cancelled by SETPAN.
  497.  
  498.  
  499.  
  500. DETUNE           $89      ,value
  501.  
  502.                  All following notes in the channel have a fractional pitch
  503.                  added to anyvoice detune.$00 is no detune/$FF is the maximum
  504.                  setting of 1 full semitone up.
  505.  
  506.  
  507. CHNOFFST         $8A      ,transpose
  508.  
  509.                  Acts similarly to the GLOBOFFS command, but on the current
  510.                  channel only. Channel offsets are independent, and
  511.                  can be used in tandem with a global offset.
  512.  
  513.  
  514. GLBOFFST         $8B      ,channelbits,transpose,dummy (default=$00)
  515.  
  516.                  Adds ($00-$7F) or subtracts ($FF-$80) the transpose setting
  517.                  to all subsequent notes in all associated channels. It is
  518.                  reset to zero on starting any new piece of music, or by
  519.                  resetting the sound driver using the external command INIT
  520.                  (See SNES.DOC).
  521.  
  522.  
  523. CHANVOL          $8C      ,volume ($00-$FF default=$FF)
  524.  
  525.                  CHANVOL defaults to $FF when a new call is started, and
  526.                  affects all subsequent notes until another  CHANVOL command
  527.                  is issued.
  528.  
  529.  
  530. TREMOLO          $8D      ,speed,depth,delay
  531.  
  532.  
  533. TREMOFF          $8E      ,dummy
  534.  
  535.  
  536.  
  537. VIBRATO          $8F      ,speed,depth,delay
  538.  
  539.                  Starts a vibrato with the desired settings in the current
  540.                  channel, replacing any existing values set by VOICENUM. All
  541.                  subsequent notes will have these settings until another
  542.                  VOICENUM, VIBRATO or VIBOFF command is issued.
  543.  
  544.  
  545. VIBSWELL         $90      ,spread
  546.  
  547.                  After the Vibrato delay, this sets the time during which
  548.                  the vibrato amplitude builds up gradually to its setting.
  549.  
  550.  
  551. VIBOFF           $91      ,dummy
  552.  
  553.  
  554.  
  555. BEND             $92      ,speed,to interval,delay
  556.  
  557.                  Starting from the next note, the pitch will bend up (interval
  558.                  $00-$7F) or down (interval $FF-$80) from the note value to
  559.                  the interval.
  560.  
  561.  
  562. BEND OFF         $94      ,dummy
  563.  
  564.                  All Bend settings are cancelled.
  565.  
  566.  
  567.  
  568. ECHOTYPE         $95      ,delay($00-$0C),filter ($00-$01),feedback($00-$7F)
  569.  
  570.                  This sets the 'sound' of echo. The echo system uses a portion
  571.                  of sound memory as a buffer. The amount used depends on the
  572.                  delay setting as detailed below:
  573.  
  574.                  Setting   Time     Memory Used  Address
  575.                  0           0mS    4 bytes      $FF00-$FF03
  576.                  1          16mS    2K           $F700-$FEFF
  577.                  2          32mS    4K           $EF00   "
  578.                  3          48mS    6K           $E700
  579.                  4          64mS    8K           $DF00
  580.                  5          80mS    10K          $D700
  581.                  6          96mS    12K          $CF00
  582.                  7         112mS    14K          $C700
  583.                  8         128mS    16K          $BF00
  584.                  9         144mS    18K          $B700
  585.                  A         160mS    20K          $AF00
  586.                  B         176mS    22K          $A700
  587.                  C         192mS    24K          $9F00
  588.                  D         208mS    26K          $9700
  589.                  E         224mS    28K          $8F00
  590.                  F         240mS    30K          $8700 maximum allowable
  591.  
  592.                  The feedback setting determines the amount of delayed sound
  593.                  returned to the input, and hence the decay time. $FF is 100%
  594.                  feedback which will continue indefinitely. Filter sets the
  595.                  equalisation of the feedback path. There are currently two
  596.                  preset settings ($00-$01) which are:
  597.                  0        No EQ (flat)
  598.                  1        Low Pass Filter
  599.  
  600.  
  601. ECHOCHAN         $96      ,channelbits,Rlevel,Llevel ($00-$7F)
  602.  
  603.                  'channelbits' determines which of the 8 channels will have
  604.                  echo. The second and third parameters set the master echo
  605.                  volumes for each speaker.
  606.  
  607.  
  608. ECHO OFF         $97      ,0 (default=off)
  609.  
  610.                  The volumes of both left and right Echo channels are reset
  611.                  to zero.
  612.  
  613.  
  614.  
  615. ECHOFADE         $98      ,speed,vol_L,vol_R ($00-$7F)
  616.  
  617.                  This works similarly to CHANFADE, but controls the volume
  618.                  of both echo channels (left & right) simultaneously.
  619.  
  620.  
  621. CHANFADE         $99      ,speed,final volume,dummy
  622.  
  623.  
  624. GLB FADE         $9A      ,channelbits,speed,final volume
  625.  
  626.                  Starts a fade of CHANVOL in all specified channels.
  627.  
  628.  
  629. RANDNOTE         $9B      ,and mask ($00-$FF default=$00=Off)
  630.  
  631.                  All following note pairs will have a random offset added to
  632.                  the normal note with a value set by the and mask. The default
  633.                  value of $00 is reset at the beginning of each new
  634.                  subroutine.
  635.  
  636.  
  637. RAND DUR         $9C      ,and mask ($00-$FF default=$00=Off)
  638.  
  639.                  All following note pairs will have a random duration added to
  640.                  the normal duration with a value set by the and mask.
  641.                  e.g. mask=$07 random added = 0,1,2,3,4,5,6 or 7
  642.                       mask=$04 random added = 0 or 4 ('4' bit randomly set)
  643.                  The defualt value of $00 is reset at the start of each new
  644.                  subroutine.
  645.  
  646.  
  647. GLB VOL          $9D      ,channelbits,volume,dummy ($00-$FF default=$FF)
  648.  
  649.                  Sets a master volume for each associated channel, from $FF
  650.                  (full) to $00 (off). This is useful for balancing music
  651.                  levels against effects without altering the music balance.
  652.  
  653.  
  654. END              $FF
  655.                  Indicates the final byte of a subroutine.
  656.  
  657.  
  658.  
  659.  
  660. TRK PARAMETERS
  661.  
  662. BYTE 1              BYTE 2              DETAILS
  663.  
  664. 00-3F no. of times  00-7F sequence no.  normal subroutine pair
  665.  
  666.  
  667. 40    loop end      -                   use only after loop start
  668.  
  669.  
  670. 41-7F loop start    -                   e.g. 46 = loop 6 times
  671.  
  672.  
  673. FC    call          00-FE call no.      start this call next
  674.  
  675.  
  676. FD    link          00-7F track no.     link to this track next
  677.  
  678.  
  679. FE    end           00    (dummy)       end in this channel
  680.  
  681.  
  682. FF    loop channel  00-7F loop point    loop channel to any step
  683.                                         e.g. FF/02=loop to step 02
  684.  
  685.  
  686.  
  687.  
  688. CALL PARAMETERS
  689.  
  690. prior            priority setting $00 (highest) to $7F (lowest)
  691.                  bit 7 set ($80) forces direct call to SUB
  692.  
  693. 0-7              TRK used in this channel (prior less than $80)
  694.                  SUB used by this channel (prior greater than $80)
  695.  
  696.  
  697.  
  698.  
  699. NOTE VALUES
  700.  
  701. NAME             NORMAL         DOTTED         DOUBLE DOT     TRIPLET
  702.  
  703. Semibreve        30h            48h            54h            20h
  704.  
  705. Minim            18h            24h            2Ah            10h
  706.  
  707. Crotchet         0Ch            12h            15h            08h
  708.  
  709. Quaver           06h            09h            -              04h
  710.  
  711. Semiquaver       03h            -              -              02h
  712.  
  713. Demisemiquaver   2/2/1/1        -              -              01h
  714.  
  715.