nw-rs / rustworks Goto Github PK
View Code? Open in Web Editor NEWOperating system written in Rust for NumWorks calculator (model n0110)
License: MIT License
Operating system written in Rust for NumWorks calculator (model n0110)
License: MIT License
to reflect the status of this project.
Everything should be unit tested somehow, I am not entirely sure how to do this yet for the embedded part though.
Need to finish QSPI flash and then create a boot loader so RustWorks can be flashed to external flash.
Potentially useful links:
Todo:
probe-rs
and cargo-embed
use flash algorithmdfu-util
Hello, I'm trying to use rustworks on my numworks (n110) from my Raspberry Pi 4 (with Raspberry Pi OS, I don't know if it matters) but when I run cargo make dfu
I get the following error message:
[cargo-make] INFO - Execute Command: "dfu-util" "-d" "0483:df11" "-a" "0" "-s" "0x08000000:leave" "-D" "target/thumbv7em-none-eabihf/debug/rustworks.bin"
dfu-util 0.9
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
dfu-util: File size is too big: Success
[cargo-make] ERROR - Error while executing command, exit code: 74
[cargo-make] WARN - Build Failed.
Before running rustworks, I installed dependencies:
rustup target add thumbv7em-none-eabihf
sudo apt-get install gcc-arm-none-eabi binutils-arm-none-eabi
sudo apt-get install dfu-util
rustup component add llvm-tools-preview
cargo install cargo-binutils
cargo install cargo-make
Then I cloned rustworks repository and ran cargo make dfu
.
The bin file (target/thumbv7em-none-eabihf/debug/rustworks.bin
) has a size of 2, 28 GB which seems effectively too big to flash on the numworks.
did I do something wrong?
All code (especially code that deals with complex thing specific to embedded development like modifying registers) should be documented with comments explaining what's going on to make it easier for other people to understand and contribute to the project.
Ideally the OS should not depend on an allocator for any core features (e.g. displaying text)
Android emulator?
Windows emulator?
Linux emulator?
iOS emulator?
This would be awesome to have because it would make it so that we could make rustworks work in a fully open source platform, like, for example, creating our own calculator hardware (fully open source unlike Numworks).
using branch split (or master) I get ERROR - Task dfu not found.
[cargo-make] INFO - cargo make 0.35.15
[cargo-make] INFO - Build File: Makefile.toml
[cargo-make] INFO - Task: dfu
[cargo-make] INFO - Profile: development
[cargo-make] INFO - Running Task: legacy-migration
[cargo-make] INFO - Running Task: workspace
/Data/Repositories/rustworks
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: dfu
[cargo-make][1] INFO - Profile: development
[cargo-make][1] ERROR - Task dfu not found
[cargo-make][1] WARN - Build Failed.
[cargo-make] ERROR - Error while running duckscript: Source: Unknown Line: 5 - Error while executing command, exit code: 1
[cargo-make] WARN - Build Failed.
Any idea why? Thanks!
Command: crate build
Full warning:
warning: use of deprecated associated function `cortex_m::peripheral::MPU::ptr`: Use the associated constant `PTR` instead
--> board-support/src/lib.rs:140:26
|
140 | let mpu = &*MPU::ptr();
| ^^^
|
= note: `#[warn(deprecated)]` on by default
warning: `nw-board-support` (lib) generated 1 warning
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.