Program to move picture ready
authorDaniel Giritzer <daniel@giritzer.eu>
Fri, 2 Jun 2017 20:25:18 +0000 (22:25 +0200)
committerDaniel Giritzer <daniel@giritzer.eu>
Fri, 2 Jun 2017 20:25:18 +0000 (22:25 +0200)
src/devmem2.c
src/main.c
src/tvout.h

index ea96828..720aab5 100644 (file)
@@ -12,7 +12,6 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <string.h>
-#include <string.h>
 #include <errno.h>
 #include <signal.h>
 #include <fcntl.h>
@@ -113,7 +112,7 @@ int writemem(unsigned long address, unsigned long writeval, int access_type)
 /// \brief This function allows reading the memory
 ///        on the specified address.
 ///
-/// \param char* Address to read from
+/// \param unsigned long Address to read from
 /// \param int Access type, should be 'w' (word),
 ///        'h' (halfword), 'b'(byte)
 /// \param unsigned long* pointer result variable
index e48c397..9278d78 100644 (file)
 #include "devmem2.h"
 #include "tvout.h"
 
-int main()
+
+int main(int argc, char **argv)
 {
-    unsigned long readfrommemory = 0;
+    unsigned long to_write = 0;
+
+
+    //Print usage message
+    if(argc != 3)
+    {
+        fprintf(stdout, "Usage: tvout <move x> <move y>\n");
+        fprintf(stdout, "The parameter values should be in px.\n");
+        fprintf(stdout, "This program was created for the Armbian Project.");
+        fprintf(stdout, "(c) 2017, Daniel G.");
+        return EXIT_SUCCESS;
+    }
+
+    //Set X value
+    to_write = strtoul(argv[1], 0, 0) << X_REG_OFFSET;
 
-    //Testing writemem
-    writemem(0x01E00130, 0x10140025, 'w');
+    //Set Y value
+    to_write = strtoul(argv[2], 0, 0) << Y_REG_OFFSET;
 
-    //Testing readmem
-    readmem(0x01E00130, 'w', &readfrommemory);
+    //write to register
+    writemem(TV_ENCODER_RESYNC, to_write, 'w');
 
-    //Print read value to stdout
-    printf("Value: 0x%X \n", (unsigned int)readfrommemory);
-    return 0;
+    return EXIT_SUCCESS;
 }
index 4fdfe9a..69e7b6e 100644 (file)
@@ -2,7 +2,7 @@
 // Workfile: tvout.h (Header)
 // Author: Daniel Giritzer
 // Date: 2017-06-02
-// Description:
+// Description: Provides Adresses to the TV Encoder Registers
 // Remarks: -
 // Revision: 1
 // Copyright (C) 2017, Daniel Giritzer (giri@nwrk.biz)
@@ -10,7 +10,9 @@
 #ifndef TVOUT_H_INCLUDED
 #define TVOUT_H_INCLUDED
 
-#define TV_BASE 0x01E00000
-
+#define TV_ENCODER_BASE 0x01E00000
+#define TV_ENCODER_RESYNC TV_ENCODER_BASE + 0x130
+#define X_REG_OFFSET 16
+#define Y_REG_OFFSET 0
 
 #endif // TVOUT_H_INCLUDED