new working game

----------------
Virtua Fighter 2 [Angelo Salese, R. Belmont, Olivier Galibert, ElSemi]
This commit is contained in:
angelosa 2018-03-08 17:22:16 +01:00
parent 2bb2e5289a
commit d05c2080aa

View File

@ -9,70 +9,34 @@
Hardware and protection reverse-engineering and general assistance by ElSemi.
MAME driver by R. Belmont, Olivier Galibert, ElSemi and Angelo Salese.
TODO (updated as for April 2014):
- all Model 2B games: FIFO comms looks way wrong, and 3d is mostly missing/incomplete. Games also tends to stalls at some point, culprit might be when i960 tries
to use a burst type opcode read;
- Inputs needs device-ification and clean-ups;
- daytona: runs at half speed in gameplay;
- desert: several 3d bugs, presumably down to FIFO;
- dynamcop: stalls at stage select screen;
TODO:
- z-sort, focal distance, color gamma and Mip Mapping still needs to be properly sorted in the renderer;
- FIFO needs to be properly emulated in the various CPU cores (we currently rely on some workarounds);
- sound comms still needs some work (sometimes m68k doesn't get some commands or play them with a delay);
- 2C games needs TGPx4 emulation;
- clean-ups;
TODO (per-game issues)
- daytona: crashes when coining it up with master network active
culprit is a wrong command parameter in geo_parse texture data opcode;
- daytona: car glasses doesn't get loaded during gameplay;
- doa, doaa: corrupted sound, eventually becomes silent;
- dynamcopc: corrupts palette for 2d (most likely unrelated with the lack of DSP);
- fvipers, schamp: rasterizer has issues displaying some characters @see video/model2.cpp
- fvipers: enables timers, but then irq register is empty, hence it crashes with an "interrupt halt" at POST (regression);
- lastbrnx: uses external DMA port 0 for uploading SHARC program, hook-up might not be 100% right;
- lastbrnx: uses a shitload of unsupported SHARC opcodes (compute_fmul_avg, shift operation 0x11, ALU operation 0x89 (compute_favg));
- lastbrnx: eventually crashes in attract mode, geo_parse_nn_s() is the culprit apparently;
- manxtt: missing 3d;
- motoraid: stalls after course select;
- pltkidsa: after few secs of gameplay, background 3d disappears and everything reports a collision against the player;
- skytargt: MAME hardlocks after disclaimer screen;
- srallyc: opponent cars flickers like wild;
- vcop: lightgun input is offsetted;
- vcop: sound dies at enter initial screen (i.e. after played the game once);
- vcop: tilemap priority bug at stage select screen;
- vf2: stalls after disclaimer screen;
- vstriker: countdown in team select goes way too fast ...
- vstriker: ... meanwhile gameplay is way too slow!?
- zeroguna: stalls after some seconds of gameplay;
OK (controls may be wrong/missing/incomplete)
--
daytona/daytonat/daytonam
desert
vcop
vf2
vcop2
zerogun
gunblade
indy500
bel
hotd
topskatr
von
fvipers
schamp
stcc
srallyc
skytargt
dynamcop
dynabb97
lastbrnj/lastbrnx
skisuprg
almost OK
---------
overrev: sound CPU crashes.
vstriker: shows some attract mode, then hangs
manxtt: no escape from "active motion slider" tutorial (needs analog inputs), bypass it by entering then exiting service mode
manxtt: crashes after the title screen, the TGP is the cause
pltkids/pltkidsa: crashes after some time of gameplay.
rchase2: fails drive bd i/o check
TODO
----
Controls are pretty basic right now
Some games (sgt24h, indy500) hangs at random places, presumably due to a regression with the SHARC fifo comms
Sound doesn't work properly in all games
System 24 tilemaps need more advanced linescroll support (see fvipers, daytona)
2C needs DSP still
- lastbrnx: has wrong graphics, uses several SHARC opcodes that needs to be double checked
(compute_fmul_avg, shift operation 0x11, ALU operation 0x89 (compute_favg));
- manxtt: no escape from "active motion slider" tutorial (needs analog inputs),
bypass it by entering then exiting service mode;
- manxtt: no bikes are visible (not a z-sort issue!);
- sgt24h: first turn in easy reverse course has ugly rendered mountain in background;
- skytargt: really slow during gameplay;
- srallyc: some 3d elements doesn't show up properly (trees models, last hill in course 1 is often black colored);
- vcop: sound dies at enter initial screen (i.e. after played the game once) (untested);
- vcop: lightgun input is offsetted (needs to be calibrated in service mode);
- vcop: missing 3d bug at stage select screen (priority?);
- vstriker: stadium ads have terrible colors (they uses the wrong color table, @see video/model2rd.hxx)
======================================================================================================================================
@ -6166,10 +6130,10 @@ GAME( 1994, vcop, 0, model2o, vcop, model2o_state, 0,
GAME( 1994, vcopa, vcop, model2o, vcop, model2o_state, 0, ROT0, "Sega", "Virtua Cop (Revision A)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
// Model 2A-CRX (TGPs, SCSP sound board)
GAME( 1994, vf2, 0, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Version 2.1)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1994, vf2b, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Revision B)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1994, vf2a, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Revision A)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1994, vf2o, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1994, vf2, 0, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Version 2.1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
GAME( 1994, vf2b, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Revision B)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
GAME( 1994, vf2a, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2 (Revision A)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
GAME( 1994, vf2o, vf2, model2a, model2, model2a_state, 0, ROT0, "Sega", "Virtua Fighter 2", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
GAME( 1995, manxtt, 0, manxttdx, manxtt, model2a_state, 0, ROT0, "Sega", "Manx TT Superbike - DX (Revision D)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1995, manxttc, 0, manxtt, manxtt, model2a_state, 0, ROT0, "Sega", "Manx TT Superbike - Twin (Revision C)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )
GAME( 1995, srallyc, 0, srallyc, srallyc, model2a_state, srallyc, ROT0, "Sega", "Sega Rally Championship - Twin/DX (Revision C)", MACHINE_NOT_WORKING|MACHINE_IMPERFECT_GRAPHICS )