HPHRK.rar

  • pviscible
    了解作者
  • Others
    开发工具
  • 6KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 0
    下载次数
  • 2018-10-12 04:07
    上传日期
用C编写设备驱动程序的示例,好案例,不错
HPHRK.rar
  • o44DRIVER.LIB
    17KB
  • QFile_id.url
    626B
  • MHDR.ASM
    5.6KB
  • MONO.C
    1.9KB
  • AHDR.ASM
    5.8KB
  • MAKEMON.BAT
    256B
  • IDRIVER.DOC
    4.9KB
  • 7ceDRIVER.H
    3.1KB
内容介绍
/* * monochrome device driver */ #include "driver.h" #define VidSeg 0xB0000000 /* addr of monochrome video RAM */ #define Attr 0x0700 /* video attribute mask */ #define Blank (Attr + ' ') /* a blank */ char row, /* current row number */ col; /* current column number */ long VidAddr; /* -> current display character */ Init() { cls(); ((InitParms *)&ReqHdr)->EndAddr = EndAddr(); ReqHdr.Status = Done; } Output() { InOutParms *iop; /* our pointer */ long ta; /* -> transfer addr */ int ctr; /* byte count */ char c; iop = (InOutParms *)&ReqHdr; ta = iop->Transfer; ctr = iop->Count; while (ctr--) switch (c = PeekB(ta)) { case '\r' : doCR(); break; case '\n' : doLF(); break; case '\b' : doBS(); break; case '\t' : doHT(); break; case 0x1A : cls(); break; default : putone(c); break; } ReqHdr.Status = Done; } OutVerify() { Output(); } OutStatus() { ReqHdr.Status = Done; } OutFlush() { ReqHdr.Status = Done; } static cls() { SetW(VidSeg, 2000, Blank); /* clear the screen */ row = col = 0; VidAddr = VidSeg; } static ScrollUp() { CopyW(VidSeg + 160, VidSeg, 1920); /* move up */ SetW(VidSeg + 3840, 80, Blank); /* clear last line */ VidAddr -= 160; row = 24; } static doCR() { VidAddr -= (col << 1); col = 0; } static doLF() { VidAddr += 160; if (++row > 24) ScrollUp(); } static doBS() { if (col) { --col; VidAddr -= 2; } } static doHT() { while (col & 7) putone(' '); } static putone(c) char c; { PokeW(Attr + c, VidAddr); VidAddr += 2; if (++col > 79) { col = 0; doLF(); } } 
评论
    相关推荐
    • 进程线程结束暂停源码
      进程线程暂停或者进程线程结束或者牛逼嗷嗷牛逼
    • 基于c#的简单的进程与线程管理器
      基于c# 简单的 进程 线程 管理器 适合于新手用
    • Python3实现进程与线程的编程
      使用Python3模拟了进程线程的整体流程,让大家知道整个的关系,从而知道细节,也加强了动手能力
    • 操作系统实验二:进程与线程
      1. 在windows 下编写一个控制台应用...在windows 环境下编写一个控制台应用程序,输出系统中正在运行的进程的信息,包括进程号、进程所运行的程序、进程的启动时间、在核心态下消耗的时间以及在用户态下消耗的时间。
    • 进程与线程.rar
      这个里面有十几个VC++关于进程线程的例子,包括线程同步:信号量、临界区、消息通信、事件、互斥量、进程通信、进程创建等等,很不错,我从pudn等网站上搜集的,很不错的,自己运行过,可以运行。特共享于此!
    • Visual C++ 进程与线程
      Visual C++ 进程与线程 相关源代码,涵盖终止当前进程,获取系统进程,终止指定进程,在程序中启动程序,使用事件对象同步进程,在两个执行程序间进行数据通信,使用工作线程,正常终止线程,异常终止进程,使用线程...
    • 操作系统进程与线程。。。。
      第01讲_概述.ppt第02讲_进程与线程.ppt第03讲_进程间通信同步.ppt第04讲_经典IPC问题.ppt.。。。。。。。。。。。。。。。。。。
    • MFC进程与线程Demo程序.zip
      关于MFC的的进程与线程示例程序,包括如何终止当前进程、如何获取系统进程、如何终止指定进程、如何在两个执行程序间进行数据通信、如何使用线程优先级等
    • c++进程与线程
      c++进程与线程,好东西,可以看看学习之用,值得看看!
    • 利用进程与线程对计算机进行侦测程序.rar
      利用进程与线程对计算机进行侦测程序,教学用的小程序。