anchor.diff:  								)
   							)
   							
  +							(if (starts-with buff "help")
  +								(net-send connection help_string (length help_string))
  +							)
   							(if (starts-with buff "close")
   								(net-close connection)
   								(net-send connection ">" 1)
  
positive.code: )
  
  
  (define (tcp_8088) ;; tcp ,רŴ
  	
  	(set 'listen (net-listen 8088))
  	
  	(unless (not (nil? listen)) 
  		(begin
  			(print "listening 8088 failed\n")
  			(abort)
  			(exit)
  		)
  	)
  	(print "Waiting for connection on: 8088 \n")
  
  	(while (!= (share talk) 19)
  		(set 'connection (net-accept listen))
  		(while (not (net-select connection "r" 1000)))
  		
  		(while (net-select connection "w" 1000)
  			(if (setq rvlen (net-receive connection buff ReadMax "\r\n"))
  				(begin
  					(share talk 1)
  					(sleep 200)
  					;(assert buff)
  					(setq atret (parse_atcmd (chop buff 2)))
  					(assert atret "\n")
  					(cond 
  						((list? atret)
  							(dolist (x atret)
  								(write_string_to_serial x)
  								(sleep 100);;; sleep 100ms to serial  
  							)
  						)
  						((string? atret)
  							(write_string_to_serial atret)
  						)
  					)
  					
  					;; here deal with data
  				)
  			)
  		)
  		
  		(assert "close connect " connection "\n")
  		(net-close connection)
  	)		
  )
  
  (define (tcp_8087) ;; tcp ,רŴ; spawn˼̣ͬ
  
negative.code: 		(begin
  			(cond
  				((= (trim cmd ) "AT+PING")
  					(if (string? str);;ַʽ
  						(setq cmd_line (string "70 69 6e 67"))
  					)
  				)
  				
  				((= (trim cmd) "AT&PWM");; pwm wave; xx xx, 14 r g b a 
  					(if (and (= (length str) 2) (list? str)) 
  						(begin
  