; Orange programmer module v1.6 ; (c) 2000-2001 Valery Fomin & Alex Plusov ; CHIP=59C22,128x16 ; MicroChip, Atmel ; not tested !!! SOCKET=2 ;"MW" PINO=CLK,0 PINO=DI,1 PINO=CS,2 PINO=ORG,3 PINO=RDY,4 PINI=DO,1 CDELAY=5 ; one set delay [INIT] RDY=1,ORG=1,CS=0,CLK=0 [READ] CS=1 R0=11000B LOOP=(4,0){DI=R0[I],CLK=1,CLK=0} ; READ instr LOOP=(6,0){DI=ADR[I],CLK=1,CLK=0} ; out adress DI=1 LOOP=(15,0){CLK=1,DATA[I]=DO,CLK=0} ; read data CS=0 [WRITE] CLK=0 CS=1 R0=100110000000B LOOP=(11,0){DI=R0[I],CLK=1,CLK=0} ; EWEN CS=0 CS=1 R0=10100B LOOP=(4,0){DI=R0[I],CLK=1,CLK=0} ; WRITE instr LOOP=(6,0){DI=ADR[I],CLK=1,CLK=0} ; out adress LOOP=(15,0){DI=DATA[I],CLK=1,CLK=0} ; write data P=15000 CS=0