Reload Frameset Home German Pages

EMU48 Programs:
Some useful utils not only for musicians using MIDI devices

Contents:

  1. Introduction
  2. Moonphase
  3. MIDI Utils
  4. Yamaha XG Utils
  5. Korg 168 Utils

1. Introduction:

At this page you can find several useful programs programmed by me, which should run on every HP48 S/SX/G/GX (also emulated with EMU48). Except of 'Moonphase', these are MIDI utils for musicians, who need to calculate MIDI data like 'Nibblized MIDI data', combined MIDI data entries MSB/LSB, tune values for XG synths or the CC/Channel combinations of the 617 MIDI parameters of a Korg 168 RC to remote this console by Control-Change messages.

All utils have been programmed in a way, that wrong data entries will cause error messages, which show the valid data range of the particular util. Additionally the choosen data entry will be shown in the result too - therefore they should be quite easy to use.

Hint for EMU48-Newbees:
At page Easy EMU48 you can find a very easy to install pre-configured "Werners GX" already including all of my programs purchased at this page. If you use this quick installation, you won't need to download the programs below separately too.

  Back to the top 

2. Moonphase

Three little utils to calculate phase and age of the moon.

Preview of MPHASE:

Preview MPHASE

This program was originally developed by Dan Gerson and later improved by Arnold Moy (program 'MOON 2'). I've just added the ability to calculate phase and age of the moon now for any date and time from 15. Oct 1582 (the first day of the Gregorical calendar) up to future days, also I made this program 6x multilingual (English, German, French, Spain, Portuguise, Italian).

MPHASE calculates the phase of the moon, showing the result in form of a graphical 'virtual moon'.
MTIME calculates the age of the moon (in days/minutes/seconds) and the illuminated moon area (in percent).
MFRAC calculates the age of the moon and the illuminated moon area (both as factors from 0-1).

Important:
To reach exact results, you first need to store in variable TMZN (Time Zone) the time difference in hours of your town to UTC (former: GMT)!

Installation:
Load this object (menu Edit/Load Object) to level 1 and store it using name 'MOON'.

Installation:
Start download of 'MOON' (ZIP; 15 kB):

Start download of 'MOON'

  Back to the top 

3. MIDI Utils

Six little utils to calculate values of MIDI parameters.

Preview MIDI programs

XMLD (X > MSB/LSB dec):
Converts a decimal value in level 1 (0 - 16,383 dec) into two MIDI bytes (MSB and LSB) in decimal form - useful for several RPN or NRPN MIDI commands.

XMLH (X > MSB/LSB hex):
Converts a decimal value in level 1 (0 - 16,383 dec) into two MIDI bytes (MSB and LSB) in hexadecimal form - useful for some XG SysEx effect parameters.

NIB2 (X > 2 Nibbles):
Converts a decimal value in level 1 (0 - 255 dec) into two MIDI nibbles in hexadecimal form - useful for the XG SysEx command PART DETUNE.

NIB4 (X > 4 Nibbles)
Converts a decimal value in level 1 (0 - 65,535 dec) into four MIDI nibbles in hexadecimal form - useful for the XG SysEx command XG MASTER TUNE.

FUBY (X > Full Byte):
Converts a decimal value in level 1 (0 - 255 dec = Full Byte) into the hexadecimal form.

MIBY (X > MIDI Byte):
Converts a decimal value in level 1 (0 - 127 dec = MIDI Byte) into the hexadecimal form.

Installation:
Load this object (menu Edit/Load Object) to level 1 and store it using name 'MIDI'.

Start download of 'MIDI' (ZIP; 2.9 kB):

Start download of 'MIDI'

  Back to the top 

4. Yamaha XG Utils

Three little utils to calculate XG tuning parameter values.

Preview XG programs

TUNE (XG Master Tune):
Converts a decimal value in level 1 (-102.4 to +102.3 Cent) into the four hexadecimal MIDI nibbles 0W,0X,0Y,0Z used by the XG SysEx MIDI command XG MASTER TUNE to define the Master Tune in relation to A1=440 Hz.

