Greg Fox

Author Homepage:

Send e-mail to this Author

The latest version - FastReport VCL 2022.2 - includes:

  • Support for Delphi 7-XE8, C++Builder 2005-XE8, Embarcadero Rad Studio 11 and Lazarus
  • Extended interactive functionality
  • Connection to 20+ databases
  • Export in 45 Data Formats
  • 40 types of bar codes
  • Support for 48 Languages
  • Cloud service integration

Author Products

Total 1 product

Ramugen v.2

Components > Effects and Multimedia > Audio

By Greg Fox.

Freeware + source 26 Jun 2007


TRamugenClass is a free component for Borland Delphi which greatly assists in the programming of MIDI-OUT applications. It was designed originally to assist with the writing of a stochastic engine called Ramugen (Random Music Generator) but is just as applicable to the writing of any type of MIDI-OUT application.

It is not intended to be used to write sequencers, as it wouldn't help with MIDI-FILE operations or MIDI-IN handling.

It's very useful if you want to make *algorithmic* music.

The component itself defines the data-space and variable types for most common musical attributes and handles all the code needed to quickly use them.

Elements handled include Pitch, Duration, Amplitude, Articulation, Transposition Factor and Hand Emulation (move locally or by interval). Chords are generated by default up to 6-note polyphony with no coding (or unlimited with minor coding, ie. your own variables) and can be generated by pitch-selection or by interval-selection (with in-depth weighting system).

Full Delphi 7 EXE demo project included. To compile in earlier versions of Delphi, just ignore the new properties. Users of Delphi 2 and 3 will need to remove the overloaded functions in order to compile the component. If you can't work out how to do this (just remove the whole function that throws the error up : it's only a frill.) contact author. Now contains a further two components: TRamugenPreset is a shorn-down version of Ramugen with just the bare bones, and TMidiArray is a useful tool for working with musical phrases in Delphi. Ramugen now includes a TMidiArray as part of its functionality. TMidiArray handles musical phrases, with methods like AddNote, Reverse, Invert, Transpose, Shuffle, PlayPhrase, etc. All the timer-handling is done for you - you just feed it the note-events and then tell it to start playing. Ramugen and TMidiArray now come with their own sets of events including note on/off, phrase on/off, engine start/stop. Full support is available via the website, including a full breakdown of the properties and methods.


  • Status: Fully functional
  • Source: Included
  • Size: 1 367kB

Platforms: D4, D5, D6, D7