1*7dd7cddfSDavid du Colombier #include <u.h>
2*7dd7cddfSDavid du Colombier #include <libc.h>
3*7dd7cddfSDavid du Colombier #include <bio.h>
4*7dd7cddfSDavid du Colombier #include <libg.h>
5*7dd7cddfSDavid du Colombier #include "hdr.h"
6*7dd7cddfSDavid du Colombier #include "../big5.h"
7*7dd7cddfSDavid du Colombier
8*7dd7cddfSDavid du Colombier /*
9*7dd7cddfSDavid du Colombier map: put big5 for runes from..to into chars
10*7dd7cddfSDavid du Colombier */
11*7dd7cddfSDavid du Colombier
12*7dd7cddfSDavid du Colombier void
bmap(int from,int to,long * chars)13*7dd7cddfSDavid du Colombier bmap(int from, int to, long *chars)
14*7dd7cddfSDavid du Colombier {
15*7dd7cddfSDavid du Colombier long *l, *ll;
16*7dd7cddfSDavid du Colombier int k, k1, n;
17*7dd7cddfSDavid du Colombier
18*7dd7cddfSDavid du Colombier for(n = from; n <= to; n++)
19*7dd7cddfSDavid du Colombier chars[n-from] = 0;
20*7dd7cddfSDavid du Colombier for(l = tabbig5, ll = tabbig5+BIG5MAX; l < ll; l++)
21*7dd7cddfSDavid du Colombier if((*l >= from) && (*l <= to))
22*7dd7cddfSDavid du Colombier chars[*l-from] = l-tabbig5;
23*7dd7cddfSDavid du Colombier k = 0;
24*7dd7cddfSDavid du Colombier k1 = 0; /* not necessary; just shuts ken up */
25*7dd7cddfSDavid du Colombier for(n = from; n <= to; n++)
26*7dd7cddfSDavid du Colombier if(chars[n-from] == 0){
27*7dd7cddfSDavid du Colombier k++;
28*7dd7cddfSDavid du Colombier k1 = n;
29*7dd7cddfSDavid du Colombier }
30*7dd7cddfSDavid du Colombier if(k){
31*7dd7cddfSDavid du Colombier fprint(2, "%s: %d/%d chars found (missing include 0x%x=%d)\n", argv0, (to-from+1-k), to-from+1, k1, k1);
32*7dd7cddfSDavid du Colombier /*exits("map problem");/**/
33*7dd7cddfSDavid du Colombier }
34*7dd7cddfSDavid du Colombier }
35