From 7e74310a9583bf8274bc541804436fd3a65b4783 Mon Sep 17 00:00:00 2001 From: Rudolf Cornelissen Date: Mon, 25 Oct 2004 10:19:41 +0000 Subject: [PATCH] added another type2 coldstart scriptcmd. One more to go! git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9500 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../accelerants/nvidia/engine/nv_info.c | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/add-ons/accelerants/nvidia/engine/nv_info.c b/src/add-ons/accelerants/nvidia/engine/nv_info.c index e088764039..4f3e9615e9 100644 --- a/src/add-ons/accelerants/nvidia/engine/nv_info.c +++ b/src/add-ons/accelerants/nvidia/engine/nv_info.c @@ -1374,6 +1374,28 @@ static status_t exec_type2_script_mode(uint8* rom, uint16* adress, int16* size, NV_REG8(reg) = byte; } break; + case 0x6a: /* new */ + *size -= 2; + if (*size < 0) + { + LOG(8,("script size error, aborting!\n\n")); + end = true; + result = B_ERROR; + break; + } + + /* execute */ + *adress += 1; + data = *((uint8*)(&(rom[*adress]))); + *adress += 1; + data2 = *((uint16*)(&(rom[(tabs.InitScriptTablePtr + (data << 1))]))); + LOG(8,("cmd 'jump to script #$%02x at adress $%04x'\n", data, data2)); + if (*exec) + { + *adress = data2; + LOG(8,("INFO: ---Jumping; not touching 'execution' mode.\n")); + } + break; case 0x6b: /* new */ *size -= 2; if (*size < 0)