yasp / Yasp
Programming Languages
Projects that are alternatives of or similar to Yasp
yasp is a fully functional web-based assembler development environment, including a real assembler, emulator and debugger. The assembler dialect is a custom which is held very simple so as to keep the learning curve as shallow as possible. It also features some hardware-elements (LED, Potentiometer, Button, etc.). The main purpose of this project is to create an environment in which students can learn the assembly language so that they understand computers better. Furthermore it allows them to experiment without the fear of breaking something.
The original project team of yasp consists of Robert Fischer and Michael "luto" Lutonsky. For more information take a look at the about-section in the IDEs menu.
Online-Demo
A hosted version of yasp can be found on http://demo.yasp.me/.
License
yasp is licensed under the GPLv3-License, for details see LICENSE.txt
.
Development
Setup
To develop on yasp you'll need nodejs.
$ npm install -g grunt-cli bower # install grunt and bower (if needed)
$ git clone https://github.com/yasp/yasp.git
$ cd yasp
$ npm install # download grunt-dependencies
$ bower install # download web-dependecies
$ grunt commandsjs # build help and instructions
$ grunt http # start development http-server
Setup on Windows
- get nodejs http://nodejs.org/
- get msysgit http://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git
- open CMD and and follow the linux-setup
Grunt-Tasks
-
deps
download all client dependencies -
commands
build help and commands.js, see instructions.md -
watchcommands
watch-task forcommands
-
http
start a development http-server -
doc
builds jsdoc to/doc/jsdoc/
-
watchdoc
watch-task fordoc
Documentation
The documentation lives in the /doc/-directory. Additional documentation in the German language can be found on the project homepage.
If you think that something is lacking documentation please create an issue.
Hacking
-
/src/app/
, IDE -
/src/app/instructions
, all instruction files, see instructions.md -
/src/app/js/editor/breadboard/
, breadboards, see breadboards.md -
/src/app/langs/
, languages for l10n, see l10n.md -
/src/app/js/assembler
, home of the assembler -
/src/app/js/emulator
, home of the emulator, see emulator.md -
/src/app/js/hardware
, home of the hardware, see hardware.md -
/src/test/index.html
, unit-tests -
/src/test/hardware.html
, hardware-demo -
/src/test/repl.html
, interactive assembler/emulator-interface