\hypertarget{structComSquare_1_1CPU_1_1Registers}{}\doxysection{Com\+Square\+::C\+PU\+::Registers Struct Reference}
\label{structComSquare_1_1CPU_1_1Registers}\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}


Struct containing registers for the main \mbox{\hyperlink{classComSquare_1_1CPU_1_1CPU}{C\+PU}}.  




{\ttfamily \#include $<$C\+P\+U.\+hpp$>$}



Collaboration diagram for Com\+Square\+::C\+PU\+::Registers\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=231pt]{structComSquare_1_1CPU_1_1Registers__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
union \mbox{\hyperlink{unionComSquare_1_1CPU_1_1Registers_1_1p}{p}}
\begin{DoxyCompactList}\small\item\em The Processor status register;. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a7c28866ed95425fd60aa4d8886bb8f9f}{ah}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a127b7752795e4498236f7b01e7498227}{al}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_aaa8d450e6d4430317e1251313acd11c3}{a}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The Accumulator. \end{DoxyCompactList}\item 
uint8\+\_\+t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_af9d26a8ba0914c825d06db23049433ec}{dbr}}
\begin{DoxyCompactList}\small\item\em The Data Bank Register;. \end{DoxyCompactList}\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a1e072edb3788835babe101a874267d84}{dh}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_ac691fbd6e61b3aef8b3464a233f85f6d}{dl}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_af16407891e835ccbcb0fcb4d19b6081e}{d}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The Direct register;. \end{DoxyCompactList}\item 
uint8\+\_\+t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a4ec672823a8d45a44282cc04e7b34d58}{k}}
\begin{DoxyCompactList}\small\item\em The program banK register;. \end{DoxyCompactList}\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a25f950ea41d30db1ec73b8a165e67f51}{pch}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a277545ef8503238642198f0386d2faaa}{pcl}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a5ff36b8ad167923161b896ae92729111}{pc}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The Program Counter;. \end{DoxyCompactList}\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a438434360195417afce13220ae856861}{sh}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a19f2b4c328874c2207459bf22b2a76ba}{sl}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_ad6e42ddbafd6a31ad15df813dee72fa4}{s}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The Stack pointer. \end{DoxyCompactList}\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_acc0e55548baf2ad8a411eb4f782092c3}{xh}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a718d9c2f67935dad3778b0fc03a22030}{xl}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a1274f0dbe8e79cd4794f2cc8175a99c3}{x}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The X index register. \end{DoxyCompactList}\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
union \{\\
\>struct \{\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_a324dee252472744f2d72fb4ba86c3da1}{yh}}\\
\>\>uint8\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_ab1995426df7b4f4500a2576b121824f6}{yl}}\\
\>\} \\
\>uint16\_t \mbox{\hyperlink{structComSquare_1_1CPU_1_1Registers_ac756a49aa063214449d0ef9be3db38cc}{y}}\\
\}; \\

\end{tabbing}\begin{DoxyCompactList}\small\item\em The Y index register. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Struct containing registers for the main \mbox{\hyperlink{classComSquare_1_1CPU_1_1CPU}{C\+PU}}. 

\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a17d53ac661fc1896e91de6d36eeb2617}\label{structComSquare_1_1CPU_1_1Registers_a17d53ac661fc1896e91de6d36eeb2617}} 
\doxysubsubsection{\texorpdfstring{"@27}{@27}}
{\footnotesize\ttfamily union \{ ... \} }



The Accumulator. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_afb1dda6cfaf0abd9af2c76fdd527e00c}\label{structComSquare_1_1CPU_1_1Registers_afb1dda6cfaf0abd9af2c76fdd527e00c}} 
\doxysubsubsection{\texorpdfstring{"@29}{@29}}
{\footnotesize\ttfamily union \{ ... \} }



The Direct register;. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a832b5ff64115233d3d36c5fea1e53a3d}\label{structComSquare_1_1CPU_1_1Registers_a832b5ff64115233d3d36c5fea1e53a3d}} 
\doxysubsubsection{\texorpdfstring{"@31}{@31}}
{\footnotesize\ttfamily union \{ ... \} }



The Program Counter;. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ae3d184f6fe8247cadea3315843b41531}\label{structComSquare_1_1CPU_1_1Registers_ae3d184f6fe8247cadea3315843b41531}} 
\doxysubsubsection{\texorpdfstring{"@33}{@33}}
{\footnotesize\ttfamily union \{ ... \} }



The Stack pointer. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ab7ca804043bf3a2fd559c5f3d52321fd}\label{structComSquare_1_1CPU_1_1Registers_ab7ca804043bf3a2fd559c5f3d52321fd}} 
\doxysubsubsection{\texorpdfstring{"@35}{@35}}
{\footnotesize\ttfamily union \{ ... \} }



The X index register. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a94dfb4545b2c01368f25875b4658212d}\label{structComSquare_1_1CPU_1_1Registers_a94dfb4545b2c01368f25875b4658212d}} 
\doxysubsubsection{\texorpdfstring{"@37}{@37}}
{\footnotesize\ttfamily union \{ ... \} }



The Y index register. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_aaa8d450e6d4430317e1251313acd11c3}\label{structComSquare_1_1CPU_1_1Registers_aaa8d450e6d4430317e1251313acd11c3}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!a@{a}}
\index{a@{a}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{a}{a}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::a}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a7c28866ed95425fd60aa4d8886bb8f9f}\label{structComSquare_1_1CPU_1_1Registers_a7c28866ed95425fd60aa4d8886bb8f9f}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!ah@{ah}}
\index{ah@{ah}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{ah}{ah}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::ah}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a127b7752795e4498236f7b01e7498227}\label{structComSquare_1_1CPU_1_1Registers_a127b7752795e4498236f7b01e7498227}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!al@{al}}
\index{al@{al}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{al}{al}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::al}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_af16407891e835ccbcb0fcb4d19b6081e}\label{structComSquare_1_1CPU_1_1Registers_af16407891e835ccbcb0fcb4d19b6081e}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!d@{d}}
\index{d@{d}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{d}{d}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::d}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_af9d26a8ba0914c825d06db23049433ec}\label{structComSquare_1_1CPU_1_1Registers_af9d26a8ba0914c825d06db23049433ec}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!dbr@{dbr}}
\index{dbr@{dbr}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{dbr}{dbr}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::dbr}



