#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include "libpasori.h"
#include "libpasori_command.h"

int
main(int argc, char **argv){
	pasori* p;
	felica* f;
	int i;
	int wk, wk2;
	uint8 b[16];
	
	char* devpath = NULL;
	if (argc == 2) {
		devpath = argv[1];
	}
	p = pasori_open(devpath);
	if(!p){
		printf("error\n");
		exit(-1);
	}
	pasori_init(p);
	sleep(1);
	f = felica_polling(p,0x0003,0,0);
	if (f) {
	printf("*** Suica Value ***\n");
	i=0;
		while(!felica_read_without_encryption02(f,0x090f,0,i,b)){
			printf("[%02d] : ",i);
			printf("%02X ",b[0]);
			printf("%02X ",b[1]);
			printf("%02X",b[2]);
			printf("%02X ",b[3]);
			wk=b[4]>>1;
			wk=wk&0x7F;
			printf("%02d/",wk);
			wk=b[4]&0x01;
			wk=wk<<3;
			wk2=b[5]>>5;
			wk2=wk2&0x07;
			wk=wk+wk2;
			printf("%02d/",wk);
			wk=b[5]&0x1F;
			printf("%02d ",wk);
			printf("%02X-%02X -> ",b[6],b[7]);
			printf("%02X-%02X      ",b[8],b[9]);
			printf("  % 6d Yen        ",b[11]*256+b[10]);
			printf("%02X%02X%02X%02X\n",b[12],b[13],b[14],b[15]);
		i++;
	}
	free(f);
	}
	pasori_close(p);
	return 0;
}


syntax highlighted by Code2HTML, v. 0.9.1