-stuntcyc: Assorted fixes to nl_stuntcyc. [Ryan Holtz]

This commit is contained in:
mooglyguy 2020-02-22 16:29:38 +01:00
parent 329863330a
commit 1db527eed8
2 changed files with 45 additions and 33 deletions

View File

@ -225,6 +225,9 @@ void stuntcyc_state::stuntcyc(machine_config &config)
/* basic machine hardware */
NETLIST_CPU(config, m_maincpu, STUNTCYC_NL_CLOCK).set_source(netlist_stuntcyc);
NETLIST_ANALOG_OUTPUT(config, "maincpu:vid0", 0).set_params("VIDEO_OUT", "fixfreq", FUNC(fixedfreq_device::update_composite_monochrome));
NETLIST_LOGIC_INPUT(config, "maincpu:coinsw", "coinsw.POS", 0);
NETLIST_LOGIC_INPUT(config, "maincpu:startsw1", "START1.POS", 0);
NETLIST_LOGIC_INPUT(config, "maincpu:startsw2", "START2.POS", 0);
/* video hardware */
SCREEN(config, "screen", SCREEN_TYPE_RASTER);
@ -282,6 +285,13 @@ static INPUT_PORTS_START( gtrak10 )
// TODO
INPUT_PORTS_END
static INPUT_PORTS_START( stuntcyc )
PORT_START("IN0") /* fake */
PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_COIN1) NETLIST_LOGIC_PORT_CHANGED("maincpu", "coinsw")
PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_START1) NETLIST_LOGIC_PORT_CHANGED("maincpu", "startsw1")
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_START2) NETLIST_LOGIC_PORT_CHANGED("maincpu", "startsw2")
INPUT_PORTS_END
/***************************************************************************
Game driver(s)
@ -571,23 +581,23 @@ ROM_END
*/
GAME(1975, antiairc, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Anti-Aircraft [TTL]", MACHINE_IS_SKELETON)
GAME(1975, crashnsc, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Crash 'n Score/Stock Car [TTL]", MACHINE_IS_SKELETON)
GAME(1974, gtrak10, 0, gtrak10, gtrak10, gtrak10_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 10/Trak 10/Formula K [TTL]", MACHINE_NOT_WORKING | MACHINE_NO_SOUND)
GAME(1974, gtrak10a, gtrak10, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 10/Trak 10/Formula K (older) [TTL]", MACHINE_IS_SKELETON)
GAME(1974, gtrak20, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 20/Trak 20/Twin Racer [TTL]", MACHINE_IS_SKELETON)
GAME(1976, indy4, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Indy 4 [TTL]", MACHINE_IS_SKELETON)
GAME(1975, indy800, 0, atarikee, 0, atarikee_state, empty_init, ROT90, "Atari/Kee", "Indy 800 [TTL]", MACHINE_IS_SKELETON)
GAME(1975, jetfight, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Jet Fighter/Jet Fighter Cocktail/Launch Aircraft (set 1) [TTL]", MACHINE_IS_SKELETON)
GAME(1975, jetfighta, jetfight, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Jet Fighter/Jet Fighter Cocktail/Launch Aircraft (set 2) [TTL]", MACHINE_IS_SKELETON)
GAME(1976, lemans, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Le Mans [TTL]", MACHINE_IS_SKELETON)
GAME(1976, outlaw, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Outlaw [TTL]", MACHINE_IS_SKELETON)
GAME(1974, qwakttl, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Qwak!/Quack [TTL]", MACHINE_IS_SKELETON)
GAME(1975, sharkjaw, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Horror Games", "Shark JAWS [TTL]", MACHINE_IS_SKELETON)
GAME(1975, steeplec, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Steeplechase [TTL]", MACHINE_IS_SKELETON)
GAME(1976, stuntcyc, 0, stuntcyc, 0, stuntcyc_state, empty_init, ROT0, "Atari", "Stunt Cycle [TTL]", MACHINE_IS_SKELETON)
GAME(1974, tank, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Tank/Tank Cocktail [TTL]", MACHINE_IS_SKELETON)
GAME(1975, tankii, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Tank II [TTL]", MACHINE_IS_SKELETON)
GAME(1975, antiairc, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Anti-Aircraft [TTL]", MACHINE_IS_SKELETON)
GAME(1975, crashnsc, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Crash 'n Score/Stock Car [TTL]", MACHINE_IS_SKELETON)
GAME(1974, gtrak10, 0, gtrak10, gtrak10, gtrak10_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 10/Trak 10/Formula K [TTL]", MACHINE_NOT_WORKING | MACHINE_NO_SOUND)
GAME(1974, gtrak10a, gtrak10, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 10/Trak 10/Formula K (older) [TTL]", MACHINE_IS_SKELETON)
GAME(1974, gtrak20, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Gran Trak 20/Trak 20/Twin Racer [TTL]", MACHINE_IS_SKELETON)
GAME(1976, indy4, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Indy 4 [TTL]", MACHINE_IS_SKELETON)
GAME(1975, indy800, 0, atarikee, 0, atarikee_state, empty_init, ROT90, "Atari/Kee", "Indy 800 [TTL]", MACHINE_IS_SKELETON)
GAME(1975, jetfight, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Jet Fighter/Jet Fighter Cocktail/Launch Aircraft (set 1) [TTL]", MACHINE_IS_SKELETON)
GAME(1975, jetfighta, jetfight, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Jet Fighter/Jet Fighter Cocktail/Launch Aircraft (set 2) [TTL]", MACHINE_IS_SKELETON)
GAME(1976, lemans, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Le Mans [TTL]", MACHINE_IS_SKELETON)
GAME(1976, outlaw, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Outlaw [TTL]", MACHINE_IS_SKELETON)
GAME(1974, qwakttl, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Qwak!/Quack [TTL]", MACHINE_IS_SKELETON)
GAME(1975, sharkjaw, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Horror Games", "Shark JAWS [TTL]", MACHINE_IS_SKELETON)
GAME(1975, steeplec, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Steeplechase [TTL]", MACHINE_IS_SKELETON)
GAME(1976, stuntcyc, 0, stuntcyc, stuntcyc, stuntcyc_state, empty_init, ROT0, "Atari", "Stunt Cycle [TTL]", MACHINE_IS_SKELETON)
GAME(1974, tank, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Tank/Tank Cocktail [TTL]", MACHINE_IS_SKELETON)
GAME(1975, tankii, 0, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari/Kee", "Tank II [TTL]", MACHINE_IS_SKELETON)
// MISSING ROM DUMPS
//GAME(1975, astrotrf, steeplec, atarikee, 0, atarikee_state, empty_init, ROT0, "Atari", "Astroturf [TTL]", MACHINE_IS_SKELETON)

View File

@ -22,7 +22,6 @@ NETLIST_START(stuntcyc)
TTL_INPUT(high, 1)
TTL_INPUT(low, 0)
//MAINCLOCK(main_clk, 14258400)
MAINCLOCK(main_clk, 14318000)
ALIAS(Y1, main_clk)
@ -113,8 +112,8 @@ NETLIST_START(stuntcyc)
ALIAS(V4, K1.QD)
ALIAS(V_WINDOW, K2.RC)
TTL_7402_NOR(D4_3, DIRECTION_Q, H6) // Schematic says DIRECTION
TTL_7408_AND(B5_1, DIRECTION_Q, H5_AND_H6) // Schematic says DIRECTION
TTL_7402_NOR(D4_3, DIRECTION, H6) // Schematic says DIRECTION, maybe DIRECTION_Q?
TTL_7408_AND(B5_1, DIRECTION, H5_AND_H6) // Schematic says DIRECTION, maybe DIRECTION_Q?
TTL_7402_NOR(D4_4, D4_3.Q, B5_1.Q)
TTL_7400_NAND(H2_1, HSYNC_Q, D4_4.Q)
TTL_7400_NAND(H2_2, HSYNC_Q, H5)
@ -155,7 +154,7 @@ NETLIST_START(stuntcyc)
DIODE(D22, "1N914")
SWITCH2(coinsw)
NET_C(K8_6.Q, coinsw.1)
NET_C(K8_5.Q, coinsw.1)
NET_C(D21.K, coinsw.2)
NET_C(coinsw.Q, GND)
@ -188,11 +187,13 @@ NETLIST_START(stuntcyc)
TTL_INPUT(ANTENNA, 0)
DIODE(D3, "1N914")
NET_C(D3.A, GND)
QBJT_SW(Q9, "2N3643")
RES(R9, 330)
RES(R10, 100)
CAP(CX3, CAP_U(0.1))
NET_C(ANTENNA, Q9.B)
NET_C(ANTENNA, Q9.B, D3.K)
NET_C(Q9.E, GND)
NET_C(R10.1, CX3.1, Q9.C, R9.1)
@ -207,9 +208,9 @@ NETLIST_START(stuntcyc)
RES(R8, 330)
CAP(C2, CAP_U(0.1))
QBJT_SW(Q11, "2N3644")
NET_C(D2.A, R8.1, Q10.C)
ALIAS(COIN_Q, D2.K)
NET_C(COIN_Q, D2.K)
NET_C(R8.2, R7.2, C2.2, Q11.B)
NET_C(R7.1, C2.1, Q11.E, V5)
@ -235,6 +236,7 @@ NETLIST_START(stuntcyc)
TTL_7400_NAND(J8_2, FREE_COIN_Q, H8_2.QQ)
TTL_74107(J9_2, 64V, J8_2.Q, J9_1.QQ, J8_2.Q)
ALIAS(COIN_Q, J9_2.QQ)
TTL_7450_ANDORINVERT(K9_2, creditsw.Q, K8_5.Q, FREE_COIN, 2_PLAYER_MODE_Q)
TTL_7400_NAND(J8_1, K9_2.Q, J9_2.QQ)
TTL_74107(J9_1, 64V, J8_1.Q, GROUND, J8_2.Q)
@ -428,20 +430,20 @@ NETLIST_START(stuntcyc)
ALIAS(PLAYER_CONTROL, H6_4.Q)
TTL_7404_INVERT(D3_2, 128V)
TTL_7450_ANDORINVERT(D1_1, D3_2.Q, 256H_Q, D5_4.Q, 128V)
TTL_7450_ANDORINVERT(D1_1, D3_2.Q, 256H_Q, D5_4.Q, V_SCORE_Q)
TTL_9322(B7, D1_1.Q, A, G, B, H, D, K, C, J, GROUND)
TTL_9322(A7, D1_1.Q, E, L, M, F, GROUND, GROUND, GROUND, GROUND, GROUND)
TTL_9322(B7, D1_1.Q, A, G, B, H, C, J, D, K, GROUND)
TTL_9322(A7, D1_1.Q, E, L, F, M, GROUND, GROUND, GROUND, GROUND, GROUND)
ALIAS(S1, B7.Y1)
ALIAS(S2, B7.Y2)
ALIAS(S3, B7.Y4)
ALIAS(S4, B7.Y3)
ALIAS(S3, B7.Y3)
ALIAS(S4, B7.Y4)
ALIAS(S5, A7.Y1)
ALIAS(S6, A7.Y2)
TTL_9322(C7, 16H, S5, S1, S6, S2, GROUND, S4, GROUND, S3, GROUND)
TTL_7448(C6, C7.Y1, C7.Y2, C7.Y4, C7.Y3, P, SCORE_WINDOW, 16H)
DM9312(B6, 2H, 4H, 8H, 8H, C6.f, GROUND, GROUND, C6.b, C6.e, GROUND, GROUND, C6.c)
TTL_9322(C7, 16H, S5, S1, S6, S2, GROUND, S3, GROUND, S4, GROUND)
TTL_7448(C6, C7.Y1, C7.Y2, C7.Y3, C7.Y4, P, SCORE_WINDOW, 16H)
DM9312(B6, 2H, 4H, 8V, 8H, C6.f, GROUND, GROUND, C6.b, C6.e, GROUND, GROUND, C6.c)
DM9312(A6, 2V, 4V, 8V, 8H, C6.a, GROUND, GROUND, C6.g, GROUND, GROUND, GROUND, C6.d)
TTL_7408_AND(B5_4, A6.YQ, B6.YQ)
TTL_7474(A5_1, CLOCK, B5_4.Q, P, P)
@ -585,7 +587,7 @@ NETLIST_START(stuntcyc)
ALIAS(R2, M8.QB)
ALIAS(R3, M8.QC)
TTL_74193(L8, FIXED_RAMP_ZONE_Q, FIXED_RAMP_ZONE, GROUND, GROUND, JUMP_Q, LOAD_Q, P, GRAVITY) // Schematics say C and D should be to VCC?
TTL_74193(L8, FIXED_RAMP_ZONE_Q, FIXED_RAMP_ZONE, P, P, JUMP_Q, LOAD_Q, P, GRAVITY) // Schematics say C and D should be to VCC - maybe ground instead?
ALIAS(Av, L8.QA)
ALIAS(Bv, L8.QB)
ALIAS(Cv, L8.QC)