Merge branch 'master' of git://git.ucc.asn.au/tpg/acess2
authorJohn Hodge <[email protected]>
Sat, 2 Feb 2013 09:18:59 +0000 (17:18 +0800)
committerJohn Hodge <[email protected]>
Sat, 2 Feb 2013 09:18:59 +0000 (17:18 +0800)
Tools/DiskTool/main.c
Tools/nativelib/include/threads_int.h
Tools/nativelib/threads.c
Tools/nativelib/threads_int.c

index 81a087c..f8781a4 100644 (file)
@@ -8,6 +8,31 @@
 #include <disktool_common.h>
 
 // === CODE ===
+void PrintUsage(void)
+{
+       fprintf(stderr,
+               "Usage:\n"
+               " disktool <commands...>\n"
+               "\n"
+               "Commands:\n"
+               " lvm <image> <ident>\n"
+               " - Register an image with LVM\n"
+               "  e.g.\n"
+               "   `lvm ../AcessHDD.img HDD`\n"
+               " mount <image> <mountname>\n"
+               " - Bind an image to a name.\n"
+               "  e.g.\n"
+               "   `mount ../AcessFDD.img FDD`\n"
+               "   `mount :HDD/0 hda1`\n"
+               " ls <dir>\n"
+               " - List a directory\n"
+               "  e.g.\n"
+               "   `ls ../`\n"
+               "   `ls FDD:/`\n"
+               "\n"
+               );
+}
+
 int main(int argc, char *argv[])
 {
        // Parse arguments
@@ -17,6 +42,7 @@ int main(int argc, char *argv[])
                        // Mount an image
                        if( argc - i < 3 ) {
                                fprintf(stderr, "mount takes 2 arguments (image and mountpoint)\n");
+                               PrintUsage();
                                exit(-1);
                        }
 
@@ -33,6 +59,7 @@ int main(int argc, char *argv[])
                        
                        if( argc - i < 3 ) {
                                fprintf(stderr, "lvm takes 2 arguments (iamge and ident)\n");
+                               PrintUsage();
                                exit(-1);
                        }
 
@@ -48,6 +75,7 @@ int main(int argc, char *argv[])
                if( strcmp("ls", argv[i]) == 0 ) {
                        if( argc - i < 2 ) {
                                fprintf(stderr, "ls takes 1 argument (path)\n");
+                               PrintUsage();
                                break;
                        }
 
@@ -60,6 +88,7 @@ int main(int argc, char *argv[])
                        
                        if( argc - i < 3 ) {
                                fprintf(stderr, "cp takes 2 arguments (source and destination)\n");
+                               PrintUsage();
                                break;
                        }
 
@@ -73,6 +102,7 @@ int main(int argc, char *argv[])
 
                        if( argc - 1 < 2 ) {
                                fprintf(stderr, "cat takes 1 argument (path)\n");
+                               PrintUsage();
                                break;
                        }
 
@@ -83,6 +113,7 @@ int main(int argc, char *argv[])
                }
        
                fprintf(stderr, "Unknown command '%s'\n", argv[i]);
+               PrintUsage();
        }
        
        DiskTool_Cleanup();
index 3e85232..1b4ddac 100644 (file)
@@ -10,7 +10,9 @@
 
 #include <shortlock.h>
 
+#ifndef _THREADS_H_
 typedef struct sThread tThread;
+#endif
 
 #define THREAD_EVENT_RWLOCK    (1 << 8)
 
index b214f21..b698770 100644 (file)
@@ -70,7 +70,7 @@ void Threads_ClearEvent(Uint32 Mask)
 tUID Threads_GetUID(void) { return 0; }
 tGID Threads_GetGID(void) { return 0; }
 
-tTID Threads_GetTID(void) { return lpThreads_This->TID; }
+tTID Threads_GetTID(void) { return lpThreads_This ? lpThreads_This->TID : 0; }
 
 int *Threads_GetMaxFD(void)        { return &lpThreads_This->Process->MaxFDs;  }
 char **Threads_GetCWD(void)        { return &lpThreads_This->Process->CWD;     }
index 3b7b08a..324b952 100644 (file)
@@ -14,7 +14,6 @@
 #include <shortlock.h>
 
 // === TYPES ===
-typedef struct sThread tThread;
 struct sThreadIntMutex { int lock; };
 struct sThreadIntSem { int val; };
 

UCC git Repository :: git.ucc.asn.au