Unknown VDP: Yamaha YM2220

Page 2/3
1 | | 3

By ARTRAG

Enlighted (6168)

ARTRAG's picture

27-04-2019, 19:37

I think it is a plain tms9918 clone

By Piter Punk

Master (201)

Piter Punk's picture

27-04-2019, 19:53

After some work, I guess that I have the correct pinout of this VDP:

In the left side, I believe that pin 11 is NC, the +5V only goes to there for routing issues. In the right side pin 50, 51 and 53 are guessed from 315-5066 information. As the YM2220 is used in PAL (Sakhr AX-150) and NTSC (Victor HC-30/Yamaha SX-100), probably the pin 48 is used to choose between both systems.

The 315-5066 pinout were got from SMSPower forums.

By Piter Punk

Master (201)

Piter Punk's picture

27-04-2019, 19:59

rderooy wrote:

Is its colour palette more like the TMS chips, or is it more like that of the MSX2? Since this is a Yamaha chip, it may well have the brighter palette associated with the MSX2.

Using COLORBAR.BAS, I compared with the image from Casio PV-7 and the only difference that I could spot was in color 14, which in the Victor HC-30 looks very close to white. To do this test, I used the the same LCD television and the RCA video output on both machines.

By Grauw

Enlighted (8010)

Grauw's picture

27-04-2019, 20:30

Internal Yamaha codes of the custom video chips they made:

315-5066: YM2217
315-5124: YM2602B
V9938: YM2701C / YM2302(C)
V9958: YM2703

I’m not a big fan of trying to speculatively attach meaning to numbers, but the YM2220 is closest to the YM2217 (315-5066) Big smile.

By hit9918

Prophet (2853)

hit9918's picture

28-04-2019, 18:55

this is a test of the maskregisters
the subcharset mask where 9918 and 9118 are different
and it is still missing an answer on how a 9938 behaves on this

10 SCREEN 2,2
20 SPRITE $(0)="ldscktjhklstcdhpxksjdhksjhdskjhskjhsd"
30 FOR I = 0 TO 31
40 PUT SPRITE I,(I*8, I*5),I AND 15,0
50 NEXT
60 ON STRIG GOSUB 200
70 STRIG(0) ON
80 OPEN "grp:" AS #1
90 FOR I = 0 TO 2
100 LINE (255,I*64+63)-(0,I*64+32),I*2+3,BF : LINE (255,I*64+31)-(0,I*64+0),I*2+2,BF : PRESET(0,I*64),I
110 FOR C = 0 TO 255 : PRINT#1,CHR$(C); : NEXT
120 NEXT
130 FOR I = 0 TO 127
140 VPOKE(6144+I),I+128
150 VPOKE(6144+I+256),I+128
160 VPOKE(6144+I+512),I+128
170 NEXT
180 GOSUB 200
190 GOTO 190
200 VDP(3) = VDP(3) XOR 16
210 RETURN

press space to see the mask bit in action
ascii values of 128..255 get masked down to 0...127. "subcharset", masking within a charset.
on the 9918 this masking happens on both the pattern and the color addresses
openmsx has a new code for this, but 9118 9938 still have old strange code.

By ARTRAG

Enlighted (6168)

ARTRAG's picture

28-04-2019, 19:06

IDENT.BAS does this and much more
Look for its results in the previous page

By hit9918

Prophet (2853)

hit9918's picture

28-04-2019, 19:45

so how does it look on the 9118 9938 2220?

By Piter Punk

Master (201)

Piter Punk's picture

30-04-2019, 02:54

hit9918 wrote:

so how does it look on the 9118 9938 2220?

I ran your code in Victor HC-30 (YM2220) and Casio PV-7 (TMS9118). Both looks the same.

A diagonal "line" of sprites with different colors, three color stripes each one with one third of screen, colored in light green, blue and cyan, and the same character patterns repeated three times in white. The other screen have the same line of sprites and the screen still is divided in three colored sections but the cyan is changed to red and some parts of the character patterns are black instead white.

By gdx

Prophet (2700)

gdx's picture

30-04-2019, 09:54

A little more complete pinout description of 315-5066/YM2217 pinouts (SG-1000 II) :
http://www.smspower.org/forums/13455-Sega3155066PinoutsCusto...

Piter,

I found several info about 315-5124/YM2602B:
http://www43.tok2.com/home/cmpslv/Mark3/EnrM3.htm
At the bottom of the page, there is a test program of register #3 pf VDP. I convert it to MSX. Can you try on your Victor HC-30 and Casio PV-7 with a joystick (By using buttons A & B)? This program does not seem to work on a MSX's VDP.

By hit9918

Prophet (2853)

hit9918's picture

30-04-2019, 17:06

@Piter Punk, the description sounds like it shows the same mess as seen in the emulator. where the foreground color randomly turns to color 0, taking the border color.
I am shocked. I hope the MSX2 doesnt have this trash (openmsx says it does)
if the msx2 has the same bug, then it could be that the 2220 did actively model that bug.
if not, then maybe the 2220 is a 9118 die in a different pinout?

Page 2/3
1 | | 3