comparison TL1/TL1os9.asm @ 142:7368ad797016

frame pointer function/procedure arugment not worked
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 10 Jan 2019 22:42:15 +0900
parents 19ddf9e805cf
children 3abfb68fb043
comparison
equal deleted inserted replaced
141:19ddf9e805cf 142:7368ad797016
43 GL RMB 1 global 0xff / local 1 43 GL RMB 1 global 0xff / local 1
44 OPER RMB 1 44 OPER RMB 1
45 GLL RMB 1 left value g 0xff / local l 45 GLL RMB 1 left value g 0xff / local l
46 AMODE RMB 1 46 AMODE RMB 1
47 ACC RMB 1 47 ACC RMB 1
48 LSIZE RMB 1 48 LSIZE RMB 1 local variable size (including arguments )
49 MXLSZ RMB 1 maximul local variable size
50 LSZADR RMB 2 where to write MXLSZ
49 TCOUNT RMB 1 1 search reserved word only, 5 search all local/global var/array, proc 51 TCOUNT RMB 1 1 search reserved word only, 5 search all local/global var/array, proc
50 TEND RMB 2 table end (search start from here ) include local name 52 TEND RMB 2 table end (search start from here ) include local name
51 WEND RMB 2 word end 53 WEND RMB 2 word end
52 PMODE RMB 1 0x20 main, 1 proc, 0 ? 54 PMODE RMB 1 0x20 main, 1 proc, 0 ?
53 RSW RMB 1 0 word lookup, 0xff word register mode in tlook 55 RSW RMB 1 0 word lookup, 0xff word register mode in tlook
66 ** 68 **
67 LIBR equ . 69 LIBR equ .
68 ioentry rmb $80 70 ioentry rmb $80
69 readbuff rmb bufsiz+1 71 readbuff rmb bufsiz+1
70 72
71 OBJSTART RMB 2+12 73 OBJSTART RMB 2+9
72 74
73 75
74 * OBJECT PG AREA 76 * OBJECT PG AREA
75 77
76 WTBLE RMB $100+500 78 WTBLE RMB $100+500
140 BCC ERR4 142 BCC ERR4
141 DECA 143 DECA
142 STA PMODE 144 STA PMODE
143 LDA VAL 145 LDA VAL
144 LBSR DEFPF 146 LBSR DEFPF
145 LBSR PUTHSL 147 LBSR PUTHS
146 FDB $03BD 148 FCB $04
147 FDB PSHLB 149 FDB $AFE3 stx ,--s
150 FDB $3088 leax n,x
151 LDX <PC
152 STX <LSZADR here to write MXLSZ
153 LDA LSIZE
154 STA MXLSZ
155 LBSR PUTA
148 BSR REG0 156 BSR REG0
149 CLR LSIZE 157 CLR LSIZE
150 LBSR WORD 158 LBSR WORD
151 CMPA #$37 ( 159 CMPA #$37 (
152 BNE PL1 160 BNE PL1
156 PL1 BSR PROG 164 PL1 BSR PROG
157 LDB PMODE 165 LDB PMODE
158 CMPB #1 166 CMPB #1
159 BNE *+5 167 BNE *+5
160 LBSR RETP generate return 168 LBSR RETP generate return
169 LDX LSZADR
170 LDB MXLSZ
171 STB ,X
161 LDX GEND 172 LDX GEND
162 STX TEND 173 STX TEND
163 LDB #5 174 LDB #5
164 STB TCOUNT 175 STB TCOUNT
165 BRA PLOOP 176 BRA PLOOP
266 BSR WORD1 277 BSR WORD1
267 PULS B 278 PULS B
268 DECB 279 DECB
269 BEQ RETP 280 BEQ RETP
270 LBSR EXPR 281 LBSR EXPR
271 RETP LBSR PUTHSL 282 RETP LDD #$3590 puls x,pc
272 FDB $037E 283 LBSR PUTAB
273 FDB PULLB
274 RTS 284 RTS
275 ** 285 **
276 * PROC CALL 286 * PROC CALL
277 ** 287 **
278 SS4 CMPA #2 288 SS4 CMPA #2
878 OCORD PSHS A 888 OCORD PSHS A
879 CLRA 889 CLRA
880 STA LSW 890 STA LSW
881 COMA 891 COMA
882 STA ACC 892 STA ACC
883 LDA AMODE 893 * LDA AMODE amode is sometime wrong?
884 CMPA #$20 894 * CMPA #$20
885 BNE *+5 895 * BNE *+5
886 * LBSR PUTX 896 * LBSR PUTX
887 CLR LSW 897 CLR LSW
888 PULS A 898 PULS A
889 ADDA AMODE 899 ADDA AMODE
890 CMPA #$A6 900 CMPA #$A6
1009 CMPA #$37 1019 CMPA #$37
1010 BNE PFC1 1020 BNE PFC1
1011 LDA LSIZE 1021 LDA LSIZE
1012 PSHS A 1022 PSHS A
1013 INC LSIZE 1023 INC LSIZE
1014 PFC2 INC LSIZE 1024 PFC2 INC LSIZE
1015 LBSR WEXPR 1025 LDA MXLSZ
1026 CMPA LSIZE
1027 BHI PFC5
1028 STA MXLSZ
1029 PFC5 LBSR WEXPR
1016 CLRB 1030 CLRB
1017 STB ACC 1031 STB ACC
1018 DECB 1032 DECB
1019 STB GLL 1033 STB GLL
1020 LDA #$A7 1034 * LDA #$A7
1021 LDB LSIZE 1035 * LDB LSIZE
1022 LBSR PUTABX 1036 * LBSR PUTABX
1023 LDA SY 1037 LDA SY
1024 CMPA #$3C 1038 CMPA #$3C
1025 BEQ PFC2 1039 BEQ PFC2
1026 PULS A 1040 PULS A
1027 STA LSIZE 1041 STA LSIZE
1441 * & I/0 CONTROL 1455 * & I/0 CONTROL
1442 ** 1456 **
1443 ** OBJECT START 1457 ** OBJECT START
1444 ****** 1458 ******
1445 C leas OBJECT,u 1459 C leas OBJECT,u
1446 VARPTR LDX <PC 1460 VARPTR lda INDN
1447 STX GB
1448 STX LB
1449 lda INDN
1450 lbsr close 1461 lbsr close
1451 clra os9 stdin 1462 clra os9 stdin
1452 sta INDN 1463 sta INDN
1453 inca 1464 inca
1454 sta OUTDN 1465 sta OUTDN
1466 LDX <PC
1467 leay ,x
1455 OBJMP JMP OBJECT,u 1468 OBJMP JMP OBJECT,u
1456 1469
1457 ** 1470 **
1458 * PUSH LB & SET NEW LB 1471 * PUSH LB & SET NEW LB
1459 ** 1472 **
1460 PSHLB pshs y 1473 *PSHLB pshs y
1461 leay ,x 1474 * leay ,x
1462 leax a,x 1475 * leax a,x
1463 sty ,x++ 1476 * sty ,x++
1464 puls y,pc 1477 * puls y,pc
1465 ** 1478 **
1466 * PULL LB 1479 * PULL LB
1467 ** 1480 **
1468 * 1481 *
1469 PULLB LDX ,--X 1482 *PULLB LDX ,--X
1470 TSTA 1483 * TSTA
1471 RTS 1484 * RTS
1472 ** 1485 **
1473 * RND FUNCTION 1486 * RND FUNCTION
1474 ** 1487 **
1475 RND PSHS A 1488 RND PSHS A
1476 LDA RNDL 1489 LDA RNDL