Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/questiowo/sigma17
Rewrite of the Sigma16 web development environment
https://github.com/questiowo/sigma17
architecture assembly compiler emulator frontend frontend-app ide javascript js react react-router reactjs sigma16
Last synced: about 1 month ago
JSON representation
Rewrite of the Sigma16 web development environment
- Host: GitHub
- URL: https://github.com/questiowo/sigma17
- Owner: QuestioWo
- License: gpl-3.0
- Created: 2020-02-09T01:50:03.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-03-07T12:40:01.000Z (almost 2 years ago)
- Last Synced: 2024-05-02T04:31:19.406Z (8 months ago)
- Topics: architecture, assembly, compiler, emulator, frontend, frontend-app, ide, javascript, js, react, react-router, reactjs, sigma16
- Language: JavaScript
- Homepage: https://questiowo.github.io/Sigma17
- Size: 22.2 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# Sigma17 repository
[![Language grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/QuestioWo/Sigma17.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/QuestioWo/Sigma17/context:javascript)
Sigma17 is a re-write of the original emulator written by John O' Donnell. The overall aim of Sigma17 is to re-write the entire web based app but keep apps functionality. This is so that it is easier and more intuitive to code in Sigma16 with the web based app.
Sigma16 is a computer architecture designed for research and teaching in computer systems. This application aims to provide a complete environment for experimenting with the architecture.
## Using the emulator
Currently, the emulator can be used by visiting the [Sigma17 website](https://questiowo.github.io/Sigma17) which is hosted by github as a `github.io` project site and is kept up to date with all major changes.
Also, the emulator can be ran locally using `npm` and `React.js` from the source directory which will support more minor changes that will not effect the overall ability of the `github.io` site.
### Run in a browser
Visit [the website](https://questiowo.github.io/Sigma17).
### Run with `npm` locally in browser
The following software needs to be installed in order to build the local server :
* `node.js`
* `npm`After these are installed, to compile the program, execute the following commands in the repository directory:
```shell
npm install
npm start
```This will start the local `React.js` development server and should open a window in your default browser to [localhost:3000](https://localhost:3000), in which the website can be used as normal.
## Performance
### [Performance example program](https://raw.githubusercontent.com/jtod/Sigma16/v3.1.3/examples/Advanced/Testing/Performance.asm.txt) :
Comparison of time to find which is the times to compute a standard program between each emulator
#### Original
Measured by stopwatch
> 3:44.49
#### This emulator
Measured by `console.time()` to nearest two decimal places
> 58.17 ms### Memory performance test :
```
lea R1,heap[R0]
lea R2,1[R0]
lea R3,65535[R0]
sub R1,R1,R2
loop
add R1,R1,R2
store R1,0[R1]
cmp R1,R3
jumpne loop[R0]
trap R0,R0,R0
heap
```Comparison of time and tab's memory usage to find the times and memory impacts to compute a program in each emulator
#### Original
Measured by stopwatch and Google Chrome Task Manager Tool
> 25:10.23; 340MB#### This emulator
Measured by `console.time()` and Google Chrome Task Manager Tool
> 221.80 ms; 81MB## Author
This `React.js` version of the Sigma16 emulator has been and is being written by [Jim Carty](https://questiowo.github.io). Email: [email protected]
## License
This project is licensed under the terms of the GNU Public License. See `LICENSE.txt` for the full license.