Wait cycle: Difference between revisions
Jump to navigation
Jump to search
(Created page with "A wait cycle is a 68k bus cycle with no effects, the purpose of it is to allow the use of slow memories by "waiting" for them. The NeoGeo provides wait state generation...") |
mNo edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
The [[68k]] is able to wait for data by using wait cycles during bus access. This allows the use of slow, cheaper memories in cartridges and memory cards. | |||
The NeoGeo | The NeoGeo has wait state generation for 3 [[68k memory map|memory zones]]: | ||
* 000000~0FFFFF: [[P ROM]] - Configurable, 0 or 1 cycle | * 000000~0FFFFF: ROM zone ([[P ROM]]) - Configurable, 0 or 1 cycle | ||
* 200000~2FFFFF: [[P ROM]] - Configurable, 0, 1 or more cycles | * 200000~2FFFFF: PORT zone ([[P ROM]] or special chips) - Configurable, 0, 1, 2 or more cycles | ||
* 800000~BFFFFF: [[Memory card]] - Fixed, 2 cycles | * 800000~BFFFFF: [[Memory card]] - Fixed, 2 cycles | ||
Configuration is done by setting levels of the following [[pinouts|cartridge pins]] | =Cartridge configuration= | ||
Configuration is done by setting the levels of the following [[pinouts|cartridge pins]]. '1' means pulled to 5V, '0' means pulled to ground. All signals are active low. | |||
{|class="wikitable" | |||
!ROMWAIT||ROM zone wait | |||
|- | |||
|1||Full speed | |||
|- | |||
|0||1 cycle | |||
|} | |||
{|class="wikitable" | |||
!PWAIT1||PWAIT0||PORT zone wait | |||
|- | |||
|1||1||Full speed | |||
|- | |||
|1||0||1 cycle | |||
|- | |||
|0||1||2 cycles | |||
|- | |||
|0||0||As long as PDTACK is high | |||
|} | |||
=Use cases= | |||
Some games rely on wait cycles to perform sufficiently spaced [[VRAM]] accesses. Disabling the wait on those cartridges causes the accesses to become too close to each other and results in graphics corruption. | |||
No originally released cartridges are known to use PDTACK. | |||
[[Category:Base system]] | [[Category:Base system]] |
Latest revision as of 23:23, 1 October 2024
The 68k is able to wait for data by using wait cycles during bus access. This allows the use of slow, cheaper memories in cartridges and memory cards.
The NeoGeo has wait state generation for 3 memory zones:
- 000000~0FFFFF: ROM zone (P ROM) - Configurable, 0 or 1 cycle
- 200000~2FFFFF: PORT zone (P ROM or special chips) - Configurable, 0, 1, 2 or more cycles
- 800000~BFFFFF: Memory card - Fixed, 2 cycles
Cartridge configuration
Configuration is done by setting the levels of the following cartridge pins. '1' means pulled to 5V, '0' means pulled to ground. All signals are active low.
ROMWAIT | ROM zone wait |
---|---|
1 | Full speed |
0 | 1 cycle |
PWAIT1 | PWAIT0 | PORT zone wait |
---|---|---|
1 | 1 | Full speed |
1 | 0 | 1 cycle |
0 | 1 | 2 cycles |
0 | 0 | As long as PDTACK is high |
Use cases
Some games rely on wait cycles to perform sufficiently spaced VRAM accesses. Disabling the wait on those cartridges causes the accesses to become too close to each other and results in graphics corruption.
No originally released cartridges are known to use PDTACK.