Skip to content

Commit

Permalink
Updated README.md and documentation pages.
Browse files Browse the repository at this point in the history
  • Loading branch information
nthnn committed Mar 4, 2024
1 parent 9d39fdd commit 2226fa1
Show file tree
Hide file tree
Showing 12 changed files with 56 additions and 32 deletions.
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,14 @@ qrepo run compile examples/sdk/hello.cpp hello

Now you have successfully compiled the example and can proceed with using the generated binary file.

## Dumping Raw Binaries

Dumping raw binary files can be helpful in debugging programs, traditionally. Hence, a simple script in Qrepo is available to dump instructions from a raw binary file of Rishka. You can utilize it by typing the following:

```bash
qrepo run dump <filename>
```

## Example

This example demonstrates the usage of Rishka virtual machine on an ESP32-WROVER microcontroller. It initializes serial communication and SD card, waits for user input via serial port, loads the specified file into the Rishka VM, executes it, and then waits for the next input.
Expand Down
4 changes: 2 additions & 2 deletions docs/d6/db5/rt_syscalls.html
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@
</div><!--header-->
<div class="contents">
<div class="toc"><h3>Table of Contents</h3>
<ul><ul><li class="level2"><a href="#autotoc_md9">Complete List of System Calls</a></li>
<ul><ul><li class="level2"><a href="#autotoc_md10">Complete List of System Calls</a></li>
</ul>
</ul>
</div>
Expand Down Expand Up @@ -128,7 +128,7 @@
<p class="startli">Upon completing the system call handler's execution, control returns to the user-level application. The application resumes its execution, continuing with its tasks or responding to the outcome of the system call as needed. This seamless return to user-level code ensures that applications can interact with the operating system efficiently and access privileged functionality while maintaining a clear separation between user and kernel space.</p>
</li>
</ol>
<h2><a class="anchor" id="autotoc_md9"></a>
<h2><a class="anchor" id="autotoc_md10"></a>
Complete List of System Calls</h2>
<p>The Rishka virtual runtime kernel provides an extensive array of system calls, offering a rich set of functionalities and services for user-level applications on the ESP32-WROVER microcontroller platform.</p>
<p>The below table is a comprehensive listing with details of the diverse range of system calls available within the Rishka kernel. Note that this is subject to changes since Rishka is still under development.</p>
Expand Down
15 changes: 10 additions & 5 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -107,9 +107,10 @@
</li>
</ul>
</li>
<li class="level2"><a href="#autotoc_md6">Example</a></li>
<li class="level2"><a href="#autotoc_md7">Contributing</a></li>
<li class="level2"><a href="#autotoc_md8">License</a></li>
<li class="level2"><a href="#autotoc_md6">Dumping Raw Binaries</a></li>
<li class="level2"><a href="#autotoc_md7">Example</a></li>
<li class="level2"><a href="#autotoc_md8">Contributing</a></li>
<li class="level2"><a href="#autotoc_md9">License</a></li>
</ul>
</ul>
</div>
Expand Down Expand Up @@ -168,6 +169,10 @@ <h4><a class="anchor" id="autotoc_md5"></a>
<div class="line"># This will output the binary file to dist/hello.bin</div>
</div><!-- fragment --><p>Now you have successfully compiled the example and can proceed with using the generated binary file.</p>
<h2><a class="anchor" id="autotoc_md6"></a>
Dumping Raw Binaries</h2>
<p>Dumping raw binary files can be helpful in debugging programs, traditionally. Hence, a simple script in Qrepo is available to dump instructions from a raw binary file of Rishka. You can utilize it by typing the following:</p>
<div class="fragment"><div class="line">qrepo run dump &lt;filename&gt;</div>
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md7"></a>
Example</h2>
<p>This example demonstrates the usage of Rishka virtual machine on an ESP32-WROVER microcontroller. It initializes serial communication and SD card, waits for user input via serial port, loads the specified file into the Rishka VM, executes it, and then waits for the next input.</p>
<div class="fragment"><div class="line"><span class="preprocessor">#include &lt;rishka.h&gt;</span></div>
Expand Down Expand Up @@ -227,7 +232,7 @@ <h2><a class="anchor" id="autotoc_md6"></a>
<div class="line"> <span class="comment">// Print prompt for next input</span></div>
<div class="line"> Serial.print(<span class="stringliteral">&quot;&gt; &quot;</span>);</div>
<div class="line">}</div>
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md7"></a>
</div><!-- fragment --><h2><a class="anchor" id="autotoc_md8"></a>
Contributing</h2>
<p>Contributions to Rishka are highly encouraged and appreciated! To contribute new features, bug fixes, or enhancements, please adhere to the following guidelines:</p>
<ol type="1">
Expand All @@ -237,7 +242,7 @@ <h2><a class="anchor" id="autotoc_md6"></a>
<li>Push your changes to the branch: <code>git push origin feature-name</code>.</li>
<li>Submit a pull request for review and inclusion.</li>
</ol>
<h2><a class="anchor" id="autotoc_md8"></a>
<h2><a class="anchor" id="autotoc_md9"></a>
License</h2>
<p>Rishka is distributed under the GNU General Public License v3.0. For further details, refer to the <a href="https://github.com/nthnn/rishka/blob/main/LICENSE">LICENSE</a> file.</p>
<div class="fragment"><div class="line">This program is free software: you can redistribute it and/or modify </div>
Expand Down
3 changes: 2 additions & 1 deletion docs/search/all_1.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,6 @@ var searchData=
['begin_0',['begin',['../d4/d47/class_i2_c.html#a266efe334adb94bbdfb0754ef883f5eb',1,'I2C::begin()'],['../d3/dfe/class_s_p_i.html#a8564694e43e048db84186566421f20ff',1,'SPI::begin(u8 sck, u8 miso, u8 mosi, u8 ss)']]],
['begin_5ftransaction_1',['begin_transaction',['../d3/dfe/class_s_p_i.html#ad9d7ac423041fc2db1450f2825c0e776',1,'SPI']]],
['begin_5ftransmission_2',['begin_transmission',['../d4/d47/class_i2_c.html#a3be4609df2d72760b1985b9279a19f18',1,'I2C']]],
['bufsize_3',['bufsize',['../d1/d31/class_file.html#a835489eb085092ad45009e523f17a7f8',1,'File']]]
['binaries_3',['Dumping Raw Binaries',['../index.html#autotoc_md6',1,'']]],
['bufsize_4',['bufsize',['../d1/d31/class_file.html#a835489eb085092ad45009e523f17a7f8',1,'File']]]
];
6 changes: 3 additions & 3 deletions docs/search/all_2.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
var searchData=
[
['calloc_0',['calloc',['../d2/d01/class_memory.html#af8365b5845b980ce2ccc5b77369bc4a6',1,'Memory']]],
['calls_1',['Calls',['../d6/db5/rt_syscalls.html#autotoc_md9',1,'Complete List of System Calls'],['../d6/db5/rt_syscalls.html',1,'Runtime System Calls']]],
['calls_1',['Calls',['../d6/db5/rt_syscalls.html#autotoc_md10',1,'Complete List of System Calls'],['../d6/db5/rt_syscalls.html',1,'Runtime System Calls']]],
['cc_20tool_2',['Using rishka-cc tool',['../index.html#autotoc_md4',1,'']]],
['close_3',['close',['../d1/d31/class_file.html#a83cbce54d6c3b8c2f417b51f6b3f488c',1,'File']]],
['compiling_4',['Manually Compiling',['../index.html#autotoc_md5',1,'']]],
['compiling_20examples_5',['Compiling Examples',['../index.html#autotoc_md3',1,'']]],
['complete_20list_20of_20system_20calls_6',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md9',1,'']]],
['contributing_7',['Contributing',['../index.html#autotoc_md7',1,'']]],
['complete_20list_20of_20system_20calls_6',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md10',1,'']]],
['contributing_7',['Contributing',['../index.html#autotoc_md8',1,'']]],
['count_8',['count',['../dc/dc6/class_args.html#a107b1f8ed9f9eaf269380e14f6668793',1,'Args']]]
];
3 changes: 2 additions & 1 deletion docs/search/all_3.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@ var searchData=
['digital_5fread_2',['digital_read',['../d1/dea/class_gpio.html#a6cbd8fc2e5dabfd76389f78155643a39',1,'Gpio']]],
['digital_5fwrite_3',['digital_write',['../d1/dea/class_gpio.html#a823fe9134bbf4a359247e8018d01ff23',1,'Gpio']]],
['disable_4',['disable',['../d8/dec/class_int.html#a68ab519107cb53ab894235d0dd417f2d',1,'Int']]],
['does_20it_20work_5',['How Does It Work?',['../index.html#autotoc_md0',1,'']]]
['does_20it_20work_5',['How Does It Work?',['../index.html#autotoc_md0',1,'']]],
['dumping_20raw_20binaries_6',['Dumping Raw Binaries',['../index.html#autotoc_md6',1,'']]]
];
2 changes: 1 addition & 1 deletion docs/search/all_4.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ var searchData=
['end_1',['end',['../d4/d47/class_i2_c.html#ae18c572091ad6b0f34fe884fb6e6d77d',1,'I2C::end()'],['../d3/dfe/class_s_p_i.html#a1a633d65ca6a68bd947f58160ab73ee0',1,'SPI::end()']]],
['end_5ftransaction_2',['end_transaction',['../d3/dfe/class_s_p_i.html#a7be8e2f5c0228dcd7cb1948bacc47bb9',1,'SPI']]],
['end_5ftransmission_3',['end_transmission',['../d4/d47/class_i2_c.html#ab97f800da8984950786e25bb3438b2c3',1,'I2C']]],
['example_4',['Example',['../index.html#autotoc_md6',1,'']]],
['example_4',['Example',['../index.html#autotoc_md7',1,'']]],
['examples_5',['Compiling Examples',['../index.html#autotoc_md3',1,'']]],
['exists_6',['exists',['../d3/da6/class_f_s.html#a50e58cb0b40d25d72664e7da9a3c2f02',1,'FS']]],
['exit_7',['exit',['../d0/d04/class_sys.html#a37cb3000f2181139f80d856a5ee4577e',1,'Sys']]]
Expand Down
4 changes: 2 additions & 2 deletions docs/search/all_9.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ var searchData=
[
['lastwrite_0',['lastwrite',['../d1/d31/class_file.html#a75953d4d4e3993b6084323ea494a627f',1,'File']]],
['librishka_2eh_1',['librishka.h',['../d6/de4/librishka_8h.html',1,'']]],
['license_2',['License',['../index.html#autotoc_md8',1,'']]],
['list_20of_20system_20calls_3',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md9',1,'']]]
['license_2',['License',['../index.html#autotoc_md9',1,'']]],
['list_20of_20system_20calls_3',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md10',1,'']]]
];
2 changes: 1 addition & 1 deletion docs/search/all_c.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
var searchData=
[
['of_20system_20calls_0',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md9',1,'']]],
['of_20system_20calls_0',['Complete List of System Calls',['../d6/db5/rt_syscalls.html#autotoc_md10',1,'']]],
['on_5freceive_1',['on_receive',['../d4/d47/class_i2_c.html#af9ff84397093ccd077543fe01961cd5d',1,'I2C']]],
['on_5frequest_2',['on_request',['../d4/d47/class_i2_c.html#a390ff0ee890ab39ab28cd4c543af8e9e',1,'I2C']]],
['open_3',['open',['../d1/d31/class_file.html#a02bd0d435a62edd38c7d740d78b0e2b2',1,'File']]]
Expand Down
31 changes: 16 additions & 15 deletions docs/search/all_e.js
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
var searchData=
[
['random_0',['random',['../d0/d04/class_sys.html#a3cc8c3d6432a431ea7655ddc272d2531',1,'Sys']]],
['read_1',['read',['../d1/d31/class_file.html#a71de4839522ca512a4ffa01ba208c862',1,'File::read()'],['../d4/d47/class_i2_c.html#a7df78c7394b3f304235ca4e0b74dee1e',1,'I2C::read()'],['../d8/d24/class_i_o.html#a45dfb01a4ebfa134227a51f7be20d214',1,'IO::read()']]],
['readch_2',['readch',['../d8/d24/class_i_o.html#abd2fd0dfb704cad591e256cb8074f5b2',1,'IO']]],
['readline_3',['readline',['../d8/d24/class_i_o.html#a9d4ca0746e40c8b8f37c1c06c3c5d411',1,'IO']]],
['realloc_4',['realloc',['../d2/d01/class_memory.html#aa2eab9d0b939b163aa535000e0b342ef',1,'Memory']]],
['remove_5',['remove',['../d3/da6/class_f_s.html#a56dffad802b44bcfee0fa5a571268ded',1,'FS']]],
['request_6',['request',['../d4/d47/class_i2_c.html#adc8abfb1f98c8c43ef5cd8f1f944fcb2',1,'I2C']]],
['rewind_7',['rewind',['../d1/d31/class_file.html#a80c6611e0e9e89f45307f7606e643cfa',1,'File']]],
['rishka_20cc_20tool_8',['Using rishka-cc tool',['../index.html#autotoc_md4',1,'']]],
['rishka_20sdk_9',['Rishka SDK',['../d5/d65/group___rishka___s_d_k.html',1,'Rishka SDK'],['../index.html',1,'Rishka SDK']]],
['rishka_20vm_10',['Rishka VM',['../index.html#autotoc_md2',1,'']]],
['rmdir_11',['rmdir',['../d3/da6/class_f_s.html#a24f4d7fe44e698f6467ce673be778de5',1,'FS']]],
['rune_12',['rune',['../d9/d49/types_8h.html#a405b10d09d9298aac12e28a2e92c4641',1,'types.h']]],
['runtime_13',['Runtime',['../d3/df6/class_runtime.html',1,'']]],
['runtime_20system_20calls_14',['Runtime System Calls',['../d6/db5/rt_syscalls.html',1,'']]],
['runtime_2eh_15',['runtime.h',['../d3/d51/runtime_8h.html',1,'']]]
['raw_20binaries_1',['Dumping Raw Binaries',['../index.html#autotoc_md6',1,'']]],
['read_2',['read',['../d1/d31/class_file.html#a71de4839522ca512a4ffa01ba208c862',1,'File::read()'],['../d4/d47/class_i2_c.html#a7df78c7394b3f304235ca4e0b74dee1e',1,'I2C::read()'],['../d8/d24/class_i_o.html#a45dfb01a4ebfa134227a51f7be20d214',1,'IO::read()']]],
['readch_3',['readch',['../d8/d24/class_i_o.html#abd2fd0dfb704cad591e256cb8074f5b2',1,'IO']]],
['readline_4',['readline',['../d8/d24/class_i_o.html#a9d4ca0746e40c8b8f37c1c06c3c5d411',1,'IO']]],
['realloc_5',['realloc',['../d2/d01/class_memory.html#aa2eab9d0b939b163aa535000e0b342ef',1,'Memory']]],
['remove_6',['remove',['../d3/da6/class_f_s.html#a56dffad802b44bcfee0fa5a571268ded',1,'FS']]],
['request_7',['request',['../d4/d47/class_i2_c.html#adc8abfb1f98c8c43ef5cd8f1f944fcb2',1,'I2C']]],
['rewind_8',['rewind',['../d1/d31/class_file.html#a80c6611e0e9e89f45307f7606e643cfa',1,'File']]],
['rishka_20cc_20tool_9',['Using rishka-cc tool',['../index.html#autotoc_md4',1,'']]],
['rishka_20sdk_10',['Rishka SDK',['../d5/d65/group___rishka___s_d_k.html',1,'Rishka SDK'],['../index.html',1,'Rishka SDK']]],
['rishka_20vm_11',['Rishka VM',['../index.html#autotoc_md2',1,'']]],
['rmdir_12',['rmdir',['../d3/da6/class_f_s.html#a24f4d7fe44e698f6467ce673be778de5',1,'FS']]],
['rune_13',['rune',['../d9/d49/types_8h.html#a405b10d09d9298aac12e28a2e92c4641',1,'types.h']]],
['runtime_14',['Runtime',['../d3/df6/class_runtime.html',1,'']]],
['runtime_20system_20calls_15',['Runtime System Calls',['../d6/db5/rt_syscalls.html',1,'']]],
['runtime_2eh_16',['runtime.h',['../d3/d51/runtime_8h.html',1,'']]]
];
2 changes: 1 addition & 1 deletion docs/search/all_f.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions misc/main_page.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,14 @@ qrepo run compile examples/sdk/hello.cpp hello

Now you have successfully compiled the example and can proceed with using the generated binary file.

## Dumping Raw Binaries

Dumping raw binary files can be helpful in debugging programs, traditionally. Hence, a simple script in Qrepo is available to dump instructions from a raw binary file of Rishka. You can utilize it by typing the following:

```bash
qrepo run dump <filename>
```

## Example

This example demonstrates the usage of Rishka virtual machine on an ESP32-WROVER microcontroller. It initializes serial communication and SD card, waits for user input via serial port, loads the specified file into the Rishka VM, executes it, and then waits for the next input.
Expand Down

0 comments on commit 2226fa1

Please sign in to comment.