home *** CD-ROM | disk | FTP | other *** search
- PROCEDURE inverseMouse;
-
- var
- inversemasks : array[0..1,0..15] of word;
- Regs : Registers;
-
- BEGIN
-
- { Screen Mask }
-
- inversemasks[0,0] := $9FFF; {1001111111111111}
- inversemasks[0,1] := $AFFF; {1010111111111111}
- inversemasks[0,2] := $B7FF; {1011011111111111}
- inversemasks[0,3] := $BBFF; {1011101111111111}
- inversemasks[0,4] := $BDFF; {1011110111111111}
- inversemasks[0,5] := $BEFF; {1011111011111111}
- inversemasks[0,6] := $BF7F; {1011111101111111}
- inversemasks[0,7] := $BFBF; {1011111110111111}
- inversemasks[0,8] := $BFDF; {1011111111011111}
- inversemasks[0,9] := $BE0F; {1011111000001111}
- inversemasks[0,10] := $B6FF; {1011011011111111}
- inversemasks[0,11] := $AB7F; {1010101101111111}
- inversemasks[0,12] := $9B7F; {1001101101111111}
- inversemasks[0,13] := $FDBF; {1111110110111111}
- inversemasks[0,14] := $FDBF; {1111110110111111}
- inversemasks[0,15] := $FE3F; {1111111000111111}
-
- { Cursor Mask }
-
- inversemasks[1,0] := $0000; {0000000000000000}
- inversemasks[1,1] := $2000; {0010000000000000}
- inversemasks[1,2] := $3000; {0011000000000000}
- inversemasks[1,3] := $3800; {0011100000000000}
- inversemasks[1,4] := $3C00; {0011110000000000}
- inversemasks[1,5] := $3E00; {0011111000000000}
- inversemasks[1,6] := $3F00; {0011111100000000}
- inversemasks[1,7] := $3F80; {0011111110000000}
- inversemasks[1,8] := $3FC0; {0011111111000000}
- inversemasks[1,9] := $3E00; {0011111000000000}
- inversemasks[1,10] := $3600; {0011011000000000}
- inversemasks[1,11] := $2300; {0010001100000000}
- inversemasks[1,12] := $0300; {0000001100000000}
- inversemasks[1,13] := $0180; {0000000110000000}
- inversemasks[1,14] := $0180; {0000000110000000}
- inversemasks[1,15] := $0000; {0000000000000000}
- regs.AX := 9;
- regs.BX := 1;
- regs.CX := 0;
- regs.DX := ofs(inversemasks);
- regs.ES := seg(inversemasks);
- Intr(51,Regs);
- end;
-