v86 0.5.302 → 0.5.304

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11209,48 +11209,53 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11209
11209
  }, function() {
11210
11210
  return 0;
11211
11211
  }, function() {
11212
- var $i$jscomp$98_multiboot_data$$ = 31860, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = 0;
11213
- $cmdline$jscomp$1$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 4, $cpu$jscomp$26$$.write32(31760, $i$jscomp$98_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$26$$.write_blob($cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, $i$jscomp$98_multiboot_data$$), $i$jscomp$98_multiboot_data$$ += $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$.length);
11212
+ var $i$jscomp$98_multiboot_data$$ = 31860;
11213
+ let $info$jscomp$1$$ = 0;
11214
+ $cmdline$jscomp$1$$ && ($info$jscomp$1$$ |= 4, $cpu$jscomp$26$$.write32(31760, $i$jscomp$98_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$26$$.write_blob($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$, $i$jscomp$98_multiboot_data$$), $i$jscomp$98_multiboot_data$$ += $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$.length);
11214
11215
  if ($flags$jscomp$16$$ & 2) {
11215
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 64;
11216
- $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = 0;
11216
+ $info$jscomp$1$$ |= 64;
11217
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = 0;
11217
11218
  $cpu$jscomp$26$$.write32(31788, 0);
11218
11219
  $cpu$jscomp$26$$.write32(31792, $i$jscomp$98_multiboot_data$$);
11219
- var $start$jscomp$42_view$jscomp$inline_408$$ = 0;
11220
- let $was_memory$$ = !1;
11220
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = 0;
11221
+ var $view$jscomp$inline_408_was_memory$$ = !1;
11221
11222
  for (let $addr$jscomp$48$$ = 0; 4294967296 > $addr$jscomp$48$$; $addr$jscomp$48$$ += 131072) {
11222
- $was_memory$$ && void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] ? ($cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, 20), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $start$jscomp$42_view$jscomp$inline_408$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, $addr$jscomp$48$$ - $start$jscomp$42_view$jscomp$inline_408$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ +
11223
- 16, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 20, 1), $i$jscomp$98_multiboot_data$$ += 24, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ += 24, $was_memory$$ = !1) : $was_memory$$ || void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] || ($start$jscomp$42_view$jscomp$inline_408$$ = $addr$jscomp$48$$, $was_memory$$ = !0);
11223
+ $view$jscomp$inline_408_was_memory$$ && void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] ? ($cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, 20), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, $addr$jscomp$48$$ - $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$),
11224
+ $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 16, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 20, 1), $i$jscomp$98_multiboot_data$$ += 24, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ += 24, $view$jscomp$inline_408_was_memory$$ = !1) : $view$jscomp$inline_408_was_memory$$ || void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] || ($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ =
11225
+ $addr$jscomp$48$$, $view$jscomp$inline_408_was_memory$$ = !0);
11224
11226
  }
11225
- $dbg_assert$$module$src$log$$(!$was_memory$$, "top of 4GB shouldn't have memory");
11226
- $cpu$jscomp$26$$.write32(31788, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$);
11227
+ $dbg_assert$$module$src$log$$(!$view$jscomp$inline_408_was_memory$$, "top of 4GB shouldn't have memory");
11228
+ $cpu$jscomp$26$$.write32(31788, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11227
11229
  }
