#!/usr/bin/perl -w

$fortune = "/usr/games/fortune";
$sfile = "/home/jhsu/public/fortune/anime";
$ifile = "/home/jhsu/public/fortune/anime.dat";

$headerSize = 24;
open(IFILE, $ifile);
GetStats();
RetrieveQuote(<>);
close(IFILE);

sub GetStats {
    # load index
    read(IFILE,$buf,24);
    ($ver, $num)=unpack("NN",$buf);
}

sub RetrieveQuote {
    my ($idx) = @_;

    $idx = $idx % $num;

    if ($idx == $num-1) {
	$adj = 0;
    } else {
	$adj = 2;
    }

    seek(IFILE,$headerSize+$idx*4,0);
    read(IFILE,$buf,8);
    ($ptr,$nptr)=unpack("NN",$buf);
    open(SFILE,$sfile);
    seek(SFILE,$ptr,0);
    read(SFILE,$buf,$nptr-$ptr-$adj);
    close(SFILE);
    print ($buf);
}
