Neale Pickett
·
2023-01-16
1992.html
1<!DOCTYPE html>
2<html>
3 <head>
4 <title>Vail</title>
5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width, initial-scale=1">
7
8 <!-- Vail stuff -->
9 <link rel="manifest" href="manifest.json">
10 <link rel="icon" href="vail.png" sizes="256x256" type="image/png">
11 <link rel="icon" href="vail.svg" sizes="any" type="image/svg+xml">
12 <script type="module" src="vail.mjs"></script>
13 <link rel="stylesheet" href="vail.css">
14 <style>
15 .is-hidden {
16 display: none;
17 }
18 body {
19 color: white;
20 background: #000 url("space.png")
21 }
22 h1, h2 {
23 color: yellow;
24 }
25 </style>
26 </head>
27 <body>
28 <h1>Vail</h1>
29 <h2>A Morse Code Chat Server</h2>
30
31 <p>
32 Hi! You've reached Vail, a morse code chat server on the internet!
33 To get started, just click on the "key" button, and you'll be transmitting to whoever out there is listening!
34 </p>
35
36 <table>
37 <tr>
38 <td>
39 <button class="button key is-primary" data-key="0" title="right click for Key">
40 Key
41 </button>
42 (shortcuts:
43 <kbd title="keyboard button">.</kbd>
44 <kbd title="keyboard button">x</kbd>
45 )
46 </td>
47 <td>
48 <button class="button key is-primary" data-key="1" title="right click for Key">
49 Key
50 </button>
51 (shortcuts:
52 <kbd title="keyboard button">/</kbd>
53 <kbd title="keyboard button">z</kbd>
54 )
55 </td>
56 </tr>
57 </table>
58
59 <p>
60 Your current repeater is
61 <input class="input" type="text" id="repeater" list="repeater-list">
62 <datalist id="repeater-list">
63 <option>General</option>
64 <option value="1">Channel 1</option>
65 <option value="2">Channel 2</option>
66 <option value="3">Channel 3</option>
67 <option value="Null">No transmit</option>
68 <option>Echo</option>
69 <option>Echo 5s</option>
70 <option>Echo 10s</option>
71 <option>Fortunes</option>
72 <option>Fortunes: Pauses ×2</option>
73 <option>Fortunes: Pauses ×4</option>
74 <option>Fortunes: Pauses ×8</option>
75 </datalist>
76 </p>
77
78 <p>
79 <button id="recv">rx</button>
80 <output class="has-text-info" id="note"></output>
81 <br>
82 <i class="muted">
83 If you can read this, it means the browser needs you to click somewhere on this page
84 before it will start beeping!
85 </i>
86 </p>
87
88
89 <p>
90 Keyer mode:
91 <select id="keyer-mode">
92 <option value="cootie">Straight Key / Cootie</option>
93 <option value="bug">Bug</option>
94 <option value="elbug">ElBug</option>
95 <option value="singledot">Single Dot</option>
96 <option value="ultimatic">Ultimatic</option>
97 <option value="iambic">Iambic (Plain)</option>
98 <option value="iambica">Iambic A</option>
99 <option value="iambicb">Iambic B</option>
100 <option value="keyahead">Keyahead</option>
101 </select>
102
103 <br>
104
105 Keyer speed:
106 <input
107 id="keyer-rate"
108 type="number"
109 min="5"
110 max="40"
111 step="1"
112 value="12">
113 WPM
114 </p>
115
116 <h2>Knobs</h2>
117
118 <p>
119 <button id="ck" class="button is-primary">
120 CK
121 </button>
122 Send <code>CK</code> (check) to the repeater, and play when it comes back.
123
124 <br>
125
126
127 <button id="reset" class="button">
128 Reset
129 </button>
130 Reset all Vail preferences to default.
131
132 <br>
133
134 Receive delay:
135 <input
136 id="rx-delay"
137 type="number"
138 min="0"
139 max="10"
140 value="4"
141 step="0.1">
142 seconds
143
144 <br>
145
146 <label class="checkbox">
147 <input type="checkbox" id="telegraph-buzzer">
148 Telegraph sounds
149 </label>
150
151 </p>
152
153 <div class="bottom">
154 <div id="errors"></div>
155 </div>
156 </body>
157</html>