Freeware on Music

This page contains the source code for the main function

Return to freeware page

Carnatic Music Hme Page

--------------------------

#include"menu7.c"
#include"settings.c"
#include"playback.c"
#include"record.c"
#include"edit.c"
#include"help.c"

getname(row,col,p,str1)
int row,col;
char *p,*str1;
{
	int i=0,k,tab=1,len;
	char str[30];
	char *s;
	size(6,7);
	len=strlen(str1);
	while(1)
	{
		if(mouseinit!=0)
			showms_ptr();
		gotoxy(col+i+1,row+1);
		getkey();
		if(ascii==27 || ((ascii==13) && i==0) || ((button==1) && (xgrid>=320 && xgrid<=392) && ygrid==112 ))
		{
			size(32,0);
			if(button==1)
			{
				if(mouseinit!=0)
					hidemsptr();

				menubox(14,40,15,52,112,NO_SHADOW);
				menubox(14,41,14,50,32,NO_SHADOW);
				writestring("Cancel",14,43,47);
				delay(150);
				menubox(14,40,15,52,112,NO_SHADOW);
				menubox(14,40,15,51,32,HALF_SHADOW);
				writestring("Cancel",14,42,32);
				delay(50);
			}
			return(ESC);
		}
		if(i==0 && button==0)
			menubox(11,21,12,56,47,HALF_SHADOW);
		if(((ascii==13 || i>8) && button==0) || (button==1 && (xgrid>=208 && xgrid<=264) && ygrid==112))
		{
			if(button==1)
			{
				if(mouseinit!=0)
					hidemsptr();

				menubox(14,26,15,35,112,NO_SHADOW);
				menubox(14,27,14,34,32,NO_SHADOW);
				writestring("Ok",14,30,47);
				delay(150);
				menubox(14,26,15,35,112,NO_SHADOW);
				menubox(14,26,15,35,32,HALF_SHADOW);
				writestring("Ok",14,29,32);
				delay(75);
			}
			if(tab==3)
			{
				return(ESC);
			}
			if(i>8)
			{
				errormesg(4,5);
				button=0;
				i=0;
				ascii=0;
				menubox(11,21,12,56,47,HALF_SHADOW);
				size(6,7);
			}
			else if(button==0)
				break;
			if(button==1 && i==0)
				return(ESC);
			else if(button==1 && i>0)
				break;
		}
		else if(ascii=='\b' &&  button==0)
		{
			if(i!=0)
			{
				i--;
				writechar(row,col+i,' ',47);
			}
		}
		else if(isascii(ascii) && !iscntrl(ascii) && button==0 && (isdigit(ascii) || isalpha(ascii)) && tab==1)
		{
			str[i]=toupper(ascii);
			writechar(row,col+i,ascii,47);
			i++;
			if(isdigit(str[0]))
			{
				errormesg(2,3);
				i=0;
				menubox(11,21,12,56,47,HALF_SHADOW);
				size(6,7);
			}
		}
		else if(ascii==9)
		{
			tab++;
			if(tab>3)
				tab=1;
			if(tab==1)
			{
				if(mouseinit!=0)
					hidemsptr();

				size(6,7);
				writestring(str1,9,38-len/2,127);
				menubox(11,21,12,56,47,HALF_SHADOW);
				menubox(14,26,15,35,32,HALF_SHADOW);
				writestring("O",14,29,46);
				writestring("k",14,30,43);
				menubox(14,40,15,51,32,HALF_SHADOW);
				writestring("Cancel",14,42,32);
			}
			else if(tab==2)
			{
				if(mouseinit!=0)
					hidemsptr();

				size(32,0);
				writestring(str1,9,38-len/2,112);
				menubox(14,26,15,35,32,HALF_SHADOW);
				writestring("Ok",14,29,47);
				menubox(14,40,15,51,32,HALF_SHADOW);
				writestring("Cancel",14,42,32);
			}
			else if(tab==3)
			{
				if(mouseinit!=0)
					hidemsptr();

				menubox(14,26,15,35,32,HALF_SHADOW);
				writestring("Ok",14,29,32);
				menubox(14,40,15,51,32,HALF_SHADOW);
				writestring("Cancel",14,42,47);
			}
		}
	}
	if(i>0)
	{
		str[i]='\0';
		strcat(str,".SNG");
		strcpy(p,str);
	}
	size(32,0);
	if(mouseinit!=0)
		hidemsptr();

	return(0);
}

