home *** CD-ROM | disk | FTP | other *** search
-
- /* SD_RecogSubs.c
- - Functions for External Module Recognition and Binding -
- (c) 1993-94 by Andreas R. Kleinert
- Last changes : 05.03.1994
- */
-
-
- #include "svdriver.h"
-
- #include <exec/execbase.h>
-
- void __saveds __stdargs SVLI_InitSVDList(void);
-
- void __saveds __stdargs SVLI_InitSVDList(void)
- {
- struct SVD_DriverNode *svd_node = N;
-
- SVDriverBase->svb_SVDriver = N;
-
- if(FindName(&SysBase->LibList, "superview.library"))
- {
- struct SuperViewBase *SuperViewBase = (APTR) OpenLibrary("superview.library", 2);
-
- if(SuperViewBase)
- {
- SVDriverBase->svb_SVDriver = (APTR) FindName((APTR) &SuperViewBase->svb_SVDriverList, "SVO.svobject");
-
- CloseLibrary((APTR) SuperViewBase);
- }
- }else
- {
- svd_node = AllocVec(sizeof(struct SVD_DriverNode), (MEMF_CLEAR|MEMF_PUBLIC));
-
- if(!svd_node) return;
-
- SVDriverBase->svb_SVDriver = svd_node;
-
- ((struct Node *)svd_node)->ln_Type = NT_UNKNOWN;
- ((struct Node *)svd_node)->ln_Pri = 1;
- ((struct Node *)svd_node)->ln_Name = svd_node->svd_FileName;
-
- /* don't forget to initialized svd_node->ln_Name :
- inside SVDrivers it's not NULL !!
- */
-
- svd_node->svd_Version = SVD_VERSION;
-
- svd_node->svd_Flags = SVDF_INTUITION;
-
- strcpy(svd_node->svd_FileName, "ECS.svdriver");
-
- svd_node->svd_MaxWidth = 0xFFFFFFFF;
- svd_node->svd_MaxHeight = 0xFFFFFFFF;
- svd_node->svd_MaxDepth = 0xFFFFFFFF;
-
- strcpy(svd_node->svd_ID, "ECS ScreenDriver");
- }
- }
-