-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
99 lines (95 loc) · 4.01 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
99
<!DOCTYPE html>
<html>
<head>
<title>x86 Visualizer</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="css/main.css" />
<link rel="stylesheet" href="css/highlightjs/monokai.min.css" />
</head>
<body>
<div class="visualizer">
<div>
<label for="operation-mode">Mode: </label>
<select name="operation-mode" id="operation-mode">
<option value="2">16-bit</option>
<option value="4">32-bit</option>
<option value="8" selected>64-bit</option>
</select>
<label for="syntax">Syntax: </label>
<select name="syntax" id="syntax">
<option value="1" selected>Intel</option>
<option value="2">AT&T</option>
</select>
</div>
<div class="input-container">
<input type="text" class="asm-input" placeholder="mov esi, [write_here]" spellcheck="false" />
<code class="x86asm asm-input asm-output"> </code>
</div>
<div class="input-error" hidden></div>
<div class="machine-bytes"></div>
<div class="attributes-container">
<div class="attribute">
<span>Address-size: <span id='address-size'></span></span>
|
<span>Operand-size: <span id='operand-size'></span></span>
|
<span>Segment: <span id='segment'></span></span>
</div>
</div>
<div class="machine-container">
<div class="machine-box">
<div class="machine mc1" id="prefix0"></div>
<span class="mc-name">Prefix</span>
<span id="prefix0-name"></span>
</div>
<div class="machine-box">
<div class="machine mc1" id="prefix1"></div>
<span class="mc-name">Prefix</span>
<span id="prefix1-name"></span>
</div>
<div class="machine-box">
<div class="machine mc1" id="prefix2"></div>
<span class="mc-name">Prefix</span>
<span id="prefix2-name"></span>
</div>
<div class="machine-box">
<div class="machine mc1" id="prefix3"></div>
<span class="mc-name">Prefix</span>
<span id="prefix3-name"></span>
</div>
<div class="machine-box">
<div class="machine mc2" id="opcode"></div>
<span class="mc-name">Opcode</span>
</div>
<div class="machine-box">
<div class="machine mc1" id="modrm"></div>
<span class="mc-name">ModR/M</span>
<span>MOD: <span id="modrm-mod"></span></span>
<span>REG: <span id="modrm-reg"></span></span>
<span>R/M: <span id="modrm-rm"></span></span>
</div>
<div class="machine-box">
<div class="machine mc1" id="sib"></div>
<span class="mc-name">SIB</span>
<span>Scale: <span id="sib-scale"></span></span>
<span>Index: <span id="sib-index"></span></span>
<span>Base: <span id="sib-base"></span></span>
</div>
<div class="machine-box">
<div class="machine mc4" id="displacement"></div>
<span class="mc-name">Displacement <span id="displacement-size">0</span>-bit</span>
<span id="displacement-decimal">()</span>
</div>
<div class="machine-box">
<div class="machine mc4" id="immediate"></div>
<span class="mc-name">Immediate <span id="immediate-size">0</span>-bit</span>
<span id="immediate-decimal">()</span>
</div>
</div>
</div>
<script src="js/keystone-x86.min.js"></script>
<script src="js/highlight.min.js"></script>
<script type="module" src="js/main.js"></script>
</body>
</html>