Correcting spaces

This commit is contained in:
jede
2017-01-29 23:18:32 +01:00
parent 858e952505
commit 06b2b83ab2
2 changed files with 139 additions and 169 deletions

View File

@@ -12,36 +12,30 @@
; int read (int fd, void* buf, unsigned count); ; int read (int fd, void* buf, unsigned count);
.proc _read .proc _read
sta ptr1 ; count
stx ptr1+1 ; count
jsr popax ; get buf
sta ptr1 ; count sta PTR_READ_DEST
stx ptr1+1 ; count stx PTR_READ_DEST+1
jsr popax ; get buf sta ptr2 ; in order to calculate nb of bytes read
stx ptr2+1 ;
sta PTR_READ_DEST ; jsr popax ; fp pointer don't care in this version
stx PTR_READ_DEST+1
sta ptr2 ; in order to calculate nb of bytes read
stx ptr2+1 ;
;jsr popax ; fp pointer don't care in this version lda ptr1 ;
ldy ptr1+1 ;
lda ptr1 ;
ldy ptr1+1 ;
BRK_TELEMON XFREAD ; calls telemon30 routine BRK_TELEMON XFREAD ; calls telemon30 routine
; compute nb of bytes read ; compute nb of bytes read
lda PTR_READ_DEST+1 lda PTR_READ_DEST+1
sec sec
sbc ptr2+1 sbc ptr2+1
tax tax
lda PTR_READ_DEST lda PTR_READ_DEST
sec sec
sbc ptr2 sbc ptr2
; Here A and X contains number of bytes read ; Here A and X contains number of bytes read
rts rts
.endproc .endproc

View File

