From 251cdd0f39facc54b32424f97528c8858f9b0bcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 22 Jan 2020 22:52:00 +0100 Subject: [PATCH] Kernel 0.93++ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/CSH.I.txt | 69 ++++++++++++++++++++++++++++++++------ BIN/CSH.R.txt | 14 ++++++-- BIN/CSH.S.CORE.txt | 47 ++++++++++++++++++++++++-- SYS/KERNEL.S.PS.txt | 9 +++-- SYS/KERNEL.S.STDIO2.S.txt | 7 +++- 6 files changed, 127 insertions(+), 19 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index e723d95efc9924361970bd612db37e9c8ff188d7..91e2c539eb091b4b432dc9667406ad3d9d2996df 100644 GIT binary patch delta 7483 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 diff --git a/BIN/CSH.I.txt b/BIN/CSH.I.txt index 89705bdc..2b2fd557 100644 --- a/BIN/CSH.I.txt +++ b/BIN/CSH.I.txt @@ -96,26 +96,73 @@ CSH.STYPES >PSTR "char" *-------------------------------------- CSH.TYPESIZE .HS 0001020401020405 VOID,CHAR,INT,LONG,UCHAR,UINT,ULONG,FLOAT.... *-------------------------------------- -* int printf ( const char * format, ... ); -CSH.FN >PSTR "printf" - .DA #CSH.T.INT returned value - .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR - .DA #CSH.T.VARIADIC - .DA #0 -* int puts ( const char * str ); - >PSTR "puts" - .DA #CSH.T.INT returned value - .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR - .DA #0 +CSH.FN * float cos ( float x ); + >PSTR "log" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 + >PSTR "sqr" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 + >PSTR "exp" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 >PSTR "cos" .DA #CSH.T.FLOAT returned value .DA #CSH.T.FLOAT .DA #0 + >PSTR "sin" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 + >PSTR "tan" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 + >PSTR "atan" + .DA #CSH.T.FLOAT returned value + .DA #CSH.T.FLOAT + .DA #0 * char getchar ( void ); >PSTR "getchar" .DA #CSH.T.CHAR returned value .DA #0 +* int puts ( const char * str ); + >PSTR "puts" + .DA #CSH.T.INT returned value + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #0 +* int printf ( const char * format, ... ); + >PSTR "printf" + .DA #CSH.T.INT returned value + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #CSH.T.VARIADIC + .DA #0 +* int putenv(const char *string); + >PSTR "putenv" + .DA #CSH.T.INT returned value + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #0 +* int setenv(const char *name, const char *value); + >PSTR "setenv" + .DA #CSH.T.INT returned value + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #0 +* char *getenv(const char *name, char *value); + >PSTR "getenv" + .DA #CSH.Q.POINTER+CSH.T.CHAR + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #CSH.Q.POINTER+CSH.T.CHAR + .DA #0 +* int unsetenv(const char *name); + >PSTR "unsetenv" + .DA #CSH.T.INT returned value + .DA #CSH.Q.CONST+CSH.Q.POINTER+CSH.T.CHAR + .DA #0 * void * malloc ( int size ); >PSTR "malloc" .DA #CSH.Q.POINTER+CSH.T.VOID returned value diff --git a/BIN/CSH.R.txt b/BIN/CSH.R.txt index 0d116c15..ede4d5b5 100644 --- a/BIN/CSH.R.txt +++ b/BIN/CSH.R.txt @@ -64,10 +64,20 @@ J.CSH.UTYPES .DA CSH.UCHAR J.CSH.KW.END .DA CSH.IF.END .DA CSH.WHILE.END *-------------------------------------- -J.CSH.EXEC .DA EXEC.printf - .DA EXEC.puts +J.CSH.EXEC .DA EXEC.log + .DA EXEC.sqr + .DA EXEC.exp .DA EXEC.cos + .DA EXEC.sin + .DA EXEC.tan + .DA EXEC.atan .DA EXEC.getchar + .DA EXEC.puts + .DA EXEC.printf + .DA EXEC.putenv + .DA EXEC.setenv + .DA EXEC.getenv + .DA EXEC.unsetenv .DA EXEC.malloc *-------------------------------------- MAN diff --git a/BIN/CSH.S.CORE.txt b/BIN/CSH.S.CORE.txt index 8bd721d7..809dbc41 100644 --- a/BIN/CSH.S.CORE.txt +++ b/BIN/CSH.S.CORE.txt @@ -1150,26 +1150,67 @@ CSH.SIZEOF txa *-------------------------------------- * EXEC *-------------------------------------- -EXEC.printf >SYSCALL printf2 +EXEC.log >FPU LOG + clc rts *-------------------------------------- -EXEC.puts >PULLYA - >SYSCALL puts +EXEC.sqr >FPU SQR + clc + rts +*-------------------------------------- +EXEC.exp >FPU EXP + clc rts *-------------------------------------- EXEC.cos >FPU COS clc rts *-------------------------------------- +EXEC.sin >FPU SIN + clc + rts +*-------------------------------------- +EXEC.tan >FPU TAN + clc + rts +*-------------------------------------- +EXEC.atan >FPU ATAN + clc + rts +*-------------------------------------- EXEC.getchar >SYSCALL getchar >PUSHA rts *-------------------------------------- +EXEC.puts >PULLYA + >SYSCALL puts + rts +*-------------------------------------- +EXEC.printf >SYSCALL printf2 + rts +*-------------------------------------- +EXEC.putenv >SYSCALL getenv + >PUSHYA + rts +*-------------------------------------- +EXEC.setenv >SYSCALL getenv + >PUSHYA + rts +*-------------------------------------- +EXEC.getenv >SYSCALL getenv + >PUSHYA + rts +*-------------------------------------- +EXEC.unsetenv >SYSCALL getenv + >PUSHYA + rts +*-------------------------------------- EXEC.malloc >PULLYA >SYSCALL getmem >PUSHYA rts *-------------------------------------- +*-------------------------------------- MAN SAVE USR/SRC/BIN/CSH.S.CORE LOAD USR/SRC/BIN/CSH.S diff --git a/SYS/KERNEL.S.PS.txt b/SYS/KERNEL.S.PS.txt index 0f181f12..df2a4443 100644 --- a/SYS/KERNEL.S.PS.txt +++ b/SYS/KERNEL.S.PS.txt @@ -544,19 +544,23 @@ K.Kill.PID .BS 1 *-------------------------------------- K.Kill cmp #0 beq .99 CS + sta K.Kill.PID jsr CORE.GetPSByID bcs .99 + >STYA ZPPtr1 >PULLA cmp #2+1 bcs .9 + asl tax jmp (.1,x) .1 .DA K.Kill.0 .DA K.Kill.1 .DA K.Kill.2 + .9 lda #E.SYN * sec rts @@ -565,8 +569,10 @@ K.Kill cmp #0 K.Kill.1 ldy #S.PS.S lda #S.PS.S.QUIT sta (ZPPtr1),y + K.Kill.0 clc rts + K.Kill.2 ldy #S.PS.hSID lda (ZPPtr1),y tax @@ -582,10 +588,9 @@ K.Kill.2 ldy #S.PS.hSID jsr K.Freemem .FIN - ldx #4 -.11 ldy .10,x +.11 ldy .10,x lda (ZPPtr1),y beq .12 diff --git a/SYS/KERNEL.S.STDIO2.S.txt b/SYS/KERNEL.S.STDIO2.S.txt index bd99d650..046d4cb4 100644 --- a/SYS/KERNEL.S.STDIO2.S.txt +++ b/SYS/KERNEL.S.STDIO2.S.txt @@ -339,7 +339,12 @@ PrintF2.SS ldy #$00 PSTR PrintF2.HH jsr PrintF2.LocalGetByte bcs PrintF2.COut.RTS pha LO byte - jsr PrintF2.H + jsr PrintF2.LocalGetByte + plx + bcs PrintF2.COut.RTS + pha + txa + jsr PrintF2.H.1 plx bcs PrintF2.COut.RTS txa