v86 0.5.307 → 0.5.319

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.
@@ -345,9 +345,14 @@ function $dbg_assert$$module$src$log$$($cond$$, $msg$$) {
345
345
  console.assert($screen_container$$, "options.container must be provided");
346
346
  this.FLAG_BLINKING = 1;
347
347
  this.FLAG_FONT_PAGE_B = 2;
348
- var $graphic_screen$$ = $screen_container$$.getElementsByTagName("canvas")[0], $graphic_context$$ = $graphic_screen$$.getContext("2d", {alpha:!1}), $text_screen$$ = $screen_container$$.getElementsByTagName("div")[0], $cursor_element$$ = document.createElement("div"), $cursor_row$$, $cursor_col$$, $scale_x$$ = void 0 !== $options$jscomp$36$$.scale ? $options$jscomp$36$$.scale : 1, $scale_y$$ = void 0 !== $options$jscomp$36$$.scale ? $options$jscomp$36$$.scale : 1, $base_scale$$ = 1, $changed_rows$$,
349
- $mode$jscomp$15$$, $text_mode_data$$, $text_mode_width$$, $text_mode_height$$, $offscreen_context$$, $offscreen_extra_context$$, $font_context$$, $font_image_data$$, $font_is_visible$$ = new Int8Array(2048), $font_height$$, $font_width$$, $font_width_9px$$, $font_width_dbl$$, $font_copy_8th_col$$, $font_page_a$$ = 0, $font_page_b$$ = 0, $blink_visible$$, $tm_last_update$$ = 0, $cursor_start$$, $cursor_end$$, $cursor_enabled$$, $charmap$$ = $get_charmap$$module$src$lib$$($options$jscomp$36$$.encoding),
350
- $timer_id$$ = 0, $paused$$ = !1;
348
+ let $graphic_screen$$ = $screen_container$$.getElementsByTagName("canvas")[0];
349
+ $graphic_screen$$ || ($graphic_screen$$ = document.createElement("canvas"), $screen_container$$.appendChild($graphic_screen$$));
350
+ const $graphic_context$$ = $graphic_screen$$.getContext("2d", {alpha:!1});
351
+ let $text_screen$$ = $screen_container$$.getElementsByTagName("div")[0];
352
+ $text_screen$$ || ($text_screen$$ = document.createElement("div"), $screen_container$$.appendChild($text_screen$$));
353
+ const $cursor_element$$ = document.createElement("div");
354
+ var $cursor_row$$, $cursor_col$$, $scale_x$$ = void 0 !== $options$jscomp$36$$.scale ? $options$jscomp$36$$.scale : 1, $scale_y$$ = void 0 !== $options$jscomp$36$$.scale ? $options$jscomp$36$$.scale : 1, $base_scale$$ = 1, $changed_rows$$, $mode$jscomp$15$$, $text_mode_data$$, $text_mode_width$$, $text_mode_height$$, $offscreen_context$$, $offscreen_extra_context$$, $font_context$$, $font_image_data$$, $font_is_visible$$ = new Int8Array(2048), $font_height$$, $font_width$$, $font_width_9px$$, $font_width_dbl$$,
355
+ $font_copy_8th_col$$, $font_page_a$$ = 0, $font_page_b$$ = 0, $blink_visible$$, $tm_last_update$$ = 0, $cursor_start$$, $cursor_end$$, $cursor_enabled$$, $charmap$$ = $get_charmap$$module$src$lib$$($options$jscomp$36$$.encoding), $timer_id$$ = 0, $paused$$ = !1;
351
356
  this.init = function() {
352
357
  $cursor_element$$.classList.add("cursor");
353
358
  $cursor_element$$.style.position = "absolute";
@@ -5527,20 +5532,18 @@ function $V86$$module$src$browser$starter$$($options$jscomp$41$$) {
5527
5532
  $cpu$jscomp$12$$.io.port_write32($addr$jscomp$16$$, $value$jscomp$142$$);
5528
5533
  }, mmap_read8:function($addr$jscomp$17$$) {
5529
5534
  return $cpu$jscomp$12$$.mmap_read8($addr$jscomp$17$$);
5530
- }, mmap_read16:function($addr$jscomp$18$$) {
5531
- return $cpu$jscomp$12$$.mmap_read16($addr$jscomp$18$$);
5532
- }, mmap_read32:function($addr$jscomp$19$$) {
5533
- return $cpu$jscomp$12$$.mmap_read32($addr$jscomp$19$$);
5534
- }, mmap_write8:function($addr$jscomp$20$$, $value$jscomp$143$$) {
5535
- $cpu$jscomp$12$$.mmap_write8($addr$jscomp$20$$, $value$jscomp$143$$);
5536
- }, mmap_write16:function($addr$jscomp$21$$, $value$jscomp$144$$) {
5537
- $cpu$jscomp$12$$.mmap_write16($addr$jscomp$21$$, $value$jscomp$144$$);
5538
- }, mmap_write32:function($addr$jscomp$22$$, $value$jscomp$145$$) {
5539
- $cpu$jscomp$12$$.mmap_write32($addr$jscomp$22$$, $value$jscomp$145$$);
5540
- }, mmap_write64:function($addr$jscomp$23$$, $value0$$, $value1$jscomp$7$$) {
5541
- $cpu$jscomp$12$$.mmap_write64($addr$jscomp$23$$, $value0$$, $value1$jscomp$7$$);
5542
- }, mmap_write128:function($addr$jscomp$24$$, $value0$jscomp$1$$, $value1$jscomp$8$$, $value2$jscomp$7$$, $value3$jscomp$4$$) {
5543
- $cpu$jscomp$12$$.mmap_write128($addr$jscomp$24$$, $value0$jscomp$1$$, $value1$jscomp$8$$, $value2$jscomp$7$$, $value3$jscomp$4$$);
5535
+ }, mmap_read32:function($addr$jscomp$18$$) {
5536
+ return $cpu$jscomp$12$$.mmap_read32($addr$jscomp$18$$);
5537
+ }, mmap_write8:function($addr$jscomp$19$$, $value$jscomp$143$$) {
5538
+ $cpu$jscomp$12$$.mmap_write8($addr$jscomp$19$$, $value$jscomp$143$$);
5539
+ }, mmap_write16:function($addr$jscomp$20$$, $value$jscomp$144$$) {
5540
+ $cpu$jscomp$12$$.mmap_write16($addr$jscomp$20$$, $value$jscomp$144$$);
5541
+ }, mmap_write32:function($addr$jscomp$21$$, $value$jscomp$145$$) {
5542
+ $cpu$jscomp$12$$.mmap_write32($addr$jscomp$21$$, $value$jscomp$145$$);
5543
+ }, mmap_write64:function($addr$jscomp$22$$, $value0$$, $value1$jscomp$7$$) {
5544
+ $cpu$jscomp$12$$.mmap_write64($addr$jscomp$22$$, $value0$$, $value1$jscomp$7$$);
5545
+ }, mmap_write128:function($addr$jscomp$23$$, $value0$jscomp$1$$, $value1$jscomp$8$$, $value2$jscomp$7$$, $value3$jscomp$4$$) {
5546
+ $cpu$jscomp$12$$.mmap_write128($addr$jscomp$23$$, $value0$jscomp$1$$, $value1$jscomp$8$$, $value2$jscomp$7$$, $value3$jscomp$4$$);
5544
5547
  }, log_from_wasm:function($offset$jscomp$60_str$jscomp$11$$, $len$jscomp$22$$) {
5545
5548
  $offset$jscomp$60_str$jscomp$11$$ = $read_sized_string_from_mem$$module$src$lib$$($wasm_memory$$, $offset$jscomp$60_str$jscomp$11$$, $len$jscomp$22$$);
5546
5549
  $dbg_log$$module$src$log$$($offset$jscomp$60_str$jscomp$11$$, 2);
@@ -5586,28 +5589,28 @@ $V86$$module$src$browser$starter$$.prototype.continue_init = async function($emu
5586
5589
  function $put_on_settings$$($name$jscomp$100$$, $buffer$jscomp$42$$) {
5587
5590
  switch($name$jscomp$100$$) {
5588
5591
  case "hda":
5589
- $settings$$.hda = this.disk_images.hda = $buffer$jscomp$42$$;
5592
+ $settings$$.hda = $buffer$jscomp$42$$;
5590
5593
  break;
5591
5594
  case "hdb":
5592
- $settings$$.hdb = this.disk_images.hdb = $buffer$jscomp$42$$;
5595
+ $settings$$.hdb = $buffer$jscomp$42$$;
5593
5596
  break;
5594
5597
  case "cdrom":
5595
- $settings$$.cdrom = this.disk_images.cdrom = $buffer$jscomp$42$$;
5598
+ $settings$$.cdrom = $buffer$jscomp$42$$;
5596
5599
  break;
5597
5600
  case "fda":
5598
- $settings$$.fda = this.disk_images.fda = $buffer$jscomp$42$$;
5601
+ $settings$$.fda = $buffer$jscomp$42$$;
5599
5602
  break;
5600
5603
  case "fdb":
5601
- $settings$$.fdb = this.disk_images.fdb = $buffer$jscomp$42$$;
5604
+ $settings$$.fdb = $buffer$jscomp$42$$;
5602
5605
  break;
5603
5606
  case "multiboot":
5604
- $settings$$.multiboot = this.disk_images.multiboot = $buffer$jscomp$42$$.buffer;
5607
+ $settings$$.multiboot = $buffer$jscomp$42$$.buffer;
5605
5608
  break;
5606
5609
  case "bzimage":
5607
- $settings$$.bzimage = this.disk_images.bzimage = $buffer$jscomp$42$$.buffer;
5610
+ $settings$$.bzimage = $buffer$jscomp$42$$.buffer;
5608
5611
  break;
5609
5612
  case "initrd":
5610
- $settings$$.initrd = this.disk_images.initrd = $buffer$jscomp$42$$.buffer;
5613
+ $settings$$.initrd = $buffer$jscomp$42$$.buffer;
5611
5614
  break;
5612
5615
  case "bios":
5613
5616
  $settings$$.bios = $buffer$jscomp$42$$.buffer;
@@ -5656,9 +5659,7 @@ $V86$$module$src$browser$starter$$.prototype.continue_init = async function($emu
5656
5659
  this.cpu_is_running = !0;
5657
5660
  this.screen_adapter.continue();
5658
5661
  }, this);
5659
- var $settings$$ = {};
5660
- this.disk_images = {fda:void 0, fdb:void 0, hda:void 0, hdb:void 0, cdrom:void 0, };
5661
- var $add_file_boot_order_fs_url_relay_url_screen_options_virtio_console_settings$$ = $options$jscomp$42$$.boot_order ? $options$jscomp$42$$.boot_order : $options$jscomp$42$$.fda ? 801 : $options$jscomp$42$$.hda ? 786 : 291;
5662
+ var $settings$$ = {}, $add_file_boot_order_fs_url_relay_url_screen_options_virtio_console_settings$$ = $options$jscomp$42$$.boot_order ? $options$jscomp$42$$.boot_order : $options$jscomp$42$$.fda ? 801 : $options$jscomp$42$$.hda ? 786 : 291;
5662
5663
  $settings$$.acpi = $options$jscomp$42$$.acpi;
5663
5664
  $settings$$.disable_jit = $options$jscomp$42$$.disable_jit;
5664
5665
  $settings$$.load_devices = !0;
@@ -5794,7 +5795,7 @@ $V86$$module$src$browser$starter$$.prototype.zstd_decompress_worker = async func
5794
5795
  $e$jscomp$43_exports$jscomp$1$$.zstd_free_ctx($env$jscomp$1_zstd_context$$);
5795
5796
  postMessage({result:$result$jscomp$11$$, id:$id$jscomp$21$$}, [$result$jscomp$11$$]);
5796
5797
  } else {
5797
- $env$jscomp$1_zstd_context$$ = Object.fromEntries("cpu_exception_hook run_hardware_timers cpu_event_halt microtick get_rand_int stop_idling io_port_read8 io_port_read16 io_port_read32 io_port_write8 io_port_write16 io_port_write32 mmap_read8 mmap_read16 mmap_read32 mmap_write8 mmap_write16 mmap_write32 mmap_write64 mmap_write128 codegen_finalize jit_clear_func jit_clear_all_funcs".split(" ").map($f$jscomp$2$$ => [$f$jscomp$2$$, () => console.error("zstd worker unexpectedly called " + $f$jscomp$2$$)])),
5798
+ $env$jscomp$1_zstd_context$$ = Object.fromEntries("cpu_exception_hook run_hardware_timers cpu_event_halt microtick get_rand_int stop_idling io_port_read8 io_port_read16 io_port_read32 io_port_write8 io_port_write16 io_port_write32 mmap_read8 mmap_read32 mmap_write8 mmap_write16 mmap_write32 mmap_write64 mmap_write128 codegen_finalize jit_clear_func jit_clear_all_funcs".split(" ").map($f$jscomp$2$$ => [$f$jscomp$2$$, () => console.error("zstd worker unexpectedly called " + $f$jscomp$2$$)])),
5798
5799
  $env$jscomp$1_zstd_context$$.__indirect_function_table = new WebAssembly.Table({element:"anyfunc", initial:1024}), $env$jscomp$1_zstd_context$$.abort = () => {
5799
5800
  throw Error("zstd worker aborted");
5800
5801
  }, $env$jscomp$1_zstd_context$$.log_from_wasm = $env$jscomp$1_zstd_context$$.console_log_from_wasm = ($off$$, $len$jscomp$25$$) => {
@@ -6661,47 +6662,47 @@ $PCI$$module$src$pci$$.prototype.set_state = function($state$jscomp$33$$) {
6661
6662
  this.pci_status.set($state$jscomp$33$$[259]);
6662
6663
  };
6663
6664
  $PCI$$module$src$pci$$.prototype.pci_query = function() {
6664
- var $bdf$$ = this.pci_addr[2] << 8 | this.pci_addr[1], $addr$jscomp$25$$ = this.pci_addr[0] & 252, $dev_device$jscomp$5$$ = $bdf$$ >> 3 & 31;
6665
+ var $bdf$$ = this.pci_addr[2] << 8 | this.pci_addr[1], $addr$jscomp$24$$ = this.pci_addr[0] & 252, $dev_device$jscomp$5$$ = $bdf$$ >> 3 & 31;
6665
6666
  var $dbg_line$$ = "query enabled=" + (this.pci_addr[3] >> 7) + (" bdf=" + $h$$module$src$lib$$($bdf$$, 4));
6666
6667
  $dbg_line$$ += " dev=" + $h$$module$src$lib$$($dev_device$jscomp$5$$, 2);
6667
- $dbg_line$$ += " addr=" + $h$$module$src$lib$$($addr$jscomp$25$$, 2);
6668
+ $dbg_line$$ += " addr=" + $h$$module$src$lib$$($addr$jscomp$24$$, 2);
6668
6669
  $dev_device$jscomp$5$$ = this.device_spaces[$bdf$$];
6669
- void 0 !== $dev_device$jscomp$5$$ ? (this.pci_status32[0] = -2147483648, this.pci_response32[0] = $addr$jscomp$25$$ < $dev_device$jscomp$5$$.byteLength ? $dev_device$jscomp$5$$[$addr$jscomp$25$$ >> 2] : 0, $dbg_line$$ += " " + $h$$module$src$lib$$(this.pci_addr32[0] >>> 0, 8) + " -> " + $h$$module$src$lib$$(this.pci_response32[0] >>> 0, 8), $addr$jscomp$25$$ >= $dev_device$jscomp$5$$.byteLength && ($dbg_line$$ += " (undef)"), $dbg_line$$ += " (" + this.devices[$bdf$$].name + ")", $dbg_log$$module$src$log$$($dbg_line$$,
6670
+ void 0 !== $dev_device$jscomp$5$$ ? (this.pci_status32[0] = -2147483648, this.pci_response32[0] = $addr$jscomp$24$$ < $dev_device$jscomp$5$$.byteLength ? $dev_device$jscomp$5$$[$addr$jscomp$24$$ >> 2] : 0, $dbg_line$$ += " " + $h$$module$src$lib$$(this.pci_addr32[0] >>> 0, 8) + " -> " + $h$$module$src$lib$$(this.pci_response32[0] >>> 0, 8), $addr$jscomp$24$$ >= $dev_device$jscomp$5$$.byteLength && ($dbg_line$$ += " (undef)"), $dbg_line$$ += " (" + this.devices[$bdf$$].name + ")", $dbg_log$$module$src$log$$($dbg_line$$,
6670
6671
  2048)) : (this.pci_response32[0] = -1, this.pci_status32[0] = 0);
6671
6672
  };
6672
- $PCI$$module$src$pci$$.prototype.pci_write8 = function($addr$jscomp$26_address$jscomp$19$$, $written$$) {
6673
- var $bdf$jscomp$1$$ = $addr$jscomp$26_address$jscomp$19$$ >> 8 & 65535;
6674
- $addr$jscomp$26_address$jscomp$19$$ &= 255;
6673
+ $PCI$$module$src$pci$$.prototype.pci_write8 = function($addr$jscomp$25_address$jscomp$19$$, $written$$) {
6674
+ var $bdf$jscomp$1$$ = $addr$jscomp$25_address$jscomp$19$$ >> 8 & 65535;
6675
+ $addr$jscomp$25_address$jscomp$19$$ &= 255;
6675
6676
  var $space$jscomp$1$$ = new Uint8Array(this.device_spaces[$bdf$jscomp$1$$].buffer), $device$jscomp$6$$ = this.devices[$bdf$jscomp$1$$];
6676
- $space$jscomp$1$$ && ($dbg_assert$$module$src$log$$(!(16 <= $addr$jscomp$26_address$jscomp$19$$ && 44 > $addr$jscomp$26_address$jscomp$19$$ || 48 <= $addr$jscomp$26_address$jscomp$19$$ && 52 > $addr$jscomp$26_address$jscomp$19$$), "PCI: Expected 32-bit write, got 8-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$26_address$jscomp$19$$) + ")"), $dbg_log$$module$src$log$$("PCI write8 dev=" + $h$$module$src$lib$$($bdf$jscomp$1$$ >> 3, 2) + " (" + $device$jscomp$6$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$26_address$jscomp$19$$,
6677
- 4) + " value=" + $h$$module$src$lib$$($written$$, 2), 2048), $space$jscomp$1$$[$addr$jscomp$26_address$jscomp$19$$] = $written$$);
6677
+ $space$jscomp$1$$ && ($dbg_assert$$module$src$log$$(!(16 <= $addr$jscomp$25_address$jscomp$19$$ && 44 > $addr$jscomp$25_address$jscomp$19$$ || 48 <= $addr$jscomp$25_address$jscomp$19$$ && 52 > $addr$jscomp$25_address$jscomp$19$$), "PCI: Expected 32-bit write, got 8-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$25_address$jscomp$19$$) + ")"), $dbg_log$$module$src$log$$("PCI write8 dev=" + $h$$module$src$lib$$($bdf$jscomp$1$$ >> 3, 2) + " (" + $device$jscomp$6$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$25_address$jscomp$19$$,
6678
+ 4) + " value=" + $h$$module$src$lib$$($written$$, 2), 2048), $space$jscomp$1$$[$addr$jscomp$25_address$jscomp$19$$] = $written$$);
6678
6679
  };
6679
- $PCI$$module$src$pci$$.prototype.pci_write16 = function($addr$jscomp$27_address$jscomp$20$$, $written$jscomp$1$$) {
6680
- $dbg_assert$$module$src$log$$(0 === ($addr$jscomp$27_address$jscomp$20$$ & 1));
6681
- var $bdf$jscomp$2$$ = $addr$jscomp$27_address$jscomp$20$$ >> 8 & 65535;
6682
- $addr$jscomp$27_address$jscomp$20$$ &= 255;
6680
+ $PCI$$module$src$pci$$.prototype.pci_write16 = function($addr$jscomp$26_address$jscomp$20$$, $written$jscomp$1$$) {
6681
+ $dbg_assert$$module$src$log$$(0 === ($addr$jscomp$26_address$jscomp$20$$ & 1));
6682
+ var $bdf$jscomp$2$$ = $addr$jscomp$26_address$jscomp$20$$ >> 8 & 65535;
6683
+ $addr$jscomp$26_address$jscomp$20$$ &= 255;
6683
6684
  var $space$jscomp$2$$ = new Uint16Array(this.device_spaces[$bdf$jscomp$2$$].buffer), $device$jscomp$7$$ = this.devices[$bdf$jscomp$2$$];
6684
- $space$jscomp$2$$ && (16 <= $addr$jscomp$27_address$jscomp$20$$ && 44 > $addr$jscomp$27_address$jscomp$20$$ ? $dbg_log$$module$src$log$$("Warning: PCI: Expected 32-bit write, got 16-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$27_address$jscomp$20$$) + ")") : ($dbg_assert$$module$src$log$$(!(48 <= $addr$jscomp$27_address$jscomp$20$$ && 52 > $addr$jscomp$27_address$jscomp$20$$), "PCI: Expected 32-bit write, got 16-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$27_address$jscomp$20$$) + ")"),
6685
- $dbg_log$$module$src$log$$("PCI writ16 dev=" + $h$$module$src$lib$$($bdf$jscomp$2$$ >> 3, 2) + " (" + $device$jscomp$7$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$27_address$jscomp$20$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$1$$, 4), 2048), $space$jscomp$2$$[$addr$jscomp$27_address$jscomp$20$$ >>> 1] = $written$jscomp$1$$));
6685
+ $space$jscomp$2$$ && (16 <= $addr$jscomp$26_address$jscomp$20$$ && 44 > $addr$jscomp$26_address$jscomp$20$$ ? $dbg_log$$module$src$log$$("Warning: PCI: Expected 32-bit write, got 16-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$26_address$jscomp$20$$) + ")") : ($dbg_assert$$module$src$log$$(!(48 <= $addr$jscomp$26_address$jscomp$20$$ && 52 > $addr$jscomp$26_address$jscomp$20$$), "PCI: Expected 32-bit write, got 16-bit (addr: " + $h$$module$src$lib$$($addr$jscomp$26_address$jscomp$20$$) + ")"),
6686
+ $dbg_log$$module$src$log$$("PCI writ16 dev=" + $h$$module$src$lib$$($bdf$jscomp$2$$ >> 3, 2) + " (" + $device$jscomp$7$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$26_address$jscomp$20$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$1$$, 4), 2048), $space$jscomp$2$$[$addr$jscomp$26_address$jscomp$20$$ >>> 1] = $written$jscomp$1$$));
6686
6687
  };
6687
- $PCI$$module$src$pci$$.prototype.pci_write32 = function($addr$jscomp$28_address$jscomp$21$$, $written$jscomp$2$$) {
6688
- $dbg_assert$$module$src$log$$(0 === ($addr$jscomp$28_address$jscomp$21$$ & 3));
6689
- var $bdf$jscomp$3_space_addr$$ = $addr$jscomp$28_address$jscomp$21$$ >> 8 & 65535;
6690
- $addr$jscomp$28_address$jscomp$21$$ &= 255;
6688
+ $PCI$$module$src$pci$$.prototype.pci_write32 = function($addr$jscomp$27_address$jscomp$21$$, $written$jscomp$2$$) {
6689
+ $dbg_assert$$module$src$log$$(0 === ($addr$jscomp$27_address$jscomp$21$$ & 3));
6690
+ var $bdf$jscomp$3_space_addr$$ = $addr$jscomp$27_address$jscomp$21$$ >> 8 & 65535;
6691
+ $addr$jscomp$27_address$jscomp$21$$ &= 255;
6691
6692
  var $space$jscomp$3$$ = this.device_spaces[$bdf$jscomp$3_space_addr$$], $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ = this.devices[$bdf$jscomp$3_space_addr$$];
6692
6693
  if ($space$jscomp$3$$) {
6693
- if (16 <= $addr$jscomp$28_address$jscomp$21$$ && 40 > $addr$jscomp$28_address$jscomp$21$$) {
6694
- var $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ = $addr$jscomp$28_address$jscomp$21$$ - 16 >> 2, $bar$jscomp$1$$ = $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_bars[$bar_nr$jscomp$1_original_bar_to$jscomp$1$$];
6695
- $dbg_log$$module$src$log$$("BAR" + $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ + " exists=" + ($bar$jscomp$1$$ ? "y" : "n") + " changed from " + $h$$module$src$lib$$($space$jscomp$3$$[$addr$jscomp$28_address$jscomp$21$$ >> 2]) + " to " + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0) + " dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") ", 2048);
6696
- $bar$jscomp$1$$ ? ($dbg_assert$$module$src$log$$(!($bar$jscomp$1$$.size & $bar$jscomp$1$$.size - 1), "bar size should be power of 2"), $bdf$jscomp$3_space_addr$$ = $addr$jscomp$28_address$jscomp$21$$ >> 2, $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ = $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] & 1, -1 === ($written$jscomp$2$$ | 3 | $bar$jscomp$1$$.size - 1) ? ($written$jscomp$2$$ = ~($bar$jscomp$1$$.size - 1) | $device$jscomp$8_from$jscomp$1_type$jscomp$153$$, 0 === $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ &&
6694
+ if (16 <= $addr$jscomp$27_address$jscomp$21$$ && 40 > $addr$jscomp$27_address$jscomp$21$$) {
6695
+ var $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ = $addr$jscomp$27_address$jscomp$21$$ - 16 >> 2, $bar$jscomp$1$$ = $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_bars[$bar_nr$jscomp$1_original_bar_to$jscomp$1$$];
6696
+ $dbg_log$$module$src$log$$("BAR" + $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ + " exists=" + ($bar$jscomp$1$$ ? "y" : "n") + " changed from " + $h$$module$src$lib$$($space$jscomp$3$$[$addr$jscomp$27_address$jscomp$21$$ >> 2]) + " to " + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0) + " dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") ", 2048);
6697
+ $bar$jscomp$1$$ ? ($dbg_assert$$module$src$log$$(!($bar$jscomp$1$$.size & $bar$jscomp$1$$.size - 1), "bar size should be power of 2"), $bdf$jscomp$3_space_addr$$ = $addr$jscomp$27_address$jscomp$21$$ >> 2, $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ = $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] & 1, -1 === ($written$jscomp$2$$ | 3 | $bar$jscomp$1$$.size - 1) ? ($written$jscomp$2$$ = ~($bar$jscomp$1$$.size - 1) | $device$jscomp$8_from$jscomp$1_type$jscomp$153$$, 0 === $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ &&
6697
6698
  ($space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] = $written$jscomp$2$$)) : 0 === $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ && ($bar_nr$jscomp$1_original_bar_to$jscomp$1$$ = $bar$jscomp$1$$.original_bar, ($written$jscomp$2$$ & -16) !== ($bar_nr$jscomp$1_original_bar_to$jscomp$1$$ & -16) && $dbg_log$$module$src$log$$("Warning: Changing memory bar not supported, ignored", 2048), $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] = $bar_nr$jscomp$1_original_bar_to$jscomp$1$$), 1 === $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ &&
6698
6699
  ($dbg_assert$$module$src$log$$(1 === $device$jscomp$8_from$jscomp$1_type$jscomp$153$$), $device$jscomp$8_from$jscomp$1_type$jscomp$153$$ = $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] & 65534, $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ = $written$jscomp$2$$ & 65534, $dbg_log$$module$src$log$$("io bar changed from " + $h$$module$src$lib$$($device$jscomp$8_from$jscomp$1_type$jscomp$153$$ >>> 0, 8) + " to " + $h$$module$src$lib$$($bar_nr$jscomp$1_original_bar_to$jscomp$1$$ >>> 0, 8) + " size=" +
6699
- $bar$jscomp$1$$.size, 2048), this.set_io_bars($bar$jscomp$1$$, $device$jscomp$8_from$jscomp$1_type$jscomp$153$$, $bar_nr$jscomp$1_original_bar_to$jscomp$1$$), $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] = $written$jscomp$2$$ | 1)) : $space$jscomp$3$$[$addr$jscomp$28_address$jscomp$21$$ >> 2] = 0;
6700
- $dbg_log$$module$src$log$$("BAR effective value: " + $h$$module$src$lib$$($space$jscomp$3$$[$addr$jscomp$28_address$jscomp$21$$ >> 2] >>> 0), 2048);
6700
+ $bar$jscomp$1$$.size, 2048), this.set_io_bars($bar$jscomp$1$$, $device$jscomp$8_from$jscomp$1_type$jscomp$153$$, $bar_nr$jscomp$1_original_bar_to$jscomp$1$$), $space$jscomp$3$$[$bdf$jscomp$3_space_addr$$] = $written$jscomp$2$$ | 1)) : $space$jscomp$3$$[$addr$jscomp$27_address$jscomp$21$$ >> 2] = 0;
6701
+ $dbg_log$$module$src$log$$("BAR effective value: " + $h$$module$src$lib$$($space$jscomp$3$$[$addr$jscomp$27_address$jscomp$21$$ >> 2] >>> 0), 2048);
6701
6702
  } else {
6702
- 48 === $addr$jscomp$28_address$jscomp$21$$ ? ($dbg_log$$module$src$log$$("PCI write rom address dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048), $space$jscomp$3$$[$addr$jscomp$28_address$jscomp$21$$ >> 2] = $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_size ? -1 === ($written$jscomp$2$$ | 2047) ? -$device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_size |
6703
- 0 : $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_address | 0 : 0) : 4 === $addr$jscomp$28_address$jscomp$21$$ ? $dbg_log$$module$src$log$$("PCI write dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$28_address$jscomp$21$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048) : ($dbg_log$$module$src$log$$("PCI write dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >>
6704
- 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$28_address$jscomp$21$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048), $space$jscomp$3$$[$addr$jscomp$28_address$jscomp$21$$ >>> 2] = $written$jscomp$2$$);
6703
+ 48 === $addr$jscomp$27_address$jscomp$21$$ ? ($dbg_log$$module$src$log$$("PCI write rom address dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048), $space$jscomp$3$$[$addr$jscomp$27_address$jscomp$21$$ >> 2] = $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_size ? -1 === ($written$jscomp$2$$ | 2047) ? -$device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_size |
6704
+ 0 : $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.pci_rom_address | 0 : 0) : 4 === $addr$jscomp$27_address$jscomp$21$$ ? $dbg_log$$module$src$log$$("PCI write dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >> 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$27_address$jscomp$21$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048) : ($dbg_log$$module$src$log$$("PCI write dev=" + $h$$module$src$lib$$($bdf$jscomp$3_space_addr$$ >>
6705
+ 3, 2) + " (" + $device$jscomp$8_from$jscomp$1_type$jscomp$153$$.name + ") addr=" + $h$$module$src$lib$$($addr$jscomp$27_address$jscomp$21$$, 4) + " value=" + $h$$module$src$lib$$($written$jscomp$2$$ >>> 0, 8), 2048), $space$jscomp$3$$[$addr$jscomp$27_address$jscomp$21$$ >>> 2] = $written$jscomp$2$$);
6705
6706
  }