@@ -77,108 +77,107 @@ CH376_DISK_CAPACITY := $3E
CH376_DISK_RD_GO := $55 CH376_DISK_RD_GO := $55
.proc _ch376_file_close .proc _ch376_file_close
lda #CH376_FILE_CLOSE lda #CH376_FILE_CLOSE
sta CH376_COMMAND sta CH376_COMMAND
jsr _ch376_wait_response jsr _ch376_wait_response
rts rts
.endproc .endproc
.proc _ch376_seek_file .proc _ch376_seek_file
ldx #CH376_BYTE_LOCATE ldx #CH376_BYTE_LOCATE
stx CH376_COMMAND stx CH376_COMMAND
sta CH376_DATA sta CH376_DATA
sty CH376_DATA sty CH376_DATA
lda #$00 ; Don't manage 32 bits length lda #$00 ; Don't manage 32 bits length
sta CH376_DATA sta CH376_DATA
sta CH376_DATA sta CH376_DATA
jsr _ch376_wait_response jsr _ch376_wait_response
rts rts
.endproc .endproc
; void ch376_set_file_name(char *filename) ; void ch376_set_file_name(char *filename)
.proc _ch376_set_file_name .proc _ch376_set_file_name
sta ptr1 sta ptr1
stx ptr1+1 stx ptr1+1
lda #CH376_SET_FILE_NAME ;$2f lda #CH376_SET_FILE_NAME ;$2f
sta CH376_COMMAND sta CH376_COMMAND
ldy #0 ldy #0
loop: loop:
lda (ptr1),y ; replace by bufnom lda (ptr1),y ; replace by bufnom
beq end ; we reached 0 value beq end ; we reached 0 value
;BRK_TELEMON XMINMA BRK_TELEMON XMINMA
sta CH376_DATA sta CH376_DATA
iny iny
cpy #13 ; because we don't manage longfilename shortname =11 cpy #13 ; because we don't manage longfilename shortname =11
bne loop bne loop
end: end:
sta CH376_DATA sta CH376_DATA
rts rts
.endproc .endproc
; char _ch376_file_open(); ; char _ch376_file_open();
.proc _ch376_file_open .proc _ch376_file_open
lda #CH376_FILE_OPEN ; $32 lda #CH376_FILE_OPEN ; $32
sta CH376_COMMAND sta CH376_COMMAND
jsr _ch376_wait_response jsr _ch376_wait_response
; ldx #0
rts rts
.endproc .endproc
;CMD_GET_FILE_SIZE
.proc _ch376_get_file_size .proc _ch376_get_file_size
lda #CH376_GET_FILE_SIZE lda #CH376_GET_FILE_SIZE
sta CH376_COMMAND sta CH376_COMMAND
lda #$68 lda #$68
sta CH376_DATA sta CH376_DATA
; store file leng ; store file length 32 bits
lda CH376_DATA lda CH376_DATA
sta tmp1 sta tmp1
lda CH376_DATA lda CH376_DATA
sta tmp1+1 sta tmp1+1
lda CH376_DATA lda CH376_DATA
sta tmp2 sta tmp2
lda CH376_DATA lda CH376_DATA
sta tmp2+1 sta tmp2+1
rts rts
.endproc .endproc
; void ch376_reset(); ; void ch376_reset();
.proc _ch376_reset .proc _ch376_reset
lda #CH376_RESET_ALL ; 5 lda #CH376_RESET_ALL ; 5
sta CH376_COMMAND sta CH376_COMMAND
; waiting ; waiting
ldy #0 ldy #0
ldx #0 ldx #0
loop: loop:
nop nop
inx inx
bne loop bne loop
iny iny
bne loop bne loop
rts rts
.endproc .endproc
; char ch376_check_exist(char value); ; char ch376_check_exist(char value);
.proc _ch376_check_exist .proc _ch376_check_exist
sta tmp1 sta tmp1
lda #CH376_CHECK_EXIST ; lda #CH376_CHECK_EXIST ;
sta CH376_COMMAND sta CH376_COMMAND
lda tmp1 lda tmp1
sta CH376_DATA sta CH376_DATA
lda CH376_DATA lda CH376_DATA
rts rts
.endproc .endproc
; char ch376_ic_get_version(void) ; char ch376_ic_get_version(void)
.proc _ch376_ic_get_version .proc _ch376_ic_get_version
lda #CH376_GET_IC_VER lda #CH376_GET_IC_VER
sta CH376_COMMAND sta CH376_COMMAND
ldx #0 ldx #0
lda CH376_DATA lda CH376_DATA
rts rts
.endproc .endproc
@@ -186,45 +185,45 @@ loop:
.proc _ch376_set_usb_mode .proc _ch376_set_usb_mode
; CH376_SET_USB_MODE_CODE_USB_HOST_SOF_PACKAGE_AUTOMATICALLY ; CH376_SET_USB_MODE_CODE_USB_HOST_SOF_PACKAGE_AUTOMATICALLY
ldx #CH376_SET_USB_MODE ; $15 ldx #CH376_SET_USB_MODE ; $15
stx CH376_COMMAND stx CH376_COMMAND
sta CH376_DATA sta CH376_DATA
rts rts
.endproc .endproc
; void ch376_set_bytes_write(int value); ; void ch376_set_bytes_write(int value);
.proc _ch376_set_bytes_write .proc _ch376_set_bytes_write
ldy #CH376_BYTE_WRITE ldy #CH376_BYTE_WRITE
sty CH376_COMMAND sty CH376_COMMAND
sta CH376_DATA sta CH376_DATA
stx CH376_DATA stx CH376_DATA
lda #0 lda #0
sta CH376_DATA sta CH376_DATA
sta CH376_DATA sta CH376_DATA
jsr _ch376_wait_response jsr _ch376_wait_response
rts rts
.endproc .endproc
.proc _ch376_set_bytes_read .proc _ch376_set_bytes_read
ldy #CH376_BYTE_READ ldy #CH376_BYTE_READ
sty CH376_COMMAND sty CH376_COMMAND
; Storing 32 bits value ; Storing 32 bits value
sta CH376_DATA sta CH376_DATA
stx CH376_DATA stx CH376_DATA
lda #0 lda #0
sta CH376_DATA sta CH376_DATA
sta CH376_DATA sta CH376_DATA
jsr _ch376_wait_response jsr _ch376_wait_response
rts rts
.endproc .endproc
; char ch376_disk_mount(); ; char ch376_disk_mount();
.proc _ch376_disk_mount .proc _ch376_disk_mount
lda #CH376_DISK_MOUNT ; $31 lda #CH376_DISK_MOUNT ; $31
sta CH376_COMMAND sta CH376_COMMAND
jsr _ch376_wait_response jsr _ch376_wait_response
; if we read data value, we have then length of the volume name ; if we read data value, we have then length of the volume name
ldx #0 ldx #0
rts rts
.endproc .endproc
@@ -233,89 +232,87 @@ loop:
.proc _ch376_wait_response .proc _ch376_wait_response
; 1 return 1 if usb controller does not respond ; 1 return 1 if usb controller does not respond
; else A contains answer of the controller ; else A contains answer of the controller
ldy #$ff ldy #$ff
loop3: loop3:
ldx #$ff ; don't decrease this counter. Because ch376 won't respond if there is a lower value ldx #$ff ; don't decrease this counter. Because ch376 won't respond if there is a lower value
loop: loop:
lda CH376_COMMAND lda CH376_COMMAND
and #%10000000 and #%10000000
cmp #128 cmp #128
bne no_error bne no_error
dex dex
bne loop bne loop
dey dey
bne loop3 bne loop3
; error is here ; error is here
rts rts
no_error: no_error:
lda #CH376_GET_STATUS lda #CH376_GET_STATUS
sta CH376_COMMAND sta CH376_COMMAND
lda CH376_DATA lda CH376_DATA
rts rts
.endproc .endproc
.proc _ch376_fread .proc _ch376_fread
; use ptr1 to count bytes ; use ptr1 to count bytes
jsr _ch376_set_bytes_read jsr _ch376_set_bytes_read
continue: continue:
cmp #CH376_USB_INT_DISK_READ ; something to read cmp #CH376_USB_INT_DISK_READ ; something to read
beq we_read beq we_read
cmp #CH376_USB_INT_SUCCESS ; finished cmp #CH376_USB_INT_SUCCESS ; finished
beq finished beq finished
; TODO in A : $ff X: $ff ; TODO in A : $ff X: $ff
lda #0 lda #0
tax tax
rts rts
we_read: we_read:
lda #CH376_RD_USB_DATA0 lda #CH376_RD_USB_DATA0
sta CH376_COMMAND sta CH376_COMMAND
lda CH376_DATA ; contains length read lda CH376_DATA ; contains length read
sta tmp2; Number of bytes to read sta tmp2; Number of bytes to read
ldy #0 ldy #0
loop: loop:
lda CH376_DATA ; read the data lda CH376_DATA ; read the data
sta (PTR_READ_DEST),y sta (PTR_READ_DEST),y
iny iny
cpy tmp2 cpy tmp2
bne loop bne loop
tya tya
clc clc
adc PTR_READ_DEST adc PTR_READ_DEST
bcc next bcc next
inc PTR_READ_DEST+1 inc PTR_READ_DEST+1
next: next:
sta PTR_READ_DEST sta PTR_READ_DEST
lda #CH376_BYTE_RD_GO lda #CH376_BYTE_RD_GO
sta CH376_COMMAND sta CH376_COMMAND
jsr _ch376_wait_response jsr _ch376_wait_response
jmp continue jmp continue
finished: finished:
; TODO return bytes read ; TODO return bytes read
lda tmp1 lda tmp1
ldx tmp1+1
ldx tmp1+1
rts rts
.endproc .endproc
; void _ch376_fwrite(void *ptr,int number) ; void _ch376_fwrite(void *ptr,int number)
.proc _ch376_fwrite .proc _ch376_fwrite
; use ptr1 to count bytes ; use ptr1 to count bytes
sta ptr2 sta ptr2
stx ptr2+1 stx ptr2+1
jsr popax jsr popax
sta PTR_READ_DEST sta PTR_READ_DEST
stx PTR_READ_DEST+1 stx PTR_READ_DEST+1
lda ptr2 lda ptr2
ldx ptr2+1 ldx ptr2+1
jsr _ch376_set_bytes_write jsr _ch376_set_bytes_write
;cmp #CH376_USB_INT_SUCCESS ;cmp #CH376_USB_INT_SUCCESS
;beq finished ;beq finished
;jsr popax ;jsr popax
@@ -346,26 +343,7 @@ loop:
sta CH376_DATA ; read the data sta CH376_DATA ; read the data
dec tmp2 dec tmp2
bne loop bne loop
; dec ptr2
;bne continue3
;dec ptr2+1
;bne continue3
;continue3
; lda ptr2+1
;bne continue2
;lda ptr2
;beq finished
;continue2
; iny
; cpy tmp2
; bne loop
; tya
; clc
; adc PTR_READ_DEST
; bcc next
; inc PTR_READ_DEST+1
;next:
; sta PTR_READ_DEST
lda #CH376_BYTE_WR_GO lda #CH376_BYTE_WR_GO
sta CH376_COMMAND sta CH376_COMMAND
@@ -380,8 +358,6 @@ finished:
rts rts
.endproc .endproc
.proc _ch376_file_create .proc _ch376_file_create
lda #CH376_FILE_CREATE lda #CH376_FILE_CREATE
sta CH376_COMMAND sta CH376_COMMAND