11228
- $cpu$jscomp$26$$.write32(31744, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$);
11229
- var $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = 0;
11230
+ var $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = 0, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = 0;
11230
11231
  if ($flags$jscomp$16$$ & 65536) {
11231
11232
  $dbg_log$$module$src$log$$("Multiboot specifies its own address table", 2);
11232
- var $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = $buf32$$[$offset$jscomp$81$$ + 12 >> 2];
11233
- var $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = $buf32$$[$offset$jscomp$81$$ + 16 >> 2];
11233
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = $buf32$$[$offset$jscomp$81$$ + 12 >> 2];
11234
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $buf32$$[$offset$jscomp$81$$ + 16 >> 2];
11234
11235
  var $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $buf32$$[$offset$jscomp$81$$ + 20 >> 2];
11235
11236
  var $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $buf32$$[$offset$jscomp$81$$ + 24 >> 2];
11236
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = $buf32$$[$offset$jscomp$81$$ + 28 >> 2];
11237
- $dbg_log$$module$src$log$$("header=" + $h$$module$src$lib$$($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, 8) + " load=" + $h$$module$src$lib$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$, 8) + " load_end=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, 8) + " bss_end=" + $h$$module$src$lib$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$,
11238
- 8) + " entry=" + $h$$module$src$lib$$($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$, 8));
11239
- $dbg_assert$$module$src$log$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ <= $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$);
11240
- $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = $offset$jscomp$81$$ - ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ - $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11241
- 0 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ ? $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = void 0 : ($dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ >= $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$), $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ - $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11242
- $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = new Uint8Array($buffer$jscomp$62$$, $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$);
11243
- $cpu$jscomp$26$$.write_blob($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11244
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 0;
11245
- $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = Math.max($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$);
11237
+ var $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = $buf32$$[$offset$jscomp$81$$ + 28 >> 2];
11238
+ $dbg_log$$module$src$log$$("header=" + $h$$module$src$lib$$($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, 8) + " load=" + $h$$module$src$lib$$($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$, 8) + " load_end=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, 8) + " bss_end=" + $h$$module$src$lib$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$,
11239
+ 8) + " entry=" + $h$$module$src$lib$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$, 8));
11240
+ $dbg_assert$$module$src$log$$($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ <= $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$);
11241
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = $offset$jscomp$81$$ - ($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ - $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11242
+ if (0 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$) {
11243
+ var $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ = void 0;
11244
+ } else {
11245
+ $dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ >= $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$), $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ - $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$;
11246
+ }
11247
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = new Uint8Array($buffer$jscomp$62$$, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$);
11248
+ $cpu$jscomp$26$$.write_blob($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11249
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ | 0;
11250
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = Math.max($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$);
11246
11251
  } else {
11247
11252
  if (1179403647 === $buf32$$[0]) {
11248
11253
  $dbg_log$$module$src$log$$("Multiboot image is in elf format", 2);
11249
- $start$jscomp$42_view$jscomp$inline_408$$ = new DataView($buffer$jscomp$62$$);
11250
- const [$header$jscomp$inline_409$$, $offset$jscomp$inline_410$$] = $read_struct$$module$src$elf$$($start$jscomp$42_view$jscomp$inline_408$$, $Header$$module$src$elf$$);
11254
+ $view$jscomp$inline_408_was_memory$$ = new DataView($buffer$jscomp$62$$);
11255
+ const [$header$jscomp$inline_409$$, $offset$jscomp$inline_410$$] = $read_struct$$module$src$elf$$($view$jscomp$inline_408_was_memory$$, $Header$$module$src$elf$$);
11251
11256
  console.assert(52 === $offset$jscomp$inline_410$$);
11252
- for ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ of Object.keys($header$jscomp$inline_409$$)) {
11253
- $dbg_log$$module$src$log$$($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ + ": 0x" + ($header$jscomp$inline_409$$[$blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$].toString(16) >>> 0));
11257
+ for ($key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ of Object.keys($header$jscomp$inline_409$$)) {
11258
+ $dbg_log$$module$src$log$$($key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ + ": 0x" + ($header$jscomp$inline_409$$[$key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$].toString(16) >>> 0));
11254
11259
  }
11255
11260
  console.assert(1179403647 === $header$jscomp$inline_409$$.magic, "Bad magic");
11256
11261
  console.assert(1 === $header$jscomp$inline_409$$.class, "Unimplemented: 64 bit elf");
@@ -11261,41 +11266,42 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11261
11266
  console.assert(52 === $header$jscomp$inline_409$$.ehsize, "Bad header size");
11262
11267
  console.assert(32 === $header$jscomp$inline_409$$.phentsize, "Bad program header size");
11263
11268
  console.assert(40 === $header$jscomp$inline_409$$.shentsize, "Bad section header size");
11264
- [$entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$] = $read_structs$$module$src$elf$$(new DataView($start$jscomp$42_view$jscomp$inline_408$$.buffer, $start$jscomp$42_view$jscomp$inline_408$$.byteOffset + $header$jscomp$inline_409$$.phoff, $header$jscomp$inline_409$$.phentsize * $header$jscomp$inline_409$$.phnum), $ProgramHeader$$module$src$elf$$, $header$jscomp$inline_409$$.phnum);
11265
- [$blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$] = $read_structs$$module$src$elf$$(new DataView($start$jscomp$42_view$jscomp$inline_408$$.buffer, $start$jscomp$42_view$jscomp$inline_408$$.byteOffset + $header$jscomp$inline_409$$.shoff, $header$jscomp$inline_409$$.shentsize * $header$jscomp$inline_409$$.shnum), $SectionHeader$$module$src$elf$$, $header$jscomp$inline_409$$.shnum);
11269
+ [$cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$] = $read_structs$$module$src$elf$$(new DataView($view$jscomp$inline_408_was_memory$$.buffer, $view$jscomp$inline_408_was_memory$$.byteOffset + $header$jscomp$inline_409$$.phoff, $header$jscomp$inline_409$$.phentsize * $header$jscomp$inline_409$$.phnum), $ProgramHeader$$module$src$elf$$, $header$jscomp$inline_409$$.phnum);
11270
+ [$key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$] = $read_structs$$module$src$elf$$(new DataView($view$jscomp$inline_408_was_memory$$.buffer, $view$jscomp$inline_408_was_memory$$.byteOffset + $header$jscomp$inline_409$$.shoff, $header$jscomp$inline_409$$.shentsize * $header$jscomp$inline_409$$.shnum), $SectionHeader$$module$src$elf$$, $header$jscomp$inline_409$$.shnum);
11266
11271
  if ($LOG_LEVEL$$module$src$log$$) {
11267
- console.log("%d program headers:", $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$.length);
11268
- for ($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ of $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$) {
11272
+ console.log("%d program headers:", $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$.length);
11273
+ for ($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ of $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$) {
11269
11274
  console.log("type=%s offset=%s vaddr=%s paddr=%s filesz=%s memsz=%s flags=%s align=%s", $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.type.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.offset.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.vaddr.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.paddr.toString(16),
11270
11275
  $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.filesz.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.memsz.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.flags.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.align.toString(16));
11271
11276
  }
11272
- console.log("%d section headers:", $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$.length);
11273
- for ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ of $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$) {
11274
- console.log("name=%s type=%s flags=%s addr=%s offset=%s size=%s link=%s info=%s addralign=%s entsize=%s", $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.name.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.type.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.flags.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.addr.toString(16),
11275
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.offset.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.size.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.link.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.info.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.addralign.toString(16),
11276
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.entsize.toString(16));
11277
+ console.log("%d section headers:", $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$.length);
11278
+ for ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ of $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$) {
11279
+ console.log("name=%s type=%s flags=%s addr=%s offset=%s size=%s link=%s info=%s addralign=%s entsize=%s", $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.name.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.type.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.flags.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.addr.toString(16),
11280
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.offset.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.size.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.link.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.info.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.addralign.toString(16),
11281
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.entsize.toString(16));
11277
11282
  }
11278
11283
  }
11279
11284
  $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $header$jscomp$inline_409$$;
11280
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$;
11281
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry;
11282
- for ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ of $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$) {
11285
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$;
11286
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry;
11287
+ for ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ of $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$) {
11283
11288
  0 !== $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type && (1 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? ($dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz <= $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz < $cpu$jscomp$26$$.memory_size[0] ? ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz &&
11284
- ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = new Uint8Array($buffer$jscomp$62$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$26$$.write_blob($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ =
11285
- Math.max($cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $dbg_log$$module$src$log$$("prg load " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2), $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ ===
11286
- $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr <= $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz > $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ =
11287
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ - $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)) : $dbg_log$$module$src$log$$("Warning: Skipped loading section, paddr=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr) + " memsz=" + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz, 2)) : 2 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11288
- 3 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 4 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 6 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 7 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382480 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382481 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382482 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11289
- 1685382483 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? $dbg_log$$module$src$log$$("skip load type " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type + " " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2) : $dbg_assert$$module$src$log$$(!1, "unimplemented elf section type: " +
11290
- $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type)));
11289
+ ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = new Uint8Array($buffer$jscomp$62$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$26$$.write_blob($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ =
11290
+ Math.max($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $dbg_log$$module$src$log$$("prg load " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2), $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ ===
11291
+ $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr <= $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz > $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ &&
11292
+ ($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ - $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)) : $dbg_log$$module$src$log$$("Warning: Skipped loading section, paddr=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr) +
11293
+ " memsz=" + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz, 2)) : 2 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 3 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 4 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 6 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 7 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382480 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11294
+ 1685382481 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382482 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382483 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? $dbg_log$$module$src$log$$("skip load type " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type + " " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr +
11295
+ $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2) : $dbg_assert$$module$src$log$$(!1, "unimplemented elf section type: " + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type)));
11291
11296
  }
11292
11297
  } else {
11293
11298
  $dbg_assert$$module$src$log$$(!1, "Not a bootable multiboot format");
11294
11299
  }
11295
11300
  }