ask_name(str,aname,str1)
char *str,*aname,*str1;
{
	int area,esc_flag,len;
	char *p,currentdir[31];
	area=(17-7+1)*(62-17+1)*2;
	p=malloc(area);
	if(p==NULL)
	{
		errormesg(0,10);
	}
	if(mouseinit!=0)
		hidemsptr();
	savevideo(7,17,17,62,p);
	menubox(7,17,17,62,112,7);
	drawbox(7,17,16,60,112);
	len=strlen(str1);
	writestring(str1,7,38-len/2,127);
	len=strlen(str);
	writestring(str,9,38-len/2,127);
	menubox(11,21,12,56,47,HALF_SHADOW);

	menubox(14,26,15,35,32,HALF_SHADOW);
	writestring("O",14,29,46);
	writestring("k",14,30,43);
	menubox(14,40,15,51,32,HALF_SHADOW);
	writestring("Cancel",14,42,32);
	if(mouseinit!=0)
		showms_ptr();

	esc_flag=getname(11,22,aname,str);
	size(32,0);
	if(mouseinit!=0)
		hidemsptr();
	restorevideo(7,17,17,62,p);
	free(p);
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}

/* displays Record menu,receives choice and branches control to appropriate function*/
recordfun()
{
	int rchoice, flag,esc_flag=0,dulln=0;
	char fname[30];
	if(mouseinit!=0)
		hidemsptr();
	writestring(mainmenu[0],0,2,32);
	if(mouseinit!=0)
		showms_ptr();
	if(load==1)
		dulln=1;
	rchoice=popupmenuv(recordmenu,6,1,0,"NOSACX",1,24,144,16,56,dulln);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	switch(rchoice)
	{
		case 0:
			writestring(mainmenu[0],0,2,112);
			break;
		case 1:
			writestring(mainmenu[0],0,2,112);
			if(notedisp==0 && load==0)
				new();
			else
			{
				closefun();
				new();
			}
			break;
		case 2:
			writestring(mainmenu[0],0,2,112);
			if(notedisp==0 && load==0)
			{
				openfun();
			}
			else
			{
				closefun();
				openfun();
			}
			break;
		case 3:
			writestring(mainmenu[0],0,2,112);
			if(load==0 && saved==NO && notedisp==1)
				save();
			break;
		case 4:
			writestring(mainmenu[0],0,2,112);
			if(load==0 && notedisp==1)
				saveasfun();
			break;
		case 5:
			writestring(mainmenu[0],0,2,112);
			if(load==1 || notedisp==1)
				closefun();
			break;
		case 6:
			writestring(mainmenu[0],0,2,112);
			if(load==1 || notedisp==1)
				closefun();
			fclose(filpoint);
			size(6,7);
			if(mouseinit!=0)
				hidemsptr();
			clrscr();
			exit(0);
			break;
		case 75:/*left arrow key */
			writestring(mainmenu[0],0,2,112);
			writestring(mainmenu[4],0,52,32);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
		case 77:/* right arrow key */
			writestring(mainmenu[0],0,2,112);
			writestring(mainmenu[1],0,15,32);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 128:
			writestring(mainmenu[0],0,2,112);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 216:
			writestring(mainmenu[0],0,2,112);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 336:
			writestring(mainmenu[0],0,2,112);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
		case 424:
			writestring(mainmenu[0],0,2,112);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
	}
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}

editfun()
{
	int echoice,esc_flag,dulln=0;
	if(mouseinit!=0)
		hidemsptr();
	writestring(mainmenu[1],0,15,32);
	if(mouseinit!=0)
		showms_ptr();
	if(select!=1 || notedisp==0 || load==1)
		dulln=1;
	echoice=popupmenuv(editmenu,6,1,13,"SCPLTM",2,128,256,16,56,dulln);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	switch(echoice)
	{
		case 0:
			writestring(mainmenu[1],0,15,112);
			break;
		case 1:
			writestring(mainmenu[1],0,15,112);
			if(notedisp==1 && load==0)
				selectfun();
			break;
		case 2:
			writestring(mainmenu[1],0,15,112);
			if(select==1 && notedisp==1 && load==0 && cut==0 && copy==0)
				copyfun();
			break;
		case 3:
			writestring(mainmenu[1],0,15,112);
			if((copy==1 || cut==1) && notedisp==1 && load==0)
				pastefun();
			break;
		case 4:
			writestring(mainmenu[1],0,15,112);
			if(select==1 && notedisp==1 && load==0)
				clearfun();
			break;
		case 5:
			writestring(mainmenu[1],0,15,112);
			if(select==1 && notedisp==1 && load==0 && cut==0 && copy==0)
				cutfun();
			break;
		case 6:
			writestring(mainmenu[1],0,15,112);
			if(notedisp==0 && load==0)
			{
				mergefun();
			}
			else
			{
				closefun();
				mergefun();
			}
			break;
		case 75:
			writestring(mainmenu[1],0,15,112);
			writestring(mainmenu[0],0,2,32);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;
		case 77:
			writestring(mainmenu[1],0,15,112);
			writestring(mainmenu[2],0,26,32);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 24:
			writestring(mainmenu[1],0,15,112);
			writestring(mainmenu[0],0,2,32);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;
		case 216:
			writestring(mainmenu[1],0,15,112);
			writestring(mainmenu[2],0,26,32);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 336:
			writestring(mainmenu[1],0,15,112);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
		case 424:
			writestring(mainmenu[1],0,15,112);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
	}
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}

