Watchdog: Difference between revisions
mNo edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
The watchdog is | The watchdog is a lock-up/protection feature consisting of a resettable counter (what size ?) located in {{Chipname|NEO-B1}} chip, that resets the system if it underflows. It can be physically disabled by putting pin {{Sig|DOGE|DOGE}} to ground (J2 jumper). | ||
It must be | |||
It must be therefore "kicked" regularly to reset the counter. This is done by writing any byte to any odd addresses in the $300000~$31FFFF range. Register {{Reg|REG_DIPSW}} is the most often used. [[68k interrupts|VBlank]] routines often take care of this task, but care has to be taken to do it regularly when the interrupt is disabled. | |||
A constantly resetting system produces a typical clicking sound, giving a clue for solving boot issues. (Sound file ?) | A constantly resetting system produces a typical clicking sound, giving a clue for solving boot issues. (Sound file ?) | ||
The NeoGeo CD 2 also has a watchdog timer ? | The NeoGeo CD 2 also has a watchdog timer ? | ||
Informations from [[ | Informations from [[MAME]]'s source: | ||
The watchdog timer will reset the system after | The watchdog timer will reset the system after 0.128762 seconds (around 7 NTSC frames). | ||
Newer games force a reset using the following code (from KOF99): | Newer games force a reset using the following code (from KOF99): |
Revision as of 23:02, 2 March 2016
The watchdog is a lock-up/protection feature consisting of a resettable counter (what size ?) located in NEO-B1 chip, that resets the system if it underflows. It can be physically disabled by putting pin DOGE to ground (J2 jumper).
It must be therefore "kicked" regularly to reset the counter. This is done by writing any byte to any odd addresses in the $300000~$31FFFF range. Register REG_DIPSW is the most often used. VBlank routines often take care of this task, but care has to be taken to do it regularly when the interrupt is disabled.
A constantly resetting system produces a typical clicking sound, giving a clue for solving boot issues. (Sound file ?)
The NeoGeo CD 2 also has a watchdog timer ?
Informations from MAME's source:
The watchdog timer will reset the system after 0.128762 seconds (around 7 NTSC frames).
Newer games force a reset using the following code (from KOF99):
(Disable interrupts)
MOVE.L #$30D40,D0
SUBQ.L #1,D0
BCC.S *-0x2
The watchdog is used as a form of protecetion on a number of games, previously this was implemented as a specific hack which locked a single address of SRAM. If the game doesn't find valid data in the backup ram it will initialize it, then sit in a loop. The watchdog should then reset the system. If the watchdog fails to reset the system the code will continue and set a value in backup ram to indiate that the protection check has failed.