MIT: Difference between revisions

From MAMEDEV Wiki
No edit summary
No edit summary
Line 2: Line 2:
This page is designed to allow for a quick look over all the drivers with a MACHINE_IMPERFECT_TIMING flag by giving, as much as possible, an idea on the amount of effort needed to fix them.
This page is designed to allow for a quick look over all the drivers with a MACHINE_IMPERFECT_TIMING flag by giving, as much as possible, an idea on the amount of effort needed to fix them.


== [http://github.com/mamedev/mame/blob/master/src/mame/alpha/alpha68k.cpp alpha68k] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/acorn/aristmk5.cpp acorn/aristmk5] ==
Games are running at double speed.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/alpha/alpha68k.cpp alpha/alpha68k] ==
''' goldmedl, goldmedla, goldmedlb ''' - Dash events timers relies on MCU irq timings, which can't be accurate til the MCU is decapped and emulated.
''' goldmedl, goldmedla, goldmedlb ''' - Dash events timers relies on MCU irq timings, which can't be accurate til the MCU is decapped and emulated.


== [http://github.com/mamedev/mame/blob/master/src/mame/alpha/alpha68k_n.cpp alpha68k_n] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/alpha/alpha68k_n.cpp alpha/alpha68k_n] ==
''' sstingry ''' - Super Stingray MCU irq controls timer speed. The MCU has been hooked up but the clock is almost certainly wrong.
''' sstingry ''' - Super Stingray MCU irq controls timer speed. The MCU has been hooked up but the clock is almost certainly wrong.


== [http://github.com/mamedev/mame/blob/master/src/mame/acorn/aristmk5.cpp aristmk5] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/chess/tasc.cpp chess/tasc] ==
Games are running at double speed.
More accurate dynamic cpu clock divider is needed.


== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/as12.cpp as12] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/as12.cpp fidel/as12] ==
Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse.  Is the problem here is due to timing of CPU addressbus changes?
Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse.  Is the problem here is due to timing of CPU addressbus changes?


== [http://github.com/mamedev/mame/blob/master/src/mame/tiger/bingobear.cpp bingobear] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/eag68k.cpp fidel/eag68k] ==
''' feagv10 ''' - V10 CPU emulation is too slow, MAME 68040 opcode timing is same as 68030 but in reality it is much faster, same goes for V11 of course (see below).


== [http://github.com/mamedev/mame/blob/master/src/mame/nichibutsu/clshroad.cpp clshroad] ==
''' feagv11 ''' - V11 CPU should be M68EC060, not yet emulated. Now using M68EC040 in its place at twice the frequency due to lack of superscalar.
''' clshroad and clones ''' - Main and sound CPUs synching isn't perfect.


== [http://github.com/mamedev/mame/blob/master/src/mame/konami/cobra.cpp cobra] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/elite.cpp fidel/elite] ==
fpres/feas irq active time needs verifying.


== [http://github.com/mamedev/mame/blob/master/src/mame/nintendo/cothello.cpp cothello] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/sc12.cpp fidel/sc12] ==
CPU speed is wrong, it's likely running at 1.79MHz. But that's way too fast compared to videos of the game. 0.9MHz(XTAL/4) is also too fast. It's probably due to the M58741P HOLD pin halting the 8080, which is not emulated.
Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse. Is the problem here is due to timing of CPU addressbus changes?


== [http://github.com/mamedev/mame/blob/master/src/mame/misc/cv1k.cpp cv1k] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/hegenerglaser/modular.cpp hegenerglaser/modular] ==
Games are running faster than on real hardware.
Waitstates emulation is preliminary.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/eag68k.cpp eag68k] ==
''' feagv10 ''' - V10 CPU emulation is too slow, MAME 68040 opcode timing is same as 68030 but in reality it is much faster, same goes for V11 of course (see below).
 
''' feagv11 ''' - V11 CPU should be M68EC060, not yet emulated. Now using M68EC040 in its place  at twice the frequency due to lack of superscalar.


== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/elite.cpp elite] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/cobra.cpp konami/cobra] ==
fpres/feas irq active time needs verifying.


== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamigs.cpp konamigs] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamigs.cpp konami/konamigs] ==
''' ddrkids ''' - Songs desync.
''' ddrkids ''' - Songs desync.


== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamim2.cpp konamim2] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamim2.cpp konami/konamim2] ==
Games are running slower than they should.
Games are running slower than they should.


