9278d78807f1ec87eccf3ae7d1e669836b4355dc
[allwinner_tvout_manipulator.git] / src / main.c
1 ///////////////////////////////////////////////////////////////////////////
2 // Workfile: tvout.c (Implementation)
3 // Author: Daniel Giritzer
4 // Date: 2017-06-02
5 // Description: Simple Program to move the
6 // Remarks: -
7 // Revision: 1
8 // Copyright (C) 2017, Daniel Giritzer (giri@nwrk.biz)
9 ///////////////////////////////////////////////////////////////////////////
10 #include <stdio.h>
11 #include <stdlib.h>
12 #include "devmem2.h"
13 #include "tvout.h"
14
15
16 int main(int argc, char **argv)
17 {
18     unsigned long to_write = 0;
19
20
21     //Print usage message
22     if(argc != 3)
23     {
24         fprintf(stdout, "Usage: tvout <move x> <move y>\n");
25         fprintf(stdout, "The parameter values should be in px.\n");
26         fprintf(stdout, "This program was created for the Armbian Project.");
27         fprintf(stdout, "(c) 2017, Daniel G.");
28         return EXIT_SUCCESS;
29     }
30
31     //Set X value
32     to_write = strtoul(argv[1], 0, 0) << X_REG_OFFSET;
33
34     //Set Y value
35     to_write = strtoul(argv[2], 0, 0) << Y_REG_OFFSET;
36
37     //write to register
38     writemem(TV_ENCODER_RESYNC, to_write, 'w');
39
40     return EXIT_SUCCESS;
41 }