76a77,414
> /************/
> 
> typedef struct xTT_Glyph_Cache_ {
> 
>   TT_Error  error;
>   TT_Glyph  glyph;
>   TT_UShort index;
>   TT_UShort flags;
> 
>   struct xTT_Glyph_Cache_ * l;
>   struct xTT_Glyph_Cache_ * r;
> 
> } xTT_Glyph_Cache;
> 
> typedef struct xTT_Instance_Object_ {
> 
>   TT_Face     face;
>   TT_Instance instance;
> 
>   xTT_Glyph_Cache * head;
> 
> } xTT_Instance_Object;
> 
> typedef struct xTT_Instance_ {
> 
>   xTT_Instance_Object * instance;
> 
> } xTT_Instance;
> 
> typedef struct xTT_Outline_Object_ {
> 
>   TT_Outline outline;
>   TT_BBox    bbox;
> 
> } xTT_Outline_Object;
> 
> typedef struct xTT_Outline_ {
> 
>   xTT_Outline_Object * outline;
> 
> } xTT_Outline;
> 
> typedef struct xTT_Glyph_Object_ {
> 
>   TT_Glyph * glyph;
> 
>   xTT_Outline_Object outline;
> 
> } xTT_Glyph_Object;
> 
> typedef struct xTT_Glyph_ {
> 
>   xTT_Glyph_Object * glyph;
> 
> } xTT_Glyph;
> 
> TT_Error
> xTT_Glyph_Cache_Find ( xTT_Instance instance,
> 		       xTT_Glyph glyph,
> 		       TT_UShort glyphIndex,
> 		       TT_UShort loadFlags )
> {
>   xTT_Glyph_Cache  * node;
>   xTT_Glyph_Cache ** inode = &instance.instance->head;
> 
>   int miss = 0;
> 
>   while ( 1 )
>   {
>     if (*inode == 0) 
>     {
>       miss = 1;
> 
>       node = *inode = calloc(1,sizeof(**inode));
> 
>       if (node == 0)
> 	return TT_Err_Out_Of_Memory;
> 
>       node->error = TT_New_Glyph(instance.instance->face,&(node->glyph));
> 
>       if (node->error == 0)
> 	node->error = TT_Load_Glyph(instance.instance->instance,
> 				    node->glyph,
> 				    (node->index = glyphIndex),
> 				    (node->flags = loadFlags));
> 
>       if (node->error != 0)
> 	TT_Done_Glyph(node->glyph);
>     } 
>     else 
>     {
>       node = *inode;
>     }
> 
>     if (glyphIndex < node->index)
>       inode = &node->l;
>     else if (glyphIndex > node->index)
>       inode = &node->r;
>     else if (loadFlags < node->flags)
>       inode = &node->l;
>     else if (loadFlags > node->flags)
>       inode = &node->r;
>     else
>     {
>       static int count [] = { 0, 0 };
>       ++count[miss];
>       printf("\r(%s | hit %d | miss %d)",__TIME__,count[0],count[1]);
>       glyph.glyph->glyph = &node->glyph;
>       return node->error;
>     }
>   }
> }
> 
> void
> xTT_Glyph_Cache_Free ( xTT_Glyph_Cache ** pnode )
> {
>   xTT_Glyph_Cache * node;
> 
>   if (pnode == 0)
>     return;
> 
>   node = *pnode;
> 
>   if (node == 0)
>     return;
> 
>   if (node->l)
>     xTT_Glyph_Cache_Free(&node->l);
> 
>   if (node->r)
>     xTT_Glyph_Cache_Free(&node->r);
> 
>   TT_Done_Glyph(node->glyph);
>   free(node);
> 
>   *pnode = 0;
> }
> 
> TT_Error
> xTT_New_Instance ( TT_Face face,
> 		   xTT_Instance * instance )
> {
>   instance->instance = calloc(1,sizeof(*instance->instance));
>   if (instance->instance == 0)
>     return TT_Err_Out_Of_Memory;
> 
>   instance->instance->face = face;
>   instance->instance->head = 0;
> 
>   return TT_New_Instance(face,&instance->instance->instance);
> }
> 
> TT_Error
> xTT_Done_Instance ( xTT_Instance instance )
> {
>   TT_Error error;
> 
>   xTT_Glyph_Cache_Free(&instance.instance->head);
>   error = TT_Done_Instance(instance.instance->instance);
> 
>   free(instance.instance);
> 
>   return error;
> }
> 
> TT_Error
> xTT_Get_Instance_Metrics ( xTT_Instance instance,
> 			   TT_Instance_Metrics * imetrics )
> {
>   return TT_Get_Instance_Metrics(instance.instance->instance,imetrics);
> }
> 
> TT_Error
> xTT_Set_Instance_CharSize ( xTT_Instance instance,
> 			    TT_F26Dot6 charsize )
> {
>   xTT_Glyph_Cache_Free(&instance.instance->head);
>   return TT_Set_Instance_CharSize(instance.instance->instance,charsize);
> }
> 
> TT_Error
> xTT_Set_Instance_PixelSizes ( xTT_Instance instance,
> 			      TT_UShort pixelWidth,
> 			      TT_UShort pixelHeight,
> 			      TT_F26Dot6 pointSize )
> {
>   xTT_Glyph_Cache_Free(&instance.instance->head);
>   return TT_Set_Instance_PixelSizes(instance.instance->instance,
> 				    pixelWidth,
> 				    pixelHeight,
> 				    pointSize);
> }
> 
> TT_Error
> xTT_Set_Instance_Transform_Flags ( xTT_Instance instance, 
> 				   TT_Bool rotated,
> 				   TT_Bool stretched )
> {
>   xTT_Glyph_Cache_Free(&instance.instance->head);
>   return TT_Set_Instance_Resolutions(instance.instance->instance,
> 				     rotated,
> 				     stretched);
> }
> 
> TT_Error
> xTT_Set_Instance_Resolutions ( xTT_Instance instance,
> 			       TT_UShort xResolution,
> 			       TT_UShort yResolution )
> {
>   xTT_Glyph_Cache_Free(&instance.instance->head);
>   return TT_Set_Instance_Resolutions(instance.instance->instance,
> 				     xResolution,
> 				     yResolution);
> }
> 
> TT_Error
> xTT_New_Glyph ( TT_Face face,
> 		xTT_Glyph * glyph )
> {
>   glyph->glyph = calloc(1,sizeof(*glyph->glyph));
>   if (glyph->glyph == 0)
>     return TT_Err_Out_Of_Memory;
>   return 0;
> }
> 
> TT_Error
> xTT_Done_Glyph ( xTT_Glyph glyph )
> {
>   free(glyph.glyph);
>   return 0;
> }
> 
> TT_Error
> xTT_Load_Glyph ( xTT_Instance instance,
> 		 xTT_Glyph glyph,
> 		 TT_UShort glyphIndex,
> 		 TT_UShort loadFlags )
> {
>   TT_Error error;
>   error = xTT_Glyph_Cache_Find(instance,glyph,glyphIndex,loadFlags);
>   TT_Get_Glyph_Outline(*glyph.glyph->glyph,
> 		       &glyph.glyph->outline.outline);
>   TT_Get_Outline_BBox(&glyph.glyph->outline.outline,
> 		      &glyph.glyph->outline.bbox);
>   return error;
> }
> 
> TT_Error
> xTT_Get_Glyph_Metrics ( xTT_Glyph glyph,
> 			TT_Glyph_Metrics * metrics )
> {
>   return TT_Get_Glyph_Metrics(*glyph.glyph->glyph,metrics);
> }
> 
> TT_Error
> xTT_Get_Glyph_Outline ( xTT_Glyph glyph,
> 			xTT_Outline * outline )
> {
>   outline->outline = &glyph.glyph->outline;
>   return 0;
> }
> 
> TT_Error
> xTT_Get_Outline_BBox ( xTT_Outline * outline,
> 		       TT_BBox * bbox )
> {
>   *bbox = outline->outline->bbox;
>   return 0;
> }
> 
> void
> xTT_Transform_Outline ( xTT_Outline * outline,
> 			TT_Matrix * matrix )
> {
>   TT_Transform_Outline(&outline->outline->outline,matrix);
>   TT_Get_Outline_BBox(&outline->outline->outline,
> 		      &outline->outline->bbox);
> }
> 
> TT_Error
> xTT_Get_Glyph_Bitmap ( xTT_Glyph glyph,
> 		       TT_Raster_Map * bitmap,
> 		       TT_F26Dot6 xOffset,
> 		       TT_F26Dot6 yOffset )
> {
>   return TT_Get_Glyph_Bitmap(*glyph.glyph->glyph,
> 			     bitmap,
> 			     xOffset,
> 			     yOffset);
> }
> 
> TT_Error
> xTT_Get_Glyph_Pixmap ( xTT_Glyph glyph,
> 		       TT_Raster_Map * pixmap,
> 		       TT_F26Dot6 xOffset,
> 		       TT_F26Dot6 yOffset )
> {
>   return TT_Get_Glyph_Pixmap(*glyph.glyph->glyph,
> 			     pixmap,
> 			     xOffset,
> 			     yOffset);
> }
> 
> #ifndef xTT_ALIAS
> #define xTT_ALIAS 1
> #endif
> 
> #if xTT_ALIAS
> 
> #define TT_Instance                     xTT_Instance
> #define TT_Outline                      xTT_Outline
> #define TT_Glyph                        xTT_Glyph
> 
> #define TT_New_Instance                 xTT_New_Instance
> #define TT_Done_Instance                xTT_Done_Instance
> 
> #define TT_Get_Instance_Metrics         xTT_Get_Instance_Metrics
> #define TT_Set_Instance_CharSize        xTT_Set_Instance_CharSize
> #define TT_Set_Instance_PixelSizes      xTT_Set_Instance_PixelSizes
> #define TT_Set_Instance_Transform_Flags xTT_Set_Instance_Transform_Flags
> #define TT_Set_Instance_Resolutions     xTT_Set_Instance_Resolutions
> 
> #define TT_New_Glyph                    xTT_New_Glyph
> #define TT_Done_Glyph                   xTT_Done_Glyph
> 
> #define TT_Load_Glyph                   xTT_Load_Glyph
> #define TT_Get_Glyph_Metrics            xTT_Get_Glyph_Metrics
> #define TT_Get_Glyph_Outline            xTT_Get_Glyph_Outline
> #define TT_Get_Glyph_Bitmap             xTT_Get_Glyph_Bitmap
> #define TT_Get_Glyph_Pixmap             xTT_Get_Glyph_Pixmap
> 
> #define TT_Get_Outline_BBox             xTT_Get_Outline_BBox
> #define TT_Transform_Outline            xTT_Transform_Outline
> 
> #endif
> 
> /************/
> 
85a424,448
> #ifndef MWFREETYPEFONT_CACHE
> #define MWFREETYPEFONT_CACHE 1
> #endif
> 
> #if MWFREETYPEFONT_CACHE
> 
> #ifndef MWFREETYPEFONT_CACHEBITMAP
> #define MWFREETYPEFONT_CACHEBITMAP 1
> #endif
> 
> typedef struct mwfreetypefontcache {
>   unsigned curchar;
>   void * buffer;
> #if MWFREETYPEFONT_CACHEBITMAP
>   MWPIXELVAL fg;
>   MWPIXELVAL bg;
>   MWBOOL usebg;
>   void * bitmap;
> #endif
>   struct mwfreetypefontcache * l;
>   struct mwfreetypefontcache * r;
> } MWFREETYPEFONTCACHE;
> 
> #endif
> 
86a450
> 
100a465,469
> 
> #if MWFREETYPEFONT_CACHE
>         MWFREETYPEFONTCACHE * glyph_cache;
> #endif
> 
147,148c516,517
< static HZKFONT CFont[2];//font cache
< static HZKFONT AFont[2];//font cache
---
> static HZKFONT CFont[2];	/* font cache*/
> static HZKFONT AFont[2];	/* font cache*/
150c519
< //jmt: moved inside MWHZKFONT
---
> /*jmt: moved inside MWHZKFONT*/
177,178c546,547
< //static void hzk_gettextbits(PMWFONT pfont, int ch, IMAGEBITS *retmap,
< //		MWCOORD *pwidth, MWCOORD *pheight, MWCOORD *pbase);
---
> /*static void hzk_gettextbits(PMWFONT pfont, int ch, IMAGEBITS *retmap,
> 		MWCOORD *pwidth, MWCOORD *pheight, MWCOORD *pbase);*/
183c552
< //static void hzk_setfontrotation(PMWFONT pfont, int tenthdegrees);
---
> /*static void hzk_setfontrotation(PMWFONT pfont, int tenthdegrees);*/
224d592
< 
694a1063,1072
> 	        case MWPF_TRUECOLOR555:
> 		    d = BITS(dst, 10, 0x1f);
> 		    r = (unsigned char)(((BITS(src, 10, 0x1f) - d)*a)>>8) + d;
> 		    d = BITS(dst, 5, 0x1f);
> 		    g = (unsigned char)(((BITS(src, 5, 0x1f) - d)*a)>>8) + d;
> 		    d = BITS(dst, 0, 0x1f);
> 		    b = (unsigned char)(((BITS(src, 0, 0x1f) - d)*a)>>8) + d;
> 		    *out++ = (r << 10) | (g << 5) | b;
> 		    break;
> 
988c1366
< static MWPIXELVAL gray_palette[5];
---
> static OUTPIXELVAL gray_palette[5];
1155c1533
< 	
---
> 
1169a1548,1581
> static MWFREETYPEFONTCACHE *
> find_cache_glyph ( PMWFREETYPEFONT pf, unsigned curchar )
> {
>   MWFREETYPEFONTCACHE ** inode = &pf->glyph_cache;
> 
>   while (1)
>     {
>       if (*inode == 0)
> 	{
> 	  *inode = calloc(sizeof(MWFREETYPEFONTCACHE),1);
> 	  (*inode)->curchar = curchar;
> 	}
> 
>       if (curchar < (*inode)->curchar)
> 	inode = &(*inode)->l;
>       else if (curchar > (*inode)->curchar)
> 	inode = &(*inode)->r;
>       else
> 	return *inode;
>     }
> }
> 
> static void
> free_cache_glyph ( MWFREETYPEFONTCACHE * node )
> {
>   if (node->l != 0)
>     free_cache_glyph(node->l);
> 
>   if (node->r != 0)
>     free_cache_glyph(node->r);
> 
>   free(node);
> }
> 
1172c1584
< drawchar(PMWFREETYPEFONT pf, PSD psd, TT_Glyph glyph, int x_offset,
---
> drawchar(PMWFREETYPEFONT pf, PSD psd, unsigned curchar, int x_offset,
1184a1597
>         MWFREETYPEFONTCACHE * cache;
1206a1620,1622
>         cache = find_cache_glyph(pf,curchar);
>         /* SDR: if cache is 0 here, something really really bad happened */
> 
1209,1213c1625
< 	Raster.bitmap = malloc (Raster.size);
< 
< 	memset (Raster.bitmap, 0, Raster.size);
< 
< 	/* now render the glyph in the small pixmap */
---
> 	Raster.bitmap = cache->buffer;
1215,1226c1627,1666
< 	/* IMPORTANT NOTE: the offset parameters passed to the function     */
< 	/* TT_Get_Glyph_Bitmap() must be integer pixel values, i.e.,        */
< 	/* multiples of 64.  HINTING WILL BE RUINED IF THIS ISN'T THE CASE! */
< 	/* This is why we _did_ grid-fit the bounding box, especially xmin  */
< 	/* and ymin.                                                        */
< 
< 	if (!(pf->fontattr&MWTF_ANTIALIAS))
< 		error = TT_Get_Glyph_Bitmap (pf->glyph, &Raster,
< 				-xmin * 64, -ymin * 64);
< 	else
< 		error = TT_Get_Glyph_Pixmap (pf->glyph, &Raster,
< 				-xmin * 64, -ymin * 64);
---
> 	if (Raster.bitmap == 0)
> 	  {
> 	    Raster.bitmap = malloc (Raster.size);
> 
> 	    memset (Raster.bitmap, 0, Raster.size);
> 
> 	    /* now render the glyph in the small pixmap */
> 
> 	    /* IMPORTANT NOTE: the offset parameters passed to the function     */
> 	    /* TT_Get_Glyph_Bitmap() must be integer pixel values, i.e.,        */
> 	    /* multiples of 64.  HINTING WILL BE RUINED IF THIS ISN'T THE CASE! */
> 	    /* This is why we _did_ grid-fit the bounding box, especially xmin  */
> 	    /* and ymin.                                                        */
> 
> 	    if (!(pf->fontattr&MWTF_ANTIALIAS))
> 	      error = TT_Get_Glyph_Bitmap (pf->glyph, &Raster,
> 					   -xmin * 64, -ymin * 64);
> 	    else
> 	      error = TT_Get_Glyph_Pixmap (pf->glyph, &Raster,
> 					   -xmin * 64, -ymin * 64);
> 
> 	    if (error) {
> 	      free (Raster.bitmap);
> 	      return;
> 	    }
> 
>             cache->buffer = Raster.bitmap;
> 	  }
> 
> #if MWFREETYPEFONT_CACHEBITMAP
> 	if ((memcmp(&gr_foreground,&cache->fg,sizeof(gr_foreground)) != 0) || 
> 	    (memcmp(&gr_background,&cache->bg,sizeof(gr_background)) != 0) || 
> 	    (gr_usebg != cache->usebg))
> 	  {
> 	    if (cache->bitmap)
> 	      {
> 		free(cache->bitmap);
> 		cache->bitmap = 0;
> 	      }
> 	  }
1228,1231c1668,1671
< 	if (error) {
< 		free (Raster.bitmap);
< 		return;
< 	}
---
> 	bitmap = cache->bitmap;
> #else
> 	bitmap = 0;
> #endif
1233,1234c1673,1676
< 	bitmap = malloc (size * sizeof (MWPIXELVAL));
< 	memset (bitmap, 0, size * sizeof (MWPIXELVAL));
---
> 	if (bitmap == 0)
> 	  {
> 	    bitmap = malloc (size * sizeof (MWPIXELVAL));
> 	    memset (bitmap, 0, size * sizeof (MWPIXELVAL));
1236,1237c1678,1679
< 	src = (char *) Raster.bitmap;
< 	dst = bitmap + (size - width);
---
> 	    src = (char *) Raster.bitmap;
> 	    dst = bitmap + (size - width);
1239c1681,1682
< 	for (y = ymin; y < ymax; y++) {
---
> 	    for (y = ymin; y < ymax; y++) 
> 	      {
1243,1254c1686,1697
< 		for (x = xmin; x < xmax; x++) {
< 			if (pf->fontattr&MWTF_ANTIALIAS)
< 				*dstptr++ = gray_palette[(int) *srcptr];
< 			else {
< 				for(z=0;
< 				    z <= ((xmax-x-1) < 7 ? (xmax-x-1) : 7);
< 				    z++) {
< 					*dstptr++ = ((*srcptr << z) & 0x80)?
< 						gr_foreground: gr_background;
< 				}
< 				x += 7;
< 			}
---
> 		for (x = xmin; x < xmax; x++) 
> 		  {
> 		    if (pf->fontattr&MWTF_ANTIALIAS)
> 		      *dstptr++ = gray_palette[(int) *srcptr];
> 		    else
> 		      {
> 		        for ( z=0;
> 			      z <= ((xmax-x-1) < 7 ? (xmax-x-1) : 7);
> 			      z++ )
> 			    *dstptr++ = ((*srcptr << z) & 0x80) ? gr_foreground : gr_background;
> 			x += 7;
> 		      }
1256,1257c1699,1700
< 			srcptr++;
< 		}
---
> 		    srcptr++;
> 		  }
1261,1266c1704,1711
< 	}
< 
< 	/* FIXME - must clear background upstairs if not gr_usebg*/
< 	/* FIXME: GdArea problem if fg == bg*/
< 	/*save = gr_background;*/
< 	/*gr_background = gr_foreground + 1;*/
---
> 	      }
> #if MWFREETYPEFONT_CACHEBITMAP
> 	    cache->fg = gr_foreground;
> 	    cache->bg = gr_background;
> 	    cache->usebg = gr_usebg;
> 	    cache->bitmap = bitmap;
> #endif
> 	  }
1272,1275c1717,1719
< 	/*gr_background = save;*/
< 
< 	free (bitmap);
< 	free (Raster.bitmap);
---
> #if !MWFREETYPEFONT_CACHEBITMAP
> 	free(bitmap);
> #endif
1367c1811
< 		drawchar(pf, psd, pf->glyph, x, y);
---
> 		drawchar(pf, psd, curchar, x, y);
1401,1402c1845,1846
<     TT_Instance_Metrics imetrics;
<     TT_UShort last_glyph_index;
---
> 	TT_Instance_Metrics imetrics;
> 	TT_UShort last_glyph_index;
1405c1849
<     TT_Get_Instance_Metrics(pf->instance, &imetrics);
---
> 	TT_Get_Instance_Metrics(pf->instance, &imetrics);
1407c1851
<     /* Fill up the fields */
---
> 	/* Fill up the fields */
1420c1864
<     last_glyph_index = properties.num_Glyphs > 255 ? 255: properties.num_Glyphs-1;
---
> 	last_glyph_index = properties.num_Glyphs > 255 ? 255: properties.num_Glyphs-1;
1422c1866
<     /* Doesn't work ... don't know why ....*/
---
> 	/* Doesn't work ... don't know why ....*/
1424,1427c1868,1871
<     if (TT_Get_Face_Widths( pf->face, 0,
<                             last_glyph_index, widths, NULL ) != TT_Err_Ok) {
<         return TRUE;
<     }
---
> 	if (TT_Get_Face_Widths( pf->face, 0,
> 				last_glyph_index, widths, NULL ) != TT_Err_Ok) {
> 	  return TRUE;
> 	}
1429,1430c1873,1874
<     for(i=0; i<=last_glyph_index; i++)
< 		DPRINTF("widths[%d]: %d\n", i, widths[i]);
---
> 	for(i=0; i<=last_glyph_index; i++)
> 	  DPRINTF("widths[%d]: %d\n", i, widths[i]);
1433c1877
<     /* Get glyphs widths */
---
> 	/* Get glyphs widths */
1435c1879
< 		pfontinfo->widths[i] = Get_Glyph_Width(pf, i);
---
> 	  pfontinfo->widths[i] = Get_Glyph_Width(pf, i);
1438c1882
<     DPRINTF("x_ppem: %d\ny_ppem: %d\nx_scale: %d\ny_scale: %d\n\
---
> 	DPRINTF("x_ppem: %d\ny_ppem: %d\nx_scale: %d\ny_scale: %d\n\
1526a1971,1978
> 
> 	/*----------*/
> 
> 	if (pf->glyph_cache != 0)
> 	  free_cache_glyph(pf->glyph_cache);
> 
> 	/*----------*/
> 
1776c2228
< 			//*	 to find the place of unicode charater .二分法匹配
---
> 			/*	 to find the place of unicode charater .二分法匹配*/
1799c2251
< 					if(d==c)	//find it
---
> 					if(d==c)	/*find it*/
1805c2257
< 					else if(p2<=p1+4) //can't find.
---
> 					else if(p2<=p1+4) /*can't find.*/
1807,1808c2259,2260
< 						ascii[i]='.';//*((uc16p)+j);
< 						ascii[i+1]='.';//*((uc16p)+j+1);
---
> 						ascii[i]='.';/*((uc16p)+j);*/
> 						ascii[i+1]='.';/*((uc16p)+j+1);*/
1829c2281
< 	}//jmt+
---
> 	}
1885c2337
<     	if (use_big5)//jmt+
---
>     	if (use_big5)
1894c2346
< // This function get ASCII font info from etc file.
---
> /* This function get ASCII font info from etc file.*/
1926c2378
< // This function load system font into memory.
---
> /* This function load system font into memory.*/
1936c2388
<     	if(CFont[hzk_id(pf)].pFont == NULL)//check font cache
---
>     	if(CFont[hzk_id(pf)].pFont == NULL)/*check font cache*/
1940c2392
<  	   	// Allocate system memory for Chinese font.
---
>  	   	/* Allocate system memory for Chinese font.*/
1947c2399
< 		// Open font file and read information to the system memory.
---
> 		/* Open font file and read information to the system memory.*/
1963c2415
< 		CFont[hzk_id(pf)].use_count=0;//
---
> 		CFont[hzk_id(pf)].use_count=0;
1972c2424
< 	CFont[hzk_id(pf)].use_count++;//jmt+
---
> 	CFont[hzk_id(pf)].use_count++;
1979c2431
<     	if(AFont[hzk_id(pf)].pFont == NULL)//check font cache
---
>     	if(AFont[hzk_id(pf)].pFont == NULL)/*check font cache*/
1983c2435
<  		// Allocate system memory for ASCII font.
---
>  		/* Allocate system memory for ASCII font.*/
1992c2444
< 	 	// Load ASCII font information to the near memory.
---
> 	 	/* Load ASCII font information to the near memory.*/
2008c2460
< 		AFont[hzk_id(pf)].use_count=0;//
---
> 		AFont[hzk_id(pf)].use_count=0;
2017c2469
< 	AFont[hzk_id(pf)].use_count++;//jmt+
---
> 	AFont[hzk_id(pf)].use_count++;
2022c2474
< // This function unload system font from memory.
---
> /* This function unload system font from memory.*/
2065c2517
< 	//GdSetFontSize((PMWFONT)pf, height);
---
> 	/*GdSetFontSize((PMWFONT)pf, height);*/
2090c2542
<     	// Load the font library to the system memory.
---
>     	/* Load the font library to the system memory.*/
2097c2549
< int IsBig5(int i)//jmt+
---
> int IsBig5(int i)
2150c2602
< 	if (use_big5)//jmt+
---
> 	if (use_big5)
2153c2605
< 		//ladd=loby-(if(loby<127)?64:98)
---
> 		/*ladd=loby-(if(loby<127)?64:98)*/
2156,2157c2608,2609
< 		//hadd=(hiby-164)*157
< 		if (c1>=0xa4)//standard font
---
> 		/*hadd=(hiby-164)*157*/
> 		if (c1>=0xa4)/*standard font*/
2163,2164c2615,2616
< 		//hadd=(hiby-161)*157
< 		if (c1<=0xa3)//special font
---
> 		/*hadd=(hiby-161)*157*/
> 		if (c1<=0xa3)/*special font*/
2247c2699
< 			if (flags&MWTF_TOP)//jmt+ 
---
> 			if (flags&MWTF_TOP)
2315a2768,2770
> 
> 
> 
2345c2800
< 		//	fprintf(stderr,"s=%x,sbegin=%x,cc=%x\n",s,sbegin,cc);
---
> 		/*	fprintf(stderr,"s=%x,sbegin=%x,cc=%x\n",s,sbegin,cc);*/
2348c2803
< //	fprintf(stderr,"ax=%d,\n",ax);
---
> /*	fprintf(stderr,"ax=%d,\n",ax);*/
2358a2814
> 
2367,2369c2823,2826
< 	//jmt: hzk_setfontsize not supported
< 	//jmt: & pf->fontsize can't be changed
< 	//jmt: because of hzk_id() :p
---
> 
> 	/*jmt: hzk_setfontsize not supported*/
> 	/*jmt: & pf->fontsize can't be changed*/
> 	/*jmt: because of hzk_id() :p*/
2455c2912
< 	//FIXME: is it what's required ??
---
> 	/*FIXME: is it what's required ??*/
