[新連載]復活!TINY BASIC
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
すべてはここからはじまりました。
中日電工も。
40年前を振り返りつつ新連載です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
[第33回]
●中日電工版TINY BASIC
今までオリジナルのTINY BASICプログラムについて説明をしてきました。
なんとかユーザプログラムをメモリに格納するところまでは説明できましたが、まだ「入力」「出力」については説明できていません。
そこは「インターフェース」に関係するため、オリジナルプログラムのまま使うことはできないからです。
これからその部分については今までと同じようにオリジナルのプログラムをもとに説明しつつ、それをどのように書き換えていくのかというあたりについても説明をしていくことになると思います。
そのあとはいよいよ計算式やFOR〜NEXT、GOTO、GOSUBなどについての説明に進みます。
もちろんもとになるのはオリジナルプログラムですから、今までと同じようにオリジナルのプログラムリストをもとにして説明をしていけばよいのですけれど、実際に途中でブレークポイントを設定するなどをしながら動作の解析ができるとプログラムの理解が深まると思います。
ただ説明を読んでいるだけではなかなか理解が進まないというところもあるでしょうし、面白くもありませんでしょう。
やっぱり実際に使うことができれば一番です。
ということでこの辺りで、ND80Z3.5上で動作するTINY BASICを皆様に提供して実際に使っていただくことにしました。
名づけて「中日電工版」TINY BASICです。
まだ手を加えたいところがありますが、とりあえずは動作するところまでできていますから、基本的な動作については実際にさわって確かめていただくことができます。
手直しをしたいところについては、これから説明を進めながらプログラムの変更作業についても書いていきたいと思います。
下は「中日電工版」TINY BASICのアセンブルリストです。
ND80Z3.5などに附属の当社オリジナルの8080アセンブラASM80でアセンブルして出力したリストです。
リストの後のところに、ソースプログラムをダウンロードできるようにリンクを貼ってあります。
2020/6/6 9: tinybst7.txt END=9FDE ;;;TINY BASIC from PALO ALTO ;20/3/3 5/8 5/9 5/10 5/11 5/12 5/13 5/28 ;6/6 ; ;SOUT=$067C;5/10 SOUT=$10AB ;SIN=$06A3 SIN=$10AE REENT=$1033 ; ORG $8000 8000 C35D80 JMP START 8003 C3D681 JMP LIST 8006 C3A681 JMP RUN 8009 C39781 JMP NEW 800C C3D682 JMP NEXT 800F C3B683 JMP LET 8012 C33B83 JMP IFF;"IF" 8015 C3C581 JMP GOTO 8018 C33482 JMP GOSUB 801B C35682 JMP RETURN 801E C33783 JMP REM 8021 C37182 JMP FOR 8024 C35683 JMP INPUT 8027 C3EE81 JMP PRINT 802A C3A081 JMP STOP 802D C3B083 JMP DEFLT 8030 C3E884 JMP RND 8033 C31585 JMP ABS 8036 C31E85 JMP SIZE 8039 C3C684 JMP XP40 803C C38182 JMP FR1;"TO" 803F C39985 JMP QWHAT;"WHAT" 8042 C38D82 JMP FR2;"STEP" 8045 C39382 JMP FR3 8048 C3CA83 JMP XP11;">=" 804B C3D083 JMP XP12;"#" 804E C3D683 JMP XP13;">" 8051 C3E583 JMP XP15;"=" 8054 C3DD83 JMP XP14;"<=" 8057 C3EB83 JMP XP16;"<" 805A C3F183 JMP XP17 ; START:;LXI SP,STACK 805D 00 NOP 805E 00 NOP 805F 00 NOP 8060 3EFF MVI A,FF 8062 C33387 JMP INIT ;RST 1(test character) 8065 E3 TSTC:XTHL 8066 CD8480 CALL SPJP 8069 BE CMP M 806A C3C780 JMP TC1 ; 806D 3E0D CRLF:MVI A,0D ;RST 2(out character) 806F F5 OUTC:PUSH PSW 8070 3A0090 LDA OCSW 8073 B7 ORA A 8074 C34F87 JMP OC2 ;RST 3(expression) 8077 CD0884 EXPR:CALL EXPR2 807A E5 PUSH H 807B C3C483 JMP EXPR1 ;RST 4(compare HL with DE) 807E 7C HDCP:MOV A,H 807F BA CMP D 8080 C0 RNZ 8081 7D MOV A,L 8082 BB CMP E 8083 C9 RET ;RST 5(jump space code) 8084 1A SPJP:LDAX D 8085 FE20 CPI 20 8087 C0 RNZ 8088 13 INX D 8089 C38480 JMP SPJP ;RST 6(check end) 808C F1 ENDCK:POP PSW 808D CD8085 CALL FIN 8090 C39985 JMP QWHAT ;RST 7(test variables) 8093 CD8480 TSTV:CALL SPJP 8096 D640 SUI 40 8098 D8 RC 8099 C2B780 JNZ TV1 809C 13 INX D 809D CDD784 CALL PARN 80A0 29 DAD H 80A1 DA0081 JC QHOW 80A4 D5 PUSH D 80A5 EB XCHG 80A6 CD1E85 CALL SIZE 80A9 CD7E80 CALL HDCP 80AC DAC985 JC ASORRY 80AF 21669F LXI H,VARBGN 80B2 CD4185 CALL SUBDE 80B5 D1 POP D 80B6 C9 RET 80B7 FE1B TV1:CPI 1B 80B9 3F CMC 80BA D8 RC 80BB 13 INX D 80BC 21669F LXI H,VARBGN 80BF 07 RLC 80C0 85 ADD L 80C1 6F MOV L,A 80C2 3E00 MVI A,00 80C4 8C ADC H 80C5 67 MOV H,A 80C6 C9 RET ; 80C7 23 TC1:INX H 80C8 CAD280 JZ TC2 80CB C5 PUSH B 80CC 4E MOV C,M 80CD 0600 MVI B,00 80CF 09 DAD B 80D0 C1 POP B 80D1 1B DCX D 80D2 13 TC2:INX D 80D3 23 INX H 80D4 E3 XTHL 80D5 C9 RET ; 80D6 210000 TSTNUM:LXI H,$0000 80D9 44 MOV B,H 80DA CD8480 CALL SPJP 80DD FE30 TN1:CPI 30 80DF D8 RC 80E0 FE3A CPI 3A 80E2 D0 RNC 80E3 3EF0 MVI A,F0 80E5 A4 ANA H 80E6 C20081 JNZ QHOW 80E9 04 INR B 80EA C5 PUSH B 80EB 44 MOV B,H 80EC 4D MOV C,L 80ED 29 DAD H 80EE 29 DAD H 80EF 09 DAD B 80F0 29 DAD H 80F1 1A LDAX D 80F2 13 INX D 80F3 E60F ANI 0F 80F5 85 ADD L 80F6 6F MOV L,A 80F7 3E00 MVI A,00 80F9 8C ADC H 80FA 67 MOV H,A 80FB C1 POP B 80FC 1A LDAX D 80FD F2DD80 JP TN1 8100 D5 QHOW:PUSH D 8101 110781 AHOW:LXI D,HOW 8104 C39D85 JMP ERROR ; 8107 484F573F HOW:"HOW?" 810B 0D DB 0D 810C 4F4B OK:"OK" 810E 0D DB 0D 810F 57484154 WHAT: "WHAT" 8113 3F "?" 8114 0D DB 0D 8115 534F5252 SORRY:"SORR" 8119 59 "Y" 811A 0D DB 0D 811B 00 RSTART:NOP 811C 00 NOP 811D 00 NOP 811E CD6D80 ST1:CALL CRLF 8121 110C81 LXI D,OK 8124 97 SUB A 8125 CD3D86 CALL PRTSTG 8128 212F81 LXI H,ST22 812B 220190 SHLD CURRNT 812E 21 ST2:DB 21;LXI H 812F 0000 ST22:DW $0000 8131 220990 SHLD LOPVAR 8134 220390 SHLD STKGOS 8137 3E29 ST3:MVI A,29;3E 8139 CDCF85 CALL GETLN 813C D5 PUSH D 813D 119D9F LXI D,BUFFER 8140 CDD680 CALL TSTNUM 8143 CD8480 CALL SPJP 8146 7C MOV A,H 8147 B5 ORA L 8148 C1 POP B 8149 CA2788 JZ DIRECT 814C 1B DCX D 814D 7C MOV A,H 814E 12 STAX D 814F 1B DCX D 8150 7D MOV A,L 8151 12 STAX D 8152 C5 PUSH B 8153 D5 PUSH D 8154 79 MOV A,C 8155 93 SUB E 8156 F5 PUSH PSW 8157 CD1386 CALL FNDLN 815A D5 PUSH D 815B C26E81 JNZ ST4 815E D5 PUSH D 815F CD3186 CALL FNDNXT 8162 C1 POP B 8163 2A1590 LHLD TXTUNF 8166 CDD486 CALL MVUP 8169 60 MOV H,B 816A 69 MOV L,C 816B 221590 SHLD TXTUNF 816E C1 ST4:POP B 816F 2A1590 LHLD TXTUNF 8172 F1 POP PSW 8173 E5 PUSH H 8174 FE03 CPI 03 8176 CA1B81 JZ RSTART 8179 85 ADD L 817A 6F MOV L,A 817B 3E00 MVI A,00 817D 8C ADC H 817E 67 MOV H,A 817F 11669F LXI D,TXTEND 8182 CD7E80 CALL HDCP 8185 D2C885 JNC QSORRY 8188 221590 SHLD TXTUNF 818B D1 POP D 818C CDDF86 CALL MVDOWN 818F D1 POP D 8190 E1 POP H 8191 CDD486 CALL MVUP 8194 C33781 JMP ST3 8197 CD9385 NEW:CALL ENDCHK 819A 211790 LXI H,TXTBGN 819D 221590 SHLD TXTUNF 81A0 CD9385 STOP:CALL ENDCHK 81A3 C31B81 JMP RSTART ; 81A6 CD9385 RUN:CALL ENDCHK 81A9 111790 LXI D,TXTBGN ; 81AC 210000 RUNNXL:LXI H,$0000 81AF CD1B86 CALL FNDLP 81B2 DA1B81 JC RSTART ; 81B5 EB RUNTSL:XCHG 81B6 220190 SHLD CURRNT 81B9 EB XCHG 81BA 13 INX D 81BB 13 INX D ; RUNSML:;CALL CHKIO 81BC 00 NOP 81BD 00 NOP 81BE 00 NOP 81BF 21AC87 LXI H,TAB2-1 81C2 C32A88 JMP EXEC ; 81C5 CD7780 GOTO:CALL EXPR 81C8 D5 PUSH D 81C9 CD9385 CALL ENDCHK 81CC CD1386 CALL FNDLN 81CF C20181 JNZ AHOW 81D2 F1 POP PSW 81D3 C3B581 JMP RUNTSL ; 81D6 CDD680 LIST:CALL TSTNUM 81D9 CD9385 CALL ENDCHK 81DC CD1386 CALL FNDLN 81DF DA1B81 LS1:JC RSTART 81E2 CDBF86 CALL PRTLN ;CALL CHKIO 81E5 00 NOP 81E6 00 NOP 81E7 00 NOP 81E8 CD1B86 CALL FNDLP 81EB C3DF81 JMP LS1 ; 81EE 0E06 PRINT:MVI C,06 81F0 CD6580 CALL TSTC 81F3 3B DB 3B 81F4 06 DB 06 81F5 CD6D80 CALL CRLF 81F8 C3BC81 JMP RUNSML 81FB CD6580 PR2:CALL TSTC 81FE 0D DB 0D 81FF 06 DB 06 8200 CD6D80 CALL CRLF 8203 C3AC81 JMP RUNNXL 8206 CD6580 PR0:CALL TSTC 8209 23 "#" 820A 07 DB 07 820B CD7780 CALL EXPR 820E 4D MOV C,L 820F C31882 JMP PR3 8212 CD4B86 PR1:CALL QTSTG 8215 C32982 JMP PR8 8218 CD6580 PR3:CALL TSTC 821B 2C "," 821C 06 DB 06 821D CD8085 CALL FIN 8220 C30682 JMP PR0 8223 CD6D80 PR6:CALL CRLF 8226 CD8C80 CALL ENDCK 8229 CD7780 PR8:CALL EXPR 822C C5 PUSH B 822D CD7B86 CALL PRTNUM 8230 C1 POP B 8231 C31882 JMP PR3 8234 CD0A87 GOSUB:CALL PUSHA 8237 CD7780 CALL EXPR 823A D5 PUSH D 823B CD1386 CALL FNDLN 823E C20181 JNZ AHOW 8241 2A0190 LHLD CURRNT 8244 E5 PUSH H 8245 2A0390 LHLD STKGOS 8248 E5 PUSH H 8249 210000 LXI H,$0000 824C 220990 SHLD LOPVAR 824F 39 DAD SP 8250 220390 SHLD STKGOS 8253 C3B581 JMP RUNTSL 8256 CD9385 RETURN:CALL ENDCHK 8259 2A0390 LHLD STKGOS 825C 7C MOV A,H 825D B5 ORA L 825E CA9985 JZ QWHAT 8261 F9 SPHL 8262 E1 POP H 8263 220390 SHLD STKGOS 8266 E1 POP H 8267 220190 SHLD CURRNT 826A D1 POP D 826B CDEE86 CALL POPA 826E CD8C80 CALL ENDCK ; 8271 CD0A87 FOR:CALL PUSHA 8274 CD6785 CALL SETVAL 8277 2B DCX H 8278 220990 SHLD LOPVAR 827B 210288 LXI H,TAB5-1 827E C32A88 JMP EXEC 8281 CD7780 FR1:CALL EXPR 8284 220D90 SHLD LOPLMT 8287 210888 LXI H,TAB6-1 828A C32A88 JMP EXEC 828D CD7780 FR2:CALL EXPR 8290 C39682 JMP FR4 8293 210100 FR3:LXI H,$0001 8296 220B90 FR4:SHLD LOPINC 8299 2A0190 FR5:LHLD CURRNT 829C 220F90 SHLD LOPLN 829F EB XCHG 82A0 221190 SHLD LOPPT 82A3 010A00 LXI B,$000A 82A6 2A0990 LHLD LOPVAR 82A9 EB XCHG 82AA 60 MOV H,B 82AB 68 MOV L,B 82AC 39 DAD SP 82AD 3E DB 3E;dummy (mov a,n) ,,,skip "DAD B" 82AE 09 FR7:DAD B 82AF 7E MOV A,M 82B0 23 INX H 82B1 B6 ORA M 82B2 CACF82 JZ FR8 82B5 7E MOV A,M 82B6 2B DCX H 82B7 BA CMP D 82B8 C2AE82 JNZ FR7 82BB 7E MOV A,M 82BC BB CMP E 82BD C2AE82 JNZ FR7 82C0 EB XCHG 82C1 210000 LXI H,$0000 82C4 39 DAD SP 82C5 44 MOV B,H 82C6 4D MOV C,L 82C7 210A00 LXI H,$000A 82CA 19 DAD D 82CB CDDF86 CALL MVDOWN 82CE F9 SPHL 82CF 2A1190 FR8:LHLD LOPPT 82D2 EB XCHG 82D3 CD8C80 CALL ENDCK ; 82D6 CD9380 NEXT:CALL TSTV 82D9 DA9985 JC QWHAT 82DC 220590 SHLD VARNXT 82DF D5 NX0:PUSH D 82E0 EB XCHG 82E1 2A0990 LHLD LOPVAR 82E4 7C MOV A,H 82E5 B5 ORA L 82E6 CA9A85 JZ AWHAT 82E9 CD7E80 CALL HDCP 82EC CAF982 JZ NX3 82EF D1 POP D 82F0 CDEE86 CALL POPA 82F3 2A0590 LHLD VARNXT 82F6 C3DF82 JMP NX0 82F9 5E NX3:MOV E,M 82FA 23 INX H 82FB 56 MOV D,M 82FC 2A0B90 LHLD LOPINC 82FF E5 PUSH H 8300 7C MOV A,H 8301 AA XRA D 8302 7A MOV A,D 8303 19 DAD D 8304 FA0B83 JM NX4 8307 AC XRA H 8308 FA2F83 JM NX5 830B EB NX4:XCHG 830C 2A0990 LHLD LOPVAR 830F 73 MOV M,E 8310 23 INX H 8311 72 MOV M,D 8312 2A0D90 LHLD LOPLMT 8315 F1 POP PSW 8316 B7 ORA A 8317 F21B83 JP NX1 831A EB XCHG 831B CD5D85 NX1:CALL CKHLDE 831E D1 POP D 831F DA3183 JC NX2 8322 2A0F90 LHLD LOPLN 8325 220190 SHLD CURRNT 8328 2A1190 LHLD LOPPT 832B EB XCHG 832C CD8C80 CALL ENDCK 832F E1 NX5:POP H 8330 D1 POP D 8331 CDEE86 NX2:CALL POPA 8334 CD8C80 CALL ENDCK 8337 210000 REM:LXI H,$0000 833A 3E DB 3E ; 833B CD7780 IFF:CALL EXPR 833E 7C MOV A,H 833F B5 ORA L 8340 C2BC81 JNZ RUNSML 8343 CD3386 CALL FNDSKP 8346 D2B581 JNC RUNTSL 8349 C31B81 JMP RSTART ; 834C 2A0790 INPERR:LHLD STKINP 834F F9 SPHL 8350 E1 POP H 8351 220190 SHLD CURRNT 8354 D1 POP D 8355 D1 POP D ; INPUT:; 8356 D5 IP1:PUSH D 8357 CD4B86 CALL QTSTG 835A C36683 JMP IP2 835D CD9380 CALL TSTV 8360 DAA483 JC IP4 8363 C37883 JMP IP3 8366 D5 IP2:PUSH D 8367 CD9380 CALL TSTV 836A DA9985 JC QWHAT 836D 1A LDAX D 836E 4F MOV C,A 836F 97 SUB A 8370 12 STAX D 8371 D1 POP D 8372 CD3D86 CALL PRTSTG 8375 79 MOV A,C 8376 1B DCX D 8377 12 STAX D 8378 D5 IP3:PUSH D 8379 EB XCHG 837A 2A0190 LHLD CURRNT 837D E5 PUSH H 837E 215683 LXI H,IP1 8381 220190 SHLD CURRNT 8384 210000 LXI H,$0000 8387 39 DAD SP 8388 220790 SHLD STKINP 838B D5 PUSH D 838C 3E3A MVI A,3A 838E CDCF85 CALL GETLN 8391 119D9F LXI D,BUFFER 8394 CD7780 CALL EXPR 8397 00 NOP 8398 00 NOP 8399 00 NOP 839A D1 POP D 839B EB XCHG 839C 73 MOV M,E 839D 23 INX H 839E 72 MOV M,D 839F E1 POP H 83A0 220190 SHLD CURRNT 83A3 D1 POP D 83A4 F1 IP4:POP PSW 83A5 CD6580 CALL TSTC 83A8 2C DB 2C 83A9 03 DB 03 83AA C35683 JMP IP1 83AD CD8C80 IP5:CALL ENDCK ; 83B0 1A DEFLT:LDAX D 83B1 FE0D CPI 0D;CR 83B3 CAC183 JZ LT1 ; 83B6 CD6785 LET:CALL SETVAL 83B9 CD6580 CALL TSTC 83BC 2C DB 2C 83BD 03 DB 03 83BE C3B683 JMP LET 83C1 CD8C80 LT1:CALL ENDCK 83C4 211088 EXPR1:LXI H,TAB8-1 83C7 C32A88 JMP EXEC 83CA CDF383 XP11:CALL XP18 83CD D8 RC 83CE 6F MOV L,A 83CF C9 RET 83D0 CDF383 XP12:CALL XP18 83D3 C8 RZ 83D4 6F MOV L,A 83D5 C9 RET 83D6 CDF383 XP13:CALL XP18 83D9 C8 RZ 83DA D8 RC 83DB 6F MOV L,A 83DC C9 RET 83DD CDF383 XP14:CALL XP18 83E0 6F MOV L,A 83E1 C8 RZ 83E2 D8 RC 83E3 6C MOV L,H 83E4 C9 RET 83E5 CDF383 XP15:CALL XP18 83E8 C0 RNZ 83E9 6F MOV L,A 83EA C9 RET 83EB CDF383 XP16:CALL XP18 83EE D0 RNC 83EF 6F MOV L,A 83F0 C9 RET 83F1 E1 XP17:POP H 83F2 C9 RET 83F3 79 XP18:MOV A,C 83F4 E1 POP H 83F5 C1 POP B 83F6 E5 PUSH H 83F7 C5 PUSH B 83F8 4F MOV C,A 83F9 CD0884 CALL EXPR2 83FC EB XCHG 83FD E3 XTHL 83FE CD5D85 CALL CKHLDE 8401 D1 POP D 8402 210000 LXI H,$0000 8405 3E01 MVI A,01 8407 C9 RET 8408 CD6580 EXPR2:CALL TSTC 840B 2D DB 2D;- 840C 06 DB 06 840D 210000 LXI H,$0000 8410 C34684 JMP XP26 8413 CD6580 XP21:CALL TSTC 8416 2B DB 2B;+ 8417 00 DB 00 8418 CD5084 XP22:CALL EXPR3 841B CD6580 XP23:CALL TSTC 841E 2B DB 2B;+ 841F 03 DB 03;jmp to XP25 8420 C32684 JMP XP232 8423 C33B84 JMP XP25 8426 E5 XP232:PUSH H 8427 CD5084 CALL EXPR3 842A EB XP24:XCHG 842B E3 XTHL 842C 7C MOV A,H 842D AA XRA D 842E 7A MOV A,D 842F 19 DAD D 8430 D1 POP D 8431 FA1B84 JM XP23 8434 AC XRA H 8435 F21B84 JP XP23 8438 C30081 JMP QHOW 843B CD6580 XP25:CALL TSTC 843E 2D DB 2D;- 843F 03 DB 03;jmp to XP42 8440 C34684 JMP XP26 8443 C3E484 JMP XP42 8446 E5 XP26:PUSH H 8447 CD5084 CALL EXPR3 844A CD4B85 CALL CHGSGN 844D C32A84 JMP XP24 8450 CDC084 EXPR3:CALL EXPR4 8453 CD6580 XP31:CALL TSTC 8456 2A DB 2A;* 8457 03 DB 03;jmp to XP34 8458 C35E84 JMP XP312 845B C38B84 JMP XP34 845E E5 XP312:PUSH H 845F CDC084 CALL EXPR4 8462 0600 MVI B,00 8464 CD4885 CALL CHKSGN 8467 E3 XTHL 8468 CD4885 CALL CHKSGN 846B EB XCHG 846C E3 XTHL 846D 7C MOV A,H 846E B7 ORA A 846F CA7884 JZ XP32 8472 7A MOV A,D 8473 B2 ORA D 8474 EB XCHG 8475 C20181 JNZ AHOW 8478 7D XP32:MOV A,L 8479 210000 LXI H,$0000 847C B7 ORA A 847D CAB284 JZ XP35 8480 19 XP33:DAD D 8481 DA0181 JC AHOW 8484 3D DCR A 8485 C28084 JNZ XP33 8488 C3B284 JMP XP35 848B CD6580 XP34:CALL TSTC 848E 2F DB 2F;/ 848F 03 DB 03;jmp to XP42 8490 C39684 JMP XP342 8493 C3E484 JMP XP42 8496 E5 XP342:PUSH H 8497 CDC084 CALL EXPR4 849A 0600 MVI B,00 849C CD4885 CALL CHKSGN 849F E3 XTHL 84A0 CD4885 CALL CHKSGN 84A3 EB XCHG 84A4 E3 XTHL 84A5 EB XCHG 84A6 7A MOV A,D 84A7 B3 ORA E 84A8 CA0181 JZ AHOW 84AB C5 PUSH B 84AC CD2B85 CALL DIVIDE 84AF 60 MOV H,B 84B0 69 MOV L,C 84B1 C1 POP B 84B2 D1 XP35:POP D 84B3 7C MOV A,H 84B4 B7 ORA A 84B5 FA0081 JM QHOW 84B8 78 MOV A,B 84B9 B7 ORA A 84BA FC4B85 CM CHGSGN 84BD C35384 JMP XP31 84C0 21F087 EXPR4:LXI H,TAB4-1 84C3 C32A88 JMP EXEC 84C6 CD9380 XP40:CALL TSTV 84C9 DAD184 JC XP41 84CC 7E MOV A,M 84CD 23 INX H 84CE 66 MOV H,M 84CF 6F MOV L,A 84D0 C9 RET 84D1 CDD680 XP41:CALL TSTNUM 84D4 78 MOV A,B 84D5 B7 ORA A 84D6 C0 RNZ 84D7 CD6580 PARN:CALL TSTC 84DA 28 DB 28;( 84DB 09 DB 09;jmp to XP43 84DC CD7780 CALL EXPR 84DF CD6580 CALL TSTC 84E2 29 DB 29;) 84E3 01 DB 01 84E4 C9 XP42:RET 84E5 C39985 XP43:JMP QWHAT ; 84E8 CDD784 RND:CALL PARN 84EB 7C MOV A,H 84EC B7 ORA A 84ED F20081 JP QHOW 84F0 B5 ORA L 84F1 CA0081 JZ QHOW 84F4 D5 PUSH D 84F5 E5 PUSH H 84F6 2A1390 LHLD RANPNT 84F9 110090 LXI D,LSTROM 84FC CD7E80 CALL HDCP 84FF DA0585 JC RA1 8502 215D80 LXI H,START 8505 5E RA1:MOV E,M 8506 23 INX H 8507 56 MOV D,M 8508 221390 SHLD RANPNT 850B E1 POP H 850C EB XCHG 850D C5 PUSH B 850E CD2B85 CALL DIVIDE 8511 C1 POP B 8512 D1 POP D 8513 23 INX H 8514 C9 RET 8515 CDD784 ABS:CALL PARN 8518 1B DCX D 8519 CD4885 CALL CHKSGN 851C 13 INX D 851D C9 RET 851E 2A1590 SIZE:LHLD TXTUNF 8521 D5 PUSH D 8522 EB XCHG 8523 21669F LXI H,VARBGN 8526 CD4185 CALL SUBDE 8529 D1 POP D 852A C9 RET 852B E5 DIVIDE:PUSH H 852C 6C MOV L,H 852D 2600 MVI H,00 852F CD3685 CALL DV1 8532 41 MOV B,C 8533 7D MOV A,L 8534 E1 POP H 8535 67 MOV H,A 8536 0EFF DV1:MVI C,FF 8538 0C DV2:INR C 8539 CD4185 CALL SUBDE 853C D23885 JNC DV2 853F 19 DAD D 8540 C9 RET 8541 7D SUBDE:MOV A,L 8542 93 SUB E 8543 6F MOV L,A 8544 7C MOV A,H 8545 9A SBB D 8546 67 MOV H,A 8547 C9 RET 8548 7C CHKSGN:MOV A,H 8549 B7 ORA A 854A F0 RP 854B 7C CHGSGN:MOV A,H 854C F5 PUSH PSW 854D 2F CMA 854E 67 MOV H,A 854F 7D MOV A,L 8550 2F CMA 8551 6F MOV L,A 8552 23 INX H 8553 F1 POP PSW 8554 AC XRA H 8555 F20081 JP QHOW 8558 78 MOV A,B 8559 EE80 XRI 80 855B 47 MOV B,A 855C C9 RET ; 855D 7C CKHLDE:MOV A,H 855E AA XRA D 855F F26385 JP CK1 8562 EB XCHG 8563 CD7E80 CK1:CALL HDCP 8566 C9 RET 8567 CD9380 SETVAL:CALL TSTV 856A DA9985 JC QWHAT 856D E5 PUSH H 856E CD6580 CALL TSTC 8571 3D DB 3D;= 8572 0A DB 0A 8573 CD7780 CALL EXPR 8576 44 MOV B,H 8577 4D MOV C,L 8578 E1 POP H 8579 71 MOV M,C 857A 23 INX H 857B 70 MOV M,B 857C C9 RET 857D C39985 SV1:JMP QWHAT ; 8580 CD6580 FIN:CALL TSTC 8583 3B DB 3B;';' 8584 04 DB 04 8585 F1 POP PSW 8586 C3BC81 JMP RUNSML 8589 CD6580 FI1:CALL TSTC 858C 0D DB 0D 858D 04 DB 04 858E F1 POP PSW 858F C3AC81 JMP RUNNXL 8592 C9 FI2:RET 8593 CD8480 ENDCHK:CALL SPJP 8596 FE0D CPI 0D 8598 C8 RZ ; 8599 D5 QWHAT:PUSH D 859A 110F81 AWHAT:LXI D,WHAT 859D 97 ERROR:SUB A 859E CD3D86 CALL PRTSTG 85A1 D1 POP D 85A2 1A LDAX D 85A3 F5 PUSH PSW 85A4 97 SUB A 85A5 12 STAX D 85A6 2A0190 LHLD CURRNT 85A9 E5 PUSH H 85AA 7E MOV A,M 85AB 23 INX H 85AC B6 ORA M 85AD D1 POP D 85AE CA1B81 JZ RSTART 85B1 7E MOV A,M 85B2 B7 ORA A 85B3 FA4C83 JM INPERR 85B6 CDBF86 CALL PRTLN 85B9 1B DCX D 85BA F1 POP PSW 85BB 12 STAX D 85BC 3E3F MVI A,3F 85BE CD6F80 CALL OUTC 85C1 97 SUB A 85C2 CD3D86 CALL PRTSTG 85C5 C31B81 JMP RSTART 85C8 D5 QSORRY:PUSH D 85C9 111581 ASORRY:LXI D,SORRY 85CC C39D85 JMP ERROR 85CF CD6F80 GETLN:CALL OUTC 85D2 119D9F LXI D,BUFFER 85D5 CD6F87 GL1:CALL CHKIO ;JZ GL1 85D8 00 NOP 85D9 00 NOP 85DA 00 NOP 85DB FE7F CPI 7F 85DD CAFC85 JZ GL3 85E0 CD6F80 CALL OUTC 85E3 FE0A CPI 0A 85E5 CAD585 JZ GL1 85E8 B7 ORA A 85E9 CAD585 JZ GL1 85EC FE7D CPI 7D 85EE CA0B86 JZ GL4 85F1 12 STAX D 85F2 13 INX D 85F3 FE0D CPI 0D 85F5 C8 RZ 85F6 7B MOV A,E 85F7 FEDD CPI DD;BUFEND ********************* 85F9 C2D585 JNZ GL1 85FC 7B GL3:MOV A,E 85FD FE9D CPI 9D;BUFFER ********************* 85FF CA0B86 JZ GL4 8602 1B DCX D 8603 3E5C MVI A,5C;\(back slash)************ 8605 CD6F80 CALL OUTC 8608 C3D585 JMP GL1 860B CD6D80 GL4:CALL CRLF 860E 3E5E MVI A,5E;^ *******? 8610 C3CF85 JMP GETLN ; 8613 7C FNDLN:MOV A,H 8614 B7 ORA A 8615 FA0081 JM QHOW 8618 111790 LXI D,TXTBGN ; FNDLP:; 861B E5 FL1:PUSH H 861C 2A1590 LHLD TXTUNF 861F 2B DCX H 8620 CD7E80 CALL HDCP 8623 E1 POP H 8624 D8 RC 8625 1A LDAX D 8626 95 SUB L 8627 47 MOV B,A 8628 13 INX D 8629 1A LDAX D 862A 9C SBB H 862B DA3286 JC FL2 862E 1B DCX D 862F B0 ORA B 8630 C9 RET ; 8631 13 FNDNXT:INX D 8632 13 FL2:INX D ; 8633 1A FNDSKP:LDAX D 8634 FE0D CPI 0D 8636 C23286 JNZ FL2 8639 13 INX D 863A C31B86 JMP FL1 863D 47 PRTSTG:MOV B,A 863E 1A PS1:LDAX D 863F 13 INX D 8640 B8 CMP B 8641 C8 RZ 8642 CD6F80 CALL OUTC 8645 FE0D CPI 0D 8647 C23E86 JNZ PS1 864A C9 RET ; 864B CD6580 QTSTG:CALL TSTC 864E 22 DB 22;" 864F 0F DB 0F 8650 3E22 MVI A,22 8652 CD3D86 QT1:CALL PRTSTG 8655 FE0D CPI 0D 8657 E1 POP H 8658 CAAC81 JZ RUNNXL 865B 23 QT2:INX H 865C 23 INX H 865D 23 INX H 865E E9 PCHL 865F CD6580 QT3: CALL TSTC 8662 27 DB 27;' 8663 05 DB 05 8664 3E27 MVI A,27;' 8666 C35286 JMP QT1 8669 CD6580 QT4:CALL TSTC 866C 5F DB 5F;_;******* 866D 0C DB 0C 866E 3E8D MVI A,8D;******* 8670 CD6F80 CALL OUTC;***** 8673 CD6F80 CALL OUTC;****** 8676 E1 POP H 8677 C35B86 JMP QT2 867A C9 QT5:RET ; 867B 0600 PRTNUM:MVI B,00 867D CD4885 CALL CHKSGN 8680 F28686 JP PN1 8683 062D MVI B,2D;- 8685 0D DCR C 8686 D5 PN1:PUSH D 8687 110A00 LXI D,$000A;DECIMAL 868A D5 PUSH D 868B 0D DCR C 868C C5 PUSH B 868D CD2B85 PN2:CALL DIVIDE 8690 78 MOV A,B 8691 B1 ORA C 8692 CA9D86 JZ PN3 8695 E3 XTHL 8696 2D DCR L 8697 E5 PUSH H 8698 60 MOV H,B 8699 69 MOV L,C 869A C38D86 JMP PN2 869D C1 PN3:POP B 869E 0D PN4:DCR C 869F 79 MOV A,C 86A0 B7 ORA A 86A1 FAAC86 JM PN5 86A4 3E20 MVI A,20 86A6 CD6F80 CALL OUTC 86A9 C39E86 JMP PN4 86AC 78 PN5:MOV A,B 86AD B7 ORA A 86AE C46F80 CNZ OUTC 86B1 5D MOV E,L 86B2 7B PN6:MOV A,E 86B3 FE0A CPI 0A 86B5 D1 POP D 86B6 C8 RZ 86B7 C630 ADI 30 86B9 CD6F80 CALL OUTC 86BC C3B286 JMP PN6 ; 86BF 1A PRTLN:LDAX D 86C0 6F MOV L,A 86C1 13 INX D 86C2 1A LDAX D 86C3 67 MOV H,A 86C4 13 INX D 86C5 0E04 MVI C,04 86C7 CD7B86 CALL PRTNUM 86CA 3E20 MVI A,20 86CC CD6F80 CALL OUTC 86CF 97 SUB A 86D0 CD3D86 CALL PRTSTG 86D3 C9 RET 86D4 CD7E80 MVUP:CALL HDCP 86D7 C8 RZ 86D8 1A LDAX D 86D9 02 STAX B 86DA 13 INX D 86DB 03 INX B 86DC C3D486 JMP MVUP 86DF 78 MVDOWN:MOV A,B 86E0 92 SUB D 86E1 C2E786 JNZ MD1 86E4 79 MOV A,C 86E5 93 SUB E 86E6 C8 RZ 86E7 1B MD1:DCX D 86E8 2B DCX H 86E9 1A LDAX D 86EA 77 MOV M,A 86EB C3DF86 JMP MVDOWN ; 86EE C1 POPA:POP B 86EF E1 POP H 86F0 220990 SHLD LOPVAR 86F3 7C MOV A,H 86F4 B5 ORA L 86F5 CA0887 JZ PP1 86F8 E1 POP H 86F9 220B90 SHLD LOPINC 86FC E1 POP H 86FD 220D90 SHLD LOPLMT 8700 E1 POP H 8701 220F90 SHLD LOPLN 8704 E1 POP H 8705 221190 SHLD LOPPT 8708 C5 PP1:PUSH B 8709 C9 RET ; 870A 21DE9F PUSHA:LXI H,STKLMT 870D CD4B85 CALL CHGSGN 8710 C1 POP B 8711 39 DAD SP 8712 D2C885 JNC QSORRY 8715 2A0990 LHLD LOPVAR 8718 7C MOV A,H 8719 B5 ORA L 871A CA3087 JZ PU1 871D 2A1190 LHLD LOPPT 8720 E5 PUSH H 8721 2A0F90 LHLD LOPLN 8724 E5 PUSH H 8725 2A0D90 LHLD LOPLMT 8728 E5 PUSH H 8729 2A0B90 LHLD LOPINC 872C E5 PUSH H 872D 2A0990 LHLD LOPVAR 8730 E5 PU1:PUSH H 8731 C5 PUSH B 8732 C9 RET 8733 320090 INIT:STA OCSW 8736 CD6D80 CALL CRLF 8739 97 SUB A 873A 119387 LXI D,MSG1 873D CD3D86 CALL PRTSTG 8740 215D80 LXI H,START 8743 221390 SHLD RANPNT 8746 211790 LXI H,TXTBGN 8749 221590 SHLD TXTUNF 874C C31B81 JMP RSTART 874F C25487 OC2:JNZ OC3 8752 F1 POP PSW 8753 C9 RET 8754 F1 OC3:POP PSW 8755 C5 PUSH B 8756 06E7 MVI B,E7 8758 CD6987 CALL OCSUB 875B FE0D CPI 0D;CR 875D C26787 JNZ OC4 8760 3E0A MVI A,0A;LF 8762 CD6987 CALL OCSUB 8765 3E0D MVI A,0D;CR 8767 C1 OC4:POP B 8768 C9 RET ; 8769 F5 OCSUB:PUSH PSW 876A CDAB10 CALL SOUT ;CALL SOUTT 876D F1 POP PSW 876E C9 RET ; 876F C5 CHKIO:PUSH B ;MVI B,EF ;CALL SIN ;CALL SINT 8770 CD5888 CALL SINSB 8773 FE1A CPI 1A 8775 CA8287 JZ BREAK;ctrl+Z ;MOV A,C 8778 C1 POP B 8779 FE61 CPI 61;a 877B D8 RC 877C FE7B CPI 7B;z+01 877E D0 RNC 877F D620 SUI 20 8781 C9 RET 8782 AF BREAK:XRA A 8783 118C87 LXI D,BREAKT 8786 CD3D86 CALL PRTSTG 8789 C33310 JMP REENT 878C 454E4420 BREAKT:"END " 8790 6F6620 "of " 8793 54494E59 MSG1:"TINY" 8797 42415349 "BASI" 879B 43 "C" 879C 0D TAB1-1:DB 0D 879D 4C495354 "LIST";TAB1 87A1 80 DB 80 87A2 03 DB 03 87A3 52554E "RUN" 87A6 80 DB 80 87A7 06 DB 06 87A8 4E4557 "NEW" 87AB 80 DB 80 87AC 09 TAB2-1:DB 09 87AD 4E455854 "NEXT";TAB2 87B1 80 DB 80 87B2 0C DB 0C 87B3 4C4554 "LET" 87B6 80 DB 80 87B7 0F DB 0F 87B8 4946 "IF" 87BA 80 DB 80 87BB 12 DB 12 87BC 474F544F "GOTO" 87C0 80 DB 80 87C1 15 DB 15 87C2 474F5355 "GOSU" 87C6 42 "B" 87C7 80 DB 80 87C8 18 DB 18 87C9 52455455 "RETU" 87CD 524E "RN" 87CF 80 DB 80 87D0 1B DB 1B 87D1 52454D "REM" 87D4 80 DB 80 87D5 1E DB 1E 87D6 464F52 "FOR" 87D9 80 DB 80 87DA 21 DB 21 87DB 494E5055 "INPU" 87DF 54 "T" 87E0 80 DB 80 87E1 24 DB 24 87E2 5052494E "PRIN" 87E6 54 "T" 87E7 80 DB 80 87E8 27 DB 27 87E9 53544F50 "STOP" 87ED 80 DB 80 87EE 2A DB 2A 87EF 80 DB 80 87F0 2D TAB4-1:DB 2D 87F1 524E44 "RND";TAB4 87F4 80 DB 80 87F5 30 DB 30 87F6 414253 "ABS" 87F9 80 DB 80 87FA 33 DB 33 87FB 53495A45 "SIZE" 87FF 80 DB 80 8800 36 DB 36 8801 80 DB 80 8802 39 TAB5-1:DB 39 8803 544F "TO";TAB5 8805 80 DB 80 8806 3C DB 3C 8807 80 DB 80 8808 3F TAB6-1:DB 3F 8809 53544550 "STEP";TAB6 880D 80 DB 80 880E 42 DB 42 880F 80 DB 80 8810 45 TAB8-1:DB 45 8811 3E DB 3E;">=";TAB8 8812 3D DB 3D 8813 80 DB 80 8814 48 DB 48 8815 23 DB 23;"#" 8816 80 DB 80 8817 4B DB 4B 8818 3E DB 3E;">" 8819 80 DB 80 881A 4E DB 4E 881B 3D DB 3D;"=" 881C 80 DB 80 881D 51 DB 51 881E 3C DB 3C;"<=" 881F 3D DB 3D 8820 80 DB 80 8821 54 DB 54 8822 3C DB 3C;"<" 8823 80 DB 80 8824 57 DB 57 8825 80 DB 80 8826 5A DB 5A ; 8827 219C87 DIRECT:LXI H,TAB1-1 ; EXEC:; 882A CD8480 EX0:CALL SPJP 882D D5 PUSH D 882E 1A EX1:LDAX D 882F 13 INX D 8830 FE2E CPI 2E 8832 CA4B88 JZ EX3 8835 23 INX H 8836 BE CMP M 8837 CA2E88 JZ EX1 883A 3E7F MVI A,7F 883C 1B DCX D 883D BE CMP M 883E DA5288 JC EX5 8841 23 EX2:INX H 8842 BE CMP M 8843 D24188 JNC EX2 8846 23 INX H 8847 D1 POP D 8848 C32A88 JMP EX0 884B 3E7F EX3:MVI A,7F 884D 23 EX4:INX H 884E BE CMP M 884F D24D88 JNC EX4 8852 7E EX5:MOV A,M 8853 23 INX H 8854 6E MOV L,M ;ANI 7F 8855 67 MOV H,A 8856 F1 POP PSW 8857 E9 PCHL ;******test 8858 3E05 SINSB:MVI A,05 885A CDAB10 CALL SOUT 885D CDAE10 CALL SIN 8860 C9 RET ; ORG $9000 LSTROM:; 9000 00 OCSW:DB 00 9001 00 CURRNT:DB 00 9002 00 DB 00 9003 00 STKGOS:DB 00 9004 00 DB 00 9005 00 VARNXT:DB 00 9006 00 DB 00 9007 00 STKINP:DB 00 9008 00 DB 00 9009 00 LOPVAR:DB 00 900A 00 DB 00 900B 00 LOPINC:DB 00 900C 00 DB 00 900D 00 LOPLMT:DB 00 900E 00 DB 00 900F 00 LOPLN: DB 00 9010 00 DB 00 9011 00 LOPPT: DB 00 9012 00 DB 00 9013 00 RANPNT:DB 00 9014 00 DB 00 9015 00 TXTUNF:DB 00 9016 00 DB 00 9017 00 TXTBGN:DB 00 9018 00 DB 00 ORG $9F66 TXTEND:; 9F66 00 VARBGN:NOP;@(),A to Z 54+1byte ORG $9F9D 9F9D 00 BUFFER:NOP;input buffer 80byte ORG $9FDD 9FDD 00 BUFEND:NOP 9FDE 00 STKLMT:NOP ORG $A000 STACK:; ; ;END ABS =8515 AHOW =8101 ASORRY =85C9 AWHAT =859A BREAK =8782 BREAKT =878C BUFEND =9FDD BUFFER =9F9D CHGSGN =854B CHKIO =876F CHKSGN =8548 CK1 =8563 CKHLDE =855D CRLF =806D CURRNT =9001 DEFLT =83B0 DIRECT =8827 DIVIDE =852B DV1 =8536 DV2 =8538 ENDCHK =8593 ENDCK =808C ERROR =859D EX0 =882A EX1 =882E EX2 =8841 EX3 =884B EX4 =884D EX5 =8852 EXEC =882A EXPR =8077 EXPR1 =83C4 EXPR2 =8408 EXPR3 =8450 EXPR4 =84C0 FI1 =8589 FI2 =8592 FIN =8580 FL1 =861B FL2 =8632 FNDLN =8613 FNDLP =861B FNDNXT =8631 FNDSKP =8633 FOR =8271 FR1 =8281 FR2 =828D FR3 =8293 FR4 =8296 FR5 =8299 FR7 =82AE FR8 =82CF GETLN =85CF GL1 =85D5 GL3 =85FC GL4 =860B GOSUB =8234 GOTO =81C5 HDCP =807E HOW =8107 IFF =833B INIT =8733 INPERR =834C INPUT =8356 IP1 =8356 IP2 =8366 IP3 =8378 IP4 =83A4 IP5 =83AD LET =83B6 LIST =81D6 LOPINC =900B LOPLMT =900D LOPLN =900F LOPPT =9011 LOPVAR =9009 LS1 =81DF LSTROM =9000 LT1 =83C1 MD1 =86E7 MSG1 =8793 MVDOWN =86DF MVUP =86D4 NEW =8197 NEXT =82D6 NX0 =82DF NX1 =831B NX2 =8331 NX3 =82F9 NX4 =830B NX5 =832F OC2 =874F OC3 =8754 OC4 =8767 OCSUB =8769 OCSW =9000 OK =810C OUTC =806F PARN =84D7 PN1 =8686 PN2 =868D PN3 =869D PN4 =869E PN5 =86AC PN6 =86B2 POPA =86EE PP1 =8708 PR0 =8206 PR1 =8212 PR2 =81FB PR3 =8218 PR6 =8223 PR8 =8229 PRINT =81EE PRTLN =86BF PRTNUM =867B PRTSTG =863D PS1 =863E PU1 =8730 PUSHA =870A QHOW =8100 QSORRY =85C8 QT1 =8652 QT2 =865B QT3 =865F QT4 =8669 QT5 =867A QTSTG =864B QWHAT =8599 RA1 =8505 RANPNT =9013 REENT =1033 REM =8337 RETURN =8256 RND =84E8 RSTART =811B RUN =81A6 RUNNXL =81AC RUNSML =81BC RUNTSL =81B5 SETVAL =8567 SIN =10AE SINSB =8858 SIZE =851E SORRY =8115 SOUT =10AB SPJP =8084 ST1 =811E ST2 =812E ST22 =812F ST3 =8137 ST4 =816E STACK =A000 START =805D STKGOS =9003 STKINP =9007 STKLMT =9FDE STOP =81A0 SUBDE =8541 SV1 =857D TAB1-1 =879C TAB2-1 =87AC TAB4-1 =87F0 TAB5-1 =8802 TAB6-1 =8808 TAB8-1 =8810 TC1 =80C7 TC2 =80D2 TN1 =80DD TSTC =8065 TSTNUM =80D6 TSTV =8093 TV1 =80B7 TXTBGN =9017 TXTEND =9F66 TXTUNF =9015 VARBGN =9F66 VARNXT =9005 WHAT =810F XP11 =83CA XP12 =83D0 XP13 =83D6 XP14 =83DD XP15 =83E5 XP16 =83EB XP17 =83F1 XP18 =83F3 XP21 =8413 XP22 =8418 XP23 =841B XP232 =8426 XP24 =842A XP25 =843B XP26 =8446 XP31 =8453 XP312 =845E XP32 =8478 XP33 =8480 XP34 =848B XP342 =8496 XP35 =84B2 XP40 =84C6 XP41 =84D1 XP42 =84E4 XP43 =84E5 |
下のリンクをクリックするとソースプログラムがテキスト表示されます。
表示の適当なところを右クリックして「名前をつけて保存」を選びます。
プラウザやシステムによっては、「名前をつけてリンク先を保存」「名前をつけてページを保存」などの表示になることもあります。
またリンクを開かないで、そこで右クリックして、メニューから「名前をつけて保存」を選ぶという方法もあります。
tinybst7.txt
保存先はどこでもよいのですが、ASM80.COMがあるフォルダに保存するのが一番簡単です。
[注記]テキストファイルのダウンロードについて注意事項が有ります([第40回]、[第41回]を参照願います)。
ASM80.COMはND80Z3.5附属CDROMから取扱説明書の通りにコピーした場合にはnd80z3フォルダにあります。
ND8080ではnd8080フォルダにあります。
ND80KL86ボード(KL5C80A12版)の場合には附属CDROMのnd80z3.5cdromフォルダの中のnd80z3フォルダにありますからnd80z3フォルダをそのままC:ドライブにコピーするか、もしzb3u6フォルダをコピーしていたらそこにASM80.COMをコピーしてください。
asm80 tinybst7.txt[enter]
と入力するとアセンブルリストファイル(tinybst7.lst)などのファイルとともに実行ファイルtinybst7.binが作成されます。
tinybst7.binはND80Z3.5、ND8080などでZB3BASICを起動したあと、/LDコマンドでアドレス8000にロードします。
そのあとJP 8000[Enter]と入力することでTINY BASICが起動します。
上の画面のようにプログラムを入力して実行することができます。
プログラムの入力やコマンドの入力ではスクリーンエディタは使えません。
まだ[Back Space]などの機能も使えませんから入力間違いをしたときにはそのまま[Enter]を押して一旦入力を完了させたあと、同じ行番号でもう一度入力し直してください。
ZB3BASICの入力機能を利用していますから見かけ上スクリーンエディタが働いているように見えますが実際には入力途中での訂正はできません。
このあたりの機能については少しずつ補強していくつもりです。
復活!TINY BASIC[第33回]
2020.7.6upload
前へ
次へ
ホームページトップへ戻る