Merge pull request #1281 from superctr/technodr2

Techno Drive improvements
This commit is contained in:
Olivier Galibert 2016-08-21 15:18:03 +02:00 committed by GitHub
commit d75173b779
2 changed files with 12 additions and 2 deletions

View File

@ -141,12 +141,17 @@ READ8_MEMBER(h8_sci_device::tdr_r)
WRITE8_MEMBER(h8_sci_device::ssr_w) WRITE8_MEMBER(h8_sci_device::ssr_w)
{ {
cpu->synchronize();
if(!(scr & SCR_TE)) { if(!(scr & SCR_TE)) {
data |= SSR_TDRE; data |= SSR_TDRE;
ssr |= SSR_TDRE; ssr |= SSR_TDRE;
} }
if((ssr & SSR_TDRE) && !(data & SSR_TDRE)) if((ssr & SSR_TDRE) && !(data & SSR_TDRE))
{
ssr &= ~SSR_TEND; ssr &= ~SSR_TEND;
scr &= ~SCR_TIE;
}
ssr = ((ssr & ~SSR_MPBT) | (data & SSR_MPBT)) & (data | (SSR_TEND|SSR_MPB|SSR_MPBT)); ssr = ((ssr & ~SSR_MPBT) | (data & SSR_MPBT)) & (data | (SSR_TEND|SSR_MPB|SSR_MPBT));
if(V>=2) logerror("ssr_w %02x -> %02x (%06x)\n", data, ssr, cpu->pc()); if(V>=2) logerror("ssr_w %02x -> %02x (%06x)\n", data, ssr, cpu->pc());
@ -606,7 +611,7 @@ void h8_sci_device::tx_dropped_edge()
tx_bit = 0; tx_bit = 0;
clock_stop(CLK_TX); clock_stop(CLK_TX);
tx_cb(1); tx_cb(1);
ssr |= SSR_TEND; ssr |= SSR_TEND|SSR_TDRE;
if(scr & SCR_TEIE) if(scr & SCR_TEIE)
intc->internal_interrupt(tei_int); intc->internal_interrupt(tei_int);
break; break;

View File

@ -9,6 +9,9 @@
H8/3002 and Golgo13 support by R. Belmont based on work by The_Author and DynaChicken H8/3002 and Golgo13 support by R. Belmont based on work by The_Author and DynaChicken
JVS Support by R. Belmont JVS Support by R. Belmont
Notes:
- technodr: Calibrate controls by turning on the service mode switch (F2) while holdign service coin (9).
Issues: Issues:
not all games work due to either banking, dma or protection issues. not all games work due to either banking, dma or protection issues.
graphics are glitchy in some games. graphics are glitchy in some games.
@ -18,7 +21,9 @@
- truckk doesn't boot: the H8/3002 never enters InitJVSBoards @ 1DE2. 1DE2 is referenced in a table of commands at 4032, - truckk doesn't boot: the H8/3002 never enters InitJVSBoards @ 1DE2. 1DE2 is referenced in a table of commands at 4032,
which is called by the routine at 3FEA. It is not clear how execution is intended to get to 3FEA - there are no direct which is called by the routine at 3FEA. It is not clear how execution is intended to get to 3FEA - there are no direct
branches to that location, and the bytes 3F EA don't appear at all in the program. branches to that location, and the bytes 3F EA don't appear at all in the program.
- technodr: printer not emulated. To play the game, press F2 to enter the test menu, navigate to GAME OPTIONS and disable
the printer by setting "PRINTER" to OFF.
Namco System 12 - Arcade Playstation-based Hardware Namco System 12 - Arcade Playstation-based Hardware
=================================================== ===================================================