settingfun()
{
	int schoice,esc_flag=0,dulln=0;
	if(mouseinit!=0)
		hidemsptr();
	writestring(mainmenu[2],0,26,32);
	if(mouseinit!=0)
		showms_ptr();
	if(load==1 || notedisp==0)
		dulln=1;
	schoice=popupmenuv(settmenu,5,1,24,"VRAHW",3,216,376,16,48,dulln);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	switch(schoice)
	{
		case 0:
			writestring(mainmenu[2],0,26,112);
			break;
		case 1:
			writestring(mainmenu[2],0,26,112);
			volumefun();
			break;
		case 2:
			writestring(mainmenu[2],0,26,112);
			if(notedisp==1 && load==0)
				persistfun();
			break;
		case 3:
			writestring(mainmenu[2],0,26,112);
			if(notedisp==1 && load==0)
				pausefun();
			break;
		case 4:
			writestring(mainmenu[2],0,26,112);
			if(notedisp==1 && load==0)
			{
				pnoteval+=pnoteval;
				if(pnoteval>=64)
					pnoteval=64;
			}
			break;
		case 5:
			writestring(mainmenu[2],0,26,112);
			if(notedisp==1 && load==0)
			{
				pnoteval-=(pnoteval/2);
				if(pnoteval<=0)
					pnoteval=1;
			}
			break;
		case 75:
			writestring(mainmenu[2],0,26,112);
			writestring(mainmenu[1],0,15,32);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 77:
			writestring(mainmenu[2],0,26,112);
			writestring(mainmenu[3],0,41,32);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
		case 24:
			writestring(mainmenu[2],0,26,112);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;
		case 128:
			writestring(mainmenu[2],0,26,112);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 336:
			writestring(mainmenu[2],0,26,112);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
		case 424:
			writestring(mainmenu[2],0,26,112);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
	}
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}


playfun()
{
	int pchoice,esc_flag=0,dulln=0;
	if(mouseinit!=0)
		hidemsptr();
	writestring(mainmenu[3],0,41,32);
	if(mouseinit!=0)
		showms_ptr();
	if(notedisp==1 && load==0)
		dulln=1;
	else if(load!=1)
		dulln=1;
	pchoice=popupmenuv(playmenu,4,1,39,"LFBC",4,336,456,16,40,dulln);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	switch(pchoice)
	{
		case 0:
			writestring(mainmenu[3],0,41,112);
			break;
		case 1:
			writestring(mainmenu[3],0,41,112);
			if(notedisp==0 && load==0)
				loadfun();
			else if(notedisp==1 && load==0)
			{
				closefun();
				loadfun();
			}
			break;
		case 2:
			writestring(mainmenu[3],0,41,112);
			if(load==1)
			{
				playforwfun();
			}
			break;
		case 3:
			writestring(mainmenu[3],0,41,112);
			if(load==1)
				playbacwfun();
			break;
		case 4:
			writestring(mainmenu[3],0,41,112);
			if(load==0 && notedisp==0)
				plybckcontin();
			else
			{
				closefun();
				plybckcontin();
			}
			break;
		case 75:
			writestring(mainmenu[3],0,41,112);
			writestring(mainmenu[2],0,26,32);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 77:
			writestring(mainmenu[3],0,41,112);
			writestring(mainmenu[4],0,52,32);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
		case 24:
			writestring(mainmenu[3],0,41,112);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;
		case 128:
			writestring(mainmenu[3],0,41,112);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 216:
			writestring(mainmenu[3],0,41,112);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 424:
			writestring(mainmenu[3],0,41,112);
			esc_flag=helpfun();
			writestring(mainmenu[4],0,52,112);
			break;
	}
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}