The Data Bank Register;. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a1e072edb3788835babe101a874267d84}\label{structComSquare_1_1CPU_1_1Registers_a1e072edb3788835babe101a874267d84}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!dh@{dh}}
\index{dh@{dh}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{dh}{dh}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::dh}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ac691fbd6e61b3aef8b3464a233f85f6d}\label{structComSquare_1_1CPU_1_1Registers_ac691fbd6e61b3aef8b3464a233f85f6d}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!dl@{dl}}
\index{dl@{dl}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{dl}{dl}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::dl}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a4ec672823a8d45a44282cc04e7b34d58}\label{structComSquare_1_1CPU_1_1Registers_a4ec672823a8d45a44282cc04e7b34d58}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!k@{k}}
\index{k@{k}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{k}{k}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::k}



The program banK register;. 

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a5ff36b8ad167923161b896ae92729111}\label{structComSquare_1_1CPU_1_1Registers_a5ff36b8ad167923161b896ae92729111}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!pc@{pc}}
\index{pc@{pc}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{pc}{pc}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::pc}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a25f950ea41d30db1ec73b8a165e67f51}\label{structComSquare_1_1CPU_1_1Registers_a25f950ea41d30db1ec73b8a165e67f51}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!pch@{pch}}
\index{pch@{pch}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{pch}{pch}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::pch}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a277545ef8503238642198f0386d2faaa}\label{structComSquare_1_1CPU_1_1Registers_a277545ef8503238642198f0386d2faaa}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!pcl@{pcl}}
\index{pcl@{pcl}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{pcl}{pcl}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::pcl}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ad6e42ddbafd6a31ad15df813dee72fa4}\label{structComSquare_1_1CPU_1_1Registers_ad6e42ddbafd6a31ad15df813dee72fa4}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!s@{s}}
\index{s@{s}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{s}{s}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::s}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a438434360195417afce13220ae856861}\label{structComSquare_1_1CPU_1_1Registers_a438434360195417afce13220ae856861}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!sh@{sh}}
\index{sh@{sh}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{sh}{sh}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::sh}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a19f2b4c328874c2207459bf22b2a76ba}\label{structComSquare_1_1CPU_1_1Registers_a19f2b4c328874c2207459bf22b2a76ba}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!sl@{sl}}
\index{sl@{sl}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{sl}{sl}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::sl}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a1274f0dbe8e79cd4794f2cc8175a99c3}\label{structComSquare_1_1CPU_1_1Registers_a1274f0dbe8e79cd4794f2cc8175a99c3}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!x@{x}}
\index{x@{x}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{x}{x}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::x}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_acc0e55548baf2ad8a411eb4f782092c3}\label{structComSquare_1_1CPU_1_1Registers_acc0e55548baf2ad8a411eb4f782092c3}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!xh@{xh}}
\index{xh@{xh}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{xh}{xh}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::xh}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a718d9c2f67935dad3778b0fc03a22030}\label{structComSquare_1_1CPU_1_1Registers_a718d9c2f67935dad3778b0fc03a22030}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!xl@{xl}}
\index{xl@{xl}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{xl}{xl}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::xl}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ac756a49aa063214449d0ef9be3db38cc}\label{structComSquare_1_1CPU_1_1Registers_ac756a49aa063214449d0ef9be3db38cc}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!y@{y}}
\index{y@{y}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{y}{y}}
{\footnotesize\ttfamily uint16\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::y}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_a324dee252472744f2d72fb4ba86c3da1}\label{structComSquare_1_1CPU_1_1Registers_a324dee252472744f2d72fb4ba86c3da1}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!yh@{yh}}
\index{yh@{yh}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{yh}{yh}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::yh}

\mbox{\Hypertarget{structComSquare_1_1CPU_1_1Registers_ab1995426df7b4f4500a2576b121824f6}\label{structComSquare_1_1CPU_1_1Registers_ab1995426df7b4f4500a2576b121824f6}} 
\index{ComSquare::CPU::Registers@{ComSquare::CPU::Registers}!yl@{yl}}
\index{yl@{yl}!ComSquare::CPU::Registers@{ComSquare::CPU::Registers}}
\doxysubsubsection{\texorpdfstring{yl}{yl}}
{\footnotesize\ttfamily uint8\+\_\+t Com\+Square\+::\+C\+P\+U\+::\+Registers\+::yl}



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
sources/\+C\+P\+U/\mbox{\hyperlink{CPU_8hpp}{C\+P\+U.\+hpp}}\end{DoxyCompactItemize}