11296
- $initrd$jscomp$2$$ && ($cpu$jscomp$26$$.write32(31764, 1), $cpu$jscomp$26$$.write32(31768, $i$jscomp$98_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, 0 !== ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & 4095) && ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & -4096) + 4096), $dbg_log$$module$src$log$$("ramdisk address " +
11297
- $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$),
11301
+ $initrd$jscomp$2$$ && ($info$jscomp$1$$ |= 8, $cpu$jscomp$26$$.write32(31764, 1), $cpu$jscomp$26$$.write32(31768, $i$jscomp$98_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, 0 !== ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & 4095) && ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & -4096) + 4096),
11302
+ $dbg_log$$module$src$log$$("ramdisk address " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$),
11298
11303
  $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, 0), $dbg_assert$$module$src$log$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ < $cpu$jscomp$26$$.memory_size[0]), $cpu$jscomp$26$$.write_blob(new Uint8Array($initrd$jscomp$2$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$));
11304
+ $cpu$jscomp$26$$.write32(31744, $info$jscomp$1$$);
11299
11305
  $cpu$jscomp$26$$.reg32[3] = 31744;
11300
11306
  $cpu$jscomp$26$$.cr[0] = 1;
11301
11307
  $cpu$jscomp$26$$.protected_mode[0] = 1;
