Japanese
INDEX ▲ | STN-38 | STN-39 | STN-40 | STN-41 | STN-42 | STN-43 | STN-44

STN-41

Virtua Gun User's Manual Ver.1.00


 issue number:
STN-41
 date of issue:
96/02/16
 media:
●Common ○CD-ROM ○Cartridge ○Others
 connection:
○Program ●Hard ○Manual ○Tools ○Game ○ Bug ○Others
 Information distinction:
●New ○Change ○Addition
 importance:
●Strict observance ○Recommended ○Reference ○Others
 attached file:
●No ○ Yes
 Subject supplement:

Contents


Virtua Gun User's Manual

Ver1.00


■1. overview

The Virtua Gun is a peripheral that connects to the control terminal of the Sega Saturn console and is used exclusively for games that allow you to shoot enemies on the TV screen. The switch has a trigger and start button.

●Basic specifications

Operating environment: 14-inch monitor used, standard indoor light environment
Recommended screen size: 14 inches or more
Effective firing range: Approximately 5 meters from the TV screen
Effective incidence angle: 30 degrees vertically and horizontally relative to the center of the TV screen
Note: The above values may change depending on the screen size, brightness of external light, etc.

■2. TV where Virtua Gun doesn't work

Virtua Gun detects the scanning line light from the TV's cathode ray tube, correlates it with the TV's display timing, determines the coordinate position, and returns it to the application.
Due to this operating principle, some TVs may not work or may be unstable.

●Inoperation due to model/scanning method
LCD TVs, LCD projectors, etc. do not work because they do not use cathode ray tubes.
High-definition televisions do not work because the screen display method is different.
Double scan TV (EDTV2, Clear Vision) etc. do not work because the scanning line drawing speed is different.

●Inoperation due to display mode
In special display modes such as split-screen and picture-in-picture, image data is stored in the frame buffer and then displayed, resulting in timing discrepancies and problems.
Action : Change to normal display mode.

It does not work in 4:3 display on some wide TVs.
Action : Set to wide display mode.

●Others
A TV with a dirty screen or a TV whose brightness is adjusted to a low level.
Action : Wipe the screen to remove dirt. Also, adjust the brightness to make the screen brighter.

Televisions with small screen sizes have insufficient brightness, making it difficult to detect scanning line light.
Compatibility : Recommended size is 14 inches or more. Or add this judgment adjustment mode within the application.

■3. Virtual gun peripheral specifications

●About SMPC operation mode
Virtua Gun uses the HV counter to detect the position on the screen, so the SMPC must be switched to S "H-2 Direct Mode".

●Initialization method (SMPC control mode → SH-2 direct mode)
  1. Set the external latch enable bit (EXTLEN: bit 9) of the VDP2 external signal enable register (EXTEN: 180002H offset) to [1].

  2. Set SMPC to SH-2 direct mode.
    Set the IOSEL bit of the parallel I/O register (2010007DH) to [1].
    • 1P terminal: IOSEL1 (bit0)
    • 2P terminal: IOSEL2 (bit1)

  3. Set the port's input/output setting to "input".
    Set all DDR bits (bit0 to bit6) of the parallel I/O register to [0].
    • 1P terminal: DDR1 (20100079H) all bits (bit6 to bit0) to [0]
    • 2P terminal: DDR2 (2010007BH) all bits (bit6 to bit0) to [0]

    Set all bits of the input PDR to [1].
    • 1P terminal: PDR1 (20100075H) all bits (bit6 to bit0) [1]
    • 2P terminal: PDR2 (20100077H) all bits (bit6 to bit0) [1]

  4. Use bit 6 of the port as an external latch input for VDP2.
    Set the EXLE bit at address 2010007FH to [1]. (Usually [0])
    • 1P terminal: EXLE1 bit (2010007FH:bit0) [1]
    • 2P terminal: EXLE2 bit (2010007FH:bit1) [1]
Note: When accessing SMPC from SH-2, use byte access.

reference:
"HARDWARE MANUAL/SMPC User's Manual" ■Parallel I/O register
"HARDWARE MANUAL/VDP2 User's Manual" ●External signal enable register

●Read the position
  1. Read the external latch flag (EXLTFG:bit9) of the VDP2 screen status register (TVSTAT:180004H offset), and if this bit is [1], read the value of the HV counter.
    In reality, the aimed position and the HV counter position will deviate, so please refer to the "Aiming Correction Mode" described later and correct the difference within the application.
    • H counter register (HCNT:180008H offset)
    • V counter register (VCNT:18000AH offset)

  2. The screen status register (TVSTAT) is cleared to [0] after reading, so it can only be read once during V_INT.
    When reading the HV counter, you cannot read it if the screen is dark (EXLTFG will not become [1]), so make the screen white (bright) for 1/60th of a second after pulling the Virtua Gun trigger. The position is determined by using the value read at that time.

