Developers can modify the RI by adding or modifying the reference implementation code and using the ROMizer tool. RI consists of .java and C source files. The core VM is written in C programming language with the remainder of the API and supported implementation written in the Java programming language. The ROMizer tool converts the class files into C code (often called the ROM mask or simply the mask). Then all C source code is compiled to an executable to generate the custom RI.See the Development Kit documentation for a description of and procedures for building a custom RI.