@@ -11305,7 +11311,7 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11305
11311
  for ($i$jscomp$98_multiboot_data$$ = 0; 6 > $i$jscomp$98_multiboot_data$$; $i$jscomp$98_multiboot_data$$++) {
11306
11312
  $cpu$jscomp$26$$.segment_is_null[$i$jscomp$98_multiboot_data$$] = 0, $cpu$jscomp$26$$.segment_offsets[$i$jscomp$98_multiboot_data$$] = 0, $cpu$jscomp$26$$.segment_limits[$i$jscomp$98_multiboot_data$$] = 4294967295, $cpu$jscomp$26$$.sreg[$i$jscomp$98_multiboot_data$$] = 45058;
11307
11313
  }
11308
- $cpu$jscomp$26$$.instruction_pointer[0] = $cpu$jscomp$26$$.get_seg_cs() + $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ | 0;
11314
+ $cpu$jscomp$26$$.instruction_pointer[0] = $cpu$jscomp$26$$.get_seg_cs() + $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ | 0;
11309
11315
  $cpu$jscomp$26$$.update_state_flags();
11310
11316
  $dbg_log$$module$src$log$$("Starting multiboot kernel at:", 2);
11311
11317
  $cpu$jscomp$26$$.dump_state();
@@ -11208,48 +11208,53 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11208
11208
  }, function() {
11209
11209
  return 0;
11210
11210
  }, function() {
11211
- var $i$jscomp$98_multiboot_data$$ = 31860, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = 0;
11212
- $cmdline$jscomp$1$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 4, $cpu$jscomp$26$$.write32(31760, $i$jscomp$98_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$26$$.write_blob($cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, $i$jscomp$98_multiboot_data$$), $i$jscomp$98_multiboot_data$$ += $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$.length);
11211
+ var $i$jscomp$98_multiboot_data$$ = 31860;
11212
+ let $info$jscomp$1$$ = 0;
11213
+ $cmdline$jscomp$1$$ && ($info$jscomp$1$$ |= 4, $cpu$jscomp$26$$.write32(31760, $i$jscomp$98_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$26$$.write_blob($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$, $i$jscomp$98_multiboot_data$$), $i$jscomp$98_multiboot_data$$ += $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$.length);
11213
11214
  if ($flags$jscomp$16$$ & 2) {
11214
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 64;
11215
- $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = 0;
11215
+ $info$jscomp$1$$ |= 64;
11216
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = 0;
11216
11217
  $cpu$jscomp$26$$.write32(31788, 0);
11217
11218
  $cpu$jscomp$26$$.write32(31792, $i$jscomp$98_multiboot_data$$);
11218
- var $start$jscomp$42_view$jscomp$inline_408$$ = 0;
11219
- let $was_memory$$ = !1;
11219
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = 0;
11220
+ var $view$jscomp$inline_408_was_memory$$ = !1;
11220
11221
  for (let $addr$jscomp$48$$ = 0; 4294967296 > $addr$jscomp$48$$; $addr$jscomp$48$$ += 131072) {
11221
- $was_memory$$ && void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] ? ($cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, 20), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $start$jscomp$42_view$jscomp$inline_408$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, $addr$jscomp$48$$ - $start$jscomp$42_view$jscomp$inline_408$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ +
11222
- 16, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 20, 1), $i$jscomp$98_multiboot_data$$ += 24, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ += 24, $was_memory$$ = !1) : $was_memory$$ || void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] || ($start$jscomp$42_view$jscomp$inline_408$$ = $addr$jscomp$48$$, $was_memory$$ = !0);
11222
+ $view$jscomp$inline_408_was_memory$$ && void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] ? ($cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, 20), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, $addr$jscomp$48$$ - $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$),
11223
+ $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 16, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 20, 1), $i$jscomp$98_multiboot_data$$ += 24, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ += 24, $view$jscomp$inline_408_was_memory$$ = !1) : $view$jscomp$inline_408_was_memory$$ || void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$48$$ >>> 17] || ($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ =
11224
+ $addr$jscomp$48$$, $view$jscomp$inline_408_was_memory$$ = !0);
11223
11225
  }
