linux: LIBRARIES=-L/usr/local/lib -lnsl -ldl -lm -lX11 -lEGL -lGLESv2
linux: linux-all
-linux-all: cilux mod-ni.so mod-np.so mod-mid.so install-lin
+linux-all: cilux mod-ni.so mod-np.so mod-mid.so mod-testni.so install-lin
# ---------------------------------------------------------------------------- #
$(STRIP) mod-mid.so
@echo '--------------------'
+mod-testni.so: src/drivers/nt/test/testni.c src/include/kernelapi.h src/platform/linux/platform.h
+ (cd src/drivers/nt/test; $(CC) $(CCOPTIONS) -c testni.c -o testni.o $(COMPILEOPTIONS) $(INCLUDES))
+ $(CCLIB),mod-testni.so -o mod-testni.so src/drivers/nt/test/testni.o
+ $(STRIP) mod-testni.so
+ @echo '--------------------'
+
install-lin:
mv cilux /usr/local/bin
mv mod-ni.so mod-np.so /usr/local/lib
+ mkdir -p modules/mid
mv mod-mid.so modules/mid
+ mkdir -p modules/testni
+ mv mod-testni.so modules/testni
@echo '--------------------'
# ---------------------------------------------------------------------------- #
--- /dev/null
+
+/* -------------------------------------------------------------------------- */
+
+#include <kernelapi.h>
+#include <ni.h>
+
+/* -------------------------------------------------------------------------- */
+
+static int handles_resource(char* name);
+static void sync_resource(ni_resource* res);
+
+/* -------------------------------------------------------------------------- */
+
+EXPORT int testni_module_loaded(void)
+{
+ ni_register_driver("testni", handles_resource, sync_resource);
+
+ k_log_out("Test NI Driver initialised");
+
+ return 1;
+}
+
+EXPORT int testni_module_event(void* data)
+{
+ k_log_out("Test NI got event: %p", data);
+ ni_event* evt=data;
+ ni_event_delete(evt);
+ return 1;
+}
+
+EXPORT int testni_module_tick(void)
+{
+ return 1;
+}
+
+/* -------------------------------------------------------------------------- */
+
+int handles_resource(char* name)
+{
+ return 1;
+}
+
+void sync_resource(ni_resource* res)
+{
+}
+
+/* -------------------------------------------------------------------------- */
+
+
+
+
init_keys();
if(LOAD_MODULES_EARLY){
- init_gl();
init_net();
+ init_gl();
init_modules();
}
}
init_thread();
if(!LOAD_MODULES_EARLY){
- init_gl();
init_net();
+ init_gl();
init_modules();
}
signal(SIGUSR2, SIG_IGN);
}
-void init_gl(void)
-{
- create_gl_window();
-}
-
void init_net(void)
{
FD_ZERO(&rd_fd_set);
FD_ZERO(&ex_fd_set);
}
+void init_gl(void)
+{
+ create_gl_window();
+}
+
/* -------------------------------------------------------------------------- */
OTHER_THREAD void signal_terminate(int signum)