function [XX,YY]=plotspec(X,SR,N,FM)
% [XX,YY] = plotspec(X, SR, N, FM)            Plot the magnitude spectrum of X.
%	Use an N-point fft (defaults to 1024) and treat the maximum 
%	frequency as SR (defaults to 2pi). Only display frequencies up
%	to FM (defaults to SR/2)
%	XX and YY output the spectrum ; plot(XX,YY) reproduces it.
% dpwe 1994jun21.  Uses dB.m and built-ins 'fft', 'plot'.  After plotiir.m

% handle optional args
if(exist('SR')==0)
  SR = 2*pi;
end
if(exist('N')==0)
  N = 1024;
end
if(exist('FM')==0)
  FM = SR/2;
end

spec = fft(X, N)/N;

ff = (0:(N-1))*SR/N;
xx = 1:(N*FM/SR);
%plot(ff(xx),dB(spec(xx)));
xxx=ff(xx);
yyy=max(-100, 20*log10(abs(spec(xx))));
plot(xxx,yyy);

if nargout > 0
  XX = xxx;
  YY = yyy;
end