11224
- $dbg_assert$$module$src$log$$(!$was_memory$$, "top of 4GB shouldn't have memory");
11225
- $cpu$jscomp$26$$.write32(31788, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$);
11226
+ $dbg_assert$$module$src$log$$(!$view$jscomp$inline_408_was_memory$$, "top of 4GB shouldn't have memory");
11227
+ $cpu$jscomp$26$$.write32(31788, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11226
11228
  }
11227
- $cpu$jscomp$26$$.write32(31744, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$);
11228
- var $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = 0;
11229
+ var $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = 0, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = 0;
11229
11230
  if ($flags$jscomp$16$$ & 65536) {
11230
11231
  $dbg_log$$module$src$log$$("Multiboot specifies its own address table", 2);
11231
- var $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = $buf32$$[$offset$jscomp$81$$ + 12 >> 2];
11232
- var $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = $buf32$$[$offset$jscomp$81$$ + 16 >> 2];
11232
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = $buf32$$[$offset$jscomp$81$$ + 12 >> 2];
11233
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $buf32$$[$offset$jscomp$81$$ + 16 >> 2];
11233
11234
  var $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $buf32$$[$offset$jscomp$81$$ + 20 >> 2];
11234
11235
  var $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $buf32$$[$offset$jscomp$81$$ + 24 >> 2];
11235
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = $buf32$$[$offset$jscomp$81$$ + 28 >> 2];
11236
- $dbg_log$$module$src$log$$("header=" + $h$$module$src$lib$$($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, 8) + " load=" + $h$$module$src$lib$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$, 8) + " load_end=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, 8) + " bss_end=" + $h$$module$src$lib$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$,
11237
- 8) + " entry=" + $h$$module$src$lib$$($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$, 8));
11238
- $dbg_assert$$module$src$log$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ <= $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$);
11239
- $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = $offset$jscomp$81$$ - ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ - $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11240
- 0 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ ? $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = void 0 : ($dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ >= $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$), $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ - $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11241
- $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ = new Uint8Array($buffer$jscomp$62$$, $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$);
11242
- $cpu$jscomp$26$$.write_blob($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$, $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$);
11243
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ |= 0;
11244
- $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ = Math.max($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$);
11236
+ var $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = $buf32$$[$offset$jscomp$81$$ + 28 >> 2];
11237
+ $dbg_log$$module$src$log$$("header=" + $h$$module$src$lib$$($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, 8) + " load=" + $h$$module$src$lib$$($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$, 8) + " load_end=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, 8) + " bss_end=" + $h$$module$src$lib$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$,
11238
+ 8) + " entry=" + $h$$module$src$lib$$($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$, 8));
11239
+ $dbg_assert$$module$src$log$$($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ <= $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$);
11240
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = $offset$jscomp$81$$ - ($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ - $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11241
+ if (0 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$) {
11242
+ var $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ = void 0;
11243
+ } else {
11244
+ $dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ >= $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$), $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ - $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$;
11245
+ }
11246
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = new Uint8Array($buffer$jscomp$62$$, $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$);
11247
+ $cpu$jscomp$26$$.write_blob($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
11248
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ | 0;
11249
+ $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = Math.max($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$);
11245
11250
  } else {
11246
11251
  if (1179403647 === $buf32$$[0]) {
11247
11252
  $dbg_log$$module$src$log$$("Multiboot image is in elf format", 2);
11248
- $start$jscomp$42_view$jscomp$inline_408$$ = new DataView($buffer$jscomp$62$$);
11249
- const [$header$jscomp$inline_409$$, $offset$jscomp$inline_410$$] = $read_struct$$module$src$elf$$($start$jscomp$42_view$jscomp$inline_408$$, $Header$$module$src$elf$$);
11253
+ $view$jscomp$inline_408_was_memory$$ = new DataView($buffer$jscomp$62$$);
11254
+ const [$header$jscomp$inline_409$$, $offset$jscomp$inline_410$$] = $read_struct$$module$src$elf$$($view$jscomp$inline_408_was_memory$$, $Header$$module$src$elf$$);
11250
11255
  console.assert(52 === $offset$jscomp$inline_410$$);
11251
- for ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ of Object.keys($header$jscomp$inline_409$$)) {
11252
- $dbg_log$$module$src$log$$($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$ + ": 0x" + ($header$jscomp$inline_409$$[$blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$].toString(16) >>> 0));
11256
+ for ($key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ of Object.keys($header$jscomp$inline_409$$)) {
11257
+ $dbg_log$$module$src$log$$($key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$ + ": 0x" + ($header$jscomp$inline_409$$[$key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$].toString(16) >>> 0));
11253
11258
  }
11254
11259
  console.assert(1179403647 === $header$jscomp$inline_409$$.magic, "Bad magic");
11255
11260
  console.assert(1 === $header$jscomp$inline_409$$.class, "Unimplemented: 64 bit elf");
@@ -11260,41 +11265,42 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11260
11265
  console.assert(52 === $header$jscomp$inline_409$$.ehsize, "Bad header size");
11261
11266
  console.assert(32 === $header$jscomp$inline_409$$.phentsize, "Bad program header size");
11262
11267
  console.assert(40 === $header$jscomp$inline_409$$.shentsize, "Bad section header size");
11263
- [$entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$] = $read_structs$$module$src$elf$$(new DataView($start$jscomp$42_view$jscomp$inline_408$$.buffer, $start$jscomp$42_view$jscomp$inline_408$$.byteOffset + $header$jscomp$inline_409$$.phoff, $header$jscomp$inline_409$$.phentsize * $header$jscomp$inline_409$$.phnum), $ProgramHeader$$module$src$elf$$, $header$jscomp$inline_409$$.phnum);
11264
- [$blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$] = $read_structs$$module$src$elf$$(new DataView($start$jscomp$42_view$jscomp$inline_408$$.buffer, $start$jscomp$42_view$jscomp$inline_408$$.byteOffset + $header$jscomp$inline_409$$.shoff, $header$jscomp$inline_409$$.shentsize * $header$jscomp$inline_409$$.shnum), $SectionHeader$$module$src$elf$$, $header$jscomp$inline_409$$.shnum);
11268
+ [$cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$] = $read_structs$$module$src$elf$$(new DataView($view$jscomp$inline_408_was_memory$$.buffer, $view$jscomp$inline_408_was_memory$$.byteOffset + $header$jscomp$inline_409$$.phoff, $header$jscomp$inline_409$$.phentsize * $header$jscomp$inline_409$$.phnum), $ProgramHeader$$module$src$elf$$, $header$jscomp$inline_409$$.phnum);
11269
+ [$key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$] = $read_structs$$module$src$elf$$(new DataView($view$jscomp$inline_408_was_memory$$.buffer, $view$jscomp$inline_408_was_memory$$.byteOffset + $header$jscomp$inline_409$$.shoff, $header$jscomp$inline_409$$.shentsize * $header$jscomp$inline_409$$.shnum), $SectionHeader$$module$src$elf$$, $header$jscomp$inline_409$$.shnum);
11265
11270
  if ($LOG_LEVEL$$module$src$log$$) {
11266
- console.log("%d program headers:", $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$.length);
11267
- for ($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ of $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$) {
11271
+ console.log("%d program headers:", $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$.length);
11272
+ for ($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ of $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$) {
11268
11273
  console.log("type=%s offset=%s vaddr=%s paddr=%s filesz=%s memsz=%s flags=%s align=%s", $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.type.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.offset.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.vaddr.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.paddr.toString(16),
11269
11274
  $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.filesz.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.memsz.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.flags.toString(16), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.align.toString(16));
11270
11275
  }
11271
- console.log("%d section headers:", $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$.length);
11272
- for ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ of $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_413_sections_headers$jscomp$inline_412$$) {
11273
- console.log("name=%s type=%s flags=%s addr=%s offset=%s size=%s link=%s info=%s addralign=%s entsize=%s", $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.name.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.type.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.flags.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.addr.toString(16),
11274
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.offset.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.size.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.link.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.info.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.addralign.toString(16),
11275
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$.entsize.toString(16));
11276
+ console.log("%d section headers:", $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$.length);
11277
+ for ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ of $key$jscomp$inline_413_length$jscomp$33_sections_headers$jscomp$inline_412$$) {
11278
+ console.log("name=%s type=%s flags=%s addr=%s offset=%s size=%s link=%s info=%s addralign=%s entsize=%s", $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.name.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.type.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.flags.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.addr.toString(16),
11279
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.offset.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.size.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.link.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.info.toString(16), $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.addralign.toString(16),
11280
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$.entsize.toString(16));
11276
11281
  }
11277
11282
  }
11278
11283
  $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $header$jscomp$inline_409$$;
11279
- $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$;
11280
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry;
11281
- for ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ of $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$) {
11284
+ $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$;
11285
+ $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry;
11286
+ for ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ of $JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$) {
11282
11287
  0 !== $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type && (1 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? ($dbg_assert$$module$src$log$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz <= $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz < $cpu$jscomp$26$$.memory_size[0] ? ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz &&
11283
- ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$ = new Uint8Array($buffer$jscomp$62$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$26$$.write_blob($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_load_addr_section$jscomp$inline_415$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$ =
11284
- Math.max($cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $dbg_log$$module$src$log$$("prg load " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2), $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ ===
11285
- $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr <= $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz > $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ =
11286
- $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ - $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)) : $dbg_log$$module$src$log$$("Warning: Skipped loading section, paddr=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr) + " memsz=" + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz, 2)) : 2 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11287
- 3 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 4 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 6 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 7 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382480 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382481 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382482 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11288
- 1685382483 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? $dbg_log$$module$src$log$$("skip load type " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type + " " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2) : $dbg_assert$$module$src$log$$(!1, "unimplemented elf section type: " +
11289
- $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type)));
11288
+ ($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$ = new Uint8Array($buffer$jscomp$62$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$26$$.write_blob($JSCompiler_object_inline_program_headers_484_blob$jscomp$18_entry_addr_section$jscomp$inline_415$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ =
11289
+ Math.max($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), $dbg_log$$module$src$log$$("prg load " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2), $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ ===
11290
+ $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$.entry && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr <= $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz > $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ &&
11291
+ ($cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ = $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ - $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)) : $dbg_log$$module$src$log$$("Warning: Skipped loading section, paddr=" + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr) +
11292
+ " memsz=" + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz, 2)) : 2 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 3 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 4 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 6 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 7 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382480 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ||
11293
+ 1685382481 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382482 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type || 1685382483 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type ? $dbg_log$$module$src$log$$("skip load type " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type + " " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr + " to " + ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr +
11294
+ $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.memsz), 2) : $dbg_assert$$module$src$log$$(!1, "unimplemented elf section type: " + $h$$module$src$lib$$($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.type)));
11290
11295
  }
11291
11296
  } else {
11292
11297
  $dbg_assert$$module$src$log$$(!1, "Not a bootable multiboot format");
11293
11298
  }
