home *** CD-ROM | disk | FTP | other *** search
/ ProfitPress Mega CDROM2 …eeware (MSDOS)(1992)(Eng) / ProfitPress-MegaCDROM2.B6I / UTILITY / SCREEN / ZAVT11.ZIP / ZAVT_D.ASM < prev    next >
Encoding:
Assembly Source File  |  1990-05-28  |  1.8 KB  |  89 lines

  1. ;--- zansi.asm ----------------------------------------------------------
  2. ; Definitions for Zephyr ANSI terminal driver.
  3. ;    Copyright (C) 1986-1987, Thomas Hanlin III, Alexandria VA.
  4. ;    Based on original code for NANSI by Daniel Kegel, Pasadena CA.
  5.  
  6. is_8088        =    -1    ; no fancy instructions if true
  7. avatar        =    -1    ; support AVATAR is true
  8. wrap_left    =    -1    ; support wrap left margin if true
  9. direct_scroll    =    0    ; direct access scroll if true
  10. two_handlers    =    -1    ; seperate KEYB driver included
  11. fullscreen    =    -1    ; full screen input if true
  12. slow        =    0    ; buffer cursor set for fast machines
  13. xlate        =    -1    ; allow keyboard translation
  14.  
  15. keybuf    struc
  16. len    dw    ?
  17. adr    dw    ?
  18. keybuf    ends
  19.  
  20.     if    not is_8088
  21.         .286c
  22.     endif
  23.  
  24. ;--- push_all, pop_all ------------------------------------------------
  25. ; Save/restore all user registers.
  26. push_all    macro
  27.     if    is_8088
  28.     push    ax
  29.     push    bx
  30.     push    cx
  31.     push    dx
  32.     push    bp
  33.     push    si
  34.     push    di
  35.     else
  36.     pusha
  37.     endif
  38.     push    ds
  39.     push    es
  40.     endm
  41.  
  42. pop_all    macro
  43.     pop    es
  44.     pop    ds
  45.     if    is_8088
  46.     pop    di
  47.     pop    si
  48.     pop    bp
  49.     pop    dx
  50.     pop    cx
  51.     pop    bx
  52.     pop    ax
  53.     else
  54.     popa
  55.     endif
  56.     endm
  57.  
  58. ;--- hold ---------------------------------------------------------
  59. ; wait for the system to catch up on faster machines
  60. hold    macro
  61.     if    slow
  62.     jmp    short $+2
  63.     endif
  64.     endm
  65. ;--- ABS40 ----------------------------------------------------------
  66. ; template for BIOS data area
  67. ABS40    segment at 40h
  68.     org    1ah
  69. buffer_head    dw    ?    ; Used in 'flush input buffer' dos call.
  70. buffer_tail    dw    ?
  71.  
  72.     org    49h
  73. crt_mode    db    ?
  74. crt_cols    dw    ?
  75. crt_len     dw    ?
  76. crt_start    dw    ?
  77. cursor_posn    dw    8 dup (?)
  78. cursor_mode    dw    ?
  79. active_page    db    ?
  80. addr_6845    dw    ?
  81.     org    6ch
  82. timer_low    dw    ?    ; low word of time-of-day counter (18.2 hz)
  83.  
  84.     org    84h
  85. crt_rows    db    ?
  86. ABS40    ends
  87.  
  88. ;---- end of zavt_d.asm ----
  89.