function colea(filename,Srate1)
% Copyright (c) 1995 by Philipos C. Loizou
%
%clf reset
if (nargin < 1)
[pth,fname] = dlgopen('open','*.ils;*.wav');
if ((~isstr(fname)) | ~min(size(fname))), return; end
filename=[pth,fname];
end
pos = get(0, 'screensize'); % get the screensize
sWi = pos(3);
sHe = pos(4);
WIDTH =round(0.9375*sWi);
HEIGHT =round(0.48*sHe) ;
LEFT =round(0.025*sWi);
BOTTOM =round(0.767*sHe);
LPCSpec = 1; % if 0 display FFT, else LPC spectrum
TIME=1; % if 0 display spectrogram, else time waveform
WAV1=0; % If 1, then it is a .wav file with 8 bits/sample
CLR=1; % If 1 display spectrogram in color, else in gray scale
TWOFILES=0; % If 1, then display two files
wav(1)=0; wav(2)=0; % Used in case of dual-displays for 1-byte samples, as in WAV
upFreq=1.0; % Upper frequency (percentage of Srate/2) in spectrogram
upFreq2=1.0; % Upper frequency in spectrogram (1.0=Srate/2)
FIX_SCALE=-1; % if > 0, then channel y-axis is always 0-15 dB
SHOW_CRS=1; % if 1, show cursor lines, else dont
SHOW_CHN=1; % if 1, show channel output/LPC display
PREEMPH=1; % if 1, do pre-emphasis when computing the spectrogram
LPC_ONLY=0; % if 1, only the LPC specrtrum is displayed
lpcParam(1)=1; % if 1, use hamming window in LPC analysis, else use rectangular
lpcParam(2)=0; % if 1, first-order pre-emphasis in LPC analysis, else dont
% NOTE: this pre-emphasis is done in addition to the CIS pre-emphasis
lpcParam(3)=-1; % if 1, enhance spectral peaks in LPC analysis
fft_par(1)=1; % if 1, use lines when plotting FFT, else use pickets
NAR_BAND=0; % if 1, display narrowband spectrograms
SPEC_EXP=0.25; % Used in spectrogram display (root compression)
FILT_TYPE='broad'; % the filter type
VOL_MAX=0; % used for controling the volume
VOL_NORM=1; % if 1, then volume is normalized
fp = fopen(filename,'r');
if fp <=0
disp('ERROR! File not found..')
return;
end
ftype='short'; bpsa=2; % bytes per sample
ftype2='short'; bpsa2=1;
ind1=find(filename == '.');
if length(ind1)>1, ind=ind1(length(ind1)); else, ind=ind1; end;
ext = lower(filename(ind+1:length(filename)));
global filename
[HDRSIZE, xSrate, bpsa, ftype] = gethdr(fp,ext);
if xSrate==0, return;
else Srate=xSrate; end;
if strcmp(ftype,'ascii')
x=fscanf(fp,'%f',inf);
else
x = fread(fp,inf,ftype);
end
fclose(fp);
if Srate<6000 | Srate>45000 & nargin<2
h=warndlg('Sampling rate not in the range: 10,000 < F < 45,000 . Setting it to 10,000 Hz.','WARNING!');
disp('Warning! Sampling rate not in the range: 6,000 < F < 45,000');
disp('...Setting it to the default value of 10,000 Hz.');
Srate=10000;
end
x= x - mean(x); %----------remove the DC bias----
if (nargin==2)
Srate = str2num(Srate1);
if Srate<10000 | Srate>45000
error('Invalid sampling frequency specified: 10,000<F<45,000');
end
end
MAX_AM=2048; % This allows 12-bit resolution
mx=max(x);
agcsc=MAX_AM/mx;
n_samples = length(x);
n_Secs = n_samples/Srate;
Dur=10.0; % Duration in msec of window
S1=n_samples;
S0=0;
Be=S0;
En=S1;
OVRL=1; % if 1 then hold off plots, else hold on plots in 'pllpc'
fprintf('Samp.Freq: %d Hz, num.samples: %d (%4.2f secs)\n',Srate,n_samples,n_Secs);
fno = figure('Units', 'Pixels', 'Position', [LEFT BOTTOM WIDTH HEIGHT],...
'WindowButtonDownFcn','mclick','Pointer','crosshair',...
'Resize','on','Name',filename,'NumberTitle','Off',...
'Menubar','None','WindowButtonMotionFcn','showpt',...
'KeyPressFcn','getkb');
%------------ deterime the dimensions of the axis ------------
le=round(0.2*WIDTH);
bo=round(0.174*HEIGHT);
wi=round(0.773*WIDTH);
he=round(0.739*HEIGHT);
AXISLOC = [le bo wi he];
cAxes = axes('Units','Pixels','Position',AXISLOC);
axes(cAxes);
%----------------- Define Filterbank Characteristics---------
fftSize=512;
nChannels =6;
LowFreq =300;
UpperFreq =5500;
range=log10(UpperFreq/LowFreq);
interval=range/nChannels;
for i=1:nChannels % ----- Figure out the center frequencies for all channels
upper1(i)=LowFreq*10^(interval*i);
lower1(i)=LowFreq*10^(interval*(i-1));
center(i)=0.5*(upper1(i)+lower1(i));
end
%-------------- Design the Butterworth filter------------
nOrd=6;
FS=Srate/2;
if FS<upper1(nChannels), useHigh=1;
else useHigh=0;
end
for i=1:nChannels
W1=[lower1(i)/FS, upper1(i)/FS];
if i==nChannels
if useHigh==0
[b,a]=butter(3,W1);
else
[b,a]=butter(6,W1(1),'high');
end
else
[b,a]=butter(3,W1);
end
filterB(i,1:nOrd+1)=b; %-----> Save the coefficients 'b'
filterA(i,1:nOrd+1)=a; %-----> Save the coefficients 'a'
end
%----------------------------------------------------------
global fno Srate n_Secs filename AXISLOC nLPC HDRSIZE
global nChannels fftSize filterWeights UpperFreq LowFreq ChanpUp
global center LPCSpec SpecUp Dur DurUp filterA filterB S1 S0
global HDRSIZE cAxes En Be TIME centSMSP Asmsp Bsmsp OVRL WAV1 CLR
global TWOFILES wav agcsc MAX_AM upFreq upFreq2 FIX_SCALE
global SHOW_CRS SHOW_CHN ftype ftype2 bpsa bpsa2 PREEMPH LPC_ONLY
global lpcParam fft_par NAR_BAND SPEC_EXP FILT_TYPE VOL_MAX
global VOL_NORM
Et=1000*n_samples/Srate;
xax=0:1000/Srate:(Et-1000/Srate);
plot(xax,x)
xlabel('Time (msecs)');
ylabel('Amplitude');
%set(gca,'Units','points','FontSize',9);
if min(x)<-1000 | mx >1000
axis([0 Et min(x)-200 max(x)+200]);
else
axis([0 Et min(x) max(x)]);
end
xywh = get(fno, 'Position');
axi=AXISLOC;
% Buttons.
left = 10;
wide = 80;
top = xywh(4) - 10;
high = 22;
high=22;
if 9*(22+8) > xywh(4), high=17; end;
inc = high + 8;
%---------- Display the slider and the push-buttons-------------
sli = uicontrol('Style','slider','min',0,'max',1000','Callback',...
'getslide','Position',[axi(1) axi(2)+axi(4)+2 axi(3) 12]);
global sli n_samples
Zin = uicontrol('Style', 'PushButton', 'Callback','zoomi(''in'')', ...
'HorizontalAlign','center', 'String', 'Zoom In',...
'Position', [left top-high wide high]);
top = top - inc;
Zout = uicontrol('Style', 'PushButton', 'Callback','zoomi(''out'')', ...
'HorizontalAlign','center', 'String', 'Zoom Out',...
'Position', [left top-high wide high]);
if Srate>12000
nLPC=14;
else
nLPC=12; % initialize LPC order
end
top = top - inc-20;
uicontrol('Style','Frame','Position',[left top-high-10 wide+5 high+30],...
'BackgroundColor','b');
uicontrol('Style','text','Position',[left+wide/3 top 40 high-3],'BackGroundColor','b',...
'HorizontalAlignment','left','ForeGroundColor','w','String','Play');
plUp = uicontrol('Style', 'PushButton', 'Callback', 'playf(''all'')', ...
'HorizontalAlign','center', 'String', 'all',...
'Position', [left top-high wide/2 high]);
uicontrol('Style', 'PushButton', 'Callback', 'playf(''sel'')', ...
'HorizontalAlign','center', 'String', 'sel',...
'Position', [left+wide/2+5 top-high wide/2 high]);
top = top - inc-10;
ChanpUp = uicontrol('Style', 'Popup', 'Callback', 'setchan', ...
'HorizontalAlign','center', 'String', ['# Channels | 3 | 4 | 5 | 6 | 7 | 8 | 10 | 12 | 14 | 16 | 18 | 20'],...
'Position', [left top-high wide high]);
top = top - inc;
DurUp = uicontrol('Style', 'Popup', 'Callback', 'setdur', ...
'HorizontalAlign','center', 'String', ['Duration | 10 ms | 20 ms | 30 ms | In samples | 64 | 128 | 256 | 512'],...
'Position', [left top-high wide high]);
top = top - inc;
uicontrol('Style', 'PushB', 'Callback', 'quitall',...
'HorizontalAlign','center', 'String', 'Quit', ...
'Position', [left top-high wide high]);
%top=top-inc;
%sliB = uicontrol('Style','slider','min',-1,'max',1','Callback',...
% 'getcontr','Position', [left top-high wide high]);
%global sliB
%---Draw the squares in case its TWOFILES
wwi=xywh(3); whe=xywh(4);
tpc=uicontrol('Style','text','Position',[wwi-10 2*whe/3+10 10 10],'String',' ','BackGroundColor',[0 0 0]);
boc=uicontrol('Style','text','Position',[wwi-10 whe/3-10 10 10],'String',' ','BackGroundColor',[0 0 0]);
global tpc boc
global smp frq
%----Draw the time and freq numbers----------
smp=uicontrol('Style','text','Position',[10 30 wide+10 15],'BackGroundColor',[0 0 0],...
'HorizontalAlignment','left');
frq=uicontrol('Style','text','Position',[10 10 wide+10 15],'BackGroundColor',[0 0 0],...
'HorizontalAlignment','left');
%
%-------------------------MENUS---------------------------------
%
% uimenu(fed,'Label','Upsample','CallBack','editool(''upsample'')');
ff=uimenu('Label','File');
uimenu(ff,'Label','&Load and stack','Callback','loadfile(''stack'')');
uimenu(ff,'Label','Load and &replace','Callback','loadfile(''replace'')');
uimenu(ff,'Label','&Save whole file','Callback','savefile(''whole'')','Separator','on');
uimenu(ff,'Label','Sa&ve selected region','Callback','savefile(''seg'')');
uimenu(ff,'Label','Insert file at cursor','CallBack','editool(''insfile'')','Separator','on');
uimenu(ff,'Label','File utility','Callback','filetool');
uimenu(ff,'Label','Print-Landscape','Callback','cprint(''landscape'',''printer'')','Separator','on');
uimenu(ff,'Label','Print-Portrait','Callback','cprint(''portrait'',''printer'')');
fprf=uimenu(ff,'Label','Print to file ...');
uimenu(fprf,'Label','Postscript','Callback','cprint(''landscape'',''eps'')');
%uimenu(fprf,'Label','Windows metafile','Callback','cprint(''landscape'',''meta'')');
uimenu(ff,'Label','Exit','CallBack','quitall','Separator','on');
fed=uimenu('Label','Edit');
uimenu(fed,'Label','Cut','CallBack','editool(''cut'')');
uimenu(fed,'Label','Copy','CallBack','editool(''copy'')');
uimenu(fed,'Label','Paste','CallBack','editool(''paste'')');
global fed
fd=uimenu('Label','Display');
uimenu(fd,'Label','Time Waveform','Callback','setdisp(''time'')');
fd0= uimenu(fd,'Label','Spectrogram');
uimenu(fd0,'Callback','setdisp(''spec'',''clr'')',...
'Label','Color');
uimenu(fd0,'Callback','setdisp(''spec'',''noclr'')',...
'Label','Gray Scale');
uimenu(fd0,'Callback','setdisp(''spec'',''4khz'')',...
'Label','0-4 kHz');
uimenu(fd0,'Callback','setdisp(''spec'',''5khz'')',...
'Label','0-5 kHz');
uimenu(fd0,'Callback','setdisp(''spec'',''full'')',...
'Label','Full Range');
fd01=uimenu(fd0,'Label','Preferences');
preUp=uimenu(fd01,'Label','Preemphasis','Checked','on',...
'Callback','prefer(''preemp'')');
fd02=uimenu(fd01,'Label','Window Size');
defUp=uimenu(fd02,'Label','Default','Checked','on',...
'Callback','prefer(''win_default'')');
w64Up=uimenu(fd02,'Label','64 pts','Checked','off',...
'Callback','prefer(''win_64'')');
w128Up=uimenu(fd02,'Label','128 pts','Checked','off',...
'Callback','prefer(''win_128'')');
w256Up=uimenu(fd02,'Label','256 pts','Checked','off',...
'Callback','prefer(''win_256'')');
w512Up=uimenu(fd02,'Label','512 pts','Checked','off',...
'Callback','prefer(''win_512'')');
fd03=uimenu(fd01,'Label','Update frame size');
uimenu(fd03,'Label','Default','Callback','prefer(''upd_default'')');
uimenu(fd03,'Label','8 pts','Callback','prefer(''upd_8'')');
uimenu(fd03,'Label','16 pts','Callback','prefer(''upd_16'')');
uimenu(fd03,'Label','32 pts','Callback','prefer(''upd_32'')');
uimenu(fd03,'Label','64 pts','Callback','prefer(''upd_64'')');
fd04=uimenu(fd01,'Label','Formant enhancement');
uimenu(fd04,'Label','Default','Callback','prefer(''enh_default'')');
uimenu(fd04,'Label','0.3','Callback','prefer(''enh_3'')');
uimenu(fd04,'Label','0.4','Callback','prefer(''enh_4'')');
uimenu(fd04,'Label','0.5','Callback','prefer(''enh_5'')');
uimenu(fd04,'Label','0.6','Callback','prefer(''enh_6'')');
narUp=uimenu(fd01,'Label','Narrowband','Callback','prefer(''narrow'')');
global preUp defUp w64Up w128Up w256Up w512Up narUp
uimenu(fd,'Label','Single Window','Callback','setdisp(''single'')');
uimenu(fd,'Label','Blow Up','Callback','setdisp(''blow'')');
fd1=uimenu(fd,'Label','Filters');
fd2=uimenu(fd1,'Label','CIS filters');
uimenu(fd2,'Label','Linear Scale','Callback','vfilter(1)');
uimenu(fd2,'Label','Log Scale','Callback','vfilter(2)');
uimenu(fd2,'Label','Show center freqs','Callback','vfilter(6)');
uimenu(fd1,'Label','Vienna filter','Callback','vfilter(3)');
uimenu(fd1,'Label','SMSP filter','Callback','vfilter(4)');
uimenu(fd1,'Label','Ineraid filter','Callback','vfilter(5)');
uimenu(fd,'Label','Energy Plot','Callback','engy');
fdf0=uimenu(fd,'Label','F0 contour');
uimenu(fdf0,'Label','Autocorrelation approach','Callback','estf0(''autocor'')');
uimenu(fdf0,'Label','Cepstrum approach','Callback','estf0(''cepstrum'')');
uimenu(fd,'Label','Glottal flow','Callback','glottal');
uimenu(fd,'Label','Formant track','Callback','ftrack(''plot'')');
uimenu(fd,'Label','Power Spectral Density','Callback','estpsd');
fd2=uimenu(fd,'Label','Preferences');
crsUp=uimenu(fd2,'Label',' Show Cursor Lines','Checked','on',...
'Callback','prefer(''crs'')');
chnUp=uimenu(fd2,'Label',' Show LPC-Channel Outputs Window','Checked','on',...
'Callback','prefer(''chn'')');
lpcUp=uimenu(fd2,'Label',' Show only LPC spectrum','Checked','off',...
'Callback','setovr(''lpconly'')');
chnlpUp=uimenu(fd2,'Label',' Show LPC and channel outputs','Checked','on',...
'Callback','setovr(''lpc_chan'')');
filUp=uimenu(fd2,'Label',' Filter type');
fbrd=uimenu(filUp,'Label','Broadband','Checked','on',...
'Callback','prefer(''broad'')');
fnar=uimenu(filUp,'Label','Narrowband','Checked','off',...
'Callback','prefer(''narrfil'')');
global crsUp chnUp lpcUp chnlpUp fbrd fnar
fa=uimenu('Label','Analog','Callback','analog(''noLPF'')');
%fpu=uimenu('Label','Pulsatile');
% uimenu(fpu,'Label','300 pps','Callback','pulse(300)');
% uimenu(fpu,'Label','800 pps','Callback','pulse(800)');
% uimenu(fpu,'Label','1100 pps','Callback','pulse(1100)');
fpa=uimenu('Label','Analysis');
uimenu(fpa,'Label','300 pps','Callback','analysis(300)');
% uimenu(fpa,'Label','500 pps','Callback','analysis(500)');
uimenu(fpa,'Label','800 pps','Callback','analysis(800)');
uimenu(fpa,'Label','1100 pps','Callback','analysis(1100)');
uimenu(fpa,'Label','1400 pps','Callback','analysis(1400)');
% uimenu(fpa,'Label','1700 pps','Callback','analysis(1700)');
fty=uimenu('Label','Type');
fty1=uimenu(fty,'Label','F0/F1/F2');
uimenu(fty1,'Label','Freqs.','Callback','f0f1f2(''freq'')');
uimenu(fty1,'Label','Ampl.','Callback','f0f1f2(''ampl'')');
uimenu(fty,'Label','MPEAK','Callback','mpeak');
uimenu(fty,'Label','SMSP','Callback','smsp');
uimenu(fty,'Label','House/3M','Callback','house','Separator','On');
uimenu(fty,'Label','Vienna/3M','Callback','vienna');
uimenu(fty,'Label','Buzz/Hiss','Callback','bhiss');
fty1=uimenu(fty,'Label','Shannon','Separator','on');
uimenu(fty1,'Label','2 Channels','Callback',...
'shannon(2)');
uimenu(fty1,'Label','3 Channels','Callback',...
'shannon(3)');
uimenu(fty1,'Label','4 Channels','Callback',...
'shannon(4)');
uimenu(fty1,'Label','# CIS Channels','Callback',...
'shannon(5)');
uimenu(fty1,'Label','# CIS Channels+Flip','Callback',...
'shannon(5,''flip'')');
uimenu(fty1,'Label','# CIS Channels+Noise','Callback',...
'shans(5)');
fty2=uimenu(fty1,'Label','Preferences');
uimenu(fty2,'Label','Show filters','Callback','vfiltsha');
shW=uimenu(fty2,'Label','Show channel outputs','Callback','setovr(''shanwin'')');
global shW
uimenu(fty,'Label','Ineraid','Callback','ineraid');
ftlo=uimenu(fty,'Label','Loizou');
uimenu(ftlo,'Label',' 64 pts','Callback','loizou(''64'')');
uimenu(ftlo,'Label','128 pts','Callback','loizou(''128'')');
ftco=uimenu(ftlo,'Label','Linear compression');
uimenu(ftco,'Label','3 dB','Callback','loizouc(''pow1'',''10^(3/20)'')');
uimenu(ftco,'Label','6 dB','Callback','loizouc(''pow1'',''10^(6/20)'')');
uimenu(ftco,'Label','9 dB','Callback','loizouc(''pow1'',''10^(9/20)'')');
uimenu(ftco,'Label','15 dB','Callback','loizouc(''pow1'',''10^(15/20)'')');
uimenu(ftco,'Label','25 dB','Callback','loizouc(''pow1'',''10^(25/20)'')');
uimenu(ftlo,'Label','Flip Loizou','Callback','loizud(''128'',''flip'')');
%uimenu(ftlo,'Label','Rand Loizou','Callback','loizud(''128'',''rand'')');
uimenu(ftlo,'Label','Loizou-5-6 ch','Callback','loizud(''128'',''poor'')');
uimenu(ftlo,'Label','test','Callback','loi2(''128'')');
%uimenu(ftlo,'Label','128 pts+Interp','Callback','loizou(''interp'')');
%uimenu(fty,'Label','New','Callback','loinew(''128'')');
%uimenu(fty,'Label','Hamming','Callback','loizou2(''128'')');
uimenu(fty,'Label','B-Plomp','Callback','plomp');
fti=uimenu(fty,'Label','Insertions');
uimenu(fti,'Label','Normal','Callback','loitest(''normal'')');
uimenu(fti,'Label','22 mm','Callback','loitest(''actual'',''5_22'')');
uimenu(fti,'Label','23 mm','Callback','loitest(''actual'',''5_23'')');
uimenu(fti,'Label','24 mm','Callback','loitest(''actual'',''5_24'')');
uimenu(fti,'Label','25 mm','Callback','loitest(''actual'',''5_25'')');
fts=uimenu(ftlo,'Label','SMSP');
uimenu(fts,'Label','64 pts','Callback','loismsp(''64'')');
uimenu(fts,'Label','128 pts','Callback','loismsp(''128'')');
uimenu(fts,'Label','6x8','Callback','loinm(''128'',''norm'',''6'')');
uimenu(fts,'Label','5x8','Callback','loinm(''128'',''norm'',''5'')');
uimenu(fts,'Label','4x8','Callback','loinm(''128'',''norm'',''4'')');
uimenu(fts,'Label','3x8','Callback','loinm(''128'',''norm'',''3'')');
uimenu(fts,'Label','2x8','Callback','loinm(''128'',''norm'',''2'')');
uimenu(fts,'Label','Actual loc','Callback','loismsp(''128'',''act'')');
%uimenu(ftlo,'Label','CIS-LPC','Callback','loilpc(''64'')');
ftb=uimenu(ftlo,'Label','CIS4');
uimenu(ftb,'Label','64 pts','Callback','loiz4(''64'')');
uimenu(ftb,'Label','128 pts','Callback','loiz4(''128'')');
uimenu(ftlo,'Label','CIS5-match-filters','Callback','loiz5(''128'')');
uimenu(ftb,'Label','128+Virtual','Callback','loiz4(''128'',''virt2'')');
fta=uimenu(ftlo,'Label','Actual location');
uimenu(fta,'Label','6 channels','Callback','loizou(''actual'',''6'')');
uimenu(fta,'Label','5 channels-22mm','Callback','loizou(''actual'',''5_22'')');
uimenu(fta,'Label','5 channels-25mm','Callback','loizou(''actual'',''5_25'')');
%ftab=uimenu(ftlo,'Label','Blake W.');
% uimenu(ftab,'Label','Normal','Callback','blake(''128'',''normal'')');
% uimenu(ftab,'Label','Shifted','Callback','blake(''128'',''5_22'')');
ftlon=uimenu(fty,'Label','Formant shifter');
uimenu(ftlon,'Label',' +800 Hz','Callback','loizn(''800'')');
uimenu(ftlon,'Label',' +1000 Hz','Callback','loizn(''1000'')');
uimenu(ftlon,'Label',' +1200 Hz','Callback','loizn(''1200'')');
uimenu(ftlon,'Label',' +1400 Hz','Callback','loizn(''1400'')');
uimenu(ftlon,'Label',' +1800 Hz','Callback','loizn(''1800'')');
uimenu(ftlon,'Label',' +2000 Hz','Callback','loizn(''2000'')');
uimenu(ftlon,'Label',' +3000 Hz','Callback','loizn(''3000'')');
fv1=uimenu('Label','Record','CallBack','getrec');
fm1=uimenu('Label','Tools');
uimenu(fm1,'Label','Zero','CallBack','modify(''zero'')');
fm2=uimenu(fm1,'Label','Amplify/Attenuate');
uimenu(fm2,'Label','X2','CallBack','modify(''multi2'')');
uimenu(fm2,'Label','X0.5','CallBack','modify(''multi05'')');
uimenu(fm1,'Label','Insert silence','CallBack','iadsil');
fm3=uimenu(fm1,'Label','Noise (SCN)','Callback','modify(''scn'')');
uimenu(fm1,'Label','Gaussian Noise','CallBack','isnr(''gaussian'')');
uimenu(fm1,'Label','Spectrally-shaped Noise','CallBack','isnr(''spec'')');
uimenu(fm1,'Label','Filter Tool','Callback','filtool');
uimenu(fm1,'Label','Sine wave generator','Callback','sintool');
uimenu(fm1,'Label','Label tool','Callback','labtool');
uimenu(fm1,'Label','Comparison tool','Callback','distool');
uimenu(fm1,'Label','Volume control','Callback','voltool');
uimenu('Label','Help','Callback','helpf(''colea'')');
%-----------Initialize handles to cursor lines ------------
np=3; Ylim=get(gca,'YLim');
hl=line('Xdata',[np np],'Ydata',Ylim,'Linestyle','-',...
'color',[0 0 0],'Erasemode','xor');
hr=line('Xdata',[np np],'Ydata',Ylim,'Linestyle','--',...
'color',[0 0 0],'Erasemode','xor');
doit=0;
global hl hr doit
%wAxes = axes('Units','Pixels','Position',[0 0 WIDTH HEIGHT],...
% 'Visible','off');
%axes(wAxes);
%hll=line('Xdata',[0.3 0.3],'Ydata',[0.05 0.1],'Linestyle','-',...
% 'color','r','Erasemode','xor');
%global hll wAxes
%
%
%hbot=uicontrol('Style','text','Position',[10 10 wide+10 15],'BackGroundColor',[0 0 0],...
% 'HorizontalAlignment','left');
%global htop hbot