helpfun()
{
	int hchoice,esc_flag=0;
	if(mouseinit!=0)
		hidemsptr();
	writestring(mainmenu[4],0,52,32);
	if(mouseinit!=0)
		showms_ptr();
	hchoice=popupmenuv(helpmenu,1,1,47,"A",5,400,592,16,16);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	switch(hchoice)
	{
		case 0:
			writestring(mainmenu[4],0,52,112);
			break;
		case 1:
			scan=0;
			writestring(mainmenu[4],0,52,112);
			about();
			if(mouseinit!=0)
				showms_ptr();
			break;
		case 75:
			writestring(mainmenu[4],0,52,112);
			writestring(mainmenu[3],0,41,32);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
		case 77:
			writestring(mainmenu[4],0,52,112);
			writestring(mainmenu[0],0,2,32);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;

		case 24:
			writestring(mainmenu[4],0,52,112);
			esc_flag=recordfun();
			writestring(mainmenu[0],0,2,112);
			break;
		case 128:
			writestring(mainmenu[4],0,52,112);
			esc_flag=editfun();
			writestring(mainmenu[1],0,15,112);
			break;
		case 216:
			writestring(mainmenu[4],0,52,112);
			esc_flag=settingfun();
			writestring(mainmenu[2],0,26,112);
			break;
		case 336:
			writestring(mainmenu[4],0,52,112);
			esc_flag=playfun();
			writestring(mainmenu[3],0,41,112);
			break;
	}
	if(mouseinit!=0)
		showms_ptr();
	return(esc_flag);
}

mainmenufun()
{
	int mchoice,esc_flag=0;
	displaymenuh(mainmenu,5);
	if(mouseinit!=0)
		hidemsptr();
	mchoice=getresponseh(mainmenu,"RESPH",5);
	status_line();
	if(mouseinit!=0)
		hidemsptr();
	if(button==0)
	{
		switch(mchoice)
		{
			case 1:
				esc_flag=recordfun();
				break;
			case 2:
				esc_flag=editfun();
				break;
			case 3:
				esc_flag=settingfun();
				break;
			case 4:
				esc_flag=playfun();
				break;
			case 5:
				esc_flag=helpfun();
				break;
			case ESC:
				esc_flag=ESC;
		}
	}
	else if(button==1 && (ygrid==0))
	{
		if(mouseinit!=0)
			hidemsptr();
		if(xgrid>=24 && xgrid<=64)
		{
			esc_flag=recordfun();
		}
		else if(xgrid>=128 && xgrid<=152)
		{
			esc_flag=editfun();
		}
		else if(xgrid>=216 && xgrid<=272)
		{
			esc_flag=settingfun();
		}
		else if(xgrid>=336 && xgrid<=360)
		{
			esc_flag=playfun();
		}
		else if(xgrid>=424 && xgrid<=448)
		{
			esc_flag=helpfun();
		}
	}
	if(mouseinit!=0)
		hidemsptr();
	if(esc_flag==ESC)
		return(esc_flag);
	return(esc_flag);
}

