annotate TL1/Todo @ 191:d0f5894e9b3a default tip

some how load: confilicts in gmake
author kono
date Thu, 07 Dec 2023 09:37:15 +0900
parents c3145f913f3d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
180
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
1 Sat May 4 10:39:12 JST 2019
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
2
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
3 possible extension
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
4
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
5 array as an arguments
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
6 put entire array on stack ( callee's local variable )
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
7 ARRAY TEND[] allocate pointer size buffer 2 for 6809, 4 for 32bit, 8 for 64bit
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
8 anonymous array
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
9 "test"
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
10 "test\n\0"
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
11 INT(0,1,2,3) ARRAY of CPU endian orderd int
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
12
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
13 memory stream
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
14 DICT := OPENM(INT(2,0)) allocate $200 memory
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
15 write to the stream (should be BYTE(0))
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
16 WRITE(DICT:ASCII(0))
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
17
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
18 TEND := POSITION(DICT) get stream pointer in TENC
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
19 return array offset in frame pointer, copied in caller's code
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
20 SEEK(DICT,INT(0)) set position in byte
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
21
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
22 VAL := SEEK(DICT,TEND) set absolute position to TEND and get the value
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
23 K:=SEEKR(DICT,-1) seek relative and get a value (K can be an array)
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
24 HASNEXT(DICT) eof check
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
25
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
26 multibyte arithmetic
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
27 NEG(PTR)
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
28 PTR := PTR+PTR1
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
29 PTR := PTR-PTR1
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
30 PTR := PTR*PTR1
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
31 PTR := PTR/PTR1
c3145f913f3d possible features
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 177
diff changeset
32
176
6ef317714ae8 mopen in TL/1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 153
diff changeset
33 Mon Apr 15 00:18:30 JST 2019
6ef317714ae8 mopen in TL/1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 153
diff changeset
34
6ef317714ae8 mopen in TL/1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 153
diff changeset
35 8bit/16bit offset
177
3770e86114aa TL/1 fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 176
diff changeset
36 -1
3770e86114aa TL/1 fix
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 176
diff changeset
37 expression as statement
176
6ef317714ae8 mopen in TL/1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 153
diff changeset
38
153
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 Sun Jan 13 17:22:51 JST 2019
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
40
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 TL/1 OS-9 command generation
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 Self compiler
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
43
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 0000: 87CD module header
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 0002: 0C09 module end
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 0004: 000D name
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 0006: 1180 tylg,atrv
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 0009: 0AAB start
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 000B: 0E00 memory size
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 MAIN
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 leax ,u
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 leay ,u
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 ... TL/1 OBJ
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 LIB ... support routines
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 24bit CRC
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 end
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
57
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 Thu Jan 10 12:28:15 JST 2019
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
59
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 add source code hex listing
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
61
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 % ** SPRITE TEST PROGRAM **
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
63 PROC WAIT,TIME
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 %--- MAIN ---
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 VAR MMI,MMJ,MMK leax ,y
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
66 BEGIN
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
67 MMI:=1 MMJ:=2 MMK:=3
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
68 3300: 86 01 LDA #$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
69 3302: A7 00 STA +$00,X ---> 0,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
70 3304: 86 02 LDA #$02
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
71 3306: A7 01 STA +$01,X ---> 1,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 3308: 86 03 LDA #$03
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
73 330A: A7 02 STA +$02,X ---> 2,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 330C: 86 03 LDA #$03
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 WAIT
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
76 330E: BD 33 20 JSR $3320
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 WRITE(1:MMI,CRLF)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 3311: 86 01 LDA #$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 3313: 97 01 STA <$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
80 3315: A6 00 LDA +$00,X ---> 2,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 3317: BD B4 32 JSR $B432
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
82 331A: BD B4 C1 JSR $B4C1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
83 END
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
84 331D: 7E B5 15 JMP $B515 jmp exit
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
85 %-- PROCEDURE WAIT --
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
86 WAIT
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
87 VAR WWJ,WWK
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
88 3320: BD B3 C6 JSR $B3C6 stx ,--s
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
89 BEGIN leax a,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
90 WWJ:=4
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
91 3327: 86 02 LDA #$02
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
92 3329: BD 33 40 JSR $3340
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
93 TIME
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
94 3323: 86 04 LDA #$04
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
95 3325: A7 00 STA +$00,X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
96 WRITE(1:MMI,WWJ,CRLF)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
97 332C: 86 01 LDA #$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
98 332E: 97 01 STA <$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
99 3330: A6 20 LDA +$00,Y
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
100 3332: BD B4 32 JSR $B432
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
101 3335: A6 00 LDA +$00,X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
102 3337: BD B4 32 JSR $B432
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
103 333A: BD B4 C1 JSR $B4C1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
104 END
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
105 333D: 7E B3 D1 JMP $B3D1 puls x,pc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
106 %-- PROCEDURE TIME --
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
107 TIME
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
108 VAR TTK,TTJ
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
109 3340: BD B3 C6 JSR $B3C6 stx ,--s
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
110 BEGIN leax a,x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
111 TTK:=5
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
112 3343: 86 05 LDA #$05
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
113 3345: A7 00 STA +$00,X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
114 WRITE(1:MMI,TTK,CRLF)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
115 3347: 86 01 LDA #$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
116 3349: 97 01 STA <$01
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
117 334B: A6 20 LDA +$00,Y
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
118 334D: BD B4 32 JSR $B432
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
119 3350: A6 00 LDA +$00,X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
120 3352: BD B4 32 JSR $B432
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
121 3355: BD B4 C1 JSR $B4C1
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
122 3358: 7E B3 D1 JMP $B3D1 puls x,pc
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
123 END
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
124
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
125
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
126 Tue Jan 8 15:58:00 JST 2019
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
127
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
128 use no frame pointer mode use S instead of x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
129 module call. change y global pointer and stack in inter module call
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
130 use local variable in for-statement
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
131 os9 library calls
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
132 pointer/word extension ( pointer hoge )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
133
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
134 full syntax test
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
135