Short: S3Virge PCI P96 driver Author: thomas.richter@alumni.tu-berlin.de (Thomas Richter) Uploader: thomas richter alumni tu-berlin de (Thomas Richter) Type: driver/video Version: 43.67 Requires: P96 >= 3.3.0, OpenPCI >= 2.0, AmigaOs 3.0 Architecture: m68k-amigaos >= 3.0 The S3ViRGE.card driver is a P96 driver that implements the interface between the openpci.library and the S3ViRGE.chip low-level driver. Thus, technically, this driver offers everything the S3ViRGE.chip driver does, namely panning, screen dragging, mode mixing, sprites and overlays. It supports also aperture switching and big- and little endian modes due to the two aperture windows the S3 chip has to offer. Unfortunately, due to limitations of the PCI infrastructure, it does not offer native planar modes. Planar is only possible through P96 emulation. At this time, the driver is not yet tested on the S3ViRGE/DX which has a different PCI ID, but is also recognized by this driver. Feedback is appreciated. While in general any version of OpenPCI should do, the S3Virge is a very early PCI design and does not require access of all of its registers in the PCI space until the chip has been "woken up". The wake-up sequence requires access to the legacy IO region the 1.x releases of OpenPCI unfortunately to not grant access to. Thus, updated versions are necessary, such as the openpci implementation of the same author currently under development. Note that many PCI cards available on the PC market *do not* route the interrupt of the S3 chip to the PCI connector. Thus, vertical blank interrupts are not available by default, until enabled by INTERRUPT=Yes in the tool types of the driver. You may also require a new version P96Prefs that recognizes the ID of the chip, to be available soon. ---------------------------------------------------------------------- Changes for release 43.43: - This is the first version. ---------------------------------------------------------------------- Changes for release 43.67: - This driver now supports multiple identical cards in the system and continues scanning for cards until a non-reserved card is found. ---------------------------------------------------------------------- Installation: - Receive an alpha version of the openpci.library of the author, e.g. from a1k.org. The currently available 1.x version are likely *not* sufficient. - Copy S3ViRGE.card to LIBS:Picasso96/ - If not already present in the system, install P96 with the included installer, and select the CVision3D as graphics card. - Ensure that S3ViRGE.chip of the official P96 version is also available in LIBS:Picasso96. - Take the CVision3D monitor icon, and edit its tool types with the workbench. Add or modify the following tool type: BOARDTYPE=S3ViRGE - Rename the icon to S3ViRGE. - Reboot the system, and start either Picasso96Mode or P96Prefs (preferred). - For P96Prefs, select the S3ViRGE monitor and press on "Add Default Modes", then edit the modes to your liking. In particular, for low resolution modes, it may be necessary to adjust the horizontal or vertical frame size (the first two numbers on the right-hand side of the window) to adjust the horizontal and vertical refresh rates to match the requirements of the monitor. - For the Picasso96Mode program, you need to create the desired modes manually. The following additional tool types are recognized by the driver and can be added to the driver icon either by the workbench: INTERRUPT= Enables or disables usage of the vertical blank interrupt of the board. Not all PCI bridge boards may support this. If present, screen operations can be synchronized to the screen, avoiding tearing. MEMORYCLOCK= allows to select the memory clock in Mhz. Useful values are between 100 and 220. Generally, there is no need to play with this tooltype as the correct memory clock is taken from the VESA Bios of the card. DISPLAYCHAIN= Enables (with "yes") or disables (with "no") support for switching monitors. The card itself does not offer a VGA switch, but if you connect the VGA output of the card with one input of your monitor, and the native Amiga output with another input, the inactive output will be disabled, allowing smart monitors to switch between the outputs. This may be used as a poor-men's' VGA switch. FASTDRAWLINE= Enables (with "yes") or disables (with "no") support for the hardware line drawer of the S3 chip. While considered faster, it may actually not perform better than the software renderer in P96, and due to defects in the hardware, is not available in all modes anyhow. The current chip driver should support it correctly if set to YES. This is also the default. ---------------------------------------------------------------------- The THOR-Software Licence (v3, January 2nd 2021) This License applies to the computer programs known as the "S3ViRGE.card". 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 Note that this program is also available under license from individual Computers, Jens Schönfeld GmbH. ---------------------------------------------------------------------- Send ideas, improvements, bug reports (please as concrete as possible) to: Thomas Richter EMail: thomas.richter@alumni.tu-berlin.de ---------------------------------------------------------------------- Thomas Richter, August 2024.