
Zitat von
bataais
Noch was seltsames: Im CB-Emu scheint er zu laufen, im MessExtra nicht.
Also das ist nicht so seltsam, weil der Mondial II in CB-Emu die Version in 'messuix.exe' aufruft, und die ist noch älter (MAME 0.190) - dort hat alles noch funktioniert.
Inzwischen scheint es aber, daß ich eine Lösung durch Vergleichen verschiedener Treiberversionen gefunden habe:
In meiner verwendeten Version vom 13.4.2020 (die letzte bevor 'hap' die großen Änderungen gestartet hat), kommt da in der Enginekonfiguration folgender Befehl vor:
m_maincpu->set_periodic_int(FUNC(mephisto_mondial_state::nmi_ line_assert),...)
Ich kenne mich zwar hardware-technisch nicht aus, aber das scheint periodisch einen NMI-Interrupt auszulösen, der in einer anderen Funktion mondial2_input_mux_w durch m_maincpu->set_input_line(M65C02_NMI_LINE, CLEAR_LINE) wieder ausgeschaltet wird.
In hap's neuerer Version (und auch in der ganz alten aus 0.190) wird aber im ensprechenden Befehl nmi_line_pulse anstatt nmi_line_assert verwendet, d.h. der NMI-Interrupt wird von Haus aus gepulst, und der AUS-Schalt-Befehl entfällt dabei.
Und genau das habe ich jetzt auch probiert, also in der Konfiguration folgenden Befehl verwendet:
m_maincpu->set_periodic_int(FUNC(mephisto_mondial_state::nmi_ line_pulse),...)
und den Ausschalt-Befehl in der Funktion mondial2_input_mux_w einfach auskommentiert!
Jetzt hängt sich der Mondial II bei diesen Anfangszügen b3, c3 oder f3 nicht mehr auf - längere Partien hab ich noch nicht ausprobiert, aber ich vermute mal, daß das Problem damit gelöst ist.
Wie gesagt habe ich technisch keine Ahnung davon, und ob mein 'Bugfix'(?) tatsächlich korrekt ist, kann nur 'hap' sagen.
Grüße,
Franz