# HG changeset patch # User Shinji KONO # Date 1604479125 -32400 # Node ID 1896f63eedc1acdc1d5c6eaaab969d26a806ca2d # Parent 91e08ff0630dafed7d820cb04b6194e5e4c09d36 ... diff -r 91e08ff0630d -r 1896f63eedc1 tl1trans/tl1token.tl1 --- a/tl1trans/tl1token.tl1 Wed Oct 28 14:16:09 2020 +0900 +++ b/tl1trans/tl1token.tl1 Wed Nov 04 17:38:45 2020 +0900 @@ -1,3 +1,78 @@ +% +% +% +% +PROC RESERVE +BEGIN + WRITE(3:$30,"PPROC"); + WRRIE(3:$31,"FUNC"); + WRITE(3:$32,"VAR"); + WRITE(3:$33,:ARRAY"); + WRITE(3:$34,"BEGIN"); + WRITE(3:$35,";"); + WRITE(3:$36,"["); + WRITE(3:$37,"("); + WRITE(3:$38,"END"); + WRITE(3:$39,"=" ); + WRITE(3:$3A,"]"); + WRITE(3:$3B,")"); + WRITE(3:$3C,","); + WRITE(3:$3D,":"); + WRITE(3:$3E,";"); + WRITE(3:$50,"STOP" ); + WRITE(3:$51,"RETURN"); + WRITE(3:$55,"IF"); + WRITE(3:$65,"THEN"); + WRITE(3:$53,"FOR" ); + WRITE(3:$61,"TO"); + WRITE(3:$52,"REPEAT"); + WRITE(3:$60,"UNTIL"); + WRITE(3:$54,"WHILE"); + WRITE(3:$64,"DO"); + WRITE(3:$56,"CASE"); + WRITE(3:$66,"OF" ); + WRITE(3:$67,"ELSE"); + WRITE(3:$57,"WRITE"); + WRITE(3:$69,"ASCII" ); + WRITE(3:$6A,"SPACE"); + WRITE(3:$68,"CRLF" ); + WRITE(3:$6C,"\""); + WRITE(3:$8B,"+"); + WRITE(3:$80,"-"); + WRITE(3:$8E,"*" ); + WRITE(3:$8F,"/"); + WRITE(3:$82,".SBC."); + WRITE(3:$84,".AND."); + WRITE(3:$88,".EOR."); + WRITE(3:$89,".ADC."); + WRITE(3:$8A,".OR."); + WRITE(3:$22,">" ); + WRITE(3:$25,"<"); + WRITE(3:$26,"#"); + WRITE(3:$27,"=" ); + WRITE(3:$2D,".LT."); + WRITE(3:$2E,".GT."); + WRITE(3:$40,"NEG"); + WRITE(3:$43,"NOT"); + WRITE(3:$43,"COM"); + WRITE(3:$44,"LSR"); + WRITE(3:$46,"ROR"); + WRITE(3:$47,"ASR"); + WRITE(3:$48,"ASL"); + WRITE(3:$49,"ROL"); + WRITE(3:$06,"MEM"); + WRITE(3:$A0,"TRUE"); + WRITE(3:$A1,"FALSE"); + WRITE(3:$16,"MHIGH"); + WRITE(3:$17,"MOD"); + WRITE(3:$70,"RND"); + WRITE(3:$71,"GET"); + WRITE(3:$72,"READ"); + WRITE(3:$73 "RETRUN"); + WRITE(3:$74 "OTHERWISE"); + WRITE(3:$FF ""); % delimitor +END + FUNC TOKEN VAR C,KIND,VALUE BEGIN @@ -10,22 +85,44 @@ FUNC TOKEN() VAR D +ARRAY W(8) BEGIN - WHILE (C<'%'+1) DO { % comment - DO { + WHILE (C<'%'+1) DO BEGIN % comment + DO BEGIN C:=GET(0) - } WHILE(C # 0) + END WHILE(C # 0) C:=GET(0) - } + END IF('0'