== [http://github.com/mamedev/mame/blob/master/src/mame/mephisto/mm2.cpp mm2] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/mephisto/mm2.cpp mephisto/mm2] ==
''' mm4tk, mm5p ''' - They need proper emulation of the TurboKit (it's not as simple as a CPU overclock plus ROM patch).
''' mm4tk, mm5p ''' - They need proper emulation of the TurboKit (it's not as simple as a CPU overclock plus ROM patch).


== [http://github.com/mamedev/mame/blob/master/src/mame/hegenerglaser\modular.cpp modular] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/misc/cv1k.cpp misc/cv1k] ==
Waitstates emulation is preliminary.
Games are running faster than on real hardware.


== [http://github.com/mamedev/mame/blob/master/src/mame/misc/monon_color.cpp monon_color] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/misc/monon_color.cpp misc/monon_color] ==
Clock divider unknown.
Clock divider unknown.


== [http://github.com/mamedev/mame/blob/master/src/mame/sony/news_r4k.cpp news_r4k.cpp] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/nichibutsu/clshroad.cpp nichibutsu/clshroad] ==
''' clshroad and clones ''' - Main and sound CPUs synching isn't perfect.


== [http://github.com/mamedev/mame/blob/master/src/mame/saitek/risc2500.cpp risc2500] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/nintendo/cothello.cpp nintendo/cothello] ==
CPU speed is wrong, it's likely running at 1.79MHz. But that's way too fast compared to videos of the game. 0.9MHz(XTAL/4) is also too fast. It's probably due to the M58741P HOLD pin halting the 8080, which is not emulated.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/saitek/risc2500.cpp saitek/risc2500] ==
More accurate dynamic cpu clock divider is needed.
More accurate dynamic cpu clock divider is needed.


== [http://github.com/mamedev/mame/blob/master/src/mame/fidel/sc12.cpp sc12] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/sony/news_r4k.cpp sony/news_r4k] ==
Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse.  Is the problem here is due to timing of CPU addressbus changes?


== [http://github.com/mamedev/mame/blob/master/src/mame/tvgames/spg2xx_shredmjr.cpp spg2xx_shredmjr] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/taito/taitojc.cpp taito/taitojc] ==
Bad music timings (too slow).
Games are running at wrong speed(unthrottled?) compared to PCB recordings, easily noticeable on sidebs/sidebs2, for example the selection screens are too fast, and the driving is almost twice as slow.


== [http://github.com/mamedev/mame/blob/master/src/mame/taito/taitojc.cpp taitojc] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/tiger/bingobear.cpp tiger/bingobear] ==
Games are running at wrong speed(unthrottled?) compared to PCB recordings, easily noticeable on sidebs/sidebs2, for example the selection screens are too fast, and the driving is almost twice as slow.


== [http://github.com/mamedev/mame/blob/master/src/mame/chess/tasc.cpp tasc] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/tvgames/spg2xx_shredmjr.cpp tvgames/spg2xx_shredmjr] ==
More accurate dynamic cpu clock divider is needed.
Bad music timings (too slow).


== [http://github.com/mamedev/mame/blob/master/src/mame/vectorgraphic/vector4 vector4]==
== [http://github.com/mamedev/mame/blob/master/src/mame/vectorgraphic/vector4.cpp vectorgraphic/vector4]==
CPU wait states, S-100 interrupts and ready aren't emulated.
CPU wait states, S-100 interrupts and ready aren't emulated.

Revision as of 08:24, 15 September 2023

This page is designed to allow for a quick look over all the drivers with a MACHINE_IMPERFECT_TIMING flag by giving, as much as possible, an idea on the amount of effort needed to fix them.

acorn/aristmk5

Games are running at double speed.

alpha/alpha68k

goldmedl, goldmedla, goldmedlb - Dash events timers relies on MCU irq timings, which can't be accurate til the MCU is decapped and emulated.

alpha/alpha68k_n

sstingry - Super Stingray MCU irq controls timer speed. The MCU has been hooked up but the clock is almost certainly wrong.

chess/tasc

More accurate dynamic cpu clock divider is needed.

fidel/as12

Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse. Is the problem here is due to timing of CPU addressbus changes?

fidel/eag68k

feagv10 - V10 CPU emulation is too slow, MAME 68040 opcode timing is same as 68030 but in reality it is much faster, same goes for V11 of course (see below).

feagv11 - V11 CPU should be M68EC060, not yet emulated. Now using M68EC040 in its place at twice the frequency due to lack of superscalar.

fidel/elite

fpres/feas irq active time needs verifying.

fidel/sc12

Seems a little bit slower than the real machine. Currently, a dummy timer workaround is needed, or it's much worse. Is the problem here is due to timing of CPU addressbus changes?

hegenerglaser/modular

Waitstates emulation is preliminary.

konami/cobra

konami/konamigs

ddrkids - Songs desync.

konami/konamim2

Games are running slower than they should.

mephisto/mm2

mm4tk, mm5p - They need proper emulation of the TurboKit (it's not as simple as a CPU overclock plus ROM patch).

misc/cv1k

Games are running faster than on real hardware.

misc/monon_color

Clock divider unknown.

nichibutsu/clshroad

clshroad and clones - Main and sound CPUs synching isn't perfect.

nintendo/cothello

CPU speed is wrong, it's likely running at 1.79MHz. But that's way too fast compared to videos of the game. 0.9MHz(XTAL/4) is also too fast. It's probably due to the M58741P HOLD pin halting the 8080, which is not emulated.

saitek/risc2500

More accurate dynamic cpu clock divider is needed.

sony/news_r4k

taito/taitojc

Games are running at wrong speed(unthrottled?) compared to PCB recordings, easily noticeable on sidebs/sidebs2, for example the selection screens are too fast, and the driving is almost twice as slow.

tiger/bingobear

tvgames/spg2xx_shredmjr

Bad music timings (too slow).

vectorgraphic/vector4

CPU wait states, S-100 interrupts and ready aren't emulated.