2025-03-29

	* Revision: 149
	- bug in function edo53cor prevented playing chords when edo53 tuning was
	used

	* Revision: 148
	- detect edo53 (%%MIDI temperamentequal 53)
	- correction of makam rast scale (major) when in edo53
	- set flat to -5 comma and sharp to +4 comma when in edo53 and key is defined
	by a <fifths> element.

2025-03-25

	* Revision: 147
	- new URL parameter inst=v0:i0,v1:i1... sets initial instruments for given
	voice:instrument-number pairs (overrides %%MIDI, but only at the beginning)
	- added svg36 constant also to xmlplay_emb.js
	- added microtonal examples to xmlplay_emb.html

2025-03-23

	* Revision: 146
	- misplaced var declaration
	- applied changes for fractional accidentals from xmlplay.js

2025-03-22

	* Revision: 145
	- disable voicemaps during the model parsing to enable correct computation
	of fractional midi numbers for tablature scores

	* Revision: 144
	- play and display fractional accidentals (makam and up/down variants)
	- added svg definitions for up/down accidentals (edo36)
	- function setKey accepts (explicitly added) fractional accidentals
	- compute midi number as an integer value plus a detune value in cents
	- add the cent value to functions speel and opneer
	- set the AudioBufferSourceNode parameter detune to the midi cent value
	- use midinumber from abc2svg when cent == 0 (no fractional accidental)

2025-03-18

	* Revision: 143
	- rewrite getPreload and parsePreload with await
	- remove continuation parameter from function doParms
	- don't start playback in function laadNoot
	- don't test audioCtx before calling laadNoot in function parseModel

	* Revision: 142
	- remove promise in inst_create and change tail recursion into a loop
	- rewrite laadNoot with loops and await
	- logic bug setting withRT with parameter p.noRT
	- update github url for midi-js fonts
	- m-key should also work when menu is active xmlplay_emb.html:
	- larger value of stretchlast needed in the bass example of xmlplay_emb.html
	- use position:fixed for dialog style .dlog

2024-04-02

	* Revision: 141
	- allow for an initial title svg without music

2024-03-30

	* Revision: 140
	- bug: the intrument map was not initialized correctly

2024-03-28

	* Revision: 139
	- only tie a note when the note time has the expected value (implied by the
	tying note)

2024-03-26

	* Revision: 138
	- bug in swing test
	- copied swing logic to xmlplay_emb

2024-03-25

	* Revision: 137
	- swing style on/off for quarter notes with "^swing" and "^straight"

2024-03-21

	* Revision: 135
	- add function checkDecos() which checks dynamics and swing decoration
	- add !swing2! decoration that can be placed on the second note of a swing
	pair

2024-03-01

	* Revision: 134
	- changing the instrument numbers in the menu now really changes the sound
	and loads new SF2 soundfonts if needed. This only works for SF2 synthesis,
	not (yet) for MIDIjs.
	- function setMidiInst is the event handler of the instrument input field and
	implements the mapping of the voice to a new instrument.

2024-02-29

	* Revision: 133
	- added input fields for midi instrument numbers below the sliders
	- refactored code for loading instruments: tail recursion replaced by normal
	loops with await expressions

2024-02-28

	* Revision: 132
	- flex menu with sliders
	- implement sliders for volume and panning of all voices

2024-02-23

	* Revision: 131
	- added sf2 fall back directory to the parameter element <div id="parms"> in
	the html file (xmlplay.html. xmlplay_emb.html)
	- this fall back directory (./jssf_files/) contains precooked sf2 javascript
	files for all standard GM midi instruments.

2024-02-14

	* Revision: 130
	- parsePreload levert een belofte op die pas vervuld wordt als alle
	parameters gelezen zijn (aanroep verder('ok') in doParms()).
	- wacht op parsePreload met await
	- syntax fouten in parms.js => logerr

2024-02-13

	* Revision: 129
	- lees parameter file (parms.js) uit dezelfde directory als het
	muziekbestand
	- harmoniseer parameters