Rust-for-Arduboy/docs/doc/arduboy_rust/index.html

21 lines
No EOL
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="This is the arduboy_rust crate To get started import the prelude to your project."><title>arduboy_rust - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-47e7ab555ef2818a.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="arduboy_rust" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0-nightly (d9c8274fb 2023-09-12)" data-channel="nightly" data-search-js="search-5d3eaacf19ebf04f.js" data-settings-js="settings-74424d7eec62a23e.js" data-settings-css="settings-8c76f75bfb6bd192.css" data-theme-light-css="light-f194925aa375ae96.css" data-theme-dark-css="dark-1dd4d1ce031e15de.css" data-theme-ayu-css="ayu-49e58d069f567085.css" ><script src="../static.files/storage-db41da1a38ea3cb8.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-8d035c8cea6edbc4.js"></script><noscript><link rel="stylesheet" media="(prefers-color-scheme:light)" href="../static.files/light-f194925aa375ae96.css"><link rel="stylesheet" media="(prefers-color-scheme:dark)" href="../static.files/dark-1dd4d1ce031e15de.css"><link rel="stylesheet" href="../static.files/noscript-cffde32267a19fd6.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod crate"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="logo-container" href="../arduboy_rust/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2></h2></nav><nav class="sidebar"><a class="logo-container" href="../arduboy_rust/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate arduboy_rust</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 1.0.0</li><li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#modules">Modules</a></li><li><a href="#macros">Macros</a></li><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#constants">Constants</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">arduboy_rust</a><button id="copy-path" title="Copy item path to clipboard"><img src="../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../src/arduboy_rust/lib.rs.html#1-40">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This is the arduboy_rust crate
To get started import the <a href="prelude/index.html" title="mod arduboy_rust::prelude">prelude</a> to your project.</p>
<p>Import the module:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>arduboy_rust::prelude::<span class="kw-2">*</span>;</code></pre></div>
<h4 id="disable-c-libraries"><a href="#disable-c-libraries">Disable C++ libraries</a></h4>
<p>Inside the root directory is a file named <code>import_config.h</code></p>
<p>You can disable C++ libraries in the <code>import_config.h</code> file.
Just comment the unused library definition out.</p>
<p>Be careful with disabling libraries because:</p>
<ul>
<li>The only error you get is something like this if you try to use a function that relies on the library you disabled.</li>
</ul>
<div class="example-wrap"><pre class="language-text"><code>game.90c69b91e57f285-cgu.0:(.text.loop+0x290): undefined reference to `sound_tone&#39;
</code></pre></div>
<ul>
<li>the benefit of disabling will be important in the feature when I add support for the ArduboyG library etc.</li>
</ul>
<p>To get an idea, the ArduboyTones Library needs additional 2-3% of the flash memory.</p>
<p><a href="https://github.com/zenndev1337/rust-for-arduboy" target="_blank">Here is the link to the GitHub Repo</a></p>
</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="arduboy2/index.html" title="mod arduboy_rust::arduboy2">arduboy2</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the Arduboy2 C++ library.</div></li><li><div class="item-name"><a class="mod" href="arduboy_tone/index.html" title="mod arduboy_rust::arduboy_tone">arduboy_tone</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the ArduboyTones C++ library.</div></li><li><div class="item-name"><a class="mod" href="arduino/index.html" title="mod arduboy_rust::arduino">arduino</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the Arduino C++ library.</div></li><li><div class="item-name"><a class="mod" href="ardvoice/index.html" title="mod arduboy_rust::ardvoice">ardvoice</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the ArdVoice C++ library.</div></li><li><div class="item-name"><a class="mod" href="c/index.html" title="mod arduboy_rust::c">c</a></div><div class="desc docblock-short">Clib functions you can use on the Arduboy</div></li><li><div class="item-name"><a class="mod" href="hardware/index.html" title="mod arduboy_rust::hardware">hardware</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the Arduboy hardware.</div></li><li><div class="item-name"><a class="mod" href="heapless/index.html" title="mod arduboy_rust::heapless">heapless</a></div><div class="desc docblock-short"><code>static</code> friendly data structures that dont require dynamic memory allocation</div></li><li><div class="item-name"><a class="mod" href="prelude/index.html" title="mod arduboy_rust::prelude">prelude</a></div><div class="desc docblock-short">This is the important one to use this library effective in your project</div></li><li><div class="item-name"><a class="mod" href="serial_print/index.html" title="mod arduboy_rust::serial_print">serial_print</a></div><div class="desc docblock-short">This is the Module to interact in a save way with the Arduino Serial C++ library.</div></li><li><div class="item-name"><a class="mod" href="sprites/index.html" title="mod arduboy_rust::sprites">sprites</a></div><div class="desc docblock-short">This is the module to interact in a save way with the Sprites C++ library.</div></li></ul><h2 id="macros" class="small-section-header"><a href="#macros">Macros</a></h2><ul class="item-table"><li><div class="item-name"><a class="macro" href="macro.f.html" title="macro arduboy_rust::f">f</a></div><div class="desc docblock-short">This is the way to go if you want print some random text</div></li><li><div class="item-name"><a class="macro" href="macro.get_ardvoice_tone_addr.html" title="macro arduboy_rust::get_ardvoice_tone_addr">get_ardvoice_tone_addr</a></div><div class="desc docblock-short">Create a <code>const</code> raw pointer to a ardvoice tone as u8, without creating an intermediate reference.</div></li><li><div class="item-name"><a class="macro" href="macro.get_sprite_addr.html" title="macro arduboy_rust::get_sprite_addr">get_sprite_addr</a></div><div class="desc docblock-short">Create a <code>const</code> raw pointer to a sprite as u8, without creating an intermediate reference.</div></li><li><div class="item-name"><a class="macro" href="macro.get_string_addr.html" title="macro arduboy_rust::get_string_addr">get_string_addr</a></div><div class="desc docblock-short">Create a <code>const</code> raw pointer to a [u8;_] that saves text, without creating an intermediate reference.</div></li><li><div class="item-name"><a class="macro" href="macro.get_tones_addr.html" title="macro arduboy_rust::get_tones_addr">get_tones_addr</a></div><div class="desc docblock-short">Create a <code>const</code> raw pointer to a tone sequenze as u16, without creating an intermediate reference.</div></li><li><div class="item-name"><a class="macro" href="macro.progmem.html" title="macro arduboy_rust::progmem">progmem</a></div><div class="desc docblock-short">Create a space for Progmem variable</div></li></ul><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.ArdVoice.html" title="struct arduboy_rust::ArdVoice">ArdVoice</a></div><div class="desc docblock-short">This is the struct to interact in a save way with the ArdVoice C++ library.</div></li><li><div class="item-name"><a class="struct" href="struct.Arduboy2.html" title="struct arduboy_rust::Arduboy2">Arduboy2</a></div><div class="desc docblock-short">This is the struct to interact in a save way with the Arduboy2 C++ library.</div></li><li><div class="item-name"><a class="struct" href="struct.ArduboyTones.html" title="struct arduboy_rust::ArduboyTones">ArduboyTones</a></div><div class="desc docblock-short">This is the struct to interact in a save way with the ArduboyTones C++ library.</div></li><li><div class="item-name"><a class="struct" href="struct.EEPROM.html" title="struct arduboy_rust::EEPROM">EEPROM</a></div><div class="desc docblock-short">This is the struct to store and read structs objects to/from eeprom memory.</div></li><li><div class="item-name"><a class="struct" href="struct.EEPROMBYTE.html" title="struct arduboy_rust::EEPROMBYTE">EEPROMBYTE</a></div><div class="desc docblock-short">Use this struct to store and read single bytes to/from eeprom memory.</div></li></ul><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Color.html" title="enum arduboy_rust::Color">Color</a></div><div class="desc docblock-short">This item is to chose between Black or White</div></li></ul><h2 id="constants" class="small-section-header"><a href="#constants">Constants</a></h2><ul class="item-table"><li><div class="item-name"><a class="constant" href="constant.FONT_SIZE.html" title="constant arduboy_rust::FONT_SIZE">FONT_SIZE</a></div><div class="desc docblock-short">The standard font size of the arduboy</div></li><li><div class="item-name"><a class="constant" href="constant.HEIGHT.html" title="constant arduboy_rust::HEIGHT">HEIGHT</a></div><div class="desc docblock-short">The standard height of the arduboy</div></li><li><div class="item-name"><a class="constant" href="constant.WIDTH.html" title="constant arduboy_rust::WIDTH">WIDTH</a></div><div class="desc docblock-short">The standard width of the arduboy</div></li></ul></section></div></main></body></html>