OXYGENHUB
◆ main openmsx / share / machines / Panasonic_FS-A1.xml
6.7 KiB · XML · last changed chore(): initial commit 1 month ago source blame history raw
1
<?xml version="1.0" ?>
2
<!DOCTYPE msxconfig SYSTEM 'msxconfig2.dtd'>
3
<msxconfig>
4
5
  <info>
6
    <manufacturer>Panasonic</manufacturer>
7
    <code>FS-A1</code>
8
    <release_year>1986</release_year>
9
    <description>Basic Japanese MSX2 with built in DESKPAC software.</description>
10
    <type>MSX2</type>
11
    <region>jp</region>
12
  </info>
13
14
  <CassettePort/>
15
16
  <devices>
17
18
    <S1985 id="S1985"> <!-- includes 5 bits mapper-read-back, as confirmed by Peter Hanraets with serial 6LAKC38645 -->
19
      <sramname>fs-a1_s1985.sram</sramname>
20
    </S1985>
21
22
    <PPI id="ppi">
23
      <sound>
24
        <volume>16000</volume>
25
      </sound>
26
      <io base="0xA8" num="8"/> <!-- S-1985 mirrors -->
27
      <keyboard_type>jp_ansi</keyboard_type>
28
      <has_keypad>false</has_keypad>
29
      <key_ghosting_sgc_protected>false</key_ghosting_sgc_protected>
30
      <code_kana_locks>true</code_kana_locks>
31
      <graph_locks>false</graph_locks>
32
    </PPI>
33
34
    <VDP id="VDP">
35
      <version>V9938</version>
36
      <vram>128</vram>
37
      <io base="0x98" num="8" type="O"/> <!-- S-1985 mirrors -->
38
      <io base="0x98" num="8" type="I"/> <!-- S-1985 mirrors -->
39
    </VDP>
40
41
    <PSG id="PSG">
42
      <keyboardlayout>50on</keyboardlayout>
43
      <sound>
44
        <volume>21000</volume>
45
      </sound>
46
      <io base="0xA0" num="8" type="IO"/> <!-- S-1985 mirrors -->
47
      <ignorePortDirections>true</ignorePortDirections> <!-- not sure, but guess based on use of Engine IC -->
48
    </PSG>
49
50
    <RTC id="Real time clock">
51
      <sramname>fs-a1.cmos</sramname>
52
      <io base="0xB4" num="4" type="IO"/> <!-- S-1985 mirrors -->
53
    </RTC>
54
55
    <PrinterPort id="Printer Port">
56
      <io base="0x90" num="8" type="IO"/> <!-- S-1985 mirrors -->
57
      <bidirectional>true</bidirectional> <!-- S-1985 feature (but not used, nor implemented) -->
58
      <unused_bits>0x00</unused_bits>
59
    </PrinterPort>
60
61
    <primary slot="0">
62
      <ROM id="MSX BIOS with BASIC ROM">
63
        <rom> <!-- maskROM dump by FRS -->
64
          <filename>Panasonic_FS-A1_firmware.rom</filename>
65
          <sha1>7bbe3f355d3129592268ae87f40ea7e3ced88f98</sha1>
66
          <window base="0x0000" size="0x8000"/>
67
        </rom>
68
        <rom>
69
          <filename>fs-a1_basic-bios2.rom</filename>
70
          <sha1>0081ea0d25bc5cd8d70b60ad8cfdc7307812c0fd</sha1>
71
        </rom>
72
        <mem base="0x0000" size="0x8000"/>
73
      </ROM>
74
    </primary>
75
76
    <primary external="true" slot="1"/>
77
78
    <primary external="true" slot="2"/>
79
80
    <primary slot="3">
81
82
      <secondary slot="0">
83
        <RAM id="Main RAM">
84
          <mem base="0x0000" size="0x10000"/>
85
          <initialContent encoding="gz-base64">eJztzzFqJUAQxNB//0uvYzsx7lmECjRpD9TT5/P9/fvxPr/c//r/5/2v///3/rqf7rX56V6bn+61+elem5/utfnbb7/99tu/7a/76V6bn+61+elem7/9t/11P91r89O9Nj/da/PTvTY/3Wvzt99++/f9dT/da/PTvTY/3Wvz0702P91r87f/tr/up3ttfrrX5qd7bf7222+//fZv++t+utfmp3ttfrrX5qd7bX661+Zv/21/3U/32vx0r81P99r87bfffvvt3/bX/XSvzU/32vx0r81P99r8dK/NT/fa/HSvzU/32vx0r81P99r8dK/NT/fa/O2333777d/21/10r81P99r8dK/N3/7b/rqf7rX56V6bn+61+elem5/utfnbb7/9+/66n+61+elem5/utfnpXpuf7rX523/bX/fTvTY/3Wvz0702f/vtt99++7f9dT/da/PTvTY/3Wvz0702P91r87f/tr/up3ttfrrX5qd7bf7222+//fZv++t+utfmp3ttfrrX5qd7bX661+Zv/21/3U/32vx0r81P99r8dK/NT/fa/O2333777d/21/10r81P99r8dK/N3/7b/rqf7rX56V6bn+61+elem5/utfnbb7/99tu/7a/76V6bn+61+elem7/9t/11P91r89O9Nj/da/PTvTY/3Wvzt99++/f9dT/da/PTvTY/3Wvz0702P91r87f/tr/up3ttfrrX5qd7bf7222+//fZv++t+utfmp3ttfrrX5qd7bX661+ane21+utfmp3ttfrrX5qd7bX661+ane23+9ttvv/32b/vrfrrX5qd7bX661+Zv/21/3U/32vx0r81P99r8dK/NT/fa/O2333777d/21/10r81P99r8dK/N3/7b/rqf7rX56V6bn+61+elem5/utfnbb7/9+/66n+61+elem5/utfnpXpuf7rX523/bX/fTvTY/3Wvz0702f/vtt99++7f9dT/da/PTvTY/3Wvz0702P91r87/ufwE704dy</initialContent>
