Fixed hanging bug
diff --git a/contiki-c64/loader/c64-dio-asm.S b/contiki-c64/loader/c64-dio-asm.S
index e32e710..86b9639 100644
--- a/contiki-c64/loader/c64-dio-asm.S
+++ b/contiki-c64/loader/c64-dio-asm.S
@@ -60,12 +60,14 @@
          iny
          bne readl
          clc
+	 lda #0
+         tax	
          rts
 readerr:	
 	;          sta $07c0	
 	 jsr recv
 	; 	 sta $07c1
-         sec
+         ldx #0
          rts
 ;---------------------------------------
 _c64_dio_asm_write_block:		
@@ -93,14 +95,15 @@
          jsr recv
          cmp #errok
          bne writeerr
-         clc
+         lda #0
+	 tax
          rts
 
 writeerr:	
 	;          sta $07c0
 	 jsr recv
 	; 	 sta $07c1
-         sec
+         ldx #0
          rts
 ;---------------------------------------
 _c64_dio_asm_init:		
@@ -227,22 +230,18 @@
          dex
          bpl sendl
 
-	 lda $d020
-	 pha
+	 ldx $d020
 	 lda #1
 	 sta $d020
-	 pla
-	 sta $d020
+	 stx $d020
 		
          rts
 ;---------------------------------------
 recv:
-	 lda $d020
-	 pha
+	 ldx $d020
 	 lda #0
 	 sta $d020
-	 pla
-	 sta $d020
+	 stx $d020
 	
          ldx #7
 recvl:	
@@ -275,7 +274,7 @@
 ;---------------------------------------
 
 ;---------------------------------------
-;Ôhe code residing in the drive:
+;the code residing in the drive:
 ;---------------------------------------
 dtmp     = $46
 dtmp2    = $97
@@ -448,8 +447,6 @@
          jsr dsend
          pla
          jsr dsend
-         pla
-         pla
          rts
 dgsnoerr:	
          lda #errok
@@ -494,8 +491,6 @@
          jsr dsend
          pla
          jsr dsend
-         pla
-         pla
          rts
 dpsnoerr:	
          lda #errok