HARDWARE ManualSMPC User's Manual
BackForward
SMPC User's Manual / Chapter 3 Peripheral Control

■ 3.2 Saturn Peripheral Standard Format

● Purpose of Saturn Peripheral Standard Format

The Saturn Peripheral Standard Format is prepared for the following purposes:

  1. Being able to control multiplayer even if the peripheral data structure, type, and meaning are different.

  2. Even if upper word compatible peripherals are released in the future, such as increasing the number of buttons, increasing the number of analog channels, and adding extended data, you can use the peripherals to operate multiplayer.
    Also, be able to control previously released applications.

● Saturn standard format types and data formats

There are currently four Saturn standard formats available for the purposes mentioned above. Each is explained below.

● Future expansion of standard format

At the moment, we have prepared the following four formats, but we plan to prepare them one by one when the need arises in the future.

● Precautions when using the standard format

In order to comply with the standard format, when the data size is larger than the standard format, delete excess data and use it. Also, when the data size is smaller than the standard format, it is realized by supplementing the missing data with other data. Also, as an example corresponding on the peripheral side, there is an analog XY control like an analog joystick, but when there is no corresponding digital input, using the fact that the analog XY data exceeds a certain value, U, There is a possibility that the peripheral side will adopt the method of turning the D, L, R bits on and off.


◆ Saturn digital device

It is a device consisting only of buttons represented by Saturn standard PAD.
The peripheral type is based on 0H and a data size of 2 bytes.
As a feature of the format, 1st Data has a configuration equivalent to the Mega Drive 3 button. Compatibility can be ensured by building an application so that the application can be controlled with only 1st Data. Table 3.10 shows the formats of Saturn digital devices.

Table 3.10 Saturn Digital Device Standard Format
 bit7
 bit6
 bit5
 bit4
 bit3
 bit2
 bit1
 bit0
 Saturn Peripheral ID
 0
 0
 0
 0
 Data size
 1st Data
 Right
 Left
 Down
 Up
 Start
 A TRG
 C TRG
 B TRG
 2nd Data
 R TRG
 X TRG
 Y TRG
 Z TRG
 L TRG
 Extended data
 3rd Data
 Extended data
Extended data
Extended data
 nth Data
 Extended data

A TRG, C TRG, B TRG, R TRG, X TRG, Y TRG, Z TRG, L TRG
Right, Left, Down, Up, Start buttons
It becomes 0 when the button is pressed.


◆ Saturn Analog Devices

It is a device equipped with an A / D converter such as an analog joystick, analog steering, and tablet.
The peripheral type is based on 1H and a data size of 5 bytes. (Actually, it changes for each peripheral.)
As a feature of the format, 1st Data has a configuration equivalent to the Mega Drive 3-button PAD. Compatibility can be ensured by building an application so that the application can be controlled with only 1st Data. Table 3.11 lists the standard formats for Saturn Analog Devices.

Table 3.11 Saturn Analog Devices Standard Format
 bit7
 bit6
 bit5
 bit4
 bit3
 bit2
 bit1
 bit0
 Saturn Peripheral ID
 0
 0
 0
 1
 Data size
 1st Data
 Right
 Left
 Down
 Up
 Start
 A TRG
 C TRG
 B TRG
 2nd Data
 R TRG
 X TRG
 Y TRG
 Z TRG
 L TRG
 Extended data
 3rd Data
 AX7
 AX6
 AX5
 AX4
 AX3
 AX2
 AX1
 AX0
 4th Data
 AY7
 AY6
 AY5
 AY4
 AY3
 AY2
 AY1
 AY0
 5th Data
 AZ7
 AZ6
 AZ5
 AZ4
 AZ3
 AZ2
 AZ1
 AZ0
 6th Data
 Extended data
Extended data
Extended data
 nth Data
 Extended data

A TRG, C TRG, B TRG, R TRG, X TRG, Y TRG, Z TRG, L TRG
Right, Left, Down, Up, Start buttons
It becomes 0 when the button is pressed.

AX7 ~ AX0, AY7 ~ AY0, AZ7 ~ AZ0
The absolute value of the A / D converter output without a sign is output.

AX7 ~ AX0, AY7 ~ AY0
The upper left is (0,0) and the lower right is (255,255).

AZ7 ~ AZ0
The bottom is 0 and the top is 255.

reference:
Developer's Informaition / STN-34 "Analog Mission Stick Manual"
Developer's Informaition / STN-43 "Multi-Controller User's Manual Ver1.00"

◆ Pointing device

A device that outputs the amount of movement of a rotary encoder such as a mouse or trackball.
The peripheral type is basically 2H, and the data size is basically 3 bytes.
As a feature of the format, the data table of the pointing device does not have the equivalent data of the Megadrive 3-button PAD, unlike digital, analog and keyboard devices. Furthermore, since the movement of X and Y data is output by the movement amount (△ delta) of the rotary encoder, compatibility cannot be ensured unless all the defined 3 bytes are supported. Table 3.12 shows the standard formats for Saturn pointing devices.

