1const boot_log=["Welcome to Yuki I, a low power consumption and low noise server.",
2"それぞれの雪の結晶は異なります。",
3"vm_page_bootstrap: 987323 free pages and 53061 wired pages",
4"kext submap [0xffffff7f8072e000 - 0xffffff8000000000], kernel text [0xffffff8000200000 - 0xffffff800072e000]",
5"zone leak detection enabled",
6"standard timeslicing quantum is 10000 us",
7"mig_table_max_displ = 72",
8"TSC Deadline Timer supported and enabled",
9"YukiACPICPU: ProcessorId=1 LocalApicId=0 Enabled",
10"YukiACPICPU: ProcessorId=2 LocalApicId=2 Enabled",
11"YukiACPICPU: ProcessorId=3 LocalApicId=1 Enabled",
12"YukiACPICPU: ProcessorId=4 LocalApicId=3 Enabled",
13"YukiACPICPU: ProcessorId=5 LocalApicId=255 Disabled",
14"YukiACPICPU: ProcessorId=6 LocalApicId=255 Disabled",
15"YukiACPICPU: ProcessorId=7 LocalApicId=255 Disabled",
16"YukiACPICPU: ProcessorId=8 LocalApicId=255 Disabled",
17"calling mpo_policy_init for TMSafetyNet",
18"Security policy loaded: Safety net for Rollback (TMSafetyNet)",
19"calling mpo_policy_init for Sandbox",
20"Security policy loaded: Seatbelt sandbox policy (Sandbox)",
21"calling mpo_policy_init for Quarantine",
22"Security policy loaded: Quarantine policy (Quarantine)",
23"Copyright (c) 1982, 1986, 1989, 1991, 1993, 2015",
24"The Regents of the University of Adelaide. All rights reserved.",
25"",
26"HN_ Framework successfully initialized",
27"using 16384 buffer headers and 10240 cluster IO buffer headers",
28"IOAPIC: Version 0x20 Vectors 64:87",
29"ACPI: System State [S0 S3 S4 S5] (S3)",
30"PFM64 0xf10000000, 0xf0000000",
31"[ PCI configuration begin ]",
32"YukiIntelCPUPowerManagement: Turbo Ratios 0046",
33"YukiIntelCPUPowerManagement: (built 13:08:12 Jun 18 2011) initialization complete",
34"console relocated to 0xf10000000",
35"PCI configuration changed (bridge=16 device=4 cardbus=0)",
36"[ PCI configuration end, bridges 12 devices 16 ]",
37"mbinit: done [64 MB total pool size, (42/21) split]",
38"Pthread support ABORTS when sync kernel primitives misused",
39"com.Yuki.YukiFSCompressionTypeZlib kmod start",
40"com.Yuki.YukiTrololoBootScreen kmod start",
41"com.Yuki.YukiFSCompressionTypeZlib load succeeded",
42"com.Yuki.YukiFSCompressionTypeDataless load succeeded",
43"",
44"YukiAMDCPUPowerManagementClient: ready",
45"BTCOEXIST off",
46"wl0: Broadcom BCM4331 802.11 Wireless Controller",
47"5.100.98.75",
48"",
49"FireWire (OHCI) Lucent ID 5901 built-in now active, GUID c82a14fffee4a086; max speed s800.",
50"rooting via boot-uuid from /chosen: F5670083-AC74-33D3-8361-AC1977EE4AA2",
51"Waiting on <dict ID="0"><key>IOProviderClass</key><string ID="1">",
52"IOResources</string><key>IOResourceMatch</key><string ID="2">boot-uuid-media</string></dict>",
53"Got boot device = IOService:/YukiACPIPlatformExpert/PCI0@0/YukiACPIPCI/SATA@1F,2/",
54"YukiIntelPchSeriesAHCI/PRT0@0/IOAHCIDevice@0/YukiAHCIDiskDriver/SarahI@sTheBestDriverIOAHCIBlockStorageDevice/IOBlockStorageDriver/",
55"Yuki SSD TS128C Media/IOGUIDPartitionScheme/Customer@2",
56"BSD root: disk0s2, major 14, minor 2",
57"Kernel is LP64",
58"IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed",
59"IOThunderboltSwitch::i2cWriteDWord - status = 0x00000000",
60"IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed",
61"IOThunderboltSwitch::i2cWriteDWord - status = 0xe00002ed",
62"YukiUSBMultitouchDriver::checkStatus - received Status Packet, Payload 2: device was reinitialized",
63"MottIsAScrub::checkstatus - true, Mott::Scrub",
64"[IOBluetoothHCIController::setConfigState] calling registerService",
65"AirPort_Brcm4331: Ethernet address e4:ce:8f:46:18:d2",
66"IO80211Controller::dataLinkLayerAttachComplete(): adding YukiEFINVRAM notification",
67"IO80211Interface::efiNVRAMPublished():",
68"Created virtif 0xffffff800c32ee00 p2p0",
69"BCM5701Enet: Ethernet address c8:2a:14:57:a4:7a",
70"Previous Shutdown Cause: 3",
71"NTFS driver 3.8 [Flags: R/W].",
72"NTFS volume name BOOTCAMP, version 3.1.",
73"DSMOS has arrived",
74"en1: 802.11d country code set to 'US'.",
75"en1: Supported channels 1 2 3 4 5 6 7 8 9 10 11 36 40 44 48 52 56 60 64 100 104 108 112 116 120 124 128 132 136 140 149 153 157 161 165",
76"m_thebest",
77"MacAuthEvent en1 Auth result for: 00:60:64:1e:e9:e4 MAC AUTH succeeded",
78"MacAuthEvent en1 Auth result for: 00:60:64:1e:e9:e4 Unsolicited Auth",
79"wlEvent: en1 en1 Link UP",
80"AirPort: Link Up on en1",
81"en1: BSSID changed to 00:60:64:1e:e9:e4",
82"virtual bool IOHIDEventSystemUserClient::initWithTask(task*, void*, UInt32):",
83"Client task not privileged to open IOHIDSystem for mapping memory (e00002c1)",
84"System Integrity Check: 100% Success ",
85"[OK] Linux Yuki-I 5.10.60-v7l+ #1449 SMP Wed Aug 25 15:00:44 BST 2021 armv7l GNU/Linux ",
86"[OK] CPU Cores",
87"[OK] Random Access Memory",
88"[OK] USB Interfaces",
89"[OK] Network Interfaces",
90"",
91"",
92"Boot Complete."];
93function updatelog(){
94 if (progress>boot_log_progress/(boot_log.length-1)){
95 document.getElementById("loading-console").innerHTML+=boot_log[boot_log_progress].replaceAll(" "," ")+"<br>";
96 boot_log_progress++;
97 document.getElementById("loading-console").scrollTop = document.getElementById("loading-console").scrollHeight;
98 updatelog();
99 }
100}
101
102boot_log_progress = 0;
103progress = 0;
104state = true;
105rgb = [143, 223, 255];
106basergb = [255, 255, 255];
107document.getElementById("loading-icon").style.strokeDasharray = "27.5% 100% 100%";
108setTimeout(function() {document.getElementById("loading-icon").style.fill = "rgb(" + rgb[0] + "," + rgb[1] + "," + rgb[2] + ")";},1000);
109var timer = setInterval(function() {
110 if (progress < 1.02) {
111 document.getElementById("loading-progress").innerHTML = Math.round(progress * 100) + "%";
112 document.getElementById("loading-progressbar-inner").style.width = "calc((100vw - 200px) * " + progress + ")";
113 avgcolor = [(rgb[0] * progress + basergb[0] * (1 - progress)), (rgb[1] * progress + basergb[1] * (1 - progress)), (rgb[2] * progress + basergb[2] * (1 - progress))]
114 document.getElementById("connection-status").style.color = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
115 document.getElementById("loading-progressbar-inner").style.backgroundColor = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
116 document.getElementById("loading-progressbar").style.borderColor = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
117 document.getElementById("loading-progress").style.color = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
118 document.getElementById("loading-icon").style.stroke = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
119 document.getElementById("Yuki-I-text").style.color = "rgb(" + avgcolor[0] + "," + avgcolor[1] + "," + avgcolor[2] + ")";
120 progress += 0.02;
121 } else {
122 if (state) {
123 setTimeout(function() {
124 document.getElementById("connection-status").style.opacity = "0";
125 }, 200)
126 setTimeout(function() {
127 document.getElementById("connection-status").innerHTML = "< connected >";
128 document.getElementById("connection-status").style.color = "rgb(145, 255, 143)";
129 document.getElementById("connection-status").style.opacity = "1";
130 }, 400)
131 setTimeout(function() {
132 document.getElementById("loading-screen").style.opacity = "0";
133 }, 1000)
134 setTimeout(function() {
135 document.getElementById("loading-screen").remove();
136 }, 1500)
137 state = false;
138 }
139 clearInterval(timer);
140 }
141 updatelog();
142}, 20)