xref: /csrg-svn/usr.bin/pascal/libpc/CARD.c (revision 2996)
11641Smckusick /* Copyright (c) 1979 Regents of the University of California */
21641Smckusick 
3*2996Smckusic static char sccsid[] = "@(#)CARD.c 1.2 03/07/81";
41641Smckusick 
51641Smckusick char _cntbl[] = {
61641Smckusick 	0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4,
71641Smckusick 	1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
81641Smckusick 	1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
91641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
101641Smckusick 	1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
111641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
121641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
131641Smckusick 	3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
141641Smckusick 	1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
151641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
161641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
171641Smckusick 	3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
181641Smckusick 	2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
191641Smckusick 	3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
201641Smckusick 	3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
211641Smckusick 	4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8
221641Smckusick 	};
231641Smckusick 
24*2996Smckusic long
25*2996Smckusic CARD(setptr, siz)
261641Smckusick 
271641Smckusick 	register unsigned char	*setptr;
28*2996Smckusic 	long		siz;
291641Smckusick {
301641Smckusick 	register int	cnt;
31*2996Smckusic 	register int	size = siz;
321641Smckusick 
331641Smckusick 	cnt = 0;
341641Smckusick 	do {
351641Smckusick 		cnt += _cntbl[*setptr++];
361641Smckusick 	} while (--size);
371641Smckusick 	return cnt;
381641Smckusick }
39