Decoding JVS

Naomi & all other arcade tech questions forum
OldFoo

Decoding JVS

Post by OldFoo »

Having great fun decoding the JVS protocol, first step is a program that monitors the traffic between board and I/O controller:


Code: Select all

[perole@localhost jvsmon]$ ./jvsmon

Broadcast, reset state of slave

Broadcast, reset state of slave

Broadcast, looking for I/O board 1

Acking 1 requests, status: 1

I/O board register

Request packet to node 1 Request I/O ID

Acking 1 requests, status: 1

ack I/O ID:

SEGA ENTERPRISES,LTD.;I/O BD JVS;837-13551 ;Ver1.00;98/10

Request packet to node 1 Requst command format revision

Acking 1 requests, status: 1

ack commandrev: 1.1

Request packet to node 1 Requst Jamma revison

Acking 1 requests, status: 1

ack jamma revision: 2.0

Request packet to node 1 Requst communication version

Acking 1 requests, status: 1

ack communications version: 1.0

Request packet to node 1 Unknown request 1

 0|

14|



It basically works like this:

rs-485, 115200kbps half duplex, game is master, i/o boards slaves. Game constantly sends requests to i/o board, which replies back with status of input switches, coins, and in the case of naomis analog inputs:


Code: Select all

Request packet to node 1 |SW input req- 2 players 2 bytes pr player|Coin input request|Analog input Request 8 channels

Acking 3 requests, status: 1

ack 1 switchstate

 0| 1| 2| 3| 4|

 0| 0| 0| 0| 0|

ack 2 coininput

 0| 1| 2| 3|

 0| 0| 0| 0|

ack 3 analog input

 0| 1| 2| 3| 4| 5| 6| 7| 8| 9|10|11|12|13|14|15|

14| 0|14| 0|14| 0|14| 0|15| 0|15| 0|15| 0|15| 0|

Specification here:

http://www.jamma.or.jp/siryou/siryou02/JVST_VER3.pdf

Struggling a bit with command 14, on page 21 - if anyone here reads Japanese, a translation would be great.



If anyone wants to help, all you need is a RS-485 to USB converter, I got mine on ebay for 20USD ;)
OldFoo

Post by OldFoo »

Great bit of work invzim. Looks like something is was thinking of doing with an MCU as a cheaper alternative to a fully blown I/O PCB.



Keep us posted
OldFoo

Post by OldFoo »

MrSporty wrote:Great bit of work invzim. Looks like something is was thinking of doing with an MCU as a cheaper alternative to a fully blown I/O PCB.

Keep us posted


Yup, the final goal might be to make a JVS->USB HID thingy with a 18F4550 for MAME use, and maybe fix the terribly broken software on the RiverService JVS->JAMMA adapter. All for fun, and an excuse to learn microcontrollers ;)



The PC part will probably end up with jvs-monitor, jvs-master and jvs-slave test programs.
OldFoo

Post by OldFoo »

oh yeah a fix for the JVS2JAMMA would be ill!
OldFoo

Post by OldFoo »

sorry, what needs to be fixed on riverservice jvs2jamma ??
OldFoo

Post by OldFoo »

luke2fr wrote:sorry, what needs to be fixed on riverservice jvs2jamma ??


After time they stop working correctly, missing inputs, stuck inputs, lags.. I am not doing them anymore.
OldFoo

Post by OldFoo »

I found gameplay to be a little strange, a quick test to see how bad it sucks:



press and hold player1 button 1, move the joystick around. I've sniffed on the JVS traffic between the I/O and the adapter, which looks perfectly fine - so it is the actual processing and activation/deactivation of the transistors towards the jamma-edge that is broken.
OldFoo

Post by OldFoo »

But how did you connected the "Sense" line ?

Can you tell us the manifacturer or model of the converter you bought ?
OldFoo

Post by OldFoo »

sz72 wrote:Can you tell us the manifacturer or model of the converter you bought ?


http://www.rs2006.co.jp/j/adapter/index.html
OldFoo

Post by OldFoo »

luke2fr wrote:sorry, what needs to be fixed on riverservice jvs2jamma ??


the price dude, ouch, lol :smt016
Post Reply