Mercurial > hg > Members > kono > nitros9-code
view level1/cmds/tsmon.a @ 2437:d26e96c40194
rfm changes
author | aaronwolfe |
---|---|
date | Wed, 24 Feb 2010 00:37:08 +0000 |
parents | a51439f6b206 |
children | aaba193af04f |
line wrap: on
line source
******************************************************************* * Tsmon - Timesharing monitor * * $Id$ * * Edt/Rev YYYY/MM/DD Modified by * Comment * ------------------------------------------------------------------ * 6 ????/??/?? * From Tandy OS-9 Level Two VR 02.00.01. nam Tsmon ttl Timesharing monitor use defsfile.d rev set $00 edition set 2 psect tsmon_a,Prgrm+Objct,ReEnt+rev,edition,200,start vsect dp childid rmb 1 parmptr rmb 2 parmlen rmb 2 inbuff rmb 128 endsect Login fcc "LOGIN" LoginPrm fcb C$CR IcptRtn rti start stx parmptr save parameter pointer std parmlen save parameter length leax IcptRtn,pcr point to intercept routine os9 F$Icpt and set it L0024 ldx parmptr get pointer to parameter ldd parmlen and length cmpd #$0002 bcs L0052 lda ,x get byte at command line cmpa #C$CR cr? beq L0052 if so, branch clra stdin os9 I$Close close it lda #UPDAT. os9 I$Open open device on command line bcs Exit branch if error inca A = 1 os9 I$Close close stdout inca A = 2 os9 I$Close close stderr clra stdin path os9 I$Dup dup to stdout bcs Exit branch if error os9 I$Dup dup to stderr bcs Exit branch if error L0052 clra stdin leax inbuff point to buffer ldy #$0001 read 1 byte os9 I$ReadLn read line bcs L0024 branch if error lda #Objct object clrb no additional mem leax <Login,pcr point to login leau <LoginPrm,pcr and to parameters ldy #$0000 parameter size os9 F$Fork fork program bcs L0024 branch if error sta childid else save process ID of child L0072 os9 F$Wait wait for it to finish cmpa childid same as PID we forked? bne L0072 if not, wait more bra L0024 else go back Exit os9 F$Exit exit endsect