home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / dtx9203 / asmtrick / maus_all.asm < prev    next >
Assembly Source File  |  1992-01-20  |  3KB  |  123 lines

  1. ;* -------------------------------------------------- *
  2. ;*                   MAUS_ALL.ASM                     *
  3. ;*         (c) 1991 Gerhard Mair & DMV-Verlag         *
  4. ;* -------------------------------------------------- *
  5. ;*  Sprache : TASM / MASM 5.0                         *
  6. ;*  Funktion: Cursortasten-Emulation                  *
  7. ;*  Erzeugen mit:  TASM  MAUS_ALL                     *
  8. ;*                 TLINK MAUS_ALL /T                  *
  9. ;*  oder           MASM  MAUS_ALL                     *
  10. ;*                 LINK  MAUS_ALL                     *
  11. ;* -------------------------------------------------- *
  12. .MODEL SMALL
  13. .CODE
  14.  
  15. A:      MOV     SI,80h
  16.         MOV     AH,[SI]
  17.         CMP     AH,1
  18.         JL      B
  19.  
  20.         MOV     AX,0
  21.         INT     33h
  22.         JMP     D
  23.  
  24. B:      MOV     AX,15
  25.         MOV     CX,1
  26.         MOV     DX,1
  27.         INT     33h
  28.         MOV     AX,3578h
  29.         INT     21h
  30.         MOV     AX,ES
  31.         CMP     AX,0
  32.         JNE     C
  33.  
  34.         CMP     BX,0
  35.         JNE     C
  36.  
  37.         MOV     AX,2578h
  38.         MOV     DX,CS
  39.         MOV     DS,DX
  40.         MOV     DX,OFFSET E
  41.         INT     21h
  42.         MOV     AX,CS
  43.         MOV     ES,AX
  44.         MOV     AX,0Ch
  45.         MOV     CX,11
  46.         INT     33h
  47.         MOV     AX,3100h
  48.         MOV     DX,40h
  49.         INT     21h
  50.  
  51. C:      MOV     DX,BX
  52.         MOV     CX,11
  53.         MOV     AX,0Ch
  54.         INT     33h
  55. D:      MOV     AX,4C00h
  56.         INT     21h
  57.  
  58. ;* -------------------------------------------------- *
  59.  
  60. E  PROC FAR
  61.  
  62.         PUSH    AX
  63.         PUSH    BX
  64.         PUSH    CX
  65.         PUSH    DX
  66.         MOV     BX,AX
  67.         CMP     BX,2
  68.         JNE     F
  69.  
  70.         MOV     CX,0013
  71.         MOV     AH,05h
  72.         INT     16h
  73.  
  74. F:      CMP     BX,8
  75.         JNE     G
  76.  
  77.         MOV     CX,0027
  78.         MOV     AH,05h
  79.         INT     16h
  80.  
  81. G:      CMP     BX,1
  82.         JNE     K
  83.  
  84.         MOV     AX,0Bh
  85.         INT     33h
  86.         MOV     AH,05h
  87.         MOV     BX,CX
  88.         CMP     BX,1
  89.         JLE     H
  90.  
  91.         MOV     CX,4D00h
  92.         INT     16h
  93.  
  94. H:      CMP     BX,-1
  95.         JG      i
  96.  
  97.         MOV     CX,4B00h
  98.         INT     16h
  99.  
  100. i:      CMP     DX,1
  101.         JLE     J
  102.  
  103.         MOV     CX,5000h
  104.         INT     16h
  105. J:      CMP     DX,-1
  106.         JG      K
  107.  
  108.         MOV     CX,4800h
  109.         INT     16h
  110.  
  111. K:      POP     DX
  112.         POP     CX
  113.         POP     BX
  114.         POP     AX
  115.         RET
  116.  
  117. E       ENDP
  118.  
  119. END A
  120. ;* -------------------------------------------------- *
  121. ;*              Ende von MAUS_ALL.ASM                 *
  122.  
  123.