-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
98 lines (95 loc) · 4.47 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<!DOCTYPE html>
<html>
<head>
<title>yasp</title>
<link href="./style/main.css" rel="stylesheet" type="text/css">
<meta charset=utf-8 />
</head>
<body>
<center>
<img src="./img/logo.png" id="logo" alt="logo">
<ul id="menu">
<li><a href="http://demo.yasp.me/">Demo</a></li>
<li><a href="http://github.com/yasp/yasp">GitHub</a></li>
<li><a href="https://github.com/yasp/yasp/tree/master/doc">Documentation</a></li>
<li><a href="/pflichtenheft/">Pflichtenheft</a></li>
</ul>
<hr>
<div id="description">
<h2>Project</h2>
<p>
yasp is a fully functional web-based assembler development environment, including a real assembler, emulator and debugger.
The assembler dialect is custom and very simple so as to keep the learning curve as shallow as possible.
It also features some hardware-elements (LED, Potentiometer, Button, etc.). The goal 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.
</p>
<p>
yasp started out as a school project and was then later, in early 2014, released into public as GPL.
</p>
<a href="http://demo.yasp.me/"><img src="./debugger.gif" class="debugger"/></a>
<h2>Team</h2>
<p>
The original project team of yasp consists of <a href="http://programming-with-design.at/">Robert Fischer</a> and <a href="http://luto.at">Michael "luto" Lutonsky</a>. For more information take a look at the about-section in the IDEs menu.
</p>
<p>
You can contact us at team - et - yasp.me!
</p>
<h2>Features</h2>
<p>
yasp features 43 instructions (73 with all overloads), which can access its 32 byte and word registers and the connected hardware. The main features of the project are:
</p>
<ul id="features">
<li>
Editor
<ul>
<li>syntax highlighting</li>
<li>live error-checking</li>
<li>interactive quickhelp</li>
</ul>
</li>
<li>Debugger with many features, such as breakpoints and step back</li>
<li>Emulator
<ul>
<li>16-byte stack</li>
<li>simple subroutines</li>
<li>hardware-interrupts</li>
<li>32 byte registers, 32 word registers</li>
<li>PWM-Simulation (soft blinking LEDs)</li>
<li>25 kHz in benchmarks on an i7-3630QM</li>
<li>carry and zero flag</li>
</ul>
</li>
<li>
Hardwaresimulation
<ul>
<li>LED</li>
<li>Pushbutton</li>
<li>potentiometer</li>
</ul>
</li>
<li>
43 instructions (73 including overloads)
<ul>
<li>basics like MOV, ADD, XOR, RR, MUL, CLR, OR, ...</li>
<li>program flow: JMP, JC, JNC, JZ, CALL, RET, ...</li>
<li>make use of the stack with PUSH or POP</li>
<li>interupt commands: ENABLE, DISABLE, RETI</li>
<li>hardware interaction: HIGH, LOW, TOGGLE, ADC, ...</li>
<li>talk to the debugger using DEBUG and ECHO</li>
</ul>
</li>
<li>Filemanager</li>
</ul>
</div>
<hr>
<div id="logos">
<a href="https://uberspace.de/" target="_blank"><img src="./img/uberspace.png" alt="uberspace"></a>
<a href="http://www.gnu.org/licenses/gpl.html" target="_blank"><img src="./img/gplv3.png" alt="GPLv3"></a>
<a href="http://www.spengergasse.at/" target="_blank"><img id="spglogo" src="./img/spg.png" alt="HTL Spengergasse"></a>
</div>
</center>
</body>
</html>