home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 14 / CDACTUAL.iso / cdactual / demobin / share / program / asm / RTGRAF.ZIP / SOURCE.ZIP / MACROS.ASM < prev    next >
Encoding:
Assembly Source File  |  1990-05-05  |  1.7 KB  |  61 lines

  1. GRAPHIC12        EQU  3ceh
  2. SETRESET         EQU  0
  3. ENABLERESET      EQU  1
  4. DATA_ROTATE_REG  EQU  3
  5. READ_PLANE_SEL   EQU  4
  6. WRITMODE_REG     EQU  5
  7. BIT_MASK_REG     EQU  8
  8. ENABLESET        EQU  0fh
  9.  
  10. SEQUENCE_REG     EQU  3c4h
  11. MAP_MASK_REG     EQU  2
  12.  
  13.  
  14. GR12_BITMASK    macro  mask
  15.         mov     dx,GRAPHIC12     ; set bit mask to right side
  16.         mov     al,BIT_MASK_REG
  17.         out     dx,al
  18.         inc     dx
  19.         mov     al,mask          ; right end bit mask
  20.         out     dx,al
  21.         endm
  22.  
  23. SEQ_PLANE       macro  wplane
  24.         mov     dx,SEQUENCE_REG ; enable current plane
  25.         mov     al,MAP_MASK_REG
  26.         out     dx,al
  27.         inc     dx
  28.         mov     al,wplane       ;  set the plane to work with
  29.         out     dx,al
  30.         endm
  31.  
  32. GR12_FUNCTION   macro  func
  33.         mov     dx,GRAPHIC12
  34.         mov     al,DATA_ROTATE_REG
  35.         out     dx,al           ; set logical operation in ega controller
  36.         inc     dx
  37.         mov     al,func         ; logical function
  38.         out     dx,al
  39.         endm
  40.  
  41. READ_PLANE      macro  which
  42.         mov     dx,GRAPHIC12    ; set lfbmask
  43.         mov     al,READ_PLANE_SEL
  44.         out     dx,al
  45.         inc     dx
  46.         mov     al,which  ;
  47.         out     dx,al
  48.         endm
  49.  
  50. GR12_WRITMODE   macro  mode
  51.         mov     dx,GRAPHIC12
  52.         mov     al,WRITMODE_REG
  53.         out     dx,al           ; set logical operation in ega controller
  54.         inc     dx
  55.         mov     al,mode         ; mode 0=direct write
  56.                                 ;      1=controller latch write
  57.                                 ;      2=bit 'n' to plane 'n' - packed write
  58.                                 ;      3=not used
  59.         out     dx,al
  60.         endm
  61.