diff TL1/TL1os9.asm @ 176:6ef317714ae8

mopen in TL/1
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 15 Apr 2019 00:25:58 +0900
parents c83545730d6c
children 3770e86114aa
line wrap: on
line diff
--- a/TL1/TL1os9.asm	Sun Apr 14 17:17:34 2019 +0900
+++ b/TL1/TL1os9.asm	Mon Apr 15 00:25:58 2019 +0900
@@ -595,7 +595,7 @@
        FDB SPACEA
        RTS
 **
-WR4    CMPA #$A9
+WR4    CMPA #$69
        BNE WR5
        LBSR SUBSC
        LBSR PUTHSL
@@ -1114,7 +1114,7 @@
        BNE TM61 
        LBSR SUBSC
        LBSR PUTHSL
-       FCB $0317
+       FDB $0317
        FDB RND
        RTS
 * FUNTION GET
@@ -1125,7 +1125,7 @@
        FDB $0297
        FCB INDN
        LBSR PUTHSL
-       FCB $0317
+       FDB $0317
        FDB getchar
        RTS
 * FUNCTION READ etc
@@ -1136,46 +1136,67 @@
        FDB $0297
        FDB INDN
        LBSR PUTHSL
-       FCB $038D
+       FDB $0317
        FDB GETDA
        RTS
 TM63   CMPA #$A2      seek
        BNE TM64
-       LBSR SUBSC
-       LBSR PUTHSL
-       FCB  $0317
+       LBSR DSUBSA
+       tstb
+       beq tmm0
+       bsr  aradr
+tmm0   LBSR PUTHSL
+       FDB  $0317
        FDB  NONE
        RTS
 TM64   CMPA #$A3      seekr
        BNE TM65
-       LBSR SUBSC
+       LBSR DSUBSC
        LBSR PUTHSL
-       FCB  $0317
+       FDB  $0317
        FDB  NONE
        RTS
 TM65   CMPA #$A4      position
        BNE TM66
-       LBSR SUBSC
-       LBSR PUTHSL
-       FCB  $0317
+       LBSR DSUBSA
+       tstb
+       beq tmm1
+       bsr  aradr
+tmm1   LBSR PUTHSL
+       FDB  $0317
        FDB  NONE
        RTS
 TM66   CMPA #$A5      open
        BNE TM67
-       LBSR SUBSC
+       LBSR DSUBSC
        LBSR PUTHSL
-       FCB  $0317
+       FDB  $0317
        FDB  NONE
        RTS
 TM67   CMPA #$A6      openm
        BNE TM7
-       LBSR SUBSC
-       LBSR PUTHSL
-       FCB  $0317
+       LBSR DSUBSA
+       tstb
+       beq tmm2
+       bsr  aradr
+tmm2   LBSR PUTHSL
+       FDB  $0317
        FDB  NONE
        RTS
+*                    ; pshs u; leau ?,[xy] ; tfr u,d ; puls u
+aradr  LBSR PUTHS
+       FCB  2,$34,$40
+       ldb  VAL
+       lda  #$33     leau
+       tst  GL
+       beq aradr1
+       addb #$20
+aradr1 LBSR PUTAB
+       LBSR PUTHS
+       FCB  4,$1f,$30,$35,$40
+       RTS
 
-* FUNCTION NOTASL ET AL
+* FUNCTION NOT ASL ET AL
 TM7    CMPA #$40
        BCS TM8
        CMPA #$49+1
@@ -1205,13 +1226,26 @@
 ARY1   LDA #$8B
        LBSR PUTABX
        LBRA LDAAX
-**
+
+**   f(x,y)   y can be an array
+DSUBSA LDA #$3C    ','
+       BSR SUBS1
+       LDA #$3B    ')'
+       PSHS A
+       LBSR WORD
+       clrb
+       CMPA #$5
+       BNE  SUBS2
+       incb        b==1 array
+       RTS
+
+**   f(x,y)
 DSUBSC LDA #$3C    ','
        BSR SUBS1
        LDA #$3B    ')'
        PSHS A
        BRA SUBS2
-SUBSC  LDA #$3E
+SUBSC  LDA #$3B    ')'
 SUBS1  PSHS A
        LBSR WORD
        LDA #$37    '('
@@ -1233,13 +1267,11 @@
 * MEM FUNCTION
 TM9    CMPA #6
        BNE TM10
+       LBSR PUTHS       ;    leas -1,s
+       FCB 2,$32,$7F
        BSR DSUBSC
-       LBSR PUTHS
-       FDB $0997
-       FCB WT2
-       FDB $3297
-       FCB WT1,$9E,WT1
-       FDB $A600
+       LBSR PUTHS       ;    sta 1,s; lda [,s++]
+       FDB $04,$a7,$61,$a8,$f1
        RTS
 ** FOR EXPANTION
 TM10   LBRA ERROR