From ad6f3cd184fbfc566af0fda0cc36f84825021c1c Mon Sep 17 00:00:00 2001 From: Rudolf Cornelissen Date: Mon, 13 Dec 2004 12:04:17 +0000 Subject: [PATCH] added programming of set of unknown registers for 3D acc setup git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10413 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../accelerants/nvidia/engine/nv_acc.c | 65 ++++++++++++++++++- 1 file changed, 64 insertions(+), 1 deletion(-) diff --git a/src/add-ons/accelerants/nvidia/engine/nv_acc.c b/src/add-ons/accelerants/nvidia/engine/nv_acc.c index f5e02ace60..13c6ccb788 100644 --- a/src/add-ons/accelerants/nvidia/engine/nv_acc.c +++ b/src/add-ons/accelerants/nvidia/engine/nv_acc.c @@ -636,7 +636,7 @@ status_t nv_acc_init() ACCW(NV10_TIL7PT, ACCR(NV10_FBTIL7PT)); ACCW(NV10_TIL7ST, ACCR(NV10_FBTIL7ST)); - /* setup pipe */ + /* setup (clear) pipe */ /* set eyetype to local, lightning is off */ ACCW(NV10_XFMOD0, 0x10000000); /* disable all lights */ @@ -687,6 +687,69 @@ status_t nv_acc_init() for (cnt = 0; cnt < 4; cnt++) ACCW(NV10_PIPEDAT, 0x00000000); } + /* setup PGRAPH unknown registers and modify (pre-cleared) pipe stuff for 3D use */ +// if (si->ps.card_arch >= NV10A) + if (0) + { + /* setup unknown PGRAPH stuff */ + ACCW(PGWHAT_00, 0x00000000); + ACCW(PGWHAT_01, 0x00000000); + ACCW(PGWHAT_02, 0x00000000); + ACCW(PGWHAT_03, 0x00000000); + + ACCW(PGWHAT_04, 0x00001000); + ACCW(PGWHAT_05, 0x00001000); + ACCW(PGWHAT_06, 0x4003ff80); + + ACCW(PGWHAT_07, 0x00000000); + ACCW(PGWHAT_08, 0x00000000); + ACCW(PGWHAT_09, 0x00000000); + ACCW(PGWHAT_0A, 0x00000000); + ACCW(PGWHAT_0B, 0x00000000); + + ACCW(PGWHAT_0C, 0x00080008); + ACCW(PGWHAT_0D, 0x00080008); + + ACCW(PGWHAT_0E, 0x00000000); + ACCW(PGWHAT_0F, 0x00000000); + ACCW(PGWHAT_10, 0x00000000); + ACCW(PGWHAT_11, 0x00000000); + ACCW(PGWHAT_12, 0x00000000); + ACCW(PGWHAT_13, 0x00000000); + ACCW(PGWHAT_14, 0x00000000); + ACCW(PGWHAT_15, 0x00000000); + ACCW(PGWHAT_16, 0x00000000); + ACCW(PGWHAT_17, 0x00000000); + ACCW(PGWHAT_18, 0x00000000); + + ACCW(PGWHAT_19, 0x10000000); + + ACCW(PGWHAT_1A, 0x00000000); + ACCW(PGWHAT_1B, 0x00000000); + ACCW(PGWHAT_1C, 0x00000000); + ACCW(PGWHAT_1D, 0x00000000); + ACCW(PGWHAT_1E, 0x00000000); + ACCW(PGWHAT_1F, 0x00000000); + ACCW(PGWHAT_20, 0x00000000); + ACCW(PGWHAT_21, 0x00000000); + + ACCW(PGWHAT_22, 0x08000000); + + ACCW(PGWHAT_23, 0x00000000); + ACCW(PGWHAT_24, 0x00000000); + ACCW(PGWHAT_25, 0x00000000); + ACCW(PGWHAT_26, 0x00000000); + + ACCW(PGWHAT_27, 0x4b7fffff); + + ACCW(PGWHAT_28, 0x00000000); + ACCW(PGWHAT_29, 0x00000000); + ACCW(PGWHAT_2A, 0x00000000); + + /* setup window clipping */ +// + } + /*** setup acceleration engine command shortcuts (so via fifo) ***/ /* (b31 = 1 selects 'config' function?) */ ACCW(FIFO_00800000, 0x80000000); /* Raster OPeration */