86
          <!-- pattern:
87
               let a = (chr(  0)*16 + chr(255)*16)*2
88
               let b = (chr(255)*16 + chr(  0)*16)*2
89
               let X = a + b + a + b
90
               let Y = b + a + b + a
91
               let m00 = (X+Y)*3 + (X+X)*3 + (Y+X)*2
92
               let m01 = (X+Y)*3 + (X+X)*2 + (Y+X)*3
93
               let m03 = (X+Y)*2 + (X+X)*3 + (Y+X)*3
94
               let m10 = (Y+X)*3 + (Y+Y)*3 + (X+Y)*2
95
               let m11 = (Y+X)*3 + (Y+Y)*2 + (X+Y)*3
96
               let m12 = (Y+X)*2 + (Y+Y)*3 + (X+Y)*3
97
               let m13 = (Y+X)*2 + (Y+Y)*3 + (X+Y)*3
98
               let m20 = (Y+X)*3 + (Y+Y)*3 + (X+Y)*2
99
               let m21 = (Y+X)*3 + (Y+Y)*3 + (X+Y)*2
100
               let m22 = (Y+X)*3 + (Y+Y)*2 + (X+Y)*3
101
               let m23 = (Y+X)*2 + (Y+Y)*3 + (X+Y)*3
102
               let m30 = (X+Y)*3 + (X+X)*3 + (Y+X)*2
103
               let m31 = (X+Y)*3 + (X+X)*3 + (Y+X)*2
104
               let m32 = (X+Y)*3 + (X+X)*2 + (Y+X)*3
105
               let m33 = (X+Y)*2 + (X+X)*3 + (Y+X)*3
106
               let m0 = m00 + m01 + m02 + m03
107
               let m1 = m10 + m11 + m12 + m13
108
               let m2 = m20 + m21 + m22 + m23
109
               let m3 = m30 + m31 + m32 + m33
110
               content = (m0+m1+m2+m3).encode('zip').encode('base64')
111
               As found the machine with serial 6LAKC38645.
112
               -->
113
        </RAM>
114
      </secondary>
115
116
      <secondary slot="1">
117
        <ROM id="MSX Sub ROM">
118
          <rom> <!-- maskROM dump by FRS -->
119
            <filename>Panasonic_FS-A1_firmware.rom</filename>
120
            <sha1>7bbe3f355d3129592268ae87f40ea7e3ced88f98</sha1>
121
            <window base="0x8000" size="0x4000"/> <!-- NOTE: actually, it should be size = 0x8000, but that 2nd block is all 0xFF and that is mapped in there by default already. So, to be backwards compatible with the separate subROM dump, I only use 0x4000 here as size -->
122
          </rom>
123
          <rom>
124
            <filename>fs-a1_msx2sub.rom</filename>
125
            <sha1>0fbd45ef3dd7bb82d4c31f1947884f411f1ca344</sha1>
126
          </rom>
127
          <mem base="0x0000" size="0x4000"/>
128
        </ROM>
129
      </secondary>
130
131
      <secondary slot="2">
132
        <ROM id="Desk Pac 1">
133
          <rom> <!-- maskROM dump by FRS -->
134
            <filename>Panasonic_FS-A1_firmware.rom</filename>
135
            <sha1>7bbe3f355d3129592268ae87f40ea7e3ced88f98</sha1>
136
            <window base="0x10000" size="0x8000"/>
137
          </rom>
138
          <rom>
139
            <filename>fs-a1_deskpac1.rom</filename>
140
            <sha1>63098f27beac9eca6b39d837d2a552395df33fe1</sha1>
141
          </rom>
142
          <mem base="0x4000" size="0x8000"/>
143
        </ROM>
144
      </secondary>
145
146
      <secondary slot="3">
147
        <ROM id="Desk Pac 2">
148
          <rom> <!-- maskROM dump by FRS -->
149
            <filename>Panasonic_FS-A1_firmware.rom</filename>
150
            <sha1>7bbe3f355d3129592268ae87f40ea7e3ced88f98</sha1>
151
            <window base="0x18000" size="0x8000"/>
152
          </rom>
153
          <rom>
154
            <filename>fs-a1_deskpac2.rom</filename>
155
            <sha1>7f5b76605e3d898cc4b5aacf1d7682b82fe84353</sha1>
156
          </rom>
157
          <mem base="0x4000" size="0x8000"/>
158
        </ROM>
159
      </secondary>
160
161
    </primary>
162
163
  </devices>
164
165
</msxconfig>