Heya fam! New Hapaxer here, brand new on this forum as well
I have a few toys in my studio, and I would love to have definition files for all of them. Editing the official one seems a bit hard for me as it looks like I should know a bit of programing language - which I officially find hard to get in love with - so maybe you guys can help me with this, as I haven’t found them on the forum. The toys:
- Novation Ultranova
- Roland MC 909
- Yamaha RS7000
- Korg MS2000BR
- Quasimidi Rave-O-Lution
If it’s necessary to make separate posts for each synth, let me know and I’ll do it.
Cheers!
Hey there 
There is no need to program anything in definition files. It’s really just plain text.
You need a text editor, basic midi understanding and some Time to read your gear’s documentation.
Cheers
3 Likes
For two of your instruments (Korg MS2000 and Novation Ultranova) you can find definitions for Squarp’s Pyramid on this forum. The simplest way to get into creating Hapax definitions might be to get those two and modify them to work with your Hapax. That way you can skip the step of going through manuals and parsing the respective Midi implementations. Next, post your finished definitions here to help others. 
I’ve been working on a set of RS7000 definition files. Your post is a good excuse to complete them. creating definitions for synths and drum machines is fairly simple and straightforward. grooveboxes, on the other hand, require some overall design decisions (eg. should Hapax treat the first 8 channels of the rs7000 in DRUM MODE and then have a few separate SYNTH defs for different channels/automations etc.). I don’t own a MC909 but I look forward to comparing it’s definition with the rs7000.
2 Likes
Thanks man! I absolutely got lost in the midi implementation chart for the Yamaha RS7000, and also for the MC909. I think that if I would see the definition for the RS7000 I can try to use the same workflow for MC909 as they are pretty simmilar. Will work on it and share it for a review. I’m really really new to this type of files and still working on understanding where to change the information. Cheers!
1 Like
Are you on Windows or Mac? You should have a text editor app that edits plain text files - files without any formatting. On Mac there’s the builtin TextEdit or the free CotEditor on the App Store.
You’re going to need such an editor to edit at least the OUTPORT and OUTCHAN lines in any definition file you find here.
Within that editor, create a new file, copy this minimal definition into the new window. I’ve omitted all comments to make it look less overwhelming.
VERSION 1
TRACKNAME MS2000
TYPE POLY
OUTPORT A
OUTCHAN 1
INPORT ALLACTIVE
INCHAN NULL
[PC]
[/PC]
[CC]
[/CC]
[ASSIGN]
[/ASSIGN]
[AUTOMATION]
[/AUTOMATION]
[COMMENT]
[/COMMENT]
Edit the OUTPORT according to which Midi out port on your Hapax it is connected to and set OUTCHAN to the MS2000s Midi channel. Next, start adding CC values.
Here’s the Pyramid definition: Korg MS2000 CC definition file
To convert a Pyramid CC list to Hapax format, all you need to do is replace the “:” with an empty space.
5:PORTAMENTO
=>
VERSION 1
TRACKNAME MS2000
TYPE POLY
OUTPORT A
OUTCHAN 1
INPORT ALLACTIVE
INCHAN NULL
[PC]
[/PC]
[CC]
5 PORTAMENTO
[/CC]
[ASSIGN]
[/ASSIGN]
[AUTOMATION]
[/AUTOMATION]
[COMMENT]
[/COMMENT]
So basically you can copy the whole list of CCs, do a search & replace and you’re done if CCs are all you care about. If you’d like to add automation parameters, knob assigments or add a list of your favourite presets to the program change (PC) section, then it’s a good idea to look up how they work because IMO these are personal choices. For most instruments though I only have the I/O header and CC section.
1 Like
Thanks a lot for this buddy, reeeeeaaaally helpful! Have a good one!
I did one for the Roland MC-505 Roland MC-505 Instrument Part Definition.
I think our machines might be of a similar era so perhaps it could be helpful.
DSS
1 Like