●White color sample RGB format
Sprite dot color data white = FFFFH (32768 colors)
Scroll dot color data = 7FFFH (32768 colors)
Scroll dot color data = 00FFFFFFH (16.77 million colors)

reference:
"HARDWARE MANUAL/VDP2 User's Manual" ■H counter register

●Read buttons (SH-2 direct mode)
There are two buttons: the trigger and the start button. Read PDR of parallel I/O register.

Note : Both terminals are byte accessed from SH-2.

Port assignment
PDRn
n=terminal number
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
* latch start
button
trigger * * * *

● Obtaining Virtua Gun ID in SMPC control mode

reference:
"HARDWARE MANUAL/SMPC User's Manual"
●Megadrive peripheral ID of each peripheral

●Virtual Gun ID acquisition in SH-2 direct mode
After setting SMPC to direct mode, it is no longer possible to obtain the peripheral ID using the interrupt back (INTBACK) command. The acquisition method using direct mode is shown below.

  1. ID check is done during V_INT.

  2. Set the input/output settings of the port to [bit6=output], [bit5~0=input].
    • 1P terminal input/output setting register (20100079H)=[40H] (bit6 output setting)
    • 2P terminal input/output setting register (2010007BH)=[40H] (bit6 output setting)

  3. How to calculate peripheral ID using SH-2 direct mode.
    • The ID is 4 bits long (ID3 to ID0) and the read port data is calculated using the following formula.
    • Terminal 1 port address (20100075H)
    • Terminal 2 port address (20100077H)

    • ID3=(BIT3 or BIT2) and (BIT6=1) -----Calculation formula for ID3 to ID0
    • ID2=(BIT1 or BIT0) and (BIT6=1)
    • ID1=(BIT3 or BIT2) and (BIT6=0)
    • ID0=(BIT1 or BIT0) and (BIT6=0)

    • Verify that the Virtua Gun is connected with peripheral ID=AH.

  4. Restore the port's input/output settings.
    • Set all bits (bit6 to bit0) of the parallel I/O register to input setting [0].
      → Return to settings that allow you to use Virtua Gun

reference:
"HARDWARE MANUAL/SMPC User's Manual"
■3.4 Peripheral access protocol

■4. Points to note when creating applications

●Supported peripheral character code
The character code for Virtua Gun is "G" .
Write "G" in the corresponding peripheral (starting address 50H) in SYSTEM ID.

reference:
"Programmer's Guide/DISC Format Standard Specifications"
Boot system / supported peripherals

●Aim adjustment mode
This adjustment mode allows the user to adjust the aim before playing the game, since the degree of deviation between the point the player is aiming at and the coordinates will vary depending on the environment such as the TV being used, the distance between the TV screen and the Virtua Gun, the amount of indoor light, etc. This is the mode for

<<< Recommended example of aiming adjustment method>>>

  1. A cross-shaped target (hereinafter referred to as target) is displayed in the center of the TV screen.

  2. From the playing position, aim the muzzle at the center of the target and pull the trigger.

  3. If the aim is off or not adjusted, the impact point will appear off-center on the target.

  4. Pressing the start button clears the previous correction value.

  5. Aim the muzzle at the center of the target, hold the muzzle, and pull the trigger. The difference between the values of HCNT and VCNT at this time and the target center coordinates is taken as a correction value.

  6. Display a message that adjustment is completed.

●About the Virtua Gun start button
In this manual, this is referred to as a "start button," but this is different from the signal for the control pad's "start button," so please be careful when creating applications.

The BOOT ROM multiplayer screen cannot be operated.

●About the enemy (target) at the edge of the screen during the game
Some TVs do not display the entire screen, so avoid aiming within about 16 dots from the top, bottom, left and right edges of the screen.

●When 2 players are playing at the same time
If two people are using the Virtua Gun at the same time, the main processing should be 2 frames (1/30sec.) and the reading process of the Virtua Gun should be divided into even frames and odd frames.

●Judgment adjustment mode (recommended)
If the TV screen is small, the displayed target will be smaller, and even the slightest camera shake will cause the target to shift, making the game more difficult. Therefore, this judgment should be adjustable in the application, like in "Virtua Cop." We recommend that you do so.

●Connection with multi-terminal
Virtua Gun is not compatible with multi-terminals, so please do not connect it.

●About the display of Virtua Gun on the game screen
There are three types of Virtua Guns with different colors depending on the destination region. This takes into account the regulations imposed by each country on toys that imitate the shape of guns. There are no particular regulations regarding the color when displaying the Virtua Gun in OPTION mode, etc.

Table/Virtual Gun colors by region
Place of destination Body color Trigger/start button name
Japan/Southeast Asia black black Virtua Gun
America/Canada orange black STUNNER
Europe blue black VIRTUA GUN

STUNNER/VIRTUA GUN color sample

that's all
INDEX ▲ | STN-38 | STN-39 | STN-40 | STN-41 | STN-42 | STN-43 | STN-44
Copyright SEGA ENTERPRISES, LTD., 1997