MODULE 'exec/memory'

CONST JOY0DAT=$DFF00A,
			JOY1DAT=$DFF00C,
			POT0DAT=$DFF012,
			POT1DAT=$DFF014

PROC main()
DEF scr,c,d,step=0,skip=0,cnt=-1,mem,fh,do,nl=0
->	
	IF fh:=Open('RAM:Test',NEWFILE)
	IF mem:=AllocMem(100000,MEMF_ANY OR MEMF_CLEAR)
		IF scr:=OpenS(640,256,3,$8000,'Card reader V1.1',NIL)
			SetAPen(stdrast,1)
			SetTaskPri(FindTask(NIL),127)
			Forbid()
			REPEAT
			d:=Char(JOY1DAT+1)
			c:=Char(JOY1DAT+0)
->				TextF(10,20,'Clock : \r\d[3]',d)
->				TextF(10,28,'Data  : \r\d[3]',c)
				IF d<>do ->253
					do:=d
					MOVE.W #$FF0,$DFF180
					INC cnt
					IF cnt>90000 THEN cnt:=90000
->					INC nl
->					IF nl=7 
->						PutChar(mem+cnt,10)
->						nl:=0
->						INC cnt
->					ENDIF
					IF c=1 -> 253 
						c:=1
						PutChar(mem+cnt,1)
						MOVE.W #$F0F,$DFF180
					ENDIF
					IF c=0 -> 252 
						c:=0
						PutChar(mem+cnt,0)
						MOVE.W #$00F,$DFF180
					ENDIF
				ENDIF
			UNTIL Mouse()=1
			Permit()
			CloseS(scr)
		ENDIF
		Write(fh,mem,1500)
		FreeMem(mem,100000)
	ENDIF
		Close(fh)
	ENDIF

 CleanUp(0)
ENDPROC