v86 0.5.66 → 0.5.121

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.
@@ -5814,6 +5814,22 @@ $V86$$module$src$browser$starter$$.prototype.set_fda = async function($file$jsco
5814
5814
  $V86$$module$src$browser$starter$$.prototype.eject_fda = function() {
5815
5815
  this.v86.cpu.devices.fdc.eject_fda();
5816
5816
  };
5817
+ $V86$$module$src$browser$starter$$.prototype.set_cdrom = async function($file$jscomp$6$$) {
5818
+ if ($file$jscomp$6$$.url && !$file$jscomp$6$$.async) {
5819
+ $load_file$$module$src$lib$$($file$jscomp$6$$.url, {done:$result$jscomp$14$$ => {
5820
+ this.v86.cpu.devices.cdrom.set_cdrom(new $SyncBuffer$$module$src$buffer$$($result$jscomp$14$$));
5821
+ }, });
5822
+ } else {
5823
+ const $image$jscomp$5$$ = $buffer_from_object$$module$src$buffer$$($file$jscomp$6$$, this.zstd_decompress_worker.bind(this));
5824
+ $image$jscomp$5$$.onload = () => {
5825
+ this.v86.cpu.devices.cdrom.set_cdrom($image$jscomp$5$$);
5826
+ };
5827
+ await $image$jscomp$5$$.load();
5828
+ }
5829
+ };
5830
+ $V86$$module$src$browser$starter$$.prototype.eject_cdrom = function() {
5831
+ this.v86.cpu.devices.cdrom.eject();
5832
+ };
5817
5833
  $V86$$module$src$browser$starter$$.prototype.keyboard_send_scancodes = function($codes$$) {
5818
5834
  for (var $i$jscomp$68$$ = 0; $i$jscomp$68$$ < $codes$$.length; $i$jscomp$68$$++) {
5819
5835
  this.bus.send("keyboard-code", $codes$$[$i$jscomp$68$$]);
@@ -5900,13 +5916,13 @@ $V86$$module$src$browser$starter$$.prototype.mount_fs = async function($idx$jsco
5900
5916
  throw $dbg_assert$$module$src$log$$(!1, "Unexpected error code: " + -$idx$jscomp$21_path$jscomp$13$$), Error("Failed to mount. Error number: " + -$idx$jscomp$21_path$jscomp$13$$);
5901
5917
  }
5902
5918
  };
5903
- $V86$$module$src$browser$starter$$.prototype.create_file = async function($file$jscomp$6$$, $data$jscomp$162$$) {
5919
+ $V86$$module$src$browser$starter$$.prototype.create_file = async function($file$jscomp$7$$, $data$jscomp$162$$) {
5904
5920
  $dbg_assert$$module$src$log$$(2 === arguments.length);
5905
5921
  var $fs$jscomp$7$$ = this.fs9p;
5906
5922
  if ($fs$jscomp$7$$) {
5907
- var $filename$jscomp$12_parts$jscomp$4$$ = $file$jscomp$6$$.split("/");
5923
+ var $filename$jscomp$12_parts$jscomp$4$$ = $file$jscomp$7$$.split("/");
5908
5924
  $filename$jscomp$12_parts$jscomp$4$$ = $filename$jscomp$12_parts$jscomp$4$$[$filename$jscomp$12_parts$jscomp$4$$.length - 1];
5909
- var $parent_id$$ = $fs$jscomp$7$$.SearchPath($file$jscomp$6$$).parentid;
5925
+ var $parent_id$$ = $fs$jscomp$7$$.SearchPath($file$jscomp$7$$).parentid;
5910
5926
  if ("" !== $filename$jscomp$12_parts$jscomp$4$$ && -1 !== $parent_id$$) {
5911
5927
  await $fs$jscomp$7$$.CreateBinaryFile($filename$jscomp$12_parts$jscomp$4$$, $parent_id$$, $data$jscomp$162$$);
5912
5928
  } else {
@@ -5914,11 +5930,11 @@ $V86$$module$src$browser$starter$$.prototype.create_file = async function($file$
5914
5930
  }
5915
5931
  }
5916
5932
  };
5917
- $V86$$module$src$browser$starter$$.prototype.read_file = async function($file$jscomp$7$$) {
5933
+ $V86$$module$src$browser$starter$$.prototype.read_file = async function($file$jscomp$8$$) {
5918
5934
  $dbg_assert$$module$src$log$$(1 === arguments.length);
5919
- var $fs$jscomp$8_result$jscomp$14$$ = this.fs9p;
5920
- if ($fs$jscomp$8_result$jscomp$14$$) {
5921
- return ($fs$jscomp$8_result$jscomp$14$$ = await $fs$jscomp$8_result$jscomp$14$$.read_file($file$jscomp$7$$)) ? $fs$jscomp$8_result$jscomp$14$$ : Promise.reject(new $FileNotFoundError$$module$src$browser$starter$$);
5935
+ var $fs$jscomp$8_result$jscomp$15$$ = this.fs9p;
5936
+ if ($fs$jscomp$8_result$jscomp$15$$) {
5937
+ return ($fs$jscomp$8_result$jscomp$15$$ = await $fs$jscomp$8_result$jscomp$15$$.read_file($file$jscomp$8$$)) ? $fs$jscomp$8_result$jscomp$15$$ : Promise.reject(new $FileNotFoundError$$module$src$browser$starter$$);
5922
5938
  }
5923
5939
  };
5924
5940
  $V86$$module$src$browser$starter$$.prototype.automatically = function($steps$$) {
@@ -6988,7 +7004,7 @@ $PCI$$module$src$pci$$.prototype.pci_write32 = function($addr$jscomp$38_address$
6988
7004
  if ($space$jscomp$3$$) {
6989
7005
  if (16 <= $addr$jscomp$38_address$jscomp$21$$ && 40 > $addr$jscomp$38_address$jscomp$21$$) {
6990
7006
  var $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ = $addr$jscomp$38_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$$];
6991
- $dbg_log$$module$src$log$$("BAR" + $bar_nr$jscomp$1_original_bar_to$jscomp$1$$ + " exists=" + ($bar$jscomp$1$$ ? "y" : "n") + " changed 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);
7007
+ $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$38_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);
6992
7008
  $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$38_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$$ &&
6993
7009
  ($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$$ &&
6994
7010
  ($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=" +
@@ -7007,7 +7023,7 @@ $PCI$$module$src$pci$$.prototype.register_device = function($device$jscomp$9$$)
7007
7023
  $dbg_assert$$module$src$log$$(void 0 !== $device$jscomp$9$$.pci_bars);
7008
7024
  var $bar_space_device_id$$ = $device$jscomp$9$$.pci_id;
7009
7025
  $dbg_log$$module$src$log$$("PCI register bdf=" + $h$$module$src$lib$$($bar_space_device_id$$) + " (" + $device$jscomp$9$$.name + ")", 2048);
7010
- $dbg_assert$$module$src$log$$(!this.devices[$bar_space_device_id$$]);
7026
+ this.devices[$bar_space_device_id$$] && $dbg_log$$module$src$log$$("warning: overwriting device " + this.devices[$bar_space_device_id$$].name + " with " + $device$jscomp$9$$.name, 2048);
7011
7027
  $dbg_assert$$module$src$log$$(64 <= $device$jscomp$9$$.pci_space.length);
7012
7028
  $dbg_assert$$module$src$log$$($bar_space_device_id$$ < this.devices.length);
7013
7029
  var $space$jscomp$4$$ = new Int32Array(64);
@@ -7019,6 +7035,7 @@ $PCI$$module$src$pci$$.prototype.register_device = function($device$jscomp$9$$)
7019
7035
  var $bar$jscomp$2$$ = $device$jscomp$9$$.pci_bars[$i$jscomp$81$$];
7020
7036
  if ($bar$jscomp$2$$) {
7021
7037
  var $bar_base_port$jscomp$3$$ = $bar_space_device_id$$[$i$jscomp$81$$], $j$jscomp$8_type$jscomp$154$$ = $bar_base_port$jscomp$3$$ & 1;
7038
+ $dbg_log$$module$src$log$$("device " + $device$jscomp$9$$.name + " register bar of size " + $bar$jscomp$2$$.size + " at " + $h$$module$src$lib$$($bar_base_port$jscomp$3$$), 2048);
7022
7039
  $bar$jscomp$2$$.original_bar = $bar_base_port$jscomp$3$$;
7023
7040
  $bar$jscomp$2$$.entries = [];
7024
7041
  if (0 !== $j$jscomp$8_type$jscomp$154$$) {
@@ -7034,15 +7051,10 @@ $PCI$$module$src$pci$$.prototype.set_io_bars = function($bar$jscomp$3$$, $from$j
7034
7051
  var $count$jscomp$55$$ = $bar$jscomp$3$$.size;
7035
7052
  $dbg_log$$module$src$log$$("Move io bars: from=" + $h$$module$src$lib$$($from$jscomp$2$$) + " to=" + $h$$module$src$lib$$($to$jscomp$2$$) + " count=" + $count$jscomp$55$$, 2048);
7036
7053
  for (var $ports$$ = this.io.ports, $i$jscomp$82$$ = 0; $i$jscomp$82$$ < $count$jscomp$55$$; $i$jscomp$82$$++) {
7037
- var $entry$jscomp$7_old_entry$$ = $ports$$[$from$jscomp$2$$ + $i$jscomp$82$$];
7038
7054
  4096 <= $from$jscomp$2$$ + $i$jscomp$82$$ && ($ports$$[$from$jscomp$2$$ + $i$jscomp$82$$] = this.io.create_empty_entry());
7039
- $entry$jscomp$7_old_entry$$.read8 === this.io.empty_port_read8 && $entry$jscomp$7_old_entry$$.read16 === this.io.empty_port_read16 && $entry$jscomp$7_old_entry$$.read32 === this.io.empty_port_read32 && $entry$jscomp$7_old_entry$$.write8 === this.io.empty_port_write && $entry$jscomp$7_old_entry$$.write16 === this.io.empty_port_write && $entry$jscomp$7_old_entry$$.write32 === this.io.empty_port_write && $dbg_log$$module$src$log$$("Warning: Bad IO bar: Source not mapped, port=" + $h$$module$src$lib$$($from$jscomp$2$$ +
7040
- $i$jscomp$82$$, 4), 2048);
7041
- $entry$jscomp$7_old_entry$$ = $bar$jscomp$3$$.entries[$i$jscomp$82$$];
7042
- var $empty_entry$$ = $ports$$[$to$jscomp$2$$ + $i$jscomp$82$$];
7043
- $dbg_assert$$module$src$log$$($entry$jscomp$7_old_entry$$ && $empty_entry$$);
7044
- 4096 <= $to$jscomp$2$$ + $i$jscomp$82$$ && ($ports$$[$to$jscomp$2$$ + $i$jscomp$82$$] = $entry$jscomp$7_old_entry$$);
7045
- $empty_entry$$.read8 !== this.io.empty_port_read8 && $empty_entry$$.read16 !== this.io.empty_port_read16 && $empty_entry$$.read32 !== this.io.empty_port_read32 && $empty_entry$$.write8 !== this.io.empty_port_write && $empty_entry$$.write16 !== this.io.empty_port_write && $empty_entry$$.write32 !== this.io.empty_port_write || $dbg_log$$module$src$log$$("Warning: Bad IO bar: Target already mapped, port=" + $h$$module$src$lib$$($to$jscomp$2$$ + $i$jscomp$82$$, 4), 2048);
7055
+ var $entry$jscomp$7$$ = $bar$jscomp$3$$.entries[$i$jscomp$82$$], $empty_entry$$ = $ports$$[$to$jscomp$2$$ + $i$jscomp$82$$];
7056
+ $dbg_assert$$module$src$log$$($entry$jscomp$7$$ && $empty_entry$$);
7057
+ 4096 <= $to$jscomp$2$$ + $i$jscomp$82$$ && ($ports$$[$to$jscomp$2$$ + $i$jscomp$82$$] = $entry$jscomp$7$$);
7046
7058
  }
7047
7059
  };
7048
7060
  $PCI$$module$src$pci$$.prototype.raise_irq = function($pci_id$$) {
@@ -8043,22 +8055,22 @@ function $create_struct$$module$src$elf$$($struct$jscomp$2$$) {
8043
8055
  });
8044
8056
  }
8045
8057
  function $read_struct$$module$src$elf$$($view$jscomp$29$$, $Struct_value$jscomp$171$$) {
8046
- const $result$jscomp$15$$ = {};
8058
+ const $result$jscomp$16$$ = {};
8047
8059
  let $offset$jscomp$68$$ = 0;
8048
8060
  for (const $entry$jscomp$12$$ of $Struct_value$jscomp$171$$) {
8049
- $Struct_value$jscomp$171$$ = $entry$jscomp$12$$.get.call($view$jscomp$29$$, $offset$jscomp$68$$, !0), console.assert(void 0 === $result$jscomp$15$$[$entry$jscomp$12$$.name]), $result$jscomp$15$$[$entry$jscomp$12$$.name] = $Struct_value$jscomp$171$$, $offset$jscomp$68$$ += $entry$jscomp$12$$.size;
8061
+ $Struct_value$jscomp$171$$ = $entry$jscomp$12$$.get.call($view$jscomp$29$$, $offset$jscomp$68$$, !0), console.assert(void 0 === $result$jscomp$16$$[$entry$jscomp$12$$.name]), $result$jscomp$16$$[$entry$jscomp$12$$.name] = $Struct_value$jscomp$171$$, $offset$jscomp$68$$ += $entry$jscomp$12$$.size;
8050
8062
  }
8051
- return [$result$jscomp$15$$, $offset$jscomp$68$$];
8063
+ return [$result$jscomp$16$$, $offset$jscomp$68$$];
8052
8064
  }
8053
8065
  function $read_structs$$module$src$elf$$($view$jscomp$30$$, $Struct$jscomp$1$$, $count$jscomp$56$$) {
8054
- const $result$jscomp$16$$ = [];
8066
+ const $result$jscomp$17$$ = [];
8055
8067
  let $offset$jscomp$69$$ = 0;
8056
8068
  for (var $i$jscomp$87$$ = 0; $i$jscomp$87$$ < $count$jscomp$56$$; $i$jscomp$87$$++) {
8057
8069
  const [$s$jscomp$7$$, $size$jscomp$38$$] = $read_struct$$module$src$elf$$(new DataView($view$jscomp$30$$.buffer, $view$jscomp$30$$.byteOffset + $offset$jscomp$69$$, void 0), $Struct$jscomp$1$$);
8058
- $result$jscomp$16$$.push($s$jscomp$7$$);
8070
+ $result$jscomp$17$$.push($s$jscomp$7$$);
8059
8071
  $offset$jscomp$69$$ += $size$jscomp$38$$;
8060
8072
  }
8061
- return [$result$jscomp$16$$, $offset$jscomp$69$$];
8073
+ return [$result$jscomp$17$$, $offset$jscomp$69$$];
8062
8074
  }
8063
8075
  ;function $FloppyController$$module$src$floppy$$($cpu$jscomp$22$$, $fda_image$$, $fdb_image$$) {
8064
8076
  this.io = $cpu$jscomp$22$$.io;
@@ -8246,10 +8258,10 @@ $FloppyController$$module$src$floppy$$.prototype.port3F2_read = function() {
8246
8258
  return this.dor;
8247
8259
  };
8248
8260
  $FloppyController$$module$src$floppy$$.prototype.port3F2_write = function($value$jscomp$172$$) {
8249
- 4 === ($value$jscomp$172$$ & 4) && 0 === (this.dor & 4) && (this.status_reg0 = 192, this.cpu.device_raise_irq(6));
8261
+ !(this.dor & 4) && $value$jscomp$172$$ & 4 && (this.status_reg0 = 192, $value$jscomp$172$$ & 8 && this.cpu.device_raise_irq(6));
8250
8262
  $dbg_log$$module$src$log$$("start motors: " + $h$$module$src$lib$$($value$jscomp$172$$ >> 4), 8192);
8251
8263
  $dbg_log$$module$src$log$$("enable dma/irq: " + !!($value$jscomp$172$$ & 8), 8192);
8252
- $dbg_log$$module$src$log$$("reset fdc: " + !!($value$jscomp$172$$ & 4), 8192);
8264
+ $dbg_log$$module$src$log$$("reset fdc: " + !($value$jscomp$172$$ & 4), 8192);
8253
8265
  $dbg_log$$module$src$log$$("drive select: " + ($value$jscomp$172$$ & 3), 8192);
8254
8266
  0 !== ($value$jscomp$172$$ & 3) && $dbg_log$$module$src$log$$("guest: fdb not implemented", 8192);
8255
8267
  $dbg_log$$module$src$log$$("DOR = " + $h$$module$src$lib$$($value$jscomp$172$$), 8192);
@@ -8322,164 +8334,164 @@ $FloppyController$$module$src$floppy$$.prototype.read_sector_id = function($args
8322
8334
  $FloppyController$$module$src$floppy$$.prototype.raise_irq = function() {
8323
8335
  this.dor & 8 && this.cpu.device_raise_irq(6);
8324
8336
  };
8325
- function $IDEDevice$$module$src$ide$$($cpu$jscomp$23$$, $master_buffer$$, $slave_buffer$$, $is_cd$$, $nr$$, $bus$jscomp$22$$) {
8326
- this.master = new $IDEInterface$$module$src$ide$$(this, $cpu$jscomp$23$$, $master_buffer$$, $is_cd$$, $nr$$, 0, $bus$jscomp$22$$);
8327
- this.slave = new $IDEInterface$$module$src$ide$$(this, $cpu$jscomp$23$$, $slave_buffer$$, !1, $nr$$, 1, $bus$jscomp$22$$);
8328
- this.current_interface = this.master;
8337
+ const $ATA_CMD_NAME$$module$src$ide$$ = {[8]:"DEVICE RESET", [144]:"EXECUTE DEVICE DIAGNOSTIC", [231]:"FLUSH CACHE", [234]:"FLUSH CACHE EXT", [218]:"GET MEDIA STATUS", [236]:"IDENTIFY DEVICE", [161]:"IDENTIFY PACKET DEVICE", [225]:"IDLE IMMEDIATE", [145]:"INITIALIZE DEVICE PARAMETERS", [222]:"MEDIA LOCK", [0]:"NOP", [160]:"PACKET", [200]:"READ DMA", [37]:"READ DMA EXT", [41]:"READ MULTIPLE", [196]:"READ MULTIPLE EXT", [248]:"READ NATIVE MAX ADDRESS", [39]:"READ NATIVE MAX ADDRESS EXT", [32]:"READ SECTORS",
8338
+ [36]:"READ SECTORS EXT", [64]:"READ VERIFY SECTORS", [245]:"SECURITY FREEZE LOCK", [239]:"SET FEATURES", [249]:"SET MAX", [198]:"SET MULTIPLE MODE", [224]:"STANDBY IMMEDIATE", [202]:"WRITE DMA", [53]:"WRITE DMA EXT", [57]:"WRITE MULTIPLE", [197]:"WRITE MULTIPLE EXT", [48]:"WRITE SECTORS", [52]:"WRITE SECTORS EXT", [16]:"<UNKWNON 10h>", }, $ATAPI_CMD$$module$src$ide$$ = {[70]:{name:"GET CONFIGURATION", flags:0}, [74]:{name:"GET EVENT STATUS NOTIFICATION", flags:0}, [18]:{name:"INQUIRY", flags:0},
8339
+ [189]:{name:"MECHANISM STATUS", flags:0}, [26]:{name:"MODE SENSE (6)", flags:0}, [90]:{name:"MODE SENSE (10)", flags:0}, [69]:{name:"PAUSE", flags:1}, [30]:{name:"PREVENT ALLOW MEDIUM REMOVAL", flags:0}, [40]:{name:"READ", flags:1}, [37]:{name:"READ CAPACITY", flags:1}, [190]:{name:"READ CD", flags:1}, [81]:{name:"READ DISK INFORMATION", flags:1}, [66]:{name:"READ SUBCHANNEL", flags:1}, [67]:{name:"READ TOC PMA ATIP", flags:1}, [82]:{name:"READ TRACK INFORMATION", flags:1}, [3]:{name:"REQUEST SENSE",
8340
+ flags:0}, [27]:{name:"START STOP UNIT", flags:0}, [0]:{name:"TEST UNIT READY", flags:1}, };
8341
+ function $IDEController$$module$src$ide$$($cpu$jscomp$23$$, $bus$jscomp$22_has_primary$$, $command_base0_ide_config$$) {
8329
8342
  this.cpu = $cpu$jscomp$23$$;
8330
- 0 === $nr$$ ? (this.ata_port = 496, this.irq = 14, this.pci_id = 240) : 1 === $nr$$ ? (this.ata_port = 368, this.irq = 15, this.pci_id = 248) : $dbg_assert$$module$src$log$$(!1, "IDE device with nr " + $nr$$ + " ignored", 32768);
8331
- this.ata_port_high = this.ata_port | 516;
8332
- this.master_port = 46080;
8333
- this.pci_space = [134, 128, 16, 112, 5, 0, 160, 2, 0, 128, 1, 1, 0, 0, 0, 0, this.ata_port & 255 | 1, this.ata_port >> 8, 0, 0, this.ata_port_high & 255 | 1, this.ata_port_high >> 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, this.master_port & 255 | 1, this.master_port >> 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 16, 212, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, this.irq, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8334
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
8335
- this.pci_bars = [{size:8, }, {size:4, }, void 0, void 0, {size:16, }, ];
8336
- this.name = "ide" + $nr$$;
8337
- this.device_control = 2;
8338
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 7, this, function() {
8339
- $dbg_log$$module$src$log$$("lower irq", 32768);
8340
- this.cpu.device_lower_irq(this.irq);
8341
- return this.read_status();
8342
- });
8343
- $cpu$jscomp$23$$.io.register_read(this.ata_port_high | 2, this, this.read_status);
8344
- $cpu$jscomp$23$$.io.register_write(this.ata_port_high | 2, this, this.write_control);
8345
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 0, this, function() {
8343
+ this.bus = $bus$jscomp$22_has_primary$$;
8344
+ this.secondary = this.primary = void 0;
8345
+ $bus$jscomp$22_has_primary$$ = $command_base0_ide_config$$ && $command_base0_ide_config$$[0][0];
8346
+ const $has_secondary$$ = $command_base0_ide_config$$ && $command_base0_ide_config$$[1][0];
8347
+ if ($bus$jscomp$22_has_primary$$ || $has_secondary$$) {
8348
+ $bus$jscomp$22_has_primary$$ && (this.primary = new $IDEChannel$$module$src$ide$$(this, 0, $command_base0_ide_config$$[0], 496, 1014, 14));
8349
+ $has_secondary$$ && (this.secondary = new $IDEChannel$$module$src$ide$$(this, 1, $command_base0_ide_config$$[1], 368, 886, 15));
8350
+ $command_base0_ide_config$$ = $bus$jscomp$22_has_primary$$ ? this.primary.command_base : 0;
8351
+ const $control_base0$$ = $bus$jscomp$22_has_primary$$ ? this.primary.control_base : 0, $command_base1$$ = $has_secondary$$ ? this.secondary.command_base : 0, $control_base1$$ = $has_secondary$$ ? this.secondary.control_base : 0;
8352
+ this.name = "ide";
8353
+ this.pci_id = 240;
8354
+ this.pci_space = [134, 128, 16, 112, 5, 0, 160, 2, 0, 128, 1, 1, 0, 0, 0, 0, $command_base0_ide_config$$ & 255 | 1, $command_base0_ide_config$$ >> 8, 0, 0, $control_base0$$ & 255 | 1, $control_base0$$ >> 8, 0, 0, $command_base1$$ & 255 | 1, $command_base1$$ >> 8, 0, 0, $control_base1$$ & 255 | 1, $control_base1$$ >> 8, 0, 0, 1, 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 16, 212, 130, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8355
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ];
8356
+ this.pci_bars = [$bus$jscomp$22_has_primary$$ ? {size:8} : void 0, $bus$jscomp$22_has_primary$$ ? {size:1} : void 0, $has_secondary$$ ? {size:8} : void 0, $has_secondary$$ ? {size:1} : void 0, {size:16}];
8357
+ $cpu$jscomp$23$$.devices.pci.register_device(this);
8358
+ }
8359
+ Object.seal(this);
8360
+ }
8361
+ $IDEController$$module$src$ide$$.prototype.get_state = function() {
8362
+ const $state$jscomp$46$$ = [];
8363
+ $state$jscomp$46$$[0] = this.primary;
8364
+ $state$jscomp$46$$[1] = this.secondary;
8365
+ return $state$jscomp$46$$;
8366
+ };
8367
+ $IDEController$$module$src$ide$$.prototype.set_state = function($state$jscomp$47$$) {
8368
+ this.primary && this.primary.set_state($state$jscomp$47$$[0]);
8369
+ this.secondary && this.secondary.set_state($state$jscomp$47$$[1]);
8370
+ };
8371
+ function $IDEChannel$$module$src$ide$$($controller_cpu$jscomp$24$$, $bus_master_base_channel_nr$$, $channel_config_slave_cfg$$, $command_base_master_cfg$$, $control_base$$, $irq$jscomp$5$$) {
8372
+ this.controller = $controller_cpu$jscomp$24$$;
8373
+ this.channel_nr = $bus_master_base_channel_nr$$;
8374
+ this.cpu = $controller_cpu$jscomp$24$$.cpu;
8375
+ this.bus = $controller_cpu$jscomp$24$$.bus;
8376
+ this.command_base = $command_base_master_cfg$$;
8377
+ this.control_base = $control_base$$;
8378
+ this.irq = $irq$jscomp$5$$;
8379
+ this.name = "ide" + $bus_master_base_channel_nr$$;
8380
+ $command_base_master_cfg$$ = $channel_config_slave_cfg$$ ? $channel_config_slave_cfg$$[0] : void 0;
8381
+ $channel_config_slave_cfg$$ = $channel_config_slave_cfg$$ ? $channel_config_slave_cfg$$[1] : void 0;
8382
+ this.master = new $IDEInterface$$module$src$ide$$(this, 0, $command_base_master_cfg$$?.buffer, $command_base_master_cfg$$?.is_cdrom);
8383
+ this.slave = new $IDEInterface$$module$src$ide$$(this, 1, $channel_config_slave_cfg$$?.buffer, $channel_config_slave_cfg$$?.is_cdrom);
8384
+ this.current_interface = this.master;
8385
+ this.device_control_reg = 2;
8386
+ this.dma_command = this.dma_status = this.prdt_addr = 0;
8387
+ $controller_cpu$jscomp$24$$ = $controller_cpu$jscomp$24$$.cpu;
8388
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 0, this, function() {
8346
8389
  return this.current_interface.read_data(1);
8347
8390
  }, function() {
8348
8391
  return this.current_interface.read_data(2);
8349
8392
  }, function() {
8350
8393
  return this.current_interface.read_data(4);
8351
8394
  });
8352
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 1, this, function() {
8353
- $dbg_log$$module$src$log$$("Read error: " + $h$$module$src$lib$$(this.current_interface.error & 255) + " slave=" + (this.current_interface === this.slave), 32768);
8354
- return this.current_interface.error & 255;
8395
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 1, this, function() {
8396
+ return this.current_interface.error_reg & 255;
8397
+ });
8398
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 2, this, function() {
8399
+ return this.current_interface.sector_count_reg & 255;
8355
8400
  });
8356
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 2, this, function() {
8357
- $dbg_log$$module$src$log$$("Read bytecount: " + $h$$module$src$lib$$(this.current_interface.bytecount & 255), 32768);
8358
- return this.current_interface.bytecount & 255;
8401
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 3, this, function() {
8402
+ return this.current_interface.lba_low_reg & 255;
8359
8403
  });
8360
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 3, this, function() {
8361
- $dbg_log$$module$src$log$$("Read sector: " + $h$$module$src$lib$$(this.current_interface.sector & 255), 32768);
8362
- return this.current_interface.sector & 255;
8404
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 4, this, function() {
8405
+ return this.current_interface.lba_mid_reg & 255;
8363
8406
  });
8364
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 4, this, function() {
8365
- $dbg_log$$module$src$log$$("Read 1F4: " + $h$$module$src$lib$$(this.current_interface.cylinder_low & 255), 32768);
8366
- return this.current_interface.cylinder_low & 255;
8407
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 5, this, function() {
8408
+ return this.current_interface.lba_high_reg & 255;
8367
8409
  });
8368
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 5, this, function() {
8369
- $dbg_log$$module$src$log$$("Read 1F5: " + $h$$module$src$lib$$(this.current_interface.cylinder_high & 255), 32768);
8370
- return this.current_interface.cylinder_high & 255;
8410
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 6, this, function() {
8411
+ return this.current_interface.device_reg & 255;
8371
8412
  });
8372
- $cpu$jscomp$23$$.io.register_read(this.ata_port | 6, this, function() {
8373
- $dbg_log$$module$src$log$$("Read 1F6", 32768);
8374
- return this.current_interface.drive_head & 255;
8413
+ $controller_cpu$jscomp$24$$.io.register_read(this.command_base | 7, this, function() {
8414
+ const $status$jscomp$11$$ = this.read_status();
8415
+ this.cpu.device_lower_irq(this.irq);
8416
+ return $status$jscomp$11$$;
8375
8417
  });
8376
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 0, this, function($data$jscomp$185$$) {
8418
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 0, this, function($data$jscomp$185$$) {
8377
8419
  this.current_interface.write_data_port8($data$jscomp$185$$);
8378
8420
  }, function($data$jscomp$186$$) {
8379
8421
  this.current_interface.write_data_port16($data$jscomp$186$$);
8380
8422
  }, function($data$jscomp$187$$) {
8381
8423
  this.current_interface.write_data_port32($data$jscomp$187$$);
8382
8424
  });
8383
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 1, this, function($data$jscomp$188$$) {
8384
- $dbg_log$$module$src$log$$("1F1/lba_count: " + $h$$module$src$lib$$($data$jscomp$188$$), 32768);
8385
- this.master.lba_count = (this.master.lba_count << 8 | $data$jscomp$188$$) & 65535;
8386
- this.slave.lba_count = (this.slave.lba_count << 8 | $data$jscomp$188$$) & 65535;
8387
- });
8388
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 2, this, function($data$jscomp$189$$) {
8389
- $dbg_log$$module$src$log$$("1F2/bytecount: " + $h$$module$src$lib$$($data$jscomp$189$$), 32768);
8390
- this.master.bytecount = (this.master.bytecount << 8 | $data$jscomp$189$$) & 65535;
8391
- this.slave.bytecount = (this.slave.bytecount << 8 | $data$jscomp$189$$) & 65535;
8392
- });
8393
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 3, this, function($data$jscomp$190$$) {
8394
- $dbg_log$$module$src$log$$("1F3/sector: " + $h$$module$src$lib$$($data$jscomp$190$$), 32768);
8395
- this.master.sector = (this.master.sector << 8 | $data$jscomp$190$$) & 65535;
8396
- this.slave.sector = (this.slave.sector << 8 | $data$jscomp$190$$) & 65535;
8397
- });
8398
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 4, this, function($data$jscomp$191$$) {
8399
- $dbg_log$$module$src$log$$("1F4/sector low: " + $h$$module$src$lib$$($data$jscomp$191$$), 32768);
8400
- this.master.cylinder_low = (this.master.cylinder_low << 8 | $data$jscomp$191$$) & 65535;
8401
- this.slave.cylinder_low = (this.slave.cylinder_low << 8 | $data$jscomp$191$$) & 65535;
8402
- });
8403
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 5, this, function($data$jscomp$192$$) {
8404
- $dbg_log$$module$src$log$$("1F5/sector high: " + $h$$module$src$lib$$($data$jscomp$192$$), 32768);
8405
- this.master.cylinder_high = (this.master.cylinder_high << 8 | $data$jscomp$192$$) & 65535;
8406
- this.slave.cylinder_high = (this.slave.cylinder_high << 8 | $data$jscomp$192$$) & 65535;
8407
- });
8408
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 6, this, function($data$jscomp$193$$) {
8409
- var $slave$$ = $data$jscomp$193$$ & 16;
8410
- $dbg_log$$module$src$log$$("1F6/drive: " + $h$$module$src$lib$$($data$jscomp$193$$, 2), 32768);
8411
- $slave$$ ? ($dbg_log$$module$src$log$$("Slave", 32768), this.current_interface = this.slave) : this.current_interface = this.master;
8412
- this.master.drive_head = $data$jscomp$193$$;
8413
- this.slave.drive_head = $data$jscomp$193$$;
8414
- this.master.is_lba = this.slave.is_lba = $data$jscomp$193$$ >> 6 & 1;
8415
- this.master.head = this.slave.head = $data$jscomp$193$$ & 15;
8425
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 1, this, function($data$jscomp$188$$) {
8426
+ this.current_interface.features_reg = (this.current_interface.features_reg << 8 | $data$jscomp$188$$) & 65535;
8416
8427
  });
8417
- this.dma_command = this.dma_status = this.prdt_addr = 0;
8418
- $cpu$jscomp$23$$.io.register_write(this.ata_port | 7, this, function($data$jscomp$194$$) {
8419
- $dbg_log$$module$src$log$$("lower irq", 32768);
8420
- this.cpu.device_lower_irq(this.irq);
8421
- this.current_interface.ata_command($data$jscomp$194$$);
8428
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 2, this, function($data$jscomp$189$$) {
8429
+ this.current_interface.sector_count_reg = (this.current_interface.sector_count_reg << 8 | $data$jscomp$189$$) & 65535;
8422
8430
  });
8423
- $cpu$jscomp$23$$.io.register_read(this.master_port | 4, this, void 0, void 0, this.dma_read_addr);
8424
- $cpu$jscomp$23$$.io.register_write(this.master_port | 4, this, void 0, void 0, this.dma_set_addr);
8425
- $cpu$jscomp$23$$.io.register_read(this.master_port, this, this.dma_read_command8, void 0, this.dma_read_command);
8426
- $cpu$jscomp$23$$.io.register_write(this.master_port, this, this.dma_write_command8, void 0, this.dma_write_command);
8427
- $cpu$jscomp$23$$.io.register_read(this.master_port | 2, this, this.dma_read_status);
8428
- $cpu$jscomp$23$$.io.register_write(this.master_port | 2, this, this.dma_write_status);
8429
- $cpu$jscomp$23$$.io.register_read(this.master_port | 8, this, function() {
8430
- $dbg_log$$module$src$log$$("DMA read 0x8", 32768);
8431
- return 0;
8431
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 3, this, function($data$jscomp$190$$) {
8432
+ this.current_interface.lba_low_reg = (this.current_interface.lba_low_reg << 8 | $data$jscomp$190$$) & 65535;
8432
8433
  });
8433
- $cpu$jscomp$23$$.io.register_read(this.master_port | 10, this, function() {
8434
- $dbg_log$$module$src$log$$("DMA read 0xA", 32768);
8435
- return 0;
8434
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 4, this, function($data$jscomp$191$$) {
8435
+ this.current_interface.lba_mid_reg = (this.current_interface.lba_mid_reg << 8 | $data$jscomp$191$$) & 65535;
8436
+ });
8437
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 5, this, function($data$jscomp$192$$) {
8438
+ this.current_interface.lba_high_reg = (this.current_interface.lba_high_reg << 8 | $data$jscomp$192$$) & 65535;
8439
+ });
8440
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 6, this, function($data$jscomp$193$$) {
8441
+ const $select_slave$$ = $data$jscomp$193$$ & 16;
8442
+ if ($select_slave$$ && this.current_interface === this.master || !$select_slave$$ && this.current_interface === this.slave) {
8443
+ $select_slave$$ ? ($dbg_log$$module$src$log$$(`${this.current_interface.name}: select slave device (${this.channel_nr ? "secondary" : "primary"})`, 32768), this.current_interface = this.slave) : ($dbg_log$$module$src$log$$(`${this.current_interface.name}: select master device (${this.channel_nr ? "secondary" : "primary"})`, 32768), this.current_interface = this.master);
8444
+ }
8445
+ this.current_interface.device_reg = $data$jscomp$193$$;
8446
+ this.current_interface.is_lba = $data$jscomp$193$$ >> 6 & 1;
8447
+ this.current_interface.head = $data$jscomp$193$$ & 15;
8436
8448
  });
8437
- $cpu$jscomp$23$$.devices.pci.register_device(this);
8449
+ $controller_cpu$jscomp$24$$.io.register_write(this.command_base | 7, this, function($data$jscomp$194$$) {
8450
+ this.current_interface.status_reg &= -34;
8451
+ this.current_interface.ata_command($data$jscomp$194$$);
8452
+ this.cpu.device_lower_irq(this.irq);
8453
+ });
8454
+ $controller_cpu$jscomp$24$$.io.register_read(this.control_base | 0, this, this.read_status);
8455
+ $controller_cpu$jscomp$24$$.io.register_write(this.control_base | 0, this, this.write_control);
8456
+ $bus_master_base_channel_nr$$ = 46080 + 8 * $bus_master_base_channel_nr$$;
8457
+ $controller_cpu$jscomp$24$$.io.register_read($bus_master_base_channel_nr$$ | 0, this, this.dma_read_command8, void 0, this.dma_read_command);
8458
+ $controller_cpu$jscomp$24$$.io.register_write($bus_master_base_channel_nr$$ | 0, this, this.dma_write_command8, void 0, this.dma_write_command);
8459
+ $controller_cpu$jscomp$24$$.io.register_read($bus_master_base_channel_nr$$ | 2, this, this.dma_read_status);
8460
+ $controller_cpu$jscomp$24$$.io.register_write($bus_master_base_channel_nr$$ | 2, this, this.dma_write_status);
8461
+ $controller_cpu$jscomp$24$$.io.register_read($bus_master_base_channel_nr$$ | 4, this, void 0, void 0, this.dma_read_addr);
8462
+ $controller_cpu$jscomp$24$$.io.register_write($bus_master_base_channel_nr$$ | 4, this, void 0, void 0, this.dma_set_addr);
8438
8463
  Object.seal(this);
8439
8464
  }
8440
- $IDEDevice$$module$src$ide$$.prototype.read_status = function() {
8441
- if (this.current_interface.buffer) {
8442
- var $ret$jscomp$11$$ = this.current_interface.status;
8443
- $dbg_log$$module$src$log$$("ATA read status: " + $h$$module$src$lib$$($ret$jscomp$11$$, 2), 32768);
8444
- return $ret$jscomp$11$$;
8445
- }
8446
- return 0;
8465
+ $IDEChannel$$module$src$ide$$.prototype.read_status = function() {
8466
+ return this.current_interface.drive_connected ? this.current_interface.status_reg : 0;
8447
8467
  };
8448
- $IDEDevice$$module$src$ide$$.prototype.write_control = function($data$jscomp$195$$) {
8449
- $dbg_log$$module$src$log$$("set device control: " + $h$$module$src$lib$$($data$jscomp$195$$, 2) + " interrupts " + ($data$jscomp$195$$ & 2 ? "disabled" : "enabled"), 32768);
8450
- $data$jscomp$195$$ & 4 && ($dbg_log$$module$src$log$$("Reset via control port", 32768), this.cpu.device_lower_irq(this.irq), this.master.device_reset(), this.slave.device_reset());
8451
- this.device_control = $data$jscomp$195$$;
8468
+ $IDEChannel$$module$src$ide$$.prototype.write_control = function($data$jscomp$195$$) {
8469
+ $data$jscomp$195$$ & 4 && ($dbg_log$$module$src$log$$(`${this.current_interface.name}: soft reset via control port (lower IRQ ${this.irq})`, 32768), this.cpu.device_lower_irq(this.irq), this.master.device_reset(), this.slave.device_reset());
8470
+ this.device_control_reg = $data$jscomp$195$$;
8452
8471
  };
8453
- $IDEDevice$$module$src$ide$$.prototype.dma_read_addr = function() {
8454
- $dbg_log$$module$src$log$$("dma get address: " + $h$$module$src$lib$$(this.prdt_addr, 8), 32768);
8472
+ $IDEChannel$$module$src$ide$$.prototype.dma_read_addr = function() {
8455
8473
  return this.prdt_addr;
8456
8474
  };
8457
- $IDEDevice$$module$src$ide$$.prototype.dma_set_addr = function($data$jscomp$196$$) {
8458
- $dbg_log$$module$src$log$$("dma set address: " + $h$$module$src$lib$$($data$jscomp$196$$, 8), 32768);
8475
+ $IDEChannel$$module$src$ide$$.prototype.dma_set_addr = function($data$jscomp$196$$) {
8459
8476
  this.prdt_addr = $data$jscomp$196$$;
8460
8477
  };
8461
- $IDEDevice$$module$src$ide$$.prototype.dma_read_status = function() {
8462
- $dbg_log$$module$src$log$$("DMA read status: " + $h$$module$src$lib$$(this.dma_status), 32768);
8478
+ $IDEChannel$$module$src$ide$$.prototype.dma_read_status = function() {
8463
8479
  return this.dma_status;
8464
8480
  };
8465
- $IDEDevice$$module$src$ide$$.prototype.dma_write_status = function($value$jscomp$173$$) {
8466
- $dbg_log$$module$src$log$$("DMA set status: " + $h$$module$src$lib$$($value$jscomp$173$$), 32768);
8481
+ $IDEChannel$$module$src$ide$$.prototype.dma_write_status = function($value$jscomp$173$$) {
8467
8482
  this.dma_status &= ~($value$jscomp$173$$ & 6);
8468
8483
  };
8469
- $IDEDevice$$module$src$ide$$.prototype.dma_read_command = function() {
8484
+ $IDEChannel$$module$src$ide$$.prototype.dma_read_command = function() {
8470
8485
  return this.dma_read_command8() | this.dma_read_status() << 16;
8471
8486
  };
8472
- $IDEDevice$$module$src$ide$$.prototype.dma_read_command8 = function() {
8473
- $dbg_log$$module$src$log$$("DMA read command: " + $h$$module$src$lib$$(this.dma_command), 32768);
8487
+ $IDEChannel$$module$src$ide$$.prototype.dma_read_command8 = function() {
8474
8488
  return this.dma_command;
8475
8489
  };
8476
- $IDEDevice$$module$src$ide$$.prototype.dma_write_command = function($value$jscomp$174$$) {
8477
- $dbg_log$$module$src$log$$("DMA write command: " + $h$$module$src$lib$$($value$jscomp$174$$), 32768);
8490
+ $IDEChannel$$module$src$ide$$.prototype.dma_write_command = function($value$jscomp$174$$) {
8478
8491
  this.dma_write_command8($value$jscomp$174$$ & 255);
8479
8492
  this.dma_write_status($value$jscomp$174$$ >> 16 & 255);
8480
8493
  };
8481
- $IDEDevice$$module$src$ide$$.prototype.dma_write_command8 = function($value$jscomp$175$$) {
8482
- $dbg_log$$module$src$log$$("DMA write command8: " + $h$$module$src$lib$$($value$jscomp$175$$), 32768);
8494
+ $IDEChannel$$module$src$ide$$.prototype.dma_write_command8 = function($value$jscomp$175$$) {
8483
8495
  const $old_command$$ = this.dma_command;
8484
8496
  this.dma_command = $value$jscomp$175$$ & 9;
8485
8497
  if (($old_command$$ & 1) !== ($value$jscomp$175$$ & 1)) {
@@ -8487,8 +8499,8 @@ $IDEDevice$$module$src$ide$$.prototype.dma_write_command8 = function($value$jsco
8487
8499
  this.dma_status &= -2;
8488
8500
  } else {
8489
8501
  switch(this.dma_status |= 1, this.current_interface.current_command) {
8490
- case 37:
8491
8502
  case 200:
8503
+ case 37:
8492
8504
  this.current_interface.do_ata_read_sectors_dma();
8493
8505
  break;
8494
8506
  case 202:
@@ -8499,346 +8511,406 @@ $IDEDevice$$module$src$ide$$.prototype.dma_write_command8 = function($value$jsco
8499
8511
  this.current_interface.do_atapi_dma();
8500
8512
  break;
8501
8513
  default:
8502
- $dbg_log$$module$src$log$$("Spurious dma command write, current command: " + $h$$module$src$lib$$(this.current_interface.current_command), 32768), $dbg_assert$$module$src$log$$(!1);
8514
+ $dbg_log$$module$src$log$$(this.current_interface.name + ": spurious DMA command write, current command: " + $h$$module$src$lib$$(this.current_interface.current_command), 32768), $dbg_log$$module$src$log$$(this.current_interface.name + ": DMA clear status bit 1h, set status bit 2h", 32768), this.dma_status &= -2, this.dma_status |= 2, this.push_irq();
8503
8515
  }
8504
8516
  }
8505
8517
  }
8506
8518
  };
8507
- $IDEDevice$$module$src$ide$$.prototype.push_irq = function() {
8508
- 0 === (this.device_control & 2) && ($dbg_log$$module$src$log$$("push irq", 32768), this.dma_status |= 4, this.cpu.device_raise_irq(this.irq));
8509
- };
8510
- $IDEDevice$$module$src$ide$$.prototype.get_state = function() {
8511
- var $state$jscomp$46$$ = [];
8512
- $state$jscomp$46$$[0] = this.master;
8513
- $state$jscomp$46$$[1] = this.slave;
8514
- $state$jscomp$46$$[2] = this.ata_port;
8515
- $state$jscomp$46$$[3] = this.irq;
8516
- $state$jscomp$46$$[4] = this.pci_id;
8517
- $state$jscomp$46$$[5] = this.ata_port_high;
8518
- $state$jscomp$46$$[6] = this.master_port;
8519
- $state$jscomp$46$$[7] = this.name;
8520
- $state$jscomp$46$$[8] = this.device_control;
8521
- $state$jscomp$46$$[9] = this.prdt_addr;
8522
- $state$jscomp$46$$[10] = this.dma_status;
8523
- $state$jscomp$46$$[11] = this.current_interface === this.master;
8524
- $state$jscomp$46$$[12] = this.dma_command;
8525
- return $state$jscomp$46$$;
8519
+ $IDEChannel$$module$src$ide$$.prototype.push_irq = function() {
8520
+ 0 === (this.device_control_reg & 2) && (this.dma_status |= 4, this.cpu.device_raise_irq(this.irq));
8526
8521
  };
8527
- $IDEDevice$$module$src$ide$$.prototype.set_state = function($state$jscomp$47$$) {
8528
- this.master.set_state($state$jscomp$47$$[0]);
8529
- this.slave.set_state($state$jscomp$47$$[1]);
8530
- this.ata_port = $state$jscomp$47$$[2];
8531
- this.irq = $state$jscomp$47$$[3];
8532
- this.pci_id = $state$jscomp$47$$[4];
8533
- this.ata_port_high = $state$jscomp$47$$[5];
8534
- this.master_port = $state$jscomp$47$$[6];
8535
- this.name = $state$jscomp$47$$[7];
8536
- this.device_control = $state$jscomp$47$$[8];
8537
- this.prdt_addr = $state$jscomp$47$$[9];
8538
- this.dma_status = $state$jscomp$47$$[10];
8539
- this.current_interface = $state$jscomp$47$$[11] ? this.master : this.slave;
8540
- this.dma_command = $state$jscomp$47$$[12];
8541
- };
8542
- function $IDEInterface$$module$src$ide$$($device$jscomp$12_rtc$$, $cpu$jscomp$24$$, $buffer$jscomp$45$$, $is_cd$jscomp$1$$, $device_nr$$, $interface_nr$$, $bus$jscomp$23$$) {
8543
- this.device = $device$jscomp$12_rtc$$;
8544
- this.bus = $bus$jscomp$23$$;
8545
- this.nr = $device_nr$$;
8546
- this.cpu = $cpu$jscomp$24$$;
8547
- this.buffer = $buffer$jscomp$45$$;
8548
- this.sector_size = $is_cd$jscomp$1$$ ? 2048 : 512;
8549
- this.is_atapi = $is_cd$jscomp$1$$;
8550
- this.cylinder_count = this.sectors_per_track = this.head_count = this.sector_count = 0;
8551
- this.buffer && (this.sector_count = this.buffer.byteLength / this.sector_size, this.sector_count !== (this.sector_count | 0) && ($dbg_log$$module$src$log$$("Warning: Disk size not aligned with sector size", 32768), this.sector_count = Math.ceil(this.sector_count)), $is_cd$jscomp$1$$ ? (this.head_count = 1, this.sectors_per_track = 0) : (this.head_count = 16, this.sectors_per_track = 63), this.cylinder_count = this.sector_count / this.head_count / this.sectors_per_track, this.cylinder_count !==
8552
- (this.cylinder_count | 0) && ($dbg_log$$module$src$log$$("Warning: Rounding up cylinder count. Choose different head number", 32768), this.cylinder_count = Math.floor(this.cylinder_count)), $device$jscomp$12_rtc$$ = $cpu$jscomp$24$$.devices.rtc, $device$jscomp$12_rtc$$.cmos_write(57, $device$jscomp$12_rtc$$.cmos_read(57) | 1 << 4 * this.nr), $device$jscomp$12_rtc$$.cmos_write(18, $device$jscomp$12_rtc$$.cmos_read(18) & 15 | 240), $device$jscomp$12_rtc$$.cmos_write(27, this.cylinder_count & 255),
8553
- $device$jscomp$12_rtc$$.cmos_write(28, this.cylinder_count >> 8 & 255), $device$jscomp$12_rtc$$.cmos_write(29, this.head_count & 255), $device$jscomp$12_rtc$$.cmos_write(30, 255), $device$jscomp$12_rtc$$.cmos_write(31, 255), $device$jscomp$12_rtc$$.cmos_write(32, 200), $device$jscomp$12_rtc$$.cmos_write(33, this.cylinder_count & 255), $device$jscomp$12_rtc$$.cmos_write(34, this.cylinder_count >> 8 & 255), $device$jscomp$12_rtc$$.cmos_write(35, this.sectors_per_track & 255));
8554
- this.buffer = $buffer$jscomp$45$$;
8555
- this.drive_head = this.head = this.cylinder_high = this.cylinder_low = this.lba_count = this.sector = this.bytecount = this.is_lba = 0;
8556
- this.status = 80;
8522
+ $IDEChannel$$module$src$ide$$.prototype.get_state = function() {
8523
+ var $state$jscomp$48$$ = [];
8524
+ $state$jscomp$48$$[0] = this.master;
8525
+ $state$jscomp$48$$[1] = this.slave;
8526
+ $state$jscomp$48$$[2] = this.command_base;
8527
+ $state$jscomp$48$$[3] = this.irq;
8528
+ $state$jscomp$48$$[5] = this.control_base;
8529
+ $state$jscomp$48$$[7] = this.name;
8530
+ $state$jscomp$48$$[8] = this.device_control_reg;
8531
+ $state$jscomp$48$$[9] = this.prdt_addr;
8532
+ $state$jscomp$48$$[10] = this.dma_status;
8533
+ $state$jscomp$48$$[11] = this.current_interface === this.master;
8534
+ $state$jscomp$48$$[12] = this.dma_command;
8535
+ return $state$jscomp$48$$;
8536
+ };
8537
+ $IDEChannel$$module$src$ide$$.prototype.set_state = function($state$jscomp$49$$) {
8538
+ this.master.set_state($state$jscomp$49$$[0]);
8539
+ this.slave.set_state($state$jscomp$49$$[1]);
8540
+ this.command_base = $state$jscomp$49$$[2];
8541
+ this.irq = $state$jscomp$49$$[3];
8542
+ this.control_base = $state$jscomp$49$$[5];
8543
+ this.name = $state$jscomp$49$$[7];
8544
+ this.device_control_reg = $state$jscomp$49$$[8];
8545
+ this.prdt_addr = $state$jscomp$49$$[9];
8546
+ this.dma_status = $state$jscomp$49$$[10];
8547
+ this.current_interface = $state$jscomp$49$$[11] ? this.master : this.slave;
8548
+ this.dma_command = $state$jscomp$49$$[12];
8549
+ };
8550
+ function $IDEInterface$$module$src$ide$$($channel$jscomp$31$$, $interface_nr$$, $buffer$jscomp$45$$, $is_cd$$) {
8551
+ this.channel = $channel$jscomp$31$$;
8552
+ this.name = $channel$jscomp$31$$.name + "." + $interface_nr$$;
8553
+ this.bus = $channel$jscomp$31$$.bus;
8554
+ this.channel_nr = $channel$jscomp$31$$.channel_nr;
8555
+ this.interface_nr = $interface_nr$$;
8556
+ this.cpu = $channel$jscomp$31$$.cpu;
8557
+ this.buffer = null;
8558
+ this.drive_connected = $is_cd$$ || !!$buffer$jscomp$45$$;
8559
+ this.sector_size = $is_cd$$ ? 2048 : 512;
8560
+ this.is_atapi = $is_cd$$;
8561
+ this.sector_count = 0;
8562
+ this.head_count = this.is_atapi ? 1 : 0;
8563
+ this.device_reg = this.head = this.lba_high_reg = this.lba_mid_reg = this.features_reg = this.lba_low_reg = this.sector_count_reg = this.is_lba = this.cylinder_count = this.sectors_per_track = 0;
8564
+ this.status_reg = 80;
8557
8565
  this.sectors_per_drq = 128;
8558
- this.data_pointer = this.error = 0;
8566
+ this.data_pointer = this.error_reg = 0;
8559
8567
  this.data = new Uint8Array(65536);
8560
8568
  this.data16 = new Uint16Array(this.data.buffer);
8561
8569
  this.data32 = new Int32Array(this.data.buffer);
8562
8570
  this.data_end = this.data_length = 0;
8563
- this.current_atapi_command = this.current_command = -1;
8571
+ this.current_command = -1;
8564
8572
  this.last_io_id = this.write_dest = 0;
8565
8573
  this.in_progress_io_ids = new Set;
8566
8574
  this.cancelled_io_ids = new Set;
8575
+ this.current_atapi_command = -1;
8576
+ this.atapi_add_sense = this.atapi_sense_key = 0;
8577
+ this.medium_changed = !1;
8578
+ this.set_disk_buffer($buffer$jscomp$45$$);
8579
+ this.drive_connected && $dbg_log$$module$src$log$$(`${this.name}: ${this.is_atapi ? "ATAPI CD-ROM" : "ATA HD"} device ready`, 32768);
8567
8580
  Object.seal(this);
8568
8581
  }
8582
+ $IDEInterface$$module$src$ide$$.prototype.has_disk = function() {
8583
+ return !!this.buffer;
8584
+ };
8585
+ $IDEInterface$$module$src$ide$$.prototype.eject = function() {
8586
+ this.is_atapi && this.buffer && (this.medium_changed = !0, this.buffer = null, this.status_reg = 89, this.error_reg = 96, this.push_irq());
8587
+ };
8588
+ $IDEInterface$$module$src$ide$$.prototype.set_cdrom = function($buffer$jscomp$46$$) {
8589
+ this.is_atapi && $buffer$jscomp$46$$ && (this.set_disk_buffer($buffer$jscomp$46$$), this.medium_changed = !0);
8590
+ };
8591
+ $IDEInterface$$module$src$ide$$.prototype.set_disk_buffer = function($buffer$jscomp$47_rtc$$) {
8592
+ if ($buffer$jscomp$47_rtc$$) {
8593
+ this.buffer = $buffer$jscomp$47_rtc$$;
8594
+ this.is_atapi && (this.status_reg = 89, this.error_reg = 96);
8595
+ this.sector_count = this.buffer.byteLength / this.sector_size;
8596
+ this.sector_count !== (this.sector_count | 0) && ($dbg_log$$module$src$log$$(this.name + ": warning: disk size not aligned with sector size", 32768), this.sector_count = Math.ceil(this.sector_count));
8597
+ this.is_atapi ? (this.head_count = 1, this.sectors_per_track = 2048) : (this.head_count = 16, this.sectors_per_track = 63);
8598
+ this.cylinder_count = this.sector_count / this.head_count / this.sectors_per_track;
8599
+ this.cylinder_count !== (this.cylinder_count | 0) && ($dbg_log$$module$src$log$$(this.name + ": warning: rounding up cylinder count, choose different head number", 32768), this.cylinder_count = Math.floor(this.cylinder_count));
8600
+ if (0 === this.interface_nr) {
8601
+ $buffer$jscomp$47_rtc$$ = this.cpu.devices.rtc;
8602
+ $buffer$jscomp$47_rtc$$.cmos_write(57, $buffer$jscomp$47_rtc$$.cmos_read(57) | 1 << 4 * this.channel_nr);
8603
+ $buffer$jscomp$47_rtc$$.cmos_write(18, $buffer$jscomp$47_rtc$$.cmos_read(18) & 15 | 240);
8604
+ const $drive_reg$$ = 0 === this.channel_nr ? 27 : 36;
8605
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 0, this.cylinder_count & 255);
8606
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 1, this.cylinder_count >> 8 & 255);
8607
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 2, this.head_count & 255);
8608
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 3, 255);
8609
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 4, 255);
8610
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 5, 200);
8611
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 6, this.cylinder_count & 255);
8612
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 7, this.cylinder_count >> 8 & 255);
8613
+ $buffer$jscomp$47_rtc$$.cmos_write($drive_reg$$ + 8, this.sectors_per_track & 255);
8614
+ }
8615
+ this.channel.cpu && this.push_irq();
8616
+ }
8617
+ };
8569
8618
  $IDEInterface$$module$src$ide$$.prototype.device_reset = function() {
8570
- this.is_atapi ? (this.status = 0, this.sector = this.error = this.bytecount = 1, this.cylinder_low = 20, this.cylinder_high = 235) : (this.status = 81, this.sector = this.error = this.bytecount = 1, this.cylinder_high = this.cylinder_low = 0);
8619
+ this.is_atapi ? (this.status_reg = 0, this.lba_low_reg = this.error_reg = this.sector_count_reg = 1, this.lba_mid_reg = 20, this.lba_high_reg = 235) : (this.status_reg = 81, this.lba_low_reg = this.error_reg = this.sector_count_reg = 1, this.lba_high_reg = this.lba_mid_reg = 0);
8571
8620
  this.cancel_io_operations();
8572
8621
  };
8573
8622
  $IDEInterface$$module$src$ide$$.prototype.push_irq = function() {
8574
- this.device.push_irq();
8623
+ this.channel.push_irq();
8575
8624
  };
8576
- $IDEInterface$$module$src$ide$$.prototype.ata_command = function($cmd_last_sector$$) {
8577
- $dbg_log$$module$src$log$$("ATA Command: " + $h$$module$src$lib$$($cmd_last_sector$$) + " slave=" + (this.drive_head >> 4 & 1), 32768);
8578
- if (this.buffer) {
8579
- switch(this.current_command = $cmd_last_sector$$, this.error = 0, $cmd_last_sector$$) {
8625
+ $IDEInterface$$module$src$ide$$.prototype.ata_abort_command = function() {
8626
+ this.error_reg = 4;
8627
+ this.status_reg = 65;
8628
+ this.push_irq();
8629
+ };
8630
+ $IDEInterface$$module$src$ide$$.prototype.capture_regs = function() {
8631
+ return `ST=${$h$$module$src$lib$$(this.status_reg & 255)} ER=${$h$$module$src$lib$$(this.error_reg & 255)} ` + `SC=${$h$$module$src$lib$$(this.sector_count_reg & 255)} LL=${$h$$module$src$lib$$(this.lba_low_reg & 255)} ` + `LM=${$h$$module$src$lib$$(this.lba_mid_reg & 255)} LH=${$h$$module$src$lib$$(this.lba_high_reg & 255)} ` + `FE=${$h$$module$src$lib$$(this.features_reg & 255)}`;
8632
+ };
8633
+ $IDEInterface$$module$src$ide$$.prototype.ata_command = function($cmd$$) {
8634
+ if (this.drive_connected || 144 === $cmd$$) {
8635
+ var $regs_msg_regs_pre$$ = this.capture_regs(), $do_dbg_log_result$jscomp$18$$ = !0;
8636
+ this.current_command = $cmd$$;
8637
+ this.error_reg = 0;
8638
+ switch($cmd$$) {
8580
8639
  case 8:
8581
- $dbg_log$$module$src$log$$("ATA device reset", 32768);
8582
8640
  this.data_length = this.data_end = this.data_pointer = 0;
8583
8641
  this.device_reset();
8584
8642
  this.push_irq();
8585
8643
  break;
8586
8644
  case 16:
8587
- this.status = 80;
8588
- this.cylinder_low = 0;
8645
+ this.lba_mid_reg = 0;
8646
+ this.status_reg = 80;
8589
8647
  this.push_irq();
8590
8648
  break;
8591
8649
  case 248:
8592
- this.status = 80;
8593
- $cmd_last_sector$$ = this.sector_count - 1;
8594
- this.sector = $cmd_last_sector$$ & 255;
8595
- this.cylinder_low = $cmd_last_sector$$ >> 8 & 255;
8596
- this.cylinder_high = $cmd_last_sector$$ >> 16 & 255;
8597
- this.drive_head = this.drive_head & 240 | $cmd_last_sector$$ >> 24 & 15;
8650
+ var $last_sector$$ = this.sector_count - 1;
8651
+ this.lba_low_reg = $last_sector$$ & 255;
8652
+ this.lba_mid_reg = $last_sector$$ >> 8 & 255;
8653
+ this.lba_high_reg = $last_sector$$ >> 16 & 255;
8654
+ this.device_reg = this.device_reg & 240 | $last_sector$$ >> 24 & 15;
8655
+ this.status_reg = 80;
8598
8656
  this.push_irq();
8599
8657
  break;
8600
8658
  case 39:
8601
- this.status = 80;
8602
- $cmd_last_sector$$ = this.sector_count - 1;
8603
- this.sector = $cmd_last_sector$$ & 255;
8604
- this.cylinder_low = $cmd_last_sector$$ >> 8 & 255;
8605
- this.cylinder_high = $cmd_last_sector$$ >> 16 & 255;
8606
- this.sector |= $cmd_last_sector$$ >> 24 << 8 & 65280;
8659
+ $last_sector$$ = this.sector_count - 1;
8660
+ this.lba_low_reg = $last_sector$$ & 255;
8661
+ this.lba_mid_reg = $last_sector$$ >> 8 & 255;
8662
+ this.lba_high_reg = $last_sector$$ >> 16 & 255;
8663
+ this.lba_low_reg |= $last_sector$$ >> 24 << 8 & 65280;
8664
+ this.status_reg = 80;
8607
8665
  this.push_irq();
8608
8666
  break;
8609
8667
  case 32:
8668
+ $do_dbg_log_result$jscomp$18$$ = !1;
8669
+ this.is_atapi ? (this.lba_mid_reg = 20, this.lba_high_reg = 235, this.ata_abort_command()) : this.ata_read_sectors($cmd$$);
8670
+ break;
8610
8671
  case 36:
8611
8672
  case 41:
8612
8673
  case 196:
8613
- this.ata_read_sectors($cmd_last_sector$$);
8674
+ $do_dbg_log_result$jscomp$18$$ = !1;
8675
+ this.is_atapi ? this.ata_abort_command() : this.ata_read_sectors($cmd$$);
8614
8676
  break;
8615
8677
  case 48:
8616
8678
  case 52:
8617
8679
  case 57:
8618
8680
  case 197:
8619
- this.ata_write_sectors($cmd_last_sector$$);
8681
+ $do_dbg_log_result$jscomp$18$$ = !1;
8682
+ this.is_atapi ? this.ata_abort_command() : this.ata_write_sectors($cmd$$);
8620
8683
  break;
8621
8684
  case 144:
8622
- this.push_irq();
8623
- this.error = 257;
8624
- this.status = 80;
8685
+ this.channel.master.status_reg = 80;
8686
+ this.channel.master.error_reg = 1;
8687
+ this.channel.master.push_irq();
8688
+ this.channel.slave.drive_connected && (this.channel.slave.status_reg = 80, this.channel.slave.error_reg = 1, this.channel.slave.push_irq());
8625
8689
  break;
8626
8690
  case 145:
8627
- this.status = 80;
8691
+ this.status_reg = 80;
8628
8692
  this.push_irq();
8629
8693
  break;
8630
8694
  case 160:
8631
- this.is_atapi && (this.status = 88, this.data_allocate(12), this.data_end = 12, this.bytecount = 1, this.push_irq());
8695
+ this.is_atapi ? ($do_dbg_log_result$jscomp$18$$ = !1, this.data_allocate(12), this.data_end = 12, this.sector_count_reg = 1, this.status_reg = 88, this.push_irq()) : this.ata_abort_command();
8632
8696
  break;
8633
8697
  case 161:
8634
- $dbg_log$$module$src$log$$("ATA identify packet device", 32768);
8635
- this.is_atapi ? (this.create_identify_packet(), this.status = 88, this.cylinder_low = 20, this.cylinder_high = 235) : this.status = 65;
8636
- this.push_irq();
8698
+ this.is_atapi ? (this.create_identify_packet(), this.status_reg = 88, this.push_irq()) : this.ata_abort_command();
8637
8699
  break;
8638
8700
  case 198:
8639
- $dbg_log$$module$src$log$$("Logical sectors per DRQ Block: " + $h$$module$src$lib$$(this.bytecount & 255), 32768);
8640
- this.sectors_per_drq = this.bytecount & 255;
8641
- this.status = 80;
8701
+ $dbg_log$$module$src$log$$(this.name + ": logical sectors per DRQ Block: " + $h$$module$src$lib$$(this.sector_count_reg & 255), 32768);
8702
+ this.sectors_per_drq = this.sector_count_reg & 255;
8703
+ this.status_reg = 80;
8642
8704
  this.push_irq();
8643
8705
  break;
8644
- case 37:
8645
8706
  case 200:
8646
- this.ata_read_sectors_dma($cmd_last_sector$$);
8707
+ case 37:
8708
+ $do_dbg_log_result$jscomp$18$$ = !1;
8709
+ this.ata_read_sectors_dma($cmd$$);
8647
8710
  break;
8648
- case 53:
8649
8711
  case 202:
8650
- this.ata_write_sectors_dma($cmd_last_sector$$);
8712
+ case 53:
8713
+ $do_dbg_log_result$jscomp$18$$ = !1;
8714
+ this.ata_write_sectors_dma($cmd$$);
8651
8715
  break;
8652
8716
  case 64:
8653
- $dbg_log$$module$src$log$$("read verify sectors", 32768);
8654
- this.status = 80;
8717
+ this.status_reg = 80;
8655
8718
  this.push_irq();
8656
8719
  break;
8657
8720
  case 218:
8658
- $dbg_log$$module$src$log$$("Unimplemented: get media status", 32768);
8659
- this.status = 65;
8660
- this.error = 4;
8721
+ this.is_atapi && (this.buffer || (this.error_reg |= 2), this.medium_changed && (this.error_reg |= 32, this.medium_changed = !1), this.error_reg |= 64);
8722
+ this.status_reg = 80;
8661
8723
  this.push_irq();
8662
8724
  break;
8663
8725
  case 224:
8664
- $dbg_log$$module$src$log$$("ATA standby immediate", 32768);
8665
- this.status = 80;
8726
+ this.status_reg = 80;
8666
8727
  this.push_irq();
8667
8728
  break;
8668
8729
  case 225:
8669
- $dbg_log$$module$src$log$$("ATA idle immediate", 32768);
8670
- this.status = 80;
8730
+ this.status_reg = 80;
8671
8731
  this.push_irq();
8672
8732
  break;
8673
8733
  case 231:
8674
- $dbg_log$$module$src$log$$("ATA flush cache", 32768);
8675
- this.status = 80;
8676
- this.push_irq();
8677
- break;
8678
- case 236:
8679
- $dbg_log$$module$src$log$$("ATA identify device", 32768);
8680
- if (this.is_atapi) {
8681
- this.status = 65;
8682
- this.error = 4;
8683
- this.push_irq();
8684
- break;
8685
- }
8686
- this.create_identify_packet();
8687
- this.status = 88;
8734
+ this.status_reg = 80;
8688
8735
  this.push_irq();
8689
8736
  break;
8690
8737
  case 234:
8691
- $dbg_log$$module$src$log$$("flush cache ext", 32768);
8692
- this.status = 80;
8738
+ this.status_reg = 80;
8693
8739
  this.push_irq();
8694
8740
  break;
8741
+ case 236:
8742
+ this.is_atapi ? (this.lba_mid_reg = 20, this.lba_high_reg = 235, this.ata_abort_command()) : (this.create_identify_packet(), this.status_reg = 88, this.push_irq());
8743
+ break;
8695
8744
  case 239:
8696
- $dbg_log$$module$src$log$$("set features: " + $h$$module$src$lib$$(this.bytecount & 255), 32768);
8697
- this.status = 80;
8745
+ this.status_reg = 80;
8698
8746
  this.push_irq();
8699
8747
  break;
8700
8748
  case 222:
8701
- this.status = 80;
8749
+ this.status_reg = 64;
8702
8750
  this.push_irq();
8703
8751
  break;
8704
8752
  case 245:
8705
- $dbg_log$$module$src$log$$("security freeze lock", 32768);
8706
- this.status = 80;
8753
+ this.status_reg = 80;
8707
8754
  this.push_irq();
8708
8755
  break;
8709
8756
  case 249:
8710
- $dbg_log$$module$src$log$$("Unimplemented: set max address", 32768);
8711
- this.status = 65;
8712
- this.error = 4;
8757
+ this.ata_abort_command();
8758
+ break;
8759
+ case 0:
8760
+ this.ata_abort_command();
8713
8761
  break;
8714
8762
  default:
8715
- $dbg_assert$$module$src$log$$(!1, "New ATA cmd on 1F7: " + $h$$module$src$lib$$($cmd_last_sector$$), 32768), this.status = 65, this.error = 4;
8763
+ $dbg_assert$$module$src$log$$(!1, `${this.name}: error: unimplemented ATA command ${$h$$module$src$lib$$($cmd$$)}: ABORT [${this.capture_regs()}]`, 32768), this.ata_abort_command();
8716
8764
  }
8765
+ $do_dbg_log_result$jscomp$18$$ && ($regs_msg_regs_pre$$ = `[${$regs_msg_regs_pre$$}] -> [${this.capture_regs()}]`, $do_dbg_log_result$jscomp$18$$ = this.status_reg & 1 ? this.error_reg & 4 ? "ABORT" : "ERROR" : "OK", $dbg_log$$module$src$log$$(`${this.name}: ATA command ${$ATA_CMD_NAME$$module$src$ide$$[$cmd$$]} (${$h$$module$src$lib$$($cmd$$)}): ${$do_dbg_log_result$jscomp$18$$} ${$regs_msg_regs_pre$$}`, 32768));
8717
8766
  } else {
8718
- $dbg_log$$module$src$log$$("abort: No buffer", 32768), this.error = 4, this.status = 65, this.push_irq();
8767
+ $dbg_log$$module$src$log$$(`${this.name}: ATA command ${$ATA_CMD_NAME$$module$src$ide$$[$cmd$$]} (${$h$$module$src$lib$$($cmd$$)}) ignored: no slave drive connected`, 32768);
8719
8768
  }
8720
8769
  };
8721
8770
  $IDEInterface$$module$src$ide$$.prototype.atapi_handle = function() {
8722
- $dbg_log$$module$src$log$$("ATAPI Command: " + $h$$module$src$lib$$(this.data[0]) + " slave=" + (this.drive_head >> 4 & 1), 32768);
8771
+ const $cmd$jscomp$1$$ = this.data[0], $cmd_name$$ = $ATAPI_CMD$$module$src$ide$$[$cmd$jscomp$1$$] ? $ATAPI_CMD$$module$src$ide$$[$cmd$jscomp$1$$].name : "<undefined>";
8772
+ var $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = $ATAPI_CMD$$module$src$ide$$[$cmd$jscomp$1$$] ? $ATAPI_CMD$$module$src$ide$$[$cmd$jscomp$1$$].flags : 0, $regs_msg$jscomp$1_regs_pre$jscomp$1$$ = this.capture_regs(), $do_dbg_log$jscomp$1_result$jscomp$19$$ = !0;
8773
+ let $dbg_log_extra$$;
8723
8774
  this.data_pointer = 0;
8724
- this.current_atapi_command = this.data[0];
8725
- switch(this.current_atapi_command) {
8726
- case 0:
8727
- $dbg_log$$module$src$log$$("test unit ready", 32768);
8728
- this.data_allocate(0);
8729
- this.data_end = this.data_length;
8730
- this.status = 80;
8731
- break;
8732
- case 3:
8733
- this.data_allocate(this.data[4]);
8734
- this.data_end = this.data_length;
8735
- this.status = 88;
8736
- this.data[0] = 240;
8737
- this.data[2] = 5;
8738
- this.data[7] = 8;
8739
- break;
8740
- case 18:
8741
- var $count$jscomp$57_length$jscomp$27_sector_count$$ = this.data[4];
8742
- this.status = 88;
8743
- $dbg_log$$module$src$log$$("inquiry: " + $h$$module$src$lib$$(this.data[1], 2) + " length=" + $count$jscomp$57_length$jscomp$27_sector_count$$, 32768);
8744
- this.data.set([5, 128, 1, 49, 31, 0, 0, 0, 83, 79, 78, 89, 32, 32, 32, 32, 67, 68, 45, 82, 79, 77, 32, 67, 68, 85, 45, 49, 48, 48, 48, 32, 49, 46, 49, 97, ]);
8745
- this.data_end = this.data_length = Math.min(36, $count$jscomp$57_length$jscomp$27_sector_count$$);
8746
- break;
8747
- case 26:
8748
- this.data_allocate(this.data[4]);
8749
- this.data_end = this.data_length;
8750
- this.status = 88;
8751
- break;
8752
- case 30:
8753
- this.data_allocate(0);
8754
- this.data_end = this.data_length;
8755
- this.status = 80;
8756
- break;
8757
- case 37:
8758
- $count$jscomp$57_length$jscomp$27_sector_count$$ = this.sector_count - 1;
8759
- this.data_set(new Uint8Array([$count$jscomp$57_length$jscomp$27_sector_count$$ >> 24 & 255, $count$jscomp$57_length$jscomp$27_sector_count$$ >> 16 & 255, $count$jscomp$57_length$jscomp$27_sector_count$$ >> 8 & 255, $count$jscomp$57_length$jscomp$27_sector_count$$ & 255, 0, 0, this.sector_size >> 8 & 255, this.sector_size & 255, ]));
8760
- this.data_end = this.data_length;
8761
- this.status = 88;
8762
- break;
8763
- case 40:
8764
- this.lba_count & 1 ? this.atapi_read_dma(this.data) : this.atapi_read(this.data);
8765
- break;
8766
- case 66:
8767
- $count$jscomp$57_length$jscomp$27_sector_count$$ = this.data[8];
8768
- this.data_allocate(Math.min(8, $count$jscomp$57_length$jscomp$27_sector_count$$));
8769
- this.data_end = this.data_length;
8770
- $dbg_log$$module$src$log$$("read q subcode: length=" + $count$jscomp$57_length$jscomp$27_sector_count$$, 32768);
8771
- this.status = 88;
8772
- break;
8773
- case 67:
8774
- $count$jscomp$57_length$jscomp$27_sector_count$$ = this.data[8] | this.data[7] << 8;
8775
- var $format$jscomp$19_page_code$$ = this.data[9] >> 6;
8776
- this.data_allocate($count$jscomp$57_length$jscomp$27_sector_count$$);
8777
- this.data_end = this.data_length;
8778
- $dbg_log$$module$src$log$$("read toc: " + $h$$module$src$lib$$($format$jscomp$19_page_code$$, 2) + " length=" + $count$jscomp$57_length$jscomp$27_sector_count$$ + " " + (this.data[1] & 2) + " " + $h$$module$src$lib$$(this.data[6]), 32768);
8779
- 0 === $format$jscomp$19_page_code$$ ? ($count$jscomp$57_length$jscomp$27_sector_count$$ = this.sector_count, this.data.set(new Uint8Array([0, 18, 1, 1, 0, 20, 1, 0, 0, 0, 0, 0, 0, 22, 170, 0, $count$jscomp$57_length$jscomp$27_sector_count$$ >> 24, $count$jscomp$57_length$jscomp$27_sector_count$$ >> 16 & 255, $count$jscomp$57_length$jscomp$27_sector_count$$ >> 8 & 255, $count$jscomp$57_length$jscomp$27_sector_count$$ & 255, ]))) : 1 === $format$jscomp$19_page_code$$ ? this.data.set(new Uint8Array([0,
8780
- 10, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, ])) : $dbg_assert$$module$src$log$$(!1, "Unimplemented format: " + $format$jscomp$19_page_code$$);
8781
- this.status = 88;
8782
- break;
8783
- case 70:
8784
- $count$jscomp$57_length$jscomp$27_sector_count$$ = this.data[8] | this.data[7] << 8;
8785
- $count$jscomp$57_length$jscomp$27_sector_count$$ = Math.min($count$jscomp$57_length$jscomp$27_sector_count$$, 32);
8786
- this.data_allocate($count$jscomp$57_length$jscomp$27_sector_count$$);
8787
- this.data_end = this.data_length;
8788
- this.data[0] = $count$jscomp$57_length$jscomp$27_sector_count$$ - 4 >> 24 & 255;
8789
- this.data[1] = $count$jscomp$57_length$jscomp$27_sector_count$$ - 4 >> 16 & 255;
8790
- this.data[2] = $count$jscomp$57_length$jscomp$27_sector_count$$ - 4 >> 8 & 255;
8791
- this.data[3] = $count$jscomp$57_length$jscomp$27_sector_count$$ - 4 & 255;
8792
- this.data[6] = 8;
8793
- this.data[10] = 3;
8794
- this.status = 88;
8795
- break;
8796
- case 81:
8797
- this.data_allocate(0);
8798
- this.data_end = this.data_length;
8799
- this.status = 80;
8800
- break;
8801
- case 82:
8802
- $dbg_log$$module$src$log$$("Unimplemented ATAPI command: " + $h$$module$src$lib$$(this.data[0]), 32768);
8803
- this.status = 81;
8804
- this.data_length = 0;
8805
- this.error = 80;
8806
- break;
8807
- case 90:
8808
- $count$jscomp$57_length$jscomp$27_sector_count$$ = this.data[8] | this.data[7] << 8;
8809
- $format$jscomp$19_page_code$$ = this.data[2];
8810
- $dbg_log$$module$src$log$$("mode sense: " + $h$$module$src$lib$$($format$jscomp$19_page_code$$) + " length=" + $count$jscomp$57_length$jscomp$27_sector_count$$, 32768);
8811
- 42 === $format$jscomp$19_page_code$$ && this.data_allocate(Math.min(30, $count$jscomp$57_length$jscomp$27_sector_count$$));
8812
- this.data_end = this.data_length;
8813
- this.status = 88;
8814
- break;
8815
- case 189:
8816
- this.data_allocate(this.data[9] | this.data[8] << 8);
8817
- this.data_end = this.data_length;
8818
- this.data[5] = 1;
8819
- this.status = 88;
8820
- break;
8821
- case 74:
8822
- this.status = 81;
8823
- this.data_length = 0;
8824
- this.error = 80;
8825
- $dbg_log$$module$src$log$$("Unimplemented ATAPI command: " + $h$$module$src$lib$$(this.data[0]), 32768);
8826
- break;
8827
- case 190:
8828
- $dbg_log$$module$src$log$$("Unimplemented ATAPI command: " + $h$$module$src$lib$$(this.data[0]), 32768);
8829
- this.data_allocate(0);
8830
- this.data_end = this.data_length;
8831
- this.status = 80;
8832
- break;
8833
- default:
8834
- this.status = 81, this.data_length = 0, this.error = 80, $dbg_log$$module$src$log$$("Unimplemented ATAPI command: " + $h$$module$src$lib$$(this.data[0]), 32768), $dbg_assert$$module$src$log$$(!1);
8775
+ this.current_atapi_command = $cmd$jscomp$1$$;
8776
+ 3 !== $cmd$jscomp$1$$ && (this.atapi_add_sense = this.atapi_sense_key = 0);
8777
+ if (!this.buffer && $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ & 1) {
8778
+ this.atapi_check_condition_response(2, 58), this.push_irq(), $dbg_log$$module$src$log$$(`${this.name}: ATAPI command ${$cmd_name$$} (${$h$$module$src$lib$$($cmd$jscomp$1$$)}) without medium: ERROR [${$regs_msg$jscomp$1_regs_pre$jscomp$1$$}]`, 32768);
8779
+ } else {
8780
+ switch($cmd$jscomp$1$$) {
8781
+ case 0:
8782
+ this.buffer ? (this.data_allocate(0), this.data_end = this.data_length, this.status_reg = 80) : this.atapi_check_condition_response(2, 58);
8783
+ break;
8784
+ case 3:
8785
+ this.data_allocate(this.data[4]);
8786
+ this.data_end = this.data_length;
8787
+ this.status_reg = 88;
8788
+ this.data[0] = 240;
8789
+ this.data[2] = this.atapi_sense_key;
8790
+ this.data[7] = 8;
8791
+ this.data[12] = this.atapi_add_sense;
8792
+ this.atapi_add_sense = this.atapi_sense_key = 0;
8793
+ break;
8794
+ case 18:
8795
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.data[4];
8796
+ this.status_reg = 88;
8797
+ $dbg_log_extra$$ = "lun=" + $h$$module$src$lib$$(this.data[1], 2) + " length=" + $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$;
8798
+ this.data.set([5, 128, 1, 49, 31, 0, 0, 0, 83, 79, 78, 89, 32, 32, 32, 32, 67, 68, 45, 82, 79, 77, 32, 67, 68, 85, 45, 49, 48, 48, 48, 32, 49, 46, 49, 97, ]);
8799
+ this.data_end = this.data_length = Math.min(36, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$);
8800
+ break;
8801
+ case 26:
8802
+ this.data_allocate(this.data[4]);
8803
+ this.data_end = this.data_length;
8804
+ this.status_reg = 88;
8805
+ break;
8806
+ case 30:
8807
+ this.data_allocate(0);
8808
+ this.data_end = this.data_length;
8809
+ this.status_reg = 80;
8810
+ break;
8811
+ case 37:
8812
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.sector_count - 1;
8813
+ this.data_set(new Uint8Array([$cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 24 & 255, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 16 & 255, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 8 & 255, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ & 255, 0, 0, this.sector_size >> 8 & 255, this.sector_size & 255, ]));
8814
+ this.data_end = this.data_length;
8815
+ this.status_reg = 88;
8816
+ break;
8817
+ case 40:
8818
+ $do_dbg_log$jscomp$1_result$jscomp$19$$ = !1;
8819
+ this.features_reg & 1 ? this.atapi_read_dma(this.data) : this.atapi_read(this.data);
8820
+ break;
8821
+ case 66:
8822
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.data[8];
8823
+ $dbg_log_extra$$ = "length=" + $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$;
8824
+ this.data_allocate(Math.min(8, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$));
8825
+ this.data_end = this.data_length;
8826
+ this.status_reg = 88;
8827
+ break;
8828
+ case 67:
8829
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.data[8] | this.data[7] << 8;
8830
+ var $format$jscomp$19_page_code$$ = this.data[9] >> 6;
8831
+ $dbg_log_extra$$ = `${$h$$module$src$lib$$($format$jscomp$19_page_code$$, 2)} length=${$cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$} ${!!(this.data[1] & 2)} ${$h$$module$src$lib$$(this.data[6])}`;
8832
+ this.data_allocate($cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$);
8833
+ this.data_end = this.data_length;
8834
+ 0 === $format$jscomp$19_page_code$$ ? ($cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.sector_count, this.data.set(new Uint8Array([0, 18, 1, 1, 0, 20, 1, 0, 0, 0, 0, 0, 0, 22, 170, 0, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 24, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 16 & 255, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ >> 8 & 255, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ &
8835
+ 255, ]))) : 1 === $format$jscomp$19_page_code$$ ? this.data.set(new Uint8Array([0, 10, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, ])) : $dbg_assert$$module$src$log$$(!1, this.name + ": error: unimplemented format: " + $format$jscomp$19_page_code$$);
8836
+ this.status_reg = 88;
8837
+ break;
8838
+ case 70:
8839
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = Math.min(this.data[8] | this.data[7] << 8, 32);
8840
+ $dbg_log_extra$$ = "length=" + $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$;
8841
+ this.data_allocate($cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$);
8842
+ this.data_end = this.data_length;
8843
+ this.data[0] = $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ - 4 >> 24 & 255;
8844
+ this.data[1] = $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ - 4 >> 16 & 255;
8845
+ this.data[2] = $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ - 4 >> 8 & 255;
8846
+ this.data[3] = $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ - 4 & 255;
8847
+ this.data[6] = 8;
8848
+ this.data[10] = 3;
8849
+ this.status_reg = 88;
8850
+ break;
8851
+ case 81:
8852
+ this.data_allocate(0);
8853
+ this.data_end = this.data_length;
8854
+ this.status_reg = 80;
8855
+ break;
8856
+ case 82:
8857
+ $dbg_log_extra$$ = "unimplemented";
8858
+ this.atapi_check_condition_response(5, 36);
8859
+ break;
8860
+ case 90:
8861
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.data[8] | this.data[7] << 8;
8862
+ $format$jscomp$19_page_code$$ = this.data[2];
8863
+ $dbg_log_extra$$ = "page_code=" + $h$$module$src$lib$$($format$jscomp$19_page_code$$) + " length=" + $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$;
8864
+ 42 === $format$jscomp$19_page_code$$ && this.data_allocate(Math.min(30, $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$));
8865
+ this.data_end = this.data_length;
8866
+ this.status_reg = 88;
8867
+ break;
8868
+ case 189:
8869
+ this.data_allocate(this.data[9] | this.data[8] << 8);
8870
+ this.data_end = this.data_length;
8871
+ this.data[5] = 1;
8872
+ this.status_reg = 88;
8873
+ break;
8874
+ case 27:
8875
+ $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ = this.data[4] & 3;
8876
+ $dbg_log_extra$$ = `Immed=${$h$$module$src$lib$$(this.data[1] & 1)} LoEj/Start=${$h$$module$src$lib$$($cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$)}`;
8877
+ this.buffer && 2 === $cmd_flags_count$jscomp$57_length$jscomp$27_loej_start_sector_count$$ && ($dbg_log_extra$$ += ": disk ejected", this.medium_changed = !0, this.buffer = null);
8878
+ this.status_reg = 80;
8879
+ this.data_allocate(0);
8880
+ this.data_end = this.data_length;
8881
+ break;
8882
+ case 69:
8883
+ case 74:
8884
+ $dbg_log_extra$$ = "unimplemented";
8885
+ this.atapi_check_condition_response(5, 36);
8886
+ break;
8887
+ case 190:
8888
+ $dbg_log_extra$$ = "unimplemented";
8889
+ this.data_allocate(0);
8890
+ this.data_end = this.data_length;
8891
+ this.status_reg = 80;
8892
+ break;
8893
+ default:
8894
+ $dbg_assert$$module$src$log$$(!1, `${this.name}: error: unimplemented ATAPI command ${$h$$module$src$lib$$(this.data[0])}`, 32768), this.atapi_check_condition_response(5, 36);
8895
+ }
8896
+ this.sector_count_reg = this.sector_count_reg & -8 | 2;
8897
+ 0 === (this.status_reg & 128) && this.push_irq();
8898
+ 0 === (this.status_reg & 128) && 0 === this.data_length && (this.sector_count_reg |= 1, this.status_reg &= -9);
8899
+ $do_dbg_log$jscomp$1_result$jscomp$19$$ && ($regs_msg$jscomp$1_regs_pre$jscomp$1$$ = `[${$regs_msg$jscomp$1_regs_pre$jscomp$1$$}] -> [${this.capture_regs()}]`, $do_dbg_log$jscomp$1_result$jscomp$19$$ = this.status_reg & 1 ? this.error_reg & 4 ? "ABORT" : "ERROR" : "OK", $dbg_log_extra$$ = $dbg_log_extra$$ ? ` ${$dbg_log_extra$$}:` : "", $dbg_log$$module$src$log$$(`${this.name}: ATAPI command ${$cmd_name$$} (${$h$$module$src$lib$$($cmd$jscomp$1$$)}):${$dbg_log_extra$$} ${$do_dbg_log$jscomp$1_result$jscomp$19$$} ${$regs_msg$jscomp$1_regs_pre$jscomp$1$$}`,
8900
+ 32768));
8835
8901
  }
8836
- this.bytecount = this.bytecount & -8 | 2;
8837
- 0 === (this.status & 128) && this.push_irq();
8838
- 0 === (this.status & 128) && 0 === this.data_length && (this.bytecount |= 1, this.status &= -9);
8902
+ };
8903
+ $IDEInterface$$module$src$ide$$.prototype.atapi_check_condition_response = function($sense_key$$, $additional_sense$$) {
8904
+ this.data_allocate(0);
8905
+ this.data_end = this.data_length;
8906
+ this.status_reg = 65;
8907
+ this.error_reg = $sense_key$$ << 4;
8908
+ this.sector_count_reg = this.sector_count_reg & -8 | 3;
8909
+ this.atapi_sense_key = $sense_key$$;
8910
+ this.atapi_add_sense = $additional_sense$$;
8839
8911
  };
8840
8912
  $IDEInterface$$module$src$ide$$.prototype.do_write = function() {
8841
- this.status = 80;
8913
+ this.status_reg = 80;
8842
8914
  $dbg_assert$$module$src$log$$(this.data_length <= this.data.length);
8843
8915
  var $data$jscomp$197$$ = this.data.subarray(0, this.data_length);
8844
8916
  $dbg_assert$$module$src$log$$(0 === this.data_length % 512);
@@ -8848,70 +8920,62 @@ $IDEInterface$$module$src$ide$$.prototype.do_write = function() {
8848
8920
  });
8849
8921
  this.report_write(this.data_length);
8850
8922
  };
8851
- $IDEInterface$$module$src$ide$$.prototype.atapi_read = function($cmd$jscomp$1_flags$jscomp$11$$) {
8852
- var $lba$$ = $cmd$jscomp$1_flags$jscomp$11$$[2] << 24 | $cmd$jscomp$1_flags$jscomp$11$$[3] << 16 | $cmd$jscomp$1_flags$jscomp$11$$[4] << 8 | $cmd$jscomp$1_flags$jscomp$11$$[5], $count$jscomp$58$$ = $cmd$jscomp$1_flags$jscomp$11$$[7] << 8 | $cmd$jscomp$1_flags$jscomp$11$$[8];
8853
- $cmd$jscomp$1_flags$jscomp$11$$ = $cmd$jscomp$1_flags$jscomp$11$$[1];
8854
- var $byte_count$$ = $count$jscomp$58$$ * this.sector_size, $start$jscomp$30$$ = $lba$$ * this.sector_size;
8855
- $dbg_log$$module$src$log$$("CD read lba=" + $h$$module$src$lib$$($lba$$) + " lbacount=" + $h$$module$src$lib$$($count$jscomp$58$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$$) + " flags=" + $h$$module$src$lib$$($cmd$jscomp$1_flags$jscomp$11$$), 32768);
8923
+ $IDEInterface$$module$src$ide$$.prototype.atapi_read = function($cmd$jscomp$2_start$jscomp$30$$) {
8924
+ var $byte_count$$ = ($cmd$jscomp$2_start$jscomp$30$$[7] << 8 | $cmd$jscomp$2_start$jscomp$30$$[8]) * this.sector_size;
8925
+ $cmd$jscomp$2_start$jscomp$30$$ = ($cmd$jscomp$2_start$jscomp$30$$[2] << 24 | $cmd$jscomp$2_start$jscomp$30$$[3] << 16 | $cmd$jscomp$2_start$jscomp$30$$[4] << 8 | $cmd$jscomp$2_start$jscomp$30$$[5]) * this.sector_size;
8856
8926
  this.data_length = 0;
8857
- var $req_length$$ = this.cylinder_high << 8 & 65280 | this.cylinder_low & 255;
8858
- $dbg_log$$module$src$log$$($h$$module$src$lib$$(this.cylinder_high, 2) + " " + $h$$module$src$lib$$(this.cylinder_low, 2), 32768);
8859
- this.cylinder_low = this.cylinder_high = 0;
8927
+ var $req_length$$ = this.lba_high_reg << 8 & 65280 | this.lba_mid_reg & 255;
8928
+ this.lba_mid_reg = this.lba_high_reg = 0;
8860
8929
  65535 === $req_length$$ && $req_length$$--;
8861
8930
  $req_length$$ > $byte_count$$ && ($req_length$$ = $byte_count$$);
8862
- $start$jscomp$30$$ >= this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "CD read: Outside of disk end=" + $h$$module$src$lib$$($start$jscomp$30$$ + $byte_count$$) + " size=" + $h$$module$src$lib$$(this.buffer.byteLength), 32768), this.status = 255, this.push_irq()) : 0 === $byte_count$$ ? (this.status = 80, this.data_pointer = 0) : ($byte_count$$ = Math.min($byte_count$$, this.buffer.byteLength - $start$jscomp$30$$), this.status = 208, this.report_read_start(), this.read_buffer($start$jscomp$30$$,
8863
- $byte_count$$, $data$jscomp$198$$ => {
8864
- $dbg_log$$module$src$log$$("cd read: data arrived", 32768);
8931
+ this.buffer ? $cmd$jscomp$2_start$jscomp$30$$ >= this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": CD read: Outside of disk end=" + $h$$module$src$lib$$($cmd$jscomp$2_start$jscomp$30$$ + $byte_count$$) + " size=" + $h$$module$src$lib$$(this.buffer.byteLength), 32768), this.status_reg = 255, this.push_irq()) : 0 === $byte_count$$ ? (this.status_reg = 80, this.data_pointer = 0) : ($byte_count$$ = Math.min($byte_count$$, this.buffer.byteLength - $cmd$jscomp$2_start$jscomp$30$$),
8932
+ this.status_reg = 208, this.report_read_start(), this.read_buffer($cmd$jscomp$2_start$jscomp$30$$, $byte_count$$, $data$jscomp$198$$ => {
8865
8933
  this.data_set($data$jscomp$198$$);
8866
- this.status = 88;
8867
- this.bytecount = this.bytecount & -8 | 2;
8934
+ this.status_reg = 88;
8935
+ this.sector_count_reg = this.sector_count_reg & -8 | 2;
8868
8936
  this.push_irq();
8869
8937
  this.data_end = $req_length$$ &= -4;
8870
8938
  this.data_end > this.data_length && (this.data_end = this.data_length);
8871
- this.cylinder_low = this.data_end & 255;
8872
- this.cylinder_high = this.data_end >> 8 & 255;
8939
+ this.lba_mid_reg = this.data_end & 255;
8940
+ this.lba_high_reg = this.data_end >> 8 & 255;
8873
8941
  this.report_read_end($byte_count$$);
8874
- }));
8942
+ })) : ($dbg_assert$$module$src$log$$(!1, this.name + ": CD read: no buffer", 32768), this.status_reg = 255, this.error_reg = 65, this.push_irq());
8875
8943
  };
8876
- $IDEInterface$$module$src$ide$$.prototype.atapi_read_dma = function($cmd$jscomp$2_flags$jscomp$12$$) {
8877
- var $lba$jscomp$1$$ = $cmd$jscomp$2_flags$jscomp$12$$[2] << 24 | $cmd$jscomp$2_flags$jscomp$12$$[3] << 16 | $cmd$jscomp$2_flags$jscomp$12$$[4] << 8 | $cmd$jscomp$2_flags$jscomp$12$$[5], $count$jscomp$59$$ = $cmd$jscomp$2_flags$jscomp$12$$[7] << 8 | $cmd$jscomp$2_flags$jscomp$12$$[8];
8878
- $cmd$jscomp$2_flags$jscomp$12$$ = $cmd$jscomp$2_flags$jscomp$12$$[1];
8944
+ $IDEInterface$$module$src$ide$$.prototype.atapi_read_dma = function($cmd$jscomp$3_flags$jscomp$12$$) {
8945
+ var $lba$jscomp$1$$ = $cmd$jscomp$3_flags$jscomp$12$$[2] << 24 | $cmd$jscomp$3_flags$jscomp$12$$[3] << 16 | $cmd$jscomp$3_flags$jscomp$12$$[4] << 8 | $cmd$jscomp$3_flags$jscomp$12$$[5], $count$jscomp$59$$ = $cmd$jscomp$3_flags$jscomp$12$$[7] << 8 | $cmd$jscomp$3_flags$jscomp$12$$[8];
8946
+ $cmd$jscomp$3_flags$jscomp$12$$ = $cmd$jscomp$3_flags$jscomp$12$$[1];
8879
8947
  var $byte_count$jscomp$1$$ = $count$jscomp$59$$ * this.sector_size, $start$jscomp$31$$ = $lba$jscomp$1$$ * this.sector_size;
8880
- $dbg_log$$module$src$log$$("CD read DMA lba=" + $h$$module$src$lib$$($lba$jscomp$1$$) + " lbacount=" + $h$$module$src$lib$$($count$jscomp$59$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$1$$) + " flags=" + $h$$module$src$lib$$($cmd$jscomp$2_flags$jscomp$12$$), 32768);
8881
- $start$jscomp$31$$ >= this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "CD read: Outside of disk end=" + $h$$module$src$lib$$($start$jscomp$31$$ + $byte_count$jscomp$1$$) + " size=" + $h$$module$src$lib$$(this.buffer.byteLength), 32768), this.status = 255, this.push_irq()) : (this.status = 208, this.report_read_start(), this.read_buffer($start$jscomp$31$$, $byte_count$jscomp$1$$, $data$jscomp$199$$ => {
8882
- $dbg_log$$module$src$log$$("atapi_read_dma: Data arrived");
8948
+ $dbg_log$$module$src$log$$(this.name + ": CD read DMA lba=" + $h$$module$src$lib$$($lba$jscomp$1$$) + " lbacount=" + $h$$module$src$lib$$($count$jscomp$59$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$1$$) + " flags=" + $h$$module$src$lib$$($cmd$jscomp$3_flags$jscomp$12$$), 32768);
8949
+ $start$jscomp$31$$ >= this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": CD read: Outside of disk end=" + $h$$module$src$lib$$($start$jscomp$31$$ + $byte_count$jscomp$1$$) + " size=" + $h$$module$src$lib$$(this.buffer.byteLength), 32768), this.status_reg = 255, this.push_irq()) : (this.status_reg = 208, this.report_read_start(), this.read_buffer($start$jscomp$31$$, $byte_count$jscomp$1$$, $data$jscomp$199$$ => {
8950
+ $dbg_log$$module$src$log$$(this.name + ": atapi_read_dma: Data arrived");
8883
8951
  this.report_read_end($byte_count$jscomp$1$$);
8884
- this.status = 88;
8885
- this.bytecount = this.bytecount & -8 | 2;
8952
+ this.status_reg = 88;
8953
+ this.sector_count_reg = this.sector_count_reg & -8 | 2;
8886
8954
  this.data_set($data$jscomp$199$$);
8887
8955
  this.do_atapi_dma();
8888
8956
  }));
8889
8957
  };
8890
8958
  $IDEInterface$$module$src$ide$$.prototype.do_atapi_dma = function() {
8891
- if (0 === (this.device.dma_status & 1)) {
8892
- $dbg_log$$module$src$log$$("do_atapi_dma: Status not set", 32768);
8959
+ if (0 === (this.channel.dma_status & 1)) {
8960
+ $dbg_log$$module$src$log$$(this.name + ": do_atapi_dma: Status not set", 32768);
8893
8961
  } else {
8894
- if (0 === (this.status & 8)) {
8895
- $dbg_log$$module$src$log$$("do_atapi_dma: DRQ not set", 32768);
8962
+ if (0 === (this.status_reg & 8)) {
8963
+ $dbg_log$$module$src$log$$(this.name + ": do_atapi_dma: DRQ not set", 32768);
8896
8964
  } else {
8897
- $dbg_log$$module$src$log$$("atapi dma transfer len=" + this.data_length, 32768);
8898
- var $prdt_start$$ = this.device.prdt_addr, $offset$jscomp$71$$ = 0, $data$jscomp$200$$ = this.data;
8965
+ var $prdt_start$$ = this.channel.prdt_addr, $offset$jscomp$71$$ = 0, $data$jscomp$200$$ = this.data;
8899
8966
  do {
8900
8967
  var $addr$jscomp$39$$ = this.cpu.read32s($prdt_start$$), $count$jscomp$60$$ = this.cpu.read16($prdt_start$$ + 4), $end$jscomp$17$$ = this.cpu.read8($prdt_start$$ + 7) & 128;
8901
8968
  $count$jscomp$60$$ || ($count$jscomp$60$$ = 65536);
8902
- $dbg_log$$module$src$log$$("dma read dest=" + $h$$module$src$lib$$($addr$jscomp$39$$) + " count=" + $h$$module$src$lib$$($count$jscomp$60$$) + " datalen=" + $h$$module$src$lib$$(this.data_length), 32768);
8903
8969
  this.cpu.write_blob($data$jscomp$200$$.subarray($offset$jscomp$71$$, Math.min($offset$jscomp$71$$ + $count$jscomp$60$$, this.data_length)), $addr$jscomp$39$$);
8904
8970
  $offset$jscomp$71$$ += $count$jscomp$60$$;
8905
8971
  $prdt_start$$ += 8;
8906
8972
  if ($offset$jscomp$71$$ >= this.data_length && !$end$jscomp$17$$) {
8907
- $dbg_log$$module$src$log$$("leave early end=" + +$end$jscomp$17$$ + " offset=" + $h$$module$src$lib$$($offset$jscomp$71$$) + " data_length=" + $h$$module$src$lib$$(this.data_length) + " cmd=" + $h$$module$src$lib$$(this.current_command), 32768);
8908
8973
  break;
8909
8974
  }
8910
8975
  } while (!$end$jscomp$17$$);
8911
- $dbg_log$$module$src$log$$("end offset=" + $offset$jscomp$71$$, 32768);
8912
- this.status = 80;
8913
- this.device.dma_status &= -2;
8914
- this.bytecount = this.bytecount & -8 | 3;
8976
+ this.status_reg = 80;
8977
+ this.channel.dma_status &= -2;
8978
+ this.sector_count_reg = this.sector_count_reg & -8 | 3;
8915
8979
  this.push_irq();
8916
8980
  }
8917
8981
  }
@@ -8920,38 +8984,34 @@ $IDEInterface$$module$src$ide$$.prototype.read_data = function($length$jscomp$28
8920
8984
  if (this.data_pointer < this.data_end) {
8921
8985
  $dbg_assert$$module$src$log$$(this.data_pointer + $length$jscomp$28$$ - 1 < this.data_end);
8922
8986
  $dbg_assert$$module$src$log$$(0 === this.data_pointer % $length$jscomp$28$$, $h$$module$src$lib$$(this.data_pointer) + " " + $length$jscomp$28$$);
8923
- var $result$jscomp$17$$ = 1 === $length$jscomp$28$$ ? this.data[this.data_pointer] : 2 === $length$jscomp$28$$ ? this.data16[this.data_pointer >>> 1] : this.data32[this.data_pointer >>> 2];
8987
+ var $result$jscomp$20$$ = 1 === $length$jscomp$28$$ ? this.data[this.data_pointer] : 2 === $length$jscomp$28$$ ? this.data16[this.data_pointer >>> 1] : this.data32[this.data_pointer >>> 2];
8924
8988
  this.data_pointer += $length$jscomp$28$$;
8925
- 0 === (this.data_pointer & (0 === (this.data_end & 4095) ? 4095 : 255)) && $dbg_log$$module$src$log$$("Read 1F0: " + $h$$module$src$lib$$(this.data[this.data_pointer], 2) + " cur=" + $h$$module$src$lib$$(this.data_pointer) + " cnt=" + $h$$module$src$lib$$(this.data_length), 32768);
8926
8989
  this.data_pointer >= this.data_end && this.read_end();
8927
- return $result$jscomp$17$$;
8990
+ return $result$jscomp$20$$;
8928
8991
  }
8929
- $dbg_log$$module$src$log$$("Read 1F0: empty", 32768);
8930
8992
  this.data_pointer += $length$jscomp$28$$;
8931
8993
  return 0;
8932
8994
  };
8933
8995
  $IDEInterface$$module$src$ide$$.prototype.read_end = function() {
8934
- $dbg_log$$module$src$log$$("read_end cmd=" + $h$$module$src$lib$$(this.current_command) + " data_pointer=" + $h$$module$src$lib$$(this.data_pointer) + " end=" + $h$$module$src$lib$$(this.data_end) + " length=" + $h$$module$src$lib$$(this.data_length), 32768);
8935
8996
  if (160 === this.current_command) {
8936
8997
  if (this.data_end === this.data_length) {
8937
- this.status = 80, this.bytecount = this.bytecount & -8 | 3, this.push_irq();
8998
+ this.status_reg = 80, this.sector_count_reg = this.sector_count_reg & -8 | 3, this.push_irq();
8938
8999
  } else {
8939
- this.status = 88;
8940
- this.bytecount = this.bytecount & -8 | 2;
9000
+ this.status_reg = 88;
9001
+ this.sector_count_reg = this.sector_count_reg & -8 | 2;
8941
9002
  this.push_irq();
8942
- var $byte_count$jscomp$2_sector_count$jscomp$1$$ = this.cylinder_high << 8 & 65280 | this.cylinder_low & 255;
8943
- this.data_end + $byte_count$jscomp$2_sector_count$jscomp$1$$ > this.data_length ? (this.cylinder_low = this.data_length - this.data_end & 255, this.cylinder_high = this.data_length - this.data_end >> 8 & 255, this.data_end = this.data_length) : this.data_end += $byte_count$jscomp$2_sector_count$jscomp$1$$;
8944
- $dbg_log$$module$src$log$$("data_end=" + $h$$module$src$lib$$(this.data_end), 32768);
9003
+ var $byte_count$jscomp$2_sector_count$jscomp$1$$ = this.lba_high_reg << 8 & 65280 | this.lba_mid_reg & 255;
9004
+ this.data_end + $byte_count$jscomp$2_sector_count$jscomp$1$$ > this.data_length ? (this.lba_mid_reg = this.data_length - this.data_end & 255, this.lba_high_reg = this.data_length - this.data_end >> 8 & 255, this.data_end = this.data_length) : this.data_end += $byte_count$jscomp$2_sector_count$jscomp$1$$;
8945
9005
  }
8946
9006
  } else {
8947
- this.error = 0, this.data_pointer >= this.data_length ? this.status = 80 : (196 === this.current_command || 41 === this.current_command ? ($byte_count$jscomp$2_sector_count$jscomp$1$$ = Math.min(this.sectors_per_drq, (this.data_length - this.data_end) / 512), $dbg_assert$$module$src$log$$(0 === $byte_count$jscomp$2_sector_count$jscomp$1$$ % 1)) : ($dbg_assert$$module$src$log$$(32 === this.current_command || 36 === this.current_command), $byte_count$jscomp$2_sector_count$jscomp$1$$ = 1), this.ata_advance(this.current_command,
8948
- $byte_count$jscomp$2_sector_count$jscomp$1$$), this.data_end += 512 * $byte_count$jscomp$2_sector_count$jscomp$1$$, this.status = 88, this.push_irq());
9007
+ this.error_reg = 0, this.data_pointer >= this.data_length ? this.status_reg = 80 : (41 === this.current_command || 196 === this.current_command ? ($byte_count$jscomp$2_sector_count$jscomp$1$$ = Math.min(this.sectors_per_drq, (this.data_length - this.data_end) / 512), $dbg_assert$$module$src$log$$(0 === $byte_count$jscomp$2_sector_count$jscomp$1$$ % 1)) : ($dbg_assert$$module$src$log$$(32 === this.current_command || 36 === this.current_command), $byte_count$jscomp$2_sector_count$jscomp$1$$ = 1),
9008
+ this.ata_advance(this.current_command, $byte_count$jscomp$2_sector_count$jscomp$1$$), this.data_end += 512 * $byte_count$jscomp$2_sector_count$jscomp$1$$, this.status_reg = 88, this.push_irq());
8949
9009
  }
8950
9010
  };
8951
9011
  $IDEInterface$$module$src$ide$$.prototype.write_data_port = function($data$jscomp$201$$, $length$jscomp$29$$) {
8952
9012
  $dbg_assert$$module$src$log$$(0 === this.data_pointer % $length$jscomp$29$$);
8953
- this.data_pointer >= this.data_end ? $dbg_log$$module$src$log$$("Redundant write to data port: " + $h$$module$src$lib$$($data$jscomp$201$$) + " count=" + $h$$module$src$lib$$(this.data_end) + " cur=" + $h$$module$src$lib$$(this.data_pointer), 32768) : ((0 === (this.data_pointer + $length$jscomp$29$$ & (0 === (this.data_end & 4095) ? 4095 : 255)) || 20 > this.data_end) && $dbg_log$$module$src$log$$("Data port: " + $h$$module$src$lib$$($data$jscomp$201$$ >>> 0) + " count=" + $h$$module$src$lib$$(this.data_end) +
8954
- " cur=" + $h$$module$src$lib$$(this.data_pointer), 32768), 1 === $length$jscomp$29$$ ? this.data[this.data_pointer++] = $data$jscomp$201$$ : 2 === $length$jscomp$29$$ ? (this.data16[this.data_pointer >>> 1] = $data$jscomp$201$$, this.data_pointer += 2) : (this.data32[this.data_pointer >>> 2] = $data$jscomp$201$$, this.data_pointer += 4), $dbg_assert$$module$src$log$$(this.data_pointer <= this.data_end), this.data_pointer === this.data_end && this.write_end());
9013
+ this.data_pointer >= this.data_end ? $dbg_log$$module$src$log$$(this.name + ": redundant write to data port: " + $h$$module$src$lib$$($data$jscomp$201$$) + " count=" + $h$$module$src$lib$$(this.data_end) + " cur=" + $h$$module$src$lib$$(this.data_pointer), 32768) : (1 === $length$jscomp$29$$ ? this.data[this.data_pointer++] = $data$jscomp$201$$ : 2 === $length$jscomp$29$$ ? (this.data16[this.data_pointer >>> 1] = $data$jscomp$201$$, this.data_pointer += 2) : (this.data32[this.data_pointer >>> 2] =
9014
+ $data$jscomp$201$$, this.data_pointer += 4), $dbg_assert$$module$src$log$$(this.data_pointer <= this.data_end), this.data_pointer === this.data_end && this.write_end());
8955
9015
  };
8956
9016
  $IDEInterface$$module$src$ide$$.prototype.write_data_port8 = function($data$jscomp$202$$) {
8957
9017
  this.write_data_port($data$jscomp$202$$, 1);
@@ -8963,38 +9023,32 @@ $IDEInterface$$module$src$ide$$.prototype.write_data_port32 = function($data$jsc
8963
9023
  this.write_data_port($data$jscomp$204$$, 4);
8964
9024
  };
8965
9025
  $IDEInterface$$module$src$ide$$.prototype.write_end = function() {
8966
- 160 === this.current_command ? this.atapi_handle() : ($dbg_log$$module$src$log$$("write_end data_pointer=" + $h$$module$src$lib$$(this.data_pointer) + " data_length=" + $h$$module$src$lib$$(this.data_length), 32768), this.data_pointer >= this.data_length ? this.do_write() : ($dbg_assert$$module$src$log$$(48 === this.current_command || 52 === this.current_command || 197 === this.current_command, "Unexpected command: " + $h$$module$src$lib$$(this.current_command)), this.status = 88, this.data_end +=
8967
- 512, this.push_irq()));
8968
- };
8969
- $IDEInterface$$module$src$ide$$.prototype.ata_advance = function($cmd$jscomp$3_new_sector$$, $c$jscomp$2_sectors$$) {
8970
- $dbg_log$$module$src$log$$("Advance sectors=" + $c$jscomp$2_sectors$$ + " old_bytecount=" + this.bytecount, 32768);
8971
- this.bytecount -= $c$jscomp$2_sectors$$;
8972
- 36 === $cmd$jscomp$3_new_sector$$ || 41 === $cmd$jscomp$3_new_sector$$ || 52 === $cmd$jscomp$3_new_sector$$ || 57 === $cmd$jscomp$3_new_sector$$ || 37 === $cmd$jscomp$3_new_sector$$ || 53 === $cmd$jscomp$3_new_sector$$ ? ($cmd$jscomp$3_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_lba48(), this.sector = $cmd$jscomp$3_new_sector$$ & 255 | $cmd$jscomp$3_new_sector$$ >> 16 & 65280, this.cylinder_low = $cmd$jscomp$3_new_sector$$ >> 8 & 255, this.cylinder_high = $cmd$jscomp$3_new_sector$$ >> 16 &
8973
- 255) : this.is_lba ? ($cmd$jscomp$3_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_lba28(), this.sector = $cmd$jscomp$3_new_sector$$ & 255, this.cylinder_low = $cmd$jscomp$3_new_sector$$ >> 8 & 255, this.cylinder_high = $cmd$jscomp$3_new_sector$$ >> 16 & 255, this.head = this.head & -16 | $cmd$jscomp$3_new_sector$$ & 15) : ($cmd$jscomp$3_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_chs(), $c$jscomp$2_sectors$$ = $cmd$jscomp$3_new_sector$$ / (this.head_count * this.sectors_per_track) | 0, this.cylinder_low =
8974
- $c$jscomp$2_sectors$$ & 255, this.cylinder_high = $c$jscomp$2_sectors$$ >> 8 & 255, this.head = ($cmd$jscomp$3_new_sector$$ / this.sectors_per_track | 0) % this.head_count & 15, this.sector = $cmd$jscomp$3_new_sector$$ % this.sectors_per_track + 1 & 255, $dbg_assert$$module$src$log$$($cmd$jscomp$3_new_sector$$ === this.get_chs()));
8975
- };
8976
- $IDEInterface$$module$src$ide$$.prototype.ata_read_sectors = function($cmd$jscomp$4$$) {
8977
- var $is_lba48_lba$jscomp$2$$ = 36 === $cmd$jscomp$4$$ || 41 === $cmd$jscomp$4$$, $count$jscomp$61$$ = this.get_count($is_lba48_lba$jscomp$2$$);
8978
- $is_lba48_lba$jscomp$2$$ = this.get_lba($is_lba48_lba$jscomp$2$$);
8979
- var $is_single$$ = 32 === $cmd$jscomp$4$$ || 36 === $cmd$jscomp$4$$, $byte_count$jscomp$3$$ = $count$jscomp$61$$ * this.sector_size, $start$jscomp$32$$ = $is_lba48_lba$jscomp$2$$ * this.sector_size;
8980
- $dbg_log$$module$src$log$$("ATA read cmd=" + $h$$module$src$lib$$($cmd$jscomp$4$$) + " mode=" + (this.is_lba ? "lba" : "chs") + " lba=" + $h$$module$src$lib$$($is_lba48_lba$jscomp$2$$) + " lbacount=" + $h$$module$src$lib$$($count$jscomp$61$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$3$$), 32768);
8981
- $start$jscomp$32$$ + $byte_count$jscomp$3$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "ATA read: Outside of disk", 32768), this.status = 255, this.push_irq()) : (this.status = 192, this.report_read_start(), this.read_buffer($start$jscomp$32$$, $byte_count$jscomp$3$$, $data$jscomp$205$$ => {
8982
- $dbg_log$$module$src$log$$("ata_read: Data arrived", 32768);
9026
+ 160 === this.current_command ? this.atapi_handle() : this.data_pointer >= this.data_length ? this.do_write() : ($dbg_assert$$module$src$log$$(48 === this.current_command || 52 === this.current_command || 197 === this.current_command, "Unexpected command: " + $h$$module$src$lib$$(this.current_command)), this.status_reg = 88, this.data_end += 512, this.push_irq());
9027
+ };
9028
+ $IDEInterface$$module$src$ide$$.prototype.ata_advance = function($cmd$jscomp$4_new_sector$$, $c$jscomp$2_sectors$$) {
9029
+ this.sector_count_reg -= $c$jscomp$2_sectors$$;
9030
+ 36 === $cmd$jscomp$4_new_sector$$ || 41 === $cmd$jscomp$4_new_sector$$ || 37 === $cmd$jscomp$4_new_sector$$ || 52 === $cmd$jscomp$4_new_sector$$ || 57 === $cmd$jscomp$4_new_sector$$ || 53 === $cmd$jscomp$4_new_sector$$ ? ($cmd$jscomp$4_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_lba48(), this.lba_low_reg = $cmd$jscomp$4_new_sector$$ & 255 | $cmd$jscomp$4_new_sector$$ >> 16 & 65280, this.lba_mid_reg = $cmd$jscomp$4_new_sector$$ >> 8 & 255, this.lba_high_reg = $cmd$jscomp$4_new_sector$$ >> 16 &
9031
+ 255) : this.is_lba ? ($cmd$jscomp$4_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_lba28(), this.lba_low_reg = $cmd$jscomp$4_new_sector$$ & 255, this.lba_mid_reg = $cmd$jscomp$4_new_sector$$ >> 8 & 255, this.lba_high_reg = $cmd$jscomp$4_new_sector$$ >> 16 & 255, this.head = this.head & -16 | $cmd$jscomp$4_new_sector$$ & 15) : ($cmd$jscomp$4_new_sector$$ = $c$jscomp$2_sectors$$ + this.get_chs(), $c$jscomp$2_sectors$$ = $cmd$jscomp$4_new_sector$$ / (this.head_count * this.sectors_per_track) | 0,
9032
+ this.lba_mid_reg = $c$jscomp$2_sectors$$ & 255, this.lba_high_reg = $c$jscomp$2_sectors$$ >> 8 & 255, this.head = ($cmd$jscomp$4_new_sector$$ / this.sectors_per_track | 0) % this.head_count & 15, this.lba_low_reg = $cmd$jscomp$4_new_sector$$ % this.sectors_per_track + 1 & 255, $dbg_assert$$module$src$log$$($cmd$jscomp$4_new_sector$$ === this.get_chs()));
9033
+ };
9034
+ $IDEInterface$$module$src$ide$$.prototype.ata_read_sectors = function($cmd$jscomp$5$$) {
9035
+ var $is_lba48_lba$jscomp$2_start$jscomp$32$$ = 36 === $cmd$jscomp$5$$ || 41 === $cmd$jscomp$5$$, $count$jscomp$61$$ = this.get_count($is_lba48_lba$jscomp$2_start$jscomp$32$$);
9036
+ $is_lba48_lba$jscomp$2_start$jscomp$32$$ = this.get_lba($is_lba48_lba$jscomp$2_start$jscomp$32$$);
9037
+ var $is_single$$ = 32 === $cmd$jscomp$5$$ || 36 === $cmd$jscomp$5$$, $byte_count$jscomp$3$$ = $count$jscomp$61$$ * this.sector_size;
9038
+ $is_lba48_lba$jscomp$2_start$jscomp$32$$ *= this.sector_size;
9039
+ $is_lba48_lba$jscomp$2_start$jscomp$32$$ + $byte_count$jscomp$3$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": ATA read: Outside of disk", 32768), this.status_reg = 255, this.push_irq()) : (this.status_reg = 192, this.report_read_start(), this.read_buffer($is_lba48_lba$jscomp$2_start$jscomp$32$$, $byte_count$jscomp$3$$, $data$jscomp$205$$ => {
8983
9040
  this.data_set($data$jscomp$205$$);
8984
- this.status = 88;
9041
+ this.status_reg = 88;
8985
9042
  this.data_end = $is_single$$ ? 512 : Math.min($byte_count$jscomp$3$$, 512 * this.sectors_per_drq);
8986
- this.ata_advance($cmd$jscomp$4$$, $is_single$$ ? 1 : Math.min($count$jscomp$61$$, this.sectors_per_track));
9043
+ this.ata_advance($cmd$jscomp$5$$, $is_single$$ ? 1 : Math.min($count$jscomp$61$$, this.sectors_per_track));
8987
9044
  this.push_irq();
8988
9045
  this.report_read_end($byte_count$jscomp$3$$);
8989
9046
  }));
8990
9047
  };
8991
- $IDEInterface$$module$src$ide$$.prototype.ata_read_sectors_dma = function($cmd$jscomp$5_count$jscomp$62$$) {
8992
- var $is_lba48$jscomp$1_lba$jscomp$3$$ = 37 === $cmd$jscomp$5_count$jscomp$62$$;
8993
- $cmd$jscomp$5_count$jscomp$62$$ = this.get_count($is_lba48$jscomp$1_lba$jscomp$3$$);
8994
- $is_lba48$jscomp$1_lba$jscomp$3$$ = this.get_lba($is_lba48$jscomp$1_lba$jscomp$3$$);
8995
- var $byte_count$jscomp$4$$ = $cmd$jscomp$5_count$jscomp$62$$ * this.sector_size, $start$jscomp$33$$ = $is_lba48$jscomp$1_lba$jscomp$3$$ * this.sector_size;
8996
- $dbg_log$$module$src$log$$("ATA DMA read lba=" + $h$$module$src$lib$$($is_lba48$jscomp$1_lba$jscomp$3$$) + " lbacount=" + $h$$module$src$lib$$($cmd$jscomp$5_count$jscomp$62$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$4$$), 32768);
8997
- $start$jscomp$33$$ + $byte_count$jscomp$4$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "ATA read: Outside of disk", 32768), this.status = 255, this.push_irq()) : (this.status = 88, this.device.dma_status |= 1);
9048
+ $IDEInterface$$module$src$ide$$.prototype.ata_read_sectors_dma = function($cmd$jscomp$6_is_lba48$jscomp$1$$) {
9049
+ $cmd$jscomp$6_is_lba48$jscomp$1$$ = 37 === $cmd$jscomp$6_is_lba48$jscomp$1$$;
9050
+ var $count$jscomp$62$$ = this.get_count($cmd$jscomp$6_is_lba48$jscomp$1$$);
9051
+ this.get_lba($cmd$jscomp$6_is_lba48$jscomp$1$$) * this.sector_size + $count$jscomp$62$$ * this.sector_size > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": ATA read: Outside of disk", 32768), this.status_reg = 255, this.push_irq()) : (this.status_reg = 88, this.channel.dma_status |= 1);
8998
9052
  };
8999
9053
  $IDEInterface$$module$src$ide$$.prototype.do_ata_read_sectors_dma = function() {
9000
9054
  var $is_lba48$jscomp$2_lba$jscomp$4$$ = 37 === this.current_command, $count$jscomp$63$$ = this.get_count($is_lba48$jscomp$2_lba$jscomp$4$$);
@@ -9002,109 +9056,103 @@ $IDEInterface$$module$src$ide$$.prototype.do_ata_read_sectors_dma = function() {
9002
9056
  var $byte_count$jscomp$5$$ = $count$jscomp$63$$ * this.sector_size, $start$jscomp$34$$ = $is_lba48$jscomp$2_lba$jscomp$4$$ * this.sector_size;
9003
9057
  $dbg_assert$$module$src$log$$($is_lba48$jscomp$2_lba$jscomp$4$$ < this.buffer.byteLength);
9004
9058
  this.report_read_start();
9005
- var $orig_prdt_start$$ = this.device.prdt_addr;
9059
+ var $orig_prdt_start$$ = this.channel.prdt_addr;
9006
9060
  this.read_buffer($start$jscomp$34$$, $byte_count$jscomp$5$$, $data$jscomp$206$$ => {
9007
- $dbg_log$$module$src$log$$("do_ata_read_sectors_dma: Data arrived", 32768);
9008
- var $prdt_start$jscomp$1$$ = this.device.prdt_addr, $offset$jscomp$72$$ = 0;
9061
+ var $prdt_start$jscomp$1$$ = this.channel.prdt_addr, $offset$jscomp$72$$ = 0;
9009
9062
  $dbg_assert$$module$src$log$$($orig_prdt_start$$ === $prdt_start$jscomp$1$$);
9010
9063
  do {
9011
9064
  var $prd_addr$$ = this.cpu.read32s($prdt_start$jscomp$1$$), $prd_count$$ = this.cpu.read16($prdt_start$jscomp$1$$ + 4), $end$jscomp$18$$ = this.cpu.read8($prdt_start$jscomp$1$$ + 7) & 128;
9012
- $prd_count$$ || ($prd_count$$ = 65536, $dbg_log$$module$src$log$$("dma: prd count was 0", 32768));
9013
- $dbg_log$$module$src$log$$("dma read transfer dest=" + $h$$module$src$lib$$($prd_addr$$) + " prd_count=" + $h$$module$src$lib$$($prd_count$$), 32768);
9065
+ $prd_count$$ || ($prd_count$$ = 65536);
9014
9066
  this.cpu.write_blob($data$jscomp$206$$.subarray($offset$jscomp$72$$, $offset$jscomp$72$$ + $prd_count$$), $prd_addr$$);
9015
9067
  $offset$jscomp$72$$ += $prd_count$$;
9016
9068
  $prdt_start$jscomp$1$$ += 8;
9017
9069
  } while (!$end$jscomp$18$$);
9018
9070
  $dbg_assert$$module$src$log$$($offset$jscomp$72$$ === $byte_count$jscomp$5$$);
9019
9071
  this.ata_advance(this.current_command, $count$jscomp$63$$);
9020
- this.status = 80;
9021
- this.device.dma_status &= -2;
9072
+ this.status_reg = 80;
9073
+ this.channel.dma_status &= -2;
9022
9074
  this.current_command = -1;
9023
- this.push_irq();
9024
9075
  this.report_read_end($byte_count$jscomp$5$$);
9076
+ this.push_irq();
9025
9077
  });
9026
9078
  };
9027
- $IDEInterface$$module$src$ide$$.prototype.ata_write_sectors = function($cmd$jscomp$7_is_single$jscomp$1$$) {
9028
- var $is_lba48$jscomp$3_lba$jscomp$5$$ = 52 === $cmd$jscomp$7_is_single$jscomp$1$$ || 57 === $cmd$jscomp$7_is_single$jscomp$1$$, $count$jscomp$64$$ = this.get_count($is_lba48$jscomp$3_lba$jscomp$5$$);
9029
- $is_lba48$jscomp$3_lba$jscomp$5$$ = this.get_lba($is_lba48$jscomp$3_lba$jscomp$5$$);
9030
- $cmd$jscomp$7_is_single$jscomp$1$$ = 48 === $cmd$jscomp$7_is_single$jscomp$1$$ || 52 === $cmd$jscomp$7_is_single$jscomp$1$$;
9031
- var $byte_count$jscomp$6$$ = $count$jscomp$64$$ * this.sector_size, $start$jscomp$35$$ = $is_lba48$jscomp$3_lba$jscomp$5$$ * this.sector_size;
9032
- $dbg_log$$module$src$log$$("ATA write lba=" + $h$$module$src$lib$$($is_lba48$jscomp$3_lba$jscomp$5$$) + " mode=" + (this.is_lba ? "lba" : "chs") + " lbacount=" + $h$$module$src$lib$$($count$jscomp$64$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$6$$), 32768);
9033
- $start$jscomp$35$$ + $byte_count$jscomp$6$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "ATA write: Outside of disk", 32768), this.status = 255, this.push_irq()) : (this.status = 88, this.data_allocate_noclear($byte_count$jscomp$6$$), this.data_end = $cmd$jscomp$7_is_single$jscomp$1$$ ? 512 : Math.min($byte_count$jscomp$6$$, 512 * this.sectors_per_drq), this.write_dest = $start$jscomp$35$$);
9079
+ $IDEInterface$$module$src$ide$$.prototype.ata_write_sectors = function($cmd$jscomp$8_is_single$jscomp$1$$) {
9080
+ var $is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$ = 52 === $cmd$jscomp$8_is_single$jscomp$1$$ || 57 === $cmd$jscomp$8_is_single$jscomp$1$$, $byte_count$jscomp$6_count$jscomp$64$$ = this.get_count($is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$);
9081
+ $is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$ = this.get_lba($is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$);
9082
+ $cmd$jscomp$8_is_single$jscomp$1$$ = 48 === $cmd$jscomp$8_is_single$jscomp$1$$ || 52 === $cmd$jscomp$8_is_single$jscomp$1$$;
9083
+ $byte_count$jscomp$6_count$jscomp$64$$ *= this.sector_size;
9084
+ $is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$ *= this.sector_size;
9085
+ $is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$ + $byte_count$jscomp$6_count$jscomp$64$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": ATA write: Outside of disk", 32768), this.status_reg = 255, this.push_irq()) : (this.status_reg = 88, this.data_allocate_noclear($byte_count$jscomp$6_count$jscomp$64$$), this.data_end = $cmd$jscomp$8_is_single$jscomp$1$$ ? 512 : Math.min($byte_count$jscomp$6_count$jscomp$64$$, 512 * this.sectors_per_drq), this.write_dest = $is_lba48$jscomp$3_lba$jscomp$5_start$jscomp$35$$);
9034
9086
  };
9035
- $IDEInterface$$module$src$ide$$.prototype.ata_write_sectors_dma = function($cmd$jscomp$8_count$jscomp$65$$) {
9036
- var $is_lba48$jscomp$4_lba$jscomp$6$$ = 53 === $cmd$jscomp$8_count$jscomp$65$$;
9037
- $cmd$jscomp$8_count$jscomp$65$$ = this.get_count($is_lba48$jscomp$4_lba$jscomp$6$$);
9038
- $is_lba48$jscomp$4_lba$jscomp$6$$ = this.get_lba($is_lba48$jscomp$4_lba$jscomp$6$$);
9039
- var $byte_count$jscomp$7$$ = $cmd$jscomp$8_count$jscomp$65$$ * this.sector_size, $start$jscomp$36$$ = $is_lba48$jscomp$4_lba$jscomp$6$$ * this.sector_size;
9040
- $dbg_log$$module$src$log$$("ATA DMA write lba=" + $h$$module$src$lib$$($is_lba48$jscomp$4_lba$jscomp$6$$) + " lbacount=" + $h$$module$src$lib$$($cmd$jscomp$8_count$jscomp$65$$) + " bytecount=" + $h$$module$src$lib$$($byte_count$jscomp$7$$), 32768);
9041
- $start$jscomp$36$$ + $byte_count$jscomp$7$$ > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, "ATA DMA write: Outside of disk", 32768), this.status = 255, this.push_irq()) : (this.status = 88, this.device.dma_status |= 1);
9087
+ $IDEInterface$$module$src$ide$$.prototype.ata_write_sectors_dma = function($cmd$jscomp$9_is_lba48$jscomp$4$$) {
9088
+ $cmd$jscomp$9_is_lba48$jscomp$4$$ = 53 === $cmd$jscomp$9_is_lba48$jscomp$4$$;
9089
+ var $count$jscomp$65$$ = this.get_count($cmd$jscomp$9_is_lba48$jscomp$4$$);
9090
+ this.get_lba($cmd$jscomp$9_is_lba48$jscomp$4$$) * this.sector_size + $count$jscomp$65$$ * this.sector_size > this.buffer.byteLength ? ($dbg_assert$$module$src$log$$(!1, this.name + ": ATA DMA write: Outside of disk", 32768), this.status_reg = 255, this.push_irq()) : (this.status_reg = 88, this.channel.dma_status |= 1);
9042
9091
  };
9043
9092
  $IDEInterface$$module$src$ide$$.prototype.do_ata_write_sectors_dma = function() {
9044
9093
  var $byte_count$jscomp$8_is_lba48$jscomp$5$$ = 53 === this.current_command, $count$jscomp$66$$ = this.get_count($byte_count$jscomp$8_is_lba48$jscomp$5$$), $lba$jscomp$7_start$jscomp$37$$ = this.get_lba($byte_count$jscomp$8_is_lba48$jscomp$5$$);
9045
9094
  $byte_count$jscomp$8_is_lba48$jscomp$5$$ = $count$jscomp$66$$ * this.sector_size;
9046
9095
  $lba$jscomp$7_start$jscomp$37$$ *= this.sector_size;
9047
- var $prdt_start$jscomp$2$$ = this.device.prdt_addr, $offset$jscomp$73$$ = 0;
9048
- $dbg_log$$module$src$log$$("prdt addr: " + $h$$module$src$lib$$($prdt_start$jscomp$2$$, 8), 32768);
9049
- const $buffer$jscomp$46$$ = new Uint8Array($byte_count$jscomp$8_is_lba48$jscomp$5$$);
9096
+ var $prdt_start$jscomp$2$$ = this.channel.prdt_addr, $offset$jscomp$73$$ = 0;
9097
+ const $buffer$jscomp$48$$ = new Uint8Array($byte_count$jscomp$8_is_lba48$jscomp$5$$);
9050
9098
  do {
9051
9099
  var $prd_addr$jscomp$1_slice$jscomp$3$$ = this.cpu.read32s($prdt_start$jscomp$2$$), $prd_count$jscomp$1$$ = this.cpu.read16($prdt_start$jscomp$2$$ + 4), $end$jscomp$19$$ = this.cpu.read8($prdt_start$jscomp$2$$ + 7) & 128;
9052
- $prd_count$jscomp$1$$ || ($prd_count$jscomp$1$$ = 65536, $dbg_log$$module$src$log$$("dma: prd count was 0", 32768));
9053
- $dbg_log$$module$src$log$$("dma write transfer dest=" + $h$$module$src$lib$$($prd_addr$jscomp$1_slice$jscomp$3$$) + " prd_count=" + $h$$module$src$lib$$($prd_count$jscomp$1$$), 32768);
9100
+ $prd_count$jscomp$1$$ || ($prd_count$jscomp$1$$ = 65536, $dbg_log$$module$src$log$$(this.name + ": DMA: prd count was 0", 32768));
9054
9101
  $prd_addr$jscomp$1_slice$jscomp$3$$ = this.cpu.mem8.subarray($prd_addr$jscomp$1_slice$jscomp$3$$, $prd_addr$jscomp$1_slice$jscomp$3$$ + $prd_count$jscomp$1$$);
9055
9102
  $dbg_assert$$module$src$log$$($prd_addr$jscomp$1_slice$jscomp$3$$.length === $prd_count$jscomp$1$$);
9056
- $buffer$jscomp$46$$.set($prd_addr$jscomp$1_slice$jscomp$3$$, $offset$jscomp$73$$);
9103
+ $buffer$jscomp$48$$.set($prd_addr$jscomp$1_slice$jscomp$3$$, $offset$jscomp$73$$);
9057
9104
  $offset$jscomp$73$$ += $prd_count$jscomp$1$$;
9058
9105
  $prdt_start$jscomp$2$$ += 8;
9059
9106
  } while (!$end$jscomp$19$$);
9060
- $dbg_assert$$module$src$log$$($offset$jscomp$73$$ === $buffer$jscomp$46$$.length);
9061
- this.buffer.set($lba$jscomp$7_start$jscomp$37$$, $buffer$jscomp$46$$, () => {
9062
- $dbg_log$$module$src$log$$("dma write completed", 32768);
9107
+ $dbg_assert$$module$src$log$$($offset$jscomp$73$$ === $buffer$jscomp$48$$.length);
9108
+ this.buffer.set($lba$jscomp$7_start$jscomp$37$$, $buffer$jscomp$48$$, () => {
9063
9109
  this.ata_advance(this.current_command, $count$jscomp$66$$);
9064
- this.status = 80;
9110
+ this.status_reg = 80;
9065
9111
  this.push_irq();
9066
- this.device.dma_status &= -2;
9112
+ this.channel.dma_status &= -2;
9067
9113
  this.current_command = -1;
9068
9114
  });
9069
9115
  this.report_write($byte_count$jscomp$8_is_lba48$jscomp$5$$);
9070
9116
  };
9071
9117
  $IDEInterface$$module$src$ide$$.prototype.get_chs = function() {
9072
- var $c$jscomp$3$$ = this.cylinder_low & 255 | this.cylinder_high << 8 & 65280, $h$jscomp$6$$ = this.head, $s$jscomp$8$$ = this.sector & 255;
9073
- $dbg_log$$module$src$log$$("get_chs: c=" + $c$jscomp$3$$ + " h=" + $h$jscomp$6$$ + " s=" + $s$jscomp$8$$, 32768);
9074
- return ($c$jscomp$3$$ * this.head_count + $h$jscomp$6$$) * this.sectors_per_track + $s$jscomp$8$$ - 1;
9118
+ return ((this.lba_mid_reg & 255 | this.lba_high_reg << 8 & 65280) * this.head_count + this.head) * this.sectors_per_track + (this.lba_low_reg & 255) - 1;
9075
9119
  };
9076
9120
  $IDEInterface$$module$src$ide$$.prototype.get_lba28 = function() {
9077
- return this.sector & 255 | this.cylinder_low << 8 & 65280 | this.cylinder_high << 16 & 16711680 | (this.head & 15) << 24;
9121
+ return this.lba_low_reg & 255 | this.lba_mid_reg << 8 & 65280 | this.lba_high_reg << 16 & 16711680 | (this.head & 15) << 24;
9078
9122
  };
9079
9123
  $IDEInterface$$module$src$ide$$.prototype.get_lba48 = function() {
9080
- return (this.sector & 255 | this.cylinder_low << 8 & 65280 | this.cylinder_high << 16 & 16711680 | this.sector >> 8 << 24 & 4278190080) >>> 0;
9124
+ return (this.lba_low_reg & 255 | this.lba_mid_reg << 8 & 65280 | this.lba_high_reg << 16 & 16711680 | this.lba_low_reg >> 8 << 24 & 4278190080) >>> 0;
9081
9125
  };
9082
9126
  $IDEInterface$$module$src$ide$$.prototype.get_lba = function($is_lba48$jscomp$6$$) {
9083
9127
  return $is_lba48$jscomp$6$$ ? this.get_lba48() : this.is_lba ? this.get_lba28() : this.get_chs();
9084
9128
  };
9085
9129
  $IDEInterface$$module$src$ide$$.prototype.get_count = function($count$jscomp$67_is_lba48$jscomp$7$$) {
9086
- $count$jscomp$67_is_lba48$jscomp$7$$ ? ($count$jscomp$67_is_lba48$jscomp$7$$ = this.bytecount, 0 === $count$jscomp$67_is_lba48$jscomp$7$$ && ($count$jscomp$67_is_lba48$jscomp$7$$ = 65536)) : ($count$jscomp$67_is_lba48$jscomp$7$$ = this.bytecount & 255, 0 === $count$jscomp$67_is_lba48$jscomp$7$$ && ($count$jscomp$67_is_lba48$jscomp$7$$ = 256));
9130
+ $count$jscomp$67_is_lba48$jscomp$7$$ ? ($count$jscomp$67_is_lba48$jscomp$7$$ = this.sector_count_reg, 0 === $count$jscomp$67_is_lba48$jscomp$7$$ && ($count$jscomp$67_is_lba48$jscomp$7$$ = 65536)) : ($count$jscomp$67_is_lba48$jscomp$7$$ = this.sector_count_reg & 255, 0 === $count$jscomp$67_is_lba48$jscomp$7$$ && ($count$jscomp$67_is_lba48$jscomp$7$$ = 256));
9087
9131
  return $count$jscomp$67_is_lba48$jscomp$7$$;
9088
9132
  };
9089
9133
  $IDEInterface$$module$src$ide$$.prototype.create_identify_packet = function() {
9090
- if (this.drive_head & 16) {
9091
- this.data_allocate(0);
9092
- } else {
9093
- for (var $cylinder_count_i$jscomp$89$$ = 0; 512 > $cylinder_count_i$jscomp$89$$; $cylinder_count_i$jscomp$89$$++) {
9094
- this.data[$cylinder_count_i$jscomp$89$$] = 0;
9095
- }
9096
- $cylinder_count_i$jscomp$89$$ = Math.min(16383, this.cylinder_count);
9097
- this.data_set([64, this.is_atapi ? 133 : 0, $cylinder_count_i$jscomp$89$$, $cylinder_count_i$jscomp$89$$ >> 8, 0, 0, this.head_count, this.head_count >> 8, this.sectors_per_track / 512, this.sectors_per_track / 512 >> 8, 0, 2, this.sectors_per_track, this.sectors_per_track >> 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 118, 32, 54, 68, 72, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
9098
- 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 128, 0, 1, 0, 0, 2, 0, 0, 0, 2, 0, 2, 7, 0, $cylinder_count_i$jscomp$89$$, $cylinder_count_i$jscomp$89$$ >> 8, this.head_count, this.head_count >> 8, this.sectors_per_track, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >> 24 & 255, 0, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >> 24 & 255, 0, 0, 160 === this.current_command ?
9099
- 0 : 7, 160 === this.current_command ? 0 : 4, 0, 0, 30, 0, 30, 0, 30, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, 0, 116, 0, 64, 0, 64, 0, 116, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >> 24 & 255, ]);
9100
- this.data_end = this.data_length = 512;
9101
- }
9134
+ const $cylinder_count$$ = Math.min(16383, this.cylinder_count), $strcpy_be16$$ = ($out_buffer$$, $ofs16_ofs8$$, $end8_len16$$, $str$jscomp$13$$) => {
9135
+ $ofs16_ofs8$$ <<= 1;
9136
+ var $i_str_len8$$ = $end8_len16$$ << 1;
9137
+ $end8_len16$$ = $ofs16_ofs8$$ + $i_str_len8$$;
9138
+ $out_buffer$$.fill(32, $ofs16_ofs8$$, $i_str_len8$$);
9139
+ for ($i_str_len8$$ = 0; $i_str_len8$$ < $str$jscomp$13$$.length && $ofs16_ofs8$$ < $end8_len16$$; $i_str_len8$$++) {
9140
+ $i_str_len8$$ & 1 ? ($out_buffer$$[$ofs16_ofs8$$] = $str$jscomp$13$$.charCodeAt($i_str_len8$$), $ofs16_ofs8$$ += 2) : $out_buffer$$[$ofs16_ofs8$$ + 1] = $str$jscomp$13$$.charCodeAt($i_str_len8$$);
9141
+ }
9142
+ }, $general_cfg$$ = this.is_atapi ? 34112 : 64, $multiword_dma_mode$$ = 160 === this.current_command ? 0 : 1031, $feat_82$$ = this.is_atapi ? 16928 : 16384, $feat_83$$ = this.is_atapi ? 20480 : 29696;
9143
+ this.data.fill(0, 0, 512);
9144
+ this.data_set([$general_cfg$$ & 255, $general_cfg$$ >> 8 & 255, $cylinder_count$$ & 255, $cylinder_count$$ >> 8 & 255, 0, 0, this.head_count & 255, this.head_count >> 8 & 255, this.sectors_per_track / 512 & 255, this.sectors_per_track / 512 >> 8 & 255, 0, 2, this.sectors_per_track & 255, this.sectors_per_track >> 8 & 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
9145
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 1, 0, 0, 2, 0, 0, 0, 2, 0, 2, 7, 0, $cylinder_count$$ & 255, $cylinder_count$$ >> 8 & 255, this.head_count & 255, this.head_count >> 8 & 255, this.sectors_per_track, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >> 24 & 255, 0, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >> 24 & 255, 0, 0, $multiword_dma_mode$$ &
9146
+ 255, $multiword_dma_mode$$ >> 8 & 255, 0, 0, 30, 0, 30, 0, 30, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, $feat_82$$ & 255, $feat_82$$ >> 8 & 255, $feat_83$$ & 255, $feat_83$$ >> 8 & 255, 0, 64, $feat_82$$ & 255, $feat_82$$ >> 8 & 255, $feat_83$$ & 255, $feat_83$$ >> 8 & 255, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, this.sector_count & 255, this.sector_count >> 8 & 255, this.sector_count >> 16 & 255, this.sector_count >>
9147
+ 24 & 255, ]);
9148
+ $strcpy_be16$$(this.data, 10, 10, `8086-86${this.channel_nr}${this.interface_nr}`);
9149
+ $strcpy_be16$$(this.data, 23, 4, "1.00");
9150
+ $strcpy_be16$$(this.data, 27, 20, this.is_atapi ? "v86 ATAPI CD-ROM" : "v86 ATA HD");
9151
+ this.data_end = this.data_length = 512;
9102
9152
  };
9103
9153
  $IDEInterface$$module$src$ide$$.prototype.data_allocate = function($len$jscomp$26$$) {
9104
9154
  this.data_allocate_noclear($len$jscomp$26$$);
9105
- for (var $i$jscomp$90$$ = 0; $i$jscomp$90$$ < $len$jscomp$26$$ + 3 >> 2; $i$jscomp$90$$++) {
9106
- this.data32[$i$jscomp$90$$] = 0;
9107
- }
9155
+ this.data32.fill(0, 0, $len$jscomp$26$$ + 3 >> 2);
9108
9156
  };
9109
9157
  $IDEInterface$$module$src$ide$$.prototype.data_allocate_noclear = function($len$jscomp$27$$) {
9110
9158
  this.data.length < $len$jscomp$27$$ && (this.data = new Uint8Array($len$jscomp$27$$ + 3 & -4), this.data16 = new Uint16Array(this.data.buffer), this.data32 = new Int32Array(this.data.buffer));
@@ -9119,10 +9167,10 @@ $IDEInterface$$module$src$ide$$.prototype.report_read_start = function() {
9119
9167
  this.bus.send("ide-read-start");
9120
9168
  };
9121
9169
  $IDEInterface$$module$src$ide$$.prototype.report_read_end = function($byte_count$jscomp$9$$) {
9122
- this.bus.send("ide-read-end", [this.nr, $byte_count$jscomp$9$$, $byte_count$jscomp$9$$ / this.sector_size | 0]);
9170
+ this.bus.send("ide-read-end", [this.channel_nr, $byte_count$jscomp$9$$, $byte_count$jscomp$9$$ / this.sector_size | 0]);
9123
9171
  };
9124
9172
  $IDEInterface$$module$src$ide$$.prototype.report_write = function($byte_count$jscomp$10$$) {
9125
- this.bus.send("ide-write-end", [this.nr, $byte_count$jscomp$10$$, $byte_count$jscomp$10$$ / this.sector_size | 0]);
9173
+ this.bus.send("ide-write-end", [this.channel_nr, $byte_count$jscomp$10$$, $byte_count$jscomp$10$$ / this.sector_size | 0]);
9126
9174
  };
9127
9175
  $IDEInterface$$module$src$ide$$.prototype.read_buffer = function($start$jscomp$38$$, $length$jscomp$30$$, $callback$jscomp$46$$) {
9128
9176
  const $id$jscomp$26$$ = this.last_io_id++;
@@ -9144,88 +9192,90 @@ $IDEInterface$$module$src$ide$$.prototype.cancel_io_operations = function() {
9144
9192
  this.in_progress_io_ids.clear();
9145
9193
  };
9146
9194
  $IDEInterface$$module$src$ide$$.prototype.get_state = function() {
9147
- var $state$jscomp$48$$ = [];
9148
- $state$jscomp$48$$[0] = this.bytecount;
9149
- $state$jscomp$48$$[1] = this.cylinder_count;
9150
- $state$jscomp$48$$[2] = this.cylinder_high;
9151
- $state$jscomp$48$$[3] = this.cylinder_low;
9152
- $state$jscomp$48$$[4] = this.data_pointer;
9153
- $state$jscomp$48$$[5] = 0;
9154
- $state$jscomp$48$$[6] = 0;
9155
- $state$jscomp$48$$[7] = 0;
9156
- $state$jscomp$48$$[8] = 0;
9157
- $state$jscomp$48$$[9] = this.drive_head;
9158
- $state$jscomp$48$$[10] = this.error;
9159
- $state$jscomp$48$$[11] = this.head;
9160
- $state$jscomp$48$$[12] = this.head_count;
9161
- $state$jscomp$48$$[13] = this.is_atapi;
9162
- $state$jscomp$48$$[14] = this.is_lba;
9163
- $state$jscomp$48$$[15] = this.lba_count;
9164
- $state$jscomp$48$$[16] = this.data;
9165
- $state$jscomp$48$$[17] = this.data_length;
9166
- $state$jscomp$48$$[18] = this.sector;
9167
- $state$jscomp$48$$[19] = this.sector_count;
9168
- $state$jscomp$48$$[20] = this.sector_size;
9169
- $state$jscomp$48$$[21] = this.sectors_per_drq;
9170
- $state$jscomp$48$$[22] = this.sectors_per_track;
9171
- $state$jscomp$48$$[23] = this.status;
9172
- $state$jscomp$48$$[24] = this.write_dest;
9173
- $state$jscomp$48$$[25] = this.current_command;
9174
- $state$jscomp$48$$[26] = this.data_end;
9175
- $state$jscomp$48$$[27] = this.current_atapi_command;
9176
- $state$jscomp$48$$[28] = this.buffer;
9177
- return $state$jscomp$48$$;
9195
+ var $state$jscomp$50$$ = [];
9196
+ $state$jscomp$50$$[0] = this.sector_count_reg;
9197
+ $state$jscomp$50$$[1] = this.cylinder_count;
9198
+ $state$jscomp$50$$[2] = this.lba_high_reg;
9199
+ $state$jscomp$50$$[3] = this.lba_mid_reg;
9200
+ $state$jscomp$50$$[4] = this.data_pointer;
9201
+ $state$jscomp$50$$[5] = 0;
9202
+ $state$jscomp$50$$[6] = 0;
9203
+ $state$jscomp$50$$[7] = 0;
9204
+ $state$jscomp$50$$[8] = 0;
9205
+ $state$jscomp$50$$[9] = this.device_reg;
9206
+ $state$jscomp$50$$[10] = this.error_reg;
9207
+ $state$jscomp$50$$[11] = this.head;
9208
+ $state$jscomp$50$$[12] = this.head_count;
9209
+ $state$jscomp$50$$[13] = this.is_atapi;
9210
+ $state$jscomp$50$$[14] = this.is_lba;
9211
+ $state$jscomp$50$$[15] = this.features_reg;
9212
+ $state$jscomp$50$$[16] = this.data;
9213
+ $state$jscomp$50$$[17] = this.data_length;
9214
+ $state$jscomp$50$$[18] = this.lba_low_reg;
9215
+ $state$jscomp$50$$[19] = this.sector_count;
9216
+ $state$jscomp$50$$[20] = this.sector_size;
9217
+ $state$jscomp$50$$[21] = this.sectors_per_drq;
9218
+ $state$jscomp$50$$[22] = this.sectors_per_track;
9219
+ $state$jscomp$50$$[23] = this.status_reg;
9220
+ $state$jscomp$50$$[24] = this.write_dest;
9221
+ $state$jscomp$50$$[25] = this.current_command;
9222
+ $state$jscomp$50$$[26] = this.data_end;
9223
+ $state$jscomp$50$$[27] = this.current_atapi_command;
9224
+ $state$jscomp$50$$[28] = this.buffer;
9225
+ return $state$jscomp$50$$;
9178
9226
  };
9179
- $IDEInterface$$module$src$ide$$.prototype.set_state = function($state$jscomp$49$$) {
9180
- this.bytecount = $state$jscomp$49$$[0];
9181
- this.cylinder_count = $state$jscomp$49$$[1];
9182
- this.cylinder_high = $state$jscomp$49$$[2];
9183
- this.cylinder_low = $state$jscomp$49$$[3];
9184
- this.data_pointer = $state$jscomp$49$$[4];
9185
- this.drive_head = $state$jscomp$49$$[9];
9186
- this.error = $state$jscomp$49$$[10];
9187
- this.head = $state$jscomp$49$$[11];
9188
- this.head_count = $state$jscomp$49$$[12];
9189
- this.is_atapi = $state$jscomp$49$$[13];
9190
- this.is_lba = $state$jscomp$49$$[14];
9191
- this.lba_count = $state$jscomp$49$$[15];
9192
- this.data = $state$jscomp$49$$[16];
9193
- this.data_length = $state$jscomp$49$$[17];
9194
- this.sector = $state$jscomp$49$$[18];
9195
- this.sector_count = $state$jscomp$49$$[19];
9196
- this.sector_size = $state$jscomp$49$$[20];
9197
- this.sectors_per_drq = $state$jscomp$49$$[21];
9198
- this.sectors_per_track = $state$jscomp$49$$[22];
9199
- this.status = $state$jscomp$49$$[23];
9200
- this.write_dest = $state$jscomp$49$$[24];
9201
- this.current_command = $state$jscomp$49$$[25];
9202
- this.data_end = $state$jscomp$49$$[26];
9203
- this.current_atapi_command = $state$jscomp$49$$[27];
9227
+ $IDEInterface$$module$src$ide$$.prototype.set_state = function($state$jscomp$51$$) {
9228
+ this.sector_count_reg = $state$jscomp$51$$[0];
9229
+ this.cylinder_count = $state$jscomp$51$$[1];
9230
+ this.lba_high_reg = $state$jscomp$51$$[2];
9231
+ this.lba_mid_reg = $state$jscomp$51$$[3];
9232
+ this.data_pointer = $state$jscomp$51$$[4];
9233
+ this.device_reg = $state$jscomp$51$$[9];
9234
+ this.error_reg = $state$jscomp$51$$[10];
9235
+ this.head = $state$jscomp$51$$[11];
9236
+ this.head_count = $state$jscomp$51$$[12];
9237
+ this.is_atapi = $state$jscomp$51$$[13];
9238
+ this.is_lba = $state$jscomp$51$$[14];
9239
+ this.features_reg = $state$jscomp$51$$[15];
9240
+ this.data = $state$jscomp$51$$[16];
9241
+ this.data_length = $state$jscomp$51$$[17];
9242
+ this.lba_low_reg = $state$jscomp$51$$[18];
9243
+ this.sector_count = $state$jscomp$51$$[19];
9244
+ this.sector_size = $state$jscomp$51$$[20];
9245
+ this.sectors_per_drq = $state$jscomp$51$$[21];
9246
+ this.sectors_per_track = $state$jscomp$51$$[22];
9247
+ this.status_reg = $state$jscomp$51$$[23];
9248
+ this.write_dest = $state$jscomp$51$$[24];
9249
+ this.current_command = $state$jscomp$51$$[25];
9250
+ this.data_end = $state$jscomp$51$$[26];
9251
+ this.current_atapi_command = $state$jscomp$51$$[27];
9204
9252
  this.data16 = new Uint16Array(this.data.buffer);
9205
9253
  this.data32 = new Int32Array(this.data.buffer);
9206
- this.buffer && this.buffer.set_state($state$jscomp$49$$[28]);
9254
+ this.buffer && this.buffer.set_state($state$jscomp$51$$[28]);
9255
+ this.drive_connected = this.is_atapi || this.buffer;
9256
+ this.medium_changed = !1;
9207
9257
  };
9208
- function $VirtioNet$$module$src$virtio_net$$($cpu$jscomp$25$$, $bus$jscomp$24_queues$jscomp$1$$, $i$jscomp$91_preserve_mac_from_state_image$jscomp$1$$) {
9209
- this.bus = $bus$jscomp$24_queues$jscomp$1$$;
9258
+ function $VirtioNet$$module$src$virtio_net$$($cpu$jscomp$25$$, $bus$jscomp$23_queues$jscomp$1$$, $i$jscomp$89_preserve_mac_from_state_image$jscomp$1$$) {
9259
+ this.bus = $bus$jscomp$23_queues$jscomp$1$$;
9210
9260
  this.id = $cpu$jscomp$25$$.devices.net ? 1 : 0;
9211
9261
  this.status = this.pairs = 1;
9212
- this.preserve_mac_from_state_image = $i$jscomp$91_preserve_mac_from_state_image$jscomp$1$$;
9262
+ this.preserve_mac_from_state_image = $i$jscomp$89_preserve_mac_from_state_image$jscomp$1$$;
9213
9263
  this.mac = new Uint8Array([0, 34, 21, 255 * Math.random() | 0, 255 * Math.random() | 0, 255 * Math.random() | 0, ]);
9214
9264
  this.bus.send("net" + this.id + "-mac", $format_mac$$module$src$ne2k$$(this.mac));
9215
- $bus$jscomp$24_queues$jscomp$1$$ = [];
9216
- for ($i$jscomp$91_preserve_mac_from_state_image$jscomp$1$$ = 0; $i$jscomp$91_preserve_mac_from_state_image$jscomp$1$$ < this.pairs; ++$i$jscomp$91_preserve_mac_from_state_image$jscomp$1$$) {
9217
- $bus$jscomp$24_queues$jscomp$1$$.push({size_supported:1024, notify_offset:0}), $bus$jscomp$24_queues$jscomp$1$$.push({size_supported:1024, notify_offset:1});
9265
+ $bus$jscomp$23_queues$jscomp$1$$ = [];
9266
+ for ($i$jscomp$89_preserve_mac_from_state_image$jscomp$1$$ = 0; $i$jscomp$89_preserve_mac_from_state_image$jscomp$1$$ < this.pairs; ++$i$jscomp$89_preserve_mac_from_state_image$jscomp$1$$) {
9267
+ $bus$jscomp$23_queues$jscomp$1$$.push({size_supported:1024, notify_offset:0}), $bus$jscomp$23_queues$jscomp$1$$.push({size_supported:1024, notify_offset:1});
9218
9268
  }
9219
- $bus$jscomp$24_queues$jscomp$1$$.push({size_supported:16, notify_offset:2, });
9220
- this.virtio = new $VirtIO$$module$src$virtio$$($cpu$jscomp$25$$, {name:"virtio-net", pci_id:80, device_id:4161, subsystem_device_id:1, common:{initial_port:51200, queues:$bus$jscomp$24_queues$jscomp$1$$, features:[5, 16, 22, 3, 17, 23, 32, ], on_driver_ok:() => {
9269
+ $bus$jscomp$23_queues$jscomp$1$$.push({size_supported:16, notify_offset:2, });
9270
+ this.virtio = new $VirtIO$$module$src$virtio$$($cpu$jscomp$25$$, {name:"virtio-net", pci_id:80, device_id:4161, subsystem_device_id:1, common:{initial_port:51200, queues:$bus$jscomp$23_queues$jscomp$1$$, features:[5, 16, 22, 3, 17, 23, 32, ], on_driver_ok:() => {
9221
9271
  }, }, notification:{initial_port:51456, single_handler:!1, handlers:[() => {
9222
9272
  }, $queue_id$jscomp$8$$ => {
9223
9273
  const $queue$jscomp$5$$ = this.virtio.queues[$queue_id$jscomp$8$$];
9224
9274
  for (; $queue$jscomp$5$$.has_request();) {
9225
- const $bufchain$jscomp$8$$ = $queue$jscomp$5$$.pop_request(), $buffer$jscomp$47$$ = new Uint8Array($bufchain$jscomp$8$$.length_readable);
9226
- $bufchain$jscomp$8$$.get_next_blob($buffer$jscomp$47$$);
9227
- this.bus.send("net" + this.id + "-send", $buffer$jscomp$47$$.subarray(12));
9228
- this.bus.send("eth-transmit-end", [$buffer$jscomp$47$$.length - 12]);
9275
+ const $bufchain$jscomp$8$$ = $queue$jscomp$5$$.pop_request(), $buffer$jscomp$49$$ = new Uint8Array($bufchain$jscomp$8$$.length_readable);
9276
+ $bufchain$jscomp$8$$.get_next_blob($buffer$jscomp$49$$);
9277
+ this.bus.send("net" + this.id + "-send", $buffer$jscomp$49$$.subarray(12));
9278
+ this.bus.send("eth-transmit-end", [$buffer$jscomp$49$$.length - 12]);
9229
9279
  this.virtio.queues[$queue_id$jscomp$8$$].push_reply($bufchain$jscomp$8$$);
9230
9280
  }
9231
9281
  this.virtio.queues[$queue_id$jscomp$8$$].flush_replies();
@@ -9235,19 +9285,19 @@ function $VirtioNet$$module$src$virtio_net$$($cpu$jscomp$25$$, $bus$jscomp$24_qu
9235
9285
  } else {
9236
9286
  for (var $queue$jscomp$6$$ = this.virtio.queues[$queue_id$jscomp$9$$]; $queue$jscomp$6$$.has_request();) {
9237
9287
  const $bufchain$jscomp$9$$ = $queue$jscomp$6$$.pop_request();
9238
- var $buffer$jscomp$48_data$jscomp$209$$ = new Uint8Array($bufchain$jscomp$9$$.length_readable);
9239
- $bufchain$jscomp$9$$.get_next_blob($buffer$jscomp$48_data$jscomp$209$$);
9240
- var $command_parts$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["b", "b"], $buffer$jscomp$48_data$jscomp$209$$, {offset:0});
9288
+ var $buffer$jscomp$50_data$jscomp$209$$ = new Uint8Array($bufchain$jscomp$9$$.length_readable);
9289
+ $bufchain$jscomp$9$$.get_next_blob($buffer$jscomp$50_data$jscomp$209$$);
9290
+ var $command_parts$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["b", "b"], $buffer$jscomp$50_data$jscomp$209$$, {offset:0});
9241
9291
  const $xclass$$ = $command_parts$jscomp$6$$[0];
9242
9292
  $command_parts$jscomp$6$$ = $command_parts$jscomp$6$$[1];
9243
9293
  switch($xclass$$ << 8 | $command_parts$jscomp$6$$) {
9244
9294
  case 1024:
9245
- $buffer$jscomp$48_data$jscomp$209$$ = $Unmarshall$$module$lib$marshall$$(["h"], $buffer$jscomp$48_data$jscomp$209$$, {offset:2});
9246
- $dbg_assert$$module$src$log$$(1 === $buffer$jscomp$48_data$jscomp$209$$[0]);
9295
+ $buffer$jscomp$50_data$jscomp$209$$ = $Unmarshall$$module$lib$marshall$$(["h"], $buffer$jscomp$50_data$jscomp$209$$, {offset:2});
9296
+ $dbg_assert$$module$src$log$$(1 === $buffer$jscomp$50_data$jscomp$209$$[0]);
9247
9297
  this.Send($queue_id$jscomp$9$$, $bufchain$jscomp$9$$, new Uint8Array([0]));
9248
9298
  break;
9249
9299
  case 257:
9250
- this.mac = $buffer$jscomp$48_data$jscomp$209$$.subarray(2, 8);
9300
+ this.mac = $buffer$jscomp$50_data$jscomp$209$$.subarray(2, 8);
9251
9301
  this.Send($queue_id$jscomp$9$$, $bufchain$jscomp$9$$, new Uint8Array([0]));
9252
9302
  this.bus.send("net" + this.id + "-mac", $format_mac$$module$src$ne2k$$(this.mac));
9253
9303
  break;
@@ -9273,16 +9323,16 @@ function $VirtioNet$$module$src$virtio_net$$($cpu$jscomp$25$$, $bus$jscomp$24_qu
9273
9323
  }, this);
9274
9324
  }
9275
9325
  $VirtioNet$$module$src$virtio_net$$.prototype.get_state = function() {
9276
- const $state$jscomp$50$$ = [];
9277
- $state$jscomp$50$$[0] = this.virtio;
9278
- $state$jscomp$50$$[1] = this.id;
9279
- $state$jscomp$50$$[2] = this.mac;
9280
- return $state$jscomp$50$$;
9326
+ const $state$jscomp$52$$ = [];
9327
+ $state$jscomp$52$$[0] = this.virtio;
9328
+ $state$jscomp$52$$[1] = this.id;
9329
+ $state$jscomp$52$$[2] = this.mac;
9330
+ return $state$jscomp$52$$;
9281
9331
  };
9282
- $VirtioNet$$module$src$virtio_net$$.prototype.set_state = function($state$jscomp$51$$) {
9283
- this.virtio.set_state($state$jscomp$51$$[0]);
9284
- this.id = $state$jscomp$51$$[1];
9285
- this.preserve_mac_from_state_image && (this.mac = $state$jscomp$51$$[2], this.bus.send("net" + this.id + "-mac", $format_mac$$module$src$ne2k$$(this.mac)));
9332
+ $VirtioNet$$module$src$virtio_net$$.prototype.set_state = function($state$jscomp$53$$) {
9333
+ this.virtio.set_state($state$jscomp$53$$[0]);
9334
+ this.id = $state$jscomp$53$$[1];
9335
+ this.preserve_mac_from_state_image && (this.mac = $state$jscomp$53$$[2], this.bus.send("net" + this.id + "-mac", $format_mac$$module$src$ne2k$$(this.mac)));
9286
9336
  };
9287
9337
  $VirtioNet$$module$src$virtio_net$$.prototype.reset = function() {
9288
9338
  this.virtio.reset();
@@ -9297,9 +9347,9 @@ $VirtioNet$$module$src$virtio_net$$.prototype.Ack = function($queue_id$jscomp$11
9297
9347
  this.virtio.queues[$queue_id$jscomp$11$$].flush_replies();
9298
9348
  };
9299
9349
  const $VGA_HOST_MEMORY_SPACE_START$$module$src$vga$$ = Uint32Array.from([655360, 655360, 720896, 753664, ]), $VGA_HOST_MEMORY_SPACE_SIZE$$module$src$vga$$ = Uint32Array.from([131072, 65536, 32768, 32768, ]);
9300
- function $VGAScreen$$module$src$vga$$($cpu$jscomp$26$$, $bus$jscomp$25_io$jscomp$4$$, $screen$jscomp$3_vga_offset$$, $vga_memory_size$$) {
9350
+ function $VGAScreen$$module$src$vga$$($cpu$jscomp$26$$, $bus$jscomp$24_io$jscomp$4$$, $screen$jscomp$3_vga_offset$$, $vga_memory_size$$) {
9301
9351
  this.cpu = $cpu$jscomp$26$$;
9302
- this.bus = $bus$jscomp$25_io$jscomp$4$$;
9352
+ this.bus = $bus$jscomp$24_io$jscomp$4$$;
9303
9353
  this.screen = $screen$jscomp$3_vga_offset$$;
9304
9354
  this.vga_memory_size = $vga_memory_size$$;
9305
9355
  this.cursor_address = 0;
@@ -9343,45 +9393,45 @@ function $VGAScreen$$module$src$vga$$($cpu$jscomp$26$$, $bus$jscomp$25_io$jscomp
9343
9393
  this.max_scan_line = this.color_dont_care = this.color_compare = this.miscellaneous_graphics_register = this.planar_setreset_enable = this.planar_setreset = 0;
9344
9394
  this.port_3DA_value = this.miscellaneous_output_register = 255;
9345
9395
  this.font_page_ab_enabled = !1;
9346
- $bus$jscomp$25_io$jscomp$4$$ = $cpu$jscomp$26$$.io;
9347
- $bus$jscomp$25_io$jscomp$4$$.register_write(960, this, this.port3C0_write);
9348
- $bus$jscomp$25_io$jscomp$4$$.register_read(960, this, this.port3C0_read, this.port3C0_read16);
9349
- $bus$jscomp$25_io$jscomp$4$$.register_read(961, this, this.port3C1_read);
9350
- $bus$jscomp$25_io$jscomp$4$$.register_write(962, this, this.port3C2_write);
9351
- $bus$jscomp$25_io$jscomp$4$$.register_write_consecutive(964, this, this.port3C4_write, this.port3C5_write);
9352
- $bus$jscomp$25_io$jscomp$4$$.register_read(964, this, this.port3C4_read);
9353
- $bus$jscomp$25_io$jscomp$4$$.register_read(965, this, this.port3C5_read);
9354
- $bus$jscomp$25_io$jscomp$4$$.register_write_consecutive(974, this, this.port3CE_write, this.port3CF_write);
9355
- $bus$jscomp$25_io$jscomp$4$$.register_read(974, this, this.port3CE_read);
9356
- $bus$jscomp$25_io$jscomp$4$$.register_read(975, this, this.port3CF_read);
9357
- $bus$jscomp$25_io$jscomp$4$$.register_read(966, this, this.port3C6_read);
9358
- $bus$jscomp$25_io$jscomp$4$$.register_write(966, this, this.port3C6_write);
9359
- $bus$jscomp$25_io$jscomp$4$$.register_write(967, this, this.port3C7_write);
9360
- $bus$jscomp$25_io$jscomp$4$$.register_read(967, this, this.port3C7_read);
9361
- $bus$jscomp$25_io$jscomp$4$$.register_write(968, this, this.port3C8_write);
9362
- $bus$jscomp$25_io$jscomp$4$$.register_read(968, this, this.port3C8_read);
9363
- $bus$jscomp$25_io$jscomp$4$$.register_write(969, this, this.port3C9_write);
9364
- $bus$jscomp$25_io$jscomp$4$$.register_read(969, this, this.port3C9_read);
9365
- $bus$jscomp$25_io$jscomp$4$$.register_read(972, this, this.port3CC_read);
9366
- $bus$jscomp$25_io$jscomp$4$$.register_write(980, this, this.port3D4_write, this.port3D4_write16);
9367
- $bus$jscomp$25_io$jscomp$4$$.register_write(981, this, this.port3D5_write, this.port3D5_write16);
9368
- $bus$jscomp$25_io$jscomp$4$$.register_read(980, this, this.port3D4_read);
9369
- $bus$jscomp$25_io$jscomp$4$$.register_read(981, this, this.port3D5_read, this.port3D5_read16);
9370
- $bus$jscomp$25_io$jscomp$4$$.register_write(948, this, this.port3D4_write, this.port3D4_write16);
9371
- $bus$jscomp$25_io$jscomp$4$$.register_write(949, this, this.port3D5_write, this.port3D5_write16);
9372
- $bus$jscomp$25_io$jscomp$4$$.register_read(948, this, this.port3D4_read);
9373
- $bus$jscomp$25_io$jscomp$4$$.register_read(949, this, this.port3D5_read, this.port3D5_read16);
9374
- $bus$jscomp$25_io$jscomp$4$$.register_read(970, this, function() {
9396
+ $bus$jscomp$24_io$jscomp$4$$ = $cpu$jscomp$26$$.io;
9397
+ $bus$jscomp$24_io$jscomp$4$$.register_write(960, this, this.port3C0_write);
9398
+ $bus$jscomp$24_io$jscomp$4$$.register_read(960, this, this.port3C0_read, this.port3C0_read16);
9399
+ $bus$jscomp$24_io$jscomp$4$$.register_read(961, this, this.port3C1_read);
9400
+ $bus$jscomp$24_io$jscomp$4$$.register_write(962, this, this.port3C2_write);
9401
+ $bus$jscomp$24_io$jscomp$4$$.register_write_consecutive(964, this, this.port3C4_write, this.port3C5_write);
9402
+ $bus$jscomp$24_io$jscomp$4$$.register_read(964, this, this.port3C4_read);
9403
+ $bus$jscomp$24_io$jscomp$4$$.register_read(965, this, this.port3C5_read);
9404
+ $bus$jscomp$24_io$jscomp$4$$.register_write_consecutive(974, this, this.port3CE_write, this.port3CF_write);
9405
+ $bus$jscomp$24_io$jscomp$4$$.register_read(974, this, this.port3CE_read);
9406
+ $bus$jscomp$24_io$jscomp$4$$.register_read(975, this, this.port3CF_read);
9407
+ $bus$jscomp$24_io$jscomp$4$$.register_read(966, this, this.port3C6_read);
9408
+ $bus$jscomp$24_io$jscomp$4$$.register_write(966, this, this.port3C6_write);
9409
+ $bus$jscomp$24_io$jscomp$4$$.register_write(967, this, this.port3C7_write);
9410
+ $bus$jscomp$24_io$jscomp$4$$.register_read(967, this, this.port3C7_read);
9411
+ $bus$jscomp$24_io$jscomp$4$$.register_write(968, this, this.port3C8_write);
9412
+ $bus$jscomp$24_io$jscomp$4$$.register_read(968, this, this.port3C8_read);
9413
+ $bus$jscomp$24_io$jscomp$4$$.register_write(969, this, this.port3C9_write);
9414
+ $bus$jscomp$24_io$jscomp$4$$.register_read(969, this, this.port3C9_read);
9415
+ $bus$jscomp$24_io$jscomp$4$$.register_read(972, this, this.port3CC_read);
9416
+ $bus$jscomp$24_io$jscomp$4$$.register_write(980, this, this.port3D4_write, this.port3D4_write16);
9417
+ $bus$jscomp$24_io$jscomp$4$$.register_write(981, this, this.port3D5_write, this.port3D5_write16);
9418
+ $bus$jscomp$24_io$jscomp$4$$.register_read(980, this, this.port3D4_read);
9419
+ $bus$jscomp$24_io$jscomp$4$$.register_read(981, this, this.port3D5_read, this.port3D5_read16);
9420
+ $bus$jscomp$24_io$jscomp$4$$.register_write(948, this, this.port3D4_write, this.port3D4_write16);
9421
+ $bus$jscomp$24_io$jscomp$4$$.register_write(949, this, this.port3D5_write, this.port3D5_write16);
9422
+ $bus$jscomp$24_io$jscomp$4$$.register_read(948, this, this.port3D4_read);
9423
+ $bus$jscomp$24_io$jscomp$4$$.register_read(949, this, this.port3D5_read, this.port3D5_read16);
9424
+ $bus$jscomp$24_io$jscomp$4$$.register_read(970, this, function() {
9375
9425
  $dbg_log$$module$src$log$$("3CA read", 256);
9376
9426
  return 0;
9377
9427
  });
9378
- $bus$jscomp$25_io$jscomp$4$$.register_read(986, this, this.port3DA_read);
9379
- $bus$jscomp$25_io$jscomp$4$$.register_read(954, this, this.port3DA_read);
9428
+ $bus$jscomp$24_io$jscomp$4$$.register_read(986, this, this.port3DA_read);
9429
+ $bus$jscomp$24_io$jscomp$4$$.register_read(954, this, this.port3DA_read);
9380
9430
  this.dispi_index = -1;
9381
9431
  this.dispi_enable_value = 0;
9382
- $bus$jscomp$25_io$jscomp$4$$.register_write(462, this, void 0, this.port1CE_write);
9383
- $bus$jscomp$25_io$jscomp$4$$.register_write(463, this, void 0, this.port1CF_write);
9384
- $bus$jscomp$25_io$jscomp$4$$.register_read(463, this, void 0, this.port1CF_read);
9432
+ $bus$jscomp$24_io$jscomp$4$$.register_write(462, this, void 0, this.port1CE_write);
9433
+ $bus$jscomp$24_io$jscomp$4$$.register_write(463, this, void 0, this.port1CF_write);
9434
+ $bus$jscomp$24_io$jscomp$4$$.register_read(463, this, void 0, this.port1CF_read);
9385
9435
  $screen$jscomp$3_vga_offset$$ = $cpu$jscomp$26$$.svga_allocate_memory(this.vga_memory_size) >>> 0;
9386
9436
  this.svga_memory = $view$$module$src$lib$$(Uint8Array, $cpu$jscomp$26$$.wasm_memory, $screen$jscomp$3_vga_offset$$, this.vga_memory_size);
9387
9437
  this.diff_addr_min = this.vga_memory_size;
@@ -9395,142 +9445,142 @@ function $VGAScreen$$module$src$vga$$($cpu$jscomp$26$$, $bus$jscomp$25_io$jscomp
9395
9445
  this.plane2 = new Uint8Array(this.vga_memory.buffer, 131072, 65536);
9396
9446
  this.plane3 = new Uint8Array(this.vga_memory.buffer, 196608, 65536);
9397
9447
  this.pixel_buffer = new Uint8Array(524288);
9398
- $bus$jscomp$25_io$jscomp$4$$.mmap_register(655360, 131072, $addr$jscomp$40$$ => this.vga_memory_read($addr$jscomp$40$$), ($addr$jscomp$41$$, $value$jscomp$176$$) => this.vga_memory_write($addr$jscomp$41$$, $value$jscomp$176$$), );
9448
+ $bus$jscomp$24_io$jscomp$4$$.mmap_register(655360, 131072, $addr$jscomp$40$$ => this.vga_memory_read($addr$jscomp$40$$), ($addr$jscomp$41$$, $value$jscomp$176$$) => this.vga_memory_write($addr$jscomp$41$$, $value$jscomp$176$$), );
9399
9449
  $cpu$jscomp$26$$.devices.pci.register_device(this);
9400
9450
  }
9401
9451
  $VGAScreen$$module$src$vga$$.prototype.get_state = function() {
9402
- var $state$jscomp$52$$ = [];
9403
- $state$jscomp$52$$[0] = this.vga_memory_size;
9404
- $state$jscomp$52$$[1] = this.cursor_address;
9405
- $state$jscomp$52$$[2] = this.cursor_scanline_start;
9406
- $state$jscomp$52$$[3] = this.cursor_scanline_end;
9407
- $state$jscomp$52$$[4] = this.max_cols;
9408
- $state$jscomp$52$$[5] = this.max_rows;
9409
- $state$jscomp$52$$[6] = this.vga_memory;
9410
- $state$jscomp$52$$[7] = this.dac_state;
9411
- $state$jscomp$52$$[8] = this.start_address;
9412
- $state$jscomp$52$$[9] = this.graphical_mode;
9413
- $state$jscomp$52$$[10] = this.vga256_palette;
9414
- $state$jscomp$52$$[11] = this.latch_dword;
9415
- $state$jscomp$52$$[12] = this.color_compare;
9416
- $state$jscomp$52$$[13] = this.color_dont_care;
9417
- $state$jscomp$52$$[14] = this.miscellaneous_graphics_register;
9418
- $state$jscomp$52$$[15] = this.svga_width;
9419
- $state$jscomp$52$$[16] = this.svga_height;
9420
- $state$jscomp$52$$[17] = this.crtc_mode;
9421
- $state$jscomp$52$$[18] = this.svga_enabled;
9422
- $state$jscomp$52$$[19] = this.svga_bpp;
9423
- $state$jscomp$52$$[20] = this.svga_bank_offset;
9424
- $state$jscomp$52$$[21] = this.svga_offset;
9425
- $state$jscomp$52$$[22] = this.index_crtc;
9426
- $state$jscomp$52$$[23] = this.dac_color_index_write;
9427
- $state$jscomp$52$$[24] = this.dac_color_index_read;
9428
- $state$jscomp$52$$[25] = this.dac_map;
9429
- $state$jscomp$52$$[26] = this.sequencer_index;
9430
- $state$jscomp$52$$[27] = this.plane_write_bm;
9431
- $state$jscomp$52$$[28] = this.sequencer_memory_mode;
9432
- $state$jscomp$52$$[29] = this.graphics_index;
9433
- $state$jscomp$52$$[30] = this.plane_read;
9434
- $state$jscomp$52$$[31] = this.planar_mode;
9435
- $state$jscomp$52$$[32] = this.planar_rotate_reg;
9436
- $state$jscomp$52$$[33] = this.planar_bitmap;
9437
- $state$jscomp$52$$[34] = this.max_scan_line;
9438
- $state$jscomp$52$$[35] = this.miscellaneous_output_register;
9439
- $state$jscomp$52$$[36] = this.port_3DA_value;
9440
- $state$jscomp$52$$[37] = this.dispi_index;
9441
- $state$jscomp$52$$[38] = this.dispi_enable_value;
9442
- $state$jscomp$52$$[39] = this.svga_memory;
9443
- $state$jscomp$52$$[41] = this.attribute_controller_index;
9444
- $state$jscomp$52$$[42] = this.offset_register;
9445
- $state$jscomp$52$$[43] = this.planar_setreset;
9446
- $state$jscomp$52$$[44] = this.planar_setreset_enable;
9447
- $state$jscomp$52$$[45] = this.start_address_latched;
9448
- $state$jscomp$52$$[46] = this.crtc;
9449
- $state$jscomp$52$$[47] = this.horizontal_display_enable_end;
9450
- $state$jscomp$52$$[48] = this.horizontal_blank_start;
9451
- $state$jscomp$52$$[49] = this.vertical_display_enable_end;
9452
- $state$jscomp$52$$[50] = this.vertical_blank_start;
9453
- $state$jscomp$52$$[51] = this.underline_location_register;
9454
- $state$jscomp$52$$[52] = this.preset_row_scan;
9455
- $state$jscomp$52$$[53] = this.offset_register;
9456
- $state$jscomp$52$$[54] = this.palette_source;
9457
- $state$jscomp$52$$[55] = this.attribute_mode;
9458
- $state$jscomp$52$$[56] = this.color_plane_enable;
9459
- $state$jscomp$52$$[57] = this.horizontal_panning;
9460
- $state$jscomp$52$$[58] = this.color_select;
9461
- $state$jscomp$52$$[59] = this.clocking_mode;
9462
- $state$jscomp$52$$[60] = this.line_compare;
9463
- $state$jscomp$52$$[61] = this.pixel_buffer;
9464
- $state$jscomp$52$$[62] = this.dac_mask;
9465
- $state$jscomp$52$$[63] = this.character_map_select;
9466
- $state$jscomp$52$$[64] = this.font_page_ab_enabled;
9467
- return $state$jscomp$52$$;
9452
+ var $state$jscomp$54$$ = [];
9453
+ $state$jscomp$54$$[0] = this.vga_memory_size;
9454
+ $state$jscomp$54$$[1] = this.cursor_address;
9455
+ $state$jscomp$54$$[2] = this.cursor_scanline_start;
9456
+ $state$jscomp$54$$[3] = this.cursor_scanline_end;
9457
+ $state$jscomp$54$$[4] = this.max_cols;
9458
+ $state$jscomp$54$$[5] = this.max_rows;
9459
+ $state$jscomp$54$$[6] = this.vga_memory;
9460
+ $state$jscomp$54$$[7] = this.dac_state;
9461
+ $state$jscomp$54$$[8] = this.start_address;
9462
+ $state$jscomp$54$$[9] = this.graphical_mode;
9463
+ $state$jscomp$54$$[10] = this.vga256_palette;
9464
+ $state$jscomp$54$$[11] = this.latch_dword;
9465
+ $state$jscomp$54$$[12] = this.color_compare;
9466
+ $state$jscomp$54$$[13] = this.color_dont_care;
9467
+ $state$jscomp$54$$[14] = this.miscellaneous_graphics_register;
9468
+ $state$jscomp$54$$[15] = this.svga_width;
9469
+ $state$jscomp$54$$[16] = this.svga_height;
9470
+ $state$jscomp$54$$[17] = this.crtc_mode;
9471
+ $state$jscomp$54$$[18] = this.svga_enabled;
9472
+ $state$jscomp$54$$[19] = this.svga_bpp;
9473
+ $state$jscomp$54$$[20] = this.svga_bank_offset;
9474
+ $state$jscomp$54$$[21] = this.svga_offset;
9475
+ $state$jscomp$54$$[22] = this.index_crtc;
9476
+ $state$jscomp$54$$[23] = this.dac_color_index_write;
9477
+ $state$jscomp$54$$[24] = this.dac_color_index_read;
9478
+ $state$jscomp$54$$[25] = this.dac_map;
9479
+ $state$jscomp$54$$[26] = this.sequencer_index;
9480
+ $state$jscomp$54$$[27] = this.plane_write_bm;
9481
+ $state$jscomp$54$$[28] = this.sequencer_memory_mode;
9482
+ $state$jscomp$54$$[29] = this.graphics_index;
9483
+ $state$jscomp$54$$[30] = this.plane_read;
9484
+ $state$jscomp$54$$[31] = this.planar_mode;
9485
+ $state$jscomp$54$$[32] = this.planar_rotate_reg;
9486
+ $state$jscomp$54$$[33] = this.planar_bitmap;
9487
+ $state$jscomp$54$$[34] = this.max_scan_line;
9488
+ $state$jscomp$54$$[35] = this.miscellaneous_output_register;
9489
+ $state$jscomp$54$$[36] = this.port_3DA_value;
9490
+ $state$jscomp$54$$[37] = this.dispi_index;
9491
+ $state$jscomp$54$$[38] = this.dispi_enable_value;
9492
+ $state$jscomp$54$$[39] = this.svga_memory;
9493
+ $state$jscomp$54$$[41] = this.attribute_controller_index;
9494
+ $state$jscomp$54$$[42] = this.offset_register;
9495
+ $state$jscomp$54$$[43] = this.planar_setreset;
9496
+ $state$jscomp$54$$[44] = this.planar_setreset_enable;
9497
+ $state$jscomp$54$$[45] = this.start_address_latched;
9498
+ $state$jscomp$54$$[46] = this.crtc;
9499
+ $state$jscomp$54$$[47] = this.horizontal_display_enable_end;
9500
+ $state$jscomp$54$$[48] = this.horizontal_blank_start;
9501
+ $state$jscomp$54$$[49] = this.vertical_display_enable_end;
9502
+ $state$jscomp$54$$[50] = this.vertical_blank_start;
9503
+ $state$jscomp$54$$[51] = this.underline_location_register;
9504
+ $state$jscomp$54$$[52] = this.preset_row_scan;
9505
+ $state$jscomp$54$$[53] = this.offset_register;
9506
+ $state$jscomp$54$$[54] = this.palette_source;
9507
+ $state$jscomp$54$$[55] = this.attribute_mode;
9508
+ $state$jscomp$54$$[56] = this.color_plane_enable;
9509
+ $state$jscomp$54$$[57] = this.horizontal_panning;
9510
+ $state$jscomp$54$$[58] = this.color_select;
9511
+ $state$jscomp$54$$[59] = this.clocking_mode;
9512
+ $state$jscomp$54$$[60] = this.line_compare;
9513
+ $state$jscomp$54$$[61] = this.pixel_buffer;
9514
+ $state$jscomp$54$$[62] = this.dac_mask;
9515
+ $state$jscomp$54$$[63] = this.character_map_select;
9516
+ $state$jscomp$54$$[64] = this.font_page_ab_enabled;
9517
+ return $state$jscomp$54$$;
9468
9518
  };
9469
- $VGAScreen$$module$src$vga$$.prototype.set_state = function($state$jscomp$53$$) {
9470
- this.vga_memory_size = $state$jscomp$53$$[0];
9471
- this.cursor_address = $state$jscomp$53$$[1];
9472
- this.cursor_scanline_start = $state$jscomp$53$$[2];
9473
- this.cursor_scanline_end = $state$jscomp$53$$[3];
9474
- this.max_cols = $state$jscomp$53$$[4];
9475
- this.max_rows = $state$jscomp$53$$[5];
9476
- $state$jscomp$53$$[6] && this.vga_memory.set($state$jscomp$53$$[6]);
9477
- this.dac_state = $state$jscomp$53$$[7];
9478
- this.start_address = $state$jscomp$53$$[8];
9479
- this.graphical_mode = $state$jscomp$53$$[9];
9480
- this.vga256_palette = $state$jscomp$53$$[10];
9481
- this.latch_dword = $state$jscomp$53$$[11];
9482
- this.color_compare = $state$jscomp$53$$[12];
9483
- this.color_dont_care = $state$jscomp$53$$[13];
9484
- this.miscellaneous_graphics_register = $state$jscomp$53$$[14];
9485
- this.svga_width = $state$jscomp$53$$[15];
9486
- this.svga_height = $state$jscomp$53$$[16];
9487
- this.crtc_mode = $state$jscomp$53$$[17];
9488
- this.svga_enabled = $state$jscomp$53$$[18];
9489
- this.svga_bpp = $state$jscomp$53$$[19];
9490
- this.svga_bank_offset = $state$jscomp$53$$[20];
9491
- this.svga_offset = $state$jscomp$53$$[21];
9492
- this.index_crtc = $state$jscomp$53$$[22];
9493
- this.dac_color_index_write = $state$jscomp$53$$[23];
9494
- this.dac_color_index_read = $state$jscomp$53$$[24];
9495
- this.dac_map = $state$jscomp$53$$[25];
9496
- this.sequencer_index = $state$jscomp$53$$[26];
9497
- this.plane_write_bm = $state$jscomp$53$$[27];
9498
- this.sequencer_memory_mode = $state$jscomp$53$$[28];
9499
- this.graphics_index = $state$jscomp$53$$[29];
9500
- this.plane_read = $state$jscomp$53$$[30];
9501
- this.planar_mode = $state$jscomp$53$$[31];
9502
- this.planar_rotate_reg = $state$jscomp$53$$[32];
9503
- this.planar_bitmap = $state$jscomp$53$$[33];
9504
- this.max_scan_line = $state$jscomp$53$$[34];
9505
- this.miscellaneous_output_register = $state$jscomp$53$$[35];
9506
- this.port_3DA_value = $state$jscomp$53$$[36];
9507
- this.dispi_index = $state$jscomp$53$$[37];
9508
- this.dispi_enable_value = $state$jscomp$53$$[38];
9509
- this.svga_memory.set($state$jscomp$53$$[39]);
9510
- this.attribute_controller_index = $state$jscomp$53$$[41];
9511
- this.offset_register = $state$jscomp$53$$[42];
9512
- this.planar_setreset = $state$jscomp$53$$[43];
9513
- this.planar_setreset_enable = $state$jscomp$53$$[44];
9514
- this.start_address_latched = $state$jscomp$53$$[45];
9515
- this.crtc.set($state$jscomp$53$$[46]);
9516
- this.horizontal_display_enable_end = $state$jscomp$53$$[47];
9517
- this.horizontal_blank_start = $state$jscomp$53$$[48];
9518
- this.vertical_display_enable_end = $state$jscomp$53$$[49];
9519
- this.vertical_blank_start = $state$jscomp$53$$[50];
9520
- this.underline_location_register = $state$jscomp$53$$[51];
9521
- this.preset_row_scan = $state$jscomp$53$$[52];
9522
- this.offset_register = $state$jscomp$53$$[53];
9523
- this.palette_source = $state$jscomp$53$$[54];
9524
- this.attribute_mode = $state$jscomp$53$$[55];
9525
- this.color_plane_enable = $state$jscomp$53$$[56];
9526
- this.horizontal_panning = $state$jscomp$53$$[57];
9527
- this.color_select = $state$jscomp$53$$[58];
9528
- this.clocking_mode = $state$jscomp$53$$[59];
9529
- this.line_compare = $state$jscomp$53$$[60];
9530
- $state$jscomp$53$$[61] && this.pixel_buffer.set($state$jscomp$53$$[61]);
9531
- this.dac_mask = void 0 === $state$jscomp$53$$[62] ? 255 : $state$jscomp$53$$[62];
9532
- this.character_map_select = void 0 === $state$jscomp$53$$[63] ? 0 : $state$jscomp$53$$[63];
9533
- this.font_page_ab_enabled = void 0 === $state$jscomp$53$$[64] ? 0 : $state$jscomp$53$$[64];
9519
+ $VGAScreen$$module$src$vga$$.prototype.set_state = function($state$jscomp$55$$) {
9520
+ this.vga_memory_size = $state$jscomp$55$$[0];
9521
+ this.cursor_address = $state$jscomp$55$$[1];
9522
+ this.cursor_scanline_start = $state$jscomp$55$$[2];
9523
+ this.cursor_scanline_end = $state$jscomp$55$$[3];
9524
+ this.max_cols = $state$jscomp$55$$[4];
9525
+ this.max_rows = $state$jscomp$55$$[5];
9526
+ $state$jscomp$55$$[6] && this.vga_memory.set($state$jscomp$55$$[6]);
9527
+ this.dac_state = $state$jscomp$55$$[7];
9528
+ this.start_address = $state$jscomp$55$$[8];
9529
+ this.graphical_mode = $state$jscomp$55$$[9];
9530
+ this.vga256_palette = $state$jscomp$55$$[10];
9531
+ this.latch_dword = $state$jscomp$55$$[11];
9532
+ this.color_compare = $state$jscomp$55$$[12];
9533
+ this.color_dont_care = $state$jscomp$55$$[13];
9534
+ this.miscellaneous_graphics_register = $state$jscomp$55$$[14];
9535
+ this.svga_width = $state$jscomp$55$$[15];
9536
+ this.svga_height = $state$jscomp$55$$[16];
9537
+ this.crtc_mode = $state$jscomp$55$$[17];
9538
+ this.svga_enabled = $state$jscomp$55$$[18];
9539
+ this.svga_bpp = $state$jscomp$55$$[19];
9540
+ this.svga_bank_offset = $state$jscomp$55$$[20];
9541
+ this.svga_offset = $state$jscomp$55$$[21];
9542
+ this.index_crtc = $state$jscomp$55$$[22];
9543
+ this.dac_color_index_write = $state$jscomp$55$$[23];
9544
+ this.dac_color_index_read = $state$jscomp$55$$[24];
9545
+ this.dac_map = $state$jscomp$55$$[25];
9546
+ this.sequencer_index = $state$jscomp$55$$[26];
9547
+ this.plane_write_bm = $state$jscomp$55$$[27];
9548
+ this.sequencer_memory_mode = $state$jscomp$55$$[28];
9549
+ this.graphics_index = $state$jscomp$55$$[29];
9550
+ this.plane_read = $state$jscomp$55$$[30];
9551
+ this.planar_mode = $state$jscomp$55$$[31];
9552
+ this.planar_rotate_reg = $state$jscomp$55$$[32];
9553
+ this.planar_bitmap = $state$jscomp$55$$[33];
9554
+ this.max_scan_line = $state$jscomp$55$$[34];
9555
+ this.miscellaneous_output_register = $state$jscomp$55$$[35];
9556
+ this.port_3DA_value = $state$jscomp$55$$[36];
9557
+ this.dispi_index = $state$jscomp$55$$[37];
9558
+ this.dispi_enable_value = $state$jscomp$55$$[38];
9559
+ this.svga_memory.set($state$jscomp$55$$[39]);
9560
+ this.attribute_controller_index = $state$jscomp$55$$[41];
9561
+ this.offset_register = $state$jscomp$55$$[42];
9562
+ this.planar_setreset = $state$jscomp$55$$[43];
9563
+ this.planar_setreset_enable = $state$jscomp$55$$[44];
9564
+ this.start_address_latched = $state$jscomp$55$$[45];
9565
+ this.crtc.set($state$jscomp$55$$[46]);
9566
+ this.horizontal_display_enable_end = $state$jscomp$55$$[47];
9567
+ this.horizontal_blank_start = $state$jscomp$55$$[48];
9568
+ this.vertical_display_enable_end = $state$jscomp$55$$[49];
9569
+ this.vertical_blank_start = $state$jscomp$55$$[50];
9570
+ this.underline_location_register = $state$jscomp$55$$[51];
9571
+ this.preset_row_scan = $state$jscomp$55$$[52];
9572
+ this.offset_register = $state$jscomp$55$$[53];
9573
+ this.palette_source = $state$jscomp$55$$[54];
9574
+ this.attribute_mode = $state$jscomp$55$$[55];
9575
+ this.color_plane_enable = $state$jscomp$55$$[56];
9576
+ this.horizontal_panning = $state$jscomp$55$$[57];
9577
+ this.color_select = $state$jscomp$55$$[58];
9578
+ this.clocking_mode = $state$jscomp$55$$[59];
9579
+ this.line_compare = $state$jscomp$55$$[60];
9580
+ $state$jscomp$55$$[61] && this.pixel_buffer.set($state$jscomp$55$$[61]);
9581
+ this.dac_mask = void 0 === $state$jscomp$55$$[62] ? 255 : $state$jscomp$55$$[62];
9582
+ this.character_map_select = void 0 === $state$jscomp$55$$[63] ? 0 : $state$jscomp$55$$[63];
9583
+ this.font_page_ab_enabled = void 0 === $state$jscomp$55$$[64] ? 0 : $state$jscomp$55$$[64];
9534
9584
  this.screen.set_mode(this.graphical_mode);
9535
9585
  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());
9536
9586
  this.complete_redraw();
@@ -10335,8 +10385,8 @@ $VGAScreen$$module$src$vga$$.prototype.vga_replot = function() {
10335
10385
  $byte1_col$jscomp$9$$ <<= 1;
10336
10386
  $byte2$$ <<= 2;
10337
10387
  $byte3$$ <<= 3;
10338
- for (var $i$jscomp$92$$ = 7; 0 <= $i$jscomp$92$$; $i$jscomp$92$$--) {
10339
- $addr$jscomp$48_shift_loads$$[7 - $i$jscomp$92$$] = $byte0_j$jscomp$9_row$jscomp$11$$ >> $i$jscomp$92$$ & 1 | $byte1_col$jscomp$9$$ >> $i$jscomp$92$$ & 2 | $byte2$$ >> $i$jscomp$92$$ & 4 | $byte3$$ >> $i$jscomp$92$$ & 8;
10388
+ for (var $i$jscomp$90$$ = 7; 0 <= $i$jscomp$90$$; $i$jscomp$90$$--) {
10389
+ $addr$jscomp$48_shift_loads$$[7 - $i$jscomp$90$$] = $byte0_j$jscomp$9_row$jscomp$11$$ >> $i$jscomp$90$$ & 1 | $byte1_col$jscomp$9$$ >> $i$jscomp$90$$ & 2 | $byte2$$ >> $i$jscomp$90$$ & 4 | $byte3$$ >> $i$jscomp$90$$ & 8;
10340
10390
  }
10341
10391
  break;
10342
10392
  case 32:
@@ -10355,53 +10405,53 @@ $VGAScreen$$module$src$vga$$.prototype.vga_replot = function() {
10355
10405
  $byte3$$ >> 0 & 15;
10356
10406
  }
10357
10407
  if ($pel_width$$) {
10358
- for ($byte0_j$jscomp$9_row$jscomp$11$$ = $i$jscomp$92$$ = 0; 4 > $i$jscomp$92$$; $i$jscomp$92$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++, $byte0_j$jscomp$9_row$jscomp$11$$ += 2) {
10408
+ for ($byte0_j$jscomp$9_row$jscomp$11$$ = $i$jscomp$90$$ = 0; 4 > $i$jscomp$90$$; $i$jscomp$90$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++, $byte0_j$jscomp$9_row$jscomp$11$$ += 2) {
10359
10409
  this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$48_shift_loads$$[$byte0_j$jscomp$9_row$jscomp$11$$] << 4 | $addr$jscomp$48_shift_loads$$[$byte0_j$jscomp$9_row$jscomp$11$$ + 1];
10360
10410
  }
10361
10411
  } else {
10362
- for ($i$jscomp$92$$ = 0; 8 > $i$jscomp$92$$; $i$jscomp$92$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++) {
10363
- this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$48_shift_loads$$[$i$jscomp$92$$];
10412
+ for ($i$jscomp$90$$ = 0; 8 > $i$jscomp$90$$; $i$jscomp$90$$++, $pixel_addr$jscomp$2_start$jscomp$40$$++) {
10413
+ this.pixel_buffer[$pixel_addr$jscomp$2_start$jscomp$40$$] = $addr$jscomp$48_shift_loads$$[$i$jscomp$90$$];
10364
10414
  }
10365
10415
  }
10366
10416
  }
10367
10417
  };
10368
10418
  $VGAScreen$$module$src$vga$$.prototype.vga_redraw = function() {
10369
10419
  var $pixel_addr$jscomp$3_start$jscomp$41$$ = this.diff_addr_min, $end$jscomp$22$$ = Math.min(this.diff_addr_max, 524287);
10370
- const $buffer$jscomp$49$$ = new Int32Array(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, this.virtual_width * this.virtual_height);
10420
+ const $buffer$jscomp$51$$ = new Int32Array(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, this.virtual_width * this.virtual_height);
10371
10421
  var $mask$jscomp$10$$ = 255, $colorset$$ = 0;
10372
10422
  this.attribute_mode & 128 && ($mask$jscomp$10$$ &= 207, $colorset$$ |= this.color_select << 4 & 48);
10373
10423
  if (this.attribute_mode & 64) {
10374
10424
  for (; $pixel_addr$jscomp$3_start$jscomp$41$$ <= $end$jscomp$22$$; $pixel_addr$jscomp$3_start$jscomp$41$$++) {
10375
10425
  var $color$jscomp$6_color256$$ = this.pixel_buffer[$pixel_addr$jscomp$3_start$jscomp$41$$] & $mask$jscomp$10$$ | $colorset$$;
10376
10426
  $color$jscomp$6_color256$$ = this.vga256_palette[$color$jscomp$6_color256$$];
10377
- $buffer$jscomp$49$$[$pixel_addr$jscomp$3_start$jscomp$41$$] = $color$jscomp$6_color256$$ & 65280 | $color$jscomp$6_color256$$ << 16 | $color$jscomp$6_color256$$ >> 16 | 4278190080;
10427
+ $buffer$jscomp$51$$[$pixel_addr$jscomp$3_start$jscomp$41$$] = $color$jscomp$6_color256$$ & 65280 | $color$jscomp$6_color256$$ << 16 | $color$jscomp$6_color256$$ >> 16 | 4278190080;
10378
10428
  }
10379
10429
  } else {
10380
10430
  for ($mask$jscomp$10$$ &= 63, $colorset$$ |= this.color_select << 4 & 192; $pixel_addr$jscomp$3_start$jscomp$41$$ <= $end$jscomp$22$$; $pixel_addr$jscomp$3_start$jscomp$41$$++) {
10381
- $color$jscomp$6_color256$$ = this.dac_map[this.pixel_buffer[$pixel_addr$jscomp$3_start$jscomp$41$$] & this.color_plane_enable] & $mask$jscomp$10$$ | $colorset$$, $color$jscomp$6_color256$$ = this.vga256_palette[$color$jscomp$6_color256$$], $buffer$jscomp$49$$[$pixel_addr$jscomp$3_start$jscomp$41$$] = $color$jscomp$6_color256$$ & 65280 | $color$jscomp$6_color256$$ << 16 | $color$jscomp$6_color256$$ >> 16 | 4278190080;
10431
+ $color$jscomp$6_color256$$ = this.dac_map[this.pixel_buffer[$pixel_addr$jscomp$3_start$jscomp$41$$] & this.color_plane_enable] & $mask$jscomp$10$$ | $colorset$$, $color$jscomp$6_color256$$ = this.vga256_palette[$color$jscomp$6_color256$$], $buffer$jscomp$51$$[$pixel_addr$jscomp$3_start$jscomp$41$$] = $color$jscomp$6_color256$$ & 65280 | $color$jscomp$6_color256$$ << 16 | $color$jscomp$6_color256$$ >> 16 | 4278190080;
10382
10432
  }
10383
10433
  }
10384
10434
  };
10385
10435
  $VGAScreen$$module$src$vga$$.prototype.screen_fill_buffer = function() {
10386
10436
  if (this.graphical_mode) {
10387
10437
  if (0 === this.image_data.data.byteLength) {
10388
- var $buffer$jscomp$50_min_y$$ = new Uint8ClampedArray(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, 4 * this.virtual_width * this.virtual_height);
10389
- this.image_data = new ImageData($buffer$jscomp$50_min_y$$, this.virtual_width, this.virtual_height);
10438
+ var $buffer$jscomp$52_min_y$$ = new Uint8ClampedArray(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, 4 * this.virtual_width * this.virtual_height);
10439
+ this.image_data = new ImageData($buffer$jscomp$52_min_y$$, this.virtual_width, this.virtual_height);
10390
10440
  this.update_layers();
10391
10441
  }
10392
10442
  if (this.svga_enabled) {
10393
- $buffer$jscomp$50_min_y$$ = 0;
10443
+ $buffer$jscomp$52_min_y$$ = 0;
10394
10444
  let $max_y$$ = this.svga_height;
10395
10445
  if (8 === this.svga_bpp) {
10396
- const $buffer$jscomp$51$$ = new Int32Array(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, this.screen_width * this.screen_height), $svga_memory$$ = new Uint8Array(this.cpu.wasm_memory.buffer, this.svga_memory.byteOffset, this.vga_memory_size);
10397
- for (var $bytes_per_pixel_i$jscomp$93$$ = 0; $bytes_per_pixel_i$jscomp$93$$ < $buffer$jscomp$51$$.length; $bytes_per_pixel_i$jscomp$93$$++) {
10398
- var $color$jscomp$7$$ = this.vga256_palette[$svga_memory$$[$bytes_per_pixel_i$jscomp$93$$]];
10399
- $buffer$jscomp$51$$[$bytes_per_pixel_i$jscomp$93$$] = $color$jscomp$7$$ & 65280 | $color$jscomp$7$$ << 16 | $color$jscomp$7$$ >> 16 | 4278190080;
10446
+ const $buffer$jscomp$53$$ = new Int32Array(this.cpu.wasm_memory.buffer, this.dest_buffet_offset, this.screen_width * this.screen_height), $svga_memory$$ = new Uint8Array(this.cpu.wasm_memory.buffer, this.svga_memory.byteOffset, this.vga_memory_size);
10447
+ for (var $bytes_per_pixel_i$jscomp$91$$ = 0; $bytes_per_pixel_i$jscomp$91$$ < $buffer$jscomp$53$$.length; $bytes_per_pixel_i$jscomp$91$$++) {
10448
+ var $color$jscomp$7$$ = this.vga256_palette[$svga_memory$$[$bytes_per_pixel_i$jscomp$91$$]];
10449
+ $buffer$jscomp$53$$[$bytes_per_pixel_i$jscomp$91$$] = $color$jscomp$7$$ & 65280 | $color$jscomp$7$$ << 16 | $color$jscomp$7$$ >> 16 | 4278190080;
10400
10450
  }
10401
10451
  } else {
10402
- this.cpu.svga_fill_pixel_buffer(this.svga_bpp, this.svga_offset), $bytes_per_pixel_i$jscomp$93$$ = 15 === this.svga_bpp ? 2 : this.svga_bpp / 8, $buffer$jscomp$50_min_y$$ = ((this.cpu.svga_dirty_bitmap_min_offset[0] / $bytes_per_pixel_i$jscomp$93$$ | 0) - this.svga_offset) / this.svga_width | 0, $max_y$$ = (((this.cpu.svga_dirty_bitmap_max_offset[0] / $bytes_per_pixel_i$jscomp$93$$ | 0) - this.svga_offset) / this.svga_width | 0) + 1;
10452
+ this.cpu.svga_fill_pixel_buffer(this.svga_bpp, this.svga_offset), $bytes_per_pixel_i$jscomp$91$$ = 15 === this.svga_bpp ? 2 : this.svga_bpp / 8, $buffer$jscomp$52_min_y$$ = ((this.cpu.svga_dirty_bitmap_min_offset[0] / $bytes_per_pixel_i$jscomp$91$$ | 0) - this.svga_offset) / this.svga_width | 0, $max_y$$ = (((this.cpu.svga_dirty_bitmap_max_offset[0] / $bytes_per_pixel_i$jscomp$91$$ | 0) - this.svga_offset) / this.svga_width | 0) + 1;
10403
10453
  }
10404
- $buffer$jscomp$50_min_y$$ < $max_y$$ && ($buffer$jscomp$50_min_y$$ = Math.max($buffer$jscomp$50_min_y$$, 0), $max_y$$ = Math.min($max_y$$, this.svga_height), this.screen.update_buffer([{image_data:this.image_data, screen_x:0, screen_y:$buffer$jscomp$50_min_y$$, buffer_x:0, buffer_y:$buffer$jscomp$50_min_y$$, buffer_width:this.svga_width, buffer_height:$max_y$$ - $buffer$jscomp$50_min_y$$, }]));
10454
+ $buffer$jscomp$52_min_y$$ < $max_y$$ && ($buffer$jscomp$52_min_y$$ = Math.max($buffer$jscomp$52_min_y$$, 0), $max_y$$ = Math.min($max_y$$, this.svga_height), this.screen.update_buffer([{image_data:this.image_data, screen_x:0, screen_y:$buffer$jscomp$52_min_y$$, buffer_x:0, buffer_y:$buffer$jscomp$52_min_y$$, buffer_width:this.svga_width, buffer_height:$max_y$$ - $buffer$jscomp$52_min_y$$, }]));
10405
10455
  } else {
10406
10456
  this.vga_replot(), this.vga_redraw(), this.screen.update_buffer(this.layers);
10407
10457
  }
@@ -10423,8 +10473,8 @@ $VGAScreen$$module$src$vga$$.prototype.set_font_page = function() {
10423
10473
  this.complete_redraw();
10424
10474
  };
10425
10475
  const $STAT_NAMES$$module$src$virtio_balloon$$ = "SWAP_IN SWAP_OUT MAJFLT MINFLT MEMFREE MEMTOT AVAIL CACHES HTLB_PGALLOC HTLB_PGFAIL".split(" ");
10426
- function $VirtioBalloon$$module$src$virtio_balloon$$($cpu$jscomp$27$$, $bus$jscomp$26$$) {
10427
- this.bus = $bus$jscomp$26$$;
10476
+ function $VirtioBalloon$$module$src$virtio_balloon$$($cpu$jscomp$27$$, $bus$jscomp$25$$) {
10477
+ this.bus = $bus$jscomp$25$$;
10428
10478
  this.zeroed = this.fp_cmd = this.actual = this.num_pages = 0;
10429
10479
  this.virtio = new $VirtIO$$module$src$virtio$$($cpu$jscomp$27$$, {name:"virtio-balloon", pci_id:88, device_id:4165, subsystem_device_id:5, common:{initial_port:55296, queues:[{size_supported:32, notify_offset:0}, {size_supported:32, notify_offset:0}, {size_supported:2, notify_offset:1}, {size_supported:64, notify_offset:2}, ], features:[1, 3, 32, ], on_driver_ok:() => {
10430
10480
  $dbg_log$$module$src$log$$("Balloon setup", 2048);
@@ -10432,10 +10482,10 @@ function $VirtioBalloon$$module$src$virtio_balloon$$($cpu$jscomp$27$$, $bus$jsco
10432
10482
  const $queue$jscomp$8$$ = this.virtio.queues[$queue_id$jscomp$12$$];
10433
10483
  for (; $queue$jscomp$8$$.has_request();) {
10434
10484
  var $bufchain$jscomp$13_n$jscomp$14$$ = $queue$jscomp$8$$.pop_request();
10435
- const $buffer$jscomp$52$$ = new Uint8Array($bufchain$jscomp$13_n$jscomp$14$$.length_readable);
10436
- $bufchain$jscomp$13_n$jscomp$14$$.get_next_blob($buffer$jscomp$52$$);
10485
+ const $buffer$jscomp$54$$ = new Uint8Array($bufchain$jscomp$13_n$jscomp$14$$.length_readable);
10486
+ $bufchain$jscomp$13_n$jscomp$14$$.get_next_blob($buffer$jscomp$54$$);
10437
10487
  this.virtio.queues[$queue_id$jscomp$12$$].push_reply($bufchain$jscomp$13_n$jscomp$14$$);
10438
- $bufchain$jscomp$13_n$jscomp$14$$ = $buffer$jscomp$52$$.byteLength / 4;
10488
+ $bufchain$jscomp$13_n$jscomp$14$$ = $buffer$jscomp$54$$.byteLength / 4;
10439
10489
  this.actual += 0 === $queue_id$jscomp$12$$ ? $bufchain$jscomp$13_n$jscomp$14$$ : -$bufchain$jscomp$13_n$jscomp$14$$;
10440
10490
  }
10441
10491
  this.virtio.queues[$queue_id$jscomp$12$$].flush_replies();
@@ -10443,29 +10493,29 @@ function $VirtioBalloon$$module$src$virtio_balloon$$($cpu$jscomp$27$$, $bus$jsco
10443
10493
  var $bufchain$jscomp$14_queue$jscomp$9$$ = this.virtio.queues[$queue_id$jscomp$13$$];
10444
10494
  if ($bufchain$jscomp$14_queue$jscomp$9$$.has_request()) {
10445
10495
  $bufchain$jscomp$14_queue$jscomp$9$$ = $bufchain$jscomp$14_queue$jscomp$9$$.pop_request();
10446
- const $buffer$jscomp$53$$ = new Uint8Array($bufchain$jscomp$14_queue$jscomp$9$$.length_readable);
10447
- $bufchain$jscomp$14_queue$jscomp$9$$.get_next_blob($buffer$jscomp$53$$);
10448
- let $result$jscomp$18$$ = {};
10449
- for (let $i$jscomp$94$$ = 0; $i$jscomp$94$$ < $bufchain$jscomp$14_queue$jscomp$9$$.length_readable; $i$jscomp$94$$ += 10) {
10450
- let [$cat$$, $value$jscomp$190$$] = $Unmarshall$$module$lib$marshall$$(["h", "d"], $buffer$jscomp$53$$, {offset:$i$jscomp$94$$});
10451
- $result$jscomp$18$$[$STAT_NAMES$$module$src$virtio_balloon$$[$cat$$]] = $value$jscomp$190$$;
10496
+ const $buffer$jscomp$55$$ = new Uint8Array($bufchain$jscomp$14_queue$jscomp$9$$.length_readable);
10497
+ $bufchain$jscomp$14_queue$jscomp$9$$.get_next_blob($buffer$jscomp$55$$);
10498
+ let $result$jscomp$21$$ = {};
10499
+ for (let $i$jscomp$92$$ = 0; $i$jscomp$92$$ < $bufchain$jscomp$14_queue$jscomp$9$$.length_readable; $i$jscomp$92$$ += 10) {
10500
+ let [$cat$$, $value$jscomp$190$$] = $Unmarshall$$module$lib$marshall$$(["h", "d"], $buffer$jscomp$55$$, {offset:$i$jscomp$92$$});
10501
+ $result$jscomp$21$$[$STAT_NAMES$$module$src$virtio_balloon$$[$cat$$]] = $value$jscomp$190$$;
10452
10502
  }
10453
10503
  this.virtio.queues[$queue_id$jscomp$13$$].push_reply($bufchain$jscomp$14_queue$jscomp$9$$);
10454
- this.stats_cb && this.stats_cb($result$jscomp$18$$);
10504
+ this.stats_cb && this.stats_cb($result$jscomp$21$$);
10455
10505
  }
10456
10506
  }, $queue_id$jscomp$14$$ => {
10457
10507
  const $queue$jscomp$10$$ = this.virtio.queues[$queue_id$jscomp$14$$];
10458
10508
  for (; $queue$jscomp$10$$.has_request();) {
10459
10509
  const $bufchain$jscomp$15$$ = $queue$jscomp$10$$.pop_request();
10460
10510
  if (0 < $bufchain$jscomp$15$$.length_readable) {
10461
- var $buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$ = new Uint8Array($bufchain$jscomp$15$$.length_readable);
10462
- $bufchain$jscomp$15$$.get_next_blob($buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$);
10463
- [$buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$] = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$, {offset:0});
10464
- 0 === $buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$ && (this.free_cb && this.free_cb(this.zeroed), 1 < this.fp_cmd && (this.fp_cmd = 1), this.virtio.notify_config_changes());
10511
+ var $buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$ = new Uint8Array($bufchain$jscomp$15$$.length_readable);
10512
+ $bufchain$jscomp$15$$.get_next_blob($buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$);
10513
+ [$buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$] = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$, {offset:0});
10514
+ 0 === $buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$ && (this.free_cb && this.free_cb(this.zeroed), 1 < this.fp_cmd && (this.fp_cmd = 1), this.virtio.notify_config_changes());
10465
10515
  }
10466
10516
  if (0 < $bufchain$jscomp$15$$.length_writable) {
10467
- for (new Uint8Array(0), $buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$ = 0; $buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$ < $bufchain$jscomp$15$$.write_buffers.length; ++$buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$) {
10468
- let $b$jscomp$3$$ = $bufchain$jscomp$15$$.write_buffers[$buffer$jscomp$54_cmd$jscomp$10_i$jscomp$95$$];
10517
+ for (new Uint8Array(0), $buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$ = 0; $buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$ < $bufchain$jscomp$15$$.write_buffers.length; ++$buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$) {
10518
+ let $b$jscomp$3$$ = $bufchain$jscomp$15$$.write_buffers[$buffer$jscomp$56_cmd$jscomp$11_i$jscomp$93$$];
10469
10519
  this.zeroed += $b$jscomp$3$$.len;
10470
10520
  this.virtio.cpu.zero_memory($b$jscomp$3$$.addr_low, $b$jscomp$3$$.len);
10471
10521
  }
@@ -10493,16 +10543,16 @@ $VirtioBalloon$$module$src$virtio_balloon$$.prototype.Cleanup = function($cb$$)
10493
10543
  this.virtio.notify_config_changes();
10494
10544
  };
10495
10545
  $VirtioBalloon$$module$src$virtio_balloon$$.prototype.get_state = function() {
10496
- const $state$jscomp$54$$ = [];
10497
- $state$jscomp$54$$[0] = this.virtio;
10498
- $state$jscomp$54$$[1] = this.num_pages;
10499
- $state$jscomp$54$$[2] = this.actual;
10500
- return $state$jscomp$54$$;
10546
+ const $state$jscomp$56$$ = [];
10547
+ $state$jscomp$56$$[0] = this.virtio;
10548
+ $state$jscomp$56$$[1] = this.num_pages;
10549
+ $state$jscomp$56$$[2] = this.actual;
10550
+ return $state$jscomp$56$$;
10501
10551
  };
10502
- $VirtioBalloon$$module$src$virtio_balloon$$.prototype.set_state = function($state$jscomp$55$$) {
10503
- this.virtio.set_state($state$jscomp$55$$[0]);
10504
- this.num_pages = $state$jscomp$55$$[1];
10505
- this.actual = $state$jscomp$55$$[2];
10552
+ $VirtioBalloon$$module$src$virtio_balloon$$.prototype.set_state = function($state$jscomp$57$$) {
10553
+ this.virtio.set_state($state$jscomp$57$$[0]);
10554
+ this.num_pages = $state$jscomp$57$$[1];
10555
+ this.actual = $state$jscomp$57$$[2];
10506
10556
  };
10507
10557
  $VirtioBalloon$$module$src$virtio_balloon$$.prototype.GetStats = function($data$jscomp$219_queue$jscomp$11$$) {
10508
10558
  this.stats_cb = $data$jscomp$219_queue$jscomp$11$$;
@@ -10516,9 +10566,9 @@ $VirtioBalloon$$module$src$virtio_balloon$$.prototype.Reset = function() {
10516
10566
  };
10517
10567
  function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$, $checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$, $cmdline_real_mode_kernel$$) {
10518
10568
  $dbg_log$$module$src$log$$("Trying to load kernel of size " + $bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$.byteLength);
10519
- var $bzimage8_i$jscomp$96_ramdisk_size$$ = new Uint8Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$);
10569
+ var $bzimage8_i$jscomp$94_ramdisk_size$$ = new Uint8Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$);
10520
10570
  const $bzimage16$$ = new Uint16Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$);
10521
- var $bzimage32_checksum$jscomp$inline_165$$ = new Uint32Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$), $prot_mode_kernel_start_ramdisk_address_setup_sects$$ = $bzimage8_i$jscomp$96_ramdisk_size$$[497] || 4, $checksum1_checksum2_protocol$jscomp$1$$ = $bzimage16$$[255];
10571
+ var $bzimage32_checksum$jscomp$inline_165$$ = new Uint32Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$), $prot_mode_kernel_start_ramdisk_address_setup_sects$$ = $bzimage8_i$jscomp$94_ramdisk_size$$[497] || 4, $checksum1_checksum2_protocol$jscomp$1$$ = $bzimage16$$[255];
10522
10572
  if (43605 !== $checksum1_checksum2_protocol$jscomp$1$$) {
10523
10573
  $dbg_log$$module$src$log$$("Bad checksum1: " + $h$$module$src$lib$$($checksum1_checksum2_protocol$jscomp$1$$));
10524
10574
  } else {
@@ -10527,9 +10577,9 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzi
10527
10577
  } else {
10528
10578
  $checksum1_checksum2_protocol$jscomp$1$$ = $bzimage16$$[259];
10529
10579
  $dbg_assert$$module$src$log$$(514 <= $checksum1_checksum2_protocol$jscomp$1$$);
10530
- var $flags$jscomp$15$$ = $bzimage8_i$jscomp$96_ramdisk_size$$[529];
10580
+ var $flags$jscomp$15$$ = $bzimage8_i$jscomp$94_ramdisk_size$$[529];
10531
10581
  $dbg_assert$$module$src$log$$($flags$jscomp$15$$ & 1);
10532
- var $flags2$$ = $bzimage16$$[283], $initrd_addr_max$$ = $bzimage32_checksum$jscomp$inline_165$$[139], $kernel_alignment$$ = $bzimage32_checksum$jscomp$inline_165$$[140], $relocatable_kernel$$ = $bzimage8_i$jscomp$96_ramdisk_size$$[564], $min_alignment$$ = $bzimage8_i$jscomp$96_ramdisk_size$$[565], $cmdline_size$$ = 518 <= $checksum1_checksum2_protocol$jscomp$1$$ ? $bzimage32_checksum$jscomp$inline_165$$[142] : 255, $payload_offset$$ = $bzimage32_checksum$jscomp$inline_165$$[146], $payload_length$$ =
10582
+ var $flags2$$ = $bzimage16$$[283], $initrd_addr_max$$ = $bzimage32_checksum$jscomp$inline_165$$[139], $kernel_alignment$$ = $bzimage32_checksum$jscomp$inline_165$$[140], $relocatable_kernel$$ = $bzimage8_i$jscomp$94_ramdisk_size$$[564], $min_alignment$$ = $bzimage8_i$jscomp$94_ramdisk_size$$[565], $cmdline_size$$ = 518 <= $checksum1_checksum2_protocol$jscomp$1$$ ? $bzimage32_checksum$jscomp$inline_165$$[142] : 255, $payload_offset$$ = $bzimage32_checksum$jscomp$inline_165$$[146], $payload_length$$ =
10533
10583
  $bzimage32_checksum$jscomp$inline_165$$[147], $pref_address$$ = $bzimage32_checksum$jscomp$inline_165$$[150], $pref_address_high$$ = $bzimage32_checksum$jscomp$inline_165$$[151], $init_size$$ = $bzimage32_checksum$jscomp$inline_165$$[152];
10534
10584
  $dbg_log$$module$src$log$$("kernel boot protocol version: " + $h$$module$src$lib$$($checksum1_checksum2_protocol$jscomp$1$$));
10535
10585
  $dbg_log$$module$src$log$$("flags=" + $h$$module$src$lib$$($flags$jscomp$15$$) + " xflags=" + $h$$module$src$lib$$($flags2$$));
@@ -10542,8 +10592,8 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzi
10542
10592
  $dbg_log$$module$src$log$$("payload offset=" + $h$$module$src$lib$$($payload_offset$$) + " size=" + $h$$module$src$lib$$($payload_length$$));
10543
10593
  $dbg_log$$module$src$log$$("pref_address=" + $h$$module$src$lib$$($pref_address_high$$) + ":" + $h$$module$src$lib$$($pref_address$$));
10544
10594
  $dbg_log$$module$src$log$$("init_size=" + $h$$module$src$lib$$($init_size$$));
10545
- $bzimage8_i$jscomp$96_ramdisk_size$$[528] = 255;
10546
- $bzimage8_i$jscomp$96_ramdisk_size$$[529] = $flags$jscomp$15$$ & -97 | 128;
10595
+ $bzimage8_i$jscomp$94_ramdisk_size$$[528] = 255;
10596
+ $bzimage8_i$jscomp$94_ramdisk_size$$[529] = $flags$jscomp$15$$ & -97 | 128;
10547
10597
  $bzimage16$$[274] = 56832;
10548
10598
  $bzimage16$$[253] = 65535;
10549
10599
  $dbg_log$$module$src$log$$("heap_end_ptr=" + $h$$module$src$lib$$(56832));
@@ -10551,18 +10601,18 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzi
10551
10601
  $dbg_assert$$module$src$log$$($cmdline_real_mode_kernel$$.length < $cmdline_size$$);
10552
10602
  $dbg_log$$module$src$log$$("cmd_line_ptr=" + $h$$module$src$lib$$(581632));
10553
10603
  $bzimage32_checksum$jscomp$inline_165$$[138] = 581632;
10554
- for ($bzimage8_i$jscomp$96_ramdisk_size$$ = 0; $bzimage8_i$jscomp$96_ramdisk_size$$ < $cmdline_real_mode_kernel$$.length; $bzimage8_i$jscomp$96_ramdisk_size$$++) {
10555
- $data8$jscomp$inline_161_mem8$$[581632 + $bzimage8_i$jscomp$96_ramdisk_size$$] = $cmdline_real_mode_kernel$$.charCodeAt($bzimage8_i$jscomp$96_ramdisk_size$$);
10604
+ for ($bzimage8_i$jscomp$94_ramdisk_size$$ = 0; $bzimage8_i$jscomp$94_ramdisk_size$$ < $cmdline_real_mode_kernel$$.length; $bzimage8_i$jscomp$94_ramdisk_size$$++) {
10605
+ $data8$jscomp$inline_161_mem8$$[581632 + $bzimage8_i$jscomp$94_ramdisk_size$$] = $cmdline_real_mode_kernel$$.charCodeAt($bzimage8_i$jscomp$94_ramdisk_size$$);
10556
10606
  }
10557
10607
  $prot_mode_kernel_start_ramdisk_address_setup_sects$$ = 512 * ($prot_mode_kernel_start_ramdisk_address_setup_sects$$ + 1);
10558
10608
  $dbg_log$$module$src$log$$("prot_mode_kernel_start=" + $h$$module$src$lib$$($prot_mode_kernel_start_ramdisk_address_setup_sects$$));
10559
10609
  $cmdline_real_mode_kernel$$ = new Uint8Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$, 0, $prot_mode_kernel_start_ramdisk_address_setup_sects$$);
10560
10610
  $bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$ = new Uint8Array($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$, $prot_mode_kernel_start_ramdisk_address_setup_sects$$);
10561
- $bzimage8_i$jscomp$96_ramdisk_size$$ = $prot_mode_kernel_start_ramdisk_address_setup_sects$$ = 0;
10562
- $checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$ && ($prot_mode_kernel_start_ramdisk_address_setup_sects$$ = 67108864, $bzimage8_i$jscomp$96_ramdisk_size$$ = $checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$.byteLength, $dbg_assert$$module$src$log$$(1048576 + $bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$.length < $prot_mode_kernel_start_ramdisk_address_setup_sects$$), $data8$jscomp$inline_161_mem8$$.set(new Uint8Array($checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$),
10611
+ $bzimage8_i$jscomp$94_ramdisk_size$$ = $prot_mode_kernel_start_ramdisk_address_setup_sects$$ = 0;
10612
+ $checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$ && ($prot_mode_kernel_start_ramdisk_address_setup_sects$$ = 67108864, $bzimage8_i$jscomp$94_ramdisk_size$$ = $checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$.byteLength, $dbg_assert$$module$src$log$$(1048576 + $bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$.length < $prot_mode_kernel_start_ramdisk_address_setup_sects$$), $data8$jscomp$inline_161_mem8$$.set(new Uint8Array($checksum_index$jscomp$inline_164_i$jscomp$inline_163_initrd$jscomp$1$$),
10563
10613
  $prot_mode_kernel_start_ramdisk_address_setup_sects$$));
10564
10614
  $bzimage32_checksum$jscomp$inline_165$$[134] = $prot_mode_kernel_start_ramdisk_address_setup_sects$$;
10565
- $bzimage32_checksum$jscomp$inline_165$$[135] = $bzimage8_i$jscomp$96_ramdisk_size$$;
10615
+ $bzimage32_checksum$jscomp$inline_165$$[135] = $bzimage8_i$jscomp$94_ramdisk_size$$;
10566
10616
  $dbg_assert$$module$src$log$$(655360 > 524288 + $cmdline_real_mode_kernel$$.length);
10567
10617
  $data8$jscomp$inline_161_mem8$$.set($cmdline_real_mode_kernel$$, 524288);
10568
10618
  $data8$jscomp$inline_161_mem8$$.set($bzimage$jscomp$1_i$jscomp$inline_166_protected_mode_kernel$$, 1048576);
@@ -10602,7 +10652,7 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzi
10602
10652
  }
10603
10653
  }
10604
10654
  }
10605
- ;function $CPU$$module$src$cpu$$($bus$jscomp$27$$, $memory$jscomp$1_wm$$, $stop_idling$$) {
10655
+ ;function $CPU$$module$src$cpu$$($bus$jscomp$26$$, $memory$jscomp$1_wm$$, $stop_idling$$) {
10606
10656
  this.stop_idling = $stop_idling$$;
10607
10657
  this.wm = $memory$jscomp$1_wm$$;
10608
10658
  this.wasm_patch();
@@ -10681,7 +10731,7 @@ function $load_kernel$$module$src$kernel$$($data8$jscomp$inline_161_mem8$$, $bzi
10681
10731
  this.fw_pointer = 0;
10682
10732
  this.option_roms = [];
10683
10733
  this.io = void 0;
10684
- this.bus = $bus$jscomp$27$$;
10734
+ this.bus = $bus$jscomp$26$$;
10685
10735
  this.set_tsc(0, 0);
10686
10736
  this.debug_init();
10687
10737
  this.seen_code = {};
@@ -10823,100 +10873,99 @@ $CPU$$module$src$cpu$$.prototype.jit_clear_func = function($index$jscomp$91$$) {
10823
10873
  };
10824
10874
  $CPU$$module$src$cpu$$.prototype.jit_clear_all_funcs = function() {
10825
10875
  const $table$$ = this.wm.wasm_table;
10826
- for (let $i$jscomp$99$$ = 0; 900 > $i$jscomp$99$$; $i$jscomp$99$$++) {
10827
- $table$$.set(1024 + $i$jscomp$99$$, null);
10876
+ for (let $i$jscomp$97$$ = 0; 900 > $i$jscomp$97$$; $i$jscomp$97$$++) {
10877
+ $table$$.set(1024 + $i$jscomp$97$$, null);
10828
10878
  }
10829
10879
  };
10830
10880
  $CPU$$module$src$cpu$$.prototype.get_state = function() {
10831
- var $state$jscomp$56$$ = [];
10832
- $state$jscomp$56$$[0] = this.memory_size[0];
10833
- $state$jscomp$56$$[1] = new Uint8Array([...this.segment_is_null, ...this.segment_access_bytes]);
10834
- $state$jscomp$56$$[2] = this.segment_offsets;
10835
- $state$jscomp$56$$[3] = this.segment_limits;
10836
- $state$jscomp$56$$[4] = this.protected_mode[0];
10837
- $state$jscomp$56$$[5] = this.idtr_offset[0];
10838
- $state$jscomp$56$$[6] = this.idtr_size[0];
10839
- $state$jscomp$56$$[7] = this.gdtr_offset[0];
10840
- $state$jscomp$56$$[8] = this.gdtr_size[0];
10841
- $state$jscomp$56$$[9] = this.page_fault[0];
10842
- $state$jscomp$56$$[10] = this.cr;
10843
- $state$jscomp$56$$[11] = this.cpl[0];
10844
- $state$jscomp$56$$[13] = this.is_32[0];
10845
- $state$jscomp$56$$[16] = this.stack_size_32[0];
10846
- $state$jscomp$56$$[17] = this.in_hlt[0];
10847
- $state$jscomp$56$$[18] = this.last_virt_eip[0];
10848
- $state$jscomp$56$$[19] = this.eip_phys[0];
10849
- $state$jscomp$56$$[22] = this.sysenter_cs[0];
10850
- $state$jscomp$56$$[23] = this.sysenter_eip[0];
10851
- $state$jscomp$56$$[24] = this.sysenter_esp[0];
10852
- $state$jscomp$56$$[25] = this.prefixes[0];
10853
- $state$jscomp$56$$[26] = this.flags[0];
10854
- $state$jscomp$56$$[27] = this.flags_changed[0];
10855
- $state$jscomp$56$$[28] = this.last_op1[0];
10856
- $state$jscomp$56$$[30] = this.last_op_size[0];
10857
- $state$jscomp$56$$[37] = this.instruction_pointer[0];
10858
- $state$jscomp$56$$[38] = this.previous_ip[0];
10859
- $state$jscomp$56$$[39] = this.reg32;
10860
- $state$jscomp$56$$[40] = this.sreg;
10861
- $state$jscomp$56$$[41] = this.dreg;
10862
- $state$jscomp$56$$[42] = this.reg_pdpte;
10881
+ var $state$jscomp$58$$ = [];
10882
+ $state$jscomp$58$$[0] = this.memory_size[0];
10883
+ $state$jscomp$58$$[1] = new Uint8Array([...this.segment_is_null, ...this.segment_access_bytes]);
10884
+ $state$jscomp$58$$[2] = this.segment_offsets;
10885
+ $state$jscomp$58$$[3] = this.segment_limits;
10886
+ $state$jscomp$58$$[4] = this.protected_mode[0];
10887
+ $state$jscomp$58$$[5] = this.idtr_offset[0];
10888
+ $state$jscomp$58$$[6] = this.idtr_size[0];
10889
+ $state$jscomp$58$$[7] = this.gdtr_offset[0];
10890
+ $state$jscomp$58$$[8] = this.gdtr_size[0];
10891
+ $state$jscomp$58$$[9] = this.page_fault[0];
10892
+ $state$jscomp$58$$[10] = this.cr;
10893
+ $state$jscomp$58$$[11] = this.cpl[0];
10894
+ $state$jscomp$58$$[13] = this.is_32[0];
10895
+ $state$jscomp$58$$[16] = this.stack_size_32[0];
10896
+ $state$jscomp$58$$[17] = this.in_hlt[0];
10897
+ $state$jscomp$58$$[18] = this.last_virt_eip[0];
10898
+ $state$jscomp$58$$[19] = this.eip_phys[0];
10899
+ $state$jscomp$58$$[22] = this.sysenter_cs[0];
10900
+ $state$jscomp$58$$[23] = this.sysenter_eip[0];
10901
+ $state$jscomp$58$$[24] = this.sysenter_esp[0];
10902
+ $state$jscomp$58$$[25] = this.prefixes[0];
10903
+ $state$jscomp$58$$[26] = this.flags[0];
10904
+ $state$jscomp$58$$[27] = this.flags_changed[0];
10905
+ $state$jscomp$58$$[28] = this.last_op1[0];
10906
+ $state$jscomp$58$$[30] = this.last_op_size[0];
10907
+ $state$jscomp$58$$[37] = this.instruction_pointer[0];
10908
+ $state$jscomp$58$$[38] = this.previous_ip[0];
10909
+ $state$jscomp$58$$[39] = this.reg32;
10910
+ $state$jscomp$58$$[40] = this.sreg;
10911
+ $state$jscomp$58$$[41] = this.dreg;
10912
+ $state$jscomp$58$$[42] = this.reg_pdpte;
10863
10913
  this.store_current_tsc();
10864
- $state$jscomp$56$$[43] = this.current_tsc;
10865
- $state$jscomp$56$$[45] = this.devices.virtio_9p;
10866
- $state$jscomp$56$$[46] = this.devices.apic;
10867
- $state$jscomp$56$$[47] = this.devices.rtc;
10868
- $state$jscomp$56$$[48] = this.devices.pci;
10869
- $state$jscomp$56$$[49] = this.devices.dma;
10870
- $state$jscomp$56$$[50] = this.devices.acpi;
10871
- $state$jscomp$56$$[52] = this.devices.vga;
10872
- $state$jscomp$56$$[53] = this.devices.ps2;
10873
- $state$jscomp$56$$[54] = this.devices.uart0;
10874
- $state$jscomp$56$$[55] = this.devices.fdc;
10875
- $state$jscomp$56$$[56] = this.devices.cdrom;
10876
- $state$jscomp$56$$[57] = this.devices.hda;
10877
- $state$jscomp$56$$[58] = this.devices.pit;
10878
- $state$jscomp$56$$[59] = this.devices.net;
10879
- $state$jscomp$56$$[60] = this.get_state_pic();
10880
- $state$jscomp$56$$[61] = this.devices.sb16;
10881
- $state$jscomp$56$$[62] = this.fw_value;
10882
- $state$jscomp$56$$[63] = this.devices.ioapic;
10883
- $state$jscomp$56$$[64] = this.tss_size_32[0];
10884
- $state$jscomp$56$$[66] = this.reg_xmm32s;
10885
- $state$jscomp$56$$[67] = this.fpu_st;
10886
- $state$jscomp$56$$[68] = this.fpu_stack_empty[0];
10887
- $state$jscomp$56$$[69] = this.fpu_stack_ptr[0];
10888
- $state$jscomp$56$$[70] = this.fpu_control_word[0];
10889
- $state$jscomp$56$$[71] = this.fpu_ip[0];
10890
- $state$jscomp$56$$[72] = this.fpu_ip_selector[0];
10891
- $state$jscomp$56$$[73] = this.fpu_dp[0];
10892
- $state$jscomp$56$$[74] = this.fpu_dp_selector[0];
10893
- $state$jscomp$56$$[75] = this.fpu_opcode[0];
10914
+ $state$jscomp$58$$[43] = this.current_tsc;
10915
+ $state$jscomp$58$$[45] = this.devices.virtio_9p;
10916
+ $state$jscomp$58$$[46] = this.devices.apic;
10917
+ $state$jscomp$58$$[47] = this.devices.rtc;
10918
+ $state$jscomp$58$$[48] = this.devices.pci;
10919
+ $state$jscomp$58$$[49] = this.devices.dma;
10920
+ $state$jscomp$58$$[50] = this.devices.acpi;
10921
+ $state$jscomp$58$$[52] = this.devices.vga;
10922
+ $state$jscomp$58$$[53] = this.devices.ps2;
10923
+ $state$jscomp$58$$[54] = this.devices.uart0;
10924
+ $state$jscomp$58$$[55] = this.devices.fdc;
10925
+ this.devices.ide.secondary ? $state$jscomp$58$$[85] = this.devices.ide : this.devices.ide.primary?.master.is_atapi ? $state$jscomp$58$$[56] = this.devices.ide.primary : $state$jscomp$58$$[57] = this.devices.ide.primary;
10926
+ $state$jscomp$58$$[58] = this.devices.pit;
10927
+ $state$jscomp$58$$[59] = this.devices.net;
10928
+ $state$jscomp$58$$[60] = this.get_state_pic();
10929
+ $state$jscomp$58$$[61] = this.devices.sb16;
10930
+ $state$jscomp$58$$[62] = this.fw_value;
10931
+ $state$jscomp$58$$[63] = this.devices.ioapic;
10932
+ $state$jscomp$58$$[64] = this.tss_size_32[0];
10933
+ $state$jscomp$58$$[66] = this.reg_xmm32s;
10934
+ $state$jscomp$58$$[67] = this.fpu_st;
10935
+ $state$jscomp$58$$[68] = this.fpu_stack_empty[0];
10936
+ $state$jscomp$58$$[69] = this.fpu_stack_ptr[0];
10937
+ $state$jscomp$58$$[70] = this.fpu_control_word[0];
10938
+ $state$jscomp$58$$[71] = this.fpu_ip[0];
10939
+ $state$jscomp$58$$[72] = this.fpu_ip_selector[0];
10940
+ $state$jscomp$58$$[73] = this.fpu_dp[0];
10941
+ $state$jscomp$58$$[74] = this.fpu_dp_selector[0];
10942
+ $state$jscomp$58$$[75] = this.fpu_opcode[0];
10894
10943
  const {packed_memory:$packed_memory$$, bitmap:$bitmap$jscomp$1$$} = this.pack_memory();
10895
- $state$jscomp$56$$[77] = $packed_memory$$;
10896
- $state$jscomp$56$$[78] = new Uint8Array($bitmap$jscomp$1$$.get_buffer());
10897
- $state$jscomp$56$$[79] = this.devices.uart1;
10898
- $state$jscomp$56$$[80] = this.devices.uart2;
10899
- $state$jscomp$56$$[81] = this.devices.uart3;
10900
- $state$jscomp$56$$[82] = this.devices.virtio_console;
10901
- $state$jscomp$56$$[83] = this.devices.virtio_net;
10902
- $state$jscomp$56$$[84] = this.devices.virtio_balloon;
10903
- return $state$jscomp$56$$;
10944
+ $state$jscomp$58$$[77] = $packed_memory$$;
10945
+ $state$jscomp$58$$[78] = new Uint8Array($bitmap$jscomp$1$$.get_buffer());
10946
+ $state$jscomp$58$$[79] = this.devices.uart1;
10947
+ $state$jscomp$58$$[80] = this.devices.uart2;
10948
+ $state$jscomp$58$$[81] = this.devices.uart3;
10949
+ $state$jscomp$58$$[82] = this.devices.virtio_console;
10950
+ $state$jscomp$58$$[83] = this.devices.virtio_net;
10951
+ $state$jscomp$58$$[84] = this.devices.virtio_balloon;
10952
+ return $state$jscomp$58$$;
10904
10953
  };
10905
10954
  $CPU$$module$src$cpu$$.prototype.get_state_pic = function() {
10906
- const $pic$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_master(), 13), $pic_slave$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_slave(), 13), $state$jscomp$57$$ = [], $state_slave$$ = [];
10907
- $state$jscomp$57$$[0] = $pic$$[0];
10908
- $state$jscomp$57$$[1] = $pic$$[1];
10909
- $state$jscomp$57$$[2] = $pic$$[2];
10910
- $state$jscomp$57$$[3] = $pic$$[3];
10911
- $state$jscomp$57$$[4] = $pic$$[4];
10912
- $state$jscomp$57$$[5] = $state_slave$$;
10913
- $state$jscomp$57$$[6] = $pic$$[6];
10914
- $state$jscomp$57$$[7] = $pic$$[7];
10915
- $state$jscomp$57$$[8] = $pic$$[8];
10916
- $state$jscomp$57$$[9] = $pic$$[9];
10917
- $state$jscomp$57$$[10] = $pic$$[10];
10918
- $state$jscomp$57$$[11] = $pic$$[11];
10919
- $state$jscomp$57$$[12] = $pic$$[12];
10955
+ const $pic$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_master(), 13), $pic_slave$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_slave(), 13), $state$jscomp$59$$ = [], $state_slave$$ = [];
10956
+ $state$jscomp$59$$[0] = $pic$$[0];
10957
+ $state$jscomp$59$$[1] = $pic$$[1];
10958
+ $state$jscomp$59$$[2] = $pic$$[2];
10959
+ $state$jscomp$59$$[3] = $pic$$[3];
10960
+ $state$jscomp$59$$[4] = $pic$$[4];
10961
+ $state$jscomp$59$$[5] = $state_slave$$;
10962
+ $state$jscomp$59$$[6] = $pic$$[6];
10963
+ $state$jscomp$59$$[7] = $pic$$[7];
10964
+ $state$jscomp$59$$[8] = $pic$$[8];
10965
+ $state$jscomp$59$$[9] = $pic$$[9];
10966
+ $state$jscomp$59$$[10] = $pic$$[10];
10967
+ $state$jscomp$59$$[11] = $pic$$[11];
10968
+ $state$jscomp$59$$[12] = $pic$$[12];
10920
10969
  $state_slave$$[0] = $pic_slave$$[0];
10921
10970
  $state_slave$$[1] = $pic_slave$$[1];
10922
10971
  $state_slave$$[2] = $pic_slave$$[2];
@@ -10930,98 +10979,98 @@ $CPU$$module$src$cpu$$.prototype.get_state_pic = function() {
10930
10979
  $state_slave$$[10] = $pic_slave$$[10];
10931
10980
  $state_slave$$[11] = $pic_slave$$[11];
10932
10981
  $state_slave$$[12] = $pic_slave$$[12];
10933
- return $state$jscomp$57$$;
10982
+ return $state$jscomp$59$$;
10934
10983
  };
10935
- $CPU$$module$src$cpu$$.prototype.set_state = function($state$jscomp$58$$) {
10936
- this.memory_size[0] = $state$jscomp$58$$[0];
10984
+ $CPU$$module$src$cpu$$.prototype.set_state = function($state$jscomp$60$$) {
10985
+ this.memory_size[0] = $state$jscomp$60$$[0];
10937
10986
  this.mem8.length !== this.memory_size[0] && console.warn("Note: Memory size mismatch. we=" + this.mem8.length + " state=" + this.memory_size[0]);
10938
- 8 === $state$jscomp$58$$[1].length ? (this.segment_is_null.set($state$jscomp$58$$[1]), this.segment_access_bytes.fill(242), this.segment_access_bytes[1] = 250) : 16 === $state$jscomp$58$$[1].length ? (this.segment_is_null.set($state$jscomp$58$$[1].subarray(0, 8)), this.segment_access_bytes.set($state$jscomp$58$$[1].subarray(8, 16))) : $dbg_assert$$module$src$log$$("Unexpected cpu segment state length:" + $state$jscomp$58$$[1].length);
10939
- this.segment_offsets.set($state$jscomp$58$$[2]);
10940
- this.segment_limits.set($state$jscomp$58$$[3]);
10941
- this.protected_mode[0] = $state$jscomp$58$$[4];
10942
- this.idtr_offset[0] = $state$jscomp$58$$[5];
10943
- this.idtr_size[0] = $state$jscomp$58$$[6];
10944
- this.gdtr_offset[0] = $state$jscomp$58$$[7];
10945
- this.gdtr_size[0] = $state$jscomp$58$$[8];
10946
- this.page_fault[0] = $state$jscomp$58$$[9];
10947
- this.cr.set($state$jscomp$58$$[10]);
10948
- this.cpl[0] = $state$jscomp$58$$[11];
10949
- this.is_32[0] = $state$jscomp$58$$[13];
10950
- this.stack_size_32[0] = $state$jscomp$58$$[16];
10951
- this.in_hlt[0] = $state$jscomp$58$$[17];
10952
- this.last_virt_eip[0] = $state$jscomp$58$$[18];
10953
- this.eip_phys[0] = $state$jscomp$58$$[19];
10954
- this.sysenter_cs[0] = $state$jscomp$58$$[22];
10955
- this.sysenter_eip[0] = $state$jscomp$58$$[23];
10956
- this.sysenter_esp[0] = $state$jscomp$58$$[24];
10957
- this.prefixes[0] = $state$jscomp$58$$[25];
10958
- this.flags[0] = $state$jscomp$58$$[26];
10959
- this.flags_changed[0] = $state$jscomp$58$$[27];
10960
- this.last_op1[0] = $state$jscomp$58$$[28];
10961
- this.last_op_size[0] = $state$jscomp$58$$[30];
10962
- this.instruction_pointer[0] = $state$jscomp$58$$[37];
10963
- this.previous_ip[0] = $state$jscomp$58$$[38];
10964
- this.reg32.set($state$jscomp$58$$[39]);
10965
- this.sreg.set($state$jscomp$58$$[40]);
10966
- this.dreg.set($state$jscomp$58$$[41]);
10967
- $state$jscomp$58$$[42] && this.reg_pdpte.set($state$jscomp$58$$[42]);
10968
- this.set_tsc($state$jscomp$58$$[43][0], $state$jscomp$58$$[43][1]);
10969
- this.devices.virtio_9p && this.devices.virtio_9p.set_state($state$jscomp$58$$[45]);
10970
- this.devices.apic && this.devices.apic.set_state($state$jscomp$58$$[46]);
10971
- this.devices.rtc && this.devices.rtc.set_state($state$jscomp$58$$[47]);
10972
- this.devices.pci && this.devices.pci.set_state($state$jscomp$58$$[48]);
10973
- this.devices.dma && this.devices.dma.set_state($state$jscomp$58$$[49]);
10974
- this.devices.acpi && this.devices.acpi.set_state($state$jscomp$58$$[50]);
10975
- this.devices.vga && this.devices.vga.set_state($state$jscomp$58$$[52]);
10976
- this.devices.ps2 && this.devices.ps2.set_state($state$jscomp$58$$[53]);
10977
- this.devices.uart0 && this.devices.uart0.set_state($state$jscomp$58$$[54]);
10978
- this.devices.fdc && this.devices.fdc.set_state($state$jscomp$58$$[55]);
10979
- this.devices.cdrom && this.devices.cdrom.set_state($state$jscomp$58$$[56]);
10980
- this.devices.hda && this.devices.hda.set_state($state$jscomp$58$$[57]);
10981
- this.devices.pit && this.devices.pit.set_state($state$jscomp$58$$[58]);
10982
- this.devices.net && this.devices.net.set_state($state$jscomp$58$$[59]);
10983
- this.set_state_pic($state$jscomp$58$$[60]);
10984
- this.devices.sb16 && this.devices.sb16.set_state($state$jscomp$58$$[61]);
10985
- this.devices.uart1 && this.devices.uart1.set_state($state$jscomp$58$$[79]);
10986
- this.devices.uart2 && this.devices.uart2.set_state($state$jscomp$58$$[80]);
10987
- this.devices.uart3 && this.devices.uart3.set_state($state$jscomp$58$$[81]);
10988
- this.devices.virtio_console && this.devices.virtio_console.set_state($state$jscomp$58$$[82]);
10989
- this.devices.virtio_net && this.devices.virtio_net.set_state($state$jscomp$58$$[83]);
10990
- this.devices.virtio_balloon && this.devices.virtio_balloon.set_state($state$jscomp$58$$[84]);
10991
- this.fw_value = $state$jscomp$58$$[62];
10992
- this.devices.ioapic && this.devices.ioapic.set_state($state$jscomp$58$$[63]);
10993
- this.tss_size_32[0] = $state$jscomp$58$$[64];
10994
- this.reg_xmm32s.set($state$jscomp$58$$[66]);
10995
- this.fpu_st.set($state$jscomp$58$$[67]);
10996
- this.fpu_stack_empty[0] = $state$jscomp$58$$[68];
10997
- this.fpu_stack_ptr[0] = $state$jscomp$58$$[69];
10998
- this.fpu_control_word[0] = $state$jscomp$58$$[70];
10999
- this.fpu_ip[0] = $state$jscomp$58$$[71];
11000
- this.fpu_ip_selector[0] = $state$jscomp$58$$[72];
11001
- this.fpu_dp[0] = $state$jscomp$58$$[73];
11002
- this.fpu_dp_selector[0] = $state$jscomp$58$$[74];
11003
- this.fpu_opcode[0] = $state$jscomp$58$$[75];
11004
- const $bitmap$jscomp$2$$ = new $Bitmap$$module$src$lib$$($state$jscomp$58$$[78].buffer);
11005
- this.unpack_memory($bitmap$jscomp$2$$, $state$jscomp$58$$[77]);
10987
+ 8 === $state$jscomp$60$$[1].length ? (this.segment_is_null.set($state$jscomp$60$$[1]), this.segment_access_bytes.fill(242), this.segment_access_bytes[1] = 250) : 16 === $state$jscomp$60$$[1].length ? (this.segment_is_null.set($state$jscomp$60$$[1].subarray(0, 8)), this.segment_access_bytes.set($state$jscomp$60$$[1].subarray(8, 16))) : $dbg_assert$$module$src$log$$("Unexpected cpu segment state length:" + $state$jscomp$60$$[1].length);
10988
+ this.segment_offsets.set($state$jscomp$60$$[2]);
10989
+ this.segment_limits.set($state$jscomp$60$$[3]);
10990
+ this.protected_mode[0] = $state$jscomp$60$$[4];
10991
+ this.idtr_offset[0] = $state$jscomp$60$$[5];
10992
+ this.idtr_size[0] = $state$jscomp$60$$[6];
10993
+ this.gdtr_offset[0] = $state$jscomp$60$$[7];
10994
+ this.gdtr_size[0] = $state$jscomp$60$$[8];
10995
+ this.page_fault[0] = $state$jscomp$60$$[9];
10996
+ this.cr.set($state$jscomp$60$$[10]);
10997
+ this.cpl[0] = $state$jscomp$60$$[11];
10998
+ this.is_32[0] = $state$jscomp$60$$[13];
10999
+ this.stack_size_32[0] = $state$jscomp$60$$[16];
11000
+ this.in_hlt[0] = $state$jscomp$60$$[17];
11001
+ this.last_virt_eip[0] = $state$jscomp$60$$[18];
11002
+ this.eip_phys[0] = $state$jscomp$60$$[19];
11003
+ this.sysenter_cs[0] = $state$jscomp$60$$[22];
11004
+ this.sysenter_eip[0] = $state$jscomp$60$$[23];
11005
+ this.sysenter_esp[0] = $state$jscomp$60$$[24];
11006
+ this.prefixes[0] = $state$jscomp$60$$[25];
11007
+ this.flags[0] = $state$jscomp$60$$[26];
11008
+ this.flags_changed[0] = $state$jscomp$60$$[27];
11009
+ this.last_op1[0] = $state$jscomp$60$$[28];
11010
+ this.last_op_size[0] = $state$jscomp$60$$[30];
11011
+ this.instruction_pointer[0] = $state$jscomp$60$$[37];
11012
+ this.previous_ip[0] = $state$jscomp$60$$[38];
11013
+ this.reg32.set($state$jscomp$60$$[39]);
11014
+ this.sreg.set($state$jscomp$60$$[40]);
11015
+ this.dreg.set($state$jscomp$60$$[41]);
11016
+ $state$jscomp$60$$[42] && this.reg_pdpte.set($state$jscomp$60$$[42]);
11017
+ this.set_tsc($state$jscomp$60$$[43][0], $state$jscomp$60$$[43][1]);
11018
+ this.devices.virtio_9p && this.devices.virtio_9p.set_state($state$jscomp$60$$[45]);
11019
+ this.devices.apic && this.devices.apic.set_state($state$jscomp$60$$[46]);
11020
+ this.devices.rtc && this.devices.rtc.set_state($state$jscomp$60$$[47]);
11021
+ this.devices.dma && this.devices.dma.set_state($state$jscomp$60$$[49]);
11022
+ this.devices.acpi && this.devices.acpi.set_state($state$jscomp$60$$[50]);
11023
+ this.devices.vga && this.devices.vga.set_state($state$jscomp$60$$[52]);
11024
+ this.devices.ps2 && this.devices.ps2.set_state($state$jscomp$60$$[53]);
11025
+ this.devices.uart0 && this.devices.uart0.set_state($state$jscomp$60$$[54]);
11026
+ this.devices.fdc && this.devices.fdc.set_state($state$jscomp$60$$[55]);
11027
+ $state$jscomp$60$$[56] || $state$jscomp$60$$[57] ? ($bitmap$jscomp$2_ide_config$jscomp$1$$ = [[void 0, void 0], [void 0, void 0]], $bitmap$jscomp$2_ide_config$jscomp$1$$[0][0] = $state$jscomp$60$$[56] ? {is_cdrom:!0, buffer:this.devices.cdrom.buffer} : {is_cdrom:!1, buffer:this.devices.ide.primary.master.buffer}, this.devices.ide = new $IDEController$$module$src$ide$$(this, this.devices.ide.bus, $bitmap$jscomp$2_ide_config$jscomp$1$$), this.devices.cdrom = $state$jscomp$60$$[56] ? this.devices.ide.primary.master :
11028
+ void 0, this.devices.ide.primary.set_state($state$jscomp$60$$[56] || $state$jscomp$60$$[57])) : $state$jscomp$60$$[85] && this.devices.ide.set_state($state$jscomp$60$$[85]);
11029
+ this.devices.pci && this.devices.pci.set_state($state$jscomp$60$$[48]);
11030
+ this.devices.pit && this.devices.pit.set_state($state$jscomp$60$$[58]);
11031
+ this.devices.net && this.devices.net.set_state($state$jscomp$60$$[59]);
11032
+ this.set_state_pic($state$jscomp$60$$[60]);
11033
+ this.devices.sb16 && this.devices.sb16.set_state($state$jscomp$60$$[61]);
11034
+ this.devices.uart1 && this.devices.uart1.set_state($state$jscomp$60$$[79]);
11035
+ this.devices.uart2 && this.devices.uart2.set_state($state$jscomp$60$$[80]);
11036
+ this.devices.uart3 && this.devices.uart3.set_state($state$jscomp$60$$[81]);
11037
+ this.devices.virtio_console && this.devices.virtio_console.set_state($state$jscomp$60$$[82]);
11038
+ this.devices.virtio_net && this.devices.virtio_net.set_state($state$jscomp$60$$[83]);
11039
+ this.devices.virtio_balloon && this.devices.virtio_balloon.set_state($state$jscomp$60$$[84]);
11040
+ this.fw_value = $state$jscomp$60$$[62];
11041
+ this.devices.ioapic && this.devices.ioapic.set_state($state$jscomp$60$$[63]);
11042
+ this.tss_size_32[0] = $state$jscomp$60$$[64];
11043
+ this.reg_xmm32s.set($state$jscomp$60$$[66]);
11044
+ this.fpu_st.set($state$jscomp$60$$[67]);
11045
+ this.fpu_stack_empty[0] = $state$jscomp$60$$[68];
11046
+ this.fpu_stack_ptr[0] = $state$jscomp$60$$[69];
11047
+ this.fpu_control_word[0] = $state$jscomp$60$$[70];
11048
+ this.fpu_ip[0] = $state$jscomp$60$$[71];
11049
+ this.fpu_ip_selector[0] = $state$jscomp$60$$[72];
11050
+ this.fpu_dp[0] = $state$jscomp$60$$[73];
11051
+ this.fpu_dp_selector[0] = $state$jscomp$60$$[74];
11052
+ this.fpu_opcode[0] = $state$jscomp$60$$[75];
11053
+ var $bitmap$jscomp$2_ide_config$jscomp$1$$ = new $Bitmap$$module$src$lib$$($state$jscomp$60$$[78].buffer);
11054
+ this.unpack_memory($bitmap$jscomp$2_ide_config$jscomp$1$$, $state$jscomp$60$$[77]);
11006
11055
  this.update_state_flags();
11007
11056
  this.full_clear_tlb();
11008
11057
  this.jit_clear_cache();
11009
11058
  };
11010
- $CPU$$module$src$cpu$$.prototype.set_state_pic = function($state$jscomp$59$$) {
11059
+ $CPU$$module$src$cpu$$.prototype.set_state_pic = function($state$jscomp$61$$) {
11011
11060
  const $pic$jscomp$1$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_master(), 13), $pic_slave$jscomp$1$$ = new Uint8Array(this.wasm_memory.buffer, this.get_pic_addr_slave(), 13);
11012
- $pic$jscomp$1$$[0] = $state$jscomp$59$$[0];
11013
- $pic$jscomp$1$$[1] = $state$jscomp$59$$[1];
11014
- $pic$jscomp$1$$[2] = $state$jscomp$59$$[2];
11015
- $pic$jscomp$1$$[3] = $state$jscomp$59$$[3];
11016
- $pic$jscomp$1$$[4] = $state$jscomp$59$$[4];
11017
- const $state_slave$jscomp$1$$ = $state$jscomp$59$$[5];
11018
- $pic$jscomp$1$$[6] = $state$jscomp$59$$[6];
11019
- $pic$jscomp$1$$[7] = $state$jscomp$59$$[7];
11020
- $pic$jscomp$1$$[8] = $state$jscomp$59$$[8];
11021
- $pic$jscomp$1$$[9] = $state$jscomp$59$$[9];
11022
- $pic$jscomp$1$$[10] = $state$jscomp$59$$[10];
11023
- $pic$jscomp$1$$[11] = $state$jscomp$59$$[11];
11024
- $pic$jscomp$1$$[12] = $state$jscomp$59$$[12];
11061
+ $pic$jscomp$1$$[0] = $state$jscomp$61$$[0];
11062
+ $pic$jscomp$1$$[1] = $state$jscomp$61$$[1];
11063
+ $pic$jscomp$1$$[2] = $state$jscomp$61$$[2];
11064
+ $pic$jscomp$1$$[3] = $state$jscomp$61$$[3];
11065
+ $pic$jscomp$1$$[4] = $state$jscomp$61$$[4];
11066
+ const $state_slave$jscomp$1$$ = $state$jscomp$61$$[5];
11067
+ $pic$jscomp$1$$[6] = $state$jscomp$61$$[6];
11068
+ $pic$jscomp$1$$[7] = $state$jscomp$61$$[7];
11069
+ $pic$jscomp$1$$[8] = $state$jscomp$61$$[8];
11070
+ $pic$jscomp$1$$[9] = $state$jscomp$61$$[9];
11071
+ $pic$jscomp$1$$[10] = $state$jscomp$61$$[10];
11072
+ $pic$jscomp$1$$[11] = $state$jscomp$61$$[11];
11073
+ $pic$jscomp$1$$[12] = $state$jscomp$61$$[12];
11025
11074
  $pic_slave$jscomp$1$$[0] = $state_slave$jscomp$1$$[0];
11026
11075
  $pic_slave$jscomp$1$$[1] = $state_slave$jscomp$1$$[1];
11027
11076
  $pic_slave$jscomp$1$$[2] = $state_slave$jscomp$1$$[2];
@@ -11043,8 +11092,8 @@ $CPU$$module$src$cpu$$.prototype.pack_memory = function() {
11043
11092
  }
11044
11093
  $bitmap$jscomp$3_page_count$$ = new $Bitmap$$module$src$lib$$($bitmap$jscomp$3_page_count$$);
11045
11094
  var $packed_memory$jscomp$2_page$$ = new Uint8Array($nonzero_pages_offset$jscomp$79_page_contents$$.length << 12);
11046
- for (const [$i$jscomp$100$$, $page$jscomp$1$$] of $nonzero_pages_offset$jscomp$79_page_contents$$.entries()) {
11047
- $bitmap$jscomp$3_page_count$$.set($page$jscomp$1$$, 1), $nonzero_pages_offset$jscomp$79_page_contents$$ = $page$jscomp$1$$ << 12, $nonzero_pages_offset$jscomp$79_page_contents$$ = this.mem8.subarray($nonzero_pages_offset$jscomp$79_page_contents$$, $nonzero_pages_offset$jscomp$79_page_contents$$ + 4096), $packed_memory$jscomp$2_page$$.set($nonzero_pages_offset$jscomp$79_page_contents$$, $i$jscomp$100$$ << 12);
11095
+ for (const [$i$jscomp$98$$, $page$jscomp$1$$] of $nonzero_pages_offset$jscomp$79_page_contents$$.entries()) {
11096
+ $bitmap$jscomp$3_page_count$$.set($page$jscomp$1$$, 1), $nonzero_pages_offset$jscomp$79_page_contents$$ = $page$jscomp$1$$ << 12, $nonzero_pages_offset$jscomp$79_page_contents$$ = this.mem8.subarray($nonzero_pages_offset$jscomp$79_page_contents$$, $nonzero_pages_offset$jscomp$79_page_contents$$ + 4096), $packed_memory$jscomp$2_page$$.set($nonzero_pages_offset$jscomp$79_page_contents$$, $i$jscomp$98$$ << 12);
11048
11097
  }
11049
11098
  return {bitmap:$bitmap$jscomp$3_page_count$$, packed_memory:$packed_memory$jscomp$2_page$$};
11050
11099
  };
@@ -11090,8 +11139,8 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11090
11139
  $option_rom$jscomp$1_settings$jscomp$2$$.cpuid_level && this.set_cpuid_level($option_rom$jscomp$1_settings$jscomp$2$$.cpuid_level);
11091
11140
  this.acpi_enabled[0] = +$option_rom$jscomp$1_settings$jscomp$2$$.acpi;
11092
11141
  this.reset_cpu();
11093
- var $ide_device_count_io$jscomp$5$$ = new $IO$$module$src$io$$(this);
11094
- this.io = $ide_device_count_io$jscomp$5$$;
11142
+ var $ide_config$jscomp$2_io$jscomp$5$$ = new $IO$$module$src$io$$(this);
11143
+ this.io = $ide_config$jscomp$2_io$jscomp$5$$;
11095
11144
  this.bios.main = $option_rom$jscomp$1_settings$jscomp$2$$.bios;
11096
11145
  this.bios.vga = $option_rom$jscomp$1_settings$jscomp$2$$.vga_bios;
11097
11146
  this.load_bios();
@@ -11099,25 +11148,25 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11099
11148
  const $option_rom$$ = $load_kernel$$module$src$kernel$$(this.mem8, $option_rom$jscomp$1_settings$jscomp$2$$.bzimage, $option_rom$jscomp$1_settings$jscomp$2$$.initrd, $option_rom$jscomp$1_settings$jscomp$2$$.cmdline || "");
11100
11149
  $option_rom$$ && this.option_roms.push($option_rom$$);
11101
11150
  }
11102
- $ide_device_count_io$jscomp$5$$.register_read(179, this, function() {
11151
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(179, this, function() {
11103
11152
  $dbg_log$$module$src$log$$("port 0xB3 read");
11104
11153
  return 0;
11105
11154
  });
11106
11155
  var $a20_byte$$ = 0;
11107
- $ide_device_count_io$jscomp$5$$.register_read(146, this, function() {
11156
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(146, this, function() {
11108
11157
  return $a20_byte$$;
11109
11158
  });
11110
- $ide_device_count_io$jscomp$5$$.register_write(146, this, function($out_byte$jscomp$14$$) {
11159
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(146, this, function($out_byte$jscomp$14$$) {
11111
11160
  $a20_byte$$ = $out_byte$jscomp$14$$;
11112
11161
  });
11113
- $ide_device_count_io$jscomp$5$$.register_read(1297, this, function() {
11162
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(1297, this, function() {
11114
11163
  if (this.fw_pointer < this.fw_value.length) {
11115
11164
  return this.fw_value[this.fw_pointer++];
11116
11165
  }
11117
11166
  $dbg_assert$$module$src$log$$(!1, "config port: Read past value");
11118
11167
  return 0;
11119
11168
  });
11120
- $ide_device_count_io$jscomp$5$$.register_write(1296, this, void 0, function($buffer32_value$jscomp$196$$) {
11169
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(1296, this, void 0, function($buffer32_value$jscomp$196$$) {
11121
11170
  function $i32$$($x$jscomp$121$$) {
11122
11171
  return new Uint8Array(Int32Array.of($x$jscomp$121$$).buffer);
11123
11172
  }
@@ -11151,11 +11200,11 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11151
11200
  $buffer32_value$jscomp$196$$ = new Int32Array(4 + 64 * this.option_roms.length);
11152
11201
  const $buffer8$$ = new Uint8Array($buffer32_value$jscomp$196$$.buffer);
11153
11202
  $buffer32_value$jscomp$196$$[0] = $to_be32$$(this.option_roms.length);
11154
- for (let $i$jscomp$101$$ = 0; $i$jscomp$101$$ < this.option_roms.length; $i$jscomp$101$$++) {
11155
- const {name:$name$jscomp$107$$, data:$data$jscomp$220$$} = this.option_roms[$i$jscomp$101$$], $file_struct_ptr$$ = 4 + 64 * $i$jscomp$101$$;
11156
- $dbg_assert$$module$src$log$$(65536 > 49152 + $i$jscomp$101$$);
11203
+ for (let $i$jscomp$99$$ = 0; $i$jscomp$99$$ < this.option_roms.length; $i$jscomp$99$$++) {
11204
+ const {name:$name$jscomp$107$$, data:$data$jscomp$220$$} = this.option_roms[$i$jscomp$99$$], $file_struct_ptr$$ = 4 + 64 * $i$jscomp$99$$;
11205
+ $dbg_assert$$module$src$log$$(65536 > 49152 + $i$jscomp$99$$);
11157
11206
  $buffer32_value$jscomp$196$$[$file_struct_ptr$$ + 0 >> 2] = $to_be32$$($data$jscomp$220$$.length);
11158
- $buffer32_value$jscomp$196$$[$file_struct_ptr$$ + 4 >> 2] = $to_be16$$(49152 + $i$jscomp$101$$);
11207
+ $buffer32_value$jscomp$196$$[$file_struct_ptr$$ + 4 >> 2] = $to_be16$$(49152 + $i$jscomp$99$$);
11159
11208
  $dbg_assert$$module$src$log$$(56 > $name$jscomp$107$$.length);
11160
11209
  for (let $j$jscomp$10$$ = 0; $j$jscomp$10$$ < $name$jscomp$107$$.length; $j$jscomp$10$$++) {
11161
11210
  $buffer8$$[$file_struct_ptr$$ + 8 + $j$jscomp$10$$] = $name$jscomp$107$$.charCodeAt($j$jscomp$10$$);
@@ -11172,47 +11221,48 @@ $CPU$$module$src$cpu$$.prototype.init = function($option_rom$jscomp$1_settings$j
11172
11221
  }
11173
11222
  }
11174
11223
  });
11175
- $ide_device_count_io$jscomp$5$$.register_write(128, this, function() {
11224
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(128, this, function() {
11176
11225
  });
11177
- $ide_device_count_io$jscomp$5$$.register_read(128, this, function() {
11226
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(128, this, function() {
11178
11227
  return 255;
11179
11228
  });
11180
- $ide_device_count_io$jscomp$5$$.register_write(233, this, function() {
11181
- });
11182
- $ide_device_count_io$jscomp$5$$.register_read(32, this, this.port20_read);
11183
- $ide_device_count_io$jscomp$5$$.register_read(33, this, this.port21_read);
11184
- $ide_device_count_io$jscomp$5$$.register_read(160, this, this.portA0_read);
11185
- $ide_device_count_io$jscomp$5$$.register_read(161, this, this.portA1_read);
11186
- $ide_device_count_io$jscomp$5$$.register_write(32, this, this.port20_write);
11187
- $ide_device_count_io$jscomp$5$$.register_write(33, this, this.port21_write);
11188
- $ide_device_count_io$jscomp$5$$.register_write(160, this, this.portA0_write);
11189
- $ide_device_count_io$jscomp$5$$.register_write(161, this, this.portA1_write);
11190
- $ide_device_count_io$jscomp$5$$.register_read(1232, this, this.port4D0_read);
11191
- $ide_device_count_io$jscomp$5$$.register_read(1233, this, this.port4D1_read);
11192
- $ide_device_count_io$jscomp$5$$.register_write(1232, this, this.port4D0_write);
11193
- $ide_device_count_io$jscomp$5$$.register_write(1233, this, this.port4D1_write);
11229
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(233, this, function() {
11230
+ });
11231
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(32, this, this.port20_read);
11232
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(33, this, this.port21_read);
11233
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(160, this, this.portA0_read);
11234
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(161, this, this.portA1_read);
11235
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(32, this, this.port20_write);
11236
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(33, this, this.port21_write);
11237
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(160, this, this.portA0_write);
11238
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(161, this, this.portA1_write);
11239
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(1232, this, this.port4D0_read);
11240
+ $ide_config$jscomp$2_io$jscomp$5$$.register_read(1233, this, this.port4D1_read);
11241
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(1232, this, this.port4D0_write);
11242
+ $ide_config$jscomp$2_io$jscomp$5$$.register_write(1233, this, this.port4D1_write);
11194
11243
  this.devices = {};
11195
11244
  $option_rom$jscomp$1_settings$jscomp$2$$.load_devices && (this.devices.pci = new $PCI$$module$src$pci$$(this), this.acpi_enabled[0] && (this.devices.ioapic = new $IOAPIC$$module$src$ioapic$$(this), this.devices.apic = new $APIC$$module$src$apic$$(this), this.devices.acpi = new $ACPI$$module$src$acpi$$(this)), this.devices.rtc = new $RTC$$module$src$rtc$$(this), this.fill_cmos(this.devices.rtc, $option_rom$jscomp$1_settings$jscomp$2$$), this.devices.dma = new $DMA$$module$src$dma$$(this), this.devices.vga =
11196
11245
  new $VGAScreen$$module$src$vga$$(this, $device_bus$$, $option_rom$jscomp$1_settings$jscomp$2$$.screen, $option_rom$jscomp$1_settings$jscomp$2$$.vga_memory_size || 8388608), this.devices.ps2 = new $PS2$$module$src$ps2$$(this, $device_bus$$), this.devices.uart0 = new $UART$$module$src$uart$$(this, 1016, $device_bus$$), $option_rom$jscomp$1_settings$jscomp$2$$.uart1 && (this.devices.uart1 = new $UART$$module$src$uart$$(this, 760, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.uart2 && (this.devices.uart2 =
11197
- new $UART$$module$src$uart$$(this, 1E3, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.uart3 && (this.devices.uart3 = new $UART$$module$src$uart$$(this, 744, $device_bus$$)), this.devices.fdc = new $FloppyController$$module$src$floppy$$(this, $option_rom$jscomp$1_settings$jscomp$2$$.fda, $option_rom$jscomp$1_settings$jscomp$2$$.fdb), $ide_device_count_io$jscomp$5$$ = 0, $option_rom$jscomp$1_settings$jscomp$2$$.hda && (this.devices.hda = new $IDEDevice$$module$src$ide$$(this, $option_rom$jscomp$1_settings$jscomp$2$$.hda,
11198
- $option_rom$jscomp$1_settings$jscomp$2$$.hdb, !1, $ide_device_count_io$jscomp$5$$++, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.cdrom && (this.devices.cdrom = new $IDEDevice$$module$src$ide$$(this, $option_rom$jscomp$1_settings$jscomp$2$$.cdrom, void 0, !0, $ide_device_count_io$jscomp$5$$++, $device_bus$$)), this.devices.pit = new $PIT$$module$src$pit$$(this, $device_bus$$), "ne2k" === $option_rom$jscomp$1_settings$jscomp$2$$.net_device.type ? this.devices.net = new $Ne2k$$module$src$ne2k$$(this,
11199
- $device_bus$$, $option_rom$jscomp$1_settings$jscomp$2$$.preserve_mac_from_state_image, $option_rom$jscomp$1_settings$jscomp$2$$.mac_address_translation) : "virtio" === $option_rom$jscomp$1_settings$jscomp$2$$.net_device.type && (this.devices.virtio_net = new $VirtioNet$$module$src$virtio_net$$(this, $device_bus$$, $option_rom$jscomp$1_settings$jscomp$2$$.preserve_mac_from_state_image)), $option_rom$jscomp$1_settings$jscomp$2$$.fs9p && (this.devices.virtio_9p = new $Virtio9p$$module$lib$9p$$($option_rom$jscomp$1_settings$jscomp$2$$.fs9p,
11200
- this, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.virtio_console && (this.devices.virtio_console = new $VirtioConsole$$module$src$virtio_console$$(this, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.virtio_balloon && (this.devices.virtio_balloon = new $VirtioBalloon$$module$src$virtio_balloon$$(this, $device_bus$$)), this.devices.sb16 = new $SB16$$module$src$sb16$$(this, $device_bus$$));
11246
+ new $UART$$module$src$uart$$(this, 1E3, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.uart3 && (this.devices.uart3 = new $UART$$module$src$uart$$(this, 744, $device_bus$$)), this.devices.fdc = new $FloppyController$$module$src$floppy$$(this, $option_rom$jscomp$1_settings$jscomp$2$$.fda, $option_rom$jscomp$1_settings$jscomp$2$$.fdb), $ide_config$jscomp$2_io$jscomp$5$$ = [[void 0, void 0], [void 0, void 0]], $option_rom$jscomp$1_settings$jscomp$2$$.hda && ($ide_config$jscomp$2_io$jscomp$5$$[0][0] =
11247
+ {buffer:$option_rom$jscomp$1_settings$jscomp$2$$.hda}, $ide_config$jscomp$2_io$jscomp$5$$[0][1] = {buffer:$option_rom$jscomp$1_settings$jscomp$2$$.hdb}), $ide_config$jscomp$2_io$jscomp$5$$[1][0] = {is_cdrom:!0, buffer:$option_rom$jscomp$1_settings$jscomp$2$$.cdrom}, this.devices.ide = new $IDEController$$module$src$ide$$(this, $device_bus$$, $ide_config$jscomp$2_io$jscomp$5$$), this.devices.cdrom = this.devices.ide.secondary.master, this.devices.pit = new $PIT$$module$src$pit$$(this, $device_bus$$),
11248
+ "ne2k" === $option_rom$jscomp$1_settings$jscomp$2$$.net_device.type ? this.devices.net = new $Ne2k$$module$src$ne2k$$(this, $device_bus$$, $option_rom$jscomp$1_settings$jscomp$2$$.preserve_mac_from_state_image, $option_rom$jscomp$1_settings$jscomp$2$$.mac_address_translation) : "virtio" === $option_rom$jscomp$1_settings$jscomp$2$$.net_device.type && (this.devices.virtio_net = new $VirtioNet$$module$src$virtio_net$$(this, $device_bus$$, $option_rom$jscomp$1_settings$jscomp$2$$.preserve_mac_from_state_image)),
11249
+ $option_rom$jscomp$1_settings$jscomp$2$$.fs9p && (this.devices.virtio_9p = new $Virtio9p$$module$lib$9p$$($option_rom$jscomp$1_settings$jscomp$2$$.fs9p, this, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.virtio_console && (this.devices.virtio_console = new $VirtioConsole$$module$src$virtio_console$$(this, $device_bus$$)), $option_rom$jscomp$1_settings$jscomp$2$$.virtio_balloon && (this.devices.virtio_balloon = new $VirtioBalloon$$module$src$virtio_balloon$$(this, $device_bus$$)), this.devices.sb16 =
11250
+ new $SB16$$module$src$sb16$$(this, $device_bus$$));
11201
11251
  $option_rom$jscomp$1_settings$jscomp$2$$.multiboot && ($dbg_log$$module$src$log$$("loading multiboot", 2), $option_rom$jscomp$1_settings$jscomp$2$$ = this.load_multiboot_option_rom($option_rom$jscomp$1_settings$jscomp$2$$.multiboot, $option_rom$jscomp$1_settings$jscomp$2$$.initrd, $option_rom$jscomp$1_settings$jscomp$2$$.cmdline)) && (this.bios.main ? ($dbg_log$$module$src$log$$("adding option rom for multiboot", 2), this.option_roms.push($option_rom$jscomp$1_settings$jscomp$2$$)) : ($dbg_log$$module$src$log$$("loaded multiboot without bios",
11202
11252
  2), this.reg32[0] = this.io.port_read32(244)));
11203
11253
  this.debug.init();
11204
11254
  };
11205
- $CPU$$module$src$cpu$$.prototype.load_multiboot = function($buffer$jscomp$55$$) {
11255
+ $CPU$$module$src$cpu$$.prototype.load_multiboot = function($buffer$jscomp$57$$) {
11206
11256
  this.bios.main && $dbg_assert$$module$src$log$$(!1, "load_multiboot not supported with BIOS");
11207
- this.load_multiboot_option_rom($buffer$jscomp$55$$, void 0, "") && ($dbg_log$$module$src$log$$("loaded multiboot", 2), this.reg32[0] = this.io.port_read32(244));
11257
+ this.load_multiboot_option_rom($buffer$jscomp$57$$, void 0, "") && ($dbg_log$$module$src$log$$("loaded multiboot", 2), this.reg32[0] = this.io.port_read32(244));
11208
11258
  };
11209
- $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$jscomp$56$$, $initrd$jscomp$2$$, $cmdline$jscomp$1$$) {
11210
- $dbg_log$$module$src$log$$("Trying multiboot from buffer of size " + $buffer$jscomp$56$$.byteLength, 2);
11211
- if (8192 > $buffer$jscomp$56$$.byteLength) {
11259
+ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$jscomp$58$$, $initrd$jscomp$2$$, $cmdline$jscomp$1$$) {
11260
+ $dbg_log$$module$src$log$$("Trying multiboot from buffer of size " + $buffer$jscomp$58$$.byteLength, 2);
11261
+ if (8192 > $buffer$jscomp$58$$.byteLength) {
11212
11262
  var $buf32$$ = new Int32Array(2048);
11213
- (new Uint8Array($buf32$$.buffer)).set(new Uint8Array($buffer$jscomp$56$$));
11263
+ (new Uint8Array($buf32$$.buffer)).set(new Uint8Array($buffer$jscomp$58$$));
11214
11264
  } else {
11215
- $buf32$$ = new Int32Array($buffer$jscomp$56$$, 0, 2048);
11265
+ $buf32$$ = new Int32Array($buffer$jscomp$58$$, 0, 2048);
11216
11266
  }
11217
11267
  for (var $offset$jscomp$81$$ = 0; 8192 > $offset$jscomp$81$$; $offset$jscomp$81$$ += 4) {
11218
11268
  if (464367618 === $buf32$$[$offset$jscomp$81$$ >> 2]) {
@@ -11232,18 +11282,18 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11232
11282
  }, function() {
11233
11283
  return 0;
11234
11284
  }, function() {
11235
- var $i$jscomp$104_multiboot_data$$ = 31860, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ = 0;
11236
- $cmdline$jscomp$1$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ |= 4, $cpu$jscomp$28$$.write32(31760, $i$jscomp$104_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$28$$.write_blob($cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$, $i$jscomp$104_multiboot_data$$), $i$jscomp$104_multiboot_data$$ += $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$.length);
11285
+ var $i$jscomp$102_multiboot_data$$ = 31860, $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ = 0;
11286
+ $cmdline$jscomp$1$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ |= 4, $cpu$jscomp$28$$.write32(31760, $i$jscomp$102_multiboot_data$$), $cmdline$jscomp$1$$ += "\x00", $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ = (new TextEncoder).encode($cmdline$jscomp$1$$), $cpu$jscomp$28$$.write_blob($cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$, $i$jscomp$102_multiboot_data$$), $i$jscomp$102_multiboot_data$$ += $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$.length);
11237
11287
  if ($flags$jscomp$16$$ & 2) {
11238
11288
  $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ |= 64;
11239
11289
  $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ = 0;
11240
11290
  $cpu$jscomp$28$$.write32(31788, 0);
11241
- $cpu$jscomp$28$$.write32(31792, $i$jscomp$104_multiboot_data$$);
11291
+ $cpu$jscomp$28$$.write32(31792, $i$jscomp$102_multiboot_data$$);
11242
11292
  var $start$jscomp$42_view$jscomp$inline_322$$ = 0;
11243
11293
  let $was_memory$$ = !1;
11244
11294
  for (let $addr$jscomp$58$$ = 0; 4294967296 > $addr$jscomp$58$$; $addr$jscomp$58$$ += 131072) {
11245
- $was_memory$$ && void 0 !== $cpu$jscomp$28$$.memory_map_read8[$addr$jscomp$58$$ >>> 17] ? ($cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$, 20), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 4, $start$jscomp$42_view$jscomp$inline_322$$), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 8, 0), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 12, $addr$jscomp$58$$ - $start$jscomp$42_view$jscomp$inline_322$$), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ +
11246
- 16, 0), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 20, 1), $i$jscomp$104_multiboot_data$$ += 24, $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ += 24, $was_memory$$ = !1) : $was_memory$$ || void 0 !== $cpu$jscomp$28$$.memory_map_read8[$addr$jscomp$58$$ >>> 17] || ($start$jscomp$42_view$jscomp$inline_322$$ = $addr$jscomp$58$$, $was_memory$$ = !0);
11295
+ $was_memory$$ && void 0 !== $cpu$jscomp$28$$.memory_map_read8[$addr$jscomp$58$$ >>> 17] ? ($cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$, 20), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 4, $start$jscomp$42_view$jscomp$inline_322$$), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 8, 0), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 12, $addr$jscomp$58$$ - $start$jscomp$42_view$jscomp$inline_322$$), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ +
11296
+ 16, 0), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 20, 1), $i$jscomp$102_multiboot_data$$ += 24, $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ += 24, $was_memory$$ = !1) : $was_memory$$ || void 0 !== $cpu$jscomp$28$$.memory_map_read8[$addr$jscomp$58$$ >>> 17] || ($start$jscomp$42_view$jscomp$inline_322$$ = $addr$jscomp$58$$, $was_memory$$ = !0);
11247
11297
  }
11248
11298
  $dbg_assert$$module$src$log$$(!$was_memory$$, "top of 4GB shouldn't have memory");
11249
11299
  $cpu$jscomp$28$$.write32(31788, $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$);
@@ -11262,14 +11312,14 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11262
11312
  $dbg_assert$$module$src$log$$($JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$ <= $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$);
11263
11313
  $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$ = $offset$jscomp$81$$ - ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$ - $JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$);
11264
11314
  0 === $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ ? $cmdline_utf8_length$jscomp$32_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_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$), $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ - $JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$);
11265
- $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$ = new Uint8Array($buffer$jscomp$56$$, $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$, $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$);
11315
+ $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$ = new Uint8Array($buffer$jscomp$58$$, $blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$, $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$);
11266
11316
  $cpu$jscomp$28$$.write_blob($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$, $JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$);
11267
11317
  $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ |= 0;
11268
11318
  $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ = Math.max($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$, $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$);
11269
11319
  } else {
11270
11320
  if (1179403647 === $buf32$$[0]) {
11271
11321
  $dbg_log$$module$src$log$$("Multiboot image is in elf format", 2);
11272
- $start$jscomp$42_view$jscomp$inline_322$$ = new DataView($buffer$jscomp$56$$);
11322
+ $start$jscomp$42_view$jscomp$inline_322$$ = new DataView($buffer$jscomp$58$$);
11273
11323
  const [$header$jscomp$inline_323$$, $offset$jscomp$inline_324$$] = $read_struct$$module$src$elf$$($start$jscomp$42_view$jscomp$inline_322$$, $Header$$module$src$elf$$);
11274
11324
  console.assert(52 === $offset$jscomp$inline_324$$);
11275
11325
  for ($blob$jscomp$17_file_start_header_addr_key$jscomp$inline_327_sections_headers$jscomp$inline_326$$ of Object.keys($header$jscomp$inline_323$$)) {
@@ -11304,7 +11354,7 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11304
11354
  $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ = $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$.entry;
11305
11355
  for ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ of $JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$) {
11306
11356
  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$28$$.memory_size[0] ? ($load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz &&
11307
- ($JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$ = new Uint8Array($buffer$jscomp$56$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$28$$.write_blob($JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ =
11357
+ ($JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$ = new Uint8Array($buffer$jscomp$58$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.offset, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.filesz), $cpu$jscomp$28$$.write_blob($JSCompiler_object_inline_program_headers_392_blob$jscomp$18_load_addr_section$jscomp$inline_329$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.paddr)), $cmdline_utf8_length$jscomp$32_multiboot_mmap_count_top_of_load$$ =
11308
11358
  Math.max($cmdline_utf8_length$jscomp$32_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_325$$ ===
11309
11359
  $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$.entry && $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$.vaddr <= $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ && $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_325$$ && ($entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ =
11310
11360
  $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ - $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 ||
@@ -11316,17 +11366,17 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11316
11366
  $dbg_assert$$module$src$log$$(!1, "Not a bootable multiboot format");
11317
11367
  }
11318
11368
  }
11319
- $initrd$jscomp$2$$ && ($cpu$jscomp$28$$.write32(31764, 1), $cpu$jscomp$28$$.write32(31768, $i$jscomp$104_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $cmdline_utf8_length$jscomp$32_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 " +
11320
- $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 4, $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$),
11321
- $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 8, 0), $cpu$jscomp$28$$.write32($i$jscomp$104_multiboot_data$$ + 12, 0), $dbg_assert$$module$src$log$$($JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$ < $cpu$jscomp$28$$.memory_size[0]), $cpu$jscomp$28$$.write_blob(new Uint8Array($initrd$jscomp$2$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$));
11369
+ $initrd$jscomp$2$$ && ($cpu$jscomp$28$$.write32(31764, 1), $cpu$jscomp$28$$.write32(31768, $i$jscomp$102_multiboot_data$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ = $cmdline_utf8_length$jscomp$32_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 " +
11370
+ $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$ = $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$ + $initrd$jscomp$2$$.byteLength, $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$, $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 4, $JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$),
11371
+ $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 8, 0), $cpu$jscomp$28$$.write32($i$jscomp$102_multiboot_data$$ + 12, 0), $dbg_assert$$module$src$log$$($JSCompiler_object_inline_header_391_bss_end_addr_program$jscomp$inline_328_ramdisk_top$$ < $cpu$jscomp$28$$.memory_size[0]), $cpu$jscomp$28$$.write_blob(new Uint8Array($initrd$jscomp$2$$), $load_end_addr_program$jscomp$64_ramdisk_address$jscomp$1$$));
11322
11372
  $cpu$jscomp$28$$.reg32[3] = 31744;
11323
11373
  $cpu$jscomp$28$$.cr[0] = 1;
11324
11374
  $cpu$jscomp$28$$.protected_mode[0] = 1;
11325
11375
  $cpu$jscomp$28$$.flags[0] = 2;
11326
11376
  $cpu$jscomp$28$$.is_32[0] = 1;
11327
11377
  $cpu$jscomp$28$$.stack_size_32[0] = 1;
11328
- for ($i$jscomp$104_multiboot_data$$ = 0; 6 > $i$jscomp$104_multiboot_data$$; $i$jscomp$104_multiboot_data$$++) {
11329
- $cpu$jscomp$28$$.segment_is_null[$i$jscomp$104_multiboot_data$$] = 0, $cpu$jscomp$28$$.segment_offsets[$i$jscomp$104_multiboot_data$$] = 0, $cpu$jscomp$28$$.segment_limits[$i$jscomp$104_multiboot_data$$] = 4294967295, $cpu$jscomp$28$$.sreg[$i$jscomp$104_multiboot_data$$] = 45058;
11378
+ for ($i$jscomp$102_multiboot_data$$ = 0; 6 > $i$jscomp$102_multiboot_data$$; $i$jscomp$102_multiboot_data$$++) {
11379
+ $cpu$jscomp$28$$.segment_is_null[$i$jscomp$102_multiboot_data$$] = 0, $cpu$jscomp$28$$.segment_offsets[$i$jscomp$102_multiboot_data$$] = 0, $cpu$jscomp$28$$.segment_limits[$i$jscomp$102_multiboot_data$$] = 4294967295, $cpu$jscomp$28$$.sreg[$i$jscomp$102_multiboot_data$$] = 45058;
11330
11380
  }
11331
11381
  $cpu$jscomp$28$$.instruction_pointer[0] = $cpu$jscomp$28$$.get_seg_cs() + $entry_addr_entrypoint_info$jscomp$1_program_headers$jscomp$inline_325$$ | 0;
11332
11382
  $cpu$jscomp$28$$.update_state_flags();
@@ -11342,26 +11392,26 @@ $CPU$$module$src$cpu$$.prototype.load_multiboot_option_rom = function($buffer$js
11342
11392
  }, function() {
11343
11393
  }, function() {
11344
11394
  });
11345
- for (let $i$jscomp$105$$ = 0; 15 >= $i$jscomp$105$$; $i$jscomp$105$$++) {
11395
+ for (let $i$jscomp$103$$ = 0; 15 >= $i$jscomp$103$$; $i$jscomp$103$$++) {
11346
11396
  function $handle_write$$($value$jscomp$198$$) {
11347
- $dbg_log$$module$src$log$$("kvm-unit-test: Set irq " + $h$$module$src$lib$$($i$jscomp$105$$) + " to " + $h$$module$src$lib$$($value$jscomp$198$$, 2));
11348
- $value$jscomp$198$$ ? this.device_raise_irq($i$jscomp$105$$) : this.device_lower_irq($i$jscomp$105$$);
11397
+ $dbg_log$$module$src$log$$("kvm-unit-test: Set irq " + $h$$module$src$lib$$($i$jscomp$103$$) + " to " + $h$$module$src$lib$$($value$jscomp$198$$, 2));
11398
+ $value$jscomp$198$$ ? this.device_raise_irq($i$jscomp$103$$) : this.device_lower_irq($i$jscomp$103$$);
11349
11399
  }
11350
- this.io.register_write(8192 + $i$jscomp$105$$, this, $handle_write$$, $handle_write$$, $handle_write$$);
11400
+ this.io.register_write(8192 + $i$jscomp$103$$, this, $handle_write$$, $handle_write$$, $handle_write$$);
11351
11401
  }
11352
11402
  const $data8$jscomp$1$$ = new Uint8Array(512);
11353
11403
  (new Uint16Array($data8$jscomp$1$$.buffer))[0] = 43605;
11354
11404
  $data8$jscomp$1$$[2] = 1;
11355
- var $checksum_index$jscomp$1_i$jscomp$103$$ = 3;
11356
- $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$103$$++] = 102;
11357
- $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$103$$++] = 229;
11358
- $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$103$$++] = 244;
11359
- $dbg_assert$$module$src$log$$(512 > $checksum_index$jscomp$1_i$jscomp$103$$);
11360
- let $rom_checksum$$ = $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$103$$] = 0;
11361
- for (let $i$jscomp$106$$ = 0; $i$jscomp$106$$ < $data8$jscomp$1$$.length; $i$jscomp$106$$++) {
11362
- $rom_checksum$$ += $data8$jscomp$1$$[$i$jscomp$106$$];
11363
- }
11364
- $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$103$$] = -$rom_checksum$$;
11405
+ var $checksum_index$jscomp$1_i$jscomp$101$$ = 3;
11406
+ $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$101$$++] = 102;
11407
+ $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$101$$++] = 229;
11408
+ $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$101$$++] = 244;
11409
+ $dbg_assert$$module$src$log$$(512 > $checksum_index$jscomp$1_i$jscomp$101$$);
11410
+ let $rom_checksum$$ = $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$101$$] = 0;
11411
+ for (let $i$jscomp$104$$ = 0; $i$jscomp$104$$ < $data8$jscomp$1$$.length; $i$jscomp$104$$++) {
11412
+ $rom_checksum$$ += $data8$jscomp$1$$[$i$jscomp$104$$];
11413
+ }
11414
+ $data8$jscomp$1$$[$checksum_index$jscomp$1_i$jscomp$101$$] = -$rom_checksum$$;
11365
11415
  return {name:"genroms/multiboot.bin", data:$data8$jscomp$1$$};
11366
11416
  }
11367
11417
  $dbg_log$$module$src$log$$("Multiboot header not found", 2);
@@ -11424,8 +11474,8 @@ $CPU$$module$src$cpu$$.prototype.codegen_finalize = function($wasm_table_index$j
11424
11474
  const $code$jscomp$9$$ = new Uint8Array(this.wasm_memory.buffer, $ptr$jscomp$7$$, $len$jscomp$28$$);
11425
11475
  this.seen_code[$start$jscomp$44$$] = (this.seen_code[$start$jscomp$44$$] || 0) + 1;
11426
11476
  this.test_hook_did_generate_wasm && this.test_hook_did_generate_wasm($code$jscomp$9$$);
11427
- WebAssembly.instantiate($code$jscomp$9$$, {e:this.jit_imports}).then($result$jscomp$21$$ => {
11428
- this.wm.wasm_table.set($wasm_table_index$jscomp$2$$ + 1024, $result$jscomp$21$$.instance.exports.f);
11477
+ WebAssembly.instantiate($code$jscomp$9$$, {e:this.jit_imports}).then($result$jscomp$24$$ => {
11478
+ this.wm.wasm_table.set($wasm_table_index$jscomp$2$$ + 1024, $result$jscomp$24$$.instance.exports.f);
11429
11479
  this.codegen_finalize_finished($wasm_table_index$jscomp$2$$, $start$jscomp$44$$, $state_flags$jscomp$1$$);
11430
11480
  this.test_hook_did_finalize_wasm && this.test_hook_did_finalize_wasm($code$jscomp$9$$);
11431
11481
  }).catch($e$jscomp$47$$ => {
@@ -11444,27 +11494,27 @@ $CPU$$module$src$cpu$$.prototype.run_hardware_timers = function($acpi_enabled$$,
11444
11494
  $acpi_enabled$$ && ($acpi_time$$ = this.devices.acpi.timer($now$jscomp$15$$), $apic_time$$ = this.devices.apic.timer($now$jscomp$15$$));
11445
11495
  return Math.min($pit_time$$, $rtc_time$$, $acpi_time$$, $apic_time$$);
11446
11496
  };
11447
- $CPU$$module$src$cpu$$.prototype.device_raise_irq = function($i$jscomp$111$$) {
11497
+ $CPU$$module$src$cpu$$.prototype.device_raise_irq = function($i$jscomp$109$$) {
11448
11498
  $dbg_assert$$module$src$log$$(1 === arguments.length);
11449
- this.pic_set_irq($i$jscomp$111$$);
11450
- this.devices.ioapic && this.devices.ioapic.set_irq($i$jscomp$111$$);
11499
+ this.pic_set_irq($i$jscomp$109$$);
11500
+ this.devices.ioapic && this.devices.ioapic.set_irq($i$jscomp$109$$);
11451
11501
  };
11452
- $CPU$$module$src$cpu$$.prototype.device_lower_irq = function($i$jscomp$112$$) {
11453
- this.pic_clear_irq($i$jscomp$112$$);
11454
- this.devices.ioapic && this.devices.ioapic.clear_irq($i$jscomp$112$$);
11502
+ $CPU$$module$src$cpu$$.prototype.device_lower_irq = function($i$jscomp$110$$) {
11503
+ this.pic_clear_irq($i$jscomp$110$$);
11504
+ this.devices.ioapic && this.devices.ioapic.clear_irq($i$jscomp$110$$);
11455
11505
  };
11456
11506
  $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11457
11507
  function $get_state$$($where$jscomp$2$$) {
11458
- for (var $mode$jscomp$25$$ = $cpu$jscomp$29$$.protected_mode[0] ? "prot" : "real", $flags$jscomp$17$$ = $cpu$jscomp$29$$.get_eflags(), $iopl$$ = $cpu$jscomp$29$$.getiopl(), $cpl$$ = $cpu$jscomp$29$$.cpl[0], $cs_eip$$ = $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[1], 4) + ":" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_real_eip() >>> 0, 8), $ss_esp$$ = $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[2], 4) + ":" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[0] >>> 0, 8), $op_size$$ = $cpu$jscomp$29$$.is_32[0] ?
11459
- "32" : "16", $if_$$ = $cpu$jscomp$29$$.flags[0] & 512 ? 1 : 0, $flag_names$$ = {[1]:"c", [4]:"p", [16]:"a", [64]:"z", [128]:"s", [256]:"t", [512]:"i", [1024]:"d", [2048]:"o", }, $flag_string$$ = "", $i$jscomp$114$$ = 0; 16 > $i$jscomp$114$$; $i$jscomp$114$$++) {
11460
- $flag_names$$[1 << $i$jscomp$114$$] && ($flag_string$$ = $flags$jscomp$17$$ & 1 << $i$jscomp$114$$ ? $flag_string$$ + $flag_names$$[1 << $i$jscomp$114$$] : $flag_string$$ + " ");
11508
+ for (var $mode$jscomp$24$$ = $cpu$jscomp$29$$.protected_mode[0] ? "prot" : "real", $flags$jscomp$17$$ = $cpu$jscomp$29$$.get_eflags(), $iopl$$ = $cpu$jscomp$29$$.getiopl(), $cpl$$ = $cpu$jscomp$29$$.cpl[0], $cs_eip$$ = $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[1], 4) + ":" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_real_eip() >>> 0, 8), $ss_esp$$ = $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[2], 4) + ":" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[0] >>> 0, 8), $op_size$$ = $cpu$jscomp$29$$.is_32[0] ?
11509
+ "32" : "16", $if_$$ = $cpu$jscomp$29$$.flags[0] & 512 ? 1 : 0, $flag_names$$ = {[1]:"c", [4]:"p", [16]:"a", [64]:"z", [128]:"s", [256]:"t", [512]:"i", [1024]:"d", [2048]:"o", }, $flag_string$$ = "", $i$jscomp$112$$ = 0; 16 > $i$jscomp$112$$; $i$jscomp$112$$++) {
11510
+ $flag_names$$[1 << $i$jscomp$112$$] && ($flag_string$$ = $flags$jscomp$17$$ & 1 << $i$jscomp$112$$ ? $flag_string$$ + $flag_names$$[1 << $i$jscomp$112$$] : $flag_string$$ + " ");
11461
11511
  }
11462
- return "mode=" + $mode$jscomp$25$$ + "/" + $op_size$$ + " paging=" + +(0 !== ($cpu$jscomp$29$$.cr[0] & -2147483648)) + " pae=" + +(0 !== ($cpu$jscomp$29$$.cr[4] & 32)) + " iopl=" + $iopl$$ + " cpl=" + $cpl$$ + " if=" + $if_$$ + " cs:eip=" + $cs_eip$$ + " cs_off=" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_seg_cs() >>> 0, 8) + " flgs=" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_eflags() >>> 0, 6) + " (" + $flag_string$$ + ") ss:esp=" + $ss_esp$$ + " ssize=" + +$cpu$jscomp$29$$.stack_size_32[0] +
11512
+ return "mode=" + $mode$jscomp$24$$ + "/" + $op_size$$ + " paging=" + +(0 !== ($cpu$jscomp$29$$.cr[0] & -2147483648)) + " pae=" + +(0 !== ($cpu$jscomp$29$$.cr[4] & 32)) + " iopl=" + $iopl$$ + " cpl=" + $cpl$$ + " if=" + $if_$$ + " cs:eip=" + $cs_eip$$ + " cs_off=" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_seg_cs() >>> 0, 8) + " flgs=" + $h$$module$src$lib$$($cpu$jscomp$29$$.get_eflags() >>> 0, 6) + " (" + $flag_string$$ + ") ss:esp=" + $ss_esp$$ + " ssize=" + +$cpu$jscomp$29$$.stack_size_32[0] +
11463
11513
  ($where$jscomp$2$$ ? " in " + $where$jscomp$2$$ : "");
11464
11514
  }
11465
11515
  function $get_regs_short$$() {
11466
- for (var $r32$jscomp$2$$ = {eax:0, ecx:1, edx:2, ebx:3, esp:4, ebp:5, esi:6, edi:7}, $r32_names$$ = "eax ecx edx ebx esp ebp esi edi".split(" "), $line1$$ = "", $line2$$ = "", $i$jscomp$115$$ = 0; 4 > $i$jscomp$115$$; $i$jscomp$115$$++) {
11467
- $line1$$ += $r32_names$$[$i$jscomp$115$$] + "=" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[$r32$jscomp$2$$[$r32_names$$[$i$jscomp$115$$]]] >>> 0, 8) + " ", $line2$$ += $r32_names$$[$i$jscomp$115$$ + 4] + "=" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[$r32$jscomp$2$$[$r32_names$$[$i$jscomp$115$$ + 4]]] >>> 0, 8) + " ";
11516
+ for (var $r32$jscomp$2$$ = {eax:0, ecx:1, edx:2, ebx:3, esp:4, ebp:5, esi:6, edi:7}, $r32_names$$ = "eax ecx edx ebx esp ebp esi edi".split(" "), $line1$$ = "", $line2$$ = "", $i$jscomp$113$$ = 0; 4 > $i$jscomp$113$$; $i$jscomp$113$$++) {
11517
+ $line1$$ += $r32_names$$[$i$jscomp$113$$] + "=" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[$r32$jscomp$2$$[$r32_names$$[$i$jscomp$113$$]]] >>> 0, 8) + " ", $line2$$ += $r32_names$$[$i$jscomp$113$$ + 4] + "=" + $h$$module$src$lib$$($cpu$jscomp$29$$.reg32[$r32$jscomp$2$$[$r32_names$$[$i$jscomp$113$$ + 4]]] >>> 0, 8) + " ";
11468
11518
  }
11469
11519
  $line1$$ += " ds=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[3], 4) + " es=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[0], 4) + " fs=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[4], 4);
11470
11520
  $line2$$ += " gs=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[5], 4) + " cs=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[1], 4) + " ss=" + $h$$module$src$lib$$($cpu$jscomp$29$$.sreg[2], 4);
@@ -11478,19 +11528,19 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11478
11528
  return {size:$size$jscomp$42$$, global:256 === ($dword_entry$$ & 256), accessed:32 === ($dword_entry$$ & 32), dirty:64 === ($dword_entry$$ & 64), cache_disable:16 === ($dword_entry$$ & 16), user:4 === ($dword_entry$$ & 4), read_write:2 === ($dword_entry$$ & 2), address:($size$jscomp$42$$ && !$is_directory$$ ? $dword_entry$$ & ($pae$$ ? 4292870144 : 4290772992) : $dword_entry$$ & 4294963200) >>> 0};
11479
11529
  }
11480
11530
  function $dump_page_directory$$($pd_addr$$, $pae$jscomp$2$$, $start$jscomp$48$$) {
11481
- for (var $n$jscomp$15$$ = $pae$jscomp$2$$ ? 512 : 1024, $entry_size$$ = $pae$jscomp$2$$ ? 8 : 4, $pd_shift$$ = $pae$jscomp$2$$ ? 21 : 22, $i$jscomp$119$$ = 0; $i$jscomp$119$$ < $n$jscomp$15$$; $i$jscomp$119$$++) {
11482
- var $dword$jscomp$4_flags$jscomp$19$$ = $cpu$jscomp$29$$.read32s($pd_addr$$ + $i$jscomp$119$$ * $entry_size$$), $entry$jscomp$13$$ = $load_page_entry$$($dword$jscomp$4_flags$jscomp$19$$, $pae$jscomp$2$$, !0);
11531
+ for (var $n$jscomp$15$$ = $pae$jscomp$2$$ ? 512 : 1024, $entry_size$$ = $pae$jscomp$2$$ ? 8 : 4, $pd_shift$$ = $pae$jscomp$2$$ ? 21 : 22, $i$jscomp$117$$ = 0; $i$jscomp$117$$ < $n$jscomp$15$$; $i$jscomp$117$$++) {
11532
+ var $dword$jscomp$4_flags$jscomp$19$$ = $cpu$jscomp$29$$.read32s($pd_addr$$ + $i$jscomp$117$$ * $entry_size$$), $entry$jscomp$13$$ = $load_page_entry$$($dword$jscomp$4_flags$jscomp$19$$, $pae$jscomp$2$$, !0);
11483
11533
  if ($entry$jscomp$13$$) {
11484
11534
  if ($dword$jscomp$4_flags$jscomp$19$$ = "", $dword$jscomp$4_flags$jscomp$19$$ += $entry$jscomp$13$$.size ? "S " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $entry$jscomp$13$$.accessed ? "A " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $entry$jscomp$13$$.cache_disable ? "Cd " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $entry$jscomp$13$$.user ? "U " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $entry$jscomp$13$$.read_write ? "Rw " : " ", $entry$jscomp$13$$.size) {
11485
- $dbg_log$$module$src$log$$("=== " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$119$$ << $pd_shift$$) >>> 0, 8) + " -> " + $h$$module$src$lib$$($entry$jscomp$13$$.address >>> 0, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$);
11535
+ $dbg_log$$module$src$log$$("=== " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$117$$ << $pd_shift$$) >>> 0, 8) + " -> " + $h$$module$src$lib$$($entry$jscomp$13$$.address >>> 0, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$);
11486
11536
  } else {
11487
- $dbg_log$$module$src$log$$("=== " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$119$$ << $pd_shift$$) >>> 0, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$);
11537
+ $dbg_log$$module$src$log$$("=== " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$117$$ << $pd_shift$$) >>> 0, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$);
11488
11538
  for (var $j$jscomp$11$$ = 0; $j$jscomp$11$$ < $n$jscomp$15$$; $j$jscomp$11$$++) {
11489
11539
  var $sub_addr$$ = $entry$jscomp$13$$.address + $j$jscomp$11$$ * $entry_size$$;
11490
11540
  $dword$jscomp$4_flags$jscomp$19$$ = $cpu$jscomp$29$$.read32s($sub_addr$$);
11491
11541
  var $subentry$$ = $load_page_entry$$($dword$jscomp$4_flags$jscomp$19$$, $pae$jscomp$2$$, !1);
11492
11542
  $subentry$$ && ($dword$jscomp$4_flags$jscomp$19$$ = "", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.cache_disable ? "Cd " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.user ? "U " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.read_write ? "Rw " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.global ? "G " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.accessed ? "A " : " ", $dword$jscomp$4_flags$jscomp$19$$ += $subentry$$.dirty ? "Di " :
11493
- " ", $dbg_log$$module$src$log$$("# " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$119$$ << $pd_shift$$ | $j$jscomp$11$$ << 12) >>> 0, 8) + " -> " + $h$$module$src$lib$$($subentry$$.address, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$ + " (at " + $h$$module$src$lib$$($sub_addr$$, 8) + ")"));
11543
+ " ", $dbg_log$$module$src$log$$("# " + $h$$module$src$lib$$($start$jscomp$48$$ + ($i$jscomp$117$$ << $pd_shift$$ | $j$jscomp$11$$ << 12) >>> 0, 8) + " -> " + $h$$module$src$lib$$($subentry$$.address, 8) + " | " + $dword$jscomp$4_flags$jscomp$19$$ + " (at " + $h$$module$src$lib$$($sub_addr$$, 8) + ")"));
11494
11544
  }
11495
11545
  }
11496
11546
  }
@@ -11518,25 +11568,25 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11518
11568
  $debug$$.dump_state = function($where$jscomp$3$$) {
11519
11569
  $dbg_log$$module$src$log$$($get_state$$($where$jscomp$3$$), 2);
11520
11570
  };
11521
- $debug$$.dump_stack = function($i$jscomp$113_start$jscomp$47$$, $end$jscomp$26$$) {
11571
+ $debug$$.dump_stack = function($i$jscomp$111_start$jscomp$47$$, $end$jscomp$26$$) {
11522
11572
  var $esp$$ = $cpu$jscomp$29$$.reg32[4];
11523
11573
  $dbg_log$$module$src$log$$("========= STACK ==========");
11524
- if ($end$jscomp$26$$ >= $i$jscomp$113_start$jscomp$47$$ || void 0 === $end$jscomp$26$$) {
11525
- $i$jscomp$113_start$jscomp$47$$ = 5, $end$jscomp$26$$ = -5;
11574
+ if ($end$jscomp$26$$ >= $i$jscomp$111_start$jscomp$47$$ || void 0 === $end$jscomp$26$$) {
11575
+ $i$jscomp$111_start$jscomp$47$$ = 5, $end$jscomp$26$$ = -5;
11526
11576
  }
11527
- for (; $i$jscomp$113_start$jscomp$47$$ > $end$jscomp$26$$; $i$jscomp$113_start$jscomp$47$$--) {
11577
+ for (; $i$jscomp$111_start$jscomp$47$$ > $end$jscomp$26$$; $i$jscomp$111_start$jscomp$47$$--) {
11528
11578
  var $line$jscomp$8$$ = " ";
11529
- $i$jscomp$113_start$jscomp$47$$ || ($line$jscomp$8$$ = "=> ");
11530
- $line$jscomp$8$$ += $h$$module$src$lib$$($i$jscomp$113_start$jscomp$47$$, 2) + " | ";
11531
- $dbg_log$$module$src$log$$($line$jscomp$8$$ + $h$$module$src$lib$$($esp$$ + 4 * $i$jscomp$113_start$jscomp$47$$, 8) + " | " + $h$$module$src$lib$$($cpu$jscomp$29$$.read32s($esp$$ + 4 * $i$jscomp$113_start$jscomp$47$$) >>> 0));
11579
+ $i$jscomp$111_start$jscomp$47$$ || ($line$jscomp$8$$ = "=> ");
11580
+ $line$jscomp$8$$ += $h$$module$src$lib$$($i$jscomp$111_start$jscomp$47$$, 2) + " | ";
11581
+ $dbg_log$$module$src$log$$($line$jscomp$8$$ + $h$$module$src$lib$$($esp$$ + 4 * $i$jscomp$111_start$jscomp$47$$, 8) + " | " + $h$$module$src$lib$$($cpu$jscomp$29$$.read32s($esp$$ + 4 * $i$jscomp$111_start$jscomp$47$$) >>> 0));
11532
11582
  }
11533
11583
  };
11534
11584
  $debug$$.dump_page_structures = function() {
11535
11585
  if ($cpu$jscomp$29$$.cr[4] & 32) {
11536
11586
  $dbg_log$$module$src$log$$("PAE enabled");
11537
- for (var $i$jscomp$118$$ = 0; 4 > $i$jscomp$118$$; $i$jscomp$118$$++) {
11538
- var $dword$jscomp$3$$ = $cpu$jscomp$29$$.read32s($cpu$jscomp$29$$.cr[3] + 8 * $i$jscomp$118$$);
11539
- $dword$jscomp$3$$ & 1 && $dump_page_directory$$($dword$jscomp$3$$ & 4294963200, !0, $i$jscomp$118$$ << 30);
11587
+ for (var $i$jscomp$116$$ = 0; 4 > $i$jscomp$116$$; $i$jscomp$116$$++) {
11588
+ var $dword$jscomp$3$$ = $cpu$jscomp$29$$.read32s($cpu$jscomp$29$$.cr[3] + 8 * $i$jscomp$116$$);
11589
+ $dword$jscomp$3$$ & 1 && $dump_page_directory$$($dword$jscomp$3$$ & 4294963200, !0, $i$jscomp$116$$ << 30);
11540
11590
  }
11541
11591
  } else {
11542
11592
  $dbg_log$$module$src$log$$("PAE disabled"), $dump_page_directory$$($cpu$jscomp$29$$.cr[3], !1, 0);
@@ -11544,12 +11594,12 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11544
11594
  };
11545
11595
  $debug$$.dump_gdt_ldt = function() {
11546
11596
  function $dump_table$$($addr$jscomp$63$$, $size$jscomp$41$$) {
11547
- for (var $i$jscomp$116$$ = 0; $i$jscomp$116$$ < $size$jscomp$41$$; $i$jscomp$116$$ += 8, $addr$jscomp$63$$ += 8) {
11597
+ for (var $i$jscomp$114$$ = 0; $i$jscomp$114$$ < $size$jscomp$41$$; $i$jscomp$114$$ += 8, $addr$jscomp$63$$ += 8) {
11548
11598
  var $base$jscomp$4$$ = $cpu$jscomp$29$$.read16($addr$jscomp$63$$ + 2) | $cpu$jscomp$29$$.read8($addr$jscomp$63$$ + 4) << 16 | $cpu$jscomp$29$$.read8($addr$jscomp$63$$ + 7) << 24, $limit$$ = $cpu$jscomp$29$$.read16($addr$jscomp$63$$) | ($cpu$jscomp$29$$.read8($addr$jscomp$63$$ + 6) & 15) << 16, $access$jscomp$1$$ = $cpu$jscomp$29$$.read8($addr$jscomp$63$$ + 5), $flags$jscomp$18$$ = $cpu$jscomp$29$$.read8($addr$jscomp$63$$ + 6) >> 4, $flags_str$$ = "", $dpl$$ = $access$jscomp$1$$ >> 5 & 3;
11549
11599
  $flags_str$$ = $access$jscomp$1$$ & 128 ? $flags_str$$ + " P " : $flags_str$$ + "NP ";
11550
11600
  $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);
11551
11601
  $flags$jscomp$18$$ & 8 && ($limit$$ = $limit$$ << 12 | 4095);
11552
- $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$116$$ & -8, 4) + " " + $h$$module$src$lib$$($base$jscomp$4$$ >>> 0, 8) + " (" + $h$$module$src$lib$$($limit$$ >>> 0, 8) + " bytes) " + $flags_str$$ + "; dpl = " + $dpl$$ + ", a = " + $access$jscomp$1$$.toString(2) + ", f = " + $flags$jscomp$18$$.toString(2));
11602
+ $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$114$$ & -8, 4) + " " + $h$$module$src$lib$$($base$jscomp$4$$ >>> 0, 8) + " (" + $h$$module$src$lib$$($limit$$ >>> 0, 8) + " bytes) " + $flags_str$$ + "; dpl = " + $dpl$$ + ", a = " + $access$jscomp$1$$.toString(2) + ", f = " + $flags$jscomp$18$$.toString(2));
11553
11603
  }
11554
11604
  }
11555
11605
  $dbg_log$$module$src$log$$("gdt: (len = " + $h$$module$src$lib$$($cpu$jscomp$29$$.gdtr_size[0]) + ")");
@@ -11558,13 +11608,13 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11558
11608
  $dump_table$$($cpu$jscomp$29$$.translate_address_system_read($cpu$jscomp$29$$.segment_offsets[7]), $cpu$jscomp$29$$.segment_limits[7]);
11559
11609
  };
11560
11610
  $debug$$.dump_idt = function() {
11561
- for (var $i$jscomp$117$$ = 0; $i$jscomp$117$$ < $cpu$jscomp$29$$.idtr_size[0]; $i$jscomp$117$$ += 8) {
11562
- var $addr$jscomp$64_type$jscomp$156$$ = $cpu$jscomp$29$$.translate_address_system_read($cpu$jscomp$29$$.idtr_offset[0] + $i$jscomp$117$$), $base$jscomp$5$$ = $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$) | $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$ + 6) << 16, $selector$jscomp$1$$ = $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$ + 2);
11611
+ for (var $i$jscomp$115$$ = 0; $i$jscomp$115$$ < $cpu$jscomp$29$$.idtr_size[0]; $i$jscomp$115$$ += 8) {
11612
+ var $addr$jscomp$64_type$jscomp$156$$ = $cpu$jscomp$29$$.translate_address_system_read($cpu$jscomp$29$$.idtr_offset[0] + $i$jscomp$115$$), $base$jscomp$5$$ = $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$) | $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$ + 6) << 16, $selector$jscomp$1$$ = $cpu$jscomp$29$$.read16($addr$jscomp$64_type$jscomp$156$$ + 2);
11563
11613
  $addr$jscomp$64_type$jscomp$156$$ = $cpu$jscomp$29$$.read8($addr$jscomp$64_type$jscomp$156$$ + 5);
11564
11614
  var $dpl$jscomp$1$$ = $addr$jscomp$64_type$jscomp$156$$ >> 5 & 3;
11565
11615
  var $line$jscomp$9$$ = 5 === ($addr$jscomp$64_type$jscomp$156$$ & 31) ? "task gate " : 14 === ($addr$jscomp$64_type$jscomp$156$$ & 31) ? "intr gate " : 15 === ($addr$jscomp$64_type$jscomp$156$$ & 31) ? "trap gate " : "invalid ";
11566
11616
  $line$jscomp$9$$ = $addr$jscomp$64_type$jscomp$156$$ & 128 ? $line$jscomp$9$$ + " P" : $line$jscomp$9$$ + "NP";
11567
- $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$117$$ >> 3, 4) + " " + $h$$module$src$lib$$($base$jscomp$5$$ >>> 0, 8) + ", " + $h$$module$src$lib$$($selector$jscomp$1$$, 4) + "; " + $line$jscomp$9$$ + "; dpl = " + $dpl$jscomp$1$$ + ", t = " + $addr$jscomp$64_type$jscomp$156$$.toString(2));
11617
+ $dbg_log$$module$src$log$$($h$$module$src$lib$$($i$jscomp$115$$ >> 3, 4) + " " + $h$$module$src$lib$$($base$jscomp$5$$ >>> 0, 8) + ", " + $h$$module$src$lib$$($selector$jscomp$1$$, 4) + "; " + $line$jscomp$9$$ + "; dpl = " + $dpl$jscomp$1$$ + ", t = " + $addr$jscomp$64_type$jscomp$156$$.toString(2));
11568
11618
  }
11569
11619
  };
11570
11620
  $debug$$.get_memory_dump = function($start$jscomp$49$$, $count$jscomp$70$$) {
@@ -11573,23 +11623,23 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11573
11623
  };
11574
11624
  $debug$$.memory_hex_dump = function($addr$jscomp$67$$, $length$jscomp$33$$) {
11575
11625
  $length$jscomp$33$$ = $length$jscomp$33$$ || 64;
11576
- for (var $line$jscomp$10$$, $byt$$, $i$jscomp$120$$ = 0; $i$jscomp$120$$ < $length$jscomp$33$$ >> 4; $i$jscomp$120$$++) {
11577
- $line$jscomp$10$$ = $h$$module$src$lib$$($addr$jscomp$67$$ + ($i$jscomp$120$$ << 4), 5) + " ";
11626
+ for (var $line$jscomp$10$$, $byt$$, $i$jscomp$118$$ = 0; $i$jscomp$118$$ < $length$jscomp$33$$ >> 4; $i$jscomp$118$$++) {
11627
+ $line$jscomp$10$$ = $h$$module$src$lib$$($addr$jscomp$67$$ + ($i$jscomp$118$$ << 4), 5) + " ";
11578
11628
  for (var $j$jscomp$12$$ = 0; 16 > $j$jscomp$12$$; $j$jscomp$12$$++) {
11579
- $byt$$ = $cpu$jscomp$29$$.read8($addr$jscomp$67$$ + ($i$jscomp$120$$ << 4) + $j$jscomp$12$$), $line$jscomp$10$$ += $h$$module$src$lib$$($byt$$, 2) + " ";
11629
+ $byt$$ = $cpu$jscomp$29$$.read8($addr$jscomp$67$$ + ($i$jscomp$118$$ << 4) + $j$jscomp$12$$), $line$jscomp$10$$ += $h$$module$src$lib$$($byt$$, 2) + " ";
11580
11630
  }
11581
11631
  $line$jscomp$10$$ += " ";
11582
11632
  for ($j$jscomp$12$$ = 0; 16 > $j$jscomp$12$$; $j$jscomp$12$$++) {
11583
- $byt$$ = $cpu$jscomp$29$$.read8($addr$jscomp$67$$ + ($i$jscomp$120$$ << 4) + $j$jscomp$12$$), $line$jscomp$10$$ += 33 > $byt$$ || 126 < $byt$$ ? "." : String.fromCharCode($byt$$);
11633
+ $byt$$ = $cpu$jscomp$29$$.read8($addr$jscomp$67$$ + ($i$jscomp$118$$ << 4) + $j$jscomp$12$$), $line$jscomp$10$$ += 33 > $byt$$ || 126 < $byt$$ ? "." : String.fromCharCode($byt$$);
11584
11634
  }
11585
11635
  $dbg_log$$module$src$log$$($line$jscomp$10$$);
11586
11636
  }
11587
11637
  };
11588
11638
  $debug$$.used_memory_dump = function() {
11589
- for (var $block_size$$ = $cpu$jscomp$29$$.memory_size[0] / 128 / 16 | 0, $row$jscomp$12$$, $i$jscomp$121$$ = 0; 16 > $i$jscomp$121$$; $i$jscomp$121$$++) {
11590
- $row$jscomp$12$$ = $h$$module$src$lib$$(128 * $i$jscomp$121$$ * $block_size$$, 8) + " | ";
11639
+ for (var $block_size$$ = $cpu$jscomp$29$$.memory_size[0] / 128 / 16 | 0, $row$jscomp$12$$, $i$jscomp$119$$ = 0; 16 > $i$jscomp$119$$; $i$jscomp$119$$++) {
11640
+ $row$jscomp$12$$ = $h$$module$src$lib$$(128 * $i$jscomp$119$$ * $block_size$$, 8) + " | ";
11591
11641
  for (var $j$jscomp$13$$ = 0; 128 > $j$jscomp$13$$; $j$jscomp$13$$++) {
11592
- $row$jscomp$12$$ += 0 < $cpu$jscomp$29$$.mem32s[(128 * $i$jscomp$121$$ + $j$jscomp$13$$) * $block_size$$] ? "X" : " ";
11642
+ $row$jscomp$12$$ += 0 < $cpu$jscomp$29$$.mem32s[(128 * $i$jscomp$119$$ + $j$jscomp$13$$) * $block_size$$] ? "X" : " ";
11593
11643
  }
11594
11644
  $dbg_log$$module$src$log$$($row$jscomp$12$$);
11595
11645
  }
@@ -11597,7 +11647,7 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11597
11647
  $debug$$.debug_interrupt = function() {
11598
11648
  };
11599
11649
  let $cs$jscomp$1$$, $capstone_decoder$$;
11600
- $debug$$.dump_code = function($is_32$jscomp$1$$, $buffer$jscomp$60$$, $start$jscomp$50$$) {
11650
+ $debug$$.dump_code = function($is_32$jscomp$1$$, $buffer$jscomp$62$$, $start$jscomp$50$$) {
11601
11651
  if (!$capstone_decoder$$) {
11602
11652
  if (void 0 === $cs$jscomp$1$$ && ($cs$jscomp$1$$ = "function" === typeof require ? require("./capstone-x86.min.js") : window.cs, void 0 === $cs$jscomp$1$$)) {
11603
11653
  $dbg_log$$module$src$log$$("Warning: Missing capstone library, disassembly not available");
@@ -11606,28 +11656,28 @@ $CPU$$module$src$cpu$$.prototype.debug_init = function() {
11606
11656
  $capstone_decoder$$ = [new $cs$jscomp$1$$.Capstone($cs$jscomp$1$$.ARCH_X86, $cs$jscomp$1$$.MODE_16), new $cs$jscomp$1$$.Capstone($cs$jscomp$1$$.ARCH_X86, $cs$jscomp$1$$.MODE_32), ];
11607
11657
  }
11608
11658
  try {
11609
- $capstone_decoder$$[$is_32$jscomp$1$$].disasm($buffer$jscomp$60$$, $start$jscomp$50$$).forEach(function($instr$$) {
11659
+ $capstone_decoder$$[$is_32$jscomp$1$$].disasm($buffer$jscomp$62$$, $start$jscomp$50$$).forEach(function($instr$$) {
11610
11660
  $dbg_log$$module$src$log$$($h$$module$src$lib$$($instr$$.address >>> 0) + ": " + $pads$$module$src$lib$$($instr$$.bytes.map($x$jscomp$124$$ => $h$$module$src$lib$$($x$jscomp$124$$, 2).slice(-2)).join(" "), 20) + " " + $instr$$.mnemonic + " " + $instr$$.op_str);
11611
11661
  }), $dbg_log$$module$src$log$$("");
11612
11662
  } catch ($e$jscomp$48$$) {
11613
- $dbg_log$$module$src$log$$("Could not disassemble: " + Array.from($buffer$jscomp$60$$).map($x$jscomp$125$$ => $h$$module$src$lib$$($x$jscomp$125$$, 2)).join(" "));
11663
+ $dbg_log$$module$src$log$$("Could not disassemble: " + Array.from($buffer$jscomp$62$$).map($x$jscomp$125$$ => $h$$module$src$lib$$($x$jscomp$125$$, 2)).join(" "));
11614
11664
  }
11615
11665
  };
11616
11666
  let $wabt$$;
11617
- $debug$$.dump_wasm = function($buffer$jscomp$61$$) {
11667
+ $debug$$.dump_wasm = function($buffer$jscomp$63$$) {
11618
11668
  if (void 0 === $wabt$$ && ($wabt$$ = "function" === typeof require ? require("./libwabt.cjs") : new window.WabtModule, void 0 === $wabt$$)) {
11619
11669
  $dbg_log$$module$src$log$$("Warning: Missing libwabt, wasm dump not available");
11620
11670
  return;
11621
11671
  }
11622
- $buffer$jscomp$61$$ = $buffer$jscomp$61$$.slice();
11672
+ $buffer$jscomp$63$$ = $buffer$jscomp$63$$.slice();
11623
11673
  try {
11624
- var $module$jscomp$2$$ = $wabt$$.readWasm($buffer$jscomp$61$$, {readDebugNames:!1});
11674
+ var $module$jscomp$2$$ = $wabt$$.readWasm($buffer$jscomp$63$$, {readDebugNames:!1});
11625
11675
  $module$jscomp$2$$.generateNames();
11626
11676
  $module$jscomp$2$$.applyNames();
11627
- const $result$jscomp$22$$ = $module$jscomp$2$$.toText({foldExprs:!0, inlineExport:!0});
11628
- $dbg_log$$module$src$log$$($result$jscomp$22$$);
11677
+ const $result$jscomp$25$$ = $module$jscomp$2$$.toText({foldExprs:!0, inlineExport:!0});
11678
+ $dbg_log$$module$src$log$$($result$jscomp$25$$);
11629
11679
  } catch ($e$jscomp$49$$) {
11630
- var $blob$jscomp$inline_170$$ = new Blob([$buffer$jscomp$61$$]), $a$jscomp$inline_171$$ = document.createElement("a");
11680
+ var $blob$jscomp$inline_170$$ = new Blob([$buffer$jscomp$63$$]), $a$jscomp$inline_171$$ = document.createElement("a");
11631
11681
  $a$jscomp$inline_171$$.download = "failed.wasm";
11632
11682
  $a$jscomp$inline_171$$.href = window.URL.createObjectURL($blob$jscomp$inline_170$$);
11633
11683
  $a$jscomp$inline_171$$.dataset.downloadurl = ["application/octet-stream", $a$jscomp$inline_171$$.download, $a$jscomp$inline_171$$.href].join(":");
@@ -11740,8 +11790,8 @@ $VirtIO$$module$src$virtio$$.prototype.create_notification_capability = function
11740
11790
  const $notify_struct$$ = [];
11741
11791
  let $notify_off_multiplier$$;
11742
11792
  $options$jscomp$44$$.single_handler ? ($dbg_assert$$module$src$log$$(1 === $options$jscomp$44$$.handlers.length, "VirtIO device<" + this.name + "> too many notify handlers specified: expected single handler"), $notify_off_multiplier$$ = 0) : $notify_off_multiplier$$ = 2;
11743
- for (const [$i$jscomp$122$$, $handler$jscomp$15$$] of $options$jscomp$44$$.handlers.entries()) {
11744
- $notify_struct$$.push({bytes:2, name:"notify" + $i$jscomp$122$$, read:() => 65535, write:$handler$jscomp$15$$ || (() => {
11793
+ for (const [$i$jscomp$120$$, $handler$jscomp$15$$] of $options$jscomp$44$$.handlers.entries()) {
11794
+ $notify_struct$$.push({bytes:2, name:"notify" + $i$jscomp$120$$, read:() => 65535, write:$handler$jscomp$15$$ || (() => {
11745
11795
  }), });
11746
11796
  }
11747
11797
  return {type:2, bar:1, port:$options$jscomp$44$$.initial_port, use_mmio:!1, offset:0, extra:new Uint8Array([$notify_off_multiplier$$ & 255, $notify_off_multiplier$$ >> 8 & 255, $notify_off_multiplier$$ >> 16 & 255, $notify_off_multiplier$$ >> 24, ]), struct:$notify_struct$$, };
@@ -11788,8 +11838,8 @@ $VirtIO$$module$src$virtio$$.prototype.init_capabilities = function($cap_len$jsc
11788
11838
  this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$ + 13] = $bar_size_shim_read8_on_16$$ >>> 8 & 255;
11789
11839
  this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$ + 14] = $bar_size_shim_read8_on_16$$ >>> 16 & 255;
11790
11840
  this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$ + 15] = $bar_size_shim_read8_on_16$$ >>> 24;
11791
- for (const [$i$jscomp$123$$, $extra_byte$$] of $cap$jscomp$2$$.extra.entries()) {
11792
- this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$ + 16 + $i$jscomp$123$$] = $extra_byte$$;
11841
+ for (const [$i$jscomp$121$$, $extra_byte$$] of $cap$jscomp$2$$.extra.entries()) {
11842
+ this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$ + 16 + $i$jscomp$121$$] = $extra_byte$$;
11793
11843
  }
11794
11844
  $bar_offset_cap_ptr_port$jscomp$10$$ = 16 + 4 * $cap$jscomp$2$$.bar;
11795
11845
  this.pci_space[$bar_offset_cap_ptr_port$jscomp$10$$] = $cap$jscomp$2$$.port & 254 | !$cap$jscomp$2$$.use_mmio;
@@ -11867,33 +11917,33 @@ $VirtIO$$module$src$virtio$$.prototype.init_capabilities = function($cap_len$jsc
11867
11917
  this.pci_space[$cap_next$$ + 19] = 0;
11868
11918
  };
11869
11919
  $VirtIO$$module$src$virtio$$.prototype.get_state = function() {
11870
- let $state$jscomp$60$$ = [];
11871
- $state$jscomp$60$$[0] = this.device_feature_select;
11872
- $state$jscomp$60$$[1] = this.driver_feature_select;
11873
- $state$jscomp$60$$[2] = this.device_feature;
11874
- $state$jscomp$60$$[3] = this.driver_feature;
11875
- $state$jscomp$60$$[4] = this.features_ok;
11876
- $state$jscomp$60$$[5] = this.device_status;
11877
- $state$jscomp$60$$[6] = this.config_has_changed;
11878
- $state$jscomp$60$$[7] = this.config_generation;
11879
- $state$jscomp$60$$[8] = this.isr_status;
11880
- $state$jscomp$60$$[9] = this.queue_select;
11881
- return $state$jscomp$60$$ = $state$jscomp$60$$.concat(this.queues);
11882
- };
11883
- $VirtIO$$module$src$virtio$$.prototype.set_state = function($state$jscomp$61$$) {
11884
- this.device_feature_select = $state$jscomp$61$$[0];
11885
- this.driver_feature_select = $state$jscomp$61$$[1];
11886
- this.device_feature = $state$jscomp$61$$[2];
11887
- this.driver_feature = $state$jscomp$61$$[3];
11888
- this.features_ok = $state$jscomp$61$$[4];
11889
- this.device_status = $state$jscomp$61$$[5];
11890
- this.config_has_changed = $state$jscomp$61$$[6];
11891
- this.config_generation = $state$jscomp$61$$[7];
11892
- this.isr_status = $state$jscomp$61$$[8];
11893
- this.queue_select = $state$jscomp$61$$[9];
11894
- let $i$jscomp$124$$ = 0;
11895
- for (const $queue$jscomp$12$$ of $state$jscomp$61$$.slice(10)) {
11896
- this.queues[$i$jscomp$124$$].set_state($queue$jscomp$12$$), $i$jscomp$124$$++;
11920
+ let $state$jscomp$62$$ = [];
11921
+ $state$jscomp$62$$[0] = this.device_feature_select;
11922
+ $state$jscomp$62$$[1] = this.driver_feature_select;
11923
+ $state$jscomp$62$$[2] = this.device_feature;
11924
+ $state$jscomp$62$$[3] = this.driver_feature;
11925
+ $state$jscomp$62$$[4] = this.features_ok;
11926
+ $state$jscomp$62$$[5] = this.device_status;
11927
+ $state$jscomp$62$$[6] = this.config_has_changed;
11928
+ $state$jscomp$62$$[7] = this.config_generation;
11929
+ $state$jscomp$62$$[8] = this.isr_status;
11930
+ $state$jscomp$62$$[9] = this.queue_select;
11931
+ return $state$jscomp$62$$ = $state$jscomp$62$$.concat(this.queues);
11932
+ };
11933
+ $VirtIO$$module$src$virtio$$.prototype.set_state = function($state$jscomp$63$$) {
11934
+ this.device_feature_select = $state$jscomp$63$$[0];
11935
+ this.driver_feature_select = $state$jscomp$63$$[1];
11936
+ this.device_feature = $state$jscomp$63$$[2];
11937
+ this.driver_feature = $state$jscomp$63$$[3];
11938
+ this.features_ok = $state$jscomp$63$$[4];
11939
+ this.device_status = $state$jscomp$63$$[5];
11940
+ this.config_has_changed = $state$jscomp$63$$[6];
11941
+ this.config_generation = $state$jscomp$63$$[7];
11942
+ this.isr_status = $state$jscomp$63$$[8];
11943
+ this.queue_select = $state$jscomp$63$$[9];
11944
+ let $i$jscomp$122$$ = 0;
11945
+ for (const $queue$jscomp$12$$ of $state$jscomp$63$$.slice(10)) {
11946
+ this.queues[$i$jscomp$122$$].set_state($queue$jscomp$12$$), $i$jscomp$122$$++;
11897
11947
  }
11898
11948
  this.queue_selected = this.queues[this.queue_select] || null;
11899
11949
  };
@@ -11946,31 +11996,31 @@ function $VirtQueue$$module$src$virtio$$($cpu$jscomp$31$$, $virtio$$, $options$j
11946
11996
  this.reset();
11947
11997
  }
11948
11998
  $VirtQueue$$module$src$virtio$$.prototype.get_state = function() {
11949
- const $state$jscomp$62$$ = [];
11950
- $state$jscomp$62$$[0] = this.size;
11951
- $state$jscomp$62$$[1] = this.size_supported;
11952
- $state$jscomp$62$$[2] = this.enabled;
11953
- $state$jscomp$62$$[3] = this.notify_offset;
11954
- $state$jscomp$62$$[4] = this.desc_addr;
11955
- $state$jscomp$62$$[5] = this.avail_addr;
11956
- $state$jscomp$62$$[6] = this.avail_last_idx;
11957
- $state$jscomp$62$$[7] = this.used_addr;
11958
- $state$jscomp$62$$[8] = this.num_staged_replies;
11959
- $state$jscomp$62$$[9] = 1;
11960
- return $state$jscomp$62$$;
11961
- };
11962
- $VirtQueue$$module$src$virtio$$.prototype.set_state = function($state$jscomp$63$$) {
11963
- this.size = $state$jscomp$63$$[0];
11964
- this.size_supported = $state$jscomp$63$$[1];
11965
- this.enabled = $state$jscomp$63$$[2];
11966
- this.notify_offset = $state$jscomp$63$$[3];
11967
- this.desc_addr = $state$jscomp$63$$[4];
11968
- this.avail_addr = $state$jscomp$63$$[5];
11969
- this.avail_last_idx = $state$jscomp$63$$[6];
11970
- this.used_addr = $state$jscomp$63$$[7];
11971
- this.num_staged_replies = $state$jscomp$63$$[8];
11999
+ const $state$jscomp$64$$ = [];
12000
+ $state$jscomp$64$$[0] = this.size;
12001
+ $state$jscomp$64$$[1] = this.size_supported;
12002
+ $state$jscomp$64$$[2] = this.enabled;
12003
+ $state$jscomp$64$$[3] = this.notify_offset;
12004
+ $state$jscomp$64$$[4] = this.desc_addr;
12005
+ $state$jscomp$64$$[5] = this.avail_addr;
12006
+ $state$jscomp$64$$[6] = this.avail_last_idx;
12007
+ $state$jscomp$64$$[7] = this.used_addr;
12008
+ $state$jscomp$64$$[8] = this.num_staged_replies;
12009
+ $state$jscomp$64$$[9] = 1;
12010
+ return $state$jscomp$64$$;
12011
+ };
12012
+ $VirtQueue$$module$src$virtio$$.prototype.set_state = function($state$jscomp$65$$) {
12013
+ this.size = $state$jscomp$65$$[0];
12014
+ this.size_supported = $state$jscomp$65$$[1];
12015
+ this.enabled = $state$jscomp$65$$[2];
12016
+ this.notify_offset = $state$jscomp$65$$[3];
12017
+ this.desc_addr = $state$jscomp$65$$[4];
12018
+ this.avail_addr = $state$jscomp$65$$[5];
12019
+ this.avail_last_idx = $state$jscomp$65$$[6];
12020
+ this.used_addr = $state$jscomp$65$$[7];
12021
+ this.num_staged_replies = $state$jscomp$65$$[8];
11972
12022
  this.mask = this.size - 1;
11973
- this.fix_wrapping = 1 !== $state$jscomp$63$$[9];
12023
+ this.fix_wrapping = 1 !== $state$jscomp$65$$[9];
11974
12024
  };
11975
12025
  $VirtQueue$$module$src$virtio$$.prototype.reset = function() {
11976
12026
  this.enabled = !1;
@@ -12033,8 +12083,8 @@ $VirtQueue$$module$src$virtio$$.prototype.notify_me_after = function($avail_even
12033
12083
  $avail_event_num_skipped_requests$$ = this.avail_get_idx() + $avail_event_num_skipped_requests$$ & 65535;
12034
12084
  this.used_set_avail_event($avail_event_num_skipped_requests$$);
12035
12085
  };
12036
- $VirtQueue$$module$src$virtio$$.prototype.get_descriptor = function($table_address$$, $i$jscomp$125$$) {
12037
- return {addr_low:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$125$$), addr_high:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$125$$ + 4), len:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$125$$ + 8), flags:this.cpu.read16($table_address$$ + 16 * $i$jscomp$125$$ + 12), next:this.cpu.read16($table_address$$ + 16 * $i$jscomp$125$$ + 14), };
12086
+ $VirtQueue$$module$src$virtio$$.prototype.get_descriptor = function($table_address$$, $i$jscomp$123$$) {
12087
+ return {addr_low:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$123$$), addr_high:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$123$$ + 4), len:this.cpu.read32s($table_address$$ + 16 * $i$jscomp$123$$ + 8), flags:this.cpu.read16($table_address$$ + 16 * $i$jscomp$123$$ + 12), next:this.cpu.read16($table_address$$ + 16 * $i$jscomp$123$$ + 14), };
12038
12088
  };
12039
12089
  $VirtQueue$$module$src$virtio$$.prototype.avail_get_flags = function() {
12040
12090
  return this.cpu.read16(this.avail_addr);
@@ -12042,8 +12092,8 @@ $VirtQueue$$module$src$virtio$$.prototype.avail_get_flags = function() {
12042
12092
  $VirtQueue$$module$src$virtio$$.prototype.avail_get_idx = function() {
12043
12093
  return this.cpu.read16(this.avail_addr + 2);
12044
12094
  };
12045
- $VirtQueue$$module$src$virtio$$.prototype.avail_get_entry = function($i$jscomp$126$$) {
12046
- return this.cpu.read16(this.avail_addr + 4 + 2 * ($i$jscomp$126$$ & this.mask));
12095
+ $VirtQueue$$module$src$virtio$$.prototype.avail_get_entry = function($i$jscomp$124$$) {
12096
+ return this.cpu.read16(this.avail_addr + 4 + 2 * ($i$jscomp$124$$ & this.mask));
12047
12097
  };
12048
12098
  $VirtQueue$$module$src$virtio$$.prototype.avail_get_used_event = function() {
12049
12099
  return this.cpu.read16(this.avail_addr + 4 + 2 * this.size);
@@ -12060,9 +12110,9 @@ $VirtQueue$$module$src$virtio$$.prototype.used_get_idx = function() {
12060
12110
  $VirtQueue$$module$src$virtio$$.prototype.used_set_idx = function($value$jscomp$202$$) {
12061
12111
  this.cpu.write16(this.used_addr + 2, $value$jscomp$202$$);
12062
12112
  };
12063
- $VirtQueue$$module$src$virtio$$.prototype.used_set_entry = function($i$jscomp$127$$, $desc_idx$jscomp$1$$, $length_written$$) {
12064
- this.cpu.write32(this.used_addr + 4 + 8 * $i$jscomp$127$$, $desc_idx$jscomp$1$$);
12065
- this.cpu.write32(this.used_addr + 8 + 8 * $i$jscomp$127$$, $length_written$$);
12113
+ $VirtQueue$$module$src$virtio$$.prototype.used_set_entry = function($i$jscomp$125$$, $desc_idx$jscomp$1$$, $length_written$$) {
12114
+ this.cpu.write32(this.used_addr + 4 + 8 * $i$jscomp$125$$, $desc_idx$jscomp$1$$);
12115
+ this.cpu.write32(this.used_addr + 8 + 8 * $i$jscomp$125$$, $length_written$$);
12066
12116
  };
12067
12117
  $VirtQueue$$module$src$virtio$$.prototype.used_set_avail_event = function($value$jscomp$203$$) {
12068
12118
  this.cpu.write16(this.used_addr + 4 + 8 * this.size, $value$jscomp$203$$);
@@ -12144,9 +12194,9 @@ $VirtQueueBufferChain$$module$src$virtio$$.prototype.set_next_blob = function($s
12144
12194
  return $src_offset$$;
12145
12195
  };
12146
12196
  const $P9_LOCK_TYPES$$module$lib$9p$$ = ["shared", "exclusive", "unlock"];
12147
- function $Virtio9p$$module$lib$9p$$($filesystem$jscomp$2$$, $cpu$jscomp$32$$, $bus$jscomp$28$$) {
12197
+ function $Virtio9p$$module$lib$9p$$($filesystem$jscomp$2$$, $cpu$jscomp$32$$, $bus$jscomp$27$$) {
12148
12198
  this.fs = $filesystem$jscomp$2$$;
12149
- this.bus = $bus$jscomp$28$$;
12199
+ this.bus = $bus$jscomp$27$$;
12150
12200
  this.configspace_tagname = [104, 111, 115, 116, 57, 112];
12151
12201
  this.configspace_taglen = this.configspace_tagname.length;
12152
12202
  this.VERSION = "9P2000.L";
@@ -12170,35 +12220,35 @@ function $Virtio9p$$module$lib$9p$$($filesystem$jscomp$2$$, $cpu$jscomp$32$$, $b
12170
12220
  this.virtqueue = this.virtio.queues[0];
12171
12221
  }
12172
12222
  $Virtio9p$$module$lib$9p$$.prototype.get_state = function() {
12173
- var $state$jscomp$64$$ = [];
12174
- $state$jscomp$64$$[0] = this.configspace_tagname;
12175
- $state$jscomp$64$$[1] = this.configspace_taglen;
12176
- $state$jscomp$64$$[2] = this.virtio;
12177
- $state$jscomp$64$$[3] = this.VERSION;
12178
- $state$jscomp$64$$[4] = this.BLOCKSIZE;
12179
- $state$jscomp$64$$[5] = this.msize;
12180
- $state$jscomp$64$$[6] = this.replybuffer;
12181
- $state$jscomp$64$$[7] = this.replybuffersize;
12182
- $state$jscomp$64$$[8] = this.fids.map(function($f$jscomp$8$$) {
12223
+ var $state$jscomp$66$$ = [];
12224
+ $state$jscomp$66$$[0] = this.configspace_tagname;
12225
+ $state$jscomp$66$$[1] = this.configspace_taglen;
12226
+ $state$jscomp$66$$[2] = this.virtio;
12227
+ $state$jscomp$66$$[3] = this.VERSION;
12228
+ $state$jscomp$66$$[4] = this.BLOCKSIZE;
12229
+ $state$jscomp$66$$[5] = this.msize;
12230
+ $state$jscomp$66$$[6] = this.replybuffer;
12231
+ $state$jscomp$66$$[7] = this.replybuffersize;
12232
+ $state$jscomp$66$$[8] = this.fids.map(function($f$jscomp$8$$) {
12183
12233
  return [$f$jscomp$8$$.inodeid, $f$jscomp$8$$.type, $f$jscomp$8$$.uid, $f$jscomp$8$$.dbg_name];
12184
12234
  });
12185
- $state$jscomp$64$$[9] = this.fs;
12186
- return $state$jscomp$64$$;
12235
+ $state$jscomp$66$$[9] = this.fs;
12236
+ return $state$jscomp$66$$;
12187
12237
  };
12188
- $Virtio9p$$module$lib$9p$$.prototype.set_state = function($state$jscomp$65$$) {
12189
- this.configspace_tagname = $state$jscomp$65$$[0];
12190
- this.configspace_taglen = $state$jscomp$65$$[1];
12191
- this.virtio.set_state($state$jscomp$65$$[2]);
12238
+ $Virtio9p$$module$lib$9p$$.prototype.set_state = function($state$jscomp$67$$) {
12239
+ this.configspace_tagname = $state$jscomp$67$$[0];
12240
+ this.configspace_taglen = $state$jscomp$67$$[1];
12241
+ this.virtio.set_state($state$jscomp$67$$[2]);
12192
12242
  this.virtqueue = this.virtio.queues[0];
12193
- this.VERSION = $state$jscomp$65$$[3];
12194
- this.BLOCKSIZE = $state$jscomp$65$$[4];
12195
- this.msize = $state$jscomp$65$$[5];
12196
- this.replybuffer = $state$jscomp$65$$[6];
12197
- this.replybuffersize = $state$jscomp$65$$[7];
12198
- this.fids = $state$jscomp$65$$[8].map(function($f$jscomp$9$$) {
12243
+ this.VERSION = $state$jscomp$67$$[3];
12244
+ this.BLOCKSIZE = $state$jscomp$67$$[4];
12245
+ this.msize = $state$jscomp$67$$[5];
12246
+ this.replybuffer = $state$jscomp$67$$[6];
12247
+ this.replybuffersize = $state$jscomp$67$$[7];
12248
+ this.fids = $state$jscomp$67$$[8].map(function($f$jscomp$9$$) {
12199
12249
  return {inodeid:$f$jscomp$9$$[0], type:$f$jscomp$9$$[1], uid:$f$jscomp$9$$[2], dbg_name:$f$jscomp$9$$[3]};
12200
12250
  });
12201
- this.fs.set_state($state$jscomp$65$$[9]);
12251
+ this.fs.set_state($state$jscomp$67$$[9]);
12202
12252
  };
12203
12253
  $Virtio9p$$module$lib$9p$$.prototype.Createfid = function($inodeid$jscomp$1$$, $type$jscomp$158$$, $uid$$, $dbg_name$$) {
12204
12254
  return {inodeid:$inodeid$jscomp$1$$, type:$type$jscomp$158$$, uid:$uid$$, dbg_name:$dbg_name$$};
@@ -12229,37 +12279,37 @@ $Virtio9p$$module$lib$9p$$.prototype.SendReply = function($bufchain$jscomp$20$$)
12229
12279
  this.virtqueue.flush_replies();
12230
12280
  };
12231
12281
  $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$jscomp$21$$) {
12232
- var $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = new Uint8Array($bufchain$jscomp$21$$.length_readable);
12233
- $bufchain$jscomp$21$$.get_next_blob($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12234
- var $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = {offset:0}, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "b", "h"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$), $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12235
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0], $id$jscomp$29$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1], $tag$jscomp$3$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12282
+ var $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = new Uint8Array($bufchain$jscomp$21$$.length_readable);
12283
+ $bufchain$jscomp$21$$.get_next_blob($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12284
+ var $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = {offset:0}, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "b", "h"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$), $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12285
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0], $id$jscomp$29$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1], $tag$jscomp$3$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12236
12286
  switch($id$jscomp$29$$) {
12237
12287
  case 8:
12238
12288
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = this.fs.GetTotalSize();
12239
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.GetSpace();
12240
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = [16914839];
12241
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] = this.BLOCKSIZE;
12242
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2] = Math.floor($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1]);
12243
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2] - Math.floor($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1]);
12244
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2] - Math.floor($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1]);
12245
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5] = this.fs.CountUsedInodes();
12246
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[6] = this.fs.CountFreeInodes();
12247
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[7] = 0;
12248
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[8] = 256;
12249
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$("wwddddddw".split(""), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, this.replybuffer, 7);
12289
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.GetSpace();
12290
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = [16914839];
12291
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] = this.BLOCKSIZE;
12292
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2] = Math.floor($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1]);
12293
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2] - Math.floor($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1]);
12294
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2] - Math.floor($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ / $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1]);
12295
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5] = this.fs.CountUsedInodes();
12296
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[6] = this.fs.CountFreeInodes();
12297
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[7] = 0;
12298
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[8] = 256;
12299
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$("wwddddddw".split(""), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, this.replybuffer, 7);
12250
12300
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12251
12301
  this.SendReply($bufchain$jscomp$21$$);
12252
12302
  break;
12253
12303
  case 112:
12254
12304
  case 12:
12255
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12256
- var $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12257
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12258
- $dbg_log$$module$src$log$$("[open] fid=" + $fid$jscomp$1$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$, 4194304);
12259
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fids[$fid$jscomp$1$$].inodeid;
12260
- var $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12305
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12306
+ var $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12307
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12308
+ $dbg_log$$module$src$log$$("[open] fid=" + $fid$jscomp$1$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$, 4194304);
12309
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fids[$fid$jscomp$1$$].inodeid;
12310
+ var $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12261
12311
  $dbg_log$$module$src$log$$("file open " + this.fids[$fid$jscomp$1$$].dbg_name, 4194304);
12262
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fs.OpenInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12312
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fs.OpenInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12263
12313
  this.fs.AddEvent(this.fids[$fid$jscomp$1$$].inodeid, function() {
12264
12314
  $dbg_log$$module$src$log$$("file opened " + this.fids[$fid$jscomp$1$$].dbg_name + " tag:" + $tag$jscomp$3$$, 4194304);
12265
12315
  var $req$jscomp$1$$ = [];
@@ -12271,17 +12321,17 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12271
12321
  }.bind(this));
12272
12322
  break;
12273
12323
  case 70:
12274
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12275
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12276
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12277
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12278
- $dbg_log$$module$src$log$$("[link] dfid=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, 4194304);
12279
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fs.Link(this.fids[$buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$].inodeid, this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12280
- if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$) {
12324
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12325
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12326
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12327
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12328
+ $dbg_log$$module$src$log$$("[link] dfid=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, 4194304);
12329
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fs.Link(this.fids[$buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$].inodeid, this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12330
+ if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$) {
12281
12331
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "";
12282
- -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Operation not permitted" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12283
- "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[link]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$));
12284
- this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$);
12332
+ -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Operation not permitted" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12333
+ "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[link]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$));
12334
+ this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$);
12285
12335
  this.SendReply($bufchain$jscomp$21$$);
12286
12336
  break;
12287
12337
  }
@@ -12289,42 +12339,42 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12289
12339
  this.SendReply($bufchain$jscomp$21$$);
12290
12340
  break;
12291
12341
  case 16:
12292
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "s", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12293
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12294
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12295
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12296
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12297
- $dbg_log$$module$src$log$$("[symlink] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", symgt=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$,
12342
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "s", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12343
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12344
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12345
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12346
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12347
+ $dbg_log$$module$src$log$$("[symlink] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", symgt=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$,
12298
12348
  4194304);
12299
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateSymlink($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12300
- $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12349
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateSymlink($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12350
+ $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12301
12351
  $inode$jscomp$37$$.uid = this.fids[$fid$jscomp$1$$].uid;
12302
- $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$;
12352
+ $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$;
12303
12353
  $Marshall$$module$lib$marshall$$(["Q"], [$inode$jscomp$37$$.qid], this.replybuffer, 7);
12304
12354
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 13);
12305
12355
  this.SendReply($bufchain$jscomp$21$$);
12306
12356
  break;
12307
12357
  case 18:
12308
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wswwww".split(""), $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12309
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12310
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12311
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12312
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12313
- var $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4];
12314
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5];
12315
- $dbg_log$$module$src$log$$("[mknod] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", major=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", minor=" + $count$jscomp$71_minor$jscomp$1_nwfid$$, 4194304);
12316
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateNode($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $count$jscomp$71_minor$jscomp$1_nwfid$$);
12317
- $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12318
- $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$;
12358
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wswwww".split(""), $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12359
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12360
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12361
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12362
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12363
+ var $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4];
12364
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5];
12365
+ $dbg_log$$module$src$log$$("[mknod] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", major=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", minor=" + $count$jscomp$71_minor$jscomp$1_nwfid$$, 4194304);
12366
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateNode($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $count$jscomp$71_minor$jscomp$1_nwfid$$);
12367
+ $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12368
+ $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$;
12319
12369
  $inode$jscomp$37$$.uid = this.fids[$fid$jscomp$1$$].uid;
12320
- $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$;
12370
+ $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$;
12321
12371
  $Marshall$$module$lib$marshall$$(["Q"], [$inode$jscomp$37$$.qid], this.replybuffer, 7);
12322
12372
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 13);
12323
12373
  this.SendReply($bufchain$jscomp$21$$);
12324
12374
  break;
12325
12375
  case 22:
12326
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12327
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12376
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12377
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12328
12378
  $inode$jscomp$37$$ = this.fs.GetInode(this.fids[$fid$jscomp$1$$].inodeid);
12329
12379
  $dbg_log$$module$src$log$$("[readlink] fid=" + $fid$jscomp$1$$ + " name=" + this.fids[$fid$jscomp$1$$].dbg_name + " target=" + $inode$jscomp$37$$.symlink, 4194304);
12330
12380
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$(["s"], [$inode$jscomp$37$$.symlink], this.replybuffer, 7);
@@ -12332,138 +12382,138 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12332
12382
  this.SendReply($bufchain$jscomp$21$$);
12333
12383
  break;
12334
12384
  case 72:
12335
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12336
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12337
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12338
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12339
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12340
- $dbg_log$$module$src$log$$("[mkdir] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, 4194304);
12341
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateDirectory($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid);
12342
- $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12343
- $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ | 16384;
12385
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12386
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12387
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12388
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12389
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12390
+ $dbg_log$$module$src$log$$("[mkdir] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, 4194304);
12391
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateDirectory($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid);
12392
+ $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12393
+ $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ | 16384;
12344
12394
  $inode$jscomp$37$$.uid = this.fids[$fid$jscomp$1$$].uid;
12345
- $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$;
12395
+ $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$;
12346
12396
  $Marshall$$module$lib$marshall$$(["Q"], [$inode$jscomp$37$$.qid], this.replybuffer, 7);
12347
12397
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 13);
12348
12398
  this.SendReply($bufchain$jscomp$21$$);
12349
12399
  break;
12350
12400
  case 14:
12351
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "w", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12352
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12353
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12354
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12355
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12356
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4];
12401
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "w", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12402
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12403
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12404
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12405
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12406
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4];
12357
12407
  this.bus.send("9p-create", [$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid]);
12358
- $dbg_log$$module$src$log$$("[create] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", flags=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$,
12408
+ $dbg_log$$module$src$log$$("[create] fid=" + $fid$jscomp$1$$ + ", name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + ", flags=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + ", mode=" + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ + ", gid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$,
12359
12409
  4194304);
12360
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateFile($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid);
12361
- this.fids[$fid$jscomp$1$$].inodeid = $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$;
12410
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.CreateFile($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, this.fids[$fid$jscomp$1$$].inodeid);
12411
+ this.fids[$fid$jscomp$1$$].inodeid = $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$;
12362
12412
  this.fids[$fid$jscomp$1$$].type = 1;
12363
12413
  this.fids[$fid$jscomp$1$$].dbg_name = $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$;
12364
- $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12414
+ $inode$jscomp$37$$ = this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12365
12415
  $inode$jscomp$37$$.uid = this.fids[$fid$jscomp$1$$].uid;
12366
- $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$;
12367
- $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ | 32768;
12416
+ $inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$;
12417
+ $inode$jscomp$37$$.mode = $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ | 32768;
12368
12418
  $Marshall$$module$lib$marshall$$(["Q", "w"], [$inode$jscomp$37$$.qid, this.msize - 24], this.replybuffer, 7);
12369
12419
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 17);
12370
12420
  this.SendReply($bufchain$jscomp$21$$);
12371
12421
  break;
12372
12422
  case 52:
12373
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wbwddws".split(""), $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12374
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12375
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12376
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = 0 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4] ? Infinity : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4];
12377
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = this.fs.DescribeLock($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3], $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12378
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[6]);
12423
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wbwddws".split(""), $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12424
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12425
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12426
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = 0 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4] ? Infinity : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4];
12427
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = this.fs.DescribeLock($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3], $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12428
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[6]);
12379
12429
  $dbg_log$$module$src$log$$("[lock] fid=" + $fid$jscomp$1$$ + ", type=" + $P9_LOCK_TYPES$$module$lib$9p$$[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.type] + ", start=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.start + ", length=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.length +
12380
12430
  ", proc_id=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.proc_id);
12381
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fs.Lock(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12382
- $Marshall$$module$lib$marshall$$(["b"], [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$], this.replybuffer, 7);
12431
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fs.Lock(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$);
12432
+ $Marshall$$module$lib$marshall$$(["b"], [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$], this.replybuffer, 7);
12383
12433
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 1);
12384
12434
  this.SendReply($bufchain$jscomp$21$$);
12385
12435
  break;
12386
12436
  case 54:
12387
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wbddws".split(""), $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12388
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12389
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = 0 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3] ? Infinity : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12390
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = this.fs.DescribeLock($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2], $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12391
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5]);
12437
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wbddws".split(""), $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12438
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12439
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = 0 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3] ? Infinity : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12440
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = this.fs.DescribeLock($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2], $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12441
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4], $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5]);
12392
12442
  $dbg_log$$module$src$log$$("[getlock] fid=" + $fid$jscomp$1$$ + ", type=" + $P9_LOCK_TYPES$$module$lib$9p$$[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.type] + ", start=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.start + ", length=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.length +
12393
12443
  ", proc_id=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.proc_id);
12394
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fs.GetLock(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12395
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ || ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.type =
12444
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fs.GetLock(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12445
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ || ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.type =
12396
12446
  2);
12397
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$(["b", "d", "d", "w", "s"], [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.type, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.start,
12398
- Infinity === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.length ? 0 : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.length, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.proc_id, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$.client_id],
12447
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$(["b", "d", "d", "w", "s"], [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.type, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.start,
12448
+ Infinity === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.length ? 0 : $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.length, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.proc_id, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$.client_id],
12399
12449
  this.replybuffer, 7);
12400
12450
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12401
12451
  this.SendReply($bufchain$jscomp$21$$);
12402
12452
  break;
12403
12453
  case 24:
12404
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12405
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12454
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12455
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12406
12456
  $inode$jscomp$37$$ = this.fs.GetInode(this.fids[$fid$jscomp$1$$].inodeid);
12407
- $dbg_log$$module$src$log$$("[getattr]: fid=" + $fid$jscomp$1$$ + " name=" + this.fids[$fid$jscomp$1$$].dbg_name + " request mask=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1], 4194304);
12457
+ $dbg_log$$module$src$log$$("[getattr]: fid=" + $fid$jscomp$1$$ + " name=" + this.fids[$fid$jscomp$1$$].dbg_name + " request mask=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1], 4194304);
12408
12458
  if (!$inode$jscomp$37$$ || 4 === $inode$jscomp$37$$.status) {
12409
12459
  $dbg_log$$module$src$log$$("getattr: unlinked", 4194304);
12410
12460
  this.SendError($tag$jscomp$3$$, "No such file or directory", 2);
12411
12461
  this.SendReply($bufchain$jscomp$21$$);
12412
12462
  break;
12413
12463
  }
12414
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12415
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] = $inode$jscomp$37$$.qid;
12416
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2] = $inode$jscomp$37$$.mode;
12417
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3] = $inode$jscomp$37$$.uid;
12418
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4] = $inode$jscomp$37$$.gid;
12419
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5] = $inode$jscomp$37$$.nlinks;
12420
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[6] = $inode$jscomp$37$$.major << 8 | $inode$jscomp$37$$.minor;
12421
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[7] = $inode$jscomp$37$$.size;
12422
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[8] = this.BLOCKSIZE;
12423
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[9] = Math.floor($inode$jscomp$37$$.size / 512 + 1);
12424
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[10] = $inode$jscomp$37$$.atime;
12425
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[11] = 0;
12426
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[12] = $inode$jscomp$37$$.mtime;
12427
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[13] = 0;
12428
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[14] = $inode$jscomp$37$$.ctime;
12429
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[15] = 0;
12430
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[16] = 0;
12431
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[17] = 0;
12432
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[18] = 0;
12433
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[19] = 0;
12434
- $Marshall$$module$lib$marshall$$("dQwwwddddddddddddddd".split(""), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, this.replybuffer, 7);
12464
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0] = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12465
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] = $inode$jscomp$37$$.qid;
12466
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2] = $inode$jscomp$37$$.mode;
12467
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3] = $inode$jscomp$37$$.uid;
12468
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4] = $inode$jscomp$37$$.gid;
12469
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5] = $inode$jscomp$37$$.nlinks;
12470
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[6] = $inode$jscomp$37$$.major << 8 | $inode$jscomp$37$$.minor;
12471
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[7] = $inode$jscomp$37$$.size;
12472
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[8] = this.BLOCKSIZE;
12473
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[9] = Math.floor($inode$jscomp$37$$.size / 512 + 1);
12474
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[10] = $inode$jscomp$37$$.atime;
12475
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[11] = 0;
12476
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[12] = $inode$jscomp$37$$.mtime;
12477
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[13] = 0;
12478
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[14] = $inode$jscomp$37$$.ctime;
12479
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[15] = 0;
12480
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[16] = 0;
12481
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[17] = 0;
12482
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[18] = 0;
12483
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[19] = 0;
12484
+ $Marshall$$module$lib$marshall$$("dQwwwddddddddddddddd".split(""), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, this.replybuffer, 7);
12435
12485
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 153);
12436
12486
  this.SendReply($bufchain$jscomp$21$$);
12437
12487
  break;
12438
12488
  case 26:
12439
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wwwwwddddd".split(""), $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12440
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12489
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$("wwwwwddddd".split(""), $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12490
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12441
12491
  $inode$jscomp$37$$ = this.fs.GetInode(this.fids[$fid$jscomp$1$$].inodeid);
12442
- $dbg_log$$module$src$log$$("[setattr]: fid=" + $fid$jscomp$1$$ + " request mask=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] + " name=" + this.fids[$fid$jscomp$1$$].dbg_name, 4194304);
12443
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 1 && ($inode$jscomp$37$$.mode = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2]);
12444
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 2 && ($inode$jscomp$37$$.uid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3]);
12445
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 4 && ($inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4]);
12446
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 16 && ($inode$jscomp$37$$.atime = Math.floor((new Date).getTime() / 1000));
12447
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 32 && ($inode$jscomp$37$$.mtime = Math.floor((new Date).getTime() / 1000));
12448
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 64 && ($inode$jscomp$37$$.ctime = Math.floor((new Date).getTime() / 1000));
12449
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 128 && ($inode$jscomp$37$$.atime = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[6]);
12450
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 256 && ($inode$jscomp$37$$.mtime = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[8]);
12451
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] & 8 && await this.fs.ChangeSize(this.fids[$fid$jscomp$1$$].inodeid, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[5]);
12492
+ $dbg_log$$module$src$log$$("[setattr]: fid=" + $fid$jscomp$1$$ + " request mask=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] + " name=" + this.fids[$fid$jscomp$1$$].dbg_name, 4194304);
12493
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 1 && ($inode$jscomp$37$$.mode = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2]);
12494
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 2 && ($inode$jscomp$37$$.uid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3]);
12495
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 4 && ($inode$jscomp$37$$.gid = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4]);
12496
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 16 && ($inode$jscomp$37$$.atime = Math.floor((new Date).getTime() / 1000));
12497
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 32 && ($inode$jscomp$37$$.mtime = Math.floor((new Date).getTime() / 1000));
12498
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 64 && ($inode$jscomp$37$$.ctime = Math.floor((new Date).getTime() / 1000));
12499
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 128 && ($inode$jscomp$37$$.atime = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[6]);
12500
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 256 && ($inode$jscomp$37$$.mtime = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[8]);
12501
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] & 8 && await this.fs.ChangeSize(this.fids[$fid$jscomp$1$$].inodeid, $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[5]);
12452
12502
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 0);
12453
12503
  this.SendReply($bufchain$jscomp$21$$);
12454
12504
  break;
12455
12505
  case 50:
12456
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12457
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12506
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12507
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12458
12508
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 0);
12459
12509
  this.SendReply($bufchain$jscomp$21$$);
12460
12510
  break;
12461
12511
  case 40:
12462
12512
  case 116:
12463
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12464
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12465
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12466
- $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12513
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12514
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12515
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12516
+ $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12467
12517
  $inode$jscomp$37$$ = this.fs.GetInode(this.fids[$fid$jscomp$1$$].inodeid);
12468
12518
  40 === $id$jscomp$29$$ && $dbg_log$$module$src$log$$("[treaddir]: fid=" + $fid$jscomp$1$$ + " offset=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " count=" + $count$jscomp$71_minor$jscomp$1_nwfid$$, 4194304);
12469
12519
  116 === $id$jscomp$29$$ && $dbg_log$$module$src$log$$("[read]: fid=" + $fid$jscomp$1$$ + " (" + this.fids[$fid$jscomp$1$$].dbg_name + ") offset=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " count=" + $count$jscomp$71_minor$jscomp$1_nwfid$$ + " fidtype=" + this.fids[$fid$jscomp$1$$].type, 4194304);
@@ -12475,55 +12525,55 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12475
12525
  }
12476
12526
  if (2 === this.fids[$fid$jscomp$1$$].type) {
12477
12527
  for ($inode$jscomp$37$$.caps.length < $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + $count$jscomp$71_minor$jscomp$1_nwfid$$ && ($count$jscomp$71_minor$jscomp$1_nwfid$$ = $inode$jscomp$37$$.caps.length - $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$),
12478
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ < $count$jscomp$71_minor$jscomp$1_nwfid$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$++) {
12479
- this.replybuffer[11 + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$] = $inode$jscomp$37$$.caps[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$];
12528
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ < $count$jscomp$71_minor$jscomp$1_nwfid$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$++) {
12529
+ this.replybuffer[11 + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$] = $inode$jscomp$37$$.caps[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$];
12480
12530
  }
12481
12531
  } else {
12482
- this.fs.OpenInode(this.fids[$fid$jscomp$1$$].inodeid, void 0), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fids[$fid$jscomp$1$$].inodeid, $count$jscomp$71_minor$jscomp$1_nwfid$$ = Math.min($count$jscomp$71_minor$jscomp$1_nwfid$$, this.replybuffer.length - 11), $inode$jscomp$37$$.size < $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ +
12483
- $count$jscomp$71_minor$jscomp$1_nwfid$$ ? $count$jscomp$71_minor$jscomp$1_nwfid$$ = $inode$jscomp$37$$.size - $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ : 40 === $id$jscomp$29$$ && ($count$jscomp$71_minor$jscomp$1_nwfid$$ = this.fs.RoundToDirentry($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$,
12532
+ this.fs.OpenInode(this.fids[$fid$jscomp$1$$].inodeid, void 0), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fids[$fid$jscomp$1$$].inodeid, $count$jscomp$71_minor$jscomp$1_nwfid$$ = Math.min($count$jscomp$71_minor$jscomp$1_nwfid$$, this.replybuffer.length - 11), $inode$jscomp$37$$.size < $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ +
12533
+ $count$jscomp$71_minor$jscomp$1_nwfid$$ ? $count$jscomp$71_minor$jscomp$1_nwfid$$ = $inode$jscomp$37$$.size - $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ : 40 === $id$jscomp$29$$ && ($count$jscomp$71_minor$jscomp$1_nwfid$$ = this.fs.RoundToDirentry($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$,
12484
12534
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + $count$jscomp$71_minor$jscomp$1_nwfid$$) - $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$), $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ >
12485
- $inode$jscomp$37$$.size && ($count$jscomp$71_minor$jscomp$1_nwfid$$ = 0), this.bus.send("9p-read-start", [this.fids[$fid$jscomp$1$$].dbg_name]), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = await this.fs.Read($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12486
- $count$jscomp$71_minor$jscomp$1_nwfid$$), this.bus.send("9p-read-end", [this.fids[$fid$jscomp$1$$].dbg_name, $count$jscomp$71_minor$jscomp$1_nwfid$$]), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ && this.replybuffer.set($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, 11);
12535
+ $inode$jscomp$37$$.size && ($count$jscomp$71_minor$jscomp$1_nwfid$$ = 0), this.bus.send("9p-read-start", [this.fids[$fid$jscomp$1$$].dbg_name]), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = await this.fs.Read($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$,
12536
+ $count$jscomp$71_minor$jscomp$1_nwfid$$), this.bus.send("9p-read-end", [this.fids[$fid$jscomp$1$$].dbg_name, $count$jscomp$71_minor$jscomp$1_nwfid$$]), $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ && this.replybuffer.set($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, 11);
12487
12537
  }
12488
12538
  $Marshall$$module$lib$marshall$$(["w"], [$count$jscomp$71_minor$jscomp$1_nwfid$$], this.replybuffer, 7);
12489
12539
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 4 + $count$jscomp$71_minor$jscomp$1_nwfid$$);
12490
12540
  this.SendReply($bufchain$jscomp$21$$);
12491
12541
  break;
12492
12542
  case 118:
12493
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12494
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12495
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12496
- $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12497
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fids[$fid$jscomp$1$$].dbg_name;
12498
- $dbg_log$$module$src$log$$("[write]: fid=" + $fid$jscomp$1$$ + " (" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ + ") offset=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " count=" + $count$jscomp$71_minor$jscomp$1_nwfid$$ + " fidtype=" + this.fids[$fid$jscomp$1$$].type,
12543
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "d", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12544
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12545
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12546
+ $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12547
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fids[$fid$jscomp$1$$].dbg_name;
12548
+ $dbg_log$$module$src$log$$("[write]: fid=" + $fid$jscomp$1$$ + " (" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ + ") offset=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " count=" + $count$jscomp$71_minor$jscomp$1_nwfid$$ + " fidtype=" + this.fids[$fid$jscomp$1$$].type,
12499
12549
  4194304);
12500
12550
  if (2 === this.fids[$fid$jscomp$1$$].type) {
12501
12551
  this.SendError($tag$jscomp$3$$, "Setxattr not supported", 95);
12502
12552
  this.SendReply($bufchain$jscomp$21$$);
12503
12553
  break;
12504
12554
  } else {
12505
- await this.fs.Write(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $count$jscomp$71_minor$jscomp$1_nwfid$$, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$.subarray($attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$.offset));
12555
+ await this.fs.Write(this.fids[$fid$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $count$jscomp$71_minor$jscomp$1_nwfid$$, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$.subarray($attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$.offset));
12506
12556
  }
12507
- this.bus.send("9p-write-end", [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, $count$jscomp$71_minor$jscomp$1_nwfid$$]);
12557
+ this.bus.send("9p-write-end", [$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, $count$jscomp$71_minor$jscomp$1_nwfid$$]);
12508
12558
  $Marshall$$module$lib$marshall$$(["w"], [$count$jscomp$71_minor$jscomp$1_nwfid$$], this.replybuffer, 7);
12509
12559
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 4);
12510
12560
  this.SendReply($bufchain$jscomp$21$$);
12511
12561
  break;
12512
12562
  case 74:
12513
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "s"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12514
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12515
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12516
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12517
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12518
- $dbg_log$$module$src$log$$("[renameat]: oldname=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + " newname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, 4194304);
12519
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = await this.fs.Rename(this.fids[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$].inodeid, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, this.fids[$attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$].inodeid,
12520
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$);
12521
- if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$) {
12563
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w", "s"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12564
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12565
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12566
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12567
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12568
+ $dbg_log$$module$src$log$$("[renameat]: oldname=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ + " newname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, 4194304);
12569
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = await this.fs.Rename(this.fids[$error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$].inodeid, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, this.fids[$attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$].inodeid,
12570
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$);
12571
+ if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$) {
12522
12572
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "";
12523
- -2 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "No such file or directory" : -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ?
12524
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Operation not permitted" : -39 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12525
- "Directory not empty" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[renameat]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$));
12526
- this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$);
12573
+ -2 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "No such file or directory" : -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ?
12574
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Operation not permitted" : -39 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12575
+ "Directory not empty" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[renameat]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$));
12576
+ this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$);
12527
12577
  this.SendReply($bufchain$jscomp$21$$);
12528
12578
  break;
12529
12579
  }
@@ -12531,23 +12581,23 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12531
12581
  this.SendReply($bufchain$jscomp$21$$);
12532
12582
  break;
12533
12583
  case 76:
12534
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12535
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12536
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12537
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12538
- $dbg_log$$module$src$log$$("[unlink]: dirfd=" + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ + " name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " flags=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 4194304);
12539
- $fid$jscomp$1$$ = this.fs.Search(this.fids[$attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12584
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12585
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12586
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12587
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12588
+ $dbg_log$$module$src$log$$("[unlink]: dirfd=" + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ + " name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " flags=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 4194304);
12589
+ $fid$jscomp$1$$ = this.fs.Search(this.fids[$attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12540
12590
  if (-1 === $fid$jscomp$1$$) {
12541
12591
  this.SendError($tag$jscomp$3$$, "No such file or directory", 2);
12542
12592
  this.SendReply($bufchain$jscomp$21$$);
12543
12593
  break;
12544
12594
  }
12545
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = this.fs.Unlink(this.fids[$attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12546
- if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$) {
12595
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = this.fs.Unlink(this.fids[$attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$].inodeid, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12596
+ if (0 > $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$) {
12547
12597
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "";
12548
- -39 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Directory not empty" : -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12549
- "Operation not permitted" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[unlink]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$));
12550
- this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$);
12598
+ -39 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Directory not empty" : -1 === $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ ? $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ =
12599
+ "Operation not permitted" : ($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = "Unknown error: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$, $dbg_assert$$module$src$log$$(!1, "[unlink]: Unexpected error code: " + -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$));
12600
+ this.SendError($tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, -$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$);
12551
12601
  this.SendReply($bufchain$jscomp$21$$);
12552
12602
  break;
12553
12603
  }
@@ -12555,18 +12605,18 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12555
12605
  this.SendReply($bufchain$jscomp$21$$);
12556
12606
  break;
12557
12607
  case 100:
12558
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12559
- $dbg_log$$module$src$log$$("[version]: msize=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0] + " version=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1], 4194304);
12560
- this.msize !== $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0] && (this.msize = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0], this.replybuffer = new Uint8Array(Math.min(16777216, 2 * this.msize)));
12608
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12609
+ $dbg_log$$module$src$log$$("[version]: msize=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0] + " version=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1], 4194304);
12610
+ this.msize !== $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0] && (this.msize = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0], this.replybuffer = new Uint8Array(Math.min(16777216, 2 * this.msize)));
12561
12611
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $Marshall$$module$lib$marshall$$(["w", "s"], [this.msize, this.VERSION], this.replybuffer, 7);
12562
12612
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12563
12613
  this.SendReply($bufchain$jscomp$21$$);
12564
12614
  break;
12565
12615
  case 104:
12566
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s", "s", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12567
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12568
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[4];
12569
- $dbg_log$$module$src$log$$("[attach]: fid=" + $fid$jscomp$1$$ + " afid=" + $h$$module$src$lib$$($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1]) + " uname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2] + " aname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3],
12616
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s", "s", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12617
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12618
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[4];
12619
+ $dbg_log$$module$src$log$$("[attach]: fid=" + $fid$jscomp$1$$ + " afid=" + $h$$module$src$lib$$($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1]) + " uname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2] + " aname=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3],
12570
12620
  4194304);
12571
12621
  this.fids[$fid$jscomp$1$$] = this.Createfid(0, 1, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, "");
12572
12622
  $inode$jscomp$37$$ = this.fs.GetInode(this.fids[$fid$jscomp$1$$].inodeid);
@@ -12576,17 +12626,17 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12576
12626
  this.bus.send("9p-attach");
12577
12627
  break;
12578
12628
  case 108:
12579
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["h"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12629
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["h"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12580
12630
  $dbg_log$$module$src$log$$("[flush] " + $tag$jscomp$3$$, 4194304);
12581
12631
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 0);
12582
12632
  this.SendReply($bufchain$jscomp$21$$);
12583
12633
  break;
12584
12634
  case 110:
12585
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "h"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12586
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12587
- $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12588
- var $nwname$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12589
- $dbg_log$$module$src$log$$("[walk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0] + " nwfid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] + " nwname=" + $nwname$$, 4194304);
12635
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "h"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12636
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12637
+ $count$jscomp$71_minor$jscomp$1_nwfid$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12638
+ var $nwname$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12639
+ $dbg_log$$module$src$log$$("[walk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0] + " nwfid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] + " nwname=" + $nwname$$, 4194304);
12590
12640
  if (0 === $nwname$$) {
12591
12641
  this.fids[$count$jscomp$71_minor$jscomp$1_nwfid$$] = this.Createfid(this.fids[$fid$jscomp$1$$].inodeid, 1, this.fids[$fid$jscomp$1$$].uid, this.fids[$fid$jscomp$1$$].dbg_name);
12592
12642
  $Marshall$$module$lib$marshall$$(["h"], [0], this.replybuffer, 7);
@@ -12595,52 +12645,52 @@ $Virtio9p$$module$lib$9p$$.prototype.ReceiveRequest = async function($bufchain$j
12595
12645
  break;
12596
12646
  }
12597
12647
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = [];
12598
- for ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ < $nwname$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$++) {
12648
+ for ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ < $nwname$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$++) {
12599
12649
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$.push("s");
12600
12650
  }
12601
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $Unmarshall$$module$lib$marshall$$($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12602
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fids[$fid$jscomp$1$$].inodeid;
12651
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $Unmarshall$$module$lib$marshall$$($error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$, $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12652
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fids[$fid$jscomp$1$$].inodeid;
12603
12653
  $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = 9;
12604
12654
  var $nwidx$$ = 0;
12605
- $dbg_log$$module$src$log$$("walk in dir " + this.fids[$fid$jscomp$1$$].dbg_name + " to: " + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$.toString(), 4194304);
12606
- for ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ < $nwname$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$++) {
12607
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.Search($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$]);
12608
- if (-1 === $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$) {
12609
- $dbg_log$$module$src$log$$("Could not find: " + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$], 4194304);
12655
+ $dbg_log$$module$src$log$$("walk in dir " + this.fids[$fid$jscomp$1$$].dbg_name + " to: " + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$.toString(), 4194304);
12656
+ for ($data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = 0; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ < $nwname$$; $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$++) {
12657
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = this.fs.Search($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$]);
12658
+ if (-1 === $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$) {
12659
+ $dbg_log$$module$src$log$$("Could not find: " + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$], 4194304);
12610
12660
  break;
12611
12661
  }
12612
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ += $Marshall$$module$lib$marshall$$(["Q"], [this.fs.GetInode($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$).qid], this.replybuffer, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12662
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ += $Marshall$$module$lib$marshall$$(["Q"], [this.fs.GetInode($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$).qid], this.replybuffer, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$);
12613
12663
  $nwidx$$++;
12614
- this.fids[$count$jscomp$71_minor$jscomp$1_nwfid$$] = this.Createfid($buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 1, this.fids[$fid$jscomp$1$$].uid, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$]);
12664
+ this.fids[$count$jscomp$71_minor$jscomp$1_nwfid$$] = this.Createfid($buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 1, this.fids[$fid$jscomp$1$$].uid, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$]);
12615
12665
  }
12616
12666
  $Marshall$$module$lib$marshall$$(["h"], [$nwidx$$], this.replybuffer, 7);
12617
12667
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ - 7);
12618
12668
  this.SendReply($bufchain$jscomp$21$$);
12619
12669
  break;
12620
12670
  case 120:
12621
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12622
- $dbg_log$$module$src$log$$("[clunk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0], 4194304);
12623
- this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0]] && 0 <= this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0]].inodeid && (await this.fs.CloseInode(this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0]].inodeid),
12624
- this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0]].inodeid = -1, this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0]].type = -1);
12671
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12672
+ $dbg_log$$module$src$log$$("[clunk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0], 4194304);
12673
+ this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0]] && 0 <= this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0]].inodeid && (await this.fs.CloseInode(this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0]].inodeid),
12674
+ this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0]].inodeid = -1, this.fids[$data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0]].type = -1);
12625
12675
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 0);
12626
12676
  this.SendReply($bufchain$jscomp$21$$);
12627
12677
  break;
12628
12678
  case 32:
12629
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "d", "w"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12630
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12631
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1];
12632
- $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12633
- $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[3];
12634
- $dbg_log$$module$src$log$$("[txattrcreate]: fid=" + $fid$jscomp$1$$ + " name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " attr_size=" + $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$ + " flags=" + $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 4194304);
12679
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "s", "d", "w"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12680
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12681
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1];
12682
+ $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12683
+ $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[3];
12684
+ $dbg_log$$module$src$log$$("[txattrcreate]: fid=" + $fid$jscomp$1$$ + " name=" + $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ + " attr_size=" + $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$ + " flags=" + $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, 4194304);
12635
12685
  this.fids[$fid$jscomp$1$$].type = 2;
12636
12686
  this.BuildReply($id$jscomp$29$$, $tag$jscomp$3$$, 0);
12637
12687
  this.SendReply($bufchain$jscomp$21$$);
12638
12688
  break;
12639
12689
  case 30:
12640
- $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s"], $buffer$jscomp$62_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$26_newdirfid_state$jscomp$66_walk$jscomp$1$$);
12641
- $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0];
12642
- $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2];
12643
- $dbg_log$$module$src$log$$("[xattrwalk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[0] + " newfid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[1] + " name=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$128_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$12_version$jscomp$6$$[2],
12690
+ $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$ = $Unmarshall$$module$lib$marshall$$(["w", "w", "s"], $buffer$jscomp$64_dfid_flags$jscomp$20_idx$jscomp$23_major$jscomp$1_oldname$jscomp$1_space$jscomp$7_symgt$$, $attr_size_dirfd_mode$jscomp$25_newdirfid_state$jscomp$68_walk$jscomp$1$$);
12691
+ $fid$jscomp$1$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0];
12692
+ $error_message_error_message$jscomp$1_error_message$jscomp$2_lock_length_lock_request_name$jscomp$109_offset$jscomp$83_olddirfid_size$jscomp$46_uid$jscomp$1_wnames$$ = $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2];
12693
+ $dbg_log$$module$src$log$$("[xattrwalk]: fid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[0] + " newfid=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[1] + " name=" + $data$jscomp$246_filename$jscomp$13_gid_header$jscomp$6_i$jscomp$126_inodeid$jscomp$2_newname$jscomp$2_req_ret$jscomp$11_version$jscomp$6$$[2],
12644
12694
  4194304);
12645
12695
  this.SendError($tag$jscomp$3$$, "Setxattr not supported", 95);
12646
12696
  this.SendReply($bufchain$jscomp$21$$);