- Posts: 44
- Thank you received: 3
0.7.6
2 months 1 week ago - 2 weeks 19 hours ago #72
by Franck
- More robust argument type checking when calling a function
- Small changes in the audio API:
- ymNoteOn() and synNoteOn() now have a third argument for velocity (multiplied by voice volume) in the 0-127 range (MIDI compliant).
- The note argument is no longer an index to the frequency table shown in Section 7.11. The table is now internal only and will be removed from the manual. Instead, the note is now directly the MIDI note value ( www.phys.unsw.edu.au/jw/notes.html ) and the index to the internal table along with the appropriate octave is automatically selected internally. You can still use the voice octave to set octave globally, they are combined behind the scene. This makes life much easier !
- Fixed a stack overflow issue when declaring a local array of byte/bool inside a function.
- Fixed a bug when declaring a local byte/bool array with an {} initializer list. Values were not packed correctly in the VM stack.
- Left-Shift + Del now also resets the bitmap buffers to their initial single buffer configuration
- Fixed a number of bugs in the declaration and initialization of local custom types and local custom types arrays.
- Fixed a reserve size local bug (was taking too much space on the stack) for text members of custom types
- Fixed the display of the SR (Sustain Rate) portion of the envelope (YM2612) that was inverted in the Sound Editor. Tweaked the slope too. This does not affect the actual sound, only the display of the envelope is more accurate now.
- Fixed operator ON/OFF and display order in the Sound Editor. For some reason, register order (1234) is different than operator order (1324) in the YM2612. See register documentation here: www.plutiedev.com/ym2612-registers .
- Fixed terminal operators volume was not set correctly for algorithms 4->7 in the YM2612 synth.
- A new optional file page argument has been added to the fRead and fWrite functions. From the manual:
- An optional fPage argument, of type byte, allows moving the file pointer by multiples of 32 KiB (32768 bytes). This, in combination with the offset value, provides access to data in files larger than 64 KiB. The final pointer position is fPage x 32768 + offset. Files of up to 8 MiB can be accessed with this method. The read/written data is still limited to chunks of 64 KiB maximum, though.
Last edit: 2 weeks 19 hours ago by Franck.
Please Log in or Create an account to join the conversation.
Time to create page: 0.163 seconds