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