11294
11299
  }
11295
- $initrd$jscomp$2$$ && ($cpu$jscomp$26$$.write32(31764, 1), $cpu$jscomp$26$$.write32(31768, $i$jscomp$98_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $cmdline_utf8_length$jscomp$33_multiboot_mmap_count_top_of_load$$, 0 !== ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & 4095) && ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & -4096) + 4096), $dbg_log$$module$src$log$$("ramdisk address " +
11296
- $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$),
11300
+ $initrd$jscomp$2$$ && ($info$jscomp$1$$ |= 8, $cpu$jscomp$26$$.write32(31764, 1), $cpu$jscomp$26$$.write32(31768, $i$jscomp$98_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$, 0 !== ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & 4095) && ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ & -4096) + 4096),
11301
+ $dbg_log$$module$src$log$$("ramdisk address " + $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 4, $JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$),
11297
11302
  $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 8, 0), $cpu$jscomp$26$$.write32($i$jscomp$98_multiboot_data$$ + 12, 0), $dbg_assert$$module$src$log$$($JSCompiler_object_inline_header_483_bss_end_addr_program$jscomp$inline_414_ramdisk_top$$ < $cpu$jscomp$26$$.memory_size[0]), $cpu$jscomp$26$$.write_blob(new Uint8Array($initrd$jscomp$2$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$));
