summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/lindbergh.c
blob: ef29ab1b4c0f749680baeb2c7a0481b4c5905fb4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
/***************************************************************************

    Sega Lindbergh skeleton driver

    TODO:
    - tests area 0xd0000 - 0xd000f, wants an undumped ROM in there?
    - Apparently there's no way to avoid a dead lock at 0xfd085, perhaps
      tied to the aforementioned?

***************************************************************************

Lindbergh
Sega 2005-2009

This is a "PC-based" arcade system. Different configurations have different colored boxes.
The version documented here is the red box. The PC part of it is mostly just the CPU,
Intel North/South-bridge chipset and AGP/PCI card slots etc. The main board is still
a typically custom-made Sega arcade PCB using a custom nVIDIA GeForce video card.
The main board also has a slot for a compact flash card. Primary storage media is DVD or HDD.
Both CF and HDD are locked and unreadable on a regular PC.

The familiar PIC is still present on the back of the system and likely decrypts the HDD and/or DVD.

On this red box the CPU is a Celeron D at 2.8GHz. RAM is 512M DDR PC3200
The box has Sega number 845-0001D-02

Lindbergh Game List
-------------------
                                               Security
Game                                           Dongle Sticker    PIC Number      DVD Code
------------------------------------------------------------------------------------------
*2 Spicy                                       253-5508-0491     317-0491-COM    DVP-0027A
 After Burner Climax (EXPORT)                  253-5508-0440A   ^317-0440-COM    DVP-0009
 After Burner Climax CE                        ?                 ?               DVP-0031A
 Ami-Gyo                                       ?                 ?               ?
 Answer X Answer                               ?                 ?               ?
 Answer X Answer 1.1                           ?                 ?               ?
 Answer X Answer DX                            ?                 ?               ?
 Answer X Answer Premium                       ?                 ?               ?
 Club Majesty Extend                           ?                 ?               ?
 Club Majesty Formal                           ?                 ?               ?
 Derby Owners Club 2008: Feel the Rush         ?                 ?               DVP-0047A
 Derby Owners Club 2008: Feel the Rush V2.0    ?                 ?               ?
*Ghost Squad Evolution                         ?                 ?               ?
 Harley Davidson: King of the Road             ?                 ?               ?
 Hummer Extreme                                ?                 ?               ?
 Initial D Arcade Stage 4                      ?                 ?               DVP-0019
 Initial D Arcade Stage 4 (rev A)              ?                 ?               DVP-0019A
 Initial D Arcade Stage 4 (rev B)              ?                 ?               DVP-0019B
 Initial D Arcade Stage 4 (rev D)              ?                 ?               DVP-0019D
 Initial D Arcade Stage 4 (rev G)              ?                 ?               DVP-0019G
 Initial D4                                    ?                 ?               DVP-0030
 Initial D4 (rev B)                            253-5508-0486E    317-0486-COM    DVP-0030B
*Initial D4 (rev C)                            253-5508-0486E    317-0486-COM    DVP-0030C
*Initial D4 (rev D)                            253-5508-0486E    317-0486-COM    DVP-0030D
 Initial D Arcade Stage 5                      ?                 ?               ?
 Let's Go Jungle (EXPORT)                      253-5508-0442     317-0442-COM    DVP-0011
 MJ4                                           ?                 ?               ?
 OutRun 2 Special Tours (EXPORT)               253-5508-0452     317-0452-COM    ?
 OutRun 2 SP SDX                               ?                 ?               DVP-0015A
*Primeval Hunt                                 253-5508-0512     317-0512-COM    DVP-0048A
 R-Tuned: Ultimate Street Racing               ?                 ?               DVP-0060
*Rambo (EXPORT)                                253-5508-0540    ^317-0540-COM    DVP-0069
 SEGA Network Taisen Mahjong MJ4 (rev A)       ?                 ?               DVP-0049A
 SEGA Network Taisen Mahjong MJ4 (rev F)       ?                 ?               DVP-0049F
 SEGA Network Taisen Mahjong MJ4 (rev G)       ?                 ?               DVP-0049G
*SEGA-Race TV (EXPORT)                         253-5508-0504    ^317-0504-COM    DVP-0044
 StarHorse 2: Fifth Expansion (rev D)          ?                 ?               DVP-0082D
 StarHorse 2: Fifth Expansion (rev E)          ?                 ?               DVP-0082E
*The House Of The Dead 4 (EXPORT)              253-5508-0427    ^317-0427-COM    DVP-0003A
 The House Of The Dead EX (JAPAN)              253-5508-0550    ^317-0550-JPN    ?
 The House Of the Dead 4 Special               ?                 ?               ?
*VBIOS Update                                  ?                 ?               DVP-0021B
 VBIOS Update [For VTF]                        ?                 ?               DVP-0023A
 Virtua Fighter 5 (EXPORT)                     253-5508-0438     317-0438-COM    DVP-0008E
 Virtua Tennis 3 (Power Smash 3)               ?                 ?               DVP-0005
 Virtua Tennis 3 (Power Smash 3) (EXPORT)      253-5508-0434    ^317-0434-COM    DVP-0005A
*Virtua Tennis 3 (JAPAN)                       253-5508-0506     317-0506-JPN    DVP-0005C
 WCC Football Intercontinental Clubs 2006-2007 ?                 ?               ?
 WCC Football Intercontinental Clubs 2007-2008 ?                 ?               ?
 WCC Football Intercontinental Clubs 2008-2009 ?                 ?               ?
 WCC Football Intercontinental Clubs 2009-2010 ?                 ?               ?

* denotes these DVDs are archived. 
^ denotes these PICs are archived. 
This list is not necessarily correct or complete.
Corrections and additions to the above are welcome.


Mainboard
---------

838-14487
Sticker: 838-14673
                   |----|     |-----|
                   |USB ||---||1/8  | |-------|
                   |USB ||USB||AUDIO| |SERIAL1|  SECURITY
-------------------|RJ45||USB||JACKS|-|SERIAL2|--CONNECTOR---|
|OSC(D245L6I)                                                |
|      VIA                   OSC(D250L6I)                    |
|      VT1616          |-------|                             |
|                      |82541PI|  12V_POWER                  |
|                      |INTEL  |                             |
|  P  P  P  P          |-------|              |-----------|  |
|  C  C  C  C                        ISL6556B |           |  |
|  I  I  I  I         A          |-------|    |           |  |
|  4  3  2  1         G          |JG82875|    |           |  |
|                     P          |SL8DB  |    |    CPU    |  |
|                                |       |    |           |  |
|                                |INTEL  |    |           |  |
|          14.31818MHz           |-------|    |           |  |
|JP                                           |-----------|  |
|12                                                          |
|34  |-------| 932S208DG           SIMM1(512M DDR PC3200)    |
|56  |6300ESB|                                               |
|78  |SL7XJ  |                     SIMM2                     |
|910 |       |                                               |
|1112|INTEL  |                     SIMM3                     |
|    |-------|                                               |
|32.768kHz         |---------|     SIMM4                     |
| 3V_BATT          |COMPACT  |                               |
|    MB_BIOS.3J7   |FLASH    |     IDE40                     |
|                  |SLOT     |     IDE40       ATX_POWER     |
|------------------|---------|-------------------------------|
Notes:
           CPU - Intel Celeron D 335 SL8HM 2.8GHz 256k L2 cache, 533MHz FSB
       82541PI - Intel Gigabit Ethernet Controller
       6300ESB - Intel Southbridge IC
       JG82875 - Intel Northbridge IC
      ISL6556B - Intersil ISL6556B Optimized Multiphase PWM Controller with 6-Bit
                 DAC and Programmable Internal Temperature Compensation
      932S208DG- IDT 932S208DG Programmable PLL Clock synthesizer
        VT1616 - VIA VT1616 6-channel AC97 codec sound IC
            JP - Jumpers....
                 1-3 Normal (SET ON)
                 1-2 CMOS
                 3-4 PASSWORD
                 5-6 PCBL
                 7-8 BIOS
                 9-10 CF SLAVE
                 11-12 CF MASTER (SET ON)
         IDE40 - ATA133 IDE connector(s)
                 A 40GB HDD is plugged in via an 80-pin flat cable
                 This game is 'Too Spicy'. The hard drive is a Hitachi Deskstar
                 model HDS728040PLAT20. Capacity is 41GB. C/H/S 16383/16/63
                 LBA 80,418,240 sectors. In the model number 8040 means 80GB full
                 capacity but only 40GB is actually available
                 P/N: 0A30209 BA17730E6B
                 Serial: EETNGM0G
       CF SLOT - Accepts a compact flash card. The card is required to boot the system.
                 Revision C and E have been seen. StarHorse 2 has it's own special card.
                 There may be other revisions out there.
                 Sticker: LINDBERGH
                          MDA-C0004A
                          REV. C


Rear Board incorporating Security Board (plugged into main board security connector)
---------------------------------------

This board has the power input connectors on it and holes for access to the mainboard
I/O conections (LAN/COM/USB/speakers etc). Lower left is where the security board is plugged in.

837-14520R
171-8322C
839-1275
Sticker 839-1275R
|----------------------------------|
|                                  |
|                                  |
|       POWER       POWER          |
|                           CN5    |
|                                  |
| LED LED                          |
|                                  |
| DSW(8)                           |
|                                  |
|                                  |
|      SW2  SW1                    |
|                    C/W           |
|                                  |
|     CN2                          |
|-------------|COM1  SPK_REAR  LAN |
|             |                USB4|
|   DIP18.IC1 |                USB3|
|             |COM2  SPK_FR    USB2|
|SECURITY_CONN|                USB1|
|-------------|--------------------|
DSW(8)    - OFF,OFF,OFF,ON,ON,OFF,OFF,ON
DIP18.IC1 - DIP18 socket for protection PIC16F648A

                        Sega Security
            Game        ID Number      Dongle Sticker
            -----------------------------------------
            Too Spicy   317-0490-COM   253-5508-0491


Video Card (plugged into AGP slot)
----------

nVIDIA 180-10508-0000-A00
Sticker: BIOS VERSION 5.73.22.55.08
Sticker: 900-10508-2304-000 D 032 Made In China
Sticker: 600-10508-0004-000 J
Sticker: GeForce 7600 GS 0325206031558
 |----------------------------------------|
 |  VRAM *VRAM                VRAM *VRAM  |-|
 |                                        | |POWER_CONN
 | *VRAM  VRAM |---------|   *VRAM  VRAM  | |
|-V            |NVIDIA   |                |-|
| G            |U611B269 |                |
|-A            |0646B1S  |                |
 |       27MHz |NA6105.00P                |
 |             |G73-N-B1 |                |
 |             |---------|                |
 |                                        |
|-D  *RT9173C             |-------| 25MHz |
| V                       |NVIDIA |       |
| I      *VID_BIOS.U504   |HSI-N-A4       |
|-                        |4MJHT07B30 0607|
 |                        |-------|       |
 |    |----------|     AGP     |----------|
 |----|          |-------------|
Notes:
       * - These parts on the other side of the PCB
    VRAM - QIMONDA HYB18T256161AFL25 WVV10017 256Mbit x16 DDR2 SDRAM (P-TFBGA-84)
VID_BIOS - SST 25VF512 512Kbit serial flash ROM (video BIOS) at location U504 (SOIC8)


JVS I/O Card (plugged into PCI slot #4)
------------

Sega 2004
171-8300C
837-14472R
Sticker: 837-14472R91
|-----------------------------------------|
|                                  3V_BATT|
|        FLASH.IC6            DS14185     |
|                   D442012               |
|                                         |
|LED                                      |
|    DS485                                |
|USB                                0.1F  |
|                                   5.5v  |
|          EDS1232 |--------|       SUPERCAP
|   RTL8201        |FREESCALE             |
|                  |MPC8248 |             |
|RJ45   25MHz      |        |48MHz        |
|                  |        |58.9824MHz   |
| ISP1106          |--------|             |
|mUSB                            PQ070XZ1H|
|  |--------|      PCI      |-------------|
|--|        |---------------|
Notes:
      FLASH.IC6 - Spansion S29AL032D70 32Mbit flash ROM labelled 'FPR-24370B' (TSOP48)
      DS14185   - National Semiconductor DS14185 EIA/TIA-232 3 Driver x 5 Receiver (SOIC10)
      DS485     - National Semiconductor DS485 Low Power RS-485/RS-422 Multipoint Transceiver (SOIC8)
      MPC8248   - Freescale MPC8248 PowerQUICC II Family Multi-Channel Controller (PBGA516)
      EDS1232   - Elpida EDS1232AATA-75-E 128Mbit SDRAM (4M word x 32bit)
      D442012   - NEC D442012AGY-BB70 2Mbit CMOS Static RAM (128k-word x 16bit)
      ISP1106   - NXP Semiconductor ISP1106 Advanced Universal Serial Bus transceiver (SSOIC16)
      RTL8201   - Realtek RTL8201 Single Chip Single Pport 10/100M Fast Ethernet IC (QFP48)
      mUSB      - Mini USB connector


JVS I/O Board (connects arcade machine controls etc to PC)
-------------

Sega 2005
837-14572
171-8357B
|------------------------|
| USB_B USB_A CN6 CN7 CN8|
| GH6-2F                 |
| DS485   14.745MHz      |
|      UPC393            |
|           315-6414  CN9|
|                        |
|CN1 CN2       CN3       |
|------------------------|

*/

