Results 1 to 3 of 3

Thread: Small tools for ELO touchscreens.

  1. #1
    Join Date
    Mar 2006
    Posts
    2,478

    Default Small tools for ELO touchscreens.

    I remember someone here pointed out a good eBay deal on ELO touchscreen monitors, 17", 1747L. I got two of them and they're the best monitors I ever had. During a (failed) search here to find how I learned of them, I notice several people now use these or similar, and maybe some of you use W98 too. If so you might like this...


    MonMouse is based on ELO's touchscreen driver v3.01, downloaded file SW500085.EXE (354KB),
    for W9X and WME. It adds two executable files to improve it.

    MonMouse.exe launches SysMulti.exe, and if already loaded, terminates it and relaunches it.
    The driver often fails during drag operations in graphic intensive programs like PDF viewers
    and image editors. MonMouse.exe is the fastest way to restore correct behaviour.
    Invoke it by keyboard shortcut, ideally with Ctrl+Alt+Shift+Tilde.

    RevMouse.exe swaps left and right mouse buttons. It replaces the Rbutton.exe tool, which was
    a clumsy way to do the same thing. Unlike Rbutton, RevMouse stays in whichever mode is set
    instead of reverting to left click after each single right click. It toggles between states,
    and gives two beeps (clicks in W9X) from the system speaker when entering right button mode,
    and one beep (or click) when reverting to left click mode.
    Invoke it by keyboard shortcut, ideally with Alt+Shift+Tilde.

    The control sequences suggested aren't as awkward as they appear. It is easiest to handle these
    operations with the left hand, at the left end of a keyboard, and they are unlikely to conflict
    with existing keyboard shortcut sequences: Ctrl+Tab,Alt+Tab, both OS GUI standards to alternate
    between documents and processes, and Ctrl+Shift+Tilde which is best used to shut a monitor off
    to save power on demand, and Ctrl+Shift+N where N is a specific disk drive number to shut down
    for power saving.*

    *Tools to do that not included here, just using that as examples of things usefully triggered by left hand for general OS use while using a keyboard...


    SOURCE CODE, ideally compiled with TCC for smallest size. GCC also works well.

    MonMouse.exe:

    Code:
    #include <windows.h>
    
    int WINAPI WinMain(HINSTANCE H_inst,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
      DWORD I=0; STARTUPINFO S; memset(&S,0,sizeof(S)); PROCESS_INFORMATION P; memset(&P,0,sizeof(P));
      GetWindowThreadProcessId(FindWindow("EloXyLdrAppClass",0),&I);
      if(I)TerminateProcess(OpenProcess(PROCESS_TERMINATE,0,I),I);
      Sleep(0);
      CreateProcess("C:\\WINDOWS\\SYSTEM\\SysMulti.exe",0,0,0,0,CREATE_DEFAULT_ERROR_MODE,0,0,&S,&P);
      //DO NOT use ShellExecuteEx(), TCC doesn't use it, and importing GCC headers may be unwise.
      //Also, CreateProcess() stores process ID and a lot of other useful details.
      return 0;
    }
    RevMouse.exe:

    Code:
    #include <windows.h>
    
    int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
    {MessageBeep(-1); if(SwapMouseButton(1))SwapMouseButton(0); else {Sleep(32); MessageBeep(-1);} return 0;}
    Attached Files Attached Files
    Last edited by The_Doctor; 07-30-2013 at 05:39.

  2. #2
    Join Date
    Mar 2006
    Posts
    2,478

    Default

    Small extra point: When loading ELO's SysMulti.exe at boot time it sometimes collides with other driver loads, and fails, causing the Explorer shell to go (painfully) slow. I currently load mine with another tool, Delayer.exe, found somewhere for solving such things. I will likely update MonMouse.exe to take a commandline switch to specify that delay, avoiding the need to use some other tool to do this. This delay will be part of the system startup invocation, it would not affect the seize-fix method described before unless you really wanted it to, and added the switch to that too. If I do code for that delay switch I'll post that here too.



    PS. One of my monitors needs new CCFL backlight tubes. If anyone knows a cheap source of the best long-life tubes, and can instruct me on the easiest and safest way to refit them without damage or dust messing up the innards, please help me to get this done. I think the monitor might outlast me if I can keep getting new tubes for it.

    PPS. Win32 API is astoundingly lacking in an easy way to get a real beep out of the system speaker in W9X! Even the boffs at StackOverflow are usually stumped by this. The Microsoft 'MouseKey accessibility tool' can make beeps, toggling high or low pitch when changing enable state. This is what I wanted RevMouse to do. Maybe there's a 'system service' buried in the standard kernel, or some neat bit of ASM code, that can make real pitched beeps to order? If you know how, please tell me. Note that I do NOT want to add complex libraries for this. It really needs a very neat and small answer, or it's better left as is.
    Last edited by The_Doctor; 07-30-2013 at 05:41.

  3. #3
    Join Date
    Feb 2008
    Location
    East Sussex, England
    Posts
    5,248

    Default

    I've always sung the praises of the ELO touch screens. I've got 2 of the 1525L on my lighting desk. Cheap, solid and reliable.
    Frikkin Lasers
    http://www.frikkinlasers.co.uk

    You are using Bonetti's defense against me, ah?

    I thought it fitting, considering the rocky terrain.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •