home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 300-399 / ff369.lzh / VaxTerm / src / keymap.h < prev    next >
C/C++ Source or Header  |  1990-08-15  |  3KB  |  101 lines

  1. #define READ(handle,buffer,length)  Read(handle,buffer,length)
  2. #define WRITE(handle,buffer,length) Write(handle,buffer,length)
  3.  
  4. #define KEY(c1,c2,c3,c4)    (ULONG *)(((c1<<24)&0xFF000000)|((c2<<16)&0x00FF0000)|((c3<<8)&0x0000FF00)|(c4&0x000000FF))
  5. #define STR(st)             (ULONG *)st
  6. #define VAL(val)            (ULONG *)(val)
  7. #define NULKEY              KEY(0,0,0,0)
  8.  
  9. #define DPF_O   1
  10. #define DPF_R   1
  11. #define DPF_L   2
  12. #define DPF_H   3
  13. #define DPF_A   4
  14. #define DPF_D   5
  15.  
  16. #define CORN    (1<<0)
  17. #define ITA8    (1<<1)
  18. #define PLEQ    (1<<2)
  19. #define UFCR    (1<<3)
  20. #define UNCR    (1<<4)
  21. #define LFCR    (1<<5)
  22. #define LNCR    (1<<6)
  23. #define AQSW    (1<<7)
  24.  
  25. #define REPC    7
  26.  
  27. struct st_10 {
  28.     UBYTE   lenght1,start1,lenght2,start2;
  29.     UBYTE   code1,term1,code2;
  30.     };
  31.  
  32. struct st_12 {
  33.     UBYTE   lenght1,start1,lenght2,start2;
  34.     UBYTE   code1,term1,code2,c2,term2;
  35.     };
  36.  
  37. struct st_23 {
  38.     UBYTE   lenght1,start1,lenght2,start2;
  39.     UBYTE   code1,c1,term1,code2,c21,c22,term2;
  40.     };
  41.  
  42. struct st_33 {
  43.     UBYTE   lenght1,start1,lenght2,start2;
  44.     UBYTE   code1,c11,c12,term1,code2,c21,c22,term2;
  45.     };
  46.  
  47. struct st_03 {
  48.     UBYTE   lenght1,start1,lenght2,start2;
  49.     UBYTE   code1,code2,c21,c22,term2;
  50.     };
  51.  
  52. struct st_31 {
  53.     UBYTE   lenght1,start1,lenght2,start2;
  54.     UBYTE   slenght1,sstart1,slenght2,sstart2;
  55.     UBYTE   code1,c11,c12,term1,code2,c21,c22,term2;
  56.     UBYTE   scode1,sc1,scode2,sc2;
  57.     };
  58.  
  59. #define ss3_10(name,c1,a1)          struct st_10 name = { 2,4,1,6,SS3,c1,a1 }
  60. #define ss3_12(name,c1,a1)          struct st_12 name = { 2,4,3,6,SS3,c1,SS3,a1,'~' }
  61. #define csi_12(name,c1,a1)          struct st_12 name = { 2,4,3,6,CSI,c1,CSI,a1,'~' }
  62. #define csi_23(name,c1,a1,a2)       struct st_23 name = { 3,4,4,7,CSI,c1,'~',CSI,a1,a2,'~' }
  63. #define csi_33(name,c1,c2,a1,a2)    struct st_33 name = { 4,4,4,8,CSI,c1,c2,'~',CSI,a1,a2,'~' }
  64. #define csi_03(name,c1,a1,a2)       struct st_03 name = { 1,4,4,5,c1,CSI,a1,a2,'~' }
  65. #define css_31(name,c1,c2,a1,a2,ss) struct st_31 name = { 4,8,4,12,2,16,2,18,CSI,c1,c2,'~',CSI,a1,a2,'~',SS3,ss,SS3,ss }
  66.  
  67. #define MKEY(na,a1,a2,l1,l2,l3,l4,l5,l6,u1,u2,u3,u4,u5,u6) UBYTE na[] = { DPF_MOD,16,DPF_MOD,22,0,a1,0,a2,0,u1-'A'+1,0,u1-'A'+1,0,u1-'A'+129,0,u1-'A'+129,l1,l2,l3,l4,l5,l6,u1,u2,u3,u4,u5,u6 }
  68.  
  69. extern UBYTE akey[],ekey[],ikey[],okey[],nkey[],ukey[];
  70. extern UBYTE aoacc[],ahacc[],rlacc[],laacc[],hdacc[],lhacc[],
  71.              hlacc[],dhacc[],daacc[],rdacc[],caacc[],ital8[];
  72.  
  73. #define QR  255
  74.  
  75. struct map {
  76.     ULONG   **keymap;
  77.     char    *id;
  78.     char    *desc;
  79.     };
  80.  
  81. extern UBYTE lotypes[],hitypes[];
  82. extern ULONG *lokeymap[],*hikeymap[];
  83.  
  84. extern ULONG *ag_map[];
  85. extern ULONG *bf_map[];
  86. extern ULONG *br_map[];
  87. extern ULONG *cf_map[];
  88. extern ULONG *dn_map[];
  89. extern ULONG *du_map[];
  90. extern ULONG *fi_map[];
  91. extern ULONG *fl_map[];
  92. extern ULONG *ic_map[];
  93. extern ULONG *it_map[];
  94. extern ULONG *no_map[];
  95. extern ULONG *po_map[];
  96. extern ULONG *sf_map[];
  97. extern ULONG *sg_map[];
  98. extern ULONG *sp_map[];
  99. extern ULONG *sw_map[];
  100. extern ULONG *us_map[];
  101.