#include "emu.h"
#include "cpu/i386/i386.h"
#include "machine/pci.h"
#include "machine/i82875p.h"
#include "machine/i6300esb.h"
#include "machine/pci-usb.h"
#include "machine/pci-apic.h"
#include "machine/pci-sata.h"
#include "machine/pci-smbus.h"
#include "machine/i82541.h"
#include "machine/segabb.h"
#include "sound/pci-ac97.h"
#include "sound/sb0400.h"
#include "video/gf6800gt.h"

class lindbergh_state : public driver_device
{
public:
	lindbergh_state(const machine_config &mconfig, device_type type, const char *tag);

	virtual void machine_start();
	virtual void machine_reset();
};

#if 0
static ADDRESS_MAP_START(lindbergh_map, AS_PROGRAM, 32, lindbergh_state)
	AM_RANGE(0x00000000, 0x0009ffff) AM_RAM
										//  AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff)
										//  AM_RANGE(0x000c0000, 0x000cffff) AM_ROM AM_REGION("vid_bios", 0)
//  0xd0000 - 0xdffff tested, wants 0x414d ("AM") in there
	AM_RANGE(0x000f0000, 0x000fffff) AM_ROM AM_REGION("mb_bios", 0xf0000)
//  AM_RANGE(0xfd000000, 0xfd3fffff) AM_ROM AM_REGION("jvs_bios", 0)    /* Hack to see the data */
	AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("mb_bios", 0)     /* System BIOS */
