⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 putblock.c

📁 汉字系统的c源代码
💻 C
字号:
    /*-----------------------------------------------------------
        函数 putblock : 恢复屏幕映象块。
    -----------------------------------------------------------*/
    #include <hanenv.h>
    #include <alloc.h>

    void putblock(col,line,width,high,block)
    int col;           /* 屏幕图象块左上角列坐标(以字节为单位) */
    int line;          /* 屏幕图象块左上角行坐标(以象素为单位) */
    int width;         /* 屏幕图象块宽度(以字节为单位)         */
    int high;          /* 屏幕图象块高度(以象素为单位)         */
    char **block;      /* 屏幕图象块存储缓冲区                 */
    {
        register unsigned i,j,k;
        char *p;

        if(block)
        {
            _VideoBusy = YES;
            for(i=1,j=0;i<9;i*=2,j++)
            {
                p = block[j];
                outportb(0x3c4,2); /* 选择颜色平面允许写寄存器 */
                outportb(0x3c5,i); /* 允许写第i个平面          */
                for(k=0;k<high;k++)
                {
                    movedata(FP_SEG(p),FP_OFF(p),0xa000,(line+k+_ScreenTop)*_ScreenWidth+col,width);
                    p += width;
                }
                free(block[j]);
            }
            outportb(0x3c4,2);         /* 恢复允许写所有位平面 */
            outportb(0x3c5,0x0f);
            _VideoBusy = NO;
            free(block);
        }
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -