diff --git a/src/add-ons/kernel/drivers/graphics/skeleton/README.html b/src/add-ons/kernel/drivers/graphics/skeleton/README.html index aac05c18c0..a50f6d1a84 100644 --- a/src/add-ons/kernel/drivers/graphics/skeleton/README.html +++ b/src/add-ons/kernel/drivers/graphics/skeleton/README.html @@ -2,61 +2,36 @@ - Readme for (open)BeOS Unified Nvidia graphics driver + Readme for Haiku skeleton graphics driver -

Unified Nvidia graphics driver for (open)BeOS



+

Haiku skeleton graphics driver




NOTE PLEASE:
You use this software at your own risk! Although I don't expect it to damage your PC, videocard or Monitor, I cannot guarantee this!


Supported cards (as far as is known):



Features:

Known limitations:

Installation:

-If you encounter bugs, please checkout the driver's website to see if it's already on the todo list. You can also checkout the UPDATE file included with this driver to see if it should have been fixed. If you think it's prudent, or if you are unsure, then please fill out the bugreport form on the site or send me an Email. Make sure you are as precise as possible because that will make things easier to trackdown and fix...
-
-
-OK, now that's all said let's get to it ;-)

In contrary to what I have said before you don't need to de-install official Be drivers for this driver to work correctly. This driver will install in the user part of the BeOS, so not in the system part where the official drivers are.
-BeOS first checks (during boot) if there are 'user-addons' that should be loaded for a device. If not, it loads it's own drivers (if any). You can select which driver should be loaded by hitting the spacebar as soon as the BeOS 'icons' screen appears. If you select disable user addons the system will load it's own drivers. If you don't do anything, the system will load the (open)BeOS Nvidia TNT/GeForce graphics driver.
+BeOS first checks (during boot) if there are 'user-addons' that should be loaded for a device. If not, it loads it's own drivers (if any). You can select which driver should be loaded by hitting the spacebar as soon as the BeOS 'icons' screen appears. If you select disable user addons the system will load it's own drivers. If you don't do anything, the system will load the Haiku skeleton graphics driver.

-Note: This might turn out to be handy if you run into trouble upon testing the driver, or if you are 'tweaking' the nv.settings file...
+Note: This might turn out to be handy if you run into trouble upon testing the driver, or if you are 'tweaking' the skel.settings file...


actual INSTALLATION:

@@ -72,41 +47,34 @@ Unzip the zip file that contains the driver to the root folder. Now reboot and y
Currently there's no uninstall script included. Just do it manually:

-Delete the nv.accelerant file in home/config/add-ons/accelerants/
-Delete the nv.driver file in home/config/add-ons/kernel/drivers/bin/
-Delete the nv.settings file in home/config/settings/kernel/drivers/
-Delete the nv.driver shortcut in home/config/add-ons/kernel/drivers/dev/graphics/ which pointed to the file nv.driver.
+Delete the skel.accelerant file in home/config/add-ons/accelerants/
+Delete the skel.driver file in home/config/add-ons/kernel/drivers/bin/
+Delete the skel.settings file in home/config/settings/kernel/drivers/
+Delete the skel.driver shortcut in home/config/add-ons/kernel/drivers/dev/graphics/ which pointed to the file skel.driver.

You have to reboot in order to apply the original configuration.



Settings:


-Please read this information carefully *before* installing and using the (open)BeOS Nvidia TNT/GeForce graphics driver. It might spare you some trouble afterwards..
-

The driver uses a file named nv.settings to determine how to use your card. After installation this file will be located at home/config/settings/kernel/drivers/. How you should setup this file depends on what you want to do with the driver. While it has a 'failsave' default configuration, you might be able to do better than that... Anyway, read the nifty details below.
+Please read this information carefully *before* installing and using the Haiku skeleton graphics driver. It might spare you some trouble afterwards..
+

The driver uses a file named skel.settings to determine how to use your card. After installation this file will be located at home/config/settings/kernel/drivers/. How you should setup this file depends on what you want to do with the driver. While it has a 'failsave' default configuration, you might be able to do better than that... Anyway, read the nifty details below.

Note: The driver only reads this file during it's initialisation. This means that you have to reboot in order to let changes take effect.



