generate manual pages from Markdown instead of writing directly
diff --git a/doc/man/asn1c.1 b/doc/man/asn1c.1
new file mode 100644
index 0000000..54c2337
--- /dev/null
+++ b/doc/man/asn1c.1
@@ -0,0 +1,199 @@
+.\" Automatically generated by Pandoc 1.16.0.2
+.\"
+.ad l
+.TH "asn1c" "1" "2016\-01\-23" "ASN.1 Compiler" "Version 0.9.28"
+.nh \" Turn off hyphenation by default.
+.SH NAME
+.PP
+asn1c \-\- the ASN.1 Compiler
+.SH SYNOPSIS
+.PP
+asn1c [\f[B]\-E\f[] [\f[B]\-F\f[]] | \f[B]\-P\f[] | \f[B]\-R\f[]]
+.PD 0
+.P
+.PD
+[\f[B]\-S\f[]\f[I]dir\f[]] [\f[B]\-X\f[]]
+.PD 0
+.P
+.PD
+[\f[B]\-W\f[]\f[I]debug\-\f[]...] [\f[B]\-f\f[]\f[I]option\f[]]
+[\f[B]\-gen\-\f[]\f[I]option\f[]]
+[\f[B]\-pdu\f[]={\f[B]all\f[]|\f[B]auto\f[]|\f[I]Type\f[]}]
+.PD 0
+.P
+.PD
+[\f[B]\-print\-\f[]\f[I]option\f[]]
+.PD 0
+.P
+.PD
+\f[I]input\-filenames\f[]...
+.SH DESCRIPTION
+.PP
+asn1c compiles ASN.1 specifications into a set of target language
+(C/C++) encoders and decoders for BER, DER, PER, XER and other encoding
+rules.
+.SH OPTIONS
+.SS Stage Selection Options
+.TP
+.B \-E
+Run the parsing stage only.
+Print the reconstructed ASN.1 text.
+.RS
+.RE
+.TP
+.B \-F
+Used together with \f[B]\-E\f[], instructs the compiler to stop after
+the ASN.1 syntax tree fixing stage and dump the reconstructed ASN.1
+specification to the standard output.
+.RS
+.RE
+.TP
+.B \-P
+Dump the compiled output to the standard output instead of creating the
+target language files on disk.
+.RS
+.RE
+.TP
+.B \-R
+Restrict the compiler to generate only the ASN.1 tables, omitting the
+usual support code.
+.RS
+.RE
+.TP
+.B \-S \f[I]directory\f[]
+Use the specified directory with ASN.1 skeleton files.
+.RS
+.RE
+.TP
+.B \-X
+Generate an XML DTD schema for the specified ASN.1 files.
+.RS
+.RE
+.SS Warning Options
+.TP
+.B \-Werror
+Treat warnings as errors; abort if any warning is produced.
+.RS
+.RE
+.TP
+.B \-Wdebug\-lexer
+Enable lexer debugging during the ASN.1 parsing stage.
+.RS
+.RE
+.TP
+.B \-Wdebug\-fixer
+Enable ASN.1 syntax tree fixer debugging during the fixing stage.
+.RS
+.RE
+.TP
+.B \-Wdebug\-compiler
+Enable debugging during the actual compile time.
+.RS
+.RE
+.SS Language Options
+.TP
+.B \-fbless\-SIZE
+Allow \f[C]SIZE()\f[] constraint for \f[C]INTEGER\f[],
+\f[C]ENUMERATED\f[], and other types for which this constraint is
+normally prohibited by the standard.
+This is a violation of ASN.1 standard, and the compiler may fail to
+produce a meaningful code.
+.RS
+.RE
+.TP
+.B \-fcompound\-names
+Using this option prevents name collisions in the target source code by
+using complex names for target language structures.
+(Name collisions may occur if the ASN.1 module reuses the same
+identifiers in multiple contexts).
+.RS
+.RE
+.TP
+.B \-findirect\-choice
+When generating code for a \f[C]CHOICE\f[] type, compile the
+\f[C]CHOICE\f[] members as indirect pointers instead of declaring them
+inline.
+Consider using this option together with \f[B]\-fno\-include\-deps\f[]
+to prevent circular references.
+.RS
+.RE
+.TP
+.B \-fincludes\-quoted
+Refer to header files in \f[C]#include\f[]s using
+\f[B]"\f[]double\f[B]"\f[] instead of \f[B]<\f[]angle\f[B]>\f[] quotes.
+.RS
+.RE
+.TP
+.B \-fknown\-extern\-type=\f[I]name\f[]
+Pretend the specified type is known.
+The compiler will assume the target language source files for the given
+type have been provided manually.
+.RS
+.RE
+.TP
+.B \-fline\-refs
+Include ASN.1 module\[aq]s line numbers in generated code comments.
+.RS
+.RE
+.TP
+.B \-fno\-constraints
+Do not generate ASN.1 subtype constraint checking code.
+This may make a shorter executable.
+.RS
+.RE
+.TP
+.B \-fno\-include\-deps
+Do not generate courtesy #include lines for non\-critical type
+dependencies.
+Helps prevent namespace collisions.
+.RS
+.RE
+.TP
+.B \-funnamed\-unions
+Enable unnamed unions in the definitions of target language\[aq]s
+structures.
+.RS
+.RE
+.TP
+.B \-fwide\-types
+Use the unbounded size data types (\f[C]INTEGER_t\f[],
+\f[C]ENUMERATED_t\f[], \f[C]REAL_t\f[]) by default, instead of using the
+native machine\[aq]s data types (long, double).
+.RS
+.RE
+.SS Codecs Generation Options
+.TP
+.B \-gen\-PER
+Generate the Packed Encoding Rules (PER) support code.
+.RS
+.RE
+.TP
+.B \-pdu={all|auto|\f[I]Type\f[]}
+Create a PDU table for specified types, or discover Protocol Data Units
+automatically.
+In case of \f[B]\-pdu=all\f[], all ASN.1 types defined in all modules
+will form a PDU table.
+In case of \f[B]\-pdu=auto\f[], all types not referenced by any other
+type will form a PDU table.
+If \f[I]Type\f[] is an ASN.1 type identifier, the identifier is added to
+the generated PDU table.
+The last form may be specified multiple times to add any number of PDUs.
+.RS
+.RE
+.SS Output Options
+.TP
+.B \-print\-constraints
+When \f[B]\-EF\f[] options are also specified, this option forces the
+compiler to explain its internal understanding of subtype constraints.
+.RS
+.RE
+.TP
+.B \-print\-lines
+Generate "\f[C]\-\-\ #line\f[]" comments in \f[B]\-E\f[] output.
+.RS
+.RE
+.SH SEE ALSO
+.PP
+\f[C]unber\f[](1), \f[C]enber\f[](1).
+.SH AUTHORS
+Lev Walkin <vlm@lionet.info>.