void main()
{
	char noteptr[10],pitchptr[10],persistptr[10],pauseptr[10];
	#ifdef  MA
	{
		vid_mem=(char far *)0xb0000000L;
		textmode(7);
	}
	#else
	{
		vid_mem=(char far *)0xb8000000L;
		textmode(3);

	}
	#endif
	clrscr();
	initmouse();
	if(mouseinit!=0)
		hidemsptr();
	workscreen();
	displaymenuh(mainmenu,5);
	note.persist=50;
	note.pause=1;
	note.valnote=1;
	new();
	if(mouseinit!=0)
		showms_ptr();
	while(1)
	{
		ascii=0;
		scan=0;
		if(mouseinit!=0)
			showms_ptr();
		getkey();
		if(mouseinit!=0)
		{
			xgridpres=xgrid;
			ygridpres=ygrid;
		}
		if(ascii==0 && button==0)
		{
			switch(scan)
			{
				case 59: /* F1 key */
					if(mouseinit!=0)
						hidemsptr();

					if(notedisp!=0 && load==0)
						displayhelp(60);
					else
					{
						writestring(mainmenu[4],0,52,32);
						helpfun();
						writestring(mainmenu[4],0,52,112);
					}
					break;
				case 35:// Alt-H
					if(mouseinit!=0)
						hidemsptr();
					helpfun();
					break;
				case 60: /* F2 key */
					if(saved==NO && load==0 && notedisp==1)
						save();
					break;
				case 25: /* Alt-P */
					if(mouseinit!=0)
						hidemsptr();

					writestring(mainmenu[3],0,41,32);
					playfun();
					writestring(mainmenu[3],0,41,112);
					break;
				case 31: /* Alt-S */
					if(mouseinit!=0)
						hidemsptr();
					writestring(mainmenu[2],0,26,32);
					settingfun();
					writestring(mainmenu[2],0,26,112);
					break;
				case 18: /* Alt-E */
					if(mouseinit!=0)
						hidemsptr();
					writestring(mainmenu[1],0,15,32);
					editfun();
					writestring(mainmenu[1],0,15,112);
					break;
				case 19: /* Alt-R */
					if(mouseinit!=0)
						hidemsptr();
					/* highlight the menu item */
					writestring(mainmenu[0],0,2,32);
					/* call file services */
					recordfun();
					/* make highlighted item normal */
					writestring(mainmenu[0],0,2,112);
					break;
				case 68: // F10 key
					mainmenufun();
					if(mouseinit!=0)
						showms_ptr();
					break;
				case 50:// Alt-M
					if(mouseinit!=0)
						hidemsptr();
					if(notedisp!=1 && load==0)
						mergefun();
					else
					{
						closefun();
						mergefun();
					}
					break;
				case 46:// Alt-C
					closefun();
					break;
				case 45:// Alt-X
					if(notedisp==1 && saved==NO && load==0)
						check_saved();
					fclose(filpoint);
					remove(filespec);
					free(disparea);
					size(6,7);
					if(mouseinit!=0)
						hidemsptr();
					clrscr();
					exit(0);
				case 93:/* Shift F10 */
					scan=0;
					about();
					break;
				case 22:
					pnoteval+=pnoteval;
					if(pnoteval>=64)
						pnoteval=64;
					break;
				case 17:
					pnoteval-=(pnoteval/2);
					if(pnoteval<=0)
						pnoteval=1;
					break;
				case 72:
				case 80:
					volumefun();
					break;
			}
		}
		else if(ascii==0 && button==1 && ygrid==0)
		{
			if(xgrid>=24 && xgrid<=64)
			{
				recordfun();
				writestring(mainmenu[0],0,2,112);
			}
			else if(xgrid>=128 && xgrid<=152)
			{
				editfun();
				writestring(mainmenu[1],0,15,112);
			}
			else if(xgrid>=216 && xgrid<=272)
			{
				settingfun();
				writestring(mainmenu[2],0,26,112);
			}
			else if(xgrid>=336 && xgrid<=360)
			{
				playfun();
				writestring(mainmenu[3],0,41,112);
			}
			else if(xgrid>=424 && xgrid<=448)
			{
				helpfun();
				writestring(mainmenu[4],0,52,112);
			}
		}
		else if(ascii!=0 && notedisp==1 && load==0 && button==0)
		{
			switch(ascii)
			{
				case 90:
				case 122:
					noteval=0;
					break;
				case 83:
				case 115:
					noteval=1;
					break;
				case 88:
				case 120:
					noteval=2;
					break;
				case 68:
				case 100:
					noteval=3;
					break;
				case 67:
				case 99:
					noteval=4;
					break;
				case 86:
				case 118:
					noteval=5;
					break;
				case 71:
				case 103:
					noteval=6;
					break;
				case 66:
				case 98:
					noteval=7;
					break;
				case 72:
				case 104:
					noteval=8;
					break;
				case 78:
				case 110:
					noteval=9;
					break;
				case 74:
				case 106:
					noteval=10;
					break;
				case 77:
				case 109:
					noteval=11;
					break;
				case 44:
					noteval=12;
					break;
				default:
					nosound();
			}
			if(ascii==90 || ascii==122 || ascii==83 || ascii==115 || ascii==88 || ascii==120 || ascii==68 || ascii==100 || ascii==67 || ascii==99 || ascii==86 || ascii==118 || ascii==71 || ascii==103 || ascii==66 || ascii==98 || ascii==72 || ascii==104 || ascii==78 || ascii==110 || ascii==74 || ascii==106 || ascii==77 || ascii==109 || ascii==44)
			{
				sound(octave[noteval]*pnoteval+volume);
				delay(note.persist);
				nosound();
				if(note.pause>0)
					delay(note.pause);
				++notes;
				note.valnote=octave[noteval]*pnoteval;
				sprintf(noteptr,"%10.0f",notes);
				writestring(noteptr,9,38,112);
				writestring(swara[noteval],10,46,112);
				sprintf(pitchptr,"%10.1f",volume);
				writestring(pitchptr,11,38,112);
				sprintf(persistptr,"%10u",note.persist);
				writestring(persistptr,12,38,112);
				sprintf(pauseptr,"%10u",note.pause);
				writestring(pauseptr,13,38,112);
				fwrite(¬e, sizeof(note),1,filpoint);
				saved=NO;
			}
		}
	}
}