Ejemplo n.º 1
0
bool bar_decode_ascii(struct barcode *bc)
{
	unsigned char code[BARCODE_ASCII_BYTES];
	int i;
	int bit=0;

	for (i=0; i < BARCODE_ASCII_BYTES; i++)
		if (!decode_symbol(bc->ascii[i], &code[i])) {
			fprintf(stderr, "Decoding `%s' digit %u failed\n",
				bc->ascii, i);
			return false;
		}

	for (i=0; i < sizeof(bc->data); i++)
		bc->data[i] = pull_bits(code, &bit, 8);
	bc->checksum = pull_bits(code, &bit, BARCODE_CHECKSUM_BITS);
	return true;
}
Ejemplo n.º 2
0
int mrg32k5a_init_str( RandomState *s, const char *src, int len )
{
    int ptr = 0;

    mrg32k5a_init( s, 0x1234567, 0x7654321 );

    pull_bits( src, len, &ptr, &s->s10, m1 );
    pull_bits( src, len, &ptr, &s->s11, m1 );
    pull_bits( src, len, &ptr, &s->s12, m1 );
    pull_bits( src, len, &ptr, &s->s13, m1 );
    pull_bits( src, len, &ptr, &s->s14, m1 );

    pull_bits( src, len, &ptr, &s->s20, m2 );
    pull_bits( src, len, &ptr, &s->s21, m2 );
    pull_bits( src, len, &ptr, &s->s22, m2 );
    pull_bits( src, len, &ptr, &s->s23, m2 );
    pull_bits( src, len, &ptr, &s->s24, m2 );
    return ptr;
}