[Mar/24/98] 

Arcade Game                     : Twin Cobra
Arcade Game made by             : (C) Taito Corp
Arcade Game batch number        : 980-13
Arcade game type                : Vertical scrolling helicopter shooter
Vintage                         : 1987
Main CPU                        : Motorola MC68000P10
Secondary CPU (Probably Sound)  : Sharp LH0080A  Z80-CPU-D
Sound Chip                      : Yamaha YM-3812
Screen Controller Chip          : UMC UM6845B
Special Microcontroller CPU     : Texas Instruments TMS320C10NL-14
  (maybe graphics controller or
  copy protection chip - not
  sure. I couldnt read the 1.5K
  ROM out of this chip, coz my
  ROM reader doesnt support it)
Joysticks                       : Two 8-Way joysticks, each accompanied with 2
                                  buttons. Two players can play simultaneously.
                                  One button is for firing and the other is
                                  for bombing
DIP Switch settings             : See TWINCOBR.DSW file
Screen Orientation              : Vertical. Screen is rotated 90 degrees
                                  clockwise and displays 240x320 resolution.

Document last modified          : 15-Mar-1998
ROMS dumped                     : 13-Jan-1998

There are three boards to this game. The Main board is coded as 3090A
The secondary board is coded as 3090B and sits above the Main board.
The third board is coded as 3090C and sits beneath the Main board.

ROMS labelled 1 to 16 are on the Main Board.
ROMS labelled 17 to 20 are on the secondary board.
The third board, appears to be just logic chip stuff for addressing/decoding.

There is also two 2Kx8bit BPROM chips on the Main board labelled 1 and 2.
These are Signetics 82S191N chips. Phillips also produce these chips incase
you cant get Signetics. These are in I.C board locations B and A, though
these location numbers are actually under the chips and out of sight ?????

File   ROM   Checksum  ROM Manufacturer  ROM             I.C      I.C
Name   label                             Device          board    Co-ordinate
       num                                               loc num

TC01   1     72D9      ST (SGS/Thomson)  M27512-2FI      16       B/C - 18/19
TC02   2     BBD0      ST (SGS/Thomson)  M27512-2FI      15       B/C - 16/17
TC03   3     FF62      TMS (Texas Inst)  2764-20JL       7        B/C - 10
TC04   4     54AE      TMS (Texas Inst)  2764-20JL       6        B/C - 8/9
TC05   5     C12E      ST (SGS/Thomson)  M27512-2FI      14       D   - 18/19
TC06   6     DE37      ST (SGS/Thomson)  M27512-2FI      13       D   - 16/17
TC07   7     B0AB      NS (National Sem) NMC27C256Q 250  12       D   - 15
TC08   8     C22C      NS (National Sem) NMC27C256Q 250  11       D   - 13/14
TC09   9     3FEF      NS (National Sem) NMC27C256Q 250  10       D   - 11/12
TC10   10    650D      NS (National Sem) NMC27C256Q 250  9        D   - 10
TC11   11    84D5      TMS (Texas Inst)  2764-20JL       8        D   - 8/9
TC12   12    6A00      i (Intel)         P27256-2        5        F/H - 3/4
TC13   13    1030      NS (National Sem) NMC27C256Q 250  4        J   - 8
TC14   14    452F      ST (SGS/Thomson)  M27512-2FI      3        J   - 7
TC15   15    FEDC      i (Intel)         P27256-2        2        K   - 8
TC16   16    E0C9      ST (SGS/Thomson)  M27512-2FI      1        K   - 7
TC17   17    6E0D      ST (SGS/Thomson)  M27512-2FI      17       E/F - 16/17
TC18   18    A4CB      ST (SGS/Thomson)  M27512-2FI      18       E/F - 15/16
TC19   19    E538      ST (SGS/Thomson)  M27512-2FI      19       E/F - 14
TC20   20    7AD3      ST (SGS/Thomson)  M27512-2FI      20       E/F - 12/13
TC1B   1     03B0      Si Signetics      82S191N         B        A   - 5/6
TC2A   2     3502      Si Signetics      82S191N         A        A   - 3/4


These Checksums are whats shown with my Hi-Lo ALL-03A EPROM Reader/Programmer.


The following ROM descriptions are a calculated guess, so don't take them
for actual fact when replacing ROMS.

ROMs   TC01 to TC11 are 8x8 character and background graphics ROMs
ROMs   TC03, TC04 and TC11 are the 8x8 Title Screen graphics ROMs
ROM    TC12 is the Z80 CPU/Sound ROM
ROMs   TC13 to TC16 are the 68000 CPU/Game ROMs (TC13 is interleaved with TC15
       and TC14 is interleaved with TC16)
