亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dbcs_prn.c

?? BC3.1編譯,小交換機計費系統(tǒng).使用Dos做出如此好的界面,少有.
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <stdio.h>
#include <conio.h>
#include <bios.h>
#include <stdlib.h>
#include <alloc.h>
#include <string.h>
#include <stdarg.h>
#include <bio.inc>
#include "feedef.h"
#define  MAXCOL 80

/* get DBCS display graphic array
   input:
     num:         DBC number
     pointer p:   inner code
   output:
     pointer pc2: DBC graphic array
*/
void getlib_char(int num, UC *p, UC *pc2)
{
    FILE *fp1;
    int m, x, y, j1, i;
    long int k;
    UC *p1, *p2;

    p1=malloc(32*sizeof(UC));
    p2=malloc(32*sizeof(UC));
    if((fp1=fopen("gfsdata\\cclib16.lib","r+b"))==NULL)
    {
        free(p1);
        free(p2);
        printf("Error: Cann't open DBCS library file!\n");
        exit(0);
    }
    i=0;
    while(i<num)
    {
        y=p[2*i]-160;
        x=p[2*i+1]-160;
        m=(y-1)*94+(x-1);

        if (y==0 || x==0)
        {
            free(p1);
            free(p2);
            return;
        }
        if (y>87 || y>94)
        {
            free(p1);
            free(p2);
            return;
        }
        if (y>9  && y<16)
        {
            free(p1);
            free(p2);
            return;
        }
        if(y<16)
        {
            m=(y-1)*94+(x-1);
        }
        else
        {
            m=(y-7)*94+(x-1);
        }
        k=(long)m*(long)32;
        fseek(fp1,k*sizeof(UC),SEEK_SET);
        fread(p1,sizeof(UC),32,fp1);
        pch_16(p1,p2);
        for(j1=0;j1<32;j1++)
            pc2[32*i+j1]=p2[j1];
        i=i+1;
    }
    fclose(fp1);
    free(p1);
    free(p2);
    return;
}

/* get SBCS display graphic array
   input:
     num:         SBC number
     pointer p:   inner code
   output:
     pointer pc2: SBC graphic array
*/
void getlib_asc(int num, UC* p, UC* pa2)
{
    FILE *fp1;
    int m, j1, i;
    long int k;
    UC *p1, *p2;

    p1=malloc(8*sizeof(UC));
    p2=malloc(8*sizeof(UC));
    if((fp1=fopen("gfsdata\\asc08.lib","r+b"))==NULL)
    {
        free(p1);
        free(p2);
        printf("Error: Cann't open SBCS library file!\n");
        exit(0);
    }
    i=0;
    while(i<num)
    {
        m=p[i];
        k=(long)m*(long)8;
        fseek(fp1,k*sizeof(UC),SEEK_SET);
        fread(p1,sizeof(UC),8,fp1);
        pch_8(p1,p2);
        for(j1=0;j1<8;j1++)
        {
            pa2[8*i+j1]=p2[j1];
        }
        i=i+1;
    }
    fclose(fp1);
    free(p1);
    free(p2);
    return;
}

/* SBCS display graphic array to printer graphic array transfermation */
void pch_8(UC *pp1, UC *qq1)
{
    int i, j, k;
    UC tt, tt1;
    UC d[8]={128, 64, 32, 16, 8, 4, 2, 1};

    k=0;
    for(i=0; i<8; i++) /* for binary no 0...7 */
    {
        tt1=0;
        for(j=0; j<8; j++) /* for byte no  0...7 */
        {
            tt=d[i];
            if((pp1[j] & tt) != 0)
            {
                tt=d[j];
                tt1=tt1|tt;
            }
        }
        qq1[k]=tt1;
        k=k+1;
    }
    return;
}

/* DBCS display graphic array to printer graphic array transfermation */
void pch_16(UC *pp1, UC *qq1)
{
    int ii, i, j, k, m, n;
    UC tt, tt1;
    UC d[8]={128, 64, 32, 16, 8, 4, 2, 1};

    k=0;
    for(m=0; m<2; m++) /*for upper and below level */
    {
        n=m*16;
        for(ii=0;ii<2;ii++)
        {
            for(i=0;i<8;i++) /* for binary no 0...7 */
            {
                tt1=0;
                for(j=0;j<8;j++) /* for byte no  0...7 */
                {
                    tt=d[i];
                    if((pp1[2*j+ii+n]&tt) != 0)
                    {
                        tt=d[j];
                        tt1=tt1|tt;
                    }
                }
                qq1[k]=tt1;
                k=k+1;
            }
        }
    }
 return;
}