11303
+ $cpu$jscomp$26$$.write32(31744, $info$jscomp$1$$);
11298
11304
  $cpu$jscomp$26$$.reg32[3] = 31744;
11299
11305
  $cpu$jscomp$26$$.cr[0] = 1;
11300
11306
  $cpu$jscomp$26$$.protected_mode[0] = 1;
@@ -11304,7 +11310,7 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11304
11310
  for ($i$jscomp$98_multiboot_data$$ = 0; 6 > $i$jscomp$98_multiboot_data$$; $i$jscomp$98_multiboot_data$$++) {
11305
11311
  $cpu$jscomp$26$$.segment_is_null[$i$jscomp$98_multiboot_data$$] = 0, $cpu$jscomp$26$$.segment_offsets[$i$jscomp$98_multiboot_data$$] = 0, $cpu$jscomp$26$$.segment_limits[$i$jscomp$98_multiboot_data$$] = 4294967295, $cpu$jscomp$26$$.sreg[$i$jscomp$98_multiboot_data$$] = 45058;
11306
11312
  }
11307
- $cpu$jscomp$26$$.instruction_pointer[0] = $cpu$jscomp$26$$.get_seg_cs() + $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_411$$ | 0;
11313
+ $cpu$jscomp$26$$.instruction_pointer[0] = $cpu$jscomp$26$$.get_seg_cs() + $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$ | 0;
11308
11314
  $cpu$jscomp$26$$.update_state_flags();
11309
11315
  $dbg_log$$module$src$log$$("Starting multiboot kernel at:", 2);
11310
11316
  $cpu$jscomp$26$$.dump_state();