CodeNinjaResearch / OpenLSA

Open Large Scale Attraction Emulation - An emulator for the ride boards in Let's Go Jungle Special, The House Of The Dead 4 Special, and Jurassic Park Special

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OpenLSA

Open Large Scale Attraction Emulator (OpenLSA) is an emulator for the ride boards in Let's Go Jungle Special, The House Of The Dead 4 Special, and possibly Jurassic Park Special. The project aims to document the protocol so that large attraction games using these boards, can be played at home.

Reverse Engineer

All of the reverse engineering info is stored here:

https://raw.githubusercontent.com/bobbydilley/OpenLSA/master/code_recreations/struct.md

Game Information

Let's Go Jungle Special

Let's go jungle special sends its serial commands to /dev/ttyS0. If this isn't populated on your Lindbergh you may need to symlink it using this command:

ln -s /dev/tts/0 /dev/ttyS0

Other bits of information

Attendants Tower

The attendants tower swithches are not run via JVS.

Protocol Information

  • Baud Rate: 115200

  • Recive: 7 bytes a go

    • 1st byte is always 0xC0
    • 2nd to 6th byte is payload
    • 7th byte is checksum which is the exclusive bitwise or (^) operation over the last 5 payload bytes
  • Send: 22 bytes a go

    • 1st byte is always 0xC0
    • 2nd to 21st byte is payload
    • 22nd byte is checksum which is the exclusive bitwise or (^) operation over the previous 20 bytes.

Dumps

When the machine is starting up this is repeated:

C0 01 00 00 01 00 00

When the machine is erroring this is repeated indefinately:

C0 16 00 00 04 00 12

When the machine is in test mode this is repeated indefinately:

C0 13 00 00 00 00 13

When dummy serial is turned on, and its waiting for the INITIALIZE button:

C0 02 00 00 01 00 03

What I think the things are now

C0 - SYNC BYTE 02 - COMMAND 00 - CHAIR POSITION 00 - LIGHT/BLOWER 01 - LIGHT/BLOWER? 00 - LIGHT/BLOWER 03 - CHECK SUM

Buttons are not connected to JVS, but I think possibly they keyboard was used to simluate the button!? There is a link to /dev/input/js0.

Emulator Information

The emulation is written in python 2.7 which you must have installed.

To run the emulator, open the openlsa.py file and change the file path to the RS232 device you are using. You can then type python openlsa.py and will start to see output from the Lindbergh device.

About

Open Large Scale Attraction Emulation - An emulator for the ride boards in Let's Go Jungle Special, The House Of The Dead 4 Special, and Jurassic Park Special


Languages

Language:C 97.6%Language:Python 2.4%