From: Tormod Volden Date: Tue, 12 May 2015 21:09:38 +0000 (+0200) Subject: dragon ports: Proper return values from _uput* and _uget* X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=c4b07e31c35e4dbedaf81111b6a4bcbaa32009d4;p=FUZIX.git dragon ports: Proper return values from _uput* and _uget* Thanks to Brett Gordon who found that the bogus _uget return value was causing lseek() to fail. Signed-off-by: Tormod Volden --- diff --git a/Kernel/platform-dragon-nx32/usermem_sam.s b/Kernel/platform-dragon-nx32/usermem_sam.s index 08ff7494..de4ff28d 100644 --- a/Kernel/platform-dragon-nx32/usermem_sam.s +++ b/Kernel/platform-dragon-nx32/usermem_sam.s @@ -24,6 +24,7 @@ ; imported .globl map_process_always .globl map_kernel + .area .common __ugetc: @@ -56,6 +57,7 @@ ugetl: sta ,u+ leay -1,y bne ugetl + ldx #0 puls u,y,cc,pc __ugets: @@ -90,6 +92,7 @@ __uputc: exg d,x stb ,x jsr map_kernel + ldx #0 puls cc,pc __uputw: @@ -100,6 +103,7 @@ __uputw: exg d,x std ,x jsr map_kernel + ldx #0 puls cc,pc ; X = source, user, size on stack @@ -115,6 +119,7 @@ uputl: jsr map_kernel leay -1,y bne uputl + ldx #0 puls u,y,cc,pc __uzero: @@ -128,4 +133,5 @@ uzloop: leay -1,y bne uzloop jsr map_kernel + ldx #0 puls y,cc,pc diff --git a/Kernel/platform-dragon/usermem_sam.s b/Kernel/platform-dragon/usermem_sam.s index 4360de8b..1561e511 100644 --- a/Kernel/platform-dragon/usermem_sam.s +++ b/Kernel/platform-dragon/usermem_sam.s @@ -10,11 +10,11 @@ include "kernel.def" include "../kernel09.def" + ; exported .globl __ugetc .globl __ugetw .globl __uget .globl __ugets - .globl __uputc .globl __uputw .globl __uput @@ -52,6 +52,7 @@ ugetl: sta ,u+ leay -1,y bne ugetl + ldx #0 puls u,y,cc,pc __ugets: @@ -86,6 +87,7 @@ __uputc: exg d,x stb ,x SAM_KERNEL + ldx #0 puls cc,pc __uputw: @@ -96,6 +98,7 @@ __uputw: exg d,x std ,x SAM_KERNEL + ldx #0 puls cc,pc ; X = source, user, size on stack @@ -111,6 +114,7 @@ uputl: SAM_KERNEL leay -1,y bne uputl + ldx #0 puls u,y,cc,pc __uzero: @@ -124,4 +128,5 @@ uzloop: leay -1,y bne uzloop SAM_KERNEL + ldx #0 puls y,cc,pc