Skip to content

Commit 8a8decb

Browse files
committed
- 6.2.3.0 Added ModulationOverride, PanOverride, PitchOverride properties to MIDI Driver Settings of Timre property.
1 parent d2b25c4 commit 8a8decb

File tree

10 files changed

+90
-8
lines changed

10 files changed

+90
-8
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,3 +195,8 @@ bin
195195
/src/Praat2Lpc/.vs
196196
/src/VSIF/VGMPlay_MSX_pi/.vscode
197197
/src/VSIF/VGMPlay_MSX_pi - tR
198+
/src/VSIF/VGMPlayer/.vs
199+
/src/VSIF/VGMPlay_Genesis/.vscode
200+
/src/VSIF/VGMPlay_Genesis/cfg
201+
/src/VSIF/VGMPlay_NES_VRC6/.vscode
202+
/src/VSIF/VGMPlay_PCE/.vscode

3rdparty/libflac/src/libFLAC/stream_decoder.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -551,10 +551,10 @@ static FLAC__StreamDecoderInitStatus init_FILE_internal_(
551551
FLAC__ASSERT(0 != file);
552552

553553
if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED)
554-
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED;
554+
return (FLAC__StreamDecoderInitStatus)(decoder->protected_->state = (FLAC__StreamDecoderState)FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED);
555555

556556
if(0 == write_callback || 0 == error_callback)
557-
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS;
557+
return (FLAC__StreamDecoderInitStatus)(decoder->protected_->state = (FLAC__StreamDecoderState)FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS);
558558

559559
/*
560560
* To make sure that our file does not go unclosed after an error, we
@@ -625,10 +625,10 @@ static FLAC__StreamDecoderInitStatus init_file_internal_(
625625
* in FLAC__stream_decoder_init_FILE() before the FILE* is assigned.
626626
*/
627627
if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED)
628-
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED;
628+
return (FLAC__StreamDecoderInitStatus)(decoder->protected_->state = (FLAC__StreamDecoderState)FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED);
629629

630630
if(0 == write_callback || 0 == error_callback)
631-
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS;
631+
return (FLAC__StreamDecoderInitStatus)(decoder->protected_->state = (FLAC__StreamDecoderState)FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS);
632632

633633
file = filename? fopen(filename, "rb") : stdin;
634634

3rdparty/sol2/sol/inheritance.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,12 +68,12 @@ namespace sol {
6868
}
6969

7070
inline decltype(auto) base_class_index_propogation_key() {
71-
static const auto& key = u8"\xF0\x9F\x8C\xB2.index";
71+
static const auto& key = u8"U0001F332.index";
7272
return key;
7373
}
7474

7575
inline decltype(auto) base_class_new_index_propogation_key() {
76-
static const auto& key = u8"\xF0\x9F\x8C\xB2.new_index";
76+
static const auto& key = u8"U0001F332.new_index";
7777
return key;
7878
}
7979

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
MAmidiMEmo 6.2.2.0 Itoken (c)2019, 2025 / GPL-2.0
1+
MAmidiMEmo 6.2.3.0 Itoken (c)2019, 2025 / GPL-2.0
22

33
*** What is the MAmidiMEmo? ***
44

@@ -278,6 +278,7 @@ e.g.) YM2151 has 8ch FM sounds, so you can play 8 chords on MIDI 1ch or sharing
278278
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=SNQ9JE3JAQMNQ)
279279

280280
*** Changes
281+
- 6.2.3.0 Added ModulationOverride, PanOverride, PitchOverride properties to MIDI Driver Settings of Timre property.
281282
- 6.2.2.0 Supported "SPC700_for_MeSX" for MAmidiMemo
282283
- 6.2.1.0 Supported MSXπ UART(i8251) for MAmidiMemo
283284
- Slightly may improved transfer speed MSXπ UART(i8251)

src/mamidimemo/.vs/mamidimemo.csproj.dtbcache.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

src/mamidimemo/Program.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public static class Program
4141
/// <summary>
4242
///
4343
/// </summary>
44-
public const string FILE_VERSION = "6.2.2.0";
44+
public const string FILE_VERSION = "6.2.3.0";
4545

4646
public const string FILE_COPYRIGHT = @"Virtual chiptune sound MIDI module ""MAmidiMEmo"" Version {0}
4747
Copyright(C) 2019, 2025 Itoken.All rights reserved.";

src/mamidimemo/Samples/YM2610B_GM.MAmi

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