Table 3.12 Saturn Pointing Device Standard Format
 bit7
 bit6
 bit5
 bit4
 bit3
 bit2
 bit1
 bit0
 Saturn Peripheral ID
 0
 0
 1
 0
 Data size
 1st Data
 Y Over
 X Over
 Y Sign
 X Sign
 Start
 Middle
 Right
 Left
 2nd Data
 XD7
 XD6
 XD5
 XD4
 XD3
 XD2
 XD1
 XD0
 3rd Data
 YD7
 YD6
 YD5
 YD4
 YD3
 YD2
 YD1
 YD0
 4th Data
 Extended data
Extended data
Extended data
 nth Data
 Extended data

Y Over, X Over
0: X or Y data is valid.
1: Data is overflowing. (Over 255)

Y Sign, X Sign
The data of 0: X and Y are positive values.
The data of 1: X and Y are negative values.

XD7 ~ XD0, YD7 ~ YD0
Absolute value of mouse movement

Start, Middle, Right, Left core buttons
It becomes 1 when the button is pressed.

reference:
Developer's Informaition / STN-44 "Shuttle Mouse Supplementary Explanation"

◆ Keyboard device

It is a device represented by a full keyboard such as that used in personal computers.
The peripheral type is 3H and the data size is 4 bytes.
As a feature of the format, 1st Data has a configuration equivalent to the Mega Drive 3-button PAD. Compatibility can be ensured by building an application so that the application can be controlled with only 1st Data. Table 3.13 shows the standard formats for Saturn keyboard devices.

Table 3.13 Saturn keyboard device standard format
 bit7
 bit6
 bit5
 bit4
 bit3
 bit2
 bit1
 bit0
 Saturn Peripheral ID
 0
 0
 1
 1
 Data size
 1st Data
 Right
 Left
 Down
 Up
 Start
 A TRG
 C TRG
 B TRG
 2nd Data
 R TRG
 X TRG
 Y TRG
 Z TRG
 L TRG
 Extended data
 3rd Data
 0
 Caps
Lock
 Num
Lock
 Scrool
Lock
 Make
 1
 1
 Break
 4th Data
 D7
 D6
 D5
 D4
 D3
 D2
 D1
 D0
 5th Data
 Extended data
Extended data
Extended data
 nth Data
 Extended data

A TRG, C TRG, B TRG, R TRG, X TRG, Y TRG, Z TRG, L TRG
Right, Left, Down, Up, Start
It becomes 0 when the button is pressed.

The correspondence between each button and the keys on the keyboard is as follows.
 button
 Corresponding key
 button
 Corresponding key
 Right
 C TRG
 C
 Left
 B TRG
 X
 Down
 R TRG
 E
 Up
 X TRG
 A
 Start
 Esc
 Y TRG
 S
 A TRG
 Z
 Z TRG
 D
 L TRG
 Q

Caps Lock
1: Caps Lock is locked (Caps Lock LED is lit)

Num Lock
1: Num Lock is locked (Num Lock LED is lit)

Scroll Lock
1: Scroll Lock is locked (Scroll Lock LED is lit)

Make
1 is shown when there is a valid Make code in D7 to D0 (key press indicated by D7 to D0 code).

Break
1 is indicated when there is a valid Break code in D7 to D0 (key press release indicated by the D7 to D0 code).

D7 ~ D0
Indicates the key number. Used with Make and Break.

Key code correspondence table
 0
 1
 2
 3
 4
 5
 6
 7
 8
 9
 A
 B
 C
 D
 E
 F
 00H
 F9
 F5
 F3
 F1
 F2
 F12
 F10
 F8
 F6
 F4
 Tab
 Half full
 10H
 Alt
 Shift
 Palm
 Ctrl
 Q
 1
 Alt
 Ctrl
 Z
 With S
 A Chi
 W
 2
 20H
 C
 X
 D
 E
 4
 3
 F is
 space
 V Hi
 Is it T?
 R
 5
 30H
 N only
 B
 H
 G
 Y
 6
 M too
 J
 U
 7
 8
 40H
 <Ne
 K's
 To I
 O et al.
 0
 9
 > Ru
 ?? eye
 L ri
 ;NS
 P
 50H
 _reactor
 :hair
 @
 ^
 CapsL
 Shift
 Enter
 [[
 ]nothing
 60H
 change
 Back
 Immutable
 ¥
 70H
 Esc
 F11
 ScrL
 80H
 Ins
 Pause
 F7
 Print
 Del
 Home
 End
 UP
 Down
Two key positions

reference:
Developer's Informaition / STN-45 "Supplementary explanation of Saturn keyboard"

BackForward
HARDWARE ManualSMPC User's Manual
Copyright SEGA ENTERPRISES, LTD., 1997