UC pin9(int id, UC *fbuff, UI length)
{
    UC *p1, *p2;
    int i, ik;
    static int id_prn=0;
    static UC p3[200];

    p1=malloc(200*sizeof(UC));
    p2=malloc(200*sizeof(UC));

    ik=0;
    rtn_recon(fbuff, length, p1);
    if(id_prn>0)
    {
       ik=id_prn;
        for(i=0;i<ik;i++)
         {
           p2[i]=p3[i];
         }
    }
    for(i=0; i<length; i++)
    {
      p2[ik]=fbuff[i];
      p3[ik]=p2[ik];
      ik=ik+1;
      id_prn=ik;
      if((p1[i]=='C')||((ik>=MAXCOL)&&(i==length- 1)))
      {
         if(prn_cs(id,p2,ik) ==  FALSE)
         {
           id_prn=0;
           free(p1);
           free(p2);
           return FALSE;
         }
         ik=0;
         id_prn=0;
      }
    }
    free(p1);
    free(p2);
    return TRUE;
}

UC prnf(const UC *fmt, ...)
{
    UC *fbuff;
    va_list argptr;
    UI length;

    fbuff=malloc(200*sizeof(UC));
    va_start(argptr, fmt);
    length = vsprintf(fbuff, fmt, argptr);
    va_end(argptr);

    if (length==(UI)EOF)
    {
        free(fbuff);
        return FALSE;
    }

    if(Sys_mode.prt_m != LQ1600)
    {
        if(pin9(0, fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }
    }
    else if(Sys_mode.prt_m == LQ1600 && Sys_mode.prtflg == INLIB)
    {
        if(prn_fs(fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }
    }
    else
    {
        if(pin24(0, fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }
    }

    free(fbuff);
    return TRUE;
}

UC prnfd(const UC *fmt, ...)
{
    UC *fbuff;
    va_list argptr;
    UI length;

    fbuff=malloc(200*sizeof(UC));
    va_start(argptr, fmt);
    length = vsprintf(fbuff, fmt, argptr);
    va_end(argptr);

    if (length==(UI)EOF)
    {
        free(fbuff);
        return FALSE;
    }

    if(Sys_mode.prt_m != LQ1600)
    {
        if(pin9(1, fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }
    }
    else if(Sys_mode.prt_m == LQ1600 && Sys_mode.prtflg == INLIB)
    {
        if(set_dbl_char() == FALSE) return FALSE;

        if(prn_fs(fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }

        if(rst_nomal_char() == FALSE)
            return(FALSE);
        if(set_clos_tbl() == FALSE)
            return(FALSE);

    }
    else
    {
        if(pin24(1, fbuff, length) == FALSE)
        {
            free(fbuff);
            return FALSE;
        }
    }

    free(fbuff);
    return TRUE;
}

void str_recon(UC *st, UI length, UC *p1, UC *p2_c, int *num1, UC *p2_a)
{
    int i=0, num_c=0, num_a=0;

    while(i<length)
    {
        if(st[i]>127)
        {
            p1[i]='C';
            p2_c[2*num_c]=st[i];
            i=i+1;
            p2_c[2*num_c+1]=st[i];
            p1[i]='C';
            i=i+1;
            num_c+=1;
        }
        else
        {
            p1[i]='A';
            p2_a[num_a]=st[i];
            num_a+=1;
            i+=1;
        }
    }
    *num1=num_c;
    return;
}


UC  prn_cs(int id, UC *st, UI length)
{
    int i, j, j1=0, num_c=0, i1=0, i2=0, num1, id_re=0;
    UC *p1, *p2_c, *p3, *p2_a, *p4, p5=0x00;

    if((p1=malloc(length*sizeof(UC)))==NULL)
        return FALSE;
    if((p2_a=malloc(length*sizeof(UC)))==NULL)
    {
        free(p1);
        return FALSE;
    }
    if((p2_c=malloc(length*sizeof(UC)))==NULL)
    {
        free(p1);
        free(p2_a);
        return FALSE;
    }
    str_recon(st,length, p1, p2_c, &num_c, p2_a);
    if(st[length-1]=='\n')
        id_re=1;

    if(num_c>0)
    {
        if((p3=malloc((num_c*32)*sizeof(UC)))==NULL)
        {
            free(p1);
            free(p2_a);
            free(p2_c);
            return FALSE;
        }
        getlib_char(num_c,p2_c,p3);
    }
    j1=length-2*num_c;
    if(j1>0)
    {
        if((p4=malloc((j1*8)*sizeof(UC)))==NULL)
        {
            free(p1);
            free(p2_a);
            free(p2_c);
            if(num_c>0)
                free(p3);
            return FALSE;
        }
        getlib_asc(j1,p2_a,p4);
    }
    j=0;
    num1=0;
    if(id_re==1)
        length-=1;
    for(i=0;i<length;i++)
        if(p1[i]=='C')
             num1=i+1;

    if(length>0)
    {
        if((prn_ch(27))==FALSE)  //ESC
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if((prn_ch('A'))==FALSE)
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if((prn_ch(8))==FALSE)
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if((prn_ch(27))==FALSE)
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if((prn_ch('*'))==FALSE)
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if((prn_ch(1))==FALSE)
        {
            buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
            return FALSE;
        }
        if(num1==0)
        {
            if((prn_ch(8))==FALSE)
            {
                buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                return FALSE;
            }
            if((prn_ch(0))==FALSE)
            {
                buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                return FALSE;
            }
            for (i=0;i<8;i++)
            {
                if((prn_ch(p5))==FALSE)
                {
                    buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                    return FALSE;
                }
            }
        }
        else
        {
            if(id==1)
            {
                if((prn_ch(num1*16%256))==FALSE)
                {
                    buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                    return FALSE;
                }
                if((prn_ch(num1/16))==FALSE)
                {
                    buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                    return FALSE;
                }
            }
            else
            {
                if((prn_ch(num1*8%256))==FALSE)
                {
                   buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                   return FALSE;
                }
                if((prn_ch(num1/32))==FALSE)
                {
                   buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                   return FALSE;
                }
            }
        }
    }
    while (j<num1)
    {
        if(p1[j]!='A')
        {
            for (i=0;i<16;i++)
            {
                if((prn_ch(p3[i1*32+i]))==FALSE)
                {
                    buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                    return FALSE;
                }
                if(id==1)
                {
                    if((prn_ch(p3[i1*32+i]))==FALSE)
                    {
                       buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                        return FALSE;
                    }
                }
            }
            i1=i1+1;
            j+=2;
        }
        else
        {
            for (i=0;i<8;i++)
            {
                if((prn_ch(p5))==FALSE)
                {
                    buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                    return FALSE;
                }
                if(id==1)
                {
                    if((prn_ch(p5))==FALSE)
                    {
                        buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
                        return FALSE;
                    }
                }
            }
            j+=1;
        }
    }
    i1=0;
    j=0;
    if(length>0)
    {
        if((prn_ch(27))==FALSE)
        {
             buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);
             return FALSE;
        }
        if((prn_ch('A'))==FALSE)
        {
             buffree(p1, p2_a, p2_c, p3, p4, num_c, j1);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99精品国产麻豆婷婷| 欧美精品粉嫩高潮一区二区| 一本一本久久a久久精品综合麻豆| 日韩成人一区二区三区在线观看| 亚洲成在线观看| 日本欧美肥老太交大片| 国内精品写真在线观看| 国产精品99久久久久久似苏梦涵| 国产一区二区三区免费在线观看| 国产成人午夜电影网| 欧美性大战久久| 精品三级在线看| 伊人夜夜躁av伊人久久| 日本美女一区二区三区| 成人精品免费看| 欧美日韩免费观看一区三区| 日韩一区二区在线免费观看| 国产精品网曝门| 日本欧美大码aⅴ在线播放| 成人av资源网站| 精品动漫一区二区三区在线观看| 综合激情网...| 国产精品白丝jk白祙喷水网站 | 欧洲色大大久久| 精品国产乱码久久久久久牛牛 | 欧美mv日韩mv亚洲| 亚洲欧美乱综合| 处破女av一区二区| 精品国产乱码久久久久久图片 | 欧美精品 日韩| 亚洲激情第一区| 91麻豆精品秘密| 国产精品久久久久久久久晋中 | 欧美国产丝袜视频| 国产一区二区三区日韩| 久久伊人蜜桃av一区二区| 奇米一区二区三区av| 91精品国产综合久久精品图片| 亚洲女厕所小便bbb| 色激情天天射综合网| 国产精品久久久久久久久免费桃花 | 国产精品自拍av| 欧美精品一区二区高清在线观看 | 91精品国产综合久久久久| 五月婷婷激情综合| 欧美变态tickle挠乳网站| 麻豆国产一区二区| 国产精品福利一区二区| 午夜精品免费在线| 欧美羞羞免费网站| 久久国产精品99久久人人澡| 久久嫩草精品久久久精品一| 成人av一区二区三区| 一区二区在线看| 欧美一区二区不卡视频| 成人免费视频网站在线观看| 亚洲综合999| 国产欧美一区二区三区鸳鸯浴| 色综合久久久久综合| 日本大胆欧美人术艺术动态| 精品88久久久久88久久久| 97久久超碰国产精品电影| 日韩和欧美的一区| 日韩理论电影院| 久久网站热最新地址| 91成人免费在线视频| 国内成+人亚洲+欧美+综合在线| 亚洲乱码国产乱码精品精98午夜| 在线成人av网站| 欧美在线观看你懂的| 成人午夜大片免费观看| 另类小说一区二区三区| 亚洲黄色av一区| 国产精品三级久久久久三级| 日韩美女视频一区二区在线观看| 在线免费观看视频一区| 97久久精品人人爽人人爽蜜臀| 国产麻豆欧美日韩一区| 蜜臀av性久久久久av蜜臀妖精| 亚洲精品自拍动漫在线| 中文字幕中文字幕一区二区| 久久久国产精品不卡| 国产女同性恋一区二区| 精品国产一区二区三区四区四| 欧美精品 日韩| 日韩一级在线观看| 久久免费电影网| 国产精品色哟哟| 亚洲欧美一区二区久久| 最新成人av在线| 亚洲美女电影在线| 亚洲福利国产精品| 精品一区二区成人精品| 国产一区二区三区久久久| 国产精品中文有码| 91丨porny丨最新| 337p亚洲精品色噜噜狠狠| 日韩欧美综合一区| 国产精品国产三级国产| 亚洲二区在线观看| 国产99一区视频免费| 成人黄色a**站在线观看| 日本道色综合久久| 色屁屁一区二区| av资源网一区| 欧美日韩一区二区在线视频| 日韩精品一区二区三区老鸭窝| 精品国产成人系列| 亚洲午夜电影在线观看| 久久99国产精品免费| 在线亚洲高清视频| 国产人伦精品一区二区| 三级久久三级久久久| 91免费观看国产| 久久精品视频网| 乱一区二区av| 欧美精品 国产精品| 亚洲欧美aⅴ...| 91猫先生在线| 中文字幕日韩欧美一区二区三区| 免费在线观看一区| 6080国产精品一区二区| 韩日av一区二区| 国产精品一线二线三线精华| 欧美精品丝袜中出| 亚洲图片欧美综合| av福利精品导航| 国产精品久久久久久久岛一牛影视| 麻豆精品在线观看| 日韩精品中文字幕一区| 蜜臀精品一区二区三区在线观看| 欧美日韩精品专区| 偷拍日韩校园综合在线| 欧美一区二区三区公司| 美女视频黄久久| 国产蜜臀97一区二区三区| 久久成人18免费观看| 蜜臀久久久99精品久久久久久| 91一区二区三区在线观看| 国产精品美女久久久久久久网站| 成人国产精品免费观看| 精品av综合导航| 国产成人免费在线视频| 亚洲图片你懂的| 91精品91久久久中77777| 亚洲444eee在线观看| 久久久午夜精品| av电影在线不卡| 日韩黄色一级片| 日韩精品一区二区三区蜜臀| 美腿丝袜亚洲综合| 亚洲欧洲日产国码二区| 欧美日韩你懂的| 懂色中文一区二区在线播放| 中文字幕欧美区| 欧美一区二区女人| 97久久久精品综合88久久| 麻豆视频一区二区| 亚洲美女在线国产| 国产亚洲精品精华液| 欧美在线一区二区三区| 成人黄色软件下载| 久久精品99国产精品日本| 亚洲精品乱码久久久久久久久 | 中文字幕在线观看一区| 91精品午夜视频| 欧美欧美午夜aⅴ在线观看| 99久久婷婷国产综合精品电影| 免费成人av资源网| 午夜伊人狠狠久久| 亚洲综合精品久久| 亚洲一区二区三区四区在线观看| 国产欧美一区二区精品忘忧草| 欧美一区二区三区电影| 91精品国产色综合久久ai换脸| 欧美在线免费观看视频| 精品1区2区3区| 91精品国产入口| 精品国产第一区二区三区观看体验| 欧美成人官网二区| 久久综合久久综合久久| 国产欧美日韩视频一区二区| 国产精品日韩精品欧美在线| 国产精品女上位| 亚洲大片精品永久免费| 日本vs亚洲vs韩国一区三区二区| 日韩电影在线免费| 成人三级伦理片| 欧美乱熟臀69xxxxxx| 久久免费看少妇高潮| 亚洲精品一二三四区| 香蕉加勒比综合久久| 国产精品一区在线观看你懂的| 国产一区二区伦理片| 色婷婷av久久久久久久| 日韩欧美亚洲另类制服综合在线| 久久精品男人的天堂| 亚洲成在人线免费| 不卡影院免费观看| xvideos.蜜桃一区二区|