src/mamidimemo/instruments/MidiDriverSettings.cs

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,27 @@ public int KeyShift
4848
set;
4949
}
5050

51+
private int? f_PitchOverride;
52+
53+
[DataMember]
54+
[Description("Override Pitch value when key on")]
55+
[DefaultValue(null)]
56+
[SlideParametersAttribute(-1, 16383)]
57+
[EditorAttribute(typeof(SlideEditor), typeof(System.Drawing.Design.UITypeEditor))]
58+
[Category("MIDI")]
59+
public int? PitchOverride
60+
{
61+
get => f_PitchOverride;
62+
set
63+
{
64+
f_PitchOverride = value;
65+
if (f_PitchOverride < 0)
66+
f_PitchOverride = null;
67+
else if (f_PitchOverride > 16383)
68+
f_PitchOverride = 16383;
69+
}
70+
}
71+
5172
private int f_PitchShift;
5273

5374
[DataMember]
@@ -69,6 +90,27 @@ public int PitchShift
6990
}
7091
}
7192

93+
private int? f_PanOverride;
94+
95+
[DataMember]
96+
[Description("Override Pan value when key on")]
97+
[DefaultValue(null)]
98+
[SlideParametersAttribute(-1, 127)]
99+
[EditorAttribute(typeof(SlideEditor), typeof(System.Drawing.Design.UITypeEditor))]
100+
[Category("MIDI")]
101+
public int? PanOverride
102+
{
103+
get => f_PanOverride;
104+
set
105+
{
106+
f_PanOverride = value;
107+
if (f_PanOverride < 0)
108+
f_PanOverride = null;
109+
else if (f_PanOverride > 127)
110+
f_PanOverride = 127;
111+
}
112+
}
113+
72114
private int f_PanShift;
73115

74116
[DataMember]
@@ -185,6 +227,27 @@ public bool IgnoreVelocity
185227
set;
186228
}
187229

230+
private int? f_ModulationOverride;
231+
232+
[DataMember]
233+
[Description("Override Modulation value when key on")]
234+
[DefaultValue(null)]
235+
[SlideParametersAttribute(-1, 127)]
236+
[EditorAttribute(typeof(SlideEditor), typeof(System.Drawing.Design.UITypeEditor))]
237+
[Category("MIDI")]
238+
public int? ModulationOverride
239+
{
240+
get => f_ModulationOverride;
241+
set
242+
{
243+
f_ModulationOverride = value;
244+
if (f_ModulationOverride < 0)
245+
f_ModulationOverride = null;
246+
else if (f_ModulationOverride > 127)
247+
f_ModulationOverride = 127;
248+
}
249+
}
250+
188251
private int f_ModulationShift;
189252

190253
[DataMember]

src/mamidimemo/instruments/SoundBase.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,8 +171,16 @@ public virtual void KeyOn()
171171
IsKeyOff = false;
172172
IsSoundOff = false;
173173

174+
if (Timbre.MDS.ModulationOverride != null)
175+
ParentModule.Modulations[NoteOnEvent.Channel] = (byte)Timbre.MDS.ModulationOverride.Value;
176+
if (Timbre.MDS.PitchOverride != null)
177+
ParentModule.Pitchs[NoteOnEvent.Channel] = (ushort)Timbre.MDS.PitchOverride.Value;
178+
if (Timbre.MDS.PanOverride != null)
179+
ParentModule.Panpots[NoteOnEvent.Channel] = (byte)Timbre.MDS.PanOverride.Value;
180+
174181
if (validateMidiControlValue(ParentModule.ModulationDepthes[NoteOnEvent.Channel] + Timbre.MDS.ModulationDepthShift) > 64 ||
175182
validateMidiControlValue(ParentModule.Modulations[NoteOnEvent.Channel] + Timbre.MDS.ModulationShift) > 0)
183+
176184
ModulationEnabled = true;
177185

178186
int ln = ParentManager.GetLastNoteNumber(NoteOnEvent.Channel);

src/mamidimemo/mamidimemo.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1459,6 +1459,9 @@
14591459
<None Include="Samples\YM2608_GM.MAmi">
14601460
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
14611461
</None>
1462+
<None Include="Samples\YM2610B_GM.MAmi">
1463+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
1464+
</None>
14621465
<None Include="Samples\YM2612_GM%28from OPNA%29.MAmi">
14631466
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
14641467
</None>

0 commit comments

Comments
 (0)