\documentclass{book} \usepackage{tikz} \title{Unnamed Machine} \author{A Very Terrible 16-bit Machine} \begin{document} \maketitle \tableofcontents \chapter{Overview} \section{Introduction} \section{Registers} The following are the general purpose registers that can be used. \begin{itemize} \item[] R1 \item[] ... \item[] R8 \end{itemize} \section{Memory Model} Memory will be implicitly mapped I/O. The bottom 3201 bytes of memory will be reserved for the keyboard input and graphics. A single byte is reserved for the keyboard's input. The current key will be stored in byte 0xF37E, with the most significant bit being a flag indicating that the keyboard is ready to be read from. This means that the character encoding is actually 7 bits. Video memory starts at 0xF37F (62335 decimal), and every byte represents an ASCII character in monochrome. \begin{figure} \centering \begin{tikzpicture} \fill[gray!5] (0,0)rectangle(5,10); %\draw (0,10) .. controls (-2,6) and (-2,4) .. (0,1); %\draw (0,10) arc (0:180:3cm); \draw (0,10) -- (5,10); \draw (0,1) -- node[above] {Video 0xF37F} (5,1); \draw (0,0) -- (5,0); \node[label=right:Top 0x0000] at (5,10) {}; \node[label=right:Bottom 0xFFFF] at (5,0) {}; \end{tikzpicture} \caption{Memory Layout} \end{figure} \chapter{ISA} \section{COPY} \section{CMP} \end{document}