\doxysection{src/struct.c File Reference}
\label{struct_8c}\index{src/struct.c@{src/struct.c}}
{\ttfamily \#include "{}struct.\+h"{}}\newline
{\ttfamily \#include "{}exec.\+h"{}}\newline
Include dependency graph for struct.\+c\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item
enum \{ \textbf{ CMDTABSIZE} = 41
\}
\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
unsigned \textbf{ hash\+\_\+cmdtype} (const char $\ast$cmd, \textbf{ CMDTYPE} type)
\item
unsigned \textbf{ hash\+\_\+code} (\textbf{ WORD} code)
\item
bool \textbf{ create\+\_\+cmdtable} (\textbf{ CMDTAB\+\_\+\+HASH} \textbf{ hash})
\begin{DoxyCompactList}\small\item\em 命令ハッシュ表を作成する \end{DoxyCompactList}\item
void \textbf{ free\+\_\+cmdtable} (\textbf{ CMDTAB\+\_\+\+HASH} \textbf{ hash})
\item
\textbf{ WORD} \textbf{ getcmdcode} (const char $\ast$cmd, \textbf{ CMDTYPE} type)
\item
const void $\ast$ \textbf{ getcmdptr} (\textbf{ WORD} code)
\item
\textbf{ CMDTYPE} \textbf{ getcmdtype} (\textbf{ WORD} code)
\item
char $\ast$ \textbf{ getcmdname} (\textbf{ WORD} code)
\item
char $\ast$ \textbf{ grstr} (\textbf{ WORD} word)
\begin{DoxyCompactList}\small\item\em 汎用レジスタの番号からレジスタを表す文字列を返す \end{DoxyCompactList}\item
void \textbf{ reset} (int memsize, int clocks)
\item
void \textbf{ shutdown} ()
\end{DoxyCompactItemize}
\doxysubsubsection*{Variables}
\begin{DoxyCompactItemize}
\item
\textbf{ SYSTEM} $\ast$ \textbf{ sys} = NULL
\begin{DoxyCompactList}\small\item\em COMET IIの仮想実行マシンシステム \end{DoxyCompactList}\item
\textbf{ EXECPTR} $\ast$ \textbf{ execptr} = NULL
\item
static const \textbf{ COMET2\+CMD} \textbf{ comet2cmd} [$\,$]
\item
static int \textbf{ comet2cmdsize} = \textbf{ ARRAYSIZE}(\textbf{ comet2cmd})
\item
static \textbf{ CMDTAB} $\ast$ \textbf{ cmdtab} [\textbf{ HASH\+\_\+\+MAX}][\textbf{ CMDTABSIZE}] = \{\{NULL\}\}
\end{DoxyCompactItemize}
\label{doc-enum-members}
\doxysubsection{Enumeration Type Documentation}
\doxysubsubsection{anonymous enum}
{\footnotesize\ttfamily \label{struct_8c_a611f34d0f4f8085f0c9e53265448b37e}
anonymous enum}
ハッシュ表のサイズ \begin{DoxyEnumFields}[2]{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{CMDTABSIZE@{CMDTABSIZE}!struct.c@{struct.c}}\index{struct.c@{struct.c}!CMDTABSIZE@{CMDTABSIZE}}}\label{struct_8c_a611f34d0f4f8085f0c9e53265448b37ead1edd2e69482a9913aa54ef3141fcb51}
CMDTABSIZE&\\
\hline
\end{DoxyEnumFields}
Definition at line \textbf{ 66} of file \textbf{ struct.\+c}.
\label{doc-func-members}
\doxysubsection{Function Documentation}
\index{struct.c@{struct.c}!create\_cmdtable@{create\_cmdtable}}
\index{create\_cmdtable@{create\_cmdtable}!struct.c@{struct.c}}
\doxysubsubsection{create\_cmdtable()}
{\footnotesize\ttfamily \label{struct_8c_a4eb3743c27e816af85038b8d48f0f4f2}
bool create\+\_\+cmdtable (\begin{DoxyParamCaption}\item[{\textbf{ CMDTAB\+\_\+\+HASH}}]{hash}{}\end{DoxyParamCaption})}
命令ハッシュ表を作成する
命令ハッシュ表を作成する
Definition at line \textbf{ 113} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a4eb3743c27e816af85038b8d48f0f4f2_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=330pt]{struct_8c_a4eb3743c27e816af85038b8d48f0f4f2_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!free\_cmdtable@{free\_cmdtable}}
\index{free\_cmdtable@{free\_cmdtable}!struct.c@{struct.c}}
\doxysubsubsection{free\_cmdtable()}
{\footnotesize\ttfamily \label{struct_8c_a979c48d01c135239941c21e2de01d6a7}
void free\+\_\+cmdtable (\begin{DoxyParamCaption}\item[{\textbf{ CMDTAB\+\_\+\+HASH}}]{hash}{}\end{DoxyParamCaption})}
命令ハッシュ表を解放する
Definition at line \textbf{ 135} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=195pt]{struct_8c_a979c48d01c135239941c21e2de01d6a7_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a979c48d01c135239941c21e2de01d6a7_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!getcmdcode@{getcmdcode}}
\index{getcmdcode@{getcmdcode}!struct.c@{struct.c}}
\doxysubsubsection{getcmdcode()}
{\footnotesize\ttfamily \label{struct_8c_ae5076231c2c9f5011a92b4901e881695}
\textbf{ WORD} getcmdcode (\begin{DoxyParamCaption}\item[{const char $\ast$}]{cmd}{, }\item[{\textbf{ CMDTYPE}}]{type}{}\end{DoxyParamCaption})}
命令の名前とタイプから、命令コードを返す~\newline
無効な場合は0x\+FFFFを返す
Definition at line \textbf{ 153} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_ae5076231c2c9f5011a92b4901e881695_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_ae5076231c2c9f5011a92b4901e881695_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!getcmdname@{getcmdname}}
\index{getcmdname@{getcmdname}!struct.c@{struct.c}}
\doxysubsubsection{getcmdname()}
{\footnotesize\ttfamily \label{struct_8c_adf06e214418dccb0a1861a7bdcc5572a}
char $\ast$ getcmdname (\begin{DoxyParamCaption}\item[{\textbf{ WORD}}]{code}{}\end{DoxyParamCaption})}
命令コードから命令の名前を返す
Definition at line \textbf{ 222} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=317pt]{struct_8c_adf06e214418dccb0a1861a7bdcc5572a_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_adf06e214418dccb0a1861a7bdcc5572a_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!getcmdptr@{getcmdptr}}
\index{getcmdptr@{getcmdptr}!struct.c@{struct.c}}
\doxysubsubsection{getcmdptr()}
{\footnotesize\ttfamily \label{struct_8c_a77b310948a693d43316a806d4d3186db}
const void $\ast$ getcmdptr (\begin{DoxyParamCaption}\item[{\textbf{ WORD}}]{code}{}\end{DoxyParamCaption})}
命令コードから命令の関数ポインタを返す
Definition at line \textbf{ 188} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=304pt]{struct_8c_a77b310948a693d43316a806d4d3186db_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=250pt]{struct_8c_a77b310948a693d43316a806d4d3186db_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!getcmdtype@{getcmdtype}}
\index{getcmdtype@{getcmdtype}!struct.c@{struct.c}}
\doxysubsubsection{getcmdtype()}
{\footnotesize\ttfamily \label{struct_8c_a4aa1eb34c73eb2df36ef720d8164ba68}
\textbf{ CMDTYPE} getcmdtype (\begin{DoxyParamCaption}\item[{\textbf{ WORD}}]{code}{}\end{DoxyParamCaption})}
命令コードから命令のタイプを返す
Definition at line \textbf{ 205} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=312pt]{struct_8c_a4aa1eb34c73eb2df36ef720d8164ba68_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a4aa1eb34c73eb2df36ef720d8164ba68_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!grstr@{grstr}}
\index{grstr@{grstr}!struct.c@{struct.c}}
\doxysubsubsection{grstr()}
{\footnotesize\ttfamily \label{struct_8c_a79db80b9af5021d0ecd3e7e0cc82d65f}
char $\ast$ grstr (\begin{DoxyParamCaption}\item[{\textbf{ WORD}}]{word}{}\end{DoxyParamCaption})}
汎用レジスタの番号からレジスタを表す文字列を返す
汎用レジスタの番号からレジスタを表す文字列を返す
Definition at line \textbf{ 240} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=181pt]{struct_8c_a79db80b9af5021d0ecd3e7e0cc82d65f_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a79db80b9af5021d0ecd3e7e0cc82d65f_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!hash\_cmdtype@{hash\_cmdtype}}
\index{hash\_cmdtype@{hash\_cmdtype}!struct.c@{struct.c}}
\doxysubsubsection{hash\_cmdtype()}
{\footnotesize\ttfamily \label{struct_8c_aeae4030e83292f23161ee79d8f1d5e1b}
unsigned hash\+\_\+cmdtype (\begin{DoxyParamCaption}\item[{const char $\ast$}]{cmd}{, }\item[{\textbf{ CMDTYPE}}]{type}{}\end{DoxyParamCaption})}
命令の名前とタイプからハッシュ値を生成する
Definition at line \textbf{ 88} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=325pt]{struct_8c_aeae4030e83292f23161ee79d8f1d5e1b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_aeae4030e83292f23161ee79d8f1d5e1b_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!hash\_code@{hash\_code}}
\index{hash\_code@{hash\_code}!struct.c@{struct.c}}
\doxysubsubsection{hash\_code()}
{\footnotesize\ttfamily \label{struct_8c_a64b381df02267a1444ea0533a80dc841}
unsigned hash\+\_\+code (\begin{DoxyParamCaption}\item[{\textbf{ WORD}}]{code}{}\end{DoxyParamCaption})}
命令コードからハッシュ値を生成する
Definition at line \textbf{ 171} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=209pt]{struct_8c_a64b381df02267a1444ea0533a80dc841_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a64b381df02267a1444ea0533a80dc841_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!reset@{reset}}
\index{reset@{reset}!struct.c@{struct.c}}
\doxysubsubsection{reset()}
{\footnotesize\ttfamily \label{struct_8c_a12c8d8c5ea49c8e8bf537c469e16c0cc}
void reset (\begin{DoxyParamCaption}\item[{int}]{memsize}{, }\item[{int}]{clocks}{}\end{DoxyParamCaption})}
COMET II仮想マシンのリセット
Definition at line \textbf{ 253} of file \textbf{ struct.\+c}.
Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=183pt]{struct_8c_a12c8d8c5ea49c8e8bf537c469e16c0cc_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a12c8d8c5ea49c8e8bf537c469e16c0cc_icgraph}
\end{center}
\end{figure}
\index{struct.c@{struct.c}!shutdown@{shutdown}}
\index{shutdown@{shutdown}!struct.c@{struct.c}}
\doxysubsubsection{shutdown()}
{\footnotesize\ttfamily \label{struct_8c_a7861ee1569802186a619778efc85af13}
void shutdown (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
COMET II仮想マシンのシャットダウン
Definition at line \textbf{ 278} of file \textbf{ struct.\+c}.
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{struct_8c_a7861ee1569802186a619778efc85af13_icgraph}
\end{center}
\end{figure}
\label{doc-var-members}
\doxysubsection{Variable Documentation}
\index{struct.c@{struct.c}!cmdtab@{cmdtab}}
\index{cmdtab@{cmdtab}!struct.c@{struct.c}}
\doxysubsubsection{cmdtab}
{\footnotesize\ttfamily \label{struct_8c_a58d501614bea7fc29317ee468dfd5aa1}
\textbf{ CMDTAB}$\ast$ cmdtab[\textbf{ HASH\+\_\+\+MAX}][\textbf{ CMDTABSIZE}] = \{\{NULL\}\}\hspace{0.3cm}{\ttfamily [static]}}
ハッシュ表
Definition at line \textbf{ 73} of file \textbf{ struct.\+c}.
\index{struct.c@{struct.c}!comet2cmd@{comet2cmd}}
\index{comet2cmd@{comet2cmd}!struct.c@{struct.c}}
\doxysubsubsection{comet2cmd}
{\footnotesize\ttfamily \label{struct_8c_ad4cf0c89fc2669da656a75b0320c9e9c}
const \textbf{ COMET2\+CMD} comet2cmd[$\,$]\hspace{0.3cm}{\ttfamily [static]}}
システム\+COMET IIの命令表
Definition at line \textbf{ 17} of file \textbf{ struct.\+c}.
\index{struct.c@{struct.c}!comet2cmdsize@{comet2cmdsize}}
\index{comet2cmdsize@{comet2cmdsize}!struct.c@{struct.c}}
\doxysubsubsection{comet2cmdsize}
{\footnotesize\ttfamily \label{struct_8c_ae1f9e3aead4386f3f9216acaa88bd047}
int comet2cmdsize = \textbf{ ARRAYSIZE}(\textbf{ comet2cmd})\hspace{0.3cm}{\ttfamily [static]}}
命令表のサイズ
Definition at line \textbf{ 61} of file \textbf{ struct.\+c}.
\index{struct.c@{struct.c}!execptr@{execptr}}
\index{execptr@{execptr}!struct.c@{struct.c}}
\doxysubsubsection{execptr}
{\footnotesize\ttfamily \label{struct_8c_a4be4aa2dd7d478878cc9fda6aed8498e}
\textbf{ EXECPTR}$\ast$ execptr = NULL}
プログラム実行時の開始と終了のアドレス
Definition at line \textbf{ 12} of file \textbf{ struct.\+c}.
\index{struct.c@{struct.c}!sys@{sys}}
\index{sys@{sys}!struct.c@{struct.c}}
\doxysubsubsection{sys}
{\footnotesize\ttfamily \label{struct_8c_a98d202b8436afcd618aaca20d7748227}
\textbf{ SYSTEM}$\ast$ sys = NULL}
COMET IIの仮想実行マシンシステム
COMET IIの仮想実行マシンシステム
Definition at line \textbf{ 7} of file \textbf{ struct.\+c}.