ROMs   TC17 to TC20 are 16x16 character and foreground graphics ROMs
BPROMs TC1B and TC2A are for color definition


The following RAM purposes are a again, a calculated guess, so don't
take them for actual fact.

The Mainboard has the following RAM chips (some are grouped near each other)
68000 has 2x 6264 chips made by Hyundai - part no HY6264P-12
Z80 has a 6116 chip made by GS - part no GM76C28-10
The Mainboards background graphics have the following groups of RAM chips
    2x 5816 chips made by GS - part no GM76C28-10
    2x 5816 chips made by GS - part no GM76C28-10
    4x 6264 chips made by Hyundai - part no HY6264P-12
The Secondary boards foreground graphics use the following RAM chips
    2x 2148 chips made by Fairchild - part no MBM2148L-55
    1x 6116 chip  made by GS - part no GM76C28-10
    2x 5816 chips made by GS - part no GM76C28-10
    4x 6264 chips made by Hyundai - part no HY6264P-15
    2x 6116 chips made by Vitalec - part no V61C16S45L

NOTE: Some of the 6116 RAM chips use the same part number as the 5816 chips,
      so it aint a typo error.





[Mar/21/98]

                               Twin Cobra
                               ----------

                               Taito Game
                    DIP Switch Settings  -  Batch 980-13


Legend:   "*" indicates default settings
  
 DIP Switch 1 block
|----------------------------|-----|-----|-----|-----|-----|-----|-----|-----|
|Function                    | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | SW7 | SW8 |
|============================|=====|=====|=====|=====|=====|=====|=====|=====|
|Screen Mode   NORMAL       *|     | OFF |     |     |     |     |     |     |
|              REVERSE       |     | ON  |     |     |     |     |     |     |
|----------------------------| OFF |-----|-----|     |     |     |     |     |
|Game Mode     PLAY         *|     |     | OFF |     |     |     |     |     |
|              TEST PATTERN  |     |     | ON  |     |     |     |     |     |
|----------------------------|     |-----|-----|-----|     |     |     |     |
|Attract Sound   YES        *|     |           | OFF |     |     |     |     |
|                NO          |     |           | ON  |     |     |     |     |
|----------------------------|     |-----------|-----|-----|-----|     |     |
|Coin A   1 COIN = 1 CREDIT  |     |                 | OFF | OFF |     |     |
|         2 COIN = 1 CREDIT *|     |                 | ON  | OFF |     |     |
|         3 COIN = 1 CREDIT  |     |                 | OFF | ON  |     |     |
|         4 COIN = 1 CREDIT  |     |                 | ON  | ON  |     |     |
|----------------------------|     |-----------------|-----|-----|-----|-----|
|Coin B   1 COIN = 2 CREDIT *|     |                             | OFF | OFF |
|         1 COIN = 3 CREDIT  |     |                             | ON  | OFF |
|         1 COIN = 4 CREDIT  |     |                             | OFF | ON  |
|         1 COIN = 6 CREDIT  |     |                             | ON  | ON  |
|----------------------------|-----|-----------------------------|-----|-----|


 DIP Switch 2 block
|----------------------------|-----|-----|-----|-----|-----|-----|-----|-----|
|Function                    | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | SW7 | SW8 |
|============================|=====|=====|=====|=====|=====|=====|=====|=====|
|Difficulty   B (Normal)    *| OFF | OFF |     |     |     |     |     |     |
|             A (Easy)       | ON  | OFF |     |     |     |     |     |     |
|             C (Hard)       | OFF | ON  |     |     |     |     |     |     |
|             D (Hardest)    | ON  | ON  |     |     |     |     |     |     |
|----------------------------|-----|-----|-----|-----|     |     |     | OFF |
|Bonus at.  50000/150000 pts*|           | OFF | OFF |     |     |     |     |
|1st/every  70000/200000 pts |           | ON  | OFF |     |     |     |     |
|           50000 pts only   |           | OFF | ON  |     |     |     |     |
|          100000 pts only   |           | ON  | ON  |     |     |     |     |
|----------------------------|-----------|-----|-----|-----|-----|     |     |
|Lives (Heroes)   3         *|                       | OFF | OFF |     |     |
|                 5          |                       | ON  | OFF |     |     |
|                 4          |                       | OFF | ON  |     |     |
|                 2          |                       | ON  | ON  |     |     |
|----------------------------|-----------------------|-----|-----|-----|     |
|DIP-SW Test   PLAY         *|                                   | OFF |     |
|              SHOW DIP-SW   |                                   | ON  |     |
|----------------------------|-----------------------------------|-----|-----|

