*** empty log message ***
authorem <none@none>
Mon, 18 Mar 1985 13:12:07 +0000 (13:12 +0000)
committerem <none@none>
Mon, 18 Mar 1985 13:12:07 +0000 (13:12 +0000)
mach/i80/libmon/mon.s

index 2e8e5dc..bdd5317 100644 (file)
@@ -7,6 +7,9 @@
 ! number  1:   exit
 ! number  3:   read
 ! number  4:   write
+! number  5:   open
+! number  6:   close
+! number 54:   ioctl
 ! If called with a number of a call that is not implemented,
 ! a trap is generated.
 
        jz monread      ! is it a read?
        cpi 4
        jz monwrite     ! is it a write?
+       cpi 5
+       jz monopen      ! is it an open?
+       cpi 6
+       jz monclose     ! is it a close?
+       cpi 54
+       jz monioctl
        jmp ebadmon     ! trap
 
 monexit:
-       rst 4
+       jmp .stop
 
 monread:
        pop h           ! file-descriptor, not used
@@ -69,6 +78,28 @@ monwrite:
 2:     push d          ! no error
        jmp monret
 
+
+monopen:
+       pop h           ! pointer to string
+       pop h           ! flag
+       lxi h,-1
+       push h          ! push file descriptor
+       push h          ! push error code twice
+       push h
+       jmp monret
+
+monclose:
+       lxi h,0
+       xthl            ! remove file descriptor and push error code
+       jmp monret
+
+monioctl:
+       pop h           ! file descriptor
+       pop h           ! request
+       lxi h,0
+       xthl            ! remove argp and push error code
+       jmp monret
+
 monret:
        lhld .bcreg
        mov b,h