1
+ <!DOCTYPE html>
2
+ < html lang ="en ">
3
+ < head >
4
+ < meta charset ="utf-8 " />
5
+ < meta name ="viewport " content ="width=device-width, initial-scale=1.0 " />
6
+ < title > BeepBox Song Player</ title >
7
+ < meta name ="description " content ="BeepBox is an online tool for sketching and sharing instrumental melodies. " />
8
+ < meta name ="keywords " content ="chiptune, instrumental, music, melody, composition, tool, square wave, NES, NSF, BeepBox " />
9
+ < meta name ="theme-color " content ="#444 " />
10
+ < meta name ="format-detection " content ="telephone=no " />
11
+ < link rel ="apple-touch-icon " sizes ="180x180 " href ="/apple-touch-icon.png " />
12
+ < link rel ="icon " type ="image/png " sizes ="32x32 " href ="/icon_32.png " />
13
+ < link href ="https://fonts.googleapis.com/css?family=Roboto " rel ="stylesheet " rel ="stylesheet " media ="none " onload ="if (this.media != 'all') this.media='all'; " /> <!-- this is a trick to load CSS asynchronously. -->
14
+ < meta name ="robots " content ="noindex, nofollow " />
15
+ < style >
16
+ html {
17
+ width : 100vw ;
18
+ font-family : 'Roboto' , sans-serif;
19
+ color : var (--primary-text , white);
20
+ align-items : center;
21
+ }
22
+ html , body {
23
+ height : 100% ;
24
+ overflow : hidden;
25
+ display : flex;
26
+ margin : 0 ;
27
+ padding : 0 ;
28
+ background : var (--page-margin , black);
29
+ }
30
+ body {
31
+ width : 100vw ;
32
+ flex-direction : column;
33
+ align-items : stretch;
34
+ }
35
+ </ style >
36
+ </ head >
37
+ < body >
38
+ < script type ="text/javascript ">
39
+ function browserHasRequiredFeatures ( ) {
40
+ "use strict" ;
41
+ if ( window . AudioContext == undefined && window . webkitAudioContext == undefined ) {
42
+ return false ;
43
+ }
44
+
45
+ try {
46
+ eval ( "class T {}" ) ;
47
+ eval ( "const a = () => 0" ) ;
48
+ eval ( "for (const a of []);" ) ;
49
+ } catch ( error ) {
50
+ return false ;
51
+ }
52
+
53
+ return true ;
54
+ }
55
+
56
+ if ( browserHasRequiredFeatures ( ) ) {
57
+ // Go ahead and load js beepbox editor interface:
58
+ var fileref = document . createElement ( "script" ) ;
59
+ fileref . setAttribute ( "type" , "text/javascript" ) ;
60
+ fileref . setAttribute ( "src" , "beepbox_player_obfuscated.js" ) ;
61
+ document . head . appendChild ( fileref ) ;
62
+ } else {
63
+ document . body . innerHTML = "Sorry, BeepBox doesn't support your browser. Try a recent version of Chrome, Firefox, Edge, Safari, or Opera." ;
64
+ }
65
+ </ script >
66
+ </ body >
67
+ </ html >
0 commit comments