Notes:
Test button pin from JAMMA connector performs the same function as SW3 on Dip
Switch block 1 - ie, it shows a crosshatch with test pattern in the centre.
The two coin input pins on the JAMMA connector dont do anything.
There is only one Coin input, and not two as shown by the above dip switches
(Well only one's working anyway). The coin input works off the service pin on
the JAMMA connector ????

-



[MAME]

68000: Main CPU

00000-1ffff ROM for Flying Shark
00000-2ffff ROM for Twin Cobra
30000-33fff RAM shared with TMS320C10NL-14 protection microcontroller
40000-40fff RAM sprite display properties (co-ordinates, character, color - etc)
50000-50dff Palette RAM
7a000-7abff RAM shared with Z80; 16-bit on this side, 8-bit on Z80 side

read:
78001		DSW1 (Flying Shark)
78003		DSW2 (Flying Shark)

78005		Player 1 Joystick and Buttons input port
78007		Player 2 Joystick and Buttons input port
78009		bit 7 vblank, coin and control/service inputs (Flying shark)
				Flying Shark implements Tilt as 'freeze system' and also has
				a reset button, but its not implelemted here (not needed)

7e000-7e005 read data from video RAM (see below)

write:
60000-60003 CRT 6845 controller. 0 = register offset , 2 = register data
70000-70001 scroll   y   for character page (centre normally 0x01c9)
70002-70003 scroll < x > for character page (centre normally 0x00e2)
70004-70005 offset in character page to write character (7e000)

72000-72001 scroll   y   for foreground page (starts from     0x03c9)
72002-72003 scroll < x > for foreground page (centre normally 0x002a)
72004-72005 offset in character page to write character (7e002)

74000-74001 scroll   y   for background page (starts from     0x03c9)
74002-74003 scroll < x > for background page (centre normally 0x002a)
74004-74005 offset in character page to write character (7e004)

76000-76003 as above but for another layer maybe ??? (Not used here)
7800a		This activates INT line for Flying shark. (Not via 7800C)
			00		Activate INTerrupt line to the TMS320C10 DSP.
			01		Inhibit  INTerrupt line to the TMS320C10 DSP.

7800c		Control register (Byte write access).
			bits 7-4 always 0
			bits 3-1 select the control signal to drive.
			bit   0  is the value passed to the control signal.

			Value (hex):
			00-03	????
			04		Clear IPL2 line to 68000 inactive hi (Interrupt priority 4)
			05		Set   IPL2 line to 68000 active  low (Interrupt priority 4)
			06		Dont flip display
			07		Flip display
			08		Switch to background layer ram bank 0
			09		Switch to background layer ram bank 1
			0A		Switch to foreground layer rom bank 0
			0B		Switch to foreground layer rom bank 1
			0C		Activate INTerrupt line to the TMS320C10 DSP  (Twin Cobra)
			0D		Inhibit  INTerrupt line to the TMS320C10 DSP  (Twin Cobra)
			0E		Turn screen off
			0F		Turn screen on

7e000-7e001 data to write in text video RAM (70000)
7e002-7e003 data to write in bg video RAM (72004)
7e004-7e005 data to write in fg video RAM (74004)

Z80: Sound CPU
0000-7fff ROM
8000-87ff shared with 68000; 8-bit on this side, 16-bit on 68000 side

in:
00		  YM3812 status
10		  Coin inputs and control/service inputs (Twin Cobra)
40		  DSW1 (Twin Cobra)
50		  DSW2 (Twin Cobra)

out:
00		  YM3812 control
01		  YM3812 data
20		  Coin counters / Coin lockouts

TMS320C10 DSP: Harvard type architecture. RAM and ROM on seperate data buses.
0000-07ff ROM 16-bit opcodes (word access only). Moved to $8000-8fff for
				 MAME compatibility. View this ROM in the debugger at $8000h
0000-0090 Internal RAM (words).


in:
01		  data read from addressed 68K address space (Main RAM/Sprite RAM)

out:
00		  address of 68K to read/write to
01		  data to write to addressed 68K address space (Main RAM/Sprite RAM)
03		  bit 15 goes to BIO line of TMS320C10. BIO is a polled input line.


MCUs used with this hardware: (TMS320C10 in custom Toaplan/Taito disguise)

Twin Cobra					Sky Shark					Wardner
D70016U						D70012U  					D70012U
GXC-04						GXC-02						GXC-02
MCU (delta) 74000		        	MCU 71400					MCU (delta) 71900



68K writes the following to $30000 to tell DSP to do the following:
Twin  Kyukyoku
Cobra Tiger
00		00	 do nothing
01		0C	 run self test, and report DSP ROM checksum		from 68K PC:23CA6
02		07	 control all enemy shots						from 68K PC:23BFA
04		0B	 start the enemy helicopters					from 68K PC:23C66
05		08	 check for colision with enemy fire ???			from 68K PC:23C20
06		09	 check for colision with enemy ???				from 68K PC:23C44
07		01	 control enemy helicopter shots					from 68K PC:23AB2
08		02	 control all ground enemy shots
0A		04	 read hero position and send enemy to it ?		from 68K PC:23B58

03		0A	\
09		03	 \ These functions within the DSP never seem to be called ????
0B		05	 /
0C		06	/

68K writes the following to $30004 to tell DSP to do the following:
Flying	Hishou
Shark	Zame
00		00	 do nothing
03		0B	 Write sprite to sprite RAM
05		01	 Get angle
06		02	 Rotate towards direction
09		05	 Check collision between 2 spheres!??
0A		06	 Polar coordinates add
0B		07	 run self test, and report DSP ROM checksum

01		09	\
02		0A	 \
04		08	  > These functions within the DSP never seem to be called ????
07		03	 /
08		04	/




[Jan/01/98]

-----------------------
Kyukyoku Tiger by TAITO
-----------------------


The archive information:

Location   Type    ID    Checksum
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CPU J7    27512  B30-01    E0C9
CPU J8    27256  B30-02    7FE5
CPU H7    27512  B30-03    452F
CPU H8    27256  B30-04    1F6F
CPU F4    27256  B30-05    6B00
CPU B8    27256  B30-06    DAD6
CPU B9    27256  B30-07    26AA
CPU C8    27256  B30-08    1E9C
CPU C9    27256  B30-09    650D
CPU C11   27256  B30-10    3FEF
CPU C13   27256  B30-11    C22C
CPU C15   27256  B30-12    B0AB
CPU C17   27512  B30-13    DE37
CPU C19   27512  B30-14    C12E
CPU B17   27512  B30-15    BBD0
CPU B19   27512  B30-16    72D9

SUB D17   27512  B30-17    6DED
SUB D15   27512  B30-18    A4CB
SUB D14   27512  B30-19    E538
SUB B12   27512  B30-20    7026


Note: CPU - Main PCB      TP-011 MAIN
      SUB - Sub-board     TP-011 SUB




[???]


-----------------------
Kyukyoku Tiger by TAITO
-----------------------

The archive information:

Location   Type    ID    Checksum
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CPU J7    27512  B30-01    E0C9
CPU J8    27256  B30-02    7FE5
CPU H7    27512  B30-03    452F
CPU H8    27256  B30-04    1F6F
CPU F4    27256  B30-05    6B00
CPU B8    27256  B30-06    DAD6
CPU B9    27256  B30-07    26AA
CPU C8    27256  B30-08    1E9C
CPU C9    27256  B30-09    650D
CPU C11   27256  B30-10    3FEF
CPU C13   27256  B30-11    C22C
CPU C15   27256  B30-12    B0AB
CPU C17   27512  B30-13    DE37
CPU C19   27512  B30-14    C12E
CPU B17   27512  B30-15    BBD0
CPU B19   27512  B30-16    72D9

SUB D17   27512  B30-17    6DED
SUB D15   27512  B30-18    A4CB
SUB D14   27512  B30-19    E538
SUB B12   27512  B30-20    7026


Note: CPU - Main PCB      TP-011 MAIN
      SUB - Sub-board     TP-011 SUB



Twin Cobra information

The EPROM file "B30_26.256" goes into the socket with the number 2.
The EPROM file "B30_27.256" goes into the socket with the number 4.
These are 27C256 EPROMs.


[Jul/19/98]

             TWIN COBRA      ROMSTAR

USES 68000 CPU W/Z80 &YM3812 SOUND

NAME   LOCATION    TYPE
-------------------------     CONN BD 
05       4F        27256       "
06       8B         "          "
07       9B         "          "
08       8C         "          "
09       9C         "          "
10       11C        "          "
11       13C        "          "
12       15C        "          "
13       17C       27512       "
14       19C        "          "
15       17B        "          "
16       19B        "          "
01       7J         "          "
03       7H         "          "
26-1     8J         "          "
27-1     8H         "          "
17       17D        "         DAUGHTER BD
18       15D        "          "
19       14D        "          "
20       13D        "          "

-


[Jul/16/98]

Tiger by Taito (1987)

It's a pirate version of Twin Cobra.

64K files were 27512
32K files were 27256

It's a 68K game but has a TMS32010 DSP co-processor, the code from which is
not currently included in this image set. On request and if I can find a dead 
set and can get the PROMS de-soldered I'll extract the DSP code.


[Feb/08/99]

The DSP ROMS contained here are not from an actual Kyukyoku Tiger board.
These are a modified version of the DSP ROMS from the Twin Cobra (US)
board, made to work with Kyukyoku Tiger.

-








