//	M021 : bqbvZ
option unsigned;

//------------------------------------------------------------------------------//
//																				//
//	bqbvZ																	//
//																				//
//------------------------------------------------------------------------------//
function main()
{
	define	bno, crc;

	_Cls();										//	ʃNA[

	_PrintF("%d, %d, %d, %d\n", _CRC_ITL, _CRC_ITR, _CRC_16L, _CRC_16R);


	bno = _MemAlloc(16);

	_PrintF("ubNNA[\n");
	_ClrMemBlk(bno, 0x12);
	_DumpMemBlk(bno);
	_PrintF("\n");

	_PrintF("--- QoCgɂbqbݒ ---\n");

	_PrintF("CCITT    Cl=0x0000\n");
	crc = _CalcCrc(_CRC_ITL, bno, 0, 14);
	_PutMemBlk(bno, 14, 2, crc);
	_DumpMemBlk(bno);
	_PrintF("\n");

	_PrintF("CCITT    ECl=0xFFFF\n");
	crc = _CalcCrc(_CRC_ITR, bno, 0, 14, 0xFFFF);
	_PutMemBlk(bno, 14, 2, crc);
	_DumpMemBlk(bno);
	_PrintF("\n");

	_PrintF("ANSI-CRC Cl=0xFFFF\n");
	crc = _CalcCrc(_CRC_16L, bno, 0, 14, 0xFFFF);
	_PutMemBlk(bno, 14, 2, crc);
	_DumpMemBlk(bno);
	_PrintF("\n");

	_PrintF("ANSI-CRC ECl=0x0000\n");
	crc = _CalcCrc(_CRC_16R, bno, 0, 14, 0x0000);
	_PutMemBlk(bno, 14, 2, crc);
	_DumpMemBlk(bno);
	_PrintF("\n");

	_PrintF("ANSI-CRC ECl=0x0000CrbNGfBA\n");
	crc = _CalcCrc(_CRC_16R, bno, 0, 14, 0x0000);
	_PutMemBlk(bno, 14, 2, crc, _TRUE);
	
	_DumpMemBlk(bno);
	_PrintF("\n");


	_MemFree(bno);								//	ubN
}
