* メモリーの実装最後アドレス+1を知る
	.include	defines.mac

	.xdef	_CheckMemEnd
_CheckMemEnd:
* unlong CheckMemEnd(void)
	move.l	#$ED0008,a1	* SRAMから実装メモリーの最終アドレス+1を得る
	IOCS	_B_LPEEK
	move.l	d0,a1
	* そこに本当にメモリーがあるかを確認（１Ｍ毎）
@@:	move.w	#4,-(sp)	* .lでチェック
	pea	-4(a1)		* readして/最終アドレス前４バイトで確認
	pea	-4(a1)		* writeする（ので、メモリー内容は保存される）
	DOS	_BUS_ERR	* メモリーがないとバスエラーになるのでこれでチェックする
	lea	10(sp),sp
	tst.l	d0
	beq	@f		* 一致＝メモリーがある
	* 不一致＝メモリーはない（メモリーはないので内容復帰も不要）
	sub.l	#$100000,a1	* 1M遡る
	bra	@b		* まさか全部無いことはないはずなので終了チェックはしてない
	*
@@:	move.l	a1,d0
	rts
