# HG changeset patch # User Shinji KONO # Date 1545841051 -32400 # Node ID 5aeff8abca9c4aa42e5b4884e04d907d114eef42 # Parent 6ff8754c9749723983b4e12cce11df54b6444914 add echo control on sbc09 diff -r 6ff8754c9749 -r 5aeff8abca9c os9/level2/cmds/Makefile --- a/os9/level2/cmds/Makefile Wed Dec 26 07:57:02 2018 +0900 +++ b/os9/level2/cmds/Makefile Thu Dec 27 01:17:31 2018 +0900 @@ -5,7 +5,7 @@ OBJ1 = asm attr calldbg cmp config copy cputype date debug del deldir devs dir dir_cb dirsort dump echo edit \ error free help ident irqs link list load login makdir pxd pwd procs prompt shellplus sleep tee touch tsmon unlink \ - game09 sbc09 kernel09.s basic.s + game09 sbc09 cat kernel09.s basic.s all : $(OBJ2) $(OBJ1) @@ -18,7 +18,9 @@ game09 : $(A09) -l $@.lst -o $@ ../../../game09/$@.asm -sbc09 : +sbc09 : sbc09.asm + $(A09) -l $@.lst -o $@ $@.asm +cat : cat.asm $(A09) -l $@.lst -o $@ $@.asm # sbc09 cmds/kernel09.s @@ -26,10 +28,10 @@ cp ../../../examples_forth/kernel09 kernel09.s # sbc09 cmds/basic.s -basic.asm : ../../../basic/basic.asm +basic.asm : ../../../basic/basic.asm fixbasic.pl perl fixbasic.pl ../../../basic/basic.asm > basic.asm -basic.s : basic.asm +basic.s : basic.asm $(A09) -l $@.lst -s $@ basic.asm mdir : diff -r 6ff8754c9749 -r 5aeff8abca9c os9/level2/cmds/cat.asm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os9/level2/cmds/cat.asm Thu Dec 27 01:17:31 2018 +0900 @@ -0,0 +1,151 @@ +*******************************************************************2 +* sbc09 emulator * * $Id$ * * Edt/Rev YYYY/MM/DD Modified by +* Comment +* ------------------------------------------------------------------ +* 1 2018/08/20 S. Kono * on os9 lv2 + + nam Cat + ttl echo test + + ifp1 + use defsfile + endc + +* Module header definitions +tylg set Prgrm+Objct +atrv set ReEnt+rev +rev set $00 +edition set 1 + + mod eom,name,tylg,atrv,start,size + + org 0 +ioentry rmb $80 +filepath rmb 2 +parmptr rmb 2 +stdin rmb 1 +chksum rmb 1 +bcount rmb 1 +adr rmb 2 +work rmb 2 +readbuff rmb $100 + org $400 +size equ . + +name fcs /Cat/ + fcb edition + +start clr ) { next if (/^ACIA/ .. /^TDRE/) ; next if (/^TSTBRK/ .. /^ END/) ; if (/^CLEAR/) { -print <<"EOFEOF" - JSR \$24 ;; echo off (but it is not suuported on pty.asm ) +print <<"EOFEOF"; + JSR \$24 ;; echo off EOFEOF } - if (/^GL02/) { - print "GL02\n"; # do not echo input - next; + # if (/^GL02/) { + # print "GL02\n"; # do not echo input + # next; + # } + if (/FDB\s+CLEAR/) { + print; +print <<"EOFEOF"; + FCC /BYE/ + FCB EOL + FDB EXIT +EOFEOF + next; } print; } - -print <<"EOFEOF" +print <<"EOFEOF"; +EXIT + JSR \$24 ;; echo off + JSR \$27 ;; echo on + JMP \$2a ;; exit + ****************************** ****************************** TSTBRK bsr BRKEEE @@ -47,3 +66,4 @@ ****************************** END EOFEOF + diff -r 6ff8754c9749 -r 5aeff8abca9c os9/level2/cmds/sbc09.asm --- a/os9/level2/cmds/sbc09.asm Wed Dec 26 07:57:02 2018 +0900 +++ b/os9/level2/cmds/sbc09.asm Thu Dec 27 01:17:31 2018 +0900 @@ -88,7 +88,8 @@ puls x,y jmp $400 -Exit clrb +Exit lbsr setecho + clrb os9 F$Exit iotbl @@ -102,9 +103,11 @@ fdb xopenout-iotbl ; $15 fdb xabortin-iotbl ; $18 fdb xclosein-iotbl ; $1B - fdb xcloseout-iotbl ; $21 - fdb delay-iotbl ; $24 - fdb noecho-iotbl ; $27 + fdb xcloseout-iotbl ; $1E + fdb delay-iotbl ; $21 + fdb noecho-iotbl ; $24 + fdb setecho-iotbl ; $27 + fdb exit-iotbl ; $2a iotblend L0049 @@ -238,17 +241,26 @@ xcloseout RTS -noecho LDA