xref: /haiku/src/add-ons/kernel/drivers/graphics/nvidia/UPDATE.html (revision a9087159cabb92b7328be67d35d43ae95ccc25b9)
1<html>
2<head>
3<title>Changes</title>
4</head>
5<body>
6<p><h2>Changes done for each driverversion:</h2></p>
7<p><h1>head: nv_driver 0.09-1, (Rudolf)</h1></p>
8<ul>
9	<li>Fixed NV11 trouble with repeating screen(s) on the right side of the monitor.
10</ul>
11<p><h1>nv_driver 0.08, (Rudolf)</h1></p>
12<ul>
13	<li>Fixed GeForceFX 5600 and FX 5700 monitor 'refresh out of range' / shutoff fault. nVidia changed the pixelPLL for the NV31 and NV36;
14	<li>Fixed acceleration engine restrictions code to adhere to GeForceFX 5600 restrictions: those are still NV20 style for this card;
15	<li>Fixed overlay scaling restriction code to adhere to GeForceFX 5600 restrictions: engine is still the NV10/NV20 one, so it can downscale to 1/8 of the picture size;
16	<li>Kernel driver now signals abort on not being able to setup the INT routine instead of letting the machine freeze during accelerant initialisation;
17	<li>BWindowScreen R3-style function update for acceleration and page flipping/virtualscreens in apps ('Allegro' update): fixed cloning accelerants;
18	<li>Now only programming options head select register on dualhead cards. This fixes driver hanging on integrated GeForce2 cards (ID 0x01a0), and maybe also on some other cards;
19	<li>Expanded modelist to include suggested modes above 1600x1200 upto 2048x1536 resolution (if a card supports them): Done by Andrew Bachmann;
20	<li>Added card recognition for GeForceFX 5700, FX 5950 and some other (older) cards;
21	<li>Added 256Mb RAM detection;
22	<li>Improved startup code: this should (could) fix random trouble on some cards like for instance hardcursor trouble on especially laptops;
23	<li>Added dualhead support (use Mark Watson's 'Dualhead Setup' from BeBits for now);
24	<li>Updated mode granularity and max virtual size checking/limiting;
25	<li>Added dualhead support for 8- and 15bit colordepths;
26	<li>Fixed move_display distortions in virtualscreens especially visible in 8-bit colordepth (for both heads);
27	<li>Added 'overlay follows head' for dualhead stretch and switch modes: if more than half the overlay output window is on a screen, that screen gets the overlay output;
28	<li>Added dualhead switch mode (except for NV11 cards as they do not have output connector switching capability);
29	<li>Added monitor presence detection for both monitor output connectors on dualhead cards (analog type signals only);
30	<li>Added 'output follows monitor' for all modes: it does not matter on which connector you connect your monitor, the output will go there after setting a mode; like the card's BIOS does (except for NV11 cards as they do not have output connector switching capability).
31</ul>
32<p><h1>nv_driver 0.07 (Rudolf)</h1></p>
33<ul>
34	<li>Added card recognition for some Nvidia GeForce4 Ti 4600 cards (ID 0x0252);
35	<li>GeForce overlay activation updated: hardware should respond to the first request instead of to the second ('stampTV' update);
36	<li>Included B_YCbCr422 hardware overlay for TNT 1/2 class cards (pre NV10 architecture).
37</ul>
38<p><h1>nv_driver 0.06 (Rudolf)</h1></p>
39<ul>
40	<li>Added full 2D acceleration for TNT1 - GeForce FX cards;
41	<li>Added card recognition for GeForce FX Go and some older laptop cards;
42	<li>Implemented retrace synchronisation (INT routine);
43	<li>Geforce overlay updated: turned off ints explicitly, corrected upscaling restriction to be 8x, small speed improvement;
44	<li>Vertical timing updated: missed a register on all GeForce cards, missed another register on older cards;
45	<li>Register unlocking updated: missed a register on all supported cards.
46</ul>
47<p><h1>nv_driver 0.05 (Rudolf)</h1></p>
48<ul>
49	<li>Update on cursor move routine: pointer will nolonger accept illegal left-top positions. As a result it will nolonger vanish on some cards;
50	<li>Fixed hardware overlay on GeForce4 MX and Go series cards: disabled the embedded MPEG2 decoder engine which exist on these cards only;
51	<li>Fixed driver to adhere to the downscaling limitations of the new overlay engine existing in the GeForceFX series cards.
52</ul>
53<p><h1>nv_driver 0.04 (Rudolf)</h1></p>
54<ul>
55	<li>New cursor_move sync_to_retrace for all supported cards: now all display distortions should be gone (GeForce4 for example);
56	<li>Added hardware overlay support for the entire GeForce series cards;
57	<li>Now powering up all card function blocks: dualhead cards should now switch to the connected head (by it's BIOS) instead of hanging the system on boot (tested on a dualhead GeForce4 with a DVI and a VGA connector).
58</ul>
59<p><h1>nv_driver 0.03 (Rudolf)</h1></p>
60<ul>
61	<li>Prevent system or video freeze on dragging files or so in tracker windows;
62	<li>Pre NV10 cursor sync_to_retrace: no more distortions in cursor bitmaps on moving it;
63	<li>Cursor bitmapadress setup modification for laptops: The cursor should be visible now also on 'Go' type of cards;
64	<li>BWindowScreen / Sync_to_retrace fix: prevent apps from crashing on endless waiting for retrace. Wait_for_retrace is temporary disabled now until it's actually implemented.
65</ul>
66<p><h1>nv_driver 0.02 (Rudolf)</h1></p>
67<ul>
68	<li>hardcursor support;
69	<li>virtual screens / BWindowScreen support including panning/scrolling;
70	<li>colorspace selection;
71	<li>colorpalette setup;
72	<li>refreshrate selection;
73	<li>85 cards of 4 brands are detected now: These are all TNT1 - GeForce FX5900 Ultra cards as far as I know. Hopefully all those cards will actually work OK with the driver;
74	<li>DPMS support;
75	<li>resolution selection (CRTC setup);
76	<li>switch to 'enhanced mode' included: VESA is gone now!
77	<li>cardspecs are setup (faked PINS);
78	<li>several small fixes done to get the driver working correctly on all four of my cards: PCI TNT1, AGP TNT1, AGP TNT2 and AGP GeForce2MX400.
79</ul>
80<p><h1>Still todo:</h1></p>
81<ul>
82	<li>Add support for internal display panels (laptops);
83	<li>TVout support;
84	<li>Partial card coldstart: setup RAM and CORE speeds (if possible).
85</ul>
86</p>
87</body>
88</html>
89