6706
6707
  }
6707
6708
  };
@@ -8209,7 +8210,7 @@ $FloppyDrive$$module$src$floppy$$.prototype.eject_disk = function() {
8209
8210
  this.buffer = null;
8210
8211
  };
8211
8212
  $FloppyDrive$$module$src$floppy$$.prototype.get_buffer = function() {
8212
- return this.buffer ? this.buffer.buffer : null;
8213
+ return this.buffer ? new Uint8Array(this.buffer.buffer) : null;
8213
8214
  };
8214
8215
  $FloppyDrive$$module$src$floppy$$.prototype.chs2lba = function($track$jscomp$6$$, $head$jscomp$1$$, $sect$jscomp$1$$) {
8215
8216
  return ($track$jscomp$6$$ * this.max_head + $head$jscomp$1$$) * this.max_sect + $sect$jscomp$1$$ - 1;
@@ -8912,9 +8913,9 @@ $IDEInterface$$module$src$ide$$.prototype.do_atapi_dma = function() {
8912
8913
  } else {
8913
8914
  var $prdt_start$$ = this.channel.prdt_addr, $offset$jscomp$71$$ = 0, $data$jscomp$199$$ = this.data;
8914
8915
  do {
8915
- var $addr$jscomp$29$$ = this.cpu.read32s($prdt_start$$), $count$jscomp$60$$ = this.cpu.read16($prdt_start$$ + 4), $end$jscomp$20$$ = this.cpu.read8($prdt_start$$ + 7) & 128;
8916
+ var $addr$jscomp$28$$ = this.cpu.read32s($prdt_start$$), $count$jscomp$60$$ = this.cpu.read16($prdt_start$$ + 4), $end$jscomp$20$$ = this.cpu.read8($prdt_start$$ + 7) & 128;
8916
8917
  $count$jscomp$60$$ || ($count$jscomp$60$$ = 65536);
8917
- this.cpu.write_blob($data$jscomp$199$$.subarray($offset$jscomp$71$$, Math.min($offset$jscomp$71$$ + $count$jscomp$60$$, this.data_length)), $addr$jscomp$29$$);
8918
+ this.cpu.write_blob($data$jscomp$199$$.subarray($offset$jscomp$71$$, Math.min($offset$jscomp$71$$ + $count$jscomp$60$$, this.data_length)), $addr$jscomp$28$$);
8918
8919
  $offset$jscomp$71$$ += $count$jscomp$60$$;
8919
8920
  $prdt_start$$ += 8;
8920
8921
  if ($offset$jscomp$71$$ >= this.data_length && !$end$jscomp$20$$) {
@@ -9393,7 +9394,7 @@ function $VGAScreen$$module$src$vga$$($cpu$jscomp$24$$, $bus$jscomp$26_io$jscomp
9393
9394
  this.plane2 = new Uint8Array(this.vga_memory.buffer, 131072, 65536);
9394
9395
  this.plane3 = new Uint8Array(this.vga_memory.buffer, 196608, 65536);
9395
9396
  this.pixel_buffer = new Uint8Array(524288);
9396
- $bus$jscomp$26_io$jscomp$4$$.mmap_register(655360, 131072, $addr$jscomp$30$$ => this.vga_memory_read($addr$jscomp$30$$), ($addr$jscomp$31$$, $value$jscomp$168$$) => this.vga_memory_write($addr$jscomp$31$$, $value$jscomp$168$$), );
9397
+ $bus$jscomp$26_io$jscomp$4$$.mmap_register(655360, 131072, $addr$jscomp$29$$ => this.vga_memory_read($addr$jscomp$29$$), ($addr$jscomp$30$$, $value$jscomp$168$$) => this.vga_memory_write($addr$jscomp$30$$, $value$jscomp$168$$), );
9397
9398
  $cpu$jscomp$24$$.devices.pci.register_device(this);
9398
9399
  }
9399
9400
  $VGAScreen$$module$src$vga$$.prototype.get_state = function() {
@@ -9533,38 +9534,38 @@ $VGAScreen$$module$src$vga$$.prototype.set_state = function($state$jscomp$53$$)
9533
9534
  this.graphical_mode ? (this.screen_height = this.screen_width = 0, this.svga_enabled ? (this.set_size_graphical(this.svga_width, this.svga_height, this.svga_width, this.svga_height, this.svga_bpp), this.update_layers()) : (this.update_vga_size(), this.update_layers(), this.complete_replot())) : (this.set_font_bitmap(!0), this.set_size_text(this.max_cols, this.max_rows), this.set_font_page(), this.update_cursor_scanline(), this.update_cursor());
9534
9535
  this.complete_redraw();
9535
9536
  };
9536
- $VGAScreen$$module$src$vga$$.prototype.vga_memory_read = function($addr$jscomp$32$$) {
9537
+ $VGAScreen$$module$src$vga$$.prototype.vga_memory_read = function($addr$jscomp$31$$) {
9537
9538
  if (this.svga_enabled) {
9538
- return this.cpu.read8(($addr$jscomp$32$$ - 655360 | this.svga_bank_offset) + 3758096384 | 0);
9539
+ return this.cpu.read8(($addr$jscomp$31$$ - 655360 | this.svga_bank_offset) + 3758096384 | 0);
9539
9540
  }
9540
9541
  var $memory_space_select_plane_reading$$ = this.miscellaneous_graphics_register >> 2 & 3;
9541
- $addr$jscomp$32$$ -= $VGA_HOST_MEMORY_SPACE_START$$module$src$vga$$[$memory_space_select_plane_reading$$];
9542
- if (0 > $addr$jscomp$32$$ || $addr$jscomp$32$$ >= $VGA_HOST_MEMORY_SPACE_SIZE$$module$src$vga$$[$memory_space_select_plane_reading$$]) {
9543
- return $dbg_log$$module$src$log$$("vga read outside memory space: addr:" + $h$$module$src$lib$$($addr$jscomp$32$$ >>> 0), 256), 0;
9544
- }
9545
- this.latch_dword = this.plane0[$addr$jscomp$32$$];
9546
- this.latch_dword |= this.plane1[$addr$jscomp$32$$] << 8;
9547
- this.latch_dword |= this.plane2[$addr$jscomp$32$$] << 16;
9548
- this.latch_dword |= this.plane3[$addr$jscomp$32$$] << 24;
9542
+ $addr$jscomp$31$$ -= $VGA_HOST_MEMORY_SPACE_START$$module$src$vga$$[$memory_space_select_plane_reading$$];
9543
+ if (0 > $addr$jscomp$31$$ || $addr$jscomp$31$$ >= $VGA_HOST_MEMORY_SPACE_SIZE$$module$src$vga$$[$memory_space_select_plane_reading$$]) {
9544
+ return $dbg_log$$module$src$log$$("vga read outside memory space: addr:" + $h$$module$src$lib$$($addr$jscomp$31$$ >>> 0), 256), 0;
9545
+ }
9546
+ this.latch_dword = this.plane0[$addr$jscomp$31$$];
9547
+ this.latch_dword |= this.plane1[$addr$jscomp$31$$] << 8;
9548
+ this.latch_dword |= this.plane2[$addr$jscomp$31$$] << 16;
9549
+ this.latch_dword |= this.plane3[$addr$jscomp$31$$] << 24;
9549
9550
  if (this.planar_mode & 8) {
9550
- return $memory_space_select_plane_reading$$ = 255, this.color_dont_care & 1 && ($memory_space_select_plane_reading$$ &= this.plane0[$addr$jscomp$32$$] ^ ~(this.color_compare & 1 ? 255 : 0)), this.color_dont_care & 2 && ($memory_space_select_plane_reading$$ &= this.plane1[$addr$jscomp$32$$] ^ ~(this.color_compare & 2 ? 255 : 0)), this.color_dont_care & 4 && ($memory_space_select_plane_reading$$ &= this.plane2[$addr$jscomp$32$$] ^ ~(this.color_compare & 4 ? 255 : 0)), this.color_dont_care & 8 &&
9551
- ($memory_space_select_plane_reading$$ &= this.plane3[$addr$jscomp$32$$] ^ ~(this.color_compare & 8 ? 255 : 0)), $memory_space_select_plane_reading$$;
9551
+ return $memory_space_select_plane_reading$$ = 255, this.color_dont_care & 1 && ($memory_space_select_plane_reading$$ &= this.plane0[$addr$jscomp$31$$] ^ ~(this.color_compare & 1 ? 255 : 0)), this.color_dont_care & 2 && ($memory_space_select_plane_reading$$ &= this.plane1[$addr$jscomp$31$$] ^ ~(this.color_compare & 2 ? 255 : 0)), this.color_dont_care & 4 && ($memory_space_select_plane_reading$$ &= this.plane2[$addr$jscomp$31$$] ^ ~(this.color_compare & 4 ? 255 : 0)), this.color_dont_care & 8 &&
9552
+ ($memory_space_select_plane_reading$$ &= this.plane3[$addr$jscomp$31$$] ^ ~(this.color_compare & 8 ? 255 : 0)), $memory_space_select_plane_reading$$;
9552
9553
  }
9553
9554
  $memory_space_select_plane_reading$$ = this.plane_read;
9554
- this.graphical_mode ? this.sequencer_memory_mode & 8 ? ($memory_space_select_plane_reading$$ = $addr$jscomp$32$$ & 3, $addr$jscomp$32$$ &= -4) : this.planar_mode & 16 && ($memory_space_select_plane_reading$$ = $addr$jscomp$32$$ & 1, $addr$jscomp$32$$ &= -2) : $memory_space_select_plane_reading$$ &= 3;
9555
- return this.vga_memory[$memory_space_select_plane_reading$$ << 16 | $addr$jscomp$32$$];
9555
+ this.graphical_mode ? this.sequencer_memory_mode & 8 ? ($memory_space_select_plane_reading$$ = $addr$jscomp$31$$ & 3, $addr$jscomp$31$$ &= -4) : this.planar_mode & 16 && ($memory_space_select_plane_reading$$ = $addr$jscomp$31$$ & 1, $addr$jscomp$31$$ &= -2) : $memory_space_select_plane_reading$$ &= 3;
9556
+ return this.vga_memory[$memory_space_select_plane_reading$$ << 16 | $addr$jscomp$31$$];
9556
9557
  };
9557
- $VGAScreen$$module$src$vga$$.prototype.vga_memory_write = function($addr$jscomp$33$$, $value$jscomp$169$$) {
9558
+ $VGAScreen$$module$src$vga$$.prototype.vga_memory_write = function($addr$jscomp$32$$, $value$jscomp$169$$) {
9558
9559
  if (this.svga_enabled) {
9559
- this.cpu.write8(($addr$jscomp$33$$ - 655360 | this.svga_bank_offset) + 3758096384 | 0, $value$jscomp$169$$);
9560
+ this.cpu.write8(($addr$jscomp$32$$ - 655360 | this.svga_bank_offset) + 3758096384 | 0, $value$jscomp$169$$);
9560
9561
  } else {
9561
9562
  var $memory_space_select$jscomp$1$$ = this.miscellaneous_graphics_register >> 2 & 3;
9562
- $addr$jscomp$33$$ -= $VGA_HOST_MEMORY_SPACE_START$$module$src$vga$$[$memory_space_select$jscomp$1$$];
9563
- 0 > $addr$jscomp$33$$ || $addr$jscomp$33$$ >= $VGA_HOST_MEMORY_SPACE_SIZE$$module$src$vga$$[$memory_space_select$jscomp$1$$] ? $dbg_log$$module$src$log$$("vga write outside memory space: addr:" + $h$$module$src$lib$$($addr$jscomp$33$$ >>> 0) + ", value:" + $h$$module$src$lib$$($value$jscomp$169$$), 256) : this.graphical_mode ? this.vga_memory_write_graphical($addr$jscomp$33$$, $value$jscomp$169$$) : this.plane_write_bm & 3 ? this.vga_memory_write_text_mode($addr$jscomp$33$$, $value$jscomp$169$$) :
9564
- this.plane_write_bm & 4 && (this.plane2[$addr$jscomp$33$$] = $value$jscomp$169$$);
9563
+ $addr$jscomp$32$$ -= $VGA_HOST_MEMORY_SPACE_START$$module$src$vga$$[$memory_space_select$jscomp$1$$];
9564
+ 0 > $addr$jscomp$32$$ || $addr$jscomp$32$$ >= $VGA_HOST_MEMORY_SPACE_SIZE$$module$src$vga$$[$memory_space_select$jscomp$1$$] ? $dbg_log$$module$src$log$$("vga write outside memory space: addr:" + $h$$module$src$lib$$($addr$jscomp$32$$ >>> 0) + ", value:" + $h$$module$src$lib$$($value$jscomp$169$$), 256) : this.graphical_mode ? this.vga_memory_write_graphical($addr$jscomp$32$$, $value$jscomp$169$$) : this.plane_write_bm & 3 ? this.vga_memory_write_text_mode($addr$jscomp$32$$, $value$jscomp$169$$) :
9565
+ this.plane_write_bm & 4 && (this.plane2[$addr$jscomp$32$$] = $value$jscomp$169$$);
9565
9566
  }
9566
9567
  };
9567
- $VGAScreen$$module$src$vga$$.prototype.vga_memory_write_graphical = function($addr$jscomp$34_pixel_addr$$, $plane_select_value$jscomp$170$$) {
9568
+ $VGAScreen$$module$src$vga$$.prototype.vga_memory_write_graphical = function($addr$jscomp$33_pixel_addr$$, $plane_select_value$jscomp$170$$) {
9568
9569
  var $write_mode$$ = this.planar_mode & 3, $bitmask$$ = this.apply_feed(this.planar_bitmap), $setreset_dword$$ = this.apply_expand(this.planar_setreset), $setreset_enable_dword$$ = this.apply_expand(this.planar_setreset_enable);
9569
9570
  switch($write_mode$$) {
9570
9571
  case 0:
@@ -9588,20 +9589,20 @@ $VGAScreen$$module$src$vga$$.prototype.vga_memory_write_graphical = function($ad
9588
9589
  $plane_select_value$jscomp$170$$ = 15;
9589
9590
  switch(this.sequencer_memory_mode & 12) {
9590
9591
  case 0:
9591
- $plane_select_value$jscomp$170$$ = 5 << ($addr$jscomp$34_pixel_addr$$ & 1);
9592
- $addr$jscomp$34_pixel_addr$$ &= -2;
9592
+ $plane_select_value$jscomp$170$$ = 5 << ($addr$jscomp$33_pixel_addr$$ & 1);
9593
+ $addr$jscomp$33_pixel_addr$$ &= -2;
9593
9594
  break;
9594
9595
  case 8:
9595
9596
  case 12:
9596
- $plane_select_value$jscomp$170$$ = 1 << ($addr$jscomp$34_pixel_addr$$ & 3), $addr$jscomp$34_pixel_addr$$ &= -4;
9597
+ $plane_select_value$jscomp$170$$ = 1 << ($addr$jscomp$33_pixel_addr$$ & 3), $addr$jscomp$33_pixel_addr$$ &= -4;
9597
9598
  }
9598
9599
  $plane_select_value$jscomp$170$$ &= this.plane_write_bm;
9599
- $plane_select_value$jscomp$170$$ & 1 && (this.plane0[$addr$jscomp$34_pixel_addr$$] = $plane_dword$$ >> 0 & 255);
9600
- $plane_select_value$jscomp$170$$ & 2 && (this.plane1[$addr$jscomp$34_pixel_addr$$] = $plane_dword$$ >> 8 & 255);
9601
- $plane_select_value$jscomp$170$$ & 4 && (this.plane2[$addr$jscomp$34_pixel_addr$$] = $plane_dword$$ >> 16 & 255);
9602
- $plane_select_value$jscomp$170$$ & 8 && (this.plane3[$addr$jscomp$34_pixel_addr$$] = $plane_dword$$ >> 24 & 255);
9603
- $addr$jscomp$34_pixel_addr$$ = this.vga_addr_to_pixel($addr$jscomp$34_pixel_addr$$);
9604
- this.partial_replot($addr$jscomp$34_pixel_addr$$, $addr$jscomp$34_pixel_addr$$ + 7);
9600
+ $plane_select_value$jscomp$170$$ & 1 && (this.plane0[$addr$jscomp$33_pixel_addr$$] = $plane_dword$$ >> 0 & 255);
9601
+ $plane_select_value$jscomp$170$$ & 2 && (this.plane1[$addr$jscomp$33_pixel_addr$$] = $plane_dword$$ >> 8 & 255);
9602
+ $plane_select_value$jscomp$170$$ & 4 && (this.plane2[$addr$jscomp$33_pixel_addr$$] = $plane_dword$$ >> 16 & 255);
9603
+ $plane_select_value$jscomp$170$$ & 8 && (this.plane3[$addr$jscomp$33_pixel_addr$$] = $plane_dword$$ >> 24 & 255);
9604
+ $addr$jscomp$33_pixel_addr$$ = this.vga_addr_to_pixel($addr$jscomp$33_pixel_addr$$);
9605
+ this.partial_replot($addr$jscomp$33_pixel_addr$$, $addr$jscomp$33_pixel_addr$$ + 7);
9605
9606
  };
9606
9607
  $VGAScreen$$module$src$vga$$.prototype.apply_feed = function($data_byte$jscomp$27$$) {
9607
9608
  return $data_byte$jscomp$27$$ | $data_byte$jscomp$27$$ << 8 | $data_byte$jscomp$27$$ << 16 | $data_byte$jscomp$27$$ << 24;
@@ -9632,38 +9633,38 @@ $VGAScreen$$module$src$vga$$.prototype.apply_bitmask = function($data_dword$jsco
9632
9633
  };
9633
9634
  $VGAScreen$$module$src$vga$$.prototype.text_mode_redraw = function() {
9634
9635
  const $split_screen_row$$ = this.scan_line_to_screen_row(this.line_compare), $row_offset$$ = Math.max(0, 2 * (2 * this.offset_register - this.max_cols)), $blink_enabled$$ = this.attribute_mode & 8, $fg_color_mask$$ = this.font_page_ab_enabled ? 7 : 15, $bg_color_mask$$ = $blink_enabled$$ ? 7 : 15, $FLAG_BLINKING$jscomp$1$$ = this.screen.FLAG_BLINKING, $FLAG_FONT_PAGE_B$jscomp$1$$ = this.screen.FLAG_FONT_PAGE_B;
9635
- let $addr$jscomp$35$$ = this.start_address << 1;
9636
+ let $addr$jscomp$34$$ = this.start_address << 1;
9636
9637
  for (let $row$jscomp$7$$ = 0; $row$jscomp$7$$ < this.max_rows; $row$jscomp$7$$++) {
9637
- $row$jscomp$7$$ === $split_screen_row$$ && ($addr$jscomp$35$$ = 0);
9638
+ $row$jscomp$7$$ === $split_screen_row$$ && ($addr$jscomp$34$$ = 0);
9638
9639
  for (let $col$jscomp$4$$ = 0; $col$jscomp$4$$ < this.max_cols; $col$jscomp$4$$++) {
9639
- const $chr$jscomp$12$$ = this.vga_memory[$addr$jscomp$35$$], $color$jscomp$2$$ = this.vga_memory[$addr$jscomp$35$$ | 1], $flags$jscomp$13$$ = ($blink_enabled$$ && $color$jscomp$2$$ & 128 ? $FLAG_BLINKING$jscomp$1$$ : 0) | (!this.font_page_ab_enabled || $color$jscomp$2$$ & 8 ? 0 : $FLAG_FONT_PAGE_B$jscomp$1$$);
9640
+ const $chr$jscomp$12$$ = this.vga_memory[$addr$jscomp$34$$], $color$jscomp$2$$ = this.vga_memory[$addr$jscomp$34$$ | 1], $flags$jscomp$13$$ = ($blink_enabled$$ && $color$jscomp$2$$ & 128 ? $FLAG_BLINKING$jscomp$1$$ : 0) | (!this.font_page_ab_enabled || $color$jscomp$2$$ & 8 ? 0 : $FLAG_FONT_PAGE_B$jscomp$1$$);
9640
9641
  this.bus.send("screen-put-char", [$row$jscomp$7$$, $col$jscomp$4$$, $chr$jscomp$12$$]);
9641
9642
  this.screen.put_char($row$jscomp$7$$, $col$jscomp$4$$, $chr$jscomp$12$$, $flags$jscomp$13$$, this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$2$$ >> 4 & $bg_color_mask$$]], this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$2$$ & $fg_color_mask$$]]);
9642
- $addr$jscomp$35$$ += 2;
9643
+ $addr$jscomp$34$$ += 2;
9643
9644
  }
9644
- $addr$jscomp$35$$ += $row_offset$$;
9645
+ $addr$jscomp$34$$ += $row_offset$$;
9645
9646
  }
9646
9647
  };
9647
- $VGAScreen$$module$src$vga$$.prototype.vga_memory_write_text_mode = function($addr$jscomp$36_flags$jscomp$14$$, $chr$jscomp$13_value$jscomp$171$$) {
9648
- this.vga_memory[$addr$jscomp$36_flags$jscomp$14$$] = $chr$jscomp$13_value$jscomp$171$$;
9648
+ $VGAScreen$$module$src$vga$$.prototype.vga_memory_write_text_mode = function($addr$jscomp$35_flags$jscomp$14$$, $chr$jscomp$13_value$jscomp$171$$) {
9649
+ this.vga_memory[$addr$jscomp$35_flags$jscomp$14$$] = $chr$jscomp$13_value$jscomp$171$$;
9649
9650
  var $col$jscomp$5_max_cols$$ = Math.max(this.max_cols, 2 * this.offset_register);
9650
9651
  let $row$jscomp$8$$;
9651
- if ($addr$jscomp$36_flags$jscomp$14$$ >> 1 >= this.start_address) {
9652
- var $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = ($addr$jscomp$36_flags$jscomp$14$$ >> 1) - this.start_address;
9652
+ if ($addr$jscomp$35_flags$jscomp$14$$ >> 1 >= this.start_address) {
9653
+ var $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = ($addr$jscomp$35_flags$jscomp$14$$ >> 1) - this.start_address;
9653
9654
  $row$jscomp$8$$ = $color$jscomp$3_memory_start_memory_start$jscomp$1$$ / $col$jscomp$5_max_cols$$ | 0;
9654
9655
  $col$jscomp$5_max_cols$$ = $color$jscomp$3_memory_start_memory_start$jscomp$1$$ % $col$jscomp$5_max_cols$$;
9655
9656
  } else {
9656
- $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = $addr$jscomp$36_flags$jscomp$14$$ >> 1, $row$jscomp$8$$ = ($color$jscomp$3_memory_start_memory_start$jscomp$1$$ / $col$jscomp$5_max_cols$$ | 0) + this.scan_line_to_screen_row(this.line_compare), $col$jscomp$5_max_cols$$ = $color$jscomp$3_memory_start_memory_start$jscomp$1$$ % $col$jscomp$5_max_cols$$;
9657
+ $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = $addr$jscomp$35_flags$jscomp$14$$ >> 1, $row$jscomp$8$$ = ($color$jscomp$3_memory_start_memory_start$jscomp$1$$ / $col$jscomp$5_max_cols$$ | 0) + this.scan_line_to_screen_row(this.line_compare), $col$jscomp$5_max_cols$$ = $color$jscomp$3_memory_start_memory_start$jscomp$1$$ % $col$jscomp$5_max_cols$$;
9657
9658
  }
9658
9659
  $dbg_assert$$module$src$log$$(0 <= $row$jscomp$8$$ && 0 <= $col$jscomp$5_max_cols$$);
9659
9660
  if (!($col$jscomp$5_max_cols$$ >= this.max_cols || $row$jscomp$8$$ >= this.max_rows)) {
9660
- $addr$jscomp$36_flags$jscomp$14$$ & 1 ? ($color$jscomp$3_memory_start_memory_start$jscomp$1$$ = $chr$jscomp$13_value$jscomp$171$$, $chr$jscomp$13_value$jscomp$171$$ = this.vga_memory[$addr$jscomp$36_flags$jscomp$14$$ & -2]) : $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = this.vga_memory[$addr$jscomp$36_flags$jscomp$14$$ | 1];
9661
+ $addr$jscomp$35_flags$jscomp$14$$ & 1 ? ($color$jscomp$3_memory_start_memory_start$jscomp$1$$ = $chr$jscomp$13_value$jscomp$171$$, $chr$jscomp$13_value$jscomp$171$$ = this.vga_memory[$addr$jscomp$35_flags$jscomp$14$$ & -2]) : $color$jscomp$3_memory_start_memory_start$jscomp$1$$ = this.vga_memory[$addr$jscomp$35_flags$jscomp$14$$ | 1];
9661
9662
  var $bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$ = this.attribute_mode & 8;
9662
- $addr$jscomp$36_flags$jscomp$14$$ = ($bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$ && $color$jscomp$3_memory_start_memory_start$jscomp$1$$ & 128 ? this.screen.FLAG_BLINKING : 0) | (!this.font_page_ab_enabled || $color$jscomp$3_memory_start_memory_start$jscomp$1$$ & 8 ? 0 : this.screen.FLAG_FONT_PAGE_B);
9663
+ $addr$jscomp$35_flags$jscomp$14$$ = ($bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$ && $color$jscomp$3_memory_start_memory_start$jscomp$1$$ & 128 ? this.screen.FLAG_BLINKING : 0) | (!this.font_page_ab_enabled || $color$jscomp$3_memory_start_memory_start$jscomp$1$$ & 8 ? 0 : this.screen.FLAG_FONT_PAGE_B);
9663
9664
  var $fg_color_mask$jscomp$1$$ = this.font_page_ab_enabled ? 7 : 15;
9664
9665
  $bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$ = $bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$ ? 7 : 15;
9665
9666
  this.bus.send("screen-put-char", [$row$jscomp$8$$, $col$jscomp$5_max_cols$$, $chr$jscomp$13_value$jscomp$171$$]);
9666
- this.screen.put_char($row$jscomp$8$$, $col$jscomp$5_max_cols$$, $chr$jscomp$13_value$jscomp$171$$, $addr$jscomp$36_flags$jscomp$14$$, this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$3_memory_start_memory_start$jscomp$1$$ >> 4 & $bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$]], this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$3_memory_start_memory_start$jscomp$1$$ & $fg_color_mask$jscomp$1$$]]);
9667
+ this.screen.put_char($row$jscomp$8$$, $col$jscomp$5_max_cols$$, $chr$jscomp$13_value$jscomp$171$$, $addr$jscomp$35_flags$jscomp$14$$, this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$3_memory_start_memory_start$jscomp$1$$ >> 4 & $bg_color_mask$jscomp$1_blink_enabled$jscomp$1$$]], this.vga256_palette[this.dac_mask & this.dac_map[$color$jscomp$3_memory_start_memory_start$jscomp$1$$ & $fg_color_mask$jscomp$1$$]]);
9667
9668
  }
9668
9669
  };
9669
9670
  $VGAScreen$$module$src$vga$$.prototype.update_cursor = function() {
@@ -9709,27 +9710,27 @@ $VGAScreen$$module$src$vga$$.prototype.vga_addr_shift_count = function() {
9709
9710
  $shift_count$$ -= this.attribute_mode & 64;
9710
9711
  return $shift_count$$ >>> 6;
9711
9712
  };
9712
- $VGAScreen$$module$src$vga$$.prototype.vga_addr_to_pixel = function($addr$jscomp$37$$) {
9713
+ $VGAScreen$$module$src$vga$$.prototype.vga_addr_to_pixel = function($addr$jscomp$36$$) {
9713
9714
  var $shift_count$jscomp$1$$ = this.vga_addr_shift_count();
9714
9715
  if (~this.crtc_mode & 3) {
9715
- var $col$jscomp$7_pixel_addr$jscomp$1$$ = $addr$jscomp$37$$ - this.start_address;
9716
+ var $col$jscomp$7_pixel_addr$jscomp$1$$ = $addr$jscomp$36$$ - this.start_address;
9716
9717
  $col$jscomp$7_pixel_addr$jscomp$1$$ &= this.crtc_mode << 13 | -24577;
9717
9718
  $col$jscomp$7_pixel_addr$jscomp$1$$ <<= $shift_count$jscomp$1$$;
9718
9719
  var $row$jscomp$10$$ = $col$jscomp$7_pixel_addr$jscomp$1$$ / this.virtual_width | 0;
9719
9720
  $col$jscomp$7_pixel_addr$jscomp$1$$ %= this.virtual_width;
9720
9721
  switch(this.crtc_mode & 3) {
9721
9722
  case 2:
9722
- $row$jscomp$10$$ = $row$jscomp$10$$ << 1 | $addr$jscomp$37$$ >> 13 & 1;
9723
+ $row$jscomp$10$$ = $row$jscomp$10$$ << 1 | $addr$jscomp$36$$ >> 13 & 1;
9723
9724
  break;
9724
9725
  case 1:
9725
- $row$jscomp$10$$ = $row$jscomp$10$$ << 1 | $addr$jscomp$37$$ >> 14 & 1;
9726
+ $row$jscomp$10$$ = $row$jscomp$10$$ << 1 | $addr$jscomp$36$$ >> 14 & 1;
9726
9727
  break;
9727
9728
  case 0:
9728
- $row$jscomp$10$$ = $row$jscomp$10$$ << 2 | $addr$jscomp$37$$ >> 13 & 3;
9729
+ $row$jscomp$10$$ = $row$jscomp$10$$ << 2 | $addr$jscomp$36$$ >> 13 & 3;
9729
9730
  }
9730
9731
  return $row$jscomp$10$$ * this.virtual_width + $col$jscomp$7_pixel_addr$jscomp$1$$ + (this.start_address << $shift_count$jscomp$1$$);
9731
9732
  }
9732
- return $addr$jscomp$37$$ << $shift_count$jscomp$1$$;
9733
+ return $addr$jscomp$36$$ << $shift_count$jscomp$1$$;
9733
9734
  };
9734
9735
  $VGAScreen$$module$src$vga$$.prototype.scan_line_to_screen_row = function($scan_line$$) {
9735
9736
  this.max_scan_line & 128 && ($scan_line$$ >>>= 1);
@@ -10307,27 +10308,27 @@ $VGAScreen$$module$src$vga$$.prototype.svga_register_read = function($n$jscomp$1
10307
10308
  };
10308
10309
  $VGAScreen$$module$src$vga$$.prototype.vga_replot = function() {
10309
10310
  for (var $pixel_addr$jscomp$2_start$jscomp$40$$ = this.diff_plot_min & -16, $end$jscomp$24$$ = Math.min(this.diff_plot_max | 15, 524287), $addr_shift$$ = this.vga_addr_shift_count(), $addr_substitution$$ = ~this.crtc_mode & 3, $shift_mode$$ = this.planar_mode & 96, $pel_width$$ = this.attribute_mode & 64; $pixel_addr$jscomp$2_start$jscomp$40$$ <= $end$jscomp$24$$;) {
10310
- var $addr$jscomp$38_shift_loads$$ = $pixel_addr$jscomp$2_start$jscomp$40$$ >>> $addr_shift$$;
10311
+ var $addr$jscomp$37_shift_loads$$ = $pixel_addr$jscomp$2_start$jscomp$40$$ >>> $addr_shift$$;
10311
10312
  if ($addr_substitution$$) {
10312
10313
  var $byte0_j$jscomp$10_row$jscomp$11$$ = $pixel_addr$jscomp$2_start$jscomp$40$$ / this.virtual_width | 0, $byte1_col$jscomp$8$$ = $pixel_addr$jscomp$2_start$jscomp$40$$ - this.virtual_width * $byte0_j$jscomp$10_row$jscomp$11$$;
10313
10314
  switch($addr_substitution$$) {
10314
10315
  case 1:
10315
- $addr$jscomp$38_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 1) << 13;
10316
+ $addr$jscomp$37_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 1) << 13;
10316
10317
  $byte0_j$jscomp$10_row$jscomp$11$$ >>>= 1;
10317
10318
  break;
10318
10319
  case 2:
10319
- $addr$jscomp$38_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 1) << 14;
10320
+ $addr$jscomp$37_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 1) << 14;
10320
10321
  $byte0_j$jscomp$10_row$jscomp$11$$ >>>= 1;
10321
10322
  break;
10322
10323
  case 3:
10323
- $addr$jscomp$38_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 3) << 13, $byte0_j$jscomp$10_row$jscomp$11$$ >>>= 2;
10324
+ $addr$jscomp$37_shift_loads$$ = ($byte0_j$jscomp$10_row$jscomp$11$$ & 3) << 13, $byte0_j$jscomp$10_row$jscomp$11$$ >>>= 2;
10324
10325
  }
10325
- $addr$jscomp$38_shift_loads$$ |= ($byte0_j$jscomp$10_row$jscomp$11$$ * this.virtual_width + $byte1_col$jscomp$8$$ >>> $addr_shift$$) + this.start_address;
10326
+ $addr$jscomp$37_shift_loads$$ |= ($byte0_j$jscomp$10_row$jscomp$11$$ * this.virtual_width + $byte1_col$jscomp$8$$ >>> $addr_shift$$) + this.start_address;
10326
10327
  }
10327
- $byte0_j$jscomp$10_row$jscomp$11$$ = this.plane0[$addr$jscomp$38_shift_loads$$];
10328
- $byte1_col$jscomp$8$$ = this.plane1[$addr$jscomp$38_shift_loads$$];
10329
- var $byte2$$ = this.plane2[$addr$jscomp$38_shift_loads$$], $byte3$$ = this.plane3[$addr$jscomp$38_shift_loads$$];
10330
- $addr$jscomp$38_shift_loads$$ = new Uint8Array(8);
10328
+ $byte0_j$jscomp$10_row$jscomp$11$$ = this.plane0[$addr$jscomp$37_shift_loads$$];
10329
+ $byte1_col$jscomp$8$$ = this.plane1[$addr$jscomp$37_shift_loads$$];
10330
+ var $byte2$$ = this.plane2[$addr$jscomp$37_shift_loads$$], $byte3$$ = this.plane3[$addr$jscomp$37_shift_loads$$];
10331
+ $addr$jscomp$37_shift_loads$$ = new Uint8Array(8);
10331
10332
  switch($shift_mode$$) {
10332
10333
  case 0:
10333
10334
  $byte0_j$jscomp$10_row$jscomp$11$$ <<= 0;
@@ -10335,31 +10336,31 @@ $VGAScreen$$module$src$vga$$.prototype.vga_replot = function() {
10335
10336
  $byte2$$ <<= 2;
10336
10337
  $byte3$$ <<= 3;
10337
10338
  for (var $i$jscomp$86$$ = 7; 0 <= $i$jscomp$86$$; $i$jscomp$86$$--) {
10338
- $addr$jscomp$38_shift_loads$$[7 - $i$jscomp$86$$] = $byte0_j$jscomp$10_row$jscomp$11$$ >> $i$jscomp$86$$ & 1 | $byte1_col$jscomp$8$$ >> $i$jscomp$86$$ & 2 | $byte2$$ >> $i$jscomp$86$$ & 4 | $byte3$$ >> $i$jscomp$86$$ & 8;
10339
+ $addr$jscomp$37_shift_loads$$[7 - $i$jscomp$86$$] = $byte0_j$jscomp$10_row$jscomp$11$$ >> $i$jscomp$86$$ & 1 | $byte1_col$jscomp$8$$ >> $i$jscomp$86$$ & 2 | $byte2$$ >> $i$jscomp$86$$ & 4 | $byte3$$ >> $i$jscomp$86$$ & 8;
10339
10340
  }
10340
10341
  break;
10341
10342
  case 32:
10342
- $addr$jscomp$38_shift_loads$$[0] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 6 & 3 | $byte2$$ >> 4 & 12;
10343
- $addr$jscomp$38_shift_loads$$[1] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 4 & 3 | $byte2$$ >> 2 & 12;
10344
- $addr$jscomp$38_shift_loads$$[2] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 2 & 3 | $byte2$$ >> 0 & 12;
10345
- $addr$jscomp$38_shift_loads$$[3] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 0 & 3 | $byte2$$ << 2 & 12;
10346
- $addr$jscomp$38_shift_loads$$[4] = $byte1_col$jscomp$8$$ >> 6 & 3 | $byte3$$ >> 4 & 12;
10347
- $addr$jscomp$38_shift_loads$$[5] = $byte1_col$jscomp$8$$ >> 4 & 3 | $byte3$$ >> 2 & 12;
10348
- $addr$jscomp$38_shift_loads$$[6] = $byte1_col$jscomp$8$$ >> 2 & 3 | $byte3$$ >> 0 & 12;
10349
- $addr$jscomp$38_shift_loads$$[7] = $byte1_col$jscomp$8$$ >> 0 & 3 | $byte3$$ << 2 & 12;
10343
+ $addr$jscomp$37_shift_loads$$[0] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 6 & 3 | $byte2$$ >> 4 & 12;
10344
+ $addr$jscomp$37_shift_loads$$[1] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 4 & 3 | $byte2$$ >> 2 & 12;
10345
+ $addr$jscomp$37_shift_loads$$[2] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 2 & 3 | $byte2$$ >> 0 & 12;
10346
+ $addr$jscomp$37_shift_loads$$[3] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 0 & 3 | $byte2$$ << 2 & 12;
10347
+ $addr$jscomp$37_shift_loads$$[4] = $byte1_col$jscomp$8$$ >> 6 & 3 | $byte3$$ >> 4 & 12;
10348
+ $addr$jscomp$37_shift_loads$$[5] = $byte1_col$jscomp$8$$ >> 4 & 3 | $byte3$$ >> 2 & 12;
10349
+ $addr$jscomp$37_shift_loads$$[6] = $byte1_col$jscomp$8$$ >> 2 & 3 | $byte3$$ >> 0 & 12;
10350
+ $addr$jscomp$37_shift_loads$$[7] = $byte1_col$jscomp$8$$ >> 0 & 3 | $byte3$$ << 2 & 12;
10350
10351
  break;
10351
10352
  case 64:
10352
10353
  case 96:
10353
- $addr$jscomp$38_shift_loads$$[0] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 4 & 15, $addr$jscomp$38_shift_loads$$[1] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 0 & 15, $addr$jscomp$38_shift_loads$$[2] = $byte1_col$jscomp$8$$ >> 4 & 15, $addr$jscomp$38_shift_loads$$[3] = $byte1_col$jscomp$8$$ >> 0 & 15, $addr$jscomp$38_shift_loads$$[4] = $byte2$$ >> 4 & 15, $addr$jscomp$38_shift_loads$$[5] = $byte2$$ >> 0 & 15, $addr$jscomp$38_shift_loads$$[6] = $byte3$$ >> 4 & 15, $addr$jscomp$38_shift_loads$$[7] =
10354
+ $addr$jscomp$37_shift_loads$$[0] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 4 & 15, $addr$jscomp$37_shift_loads$$[1] = $byte0_j$jscomp$10_row$jscomp$11$$ >> 0 & 15, $addr$jscomp$37_shift_loads$$[2] = $byte1_col$jscomp$8$$ >> 4 & 15, $addr$jscomp$37_shift_loads$$[3] = $byte1_col$jscomp$8$$ >> 0 & 15, $addr$jscomp$37_shift_loads$$[4] = $byte2$$ >> 4 & 15, $addr$jscomp$37_shift_loads$$[5] = $byte2$$ >> 0 & 15, $addr$jscomp$37_shift_loads$$[6] = $byte3$$ >> 4 & 15, $addr$jscomp$37_shift_loads$$[7] =
10354
10355
  $byte3$$ >> 0 & 15;
10355
10356
  }
10356
10357
  if ($pel_width$$) {
10357
10358
  for ($byte0_j$jscomp$10_row$jscomp$11$$ = $i$jscomp$86$$ = 0; 4 > $i$jscomp$86$$; $i$jscomp$86$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++, $byte0_j$jscomp$10_row$jscomp$11$$ += 2) {
10358
- this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$38_shift_loads$$[$byte0_j$jscomp$10_row$jscomp$11$$] << 4 | $addr$jscomp$38_shift_loads$$[$byte0_j$jscomp$10_row$jscomp$11$$ + 1];
10359
+ this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$37_shift_loads$$[$byte0_j$jscomp$10_row$jscomp$11$$] << 4 | $addr$jscomp$37_shift_loads$$[$byte0_j$jscomp$10_row$jscomp$11$$ + 1];
10359
10360
  }
10360
10361
  } else {
10361
10362
  for ($i$jscomp$86$$ = 0; 8 > $i$jscomp$86$$; $i$jscomp$86$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++) {
10362
- this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$38_shift_loads$$[$i$jscomp$86$$];
10363
+ this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$37_shift_loads$$[$i$jscomp$86$$];
10363
10364
  }
10364
10365
  }
10365
10366
  }
@@ -10685,48 +10686,42 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_162_mem8$$, $bzi
10685
10686
  this.seen_code = {};
10686
10687
  this.seen_code_uncompiled = {};
10687
10688
  }
10688
- $CPU$$module$src$cpu$$.prototype.mmap_read8 = function($addr$jscomp$39_value$jscomp$183$$) {
10689
- $addr$jscomp$39_value$jscomp$183$$ = this.memory_map_read8[$addr$jscomp$39_value$jscomp$183$$ >>> 17]($addr$jscomp$39_value$jscomp$183$$);
10690
- $dbg_assert$$module$src$log$$(0 <= $addr$jscomp$39_value$jscomp$183$$ && 255 >= $addr$jscomp$39_value$jscomp$183$$);
10691
- return $addr$jscomp$39_value$jscomp$183$$;
10689
+ $CPU$$module$src$cpu$$.prototype.mmap_read8 = function($addr$jscomp$38_value$jscomp$183$$) {
10690
+ $addr$jscomp$38_value$jscomp$183$$ = this.memory_map_read8[$addr$jscomp$38_value$jscomp$183$$ >>> 17]($addr$jscomp$38_value$jscomp$183$$);
10691
+ $dbg_assert$$module$src$log$$(0 <= $addr$jscomp$38_value$jscomp$183$$ && 255 >= $addr$jscomp$38_value$jscomp$183$$);
10692
+ return $addr$jscomp$38_value$jscomp$183$$;
10692
10693
  };
10693
- $CPU$$module$src$cpu$$.prototype.mmap_write8 = function($addr$jscomp$40$$, $value$jscomp$184$$) {
10694
+ $CPU$$module$src$cpu$$.prototype.mmap_write8 = function($addr$jscomp$39$$, $value$jscomp$184$$) {
10694
10695
  $dbg_assert$$module$src$log$$(0 <= $value$jscomp$184$$ && 255 >= $value$jscomp$184$$);
10695
- this.memory_map_write8[$addr$jscomp$40$$ >>> 17]($addr$jscomp$40$$, $value$jscomp$184$$);
10696
+ this.memory_map_write8[$addr$jscomp$39$$ >>> 17]($addr$jscomp$39$$, $value$jscomp$184$$);
10696
10697
  };
10697
- $CPU$$module$src$cpu$$.prototype.mmap_read16 = function($addr$jscomp$41_value$jscomp$185$$) {
10698
- var $fn$jscomp$17$$ = this.memory_map_read8[$addr$jscomp$41_value$jscomp$185$$ >>> 17];
10699
- $addr$jscomp$41_value$jscomp$185$$ = $fn$jscomp$17$$($addr$jscomp$41_value$jscomp$185$$) | $fn$jscomp$17$$($addr$jscomp$41_value$jscomp$185$$ + 1 | 0) << 8;
10700
- $dbg_assert$$module$src$log$$(0 <= $addr$jscomp$41_value$jscomp$185$$ && 65535 >= $addr$jscomp$41_value$jscomp$185$$);
10701
- return $addr$jscomp$41_value$jscomp$185$$;
10698
+ $CPU$$module$src$cpu$$.prototype.mmap_write16 = function($addr$jscomp$40$$, $value$jscomp$185$$) {
10699
+ var $fn$jscomp$17$$ = this.memory_map_write8[$addr$jscomp$40$$ >>> 17];
10700
+ $dbg_assert$$module$src$log$$(0 <= $value$jscomp$185$$ && 65535 >= $value$jscomp$185$$);
10701
+ $fn$jscomp$17$$($addr$jscomp$40$$, $value$jscomp$185$$ & 255);
10702
+ $fn$jscomp$17$$($addr$jscomp$40$$ + 1 | 0, $value$jscomp$185$$ >> 8);
10702
10703
  };
10703
- $CPU$$module$src$cpu$$.prototype.mmap_write16 = function($addr$jscomp$42$$, $value$jscomp$186$$) {
10704
- var $fn$jscomp$18$$ = this.memory_map_write8[$addr$jscomp$42$$ >>> 17];
10705
- $dbg_assert$$module$src$log$$(0 <= $value$jscomp$186$$ && 65535 >= $value$jscomp$186$$);
10706
- $fn$jscomp$18$$($addr$jscomp$42$$, $value$jscomp$186$$ & 255);
10707
- $fn$jscomp$18$$($addr$jscomp$42$$ + 1 | 0, $value$jscomp$186$$ >> 8);
10704
+ $CPU$$module$src$cpu$$.prototype.mmap_read32 = function($addr$jscomp$41$$) {
10705
+ return this.memory_map_read32[$addr$jscomp$41$$ >>> 17]($addr$jscomp$41$$);
10708
10706
  };
10709
- $CPU$$module$src$cpu$$.prototype.mmap_read32 = function($addr$jscomp$43$$) {
10710
- return this.memory_map_read32[$addr$jscomp$43$$ >>> 17]($addr$jscomp$43$$);
10707
+ $CPU$$module$src$cpu$$.prototype.mmap_write32 = function($addr$jscomp$42$$, $value$jscomp$186$$) {
10708
+ this.memory_map_write32[$addr$jscomp$42$$ >>> 17]($addr$jscomp$42$$, $value$jscomp$186$$);
10711
10709
  };
10712
- $CPU$$module$src$cpu$$.prototype.mmap_write32 = function($addr$jscomp$44$$, $value$jscomp$187$$) {
10713
- this.memory_map_write32[$addr$jscomp$44$$ >>> 17]($addr$jscomp$44$$, $value$jscomp$187$$);
10714
- };
10715
- $CPU$$module$src$cpu$$.prototype.mmap_write64 = function($addr$jscomp$45$$, $value0$jscomp$2$$, $value1$jscomp$9$$) {
10716
- var $aligned_addr$jscomp$5_write_func32$jscomp$1$$ = $addr$jscomp$45$$ >>> 17;
10717
- $dbg_assert$$module$src$log$$($aligned_addr$jscomp$5_write_func32$jscomp$1$$ === $addr$jscomp$45$$ + 7 >>> 17);
10710
+ $CPU$$module$src$cpu$$.prototype.mmap_write64 = function($addr$jscomp$43$$, $value0$jscomp$2$$, $value1$jscomp$9$$) {
10711
+ var $aligned_addr$jscomp$5_write_func32$jscomp$1$$ = $addr$jscomp$43$$ >>> 17;
10712
+ $dbg_assert$$module$src$log$$($aligned_addr$jscomp$5_write_func32$jscomp$1$$ === $addr$jscomp$43$$ + 7 >>> 17);
10718
10713
  $aligned_addr$jscomp$5_write_func32$jscomp$1$$ = this.memory_map_write32[$aligned_addr$jscomp$5_write_func32$jscomp$1$$];
10719
- $aligned_addr$jscomp$5_write_func32$jscomp$1$$($addr$jscomp$45$$, $value0$jscomp$2$$);
10720
- $aligned_addr$jscomp$5_write_func32$jscomp$1$$($addr$jscomp$45$$ + 4, $value1$jscomp$9$$);
10714
+ $aligned_addr$jscomp$5_write_func32$jscomp$1$$($addr$jscomp$43$$, $value0$jscomp$2$$);
10715
+ $aligned_addr$jscomp$5_write_func32$jscomp$1$$($addr$jscomp$43$$ + 4, $value1$jscomp$9$$);
10721
10716
  };
10722
- $CPU$$module$src$cpu$$.prototype.mmap_write128 = function($addr$jscomp$46$$, $value0$jscomp$3$$, $value1$jscomp$10$$, $value2$jscomp$8$$, $value3$jscomp$5$$) {
10723
- var $aligned_addr$jscomp$6_write_func32$jscomp$2$$ = $addr$jscomp$46$$ >>> 17;
10724
- $dbg_assert$$module$src$log$$($aligned_addr$jscomp$6_write_func32$jscomp$2$$ === $addr$jscomp$46$$ + 12 >>> 17);
10717
+ $CPU$$module$src$cpu$$.prototype.mmap_write128 = function($addr$jscomp$44$$, $value0$jscomp$3$$, $value1$jscomp$10$$, $value2$jscomp$8$$, $value3$jscomp$5$$) {
10718
+ var $aligned_addr$jscomp$6_write_func32$jscomp$2$$ = $addr$jscomp$44$$ >>> 17;
10719
+ $dbg_assert$$module$src$log$$($aligned_addr$jscomp$6_write_func32$jscomp$2$$ === $addr$jscomp$44$$ + 12 >>> 17);
10725
10720
  $aligned_addr$jscomp$6_write_func32$jscomp$2$$ = this.memory_map_write32[$aligned_addr$jscomp$6_write_func32$jscomp$2$$];
10726
- $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$46$$, $value0$jscomp$3$$);
10727
- $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$46$$ + 4, $value1$jscomp$10$$);
10728
- $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$46$$ + 8, $value2$jscomp$8$$);
10729
- $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$46$$ + 12, $value3$jscomp$5$$);
10721
+ $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$44$$, $value0$jscomp$3$$);
10722
+ $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$44$$ + 4, $value1$jscomp$10$$);
10723
+ $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$44$$ + 8, $value2$jscomp$8$$);
10724
+ $aligned_addr$jscomp$6_write_func32$jscomp$2$$($addr$jscomp$44$$ + 12, $value3$jscomp$5$$);
10730
10725
  };
10731
10726
  $CPU$$module$src$cpu$$.prototype.write_blob = function($blob$jscomp$16$$, $offset$jscomp$77$$) {
10732
10727
  $dbg_assert$$module$src$log$$($blob$jscomp$16$$ && 0 <= $blob$jscomp$16$$.length);
@@ -10803,8 +10798,8 @@ $CPU$$module$src$cpu$$.prototype.wasm_patch = function() {
10803
10798
  this.zstd_read = $get_import$$("zstd_read");
10804
10799
  this.zstd_read_free = $get_import$$("zstd_read_free");
10805
10800
  };
10806
- $CPU$$module$src$cpu$$.prototype.jit_force_generate = function($addr$jscomp$47$$) {
10807
- this.jit_force_generate_unsafe ? this.jit_force_generate_unsafe($addr$jscomp$47$$) : $dbg_assert$$module$src$log$$(!1, "Not supported in this wasm build: jit_force_generate_unsafe");
10801
+ $CPU$$module$src$cpu$$.prototype.jit_force_generate = function($addr$jscomp$45$$) {
10802
+ this.jit_force_generate_unsafe ? this.jit_force_generate_unsafe($addr$jscomp$45$$) : $dbg_assert$$module$src$log$$(!1, "Not supported in this wasm build: jit_force_generate_unsafe");
10808
10803
  };
10809
10804
  $CPU$$module$src$cpu$$.prototype.jit_clear_func = function($index$jscomp$87$$) {
10810
10805
  $dbg_assert$$module$src$log$$(0 <= $index$jscomp$87$$ && 900 > $index$jscomp$87$$);
@@ -11162,7 +11157,7 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11162
11157
  $dbg_assert$$module$src$log$$(!1, "config port: Read past value");
11163
11158
  return 0;
11164
11159
  });
11165
- $ide_config$jscomp$2_io$jscomp$5$$.register_write(1296, this, void 0, function($buffer32_value$jscomp$188$$) {
11160
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(1296, this, void 0, function($buffer32_value$jscomp$187$$) {
11166
11161
  function $i32$$($x$jscomp$120$$) {
11167
11162
  return new Uint8Array(Int32Array.of($x$jscomp$120$$).buffer);
11168
11163
  }
@@ -11172,35 +11167,35 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11172
11167
  function $to_be32$$($x$jscomp$122$$) {
11173
11168
  return $x$jscomp$122$$ << 24 | $x$jscomp$122$$ << 8 & 16711680 | $x$jscomp$122$$ >> 8 & 65280 | $x$jscomp$122$$ >>> 24;
11174
11169
  }
11175
- $dbg_log$$module$src$log$$("bios config port, index=" + $h$$module$src$lib$$($buffer32_value$jscomp$188$$));
11170
+ $dbg_log$$module$src$log$$("bios config port, index=" + $h$$module$src$lib$$($buffer32_value$jscomp$187$$));
11176
11171
  this.fw_pointer = 0;
11177
- if (0 === $buffer32_value$jscomp$188$$) {
11172
+ if (0 === $buffer32_value$jscomp$187$$) {
11178
11173
  this.fw_value = $i32$$(1431127377);
11179
11174
  } else {
11180
- if (1 === $buffer32_value$jscomp$188$$) {
11175
+ if (1 === $buffer32_value$jscomp$187$$) {
11181
11176
  this.fw_value = $i32$$(0);
11182
11177
  } else {
11183
- if (3 === $buffer32_value$jscomp$188$$) {
11178
+ if (3 === $buffer32_value$jscomp$187$$) {
11184
11179
  this.fw_value = $i32$$(this.memory_size[0]);
11185
11180
  } else {
11186
- if (5 === $buffer32_value$jscomp$188$$) {
11181
+ if (5 === $buffer32_value$jscomp$187$$) {
11187
11182
  this.fw_value = $i32$$(1);
11188
11183
  } else {
11189
- if (15 === $buffer32_value$jscomp$188$$) {
11184
+ if (15 === $buffer32_value$jscomp$187$$) {
11190
11185
  this.fw_value = $i32$$(1);
11191
11186
  } else {
11192
- if (13 === $buffer32_value$jscomp$188$$) {
11187
+ if (13 === $buffer32_value$jscomp$187$$) {
11193
11188
  this.fw_value = new Uint8Array(16);
11194
11189
  } else {
11195
- if (25 === $buffer32_value$jscomp$188$$) {
11196
- $buffer32_value$jscomp$188$$ = new Int32Array(4 + 64 * this.option_roms.length);
11197
- const $buffer8$$ = new Uint8Array($buffer32_value$jscomp$188$$.buffer);
11198
- $buffer32_value$jscomp$188$$[0] = $to_be32$$(this.option_roms.length);
11190
+ if (25 === $buffer32_value$jscomp$187$$) {
11191
+ $buffer32_value$jscomp$187$$ = new Int32Array(4 + 64 * this.option_roms.length);
11192
+ const $buffer8$$ = new Uint8Array($buffer32_value$jscomp$187$$.buffer);
11193
+ $buffer32_value$jscomp$187$$[0] = $to_be32$$(this.option_roms.length);
11199
11194
  for (let $i$jscomp$95$$ = 0; $i$jscomp$95$$ < this.option_roms.length; $i$jscomp$95$$++) {
11200
11195
  const {name:$name$jscomp$108$$, data:$data$jscomp$219$$} = this.option_roms[$i$jscomp$95$$], $file_struct_ptr$$ = 4 + 64 * $i$jscomp$95$$;
11201
11196
  $dbg_assert$$module$src$log$$(65536 > 49152 + $i$jscomp$95$$);
11202
- $buffer32_value$jscomp$188$$[$file_struct_ptr$$ + 0 >> 2] = $to_be32$$($data$jscomp$219$$.length);
11203
- $buffer32_value$jscomp$188$$[$file_struct_ptr$$ + 4 >> 2] = $to_be16$$(49152 + $i$jscomp$95$$);
11197
+ $buffer32_value$jscomp$187$$[$file_struct_ptr$$ + 0 >> 2] = $to_be32$$($data$jscomp$219$$.length);
11198
+ $buffer32_value$jscomp$187$$[$file_struct_ptr$$ + 4 >> 2] = $to_be16$$(49152 + $i$jscomp$95$$);
11204
11199
  $dbg_assert$$module$src$log$$(56 > $name$jscomp$108$$.length);
11205
11200
  for (let $j$jscomp$11$$ = 0; $j$jscomp$11$$ < $name$jscomp$108$$.length; $j$jscomp$11$$++) {
11206
11201
  $buffer8$$[$file_struct_ptr$$ + 8 + $j$jscomp$11$$] = $name$jscomp$108$$.charCodeAt($j$jscomp$11$$);
@@ -11208,7 +11203,7 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11208
11203
  }
11209
11204
  this.fw_value = $buffer8$$;
11210
11205
  } else {
11211
- 32768 <= $buffer32_value$jscomp$188$$ && 49152 > $buffer32_value$jscomp$188$$ ? this.fw_value = $i32$$(0) : 49152 <= $buffer32_value$jscomp$188$$ && $buffer32_value$jscomp$188$$ - 49152 < this.option_roms.length ? this.fw_value = this.option_roms[$buffer32_value$jscomp$188$$ - 49152].data : ($dbg_log$$module$src$log$$("Warning: Unimplemented fw index: " + $h$$module$src$lib$$($buffer32_value$jscomp$188$$)), this.fw_value = $i32$$(0));
11206
+ 32768 <= $buffer32_value$jscomp$187$$ && 49152 > $buffer32_value$jscomp$187$$ ? this.fw_value = $i32$$(0) : 49152 <= $buffer32_value$jscomp$187$$ && $buffer32_value$jscomp$187$$ - 49152 < this.option_roms.length ? this.fw_value = this.option_roms[$buffer32_value$jscomp$187$$ - 49152].data : ($dbg_log$$module$src$log$$("Warning: Unimplemented fw index: " + $h$$module$src$lib$$($buffer32_value$jscomp$187$$)), this.fw_value = $i32$$(0));
11212
11207
  }
11213
11208
  }
11214
11209
  }
@@ -11276,10 +11271,10 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11276
11271
  $cpu$jscomp$26$$.write32(31792, $i$jscomp$98_multiboot_data$$);
11277
11272
  $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ = 0;
11278
11273
  var $view$jscomp$inline_408_was_memory$$ = !1;
11279
- for (let $addr$jscomp$48$$ = 0; 4294967296 > $addr$jscomp$48$$; $addr$jscomp$48$$ += 131072) {
11280
- $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$$),
11281
- $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$$ =
11282
- $addr$jscomp$48$$, $view$jscomp$inline_408_was_memory$$ = !0);
11274
+ for (let $addr$jscomp$46$$ = 0; 4294967296 > $addr$jscomp$46$$; $addr$jscomp$46$$ += 131072) {
11275
+ $view$jscomp$inline_408_was_memory$$ && void 0 !== $cpu$jscomp$26$$.memory_map_read8[$addr$jscomp$46$$ >>> 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$46$$ - $blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$),
11276
+ $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$46$$ >>> 17] || ($blob$jscomp$17_file_start_header_addr_start$jscomp$42_top_of_load$$ =
11277
+ $addr$jscomp$46$$, $view$jscomp$inline_408_was_memory$$ = !0);
11283
11278
  }
11284
11279
  $dbg_assert$$module$src$log$$(!$view$jscomp$inline_408_was_memory$$, "top of 4GB shouldn't have memory");
11285
11280
  $cpu$jscomp$26$$.write32(31788, $cmdline_utf8_entrypoint_load_addr_multiboot_mmap_count_program_headers$jscomp$inline_411$$);
@@ -11375,17 +11370,17 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11375
11370
  $cpu$jscomp$26$$.dump_regs_short();
11376
11371
  return 732803074;
11377
11372
  });
11378
- this.io.register_write_consecutive(244, this, function($value$jscomp$189$$) {
11379
- console.log("Test exited with code " + $h$$module$src$lib$$($value$jscomp$189$$, 2));
11373
+ this.io.register_write_consecutive(244, this, function($value$jscomp$188$$) {
11374
+ console.log("Test exited with code " + $h$$module$src$lib$$($value$jscomp$188$$, 2));
11380
11375
  throw "HALT";
11381
11376
  }, function() {
11382
11377
  }, function() {
11383
11378
  }, function() {
11384
11379
  });
11385
11380
  for (let $i$jscomp$99$$ = 0; 15 >= $i$jscomp$99$$; $i$jscomp$99$$++) {
11386
- function $handle_write$$($value$jscomp$190$$) {
11387
- $dbg_log$$module$src$log$$("kvm-unit-test: Set irq " + $h$$module$src$lib$$($i$jscomp$99$$) + " to " + $h$$module$src$lib$$($value$jscomp$190$$, 2));
11388
- $value$jscomp$190$$ ? this.device_raise_irq($i$jscomp$99$$) : this.device_lower_irq($i$jscomp$99$$);
11381
+ function $handle_write$$($value$jscomp$189$$) {
11382
+ $dbg_log$$module$src$log$$("kvm-unit-test: Set irq " + $h$$module$src$lib$$($i$jscomp$99$$) + " to " + $h$$module$src$lib$$($value$jscomp$189$$, 2));
11383
+ $value$jscomp$189$$ ? this.device_raise_irq($i$jscomp$99$$) : this.device_lower_irq($i$jscomp$99$$);
11389
11384
  }
11390
11385
  this.io.register_write(8192 + $i$jscomp$99$$, this, $handle_write$$, $handle_write$$, $handle_write$$);
11391
11386
  }
@@ -11439,19 +11434,19 @@ $CPU$$module$src$cpu$$.prototype.load_bios = function() {
11439
11434
  $dbg_assert$$module$src$log$$($vga_bios$$ instanceof ArrayBuffer);
11440
11435
  var $vga_bios8$$ = new Uint8Array($vga_bios$$);
11441
11436
  this.write_blob($vga_bios8$$, 786432);
11442
- this.io.mmap_register(4272947200, 1048576, function($addr$jscomp$49$$) {
11443
- $addr$jscomp$49$$ = $addr$jscomp$49$$ - 4272947200 | 0;
11444
- return $addr$jscomp$49$$ < $vga_bios8$$.length ? $vga_bios8$$[$addr$jscomp$49$$] : 0;
11437
+ this.io.mmap_register(4272947200, 1048576, function($addr$jscomp$47$$) {
11438
+ $addr$jscomp$47$$ = $addr$jscomp$47$$ - 4272947200 | 0;
11439
+ return $addr$jscomp$47$$ < $vga_bios8$$.length ? $vga_bios8$$[$addr$jscomp$47$$] : 0;
11445
11440
  }, function() {
11446
11441
  $dbg_assert$$module$src$log$$(!1, "Unexpected write to VGA rom");
11447
11442
  });
11448
11443
  } else {
11449
11444
  $dbg_log$$module$src$log$$("Warning: No VGA BIOS");
11450
11445
  }
11451
- this.io.mmap_register(4293918720, 1048576, function($addr$jscomp$51$$) {
11452
- return this.mem8[$addr$jscomp$51$$ & 1048575];
11453
- }.bind(this), function($addr$jscomp$52$$, $value$jscomp$192$$) {
11454
- this.mem8[$addr$jscomp$52$$ & 1048575] = $value$jscomp$192$$;
11446
+ this.io.mmap_register(4293918720, 1048576, function($addr$jscomp$49$$) {
11447
+ return this.mem8[$addr$jscomp$49$$ & 1048575];
11448
+ }.bind(this), function($addr$jscomp$50$$, $value$jscomp$191$$) {
11449
+ this.mem8[$addr$jscomp$50$$ & 1048575] = $value$jscomp$191$$;
11455
11450
  }.bind(this));
11456
11451
  } else {
11457
11452
  $dbg_log$$module$src$log$$("Warning: No BIOS");
@@ -11531,9 +11526,9 @@ $CPU$$module$src$cpu$$.prototype.dump_regs_short = function() {
11531
11526
  $dbg_log$$module$src$log$$($lines$jscomp$1$$[1], 2);
11532
11527
  };
11533
11528
  $CPU$$module$src$cpu$$.prototype.dump_gdt_ldt = function() {
11534
- function $dump_table$$($addr$jscomp$53$$, $size$jscomp$41$$) {
11535
- for (var $i$jscomp$108$$ = 0; $i$jscomp$108$$ < $size$jscomp$41$$; $i$jscomp$108$$ += 8, $addr$jscomp$53$$ += 8) {
11536
- var $base$jscomp$4$$ = this.read16($addr$jscomp$53$$ + 2) | this.read8($addr$jscomp$53$$ + 4) << 16 | this.read8($addr$jscomp$53$$ + 7) << 24, $limit$$ = this.read16($addr$jscomp$53$$) | (this.read8($addr$jscomp$53$$ + 6) & 15) << 16, $access$jscomp$1$$ = this.read8($addr$jscomp$53$$ + 5), $flags$jscomp$18$$ = this.read8($addr$jscomp$53$$ + 6) >> 4, $flags_str$$ = "", $dpl$$ = $access$jscomp$1$$ >> 5 & 3;
11529
+ function $dump_table$$($addr$jscomp$51$$, $size$jscomp$41$$) {
11530
+ for (var $i$jscomp$108$$ = 0; $i$jscomp$108$$ < $size$jscomp$41$$; $i$jscomp$108$$ += 8, $addr$jscomp$51$$ += 8) {
11531
+ var $base$jscomp$4$$ = this.read16($addr$jscomp$51$$ + 2) | this.read8($addr$jscomp$51$$ + 4) << 16 | this.read8($addr$jscomp$51$$ + 7) << 24, $limit$$ = this.read16($addr$jscomp$51$$) | (this.read8($addr$jscomp$51$$ + 6) & 15) << 16, $access$jscomp$1$$ = this.read8($addr$jscomp$51$$ + 5), $flags$jscomp$18$$ = this.read8($addr$jscomp$51$$ + 6) >> 4, $flags_str$$ = "", $dpl$$ = $access$jscomp$1$$ >> 5 & 3;
11537
11532
  $flags_str$$ = $access$jscomp$1$$ & 128 ? $flags_str$$ + " P " : $flags_str$$ + "NP ";
11538
11533
  $access$jscomp$1$$ & 16 ? ($flags_str$$ = $flags$jscomp$18$$ & 4 ? $flags_str$$ + "32b " : $flags_str$$ + "16b ", $access$jscomp$1$$ & 8 ? ($flags_str$$ += "X ", $access$jscomp$1$$ & 4 && ($flags_str$$ += "C ")) : $flags_str$$ += "R ", $flags_str$$ += "RW ") : $flags_str$$ += "sys: " + $h$$module$src$lib$$($access$jscomp$1$$ & 15);
11539
11534
  $flags$jscomp$18$$ & 8 && ($limit$$ = $limit$$ << 12 | 4095);
@@ -11547,12 +11542,12 @@ $CPU$$module$src$cpu$$.prototype.dump_gdt_ldt = function() {
11547
11542
  };
11548
11543
  $CPU$$module$src$cpu$$.prototype.dump_idt = function() {
11549
11544
  for (var $i$jscomp$109$$ = 0; $i$jscomp$109$$ < this.idtr_size[0]; $i$jscomp$109$$ += 8) {
11550
- var $addr$jscomp$54_type$jscomp$156$$ = this.translate_address_system_read(this.idtr_offset[0] + $i$jscomp$109$$), $base$jscomp$5$$ = this.read16($addr$jscomp$54_type$jscomp$156$$) | this.read16($addr$jscomp$54_type$jscomp$156$$ + 6) << 16, $selector$jscomp$1$$ = this.read16($addr$jscomp$54_type$jscomp$156$$ + 2);
11551
- $addr$jscomp$54_type$jscomp$156$$ = this.read8($addr$jscomp$54_type$jscomp$156$$ + 5);
11552
- var $dpl$jscomp$1$$ = $addr$jscomp$54_type$jscomp$156$$ >> 5 & 3;
11553
- var $line$jscomp$6$$ = 5 === ($addr$jscomp$54_type$jscomp$156$$ & 31) ? "task gate " : 14 === ($addr$jscomp$54_type$jscomp$156$$ & 31) ? "intr gate " : 15 === ($addr$jscomp$54_type$jscomp$156$$ & 31) ? "trap gate " : "invalid ";
11554
- $line$jscomp$6$$ = $addr$jscomp$54_type$jscomp$156$$ & 128 ? $line$jscomp$6$$ + " P" : $line$jscomp$6$$ + "NP";
11555
- $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$109$$ >> 3, 4) + " " + $h$$module$src$lib$$($base$jscomp$5$$ >>> 0, 8) + ", " + $h$$module$src$lib$$($selector$jscomp$1$$, 4) + "; " + $line$jscomp$6$$ + "; dpl = " + $dpl$jscomp$1$$ + ", t = " + $addr$jscomp$54_type$jscomp$156$$.toString(2));
11545
+ var $addr$jscomp$52_type$jscomp$156$$ = this.translate_address_system_read(this.idtr_offset[0] + $i$jscomp$109$$), $base$jscomp$5$$ = this.read16($addr$jscomp$52_type$jscomp$156$$) | this.read16($addr$jscomp$52_type$jscomp$156$$ + 6) << 16, $selector$jscomp$1$$ = this.read16($addr$jscomp$52_type$jscomp$156$$ + 2);
11546
+ $addr$jscomp$52_type$jscomp$156$$ = this.read8($addr$jscomp$52_type$jscomp$156$$ + 5);
11547
+ var $dpl$jscomp$1$$ = $addr$jscomp$52_type$jscomp$156$$ >> 5 & 3;
11548
+ var $line$jscomp$6$$ = 5 === ($addr$jscomp$52_type$jscomp$156$$ & 31) ? "task gate " : 14 === ($addr$jscomp$52_type$jscomp$156$$ & 31) ? "intr gate " : 15 === ($addr$jscomp$52_type$jscomp$156$$ & 31) ? "trap gate " : "invalid ";
11549
+ $line$jscomp$6$$ = $addr$jscomp$52_type$jscomp$156$$ & 128 ? $line$jscomp$6$$ + " P" : $line$jscomp$6$$ + "NP";
11550
+ $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$109$$ >> 3, 4) + " " + $h$$module$src$lib$$($base$jscomp$5$$ >>> 0, 8) + ", " + $h$$module$src$lib$$($selector$jscomp$1$$, 4) + "; " + $line$jscomp$6$$ + "; dpl = " + $dpl$jscomp$1$$ + ", t = " + $addr$jscomp$52_type$jscomp$156$$.toString(2));
11556
11551
  }
11557
11552
  };
11558
11553
  $CPU$$module$src$cpu$$.prototype.dump_page_structures = function() {
@@ -11596,16 +11591,16 @@ $CPU$$module$src$cpu$$.prototype.get_memory_dump = function($start$jscomp$49$$,
11596
11591
  void 0 === $start$jscomp$49$$ ? ($start$jscomp$49$$ = 0, $count$jscomp$70$$ = this.memory_size[0]) : void 0 === $count$jscomp$70$$ && ($count$jscomp$70$$ = $start$jscomp$49$$, $start$jscomp$49$$ = 0);
11597
11592
  return this.mem8.slice($start$jscomp$49$$, $start$jscomp$49$$ + $count$jscomp$70$$).buffer;
11598
11593
  };
11599
- $CPU$$module$src$cpu$$.prototype.memory_hex_dump = function($addr$jscomp$57$$, $length$jscomp$34$$) {
11594
+ $CPU$$module$src$cpu$$.prototype.memory_hex_dump = function($addr$jscomp$55$$, $length$jscomp$34$$) {
11600
11595
  $length$jscomp$34$$ = $length$jscomp$34$$ || 64;
11601
11596
  for (var $line$jscomp$7$$, $byt$$, $i$jscomp$112$$ = 0; $i$jscomp$112$$ < $length$jscomp$34$$ >> 4; $i$jscomp$112$$++) {
11602
- $line$jscomp$7$$ = $h$$module$src$lib$$($addr$jscomp$57$$ + ($i$jscomp$112$$ << 4), 5) + " ";
11597
+ $line$jscomp$7$$ = $h$$module$src$lib$$($addr$jscomp$55$$ + ($i$jscomp$112$$ << 4), 5) + " ";
11603
11598
  for (var $j$jscomp$13$$ = 0; 16 > $j$jscomp$13$$; $j$jscomp$13$$++) {
11604
- $byt$$ = this.read8($addr$jscomp$57$$ + ($i$jscomp$112$$ << 4) + $j$jscomp$13$$), $line$jscomp$7$$ += $h$$module$src$lib$$($byt$$, 2) + " ";
11599
+ $byt$$ = this.read8($addr$jscomp$55$$ + ($i$jscomp$112$$ << 4) + $j$jscomp$13$$), $line$jscomp$7$$ += $h$$module$src$lib$$($byt$$, 2) + " ";
11605
11600
  }
11606
11601
  $line$jscomp$7$$ += " ";
11607
11602
  for ($j$jscomp$13$$ = 0; 16 > $j$jscomp$13$$; $j$jscomp$13$$++) {
11608
- $byt$$ = this.read8($addr$jscomp$57$$ + ($i$jscomp$112$$ << 4) + $j$jscomp$13$$), $line$jscomp$7$$ += 33 > $byt$$ || 126 < $byt$$ ? "." : String.fromCharCode($byt$$);
11603
+ $byt$$ = this.read8($addr$jscomp$55$$ + ($i$jscomp$112$$ << 4) + $j$jscomp$13$$), $line$jscomp$7$$ += 33 > $byt$$ || 126 < $byt$$ ? "." : String.fromCharCode($byt$$);
11609
11604
  }
11610
11605
  $dbg_log$$module$src$log$$($line$jscomp$7$$);
11611
11606
  }
@@ -11831,16 +11826,16 @@ $VirtIO$$module$src$virtio$$.prototype.init_capabilities = function($cap_len$jsc
11831
11826
  if ($cap$jscomp$2$$.use_mmio) {
11832
11827
  $dbg_assert$$module$src$log$$(!1, "VirtIO device <" + this.name + "> mmio capability not implemented.");
11833
11828
  } else {
11834
- $bar_size_shim_read8_on_16$$ = function($addr$jscomp$58$$) {
11829
+ $bar_size_shim_read8_on_16$$ = function($addr$jscomp$56$$) {
11835
11830
  $dbg_log$$module$src$log$$("Warning: 8-bit read from 16-bit virtio port", 2097152);
11836
- return $read$$($addr$jscomp$58$$ & -2) >> (($addr$jscomp$58$$ & 1) << 3) & 255;
11831
+ return $read$$($addr$jscomp$56$$ & -2) >> (($addr$jscomp$56$$ & 1) << 3) & 255;
11837
11832
  };
11838
- const $shim_read8_on_32$$ = function($addr$jscomp$59$$) {
11833
+ const $shim_read8_on_32$$ = function($addr$jscomp$57$$) {
11839
11834
  $dbg_log$$module$src$log$$("Warning: 8-bit read from 32-bit virtio port", 2097152);
11840
- return $read$$($addr$jscomp$59$$ & -4) >> (($addr$jscomp$59$$ & 3) << 3) & 255;
11841
- }, $shim_read32_on_16$$ = function($addr$jscomp$60$$) {
11835
+ return $read$$($addr$jscomp$57$$ & -4) >> (($addr$jscomp$57$$ & 3) << 3) & 255;
11836
+ }, $shim_read32_on_16$$ = function($addr$jscomp$58$$) {
11842
11837
  $dbg_log$$module$src$log$$("Warning: 32-bit read from 16-bit virtio port", 2097152);
11843
- return $read$$($addr$jscomp$60$$);
11838
+ return $read$$($addr$jscomp$58$$);
11844
11839
  };
11845
11840
  switch($field$jscomp$1$$.bytes) {
11846
11841
  case 4:
@@ -12073,21 +12068,21 @@ $VirtQueue$$module$src$virtio$$.prototype.avail_get_used_event = function() {
12073
12068
  $VirtQueue$$module$src$virtio$$.prototype.used_get_flags = function() {
12074
12069
  return this.cpu.read16(this.used_addr);
12075
12070
  };
12076
- $VirtQueue$$module$src$virtio$$.prototype.used_set_flags = function($value$jscomp$193$$) {
12077
- this.cpu.write16(this.used_addr, $value$jscomp$193$$);
12071
+ $VirtQueue$$module$src$virtio$$.prototype.used_set_flags = function($value$jscomp$192$$) {
12072
+ this.cpu.write16(this.used_addr, $value$jscomp$192$$);
12078
12073
  };
12079
12074
  $VirtQueue$$module$src$virtio$$.prototype.used_get_idx = function() {
12080
12075
  return this.cpu.read16(this.used_addr + 2);
12081
12076
  };
12082
- $VirtQueue$$module$src$virtio$$.prototype.used_set_idx = function($value$jscomp$194$$) {
12083
- this.cpu.write16(this.used_addr + 2, $value$jscomp$194$$);
12077
+ $VirtQueue$$module$src$virtio$$.prototype.used_set_idx = function($value$jscomp$193$$) {
12078
+ this.cpu.write16(this.used_addr + 2, $value$jscomp$193$$);
12084
12079
  };
12085
12080
  $VirtQueue$$module$src$virtio$$.prototype.used_set_entry = function($i$jscomp$119$$, $desc_idx$jscomp$1$$, $length_written$$) {
12086
12081
  this.cpu.write32(this.used_addr + 4 + 8 * $i$jscomp$119$$, $desc_idx$jscomp$1$$);
12087
12082
  this.cpu.write32(this.used_addr + 8 + 8 * $i$jscomp$119$$, $length_written$$);
12088
12083
  };
12089
- $VirtQueue$$module$src$virtio$$.prototype.used_set_avail_event = function($value$jscomp$195$$) {
12090
- this.cpu.write16(this.used_addr + 4 + 8 * this.size, $value$jscomp$195$$);
12084
+ $VirtQueue$$module$src$virtio$$.prototype.used_set_avail_event = function($value$jscomp$194$$) {
12085
+ this.cpu.write16(this.used_addr + 4 + 8 * this.size, $value$jscomp$194$$);
12091
12086
  };
12092
12087
  function $VirtQueueBufferChain$$module$src$virtio$$($virtqueue$$, $desc_idx$jscomp$2_head_idx$$) {
12093
12088
  this.cpu = $virtqueue$$.cpu;