Cartridge self-checking: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 17: Line 17:


[[Category:Cartridge systems]]
[[Category:Cartridge systems]]
[[Category:Code]]

Revision as of 21:33, 1 August 2012

From samsho4, done for all 4 banks in $200000~$2FFFFF:

	move	#$0FFF,d7		;Number of times to test until error
LAB_0057:
	move	#$0001,$2FFFF0		;Set P bank 1
	cmpi	#$0001,$2FFFF0		;Check if ($2FFFF0) = 1
	beq	LAB_0058		;Pass
	dbf	d7,LAB_0057		;Or loop
	move	#$0048,EXT_0574		;Fail
	move.b	#$FF,2066(a5)		;Set RAM
	jmp	EXT_01A0		;Write "WARNING BANK ERROR" and lock
LAB_0058:

Also see Slot check security.