Actions

SCHG

Difference between revisions of "Mega Drive Quirks"

From Sonic Retro

(Initial list of MD hardware quirks.)
 
(Moved to Sega Retro.)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
This is a list of several MD quirks that don't exactly fit in any other categories.
+
#REDIRECT [[sega:SCHG:Mega Drive Quirks]]
 
 
==CLR on VDP data port==
 
If the VDP is set to VRAM/CRAM/VSRAM Write, using the clr instruction on the VDP data port will result in a system crash:
 
<asm>clr.w $C00000</asm>
 
This is because the clr instruction is treated as a Read-Modify-Write instruction on the MC68000 and MC68008 CPUs. The CPU first attempts to read the value located at $C00000, but the VDP's in data write mode, so the system hangs. This was fixed in the MC68010 CPU, which does not read the address before writing 0.
 
 
 
Emulators that implement this quirk: '''Unknown'''
 
 
 
==TAS instruction support==
 
The MC68000 has an instruction, TAS (test-and-set), that is used for synchronizing multiple MC68000s in a multi-CPU system. The TAS instruction uses a different bus cycle than other instructions, and isn't supported by either the MD1 or MD2 hardware. However, the Majesco Genesis 3 does support TAS, which breaks a few games that incorrectly use the TAS instruction.
 
 
 
Emulators that do not implement TAS: Probably all.
 
Emulators that do implement TAS: '''Unknown'''
 
 
 
{{SCHGuides}}
 
[[Category:Sonic Community Hacking Guide]]
 

Latest revision as of 00:39, 28 December 2010