AminetAminet
Search:
84734 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/cdity/P96ScreenCx.lha

Mirror:Random
Showing: m68k-amigaos iconppc-amigaos iconppc-morphos iconi386-aros iconi386-amithlon iconppc-warpup iconppc-powerup icongeneric icon
No screenshot available
Short:P96 Multi-Monitor Mouse Movement
Author: thomas.richter at alumni.tu-berlin.de (Thomas Richter)
Type:util/cdity
Version:42.5
Architecture:m68k-amigaos
Date:2023-04-15
Requires:P96 >= 3.1.0
Download:util/cdity/P96ScreenCx.lha - View contents
Readme:util/cdity/P96ScreenCx.readme
Downloads:994

P96ScreenCx enables free multi-monitor mouse travel on P96 setups.
Thus, once properly configured, the mouse pointer can travel 
horizontally and vertically between adjacent monitors.

For example, the output of two graphic cards are displayed on two
monitors side by side, the mouse enters the right monitor when
leaving the left monitor on the right side, and vice versa.

While intuition does (not yet?) allow free movements between monitors,
this commodity enables the mouse monitor to travel freely between
monitors.

----------------------------------------------------------------------

New in release 42.5:

- P96ScreenCx no longer switches screens while any of the
  mouse buttons are pressed. This avoids trouble in case
  a menu is open, or you drag a window.

----------------------------------------------------------------------

New in release 42.4:

- P96ScreenCx has to create synthetic mouse movement events to
  position the mouse at the adjancent edge of the target screen.
  The mechanism by which P96ScreenCx created these events was
  overly complicated, and also caused side effects with other
  commodities. This release uses a much simpler mechanism through
  the commodities.library that improves compatibility with other
  programs.
- Mouse pointer movement through Amiga/CBM+cursor keys did not
  trigger screen flipping, i.e. the mouse pointer could not leave
  the current screen if moved by cursor keys. This has been fixed,
  P96ScreenCx now also recognizes pointer movements through cursor
  keys.

----------------------------------------------------------------------

New in release 42.3:

- One of the direction-indicator bits in the internal movement
  analysis was broken and could have placed the mouse pointer
  incorrectly on vertical movements.
- A new tooltype / command line argument has been added.
  ACTIVATE_SCREEN attempts to record the last active window on
  a screen switched away from, and then attempts to restore the
  input focus when switching back to the screen. 
  However, due to the intuition internal event handling, this
  tooltype may have some impact on autoscroll screens such that
  the screen may scroll away while the window activation is still
  in process. Thus, mouse pointer re-position may be deferred if
  if this enabled.

----------------------------------------------------------------------

New in release 42.2:

- The DONOTWAIT tooltype apparently confused the tool when started
  from the workbench as it confused it with the monitor search path.
  This was fixed.
- The default diagnostic output if run from the workbench goes now
  into a console window.
- The commodity warns now if no switchable boards are found or all
  boards are in the display chain.

----------------------------------------------------------------------

New in release 42.1:

- This is the first Aminet release.

----------------------------------------------------------------------

Installation:

- Copy P96ScreenCx to the WBStartup folder (on Os 3.9 or above)
- or RUN it in the Startup-Sequence
- Edit the monitor tooltypes to match the monitor arrangement,
  see below.

P96ScreenCx does not have a graphical user interface. It reads its
configuration from its own tool types or command line interface, and
the tooltypes of the P96 monitors.

For configure the placement of the physical monitors, one of the 
following new tooltypes can be added to the existing monitor icons:

LEFT_OF=<monitor name>
RIGHT_OF=<monitor name>
ABOVE=<monitor name>
BELOW=<monitor name>

<monitor name> is the BOARDTYPE of another P96 monitor, or the keyword
"Native" to configure placement relative to the native Amiga output.


For example, consider the following 3-monitor setup:


+-----------+ +----------+ +-----------+
|	    | |          | |           |
| GBA-PII++ | |  Native  | | CVision3D |
|           | |          | |           |
+-----------+ +----------+ +-----------+

Then the tooltypes of the GBA-PII++ monitor icon in DEVS:Monitors
includes the following new tooltype:

LEFT_OF=Native

and the tool type of the CVision3D monitor icon includes the new
tooltype:

RIGHT_OF=Native


The following setup

+-----------+ +----------+ +-----------+
|	    | |          | |           |
| Native    | | GBA-PII++| | CVision3D |
|           | |          | |           |
+-----------+ +----------+ +-----------+

would be represented by:

RIGHT_OF=Native 

in the GBA-PII++ icon and

RIGHT_OF=GBA-PII++

in the CVision3D icon -or-

LEFT_OF=CVision3D

in the GBA-PII++ icon.

There is no need to "double link" the CVIsion3D monitor
with the GBA-PII++ monitor icon, i.e. only one of the two
latter tool types need to be added: One tooltype in the
GBA-PII++ icon, one tooltype in the CVision3D monitor icon,
or two tooltypes in the GBA-PII++ icon and none in the
CVision3D monitor icon.

----------------------------------------------------------------------

P96 drivers only participate in multi-monitor switching if their
DISPLAYCHAIN tooltype is set to NO. Otherwise, they are assumed
to be displayed on the same monitor as the native Amiga video, and
thus do not receive their own set of tool types. Placement relative
to "shared" P96 cards in the display chain is indicated by the "Native"
monitor.

