4040static int dooverwrite = 1 ;
4141static int docolor = 1 ;
4242static int progressive = 0 ;
43+ static int scanlines = 1 ;
4344#if (CRT_SYSTEM == CRT_SYSTEM_NTSCVHS )
4445static int doaberration = 0 ;
4546#endif
@@ -70,9 +71,9 @@ static void
7071usage (char * p )
7172{
7273#if (CRT_SYSTEM == CRT_SYSTEM_NTSCVHS )
73- printf ("usage: %s -m|o|a|p|h num_frames outwidth outheight noise\n" , p );
74+ printf ("usage: %s -m|o|a|p|s| h num_frames outwidth outheight noise\n" , p );
7475#else
75- printf ("usage: %s -m|o|p|h num_frames outwidth outheight noise\n" , p );
76+ printf ("usage: %s -m|o|p|s| h num_frames outwidth outheight noise\n" , p );
7677#endif
7778 printf ("sample usage: %s -oa 5000 640 480 0\n" , p );
7879 printf ("sample usage: %s - 1400 832 624 12\n" , p );
@@ -81,6 +82,7 @@ usage(char *p)
8182 printf ("\tm : monochrome\n" );
8283 printf ("\to : do not prompt when overwriting files\n" );
8384 printf ("\ta : mess up the bottom of the frame (useful for the VHS look)\n" );
85+ printf ("\ts : fill in gaps between scan lines\n" );
8486 printf ("\tp : progressive scan (rather than interlaced)\n" );
8587 printf ("\th : print help\n" );
8688 printf ("\n" );
@@ -103,6 +105,7 @@ process_args(int argc, char **argv)
103105#if (CRT_SYSTEM == CRT_SYSTEM_NTSCVHS )
104106 case 'a' : doaberration = 1 ; break ;
105107#endif
108+ case 's' : scanlines = 0 ; break ;
106109 case 'p' : progressive = 1 ; break ;
107110 case 'h' : usage (argv [0 ]); return 0 ;
108111 default :
@@ -234,7 +237,7 @@ main(int argc, char **argv)
234237#endif
235238
236239 crt .blend = 0 ;
237- crt .scanlines = 1 ;
240+ crt .scanlines = scanlines ;
238241 crt .saturation = 10 ;
239242
240243 printf ("converting to %dx%d...\n" , outw , outh );
0 commit comments