mirror of
https://github.com/curioustorvald/tsvm.git
synced 2026-06-06 05:28:31 +09:00
doc update
This commit is contained in:
@@ -19,10 +19,11 @@
|
||||
\indexentry{MMIO-graphics|hyperpage}{26}
|
||||
\indexentry{boot process|hyperpage}{29}
|
||||
\indexentry{coreutils (DOS)|hyperpage}{30}
|
||||
\indexentry{applications (DOS)|hyperpage}{31}
|
||||
\indexentry{pipe (DOS)|hyperpage}{34}
|
||||
\indexentry{filesystem (DOS)|hyperpage}{36}
|
||||
\indexentry{file descriptor (DOS)|hyperpage}{36}
|
||||
\indexentry{device file|hyperpage}{38}
|
||||
\indexentry{input (DOS)|hyperpage}{40}
|
||||
\indexentry{gl (DOS)|hyperpage}{41}
|
||||
\indexentry{built-in apps (DOS)|hyperpage}{31}
|
||||
\indexentry{user apps (DOS)|hyperpage}{33}
|
||||
\indexentry{pipe (DOS)|hyperpage}{35}
|
||||
\indexentry{filesystem (DOS)|hyperpage}{37}
|
||||
\indexentry{file descriptor (DOS)|hyperpage}{37}
|
||||
\indexentry{device file|hyperpage}{39}
|
||||
\indexentry{input (DOS)|hyperpage}{41}
|
||||
\indexentry{gl (DOS)|hyperpage}{43}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
This is makeindex, version 2.16 [TeX Live 2022] (kpathsea + Thai support).
|
||||
Scanning input file tsvmman.idx....done (28 entries accepted, 0 rejected).
|
||||
Sorting entries....done (137 comparisons).
|
||||
Generating output file tsvmman.ind....done (61 lines written, 0 warnings).
|
||||
Scanning input file tsvmman.idx....done (29 entries accepted, 0 rejected).
|
||||
Sorting entries....done (142 comparisons).
|
||||
Generating output file tsvmman.ind....done (62 lines written, 0 warnings).
|
||||
Output written in tsvmman.ind.
|
||||
Transcript written in tsvmman.ilg.
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
\begin{theindex}
|
||||
|
||||
\item applications (DOS), \hyperpage{31}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item base64 (library), \hyperpage{13}
|
||||
\item block communication, \hyperpage{16}
|
||||
\item boot process, \hyperpage{29}
|
||||
\item built-in apps (DOS), \hyperpage{31}
|
||||
|
||||
\indexspace
|
||||
|
||||
@@ -19,22 +16,22 @@
|
||||
|
||||
\indexspace
|
||||
|
||||
\item device file, \hyperpage{38}
|
||||
\item device file, \hyperpage{39}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item file descriptor (DOS), \hyperpage{36}
|
||||
\item filesystem (DOS), \hyperpage{36}
|
||||
\item file descriptor (DOS), \hyperpage{37}
|
||||
\item filesystem (DOS), \hyperpage{37}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item gl (DOS), \hyperpage{41}
|
||||
\item gl (DOS), \hyperpage{43}
|
||||
\item graphics (library), \hyperpage{26}
|
||||
\item gzip (library), \hyperpage{12}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item input (DOS), \hyperpage{40}
|
||||
\item input (DOS), \hyperpage{41}
|
||||
|
||||
\indexspace
|
||||
|
||||
@@ -51,11 +48,15 @@
|
||||
|
||||
\indexspace
|
||||
|
||||
\item pipe (DOS), \hyperpage{34}
|
||||
\item pipe (DOS), \hyperpage{35}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item stdio (library), \hyperpage{9}
|
||||
\item sys (library), \hyperpage{13}
|
||||
|
||||
\indexspace
|
||||
|
||||
\item user apps (DOS), \hyperpage{33}
|
||||
|
||||
\end{theindex}
|
||||
|
||||
@@ -52,9 +52,9 @@ Variables can be set or changed using \textbf{SET} commands.
|
||||
|
||||
|
||||
|
||||
\chapter{Applications}
|
||||
\chapter{Built-in Apps}
|
||||
|
||||
\index{applications (DOS)}Applications are the programs shiped with the standard distribution of \thedos\ that is written for users' convenience.
|
||||
\index{built-in apps (DOS)}Built-in Applications are the programs shipped with the standard distribution of \thedos\ that is written for users' convenience.
|
||||
|
||||
This chapter will only briefly list and describe the applications.
|
||||
|
||||
@@ -77,7 +77,20 @@ This chapter will only briefly list and describe the applications.
|
||||
|
||||
|
||||
|
||||
\chapter{Invoking Coreutils on JS}
|
||||
\chapter{Writing Your Own Apps}
|
||||
|
||||
\index{user apps (DOS)}User-made Applications are basically a standard Javascript program, but \thedos\ provides DOS extensions for convenience.
|
||||
|
||||
User apps are invoked through \thedos\ to inject the command-line arguments and some necessary functionalities.
|
||||
|
||||
\section{Command-line Arguments}
|
||||
|
||||
The command line arguments are given via the array of strings named `exec\_args`.
|
||||
|
||||
Index zero holds the name used to invoke the app, and the rest hold the actual arguments.
|
||||
|
||||
|
||||
\section{Invoking Coreutils on the user Apps}
|
||||
|
||||
DOS coreutils and some of the internal functions can be used on Javascript program.
|
||||
|
||||
@@ -91,6 +104,12 @@ To invoke the coreutils, use \code{\_G.shell.coreutils.*}
|
||||
\end{outline}
|
||||
|
||||
|
||||
\section{Termination Check Injection}
|
||||
|
||||
Due to the non-preemptive nature of the virtual machine, the termination\footnote{Default key combination: Shift+Ctrl+T+R} signal must be explicitly captured by the app, and taking care of it by yourself can be extremely tedious. Fortunately \thedos\ parses the user-written program and injects those checks accordingly.
|
||||
|
||||
While- and For-loops are always have such checks injected, but the `read()` is not checked for the termination.
|
||||
|
||||
|
||||
\chapter{Pipes}
|
||||
|
||||
@@ -195,10 +214,10 @@ Functions:
|
||||
\end{outline}
|
||||
|
||||
|
||||
\chapter{DOS Libraries}
|
||||
|
||||
\chapter{Input Event Handling}
|
||||
|
||||
\section{Input}
|
||||
\thedos\ provides the library for handling the keyboard and mouse events.
|
||||
|
||||
\dosnamespaceis{Input}{input}
|
||||
|
||||
@@ -229,7 +248,9 @@ Input events are Javascript array of: $$ [\mathrm{event\ name,\ arg_1,\ arg_2 \c
|
||||
\2\argsynopsis{\argN{5}}{Y-position of the mouse cursor on the previous frame}
|
||||
\end{outline}
|
||||
|
||||
\section{GL}
|
||||
\chapter{The Graphics Library}
|
||||
|
||||
\thedos\ provides the library for drawing pixels to the screen.
|
||||
|
||||
\dosnamespaceis{Graphics}{gl}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user