<?xml version="1.0" ?>
<!DOCTYPE msxconfig SYSTEM 'msxconfig2.dtd'>
<msxconfig>

  <info>
    <manufacturer>Canon</manufacturer>
    <code>V-20 (JP)</code>
    <release_year>1984?</release_year>
    <description>Canon's main stream 64kB MSX1.</description>
    <type>MSX</type>
    <region>jp</region>
  </info>

<!--
     This config is based on Werner Kai's machine with serial 125911
     see https://plus.google.com/photos/112629367302659371233/albums/6153667357217383201
     Where no data was available, it is assumed the machine is the same as
     hap's European Canon V-20, see that config. This is mostly the mirroring
     behaviour.
     
CPU: NEC D780C-1
PPI: NEC D8255AC-5
PSG: Yamaha YM2149 - JIS
VDP: TMS9918ANL
crystal: X1:10.xx863 (VDP), X2:1431818(CPU/PSG): so not synced

IDENT Z80 info (VDP stuff just points to indeed TMS99xx):
z80 scf: 01ED29ED01FC29FC (standard)
z80 cpl: 3AFF12D7 (standard)
z80 out (c),0: 0 (MSX)

PSG pin 6/7 quirk: C (YES)
-->

  <CassettePort/>

  <devices>

    <primary slot="0">
      <ROM id="MSX BIOS with BASIC ROM">
        <mem base="0x0000" size="0x8000"/>
        <rom>
          <sha1>302afb5d8be26c758309ca3df611ae69cced2821</sha1>
          <filename>v-20jp_basic-bios1.rom</filename>
        </rom>
      </ROM>
    </primary>

    <primary external="true" slot="1"/> <!-- side slot -->

    <primary external="true" slot="2"/> <!-- top slot -->

    <primary slot="3">
      <RAM id="Main RAM">
        <mem base="0x0000" size="0x10000"/>
      </RAM>
    </primary>

    <PPI id="ppi">
      <io base="0xA8" num="8"/> <!-- mirroring confirmed by hap -->
      <sound>
        <volume>16000</volume>
      </sound>
      <keyboard_type>jp_jis</keyboard_type>
      <has_keypad>false</has_keypad>
      <key_ghosting_sgc_protected>true</key_ghosting_sgc_protected>
      <code_kana_locks>true</code_kana_locks>
      <graph_locks>false</graph_locks>
    </PPI>

    <VDP id="VDP">
      <io base="0x98" num="8"/> <!-- mirroring not sure if same as EU V-20 -->
      <version>TMS9918A</version>
      <initialContent encoding="hex">FF00</initialContent> <!-- not sure if same as EU V-20 -->
    </VDP>

    <PSG id="PSG">
      <type>YM2149</type>
      <keyboardlayout>JIS</keyboardlayout>
      <io base="0xA0" num="4" type="IO"/>
      <sound>
        <volume>21000</volume>
      </sound>
      <ignorePortDirections>false</ignorePortDirections> <!-- not sure, but guess based on discrete PSG chip -->
    </PSG>

    <PrinterPort id="Printer Port">
      <io base="0x90" num="2"/>
    </PrinterPort>

  </devices>

</msxconfig>
