?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. ;XECUTE MOUSE
  2. ;TAKE COORDINATES FROM CURPOS==MX
  3.  
  4. MOUSE   LD      HL,(COORD)
  5.         LD      BC,#FBDF
  6.         LD      DE,(OLDCO)
  7.         IN      A,(C)
  8.         LD      (OLDCO),A
  9.         SUB     E
  10.         JR      Z,NM_X
  11.         JP      P,MX_PL
  12.         ADD     A,L
  13.         JR      C,ZER_X
  14.         XOR     A
  15. ZER_X   LD      L,A
  16.         JR      NM_X
  17. MX_PL   ADD     A,L
  18.         JR      C,BEX_Z
  19.         CP      #FD     ;MAXIMUM X
  20.         JR      C,BEX_B
  21. BEX_Z   LD      A,#FD   ;MAXIMUM X
  22. BEX_B   LD      L,A
  23. NM_X    LD      B,#FF
  24.         IN      A,(C)
  25.         LD      (OLDCO+1),A
  26.         SUB     D
  27.         JR      Z,NM_Y
  28.         NEG
  29.         JP      P,MY_PL
  30.         ADD     A,H
  31.         JR      C,ZER_Y
  32.         XOR     A
  33. ZER_Y   LD      H,A
  34.         JR      NM_Y
  35. MY_PL   ADD     A,H
  36.         JR      C,BEY_Z
  37.         CP      #BE     ;MAXIMUM Y
  38.         JR      C,BEY_B
  39. BEY_Z   LD      A,#BE   ;MAXIMUM Y
  40. BEY_B   LD      H,A
  41. NM_Y    LD      A,H
  42.         CP      #FF
  43.         JR      C,BIGY
  44.         LD      H,#FF
  45. BIGY    CP      #02     ;MINIMUM Y
  46.         JR      NC,SMALY
  47.         LD      H,#02   ;MINIMUM Y
  48. SMALY   LD      A,L
  49.         CP      #FF
  50.         JR      C,DIRY
  51.         LD      L,#FF
  52. DIRY    CP      #02     ;MINIMUM X
  53.         JR      NC,DIMENS
  54.         LD      L,#02   ;MINIMUM X
  55. DIMENS  LD      (COORD),HL
  56.         LD BC,#FADF
  57.         LD HL,CONTRB
  58.         IN A,(C)
  59.         CPL
  60.         AND 7
  61.         RLCA
  62.         RLCA
  63.         RLCA
  64.         RLCA
  65.         OR (HL)
  66.         LD (HL),A
  67.         RET
  68.  
  69. COORD   EQU     MX      ;WORKING
  70. OLDCO   DEFW    0       ;WORKING
  71.  
  72.