ADDRESS_MAP_END

static ADDRESS_MAP_START(lindbergh_io, AS_IO, 32, lindbergh_state)
//  AM_IMPORT_FROM(pcat32_io_common)

//  AM_RANGE(0x00e8, 0x00ef) AM_NOP
//  AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
ADDRESS_MAP_END
#endif

lindbergh_state::lindbergh_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag)
{
}

void lindbergh_state::machine_start()
{
}

void lindbergh_state::machine_reset()
{
}

static MACHINE_CONFIG_START(lindbergh, lindbergh_state)
//  MCFG_CPU_ADD("maincpu", PENTIUM, 2800000000U) /* Actually Celeron D at 2,8 GHz */
	MCFG_CPU_ADD("maincpu", PENTIUM4, 28000000U*5) /* Actually Celeron D at 2,8 GHz */
//  MCFG_CPU_PROGRAM_MAP(lindbergh_map)
//  MCFG_CPU_IO_MAP(lindbergh_io)
//  MCFG_CPU_IRQ_ACKNOWLEDGE_DEVICE("pic8259_1", pic8259_device, inta_cb)

//  MCFG_FRAGMENT_ADD( pcat_common )
//  MCFG_FRAGMENT_ADD( pcvideo_vga )

//  MCFG_PCI_BUS_LEGACY_ADD("pcibus", 0)

	MCFG_PCI_ROOT_ADD(                ":pci")
	MCFG_I82875P_HOST_ADD(            ":pci:00.0",                        0x103382c0, ":maincpu", 512*1024*1024)
	MCFG_I82875P_AGP_ADD(             ":pci:01.0")
	MCFG_GEFORCE_6800GT_ADD(          ":pci:01.0:00.0",                   0x10de0204)
	MCFG_PCI_BRIDGE_ADD(              ":pci:1c.0",      0x808625ae, 0x02)
	MCFG_I82541PI_ADD(                ":pci:1c.0:00.0",                   0x103382c0)
	MCFG_USB_UHCI_ADD(                ":pci:1d.0",      0x808625a9, 0x02, 0x103382c0)
	MCFG_USB_UHCI_ADD(                ":pci:1d.1",      0x808625aa, 0x02, 0x103382c0)
	MCFG_I6300ESB_WATCHDOG_ADD(       ":pci:1d.4",                        0x103382c0)
	MCFG_APIC_ADD(                    ":pci:1d.5",      0x808625ac, 0x02, 0x103382c0)
	MCFG_USB_EHCI_ADD(                ":pci:1d.7",      0x808625ad, 0x02, 0x103382c0)
	MCFG_PCI_BRIDGE_ADD(              ":pci:1e.0",      0x8086244e, 0x0a)
	MCFG_SB0400_ADD(                  ":pci:1e.0:02.0",                   0x11021101)
	MCFG_SEGA_LINDBERGH_BASEBOARD_ADD(":pci:1e.0:03.0")
	MCFG_I6300ESB_LPC_ADD(            ":pci:1f.0")
	MCFG_LPC_ACPI_ADD(                ":pci:1f.0:acpi")
	MCFG_LPC_RTC_ADD(                 ":pci:1f.0:rtc")
	MCFG_SATA_ADD(                    ":pci:1f.2",      0x808625a3, 0x02, 0x103382c0)
	MCFG_SMBUS_ADD(                   ":pci:1f.3",      0x808625a4, 0x02, 0x103382c0)
	MCFG_AC97_ADD(                    ":pci:1f.5",      0x808625a6, 0x02, 0x103382c0)
