home *** CD-ROM | disk | FTP | other *** search
/ Master Technician / MASTER_TECHNICIAN.ISO / mtech / library / online / hardware / comtest / infoview.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  1993-08-13  |  1.5 KB  |  87 lines

  1. #define Uses_TRect
  2. #define Uses_TView
  3. #define Uses_TDrawBuffer
  4. #include <tv.h>
  5.  
  6. #include <stdlib.h>
  7. #include <mem.h>
  8. #include <bios.h>
  9. #include "infoview.h"
  10.  
  11.  
  12. extern unsigned long xmit_count,recv_count;
  13. extern int baud_rate,com_port;
  14.  
  15. InfoView::InfoView(TRect& r) : TView(r)
  16. {
  17.     memset(xmit_buff,0,sizeof(xmit_buff));
  18.     memset(recv_buff,0,sizeof(recv_buff));
  19.     memset(baud_buff,0,sizeof(baud_buff));
  20.     memset(com_buff,0,sizeof(com_buff));
  21. }
  22.  
  23.  
  24. void InfoView::draw()
  25. {
  26. char c=getColor(2);
  27. TDrawBuffer    buff;
  28.  
  29.     buff.moveChar(0,' ',c,size.x);
  30.  
  31.     buff.moveStr(0,"Bytes Sent:",c);
  32.     buff.moveStr(11,xmit_buff,c);
  33.  
  34.     buff.moveStr(20,"Bytes Received:",c);
  35.     buff.moveStr(35,recv_buff,c);
  36.  
  37.     buff.moveStr(45,"Baud Rate:",c);
  38.     buff.moveStr(55,baud_buff,c);
  39.  
  40.     buff.moveStr(65,"COM Port:",c);
  41.     buff.moveStr(74,com_buff,c);
  42.  
  43.     writeLine(0,0,size.x,1,buff);
  44. }
  45.  
  46.  
  47. void InfoView::update()
  48. {
  49. static unsigned long xmit=0,recv=0;
  50. static int baud=0,port=0;
  51. int    b;
  52.  
  53.     if((xmit!=xmit_count) || (recv!=recv_count) || (port!=com_port) || (baud!=baud_rate))
  54.     {
  55.         xmit=xmit_count;
  56.         recv=recv_count;
  57.         baud=baud_rate;
  58.         port=com_port;
  59.  
  60.         switch(baud)
  61.         {
  62.             case _COM_1200:
  63.                 b=1200;
  64.                 break;
  65.  
  66.             case _COM_2400:
  67.                 b=2400;
  68.                 break;
  69.  
  70.             case _COM_4800:
  71.                 b=4800;
  72.                 break;
  73.  
  74.             case _COM_9600:
  75.                 b=9600;
  76.                 break;
  77.         }
  78.  
  79.         ultoa(xmit,xmit_buff,10);
  80.         ultoa(recv,recv_buff,10);
  81.         itoa(b,baud_buff,10);
  82.         itoa(port+1,com_buff,10);
  83.         drawView();
  84.     }
  85. }
  86.  
  87.