Thus, the following setup


+-----------+ +-----------+
| GBA-PII++ | |           |
| Native    | | CVision3D |
|           | |           |
+-----------+ +-----------+

with GBA-PII++ and Amiga output sharing the same screen is indicated
by a single tooltype in the CVision3D monitor icon, namely

RIGHT_OF=Native

Tooltypes of the GBA-PII++ monitor are not used.

----------------------------------------------------------------------

Quirks:

If you have a GBA-PII++ board, ensure that the P96 component is
named "GBA-PII++" WITH A DASH IN THE NAME. That is, LIBS:Picasso96
should contain a file named

GBA-PII++.card

If necessary, rename the file accordingly (with the dash) and update
the BOARDNAME tooltype of its monitor icon to 

BOARDNAME=GBA-PII++

again with a dash. This is because the card driver identifies itself
as GBA-PII++ with dash. Unfortunately, some installations may have
named card drive and BOARDNAME incorrectly.

----------------------------------------------------------------------

P96ScreenCx command line arguments:

P96ScreenCx MONITORS/K,ACTIVATE_SCREEN/S,CX_PRIORITY/N

MONITORS	The directory name where the P96 monitor icons are kept.
		This should typically be DEVS:Monitors, but any other
		directory can be configured as well.

CX_PRIORITY	The priority of the P96ScreenCx "commodity" component 
		relative to all other commodities. The default is 0. This
		is typically not required.

ACTIVATE_SCREEN	If given as command line argument or as tool type, the
	     	commodity attempts to restore the input focus on screens
		being switched to. May defer window pointer repositioning
	     	on autoscroll screens, though.

The above command line arguments are also recognized as ToolTypes of 
the P96ScreenCx icon, if run from the workbench. In addition, the
following ToolType is also recognized:

WINDOW=<output path>

This is a path to a CON: window to which P96ScreenCx writes its
diagnostic output, if any. By default, the output goes to the console
if run from the shell, or to a newly opened console window if run 
from the workbench. 

----------------------------------------------------------------------

                      The THOR-Software Licence (v3, January 2nd 2021)


This License applies to the computer programs known as the "P96ScreenCx".
The "Program", below, refers to such program. The "Archive" refers to
the package of distribution, as prepared by the author of the Program,
Thomas Richter. Each licensee is addressed as "you".


The Program and the data in the archive are freely distributable
under the restrictions stated below, but are also Copyright (c)
Thomas Richter.

Distribution of the Program, the Archive and the data in the Archive by a
commercial organization without written permission from the author to any
third party is prohibited if any payment is made in connection with such
distribution, whether directly (as in payment for a copy of the Program) or
indirectly (as in payment for some service related to the Program, or
payment for some product or service that includes a copy of the Program
"without charge"; these are only examples, and not an exhaustive
enumeration of prohibited activities).


However, the following methods of distribution involving payment shall not
in and of themselves be a violation of this restriction:

(i) Distributing the Program on a physical data carrier (e.g. CD-ROM,
    DVD, USB-Stick, Disk...) provided that:

a) the Archive is reproduced entirely and verbatim on such data carrier,
   including especially this licence agreement;

b) the data carrier is made available to the public for a nominal
   fee only, i.e. for a fee that covers the costs of the data carrier,
   and shipment of the data carrier;

c) a data carrier with the Program installed is made available to the
   author for free except for shipment costs, and

d) provided further that all information on said data carrier is
   redistributable for non-commercial purposes without charge.


Redistribution of a modified version of the Archive, the Program or the
contents of the Archive is prohibited in any way, by any organization,
regardless whether commercial or non-commercial. Everything must be kept
together, in original and unmodified form.



Limitations.


THE PROGRAM IS PROVIDED TO YOU "AS IS", WITHOUT WARRANTY. THERE IS NO
WARRANTY FOR THE PROGRAM, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE
RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD
THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
SERVICING, REPAIR OR CORRECTION.


IF YOU DO NOT ACCEPT THIS LICENCE, YOU MUST DELETE THE PROGRAM, THE ARCHIVE
AND ALL DATA OF THIS ARCHIVE FROM YOUR STORAGE SYSTEM. YOU ACCEPT THIS
LICENCE BY USING OR REDISTRIBUTING THE PROGRAM.


                                                        Thomas Richter

----------------------------------------------------------------------

Send ideas, improvements, bugreports (please as concrete as possible) to:


        Thomas Richter


EMail:  thomas.richter@alumni.tu-berlin.de

----------------------------------------------------------------------

Thomas Richter,
       January 2022.




Contents of util/cdity/P96ScreenCx.lha
PERMISSION  UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP     NAME
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                 3030    4656  65.1% -lh5- c19a Apr 14 14:49 P96ScreenCx
[unknown]                 4116   10863  37.9% -lh5- ecf6 Apr 14 14:56 P96ScreenCx.readme
[unknown]                  505    1129  44.7% -lh5- a173 Jan 24  2022 P96ScreenCx.info
[unknown]                  369     852  43.3% -lh5- 1547 Jan 24  2022 P96ScreenCx.readme.info
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total         4 files    8020   17500  45.8%            Apr 15 03:25
Page generated in 0.02 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>