else \
{ \
Bufbyte work[MAX_EMCHAR_LEN]; \
- int len = ( ch < ( conversion_mode == CCL_MODE_ENCODING ? \
- 256 : 128 ) ) ? \
+ int len = ( ch < 256 ) ? \
simple_set_charptr_emchar (work, ch) : \
non_ascii_set_charptr_emchar (work, ch); \
Dynarr_add_many (destination, work, len); \
};
int
-ccl_driver (struct ccl_program *ccl, CONST unsigned char *source, unsigned_char_dynarr *destination, int src_bytes, int *consumed, int conversion_mode)
+ccl_driver (struct ccl_program *ccl, CONST unsigned char *source, unsigned_char_dynarr *destination, int src_bytes, int *consumed)
{
int *reg = ccl->reg;
int ic = ccl->ic;
case CCL_MOD: reg[rrr] = i % j; break;
case CCL_AND: reg[rrr] = i & j; break;
case CCL_OR: reg[rrr] = i | j; break;
- case CCL_XOR: reg[rrr] = i ^ j; break;
+ case CCL_XOR: reg[rrr] = i ^ j;; break;
case CCL_LSH: reg[rrr] = i << j; break;
case CCL_RSH: reg[rrr] = i >> j; break;
case CCL_LSH8: reg[rrr] = (i << 8) | j; break;
: 0);
ccl_driver (&ccl, (CONST unsigned char *)0, (unsigned_char_dynarr *)0,
- 0, (int *)0, CCL_MODE_ENCODING);
+ 0, (int *)0);
QUIT;
if (ccl.status != CCL_STAT_SUCCESS)
error ("Error in CCL program at %dth code", ccl.ic);
outbuf = Dynarr_new (unsigned_char);
ccl.last_block = NILP (contin);
produced = ccl_driver (&ccl, XSTRING_DATA (str), outbuf,
- XSTRING_LENGTH (str), (int *)0, CCL_MODE_ENCODING);
+ XSTRING_LENGTH (str), (int *)0);
for (i = 0; i < 8; i++)
XVECTOR_DATA (status)[i] = make_int(ccl.reg[i]);
XSETINT (XVECTOR_DATA (status)[8], ccl.ic);
void
syms_of_mule_ccl (void)
{
- DEFSUBR (Fccl_execute);
- DEFSUBR (Fccl_execute_on_string);
- DEFSUBR (Fregister_ccl_program);
-}
-
-void
-vars_of_mule_ccl (void)
-{
staticpro (&Vccl_program_table);
Vccl_program_table = Fmake_vector (make_int (32), Qnil);
If the font is single-byte font, the register R2 is not used.
*/ );
Vfont_ccl_encoder_alist = Qnil;
+
+ DEFSUBR (Fccl_execute);
+ DEFSUBR (Fccl_execute_on_string);
+ DEFSUBR (Fregister_ccl_program);
}
#endif /* emacs */