DETU (XG Part Detune):
Converts a decimal value in level 1 (-12.8 to +12.7 Hz) into the two hexadecimal MIDI nibbles 0Y,0Z used by the XG SysEx MIDI command XG PART DETUNE to vary the Part Tune of Multipart NN in relation to XG MASTER TUNE.

CENT:
Calculates the difference in Cent of the frequency in level 1 to the frequency in level 2 with an accuracy of 1/100 Cent.
This can be helpful to get senseful values for the XG SysEx MIDI commands XG MASTER TUNE or the SCALE TUNING settings of a Multipart.
Example 1:
You want to detune your XG Synth from 440 Hz to 435 Hz, a tune that was often used in acient times.
First enter 400, then 435 and evaluate program CENT: the result will be -19.79 Cent.
So you'll need value -19.8 for command XG MASTER TUNE to reach a tune of A1=435 Hz.
Example 2:
You want to change the SCALE TUNING settings of a (normally well tempered) Multipart to reach a (approximated) 'Pure C major accord'.
A) The 'pure Quinte' (G1) to C1 (130,81278 Hz at A1=440Hz) has frequency 130,81278*1,5=196,21917 Hz, but the 'well tempered G1' has only 195,99772 Hz (view reference table 10 at my pages XG Programming). The searched value for SCALE TUNING G is +2 Cent (type: 195,99772 ENTER 196,21917 ENTER CENT).
B) The 'pure Terz' (E1) to C1 (130,81278 Hz at A1=440Hz) has frequency 130,81278*5/4=163,51598 Hz, but the 'well tempered E1' has 164,81378 Hz. The searched value for SCALE TUNING E is -14 Cent (type: 164,81378 ENTER 163,51598 ENTER CENT).

Installation:
Load this object (menu Edit/Load Object) to level 1 and store it using name 'XG'.

Start download of 'XG' (ZIP; 1 kB):

Start download of 'XG'

  Back to the top 

5. Korg 168 Utils

Preview:

Preview Korg 168 programs

Two programs (PARA1 and PARA2) to calculate the used CC number/MIDI channel of the 617 MIDI parameters of a Korg 168 RC Soundlink in MIDI-mode 'Stand Alone 2', where Control Change messages at various MIDI channels are used to remote this digital console. Note: A listing with the parameter numbers of the 617 remotable functions of the Korg 168 can be found in the appendix of the user manual.

PARA1 (Parameter with Type=1) should be used, if item 'Type' of the Korg's MIDI Setup Menu is switched to Type=1. In this mode the CC numbers #0-#95 will be used at 7 MIDI channels (RX to RX+7).
PARA2 (Parameter with Type=2) should be used, if item 'Type' of the Korg's MIDI Setup Menu is switched to Type=2. In this mode only 79 of the CC numbers #0-#95 will be used at 8 MIDI channels (RX to RX+8), skipping the most frequently used MIDI controllers like Volume, Pan, Bank Select MSB/LSB and other more (in detail: #CC 0, 1, 2, 4, 7, 10, 11, 32-34, 36, 43, 64-67 and 84). This mode can be useful while using a further MIDI device connected to MIDI THRU of the Korg 168 to remote both devices simultaneously at the same PC MIDI-Out port.

Important for both programs:
The used MIDI channels depend on setting 'RX base ch' in menu MIDI Setup of the Korg 168 (by default=1). Therefore by default the channels 1-7 (with Type=1) or 1-8 (with Type=2) will be used. If you have set-up another receive base channel (RX) at your Korg 168 (max. 10 with Type=1; max. 9 with Type=2), you first have to store this value in variable RX before proceeding these programs.
Hints for HP48 newbees:
1. To simply store for example value 9 in variable RX, click: '9' 'LeftShift' 'RX'.
2. Clicking on 'RX' will show it's current value in level 1.

Installation:
Load this object (menu Edit/Load Object) to level 1 and store it using name 'K168'.

Start download of 'K168' (ZIP; 1.3 kB):

Start download of 'K168'

Back to the top

Back to Home

C/O 2002-2012: Werner Ogrodnik (Cologne, Germany)