main.CPUClock=1888888
main.Caption="Ëüâîâ ÏÊ-01 + Chameleon-DOS"
main.scale.x=100%
main.scale.y=150%
main.fullscreen=1280x1024x16
main.fullscreen.scale.x=2
main.fullscreen.scale.y=3

CPU : K580wm80a {
  debug=cas
  mem=mm
  port[00-03]=sys.data
  port[10-13]=sys2.data
  port[20-23]=dsk.data
  port[24]=dskctl
  portmask=37
  pc=C000
}

mem1 : Memory {
  size=10000
}

dos : Memory {
  rom="Lvov\cham77.bin"
}

bios : Memory {
  rom="Lvov\rom01.bin"
}

sys : K580ww55 {
  portB=vid.palette
  portC[1]=mm.page
}

sys2 : K580ww55 {
  portA=kbd.~mask
  portB=kbd.~data
  portC[0-3]=kbd.~mask2
  portC[4-7]=kbd.~data2
}

mm : MemMap {
  map[0][0000-3FFF]=mem1[0000]
  map[0][4000-7FFF]=vid.mem
  map[0][8000-BFFF]=mem1[8000]
  map[0][C000-C7FF].ro=dos[0000]
  map[0][C800-FFFF].ro=bios[0800]
  map[1][0000-BFFF]=mem1[0000]
  map[1][C000-C7FF].ro=dos[0000]
  map[1][C800-FFFF].ro=bios[0800]
}

kbd : Keyboard {
  layout="Lvov\layout.kbd"
}

vid : Lvov-Video {
}

beep : beep {
  input=sys.portC[0]
}

cas : tape-recorder {
  filehdr="LVOV/2.0/$"
  tapehdr="$$$$$$$$$$"
  filter="Lvov files (*.lvt;*.l??)|*.lvt;*.l??"
  ext="lvt"
  tproc[E2ED-E342]=sp
  biproc[E343-E341]=sp
  record=sys.portC[0]
  playback=sys.portC[4]
}

dsk : KR1818wg93 {
  ext="trd"
  image[0].file="Lvov\system2.trd"
  drive.count=4
  drive[0].tooltip="A:"
  drive[1].tooltip="B:"
  drive[2].tooltip="C:"
  drive[3].tooltip="D:"
}

dskctl : Register {
  read[6]=dsk.drq
  read[7]=dsk.irq
  write[0-1]=dsk.drive
  write[4]=dsk.side[0]
  write[6]=dsk.fm
}
