diff --git a/functionsLib/Makefile.vbcc b/functionsLib/Makefile.vbcc new file mode 100644 index 0000000..209b3e8 --- /dev/null +++ b/functionsLib/Makefile.vbcc @@ -0,0 +1,14 @@ +CC := vc +aos68k +CFLAGS := +AR := join + +OBJS := functions.o +DEPS := functions.h + +all: functions.lib + +%.o: %.c $(DEPS) + $(CC) $(CFLAGS) -c -o $@ $< + +functions.lib: $(OBJS) + $(AR) $^ AS $@ diff --git a/functionsLib/functions.c b/functionsLib/functions.c index 4f58d84..91bc50b 100644 --- a/functionsLib/functions.c +++ b/functionsLib/functions.c @@ -21,12 +21,12 @@ BOOL fileExist(STRPTR filePath) /*=============================== RunDAControl ===============================*/ -void RunDAControl(char parameter[BUFFERSIZE]) +void RunDAControl(char *parameter) { char dacontrolPATH[BUFFERSIZE]; strcpy(dacontrolPATH, "SYS:C/DAControl "); strcat(dacontrolPATH, parameter); - Execute(dacontrolPATH, NULL, NULL); + Execute(dacontrolPATH, 0, 0); } /*=============================== @@ -79,7 +79,7 @@ char* fulltrim(char* str) return str; } -extern BOOL isContainsAdfExt(STRPTR filePath) +BOOL isContainsAdfExt(STRPTR filePath) { int i; char * isPointAdfStr; @@ -92,4 +92,4 @@ extern BOOL isContainsAdfExt(STRPTR filePath) isPointAdfStr = strstr(fPath, padf); if(isPointAdfStr) return 1; else return 0; -} \ No newline at end of file +} diff --git a/functionsLib/functions.h b/functionsLib/functions.h index 0cbd2fe..845c90b 100644 --- a/functionsLib/functions.h +++ b/functionsLib/functions.h @@ -11,7 +11,7 @@ #define BUFFERSIZE 0X200 extern BOOL fileExist(STRPTR filePath); -extern void RunDAControl(char parameter[BUFFERSIZE]); +extern void RunDAControl(char *parameter); extern char* fulltrim(char* str); extern char* substring(char*, int , int); extern BOOL isContainsAdfExt(STRPTR filePath); diff --git a/functionsLib/functions.lib b/functionsLib/functions.lib deleted file mode 100644 index f1e6378..0000000 Binary files a/functionsLib/functions.lib and /dev/null differ diff --git a/functionsLib/functions.o b/functionsLib/functions.o deleted file mode 100644 index 9454661..0000000 Binary files a/functionsLib/functions.o and /dev/null differ diff --git a/src/Makefile.vbcc b/src/Makefile.vbcc new file mode 100644 index 0000000..84df2e1 --- /dev/null +++ b/src/Makefile.vbcc @@ -0,0 +1,14 @@ +CC := vc +aos68k +CFLAGS := -c99 +LIBS := -lfunctions -lamiga -lreaction + +OBJS := main.o +DEPS := menu.h includes.h version.h + +all: DAControlGUI + +%.o: %.c $(DEPS) + $(CC) $(CFLAGS) -c -o $@ $< + +DAControlGUI: $(OBJS) + $(CC) $(CFLAGS) -o $@ $^ $(LIBS) diff --git a/src/functions.h b/src/functions.h new file mode 100644 index 0000000..845c90b --- /dev/null +++ b/src/functions.h @@ -0,0 +1,19 @@ +#ifndef FUNCTIONS_H +#define FUNCTIONS_H + +#include +#include +#include +#include +#include +#include + +#define BUFFERSIZE 0X200 + +extern BOOL fileExist(STRPTR filePath); +extern void RunDAControl(char *parameter); +extern char* fulltrim(char* str); +extern char* substring(char*, int , int); +extern BOOL isContainsAdfExt(STRPTR filePath); + +#endif diff --git a/src/functions.lib b/src/functions.lib deleted file mode 100644 index f1e6378..0000000 Binary files a/src/functions.lib and /dev/null differ diff --git a/src/includes.h b/src/includes.h index 4ebae9b..9268c39 100644 --- a/src/includes.h +++ b/src/includes.h @@ -1,57 +1,66 @@ -#ifndef INCLUDES_H -#define INCLUDES_H - -#define STREQUAL(s1, s2) (strcmp(s1, s2) == 0) - -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#define ALL_REACTION_MACROS -#define ALL_REACTION_CLASSES -#include -#include - -#define ASM __asm -#define REG(x) register __ ## x - -#define BASEDEF(base) struct Library *base##Base = NULL -#define OPENLIB(base,name) if (!((base##Base) = OpenLibrary ((name),0))) CloseLibs() -#define CLOSELIB(base) if (base##Base) {CloseLibrary (base##Base); base##Base=NULL;} - -#define NAME_MAX 0X020 -#define PATH_MAX 0X100 -#define MAX_LISTED_ADF 0X200 -#define BUFFERSIZE 0X200 - -#include - -#endif \ No newline at end of file +#ifndef INCLUDES_H +#define INCLUDES_H + +#define STREQUAL(s1, s2) (strcmp(s1, s2) == 0) + +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#define ALL_REACTION_MACROS +#define ALL_REACTION_CLASSES +#include +#include + +#define ASM __asm +#define REG(x) register __ ## x + +#define BASEDEF(base) struct Library *base##Base = NULL +#define OPENLIB(base,name) if (!((base##Base) = OpenLibrary ((name),0))) CloseLibs() +#define CLOSELIB(base) if (base##Base) {CloseLibrary (base##Base); base##Base=NULL;} + +#define NAME_MAX 0X020 +#define PATH_MAX 0X100 +#define MAX_LISTED_ADF 0X200 +#define BUFFERSIZE 0X200 + +#include + +#endif diff --git a/src/main.c b/src/main.c index 7882f63..58ded29 100644 --- a/src/main.c +++ b/src/main.c @@ -42,8 +42,12 @@ NOSTanDardIO #include "includes.h" #include "menu.h" +#include "functions.h" #include "version.h" +BASEDEF(Intuition); +BASEDEF(Utility); +BASEDEF(GadTools); BASEDEF(Icon); BASEDEF(Workbench); BASEDEF(Window); @@ -174,6 +178,9 @@ int main(void) OPENLIB(Dos, "dos.library"); OPENLIB(Icon, "icon.library"); OPENLIB(Workbench, "workbench.library"); + OPENLIB(GadTools, "gadtools.library"); + OPENLIB(Intuition, "intuition.library"); + OPENLIB(Utility, "utility.library"); ret = appMain(); @@ -194,7 +201,7 @@ int appMain() UWORD code; ScreenPtr = LockPubScreen(NULL); - VisualInfoPtr = GetVisualInfo(ScreenPtr, NULL); + VisualInfoPtr = GetVisualInfoA(ScreenPtr, NULL); //InitHook(&HookStruct, HookFunc, NULL); @@ -211,7 +218,7 @@ int appMain() dobj=GetDiskObject(appPath); if(dobj!=0) { - dobj->do_Type=NULL; + dobj->do_Type=0; } if (!(WindowObjectPtr = NewObject @@ -316,7 +323,7 @@ int appMain() done=TRUE; } - UnlockPubScreen(ScreenPtr); + UnlockPubScreen(NULL, ScreenPtr); ScreenPtr = NULL; if (!(WindowPtr = (struct Window *) DoMethod(WindowObjectPtr, WM_OPEN, NULL))) @@ -413,7 +420,7 @@ int appMain() FreeVisualInfo(VisualInfoPtr); // delete log file - Execute("Delete RAM:dacgui.log >NIL:", NULL, NULL); + Execute("Delete RAM:dacgui.log >NIL:", 0, 0); return 0; } @@ -467,7 +474,7 @@ void CloseLibs(void) { if (ScreenPtr) { - UnlockPubScreen(NULL); + UnlockPubScreen(NULL, ScreenPtr); ScreenPtr = NULL; } @@ -481,6 +488,9 @@ void CloseLibs(void) if (AppPort) DeleteMsgPort(AppPort); + CLOSELIB(Intuition); + CLOSELIB(Utility); + CLOSELIB(GadTools); CLOSELIB(Workbench); CLOSELIB(Icon); CLOSELIB(Layout); @@ -553,7 +563,7 @@ void ProcessMenuIDCMPdacMenu(UWORD MenuNumber) break; case HelpMenuManual : - Execute(manualPath, NULL, NULL); + Execute(manualPath, 0, 0); break; } break; @@ -662,7 +672,7 @@ void createADFList(void) if(fp) { - UBYTE buffer[BUFFERSIZE]; + char *buffer = AllocVec(BUFFERSIZE, MEMF_CLEAR); while(FGets(fp, buffer, BUFFERSIZE)) { if((count>0)&&(strlen(buffer)>0)) @@ -672,7 +682,7 @@ void createADFList(void) col2[count-1]= fulltrim(substring(buffer, 18, 32)); // volume name col4[count-1]= fulltrim(substring(buffer, 79, 11)); // access col5[count-1]= fulltrim(substring(buffer, 91, strlen(buffer)-90)); // file - free(buffer); + FreeVec(buffer); } count++; } @@ -1270,4 +1280,4 @@ void iconify(void) { done = TRUE; } -} \ No newline at end of file +} diff --git a/src/menu.h b/src/menu.h index 4855fef..435b328 100644 --- a/src/menu.h +++ b/src/menu.h @@ -1,54 +1,54 @@ -#ifndef MENU_H -#define MENU_H - -//------------------------------- -#define DAControlGUIMenu 0 -#define DAControlGUIMenuAbout 0 -#define DAControlGUIMenuBar1 1 -#define DAControlGUIMenuIconify 2 -#define DAControlGUIMenuBar2 3 -#define DAControlGUIMenuQuit 4 -//------------------------------- -#define Controls 1 -#define ControlsLoadChange 0 -#define ControlsCreate 1 -#define ControlsBar2 2 -#define ControlsEject 3 -#define ControlsEjectAll 4 -#define ControlsBar3 5 -#define ControlsRefresh 6 -//------------------------------- -#define HelpMenu 2 -#define HelpMenuManual 0 - -struct NewMenu dacMenuNewMenu[] = -{ - NM_TITLE, (STRPTR)"DAControlGUI" , NULL , 0, NULL, (APTR)~0, - NM_ITEM , (STRPTR)"About" , NULL , 0, 0L, (APTR)~0, - NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Iconify" , "I" , 0, 0L, (APTR)~0, - NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Quit" , "Q" , 0, 0L, (APTR)~0, - - NM_TITLE, (STRPTR)"Controls" , NULL , 0, NULL, (APTR)~0, - NM_ITEM , (STRPTR)"Load / Change ADF" , "L" , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Create ADF" , "C" , 0, 0L, (APTR)~0, - NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Eject ADF" , "E" , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Eject All" , "A" , 0, 0L, (APTR)~0, - NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, - NM_ITEM , (STRPTR)"Refresh" , "R" , 0, 0L, (APTR)~0, - - NM_TITLE, (STRPTR)"Help" , NULL , 0, NULL, (APTR)~0, - NM_ITEM , (STRPTR)"Manual" , "M" , 0, 0L, (APTR)~0, - - NM_END , NULL , NULL , 0, 0L, (APTR)~0 -}; - -ULONG dacMenuTags[] = -{ - (GT_TagBase+67), TRUE, - (TAG_DONE) -}; - +#ifndef MENU_H +#define MENU_H + +//------------------------------- +#define DAControlGUIMenu 0 +#define DAControlGUIMenuAbout 0 +#define DAControlGUIMenuBar1 1 +#define DAControlGUIMenuIconify 2 +#define DAControlGUIMenuBar2 3 +#define DAControlGUIMenuQuit 4 +//------------------------------- +#define Controls 1 +#define ControlsLoadChange 0 +#define ControlsCreate 1 +#define ControlsBar2 2 +#define ControlsEject 3 +#define ControlsEjectAll 4 +#define ControlsBar3 5 +#define ControlsRefresh 6 +//------------------------------- +#define HelpMenu 2 +#define HelpMenuManual 0 + +struct NewMenu dacMenuNewMenu[] = +{ + NM_TITLE, (STRPTR)"DAControlGUI" , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"About" , NULL , 0, 0L, (APTR)~0, + NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Iconify" , "I" , 0, 0L, (APTR)~0, + NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Quit" , "Q" , 0, 0L, (APTR)~0, + + NM_TITLE, (STRPTR)"Controls" , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Load / Change ADF" , "L" , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Create ADF" , "C" , 0, 0L, (APTR)~0, + NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Eject ADF" , "E" , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Eject All" , "A" , 0, 0L, (APTR)~0, + NM_ITEM , NM_BARLABEL , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Refresh" , "R" , 0, 0L, (APTR)~0, + + NM_TITLE, (STRPTR)"Help" , NULL , 0, 0L, (APTR)~0, + NM_ITEM , (STRPTR)"Manual" , "M" , 0, 0L, (APTR)~0, + + NM_END , NULL , NULL , 0, 0L, (APTR)~0 +}; + +ULONG dacMenuTags[] = +{ + (GT_TagBase+67), TRUE, + (TAG_DONE) +}; + #endif \ No newline at end of file