[Identification] OptionType = VIDEO [Identify] read-syms Identification set Status = STATUS_SUCCESSFUL set Identifier = $(OptionType) set Media = #("Source Media Descriptions", 1, 1) Return $(Status) $(Identifier) $(Media) [ServicesEntry] CurrentEntry = "" ? $(!LIBHANDLE) GetDevicemapValue Video \Device\Video0 [SystemVariables] STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir STF_WINDOWSPATH = "" ? $(!LIBHANDLE) GetWindowsNtDir [MiniportDrivers] neomagic = neomagic , !SERVICE_KERNEL_DRIVER, Video, !SERVICE_ERROR_NORMAL, {neo20xx3, framebuf} , 0, "%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\neo20xx.sys", 7, 1, {}, noconfig [OpenGLDrivers] [ExternalInstallOption] Set !G:DebugOutputControl = 0 set Exit_Code = $(!SETUP_ERROR_GENERAL) install LoadSetupLibrary ifstr(i) $(STF_LANGUAGE) == "" goto end else-ifstr(i) $(OPTION) == "" goto end else-ifstr(i) $(INITSRC) == "" goto end else-ifstr(i) $(ADDCOPY) == "" goto end else-ifstr(i) $(DOCOPY) == "" goto end else-ifstr(i) $(DOCONFIG) == "" goto end else-ifstr(i) $(DOINSTALL) == "" goto end else-ifstr(i) $(INFFILE) == "" goto end endif LoadLibrary "x" $(!STF_CWDDIR)setupdll.dll !LIBHANDLE set STF_CONTROLSET = CurrentControlSet read-syms SystemVariables detect SystemVariables shell $(INFFILE) InstallOption $(STF_LANGUAGE) $(OPTION) $(INITSRC) $(ADDCOPY) $(DOCOPY) $(DOCONFIG) $(DOINSTALL) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Execing Configuring hardware failed" goto end endif ifstr(i) $($R0) == STATUS_SUCCESSFUL set Exit_Code = $(!SETUP_ERROR_SUCCESS) else-ifstr(i) $($R0) == STATUS_USERCANCEL set Exit_Code = $(!SETUP_ERROR_USERCANCEL) endif end =+ install FreeSetupLibrary FreeLibrary $(!LIBHANDLE) exit [InstallOption] set Status = STATUS_FAILED set DrivesToFree = {} set !Option = $($1) set SrcDir = $($2) set AddCopy = $($3) set DoCopy = $($4) set DoConfig = $($5) set DoInstall = $($6) set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $($0) in $(LanguageList) else set Status = STATUS_NOLANGUAGE goto finish_InstallOption endif read-syms Strings$($0) ifstr(i) $(!Option) != "DETECT" set OptionList = ^(Options, 0) ifcontains $(!Option) in $(OptionList) else goto finish_InstallOption endif set OptionList = "" set DriverEntry = #(Options, $(!Option), 1) set MiniportDriver = #(MiniportDrivers, $(DriverEntry), 1) set InstalledDisplays = #(MiniportDrivers, $(DriverEntry), 5) set OtherFiles = #(MiniportDrivers, $(DriverEntry), 10) endif read-syms ServicesEntry detect ServicesEntry set DriversList = ^(MiniportDrivers, 0) set MiniportDriverList = ^(Files-DisplayMiniportDrivers, 0) set DisplayDriverList = ^(Files-DisplayDLLs, 0) set OpenGLDriverList = ^(OpenGLDrivers, 0) installtheoption = + ifstr(i) $(AddCopy) == "YES" ifstr(i) $(!Option) == "DETECT" set DoActualCopy = YES else set DoActualCopy = NO set FileToCheck = #(Files-DisplayMiniportDrivers, $(MiniportDriver), 2) LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck) ifstr(i) $(STATUS) == NO set DoActualCopy = YES goto addfiles endif ForListDo $(OtherFiles) ifcontains $($) in $(MiniportDriverList) set FileToCheck = #(Files-DisplayMiniportDrivers, $($), 2) LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\"$(FileToCheck) ifstr(i) $(STATUS) == NO set DoActualCopy = YES goto addfiles endif endif EndForListDo ForListDo $(InstalledDisplays) ifcontains $($) in $(DisplayDriverList) set FileToCheck = #(Files-DisplayDLLs, $($), 2) LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$(FileToCheck) ifstr(i) $(STATUS) == NO set DoActualCopy = YES goto addfiles endif ifcontains $($) in $(OpenGLDriverList) set FileToCheck = #(Files-DisplayOpenGLDrivers, #(OpenGLDrivers, $($), 1), 2) LibraryProcedure STATUS,$(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$(FileToCheck) ifstr(i) $(STATUS) == NO set DoActualCopy = YES goto addfiles endif endif endif EndForListDo endif addfiles = + ifstr(i) $(DoActualCopy) == NO shell "subroutn.inf" DriversExist $($0) $(String1) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "VIDEO.INF: shelling DriversExist failed" goto finish_InstallOption endif ifstr(i) $($R0) == STATUS_CURRENT else-ifstr(i) $($R0) == STATUS_NEW set DoActualCopy = YES else-ifstr(i) $($R0) == STATUS_USERCANCEL Debug-Output "VIDEO.INF: User cancelled video installation" goto finish_InstallOption else Debug-Output "VIDEO.INF: Error reported in DriversExist routine in SUBROUTN.INF" goto finish_InstallOption endif endif ifstr(i) $(DoActualCopy) == YES ; This gets the path from which NT was installed. We want to ; stick with A:\ or whatever. ; shell "registry.inf" GetNTSource ; ifint $($ShellCode) != $(!SHELL_CODE_OK) ; else-ifstr(i) $($R0) != STATUS_SUCCESSFUL ; else ; set SrcDir = $($R1) ; endif shell "subroutn.inf" DoAskSourceEx $(SrcDir) $(String2) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "VIDEO.INF: shelling DoAskSourceEx failed" goto finish_InstallOption endif ifstr(i) $($R0) == STATUS_SUCCESSFUL set SrcDir = $($R1) ifstr(i) $($R2) != "" set DrivesToFree = >($(DrivesToFree), $($R2)) endif else Debug-Output "VIDEO.INF: User cancelled asking source." goto finish_InstallOption endif ifstr(i) $(!Option) != "DETECT" install Install-AddCopyOption else install Install-AddAllCopy endif ifstr(i) $(STF_INSTALL_OUTCOME) != "STF_SUCCESS" Debug-Output "VIDEO.INF: Adding video files to copy list failed" goto finish_InstallOption endif else set DoCopy = NO endif endif ifstr(i) $(DoCopy) == "YES" read-syms ProgressCopy$($0) install Install-DoCopyOption ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_FAILURE" Debug-Output "Copying files failed" goto finish_InstallOption else-ifstr(i) $(STF_INSTALL_OUTCOME) == "STF_USERQUIT" set Status = STATUS_USERCANCEL goto finish_InstallOption endif endif ifstr(i) $(DoConfig) == "YES" shell "registry.inf" CheckSetupModify ifint $($ShellCode) != $(!SHELL_CODE_OK) goto finish_InstallOption endif ifstr(i) $($R0) != STATUS_SUCCESSFUL goto finish_InstallOption endif ForListDo $(DriversList) ifstr(i) $(!Option) == "DETECT" set DriverEntry = $($) set DeviceDescription = "" set ErrorControl = $(!SERVICE_ERROR_IGNORE) ifcontains #(MiniportDrivers, $(DriverEntry), 1) in $(MiniportDriverList) ifint #(MiniportDrivers, $(DriverEntry), 9) == 1 set configDriver = YES else set configDriver = NO endif else set configDriver = NO endif else set DeviceDescription = $(!Option) set ErrorControl = $(#(MiniportDrivers, $(DriverEntry), 4)) ifstr(i) $(DriverEntry) == $($) set configDriver = YES else set configDriver = NO endif endif ifstr(i) $(configDriver) == YES Debug-Output "configuring the miniport driver" set MiniportDriver = #(MiniportDrivers, $(DriverEntry), 1) set Type = $(#(MiniportDrivers, $(DriverEntry), 2)) set Group = #(MiniportDrivers, $(DriverEntry), 3) set InstalledDisplays = #(MiniportDrivers, $(DriverEntry), 5) set VgaCompatible = #(MiniportDrivers, $(DriverEntry), 6) set EventMessageFile = #(MiniportDrivers, $(DriverEntry), 7) set TypesSupported = #(MiniportDrivers, $(DriverEntry), 8) set ServiceNode = $(DriverEntry) set ServiceBinary = %SystemRoot%\System32\drivers\#(Files-DisplayMiniportDrivers, $(MiniportDriver), 2) set ServicesValues = { + {Type, 0, $(!REG_VT_DWORD), $(Type) }, + {Group, 0, $(!REG_VT_SZ), $(Group) }, + {ErrorControl, 0, $(!REG_VT_DWORD), $(ErrorControl) }, + {BinaryPathName, 0, $(!REG_VT_EXPAND_SZ), $(ServiceBinary) } + } ifstr(i) $(DoInstall) == "YES" set ServicesValues = >($(ServicesValues), + {Start, 0, $(!REG_VT_DWORD), $(!SERVICE_SYSTEM_START) }) else set ServicesValues = >($(ServicesValues), + {Start, 0, $(!REG_VT_DWORD), $(!SERVICE_DISABLED) }) endif set !ParametersValues = { + {"Device Description", 0, $(!REG_VT_SZ), $(DeviceDescription) }, + {InstalledDisplayDrivers, 0, $(!REG_VT_MULTI_SZ), $(InstalledDisplays) }, + {VgaCompatible, 0, $(!REG_VT_DWORD), $(VgaCompatible) }, + {DefaultSettings.BitsPerPel, 0, $(!REG_VT_DWORD), 0 }, + {DefaultSettings.VRefresh, 0, $(!REG_VT_DWORD), 0 }, + {DefaultSettings.Interlaced, 0, $(!REG_VT_DWORD), 0 }, + {DefaultSettings.XResolution, 0, $(!REG_VT_DWORD), 0 }, + {DefaultSettings.YResolution, 0, $(!REG_VT_DWORD), 0 } + } ifstr(i) $(!Option) != "DETECT" shell "" #(MiniportDrivers, $(DriverEntry), 11) endif set DeviceValues = {} set EventLogValues = { + {EventMessageFile, 0, $(!REG_VT_EXPAND_SZ), $(EventMessageFile) }, + {TypesSupported, 0, $(!REG_VT_DWORD), $(TypesSupported) } + } shell "registry.inf" MakeServicesEntry $(ServiceNode) + $(ServicesValues) + $(!ParametersValues) + $(DeviceValues) + $(EventLogValues) + Device0 ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Couldn't execute MakeServicesEntry in registry.inf" goto finish_InstallOption endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "MakeServicesEntry failed for video" goto finish_InstallOption endif ForListDo $(InstalledDisplays) ifcontains $($) in $(OpenGLDriverList) set KeyPath = { + {SOFTWARE, 0, $(MaskAllAccess)}, + {Microsoft, 0, $(MaskAllAccess)}, + {"Windows NT", 0, $(MaskAllAccess)}, + {CurrentVersion, 0, $(MaskAllAccess)}, + {OpenGLDrivers, 0, $(MaskAllAccess)} + } set KeyValue = { + {$($), 0, $(!REG_VT_SZ), #(OpenGLDrivers, $($), 1) } + } shell "registry.inf" CreateKey $(!REG_H_LOCAL) $(KeyPath) $(KeyValue) Debug-Output "just did an OGL section" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Couldn't execute CreateKey in registry.inf" goto endInstallOpenGLDriver endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "CreateKey failed for OGLDrivers" goto endInstallOpenGLDriver endif Debug-Output "VIDEO.INF: success installing an ogl entry" endif EndForListDo endif EndForListDo endif set Status = STATUS_SUCCESSFUL finish_InstallOption = + ForListDo $(DrivesToFree) LibraryProcedure STATUS,$(!LIBHANDLE), DeleteNetConnection $($) "TRUE" EndForListDo Return $(Status) [Install-AddCopyOption] Debug-Output "adding to copy list" set STF_VITAL = "" AddSectionKeyFileToCopyList Files-DisplayMiniportDrivers + $(MiniportDriver) + $(SrcDir) + $(!STF_WINDOWSSYSPATH)\drivers ForListDo $(OtherFiles) ifcontains $($) in $(MiniportDriverList) Debug-Output "adding other files to copy list" AddSectionKeyFileToCopyList Files-DisplayMiniportDrivers + $($) + $(SrcDir) + $(!STF_WINDOWSSYSPATH)\drivers endif EndForListDo ForListDo $(InstalledDisplays) ifcontains $($) in $(DisplayDriverList) Debug-Output "adding display driver to copy list" AddSectionKeyFileToCopyList Files-DisplayDLLs + $($) + $(SrcDir) + $(!STF_WINDOWSSYSPATH) ifcontains $($) in $(OpenGLDriverList) Debug-Output "adding opengl driver to copy list" AddSectionKeyFileToCopyList Files-DisplayOpenGLDrivers + #(OpenGLDrivers, $($), 1) + $(SrcDir) + $(!STF_WINDOWSSYSPATH) endif endif EndForListDo exit [Install-AddAllCopy] Debug-Output "adding all drivers to copy list" set STF_VITAL = "" AddSectionFilesToCopyList Files-DisplayMiniportDrivers + $(SrcDir) + $(!STF_WINDOWSSYSPATH)\drivers AddSectionFilesToCopyList Files-DisplayDLLs + $(SrcDir) + $(!STF_WINDOWSSYSPATH) exit [Install-DoCopyOption] CopyFilesInCopyList exit [noconfig] return [Source Media Descriptions] 1 = "NeoMagic MagicGraph 128/V/ZV/XD Installation DISK (VIDEO)" , TAGFILE = neomagic.351 [Files-DisplayDLLs] neo20xx3 = 1,neo20xx3.dll, SIZE=999 framebuf = 1,framebuf.dll, SIZE=999 [Files-DisplayMiniportDrivers] neomagic = 1,neo20xx.sys , SIZE=999 [LanguagesSupported] ENG [Options] "NeoMagic MagicGraph128/V/ZV/XD" = neomagic [OptionsTextENG] "NeoMagic MagicGraph128/V/ZV/XD" = "NeoMagic MagicGraph128/V/ZV/XD" [ProgressCopyENG] ProCaption = "NeoMagic MagicGraph128/V/ZV/XD Install" ProCancel = "Cancel" ProCancelMsg = "The NeoMagic MagicGraph128/V/ZV/XD display driver is not "+ "completely installed. Are you sure you want "+ "to cancel copying files?" ProCancelCap = "Setup Message" ProText1 = "Copying:" ProText2 = "To:" [StringsENG] String1 = "Display" String2 = "Please enter the full path to the NeoMagic MagicGraph128/V/ZV/XD "+ "display driver files. Then choose Continue."Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.