
- #KORG PA MANAGER VR PORTABLE#
- #KORG PA MANAGER VR SOFTWARE#
- #KORG PA MANAGER VR CODE#
- #KORG PA MANAGER VR PROFESSIONAL#
Fortunately, this allowed me to avoid the longest and most tedious part of the task.Īs soon as I finished this work, I tried to generate my first Visual Studio 2008 (a very long step from VS6). Obviously this cannot be accomplished entirely with an automatic system, so I had to check each CMakeList.txt generated and modify them when needed. Such a program is made up of two components: one is a parser of a Visual Studio 6 project, and the other is a “CMake persiter” that can serialize the project into a CMakeLists.txt according to CMake syntax. If CMake worked well for Pa3X, it would work for the rest of our products that being the case, I started to convert all our old projects to CMakeLists.txt.ĭue to the huge number of projects and their configuration parameters, I decided to develop a program that can explore the root of our sources and create a CMakeLists.txt for each VS6 project found. This product is ideal for testing the capability of CMake being the top level of its series, the build system of Pa3X is the most complex project within our product line.
#KORG PA MANAGER VR PROFESSIONAL#
Its cross-compilation support and ability to generate native projects for several build systems, makes CMake the ideal build candidate.Īfter an “investigative phase,” I dove into implementation.Īt that time we were developing the Pa3X: the arranger flagship among the Pa Series (Pa is an acronym for Professional Arranger).
#KORG PA MANAGER VR SOFTWARE#
This additional work always discouraged us from changing or upgrading the IDE, so we started investigating a different ways of managing our whole software product line.

This way we could use Visual Studio to build both the emulated version and the target one.Īs you can imagine, the “hook” program is very complex and requires modification every time the team needs to change the IDE or the tool-chain.
#KORG PA MANAGER VR CODE#
Furthermore, debugging the code on Windows is much easier than doing it on a custom hardware.īefore using CMake, a colleague of mine devised a sort of “hook” that was able to catch the commands between Visual Studio 6 and its compiler, and translate them in order to redirect them to the specific tool-chain of the target. This effort allows us to run our OS in an emulated environment on a host Windows machine, so we can develop and debug almost all of our code without needing to use a real hardware target.
#KORG PA MANAGER VR PORTABLE#
We have always put a lot of effort into writing easily portable code.

In particular, I’m a member of the software development team where we develop a proprietary, real-time OS.


We develop the whole instrument, from the embedded hardware design to the production of sounds. First, let me briefly explain the way we work and the tools we use. Such an approach to electronic and software technologies led us to CMake and so we started thinking whether it would be a good replacement for our old build system and work-flow. Its mission is very clear: use the latest technologies to create the finest electronic musical instruments and allow musicians to sound their very best. It was founded in 1996 as a subsidiary company of Korg Inc. Korg Italy, the company where I work, is the leader in the production of electronic musical instruments.
