aboutsummaryrefslogtreecommitdiffstats
path: root/manual/CHAPTER_Prog.tex
blob: 3918594a20ad31229a8a857265d28a03a4845c00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
\chapter{Programming Yosys Extensions}
\label{chapter:prog}

\begin{fixme}
This chapter will contain a guided tour to the Yosys APIs and conclude
with an example module.
\end{fixme}

\section{Programming with RTLIL}
\section{Internal Utility Libraries}
\section{Loadable Modules}

\section{Example Module}

\lstinputlisting[title=stubnets.cc,numbers=left,frame=single,language=C++]{CHAPTER_Prog/stubnets.cc}

\lstinputlisting[title=Makefile,numbers=left,frame=single,language=make]{CHAPTER_Prog/Makefile}

\lstinputlisting[title=test.v,numbers=left,frame=single,language=Verilog]{CHAPTER_Prog/test.v}
an>> $!nav("mitmproxy.html", this, state)!$ $!nav("mitmdump.html", this, state)!$ <li class="nav-header">Features</li> $!nav("anticache.html", this, state)!$ $!nav("filters.html", this, state)!$ $!nav("replacements.html", this, state)!$ $!nav("clientreplay.html", this, state)!$ $!nav("serverreplay.html", this, state)!$ $!nav("setheaders.html", this, state)!$ $!nav("passthrough.html", this, state)!$ $!nav("sticky.html", this, state)!$ $!nav("reverseproxy.html", this, state)!$ $!nav("upstreamproxy.html", this, state)!$ $!nav("upstreamcerts.html", this, state)!$ $!nav("proxyauth.html", this, state)!$ $!nav("responsestreaming.html", this, state)!$ <li class="nav-header">Installing Certificates</li> $!nav("ssl.html", this, state)!$ $!nav("certinstall/webapp.html", this, state)!$ $!nav("certinstall/android.html", this, state)!$ $!nav("certinstall/firefox.html", this, state)!$ $!nav("certinstall/ios.html", this, state)!$ $!nav("certinstall/ios-simulator.html", this, state)!$ $!nav("certinstall/java.html", this, state)!$ $!nav("certinstall/osx.html", this, state)!$ $!nav("certinstall/windows7.html", this, state)!$ <li class="nav-header">Transparent Proxying</li> $!nav("transparent.html", this, state)!$ $!nav("transparent/linux.html", this, state)!$ $!nav("transparent/osx.html", this, state)!$ <li class="nav-header">Scripting mitmproxy</li> $!nav("scripting/inlinescripts.html", this, state)!$ $!nav("scripting/libmproxy.html", this, state)!$ <li class="nav-header">Tutorials</li> $!nav("tutorials/30second.html", this, state)!$ $!nav("tutorials/gamecenter.html", this, state)!$ $!nav("tutorials/transparent-dhcp.html", this, state)!$ <li class="nav-header">Hacking</li> $!nav("dev/architecture.html", this, state)!$ $!nav("dev/testing.html", this, state)!$ </ul>