Yahoo Groups archive

Casio CZ/ VZ/ FZ - Pro Series

Index last updated: 2026-04-28 22:42 UTC

Thread

Program to convert VZ1 files to sysex

Program to convert VZ1 files to sysex

2012-10-08 by Raul Altoja

"BTW, I made a tiny program for VZ1 to SYX conversion. If anyone's
interested I can upload it."

Please upload the VZ1 to sysex program to the CZ files overflow group: CZ-VZ-Files.  I may have some banks in VZ1 format that I never converted to sysex  Others may have some as well.  It is a shame that Windows XP cannot export patches or banks from the VZ1 program.  (The original programmer did not decide put in the time/effort to update the program).

Thanks for making the conversion program.

Re: [CZsynth] Program to convert VZ1 files to sysex

2012-10-08 by charlie midi gfa

anything for the fz10m?
hurry up we need this one too!

charlie]


----- Original Message ----- 
Show quoted textHide quoted text
From: "Raul Altoja" <raltoja@...>
To: <CZsynth@yahoogroups.com>
Sent: Monday, October 08, 2012 3:57 PM
Subject: [CZsynth] Program to convert VZ1 files to sysex


> "BTW, I made a tiny program for VZ1 to SYX conversion. If anyone's
> interested I can upload it."
>
> Please upload the VZ1 to sysex program to the CZ files overflow group: 
> CZ-VZ-Files.  I may have some banks in VZ1 format that I never converted 
> to sysex  Others may have some as well.  It is a shame that Windows XP 
> cannot export patches or banks from the VZ1 program.  (The original 
> programmer did not decide put in the time/effort to update the program).
>
> Thanks for making the conversion program.
>
>
>
> ------------------------------------
>
> Yahoo! Groups Links
>
>
>
>

Re: [CZsynth] Program to convert VZ1 files to sysex

2012-10-08 by José Ángel Morente

Hi there,

I found the source code but I don't know where is the executable file
(maybe it's in a backup CD or something, I have to search

I will try to compile the source code to have an usable tool.

If anyone wants to compile the program, here goes the source code (standard C):

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define TONES_NO  64;

typedef unsigned char byte;

int main (int argc,char *argv[])
{
	char *inputfilestream;
	char *outputfilestream;
	FILE *inputfile;
	FILE *outputfile;

	byte tonebuf[336];
	byte operbuf[100];

    byte syxopen[8]={
        0xf0, 0x44, 0x03, 0x00, 0x70, 0x70, 0x02, 0xf7
    };
    byte syxdata[6]={
        0xf0, 0x44, 0x03, 0x00, 0x70, 0x74
    };
    byte syxclose[7]={
        0xf0, 0x44, 0x03, 0x00, 0x70, 0x71, 0xf7
    };

    int i,j,checksum=0;

	byte buffer[10];

	if (argc >= 2) {

		inputfilestream = argv[1];
		if (argc > 2) {
            outputfilestream = argv[2];
		} else {
            outputfilestream = malloc(255);
            strcpy(outputfilestream,inputfilestream);
            outputfilestream = strcat(outputfilestream,".syx");
		}

		inputfile = fopen(inputfilestream,"rb");
		outputfile = fopen(outputfilestream, "wb");

        //write OPEN and DATA sysx messages
        fwrite(syxopen,sizeof(syxopen),1,outputfile);
        fwrite(syxdata,sizeof(syxdata),1,outputfile);

        //process the patches
        for (i=0;i<64;i++) {
            fread(tonebuf,sizeof(tonebuf),1,inputfile);
            checksum = 0;
            for (j=0;j<sizeof(tonebuf);j++) {
                //update the checksum
                checksum -= tonebuf[j];

                buffer[1] = tonebuf[j] & 0x0f;
                buffer[0] = tonebuf[j] >> 4;
                fwrite(buffer,2,1,outputfile);
            }
            //ignores the bit 7
            checksum &= 0x7f;
            fwrite(&checksum,1,1,outputfile);

        }
        //process the operations
        for (i=0;i<64;i++) {
            fread(operbuf,sizeof(operbuf),1,inputfile);
            checksum = 0;
            for (j=0;j<sizeof(operbuf);j++) {
                //update the checksum
                checksum -= operbuf[j];

                buffer[1] = operbuf[j] & 0x0f;
                buffer[0] = operbuf[j] >> 4;
                fwrite(buffer,2,1,outputfile);
            }
            //ignores the bit 7
            checksum &= 0x7f;
            fwrite(&checksum,1,1,outputfile);

        }

        buffer[0] = 0xf7;
        fwrite(buffer,1,1,outputfile);
        fwrite(syxclose,sizeof(syxclose),1,outputfile);


		fclose(inputfile);
		fclose(outputfile);
	}
	return 0;
}


--
Show quoted textHide quoted text
On Mon, Oct 8, 2012 at 9:57 PM, Raul Altoja <raltoja@...> wrote:
>
>
>
> "BTW, I made a tiny program for VZ1 to SYX conversion. If anyone's
> interested I can upload it."
>
> Please upload the VZ1 to sysex program to the CZ files overflow group:
> CZ-VZ-Files. I may have some banks in VZ1 format that I never converted to
> sysex Others may have some as well. It is a shame that Windows XP cannot
> export patches or banks from the VZ1 program. (The original programmer did
> not decide put in the time/effort to update the program).
>
> Thanks for making the conversion program.
>
>

Re: [CZsynth] Program to convert VZ1 files to sysex

2012-10-09 by José Ángel Morente

Hi there,

here is the program:

https://docs.google.com/open?id=0B2YAF8t0-U8yeHIxTi1xUkJxXzA

It is for Windows only, sorry for that :-(


--




On Mon, Oct 8, 2012 at 10:01 PM, charlie midi gfa <charles.copp@...
> wrote:

> **
>
>
> anything for the fz10m?
> hurry up we need this one too!
>
> charlie]
>
>
> ----- Original Message -----
> From: "Raul Altoja" <raltoja@...>
> To: <CZsynth@yahoogroups.com>
> Sent: Monday, October 08, 2012 3:57 PM
> Subject: [CZsynth] Program to convert VZ1 files to sysex
>
> > "BTW, I made a tiny program for VZ1 to SYX conversion. If anyone's
> > interested I can upload it."
> >
> > Please upload the VZ1 to sysex program to the CZ files overflow group:
> > CZ-VZ-Files. I may have some banks in VZ1 format that I never converted
> > to sysex Others may have some as well. It is a shame that Windows XP
> > cannot export patches or banks from the VZ1 program. (The original
> > programmer did not decide put in the time/effort to update the program).
> >
> > Thanks for making the conversion program.
> >
> >
> >
> > ------------------------------------
> >
> > Yahoo! Groups Links
> >
> >
> >
> >
>
>  
>


[Non-text portions of this message have been removed]

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.