MACHINE_CONFIG_END

ROM_START(lindbios)
	ROM_REGION32_LE(0x100000, ":pci:1f.0", 0) // PC bios, location 3j7
	ROM_SYSTEM_BIOS(0, "bios0", "6.0.0010 alternate version")
	ROMX_LOAD("6.0.0010a.bin", 0x00000, 0x100000, CRC(10dd9b76) SHA1(1fdf1f921bc395846a7c3180fbdbc4ca287a9670), ROM_BIOS(1) )
	ROM_SYSTEM_BIOS(1, "bios1", "6.0.0009")
	ROMX_LOAD("6.0.0009.bin", 0x00000, 0x100000, CRC(5ffdfbf8) SHA1(605bc4967b749b4e6d13fc2ebb845ba956a259a7), ROM_BIOS(2) )
	ROM_SYSTEM_BIOS(2, "bios2", "6.0.0010")
	ROMX_LOAD("6.0.0010.bin", 0x00000, 0x100000, CRC(ea2bf888) SHA1(c9c5b6f0d4f4f36620939b15dd2f128a74347e37), ROM_BIOS(3) )


	ROM_REGION(0x400000, ":pci:1e.0:03.0", 0) // Baseboard MPC firmware
	ROM_LOAD("fpr-24370b.ic6", 0x000000, 0x400000, CRC(c3b021a4) SHA1(1b6938a50fe0e4ae813864649eb103838c399ac0))

	ROM_REGION32_LE(0x10000, ":pci:01.0:00.0", 0) // Geforce bios extension (custom or standard?)
	ROM_LOAD("vid_bios.u504", 0x00000, 0x10000, CRC(f78d14d7) SHA1(f129787e487984edd23bf344f2e9500c85052275))
ROM_END

GAME(1999, lindbios, 0, lindbergh, 0, driver_device, 0, ROT0, "Sega Lindbergh", "Sega Lindbergh Bios", GAME_IS_SKELETON)