-nv.settings driver configuration:
+skel.settings driver configuration:

  • logmask: (set to minimal by default)
    -The logmask option is very handy to track down trouble in the driver. You should only enable this if you are doing so, otherwise keep it turned off because it slows down your system. (All lines have a '#' preceding 'logmask' by default.) Logging creates a logfile called nv.accelerant.0.log in your ~ (home) folder. A second logfile may get created depending on how the driver is used (on cloning; for BWindowScreen for example). The second file is called nv.accelerant.1.log, and it will also be in your home folder.
    +The logmask option is very handy to track down trouble in the driver. You should only enable this if you are doing so, otherwise keep it turned off because it slows down your system. (All lines have a '#' preceding 'logmask' by default.) Logging creates a logfile called skel.accelerant.0.log in your ~ (home) folder. A second logfile may get created depending on how the driver is used (on cloning; for BWindowScreen for example). The second file is called skel.accelerant.1.log, and it will also be in your home folder.
    Note:
  • switchhead:
    The driver always autodetects which output should be used as primary one, but you can let the driver 'invert' the outcome of that detection with this option (only for dualhead cards). @@ -160,9 +128,9 @@ Keep this option set to force_pci false, unless the graphics ca This option is only used if your card is running in AGP mode. It's a real tweak option. It's officially unsupported, and it's unknown if it can do harm to your card or system. It exists because using it can speedup unaccelerated graphics a lot. Think about video playback or playing quake2 in software rendering mode...
  • pgm_panel:
    This option only has an effect if you have a laptop panel or DVI panel connected. It's existing because it's currently impossible to setup the driver in a way every single panel outthere is happy about it. @@ -177,6 +145,6 @@ With the pgm_panel true setting, the driver will fix your panel

    Rudolf Cornelissen. -

    (Page last updated on November 1, 2004)

    +

    (Page last updated on November 4, 2004)

    diff --git a/src/add-ons/kernel/drivers/graphics/skeleton/UPDATE.html b/src/add-ons/kernel/drivers/graphics/skeleton/UPDATE.html index 4891cc21d8..2cd8200c47 100644 --- a/src/add-ons/kernel/drivers/graphics/skeleton/UPDATE.html +++ b/src/add-ons/kernel/drivers/graphics/skeleton/UPDATE.html @@ -4,150 +4,14 @@

    Changes done for each driverversion:

    -

    nv_driver 0.30, (Rudolf)

    +

    skel_driver 0.00, (Rudolf)

    -

    nv_driver 0.22, (Rudolf)

    - -

    nv_driver 0.10, (Rudolf)

    - -
    -NOTE:
    -The features below are shutdown because they are possibly dangerous without feedback: No documentation on this exists, so this was setup by me tested on my cards only. Feedback (logfiles!) you might send to me might help me gain more info about IF we can use (or need) this, and IF it's OK to use it for a later driver release. - -

    nv_driver 0.09, (Rudolf)

    - -

    nv_driver 0.08, (Rudolf)

    - -

    nv_driver 0.07 (Rudolf)

    - -

    nv_driver 0.06 (Rudolf)

    - -

    nv_driver 0.05 (Rudolf)

    - -

    nv_driver 0.04 (Rudolf)

    - -

    nv_driver 0.03 (Rudolf)

    - -

    nv_driver 0.02 (Rudolf)

    -

    Still todo:

    diff --git a/src/add-ons/kernel/drivers/graphics/skeleton/driver.c b/src/add-ons/kernel/drivers/graphics/skeleton/driver.c index 8f9767955c..3879c9ef5b 100644 --- a/src/add-ons/kernel/drivers/graphics/skeleton/driver.c +++ b/src/add-ons/kernel/drivers/graphics/skeleton/driver.c @@ -76,7 +76,7 @@ static status_t control_hook (void* dev, uint32 msg, void *buf, size_t len); static status_t map_device(device_info *di); static void unmap_device(device_info *di); static void probe_devices(void); -static int32 nv_interrupt(void *data); +static int32 eng_interrupt(void *data); static DeviceData *pd; static isa_module_info *isa_bus = NULL; @@ -110,7 +110,7 @@ static struct { {0x0000, NULL} }; -static settings current_settings = { // see comments in nv.settings +static settings current_settings = { // see comments in skel.settings // for driver DRIVER_PREFIX ".accelerant", false, // dumprom @@ -444,7 +444,7 @@ static status_t map_device(device_info *di) return rom_area; } - /* dump ROM to file if selected in nv.settings + /* dump ROM to file if selected in skel.settings * (ROM always fits in 64Kb: checked TNT1 - FX5950) */ if (current_settings.dumprom) dumprom (rom_temp, 65536); /* make a copy of ROM for future reference */ @@ -585,7 +585,7 @@ static uint32 thread_interrupt_work(int32 *flags, vuint32 *regs, shared_info *si } static int32 -nv_interrupt(void *data) +eng_interrupt(void *data) { int32 handled = B_UNHANDLED_INTERRUPT; device_info *di = (device_info *)data; @@ -725,7 +725,7 @@ static status_t open_hook (const char* name, uint32 flags, void** cookie) { else { /* otherwise install our interrupt handler */ - result = install_io_interrupt_handler(di->pcii.u.h0.interrupt_line, nv_interrupt, (void *)di, 0); + result = install_io_interrupt_handler(di->pcii.u.h0.interrupt_line, eng_interrupt, (void *)di, 0); /* bail if we couldn't install the handler */ if (result != B_OK) goto delete_the_sem; } @@ -810,7 +810,7 @@ free_hook (void* dev) { disable_vbi(regs); /* remove interrupt handler */ - remove_io_interrupt_handler(di->pcii.u.h0.interrupt_line, nv_interrupt, di); + remove_io_interrupt_handler(di->pcii.u.h0.interrupt_line, eng_interrupt, di); /* delete the semaphores, ignoring any errors ('cause the owning team may have died on us) */ delete_sem(si->vblank); @@ -852,14 +852,14 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { /* PRIVATE ioctl from here on */ case NV_GET_PRIVATE_DATA: { - nv_get_private_data *gpd = (nv_get_private_data *)buf; + eng_get_private_data *gpd = (eng_get_private_data *)buf; if (gpd->magic == NV_PRIVATE_DATA_MAGIC) { gpd->shared_info_area = di->shared_area; result = B_OK; } } break; case NV_GET_PCI: { - nv_get_set_pci *gsp = (nv_get_set_pci *)buf; + eng_get_set_pci *gsp = (eng_get_set_pci *)buf; if (gsp->magic == NV_PRIVATE_DATA_MAGIC) { pci_info *pcii = &(di->pcii); gsp->value = get_pci(gsp->offset, gsp->size); @@ -867,7 +867,7 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_SET_PCI: { - nv_get_set_pci *gsp = (nv_get_set_pci *)buf; + eng_get_set_pci *gsp = (eng_get_set_pci *)buf; if (gsp->magic == NV_PRIVATE_DATA_MAGIC) { pci_info *pcii = &(di->pcii); set_pci(gsp->offset, gsp->size, gsp->value); @@ -875,14 +875,14 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_DEVICE_NAME: { // apsed - nv_device_name *dn = (nv_device_name *)buf; + eng_device_name *dn = (eng_device_name *)buf; if (dn->magic == NV_PRIVATE_DATA_MAGIC) { strcpy(dn->name, di->name); result = B_OK; } } break; case NV_RUN_INTERRUPTS: { - nv_set_bool_state *ri = (nv_set_bool_state *)buf; + eng_set_bool_state *ri = (eng_set_bool_state *)buf; if (ri->magic == NV_PRIVATE_DATA_MAGIC) { vuint32 *regs = di->regs; if (ri->do_it) { @@ -894,7 +894,7 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_GET_NTH_AGP_INFO: { - nv_nth_agp_info *nai = (nv_nth_agp_info *)buf; + eng_nth_agp_info *nai = (eng_nth_agp_info *)buf; if (nai->magic == NV_PRIVATE_DATA_MAGIC) { nai->exist = false; nai->agp_bus = false; @@ -908,7 +908,7 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_ENABLE_AGP: { - nv_cmd_agp *nca = (nv_cmd_agp *)buf; + eng_cmd_agp *nca = (eng_cmd_agp *)buf; if (nca->magic == NV_PRIVATE_DATA_MAGIC) { if (agp_bus) { nca->agp_bus = true; @@ -921,7 +921,7 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_ISA_OUT: { - nv_in_out_isa *io_isa = (nv_in_out_isa *)buf; + eng_in_out_isa *io_isa = (eng_in_out_isa *)buf; if (io_isa->magic == NV_PRIVATE_DATA_MAGIC) { pci_info *pcii = &(di->pcii); @@ -950,7 +950,7 @@ control_hook (void* dev, uint32 msg, void *buf, size_t len) { } } break; case NV_ISA_IN: { - nv_in_out_isa *io_isa = (nv_in_out_isa *)buf; + eng_in_out_isa *io_isa = (eng_in_out_isa *)buf; if (io_isa->magic == NV_PRIVATE_DATA_MAGIC) { pci_info *pcii = &(di->pcii);