PDP-11 EMT and TRAP calls ========================= EMT RT-11 RSTS RSX Unix PDPTube ----------------------------------------------------------------------------- 00x 0x - - - - I/O functions 02x 1x - - - - - 04x 2x - - - - - 06x 3x - - - - - 10x 4x - - - - - 12x 5x - - - - - 14x 6x - - - - - 16x 7x - - - - - 20x 8x - - - - - 22x 9x - - - - - 24x Ax - - - - - 26x Bx - - - - - 30x Cx - - - - - 32x Dx - - - - - 34x Ex I/O functions - - - - 36x Fx RT-11 calls RSTS calls RSX calls - - TRAP RT-11 RSTS RSX Unix PDPTube ----------------------------------------------------------------------------- 00x 0x - - - System calls - 02x 1x - - - System calls - 04x 2x - - - System calls - 06x 3x - - - System calls - 10x 4x - - - - - 12x 5x - - - - - 14x 6x - - - - - 16x 7x - - - - - 20x 8x - - - - - 22x 9x - - - - - 24x Ax - - - - - 26x Bx - - - - - 30x Cx - - - - - 32x Dx - - - - - 34x Ex - - - - - 36x Fx - - - - - RT-11 EMT calls ==================================================================== EMT &00 &o000 000 - RT-11 version 1 requests, reimplemented as to &DF &o335 223 EMT &o374 with R0=request EMT &E0 &o340 224 - Read char from console into R0, Cy=no char EMT &E1 &o341 225 - Write char to console from R0, Cy=no space EMT &E2 &o342 226 - Get device status EMT &E3 &o343 227 - Load device handler EMT &E4 &o344 228 - Call Command String Interpreter in general mode EMT &E5 &o345 229 - Call Command String Interpreter in special mode EMT &E5 &o345 229 - Read input line EMT &E6 &o346 230 - Lock USR in core EMT &E7 &o347 231 - Unlock USR in core EMT &E8 &o350 232 - Exit EMT &E9 &o351 233 - Output zero-terminated string from R0 EMT &EA &o352 234 - Reset all channels EMT &EB &o353 235 - Increase size of I/O queue EMT &EC &o354 236 - Set top of memory for user program EMT &ED &o355 237 - Enable terminal output and ignore CTRL/O EMT &EE &o356 238 - unused EMT &EF &o357 239 - Terminate I/O and reset all channels EMT &F0 &o360 240 - reserved, used internally by RT-11, allows to &FA &o372 250 RSTS/RSX calls to co-exist with RT-11 EMT &FB &o373 251 - Call address in Kernel mode EMT &FC &o374 252 - R0=function code:channel code EMT &FD &o375 253 - R0=>argument block EMT &FE &o376 254 - reserved, used internally by monitor EMT &FF &o377 255 - reserved, returns immediately, RSTS/RSX call RSX EMT calls ==================================================================== EMT &00-&F7 &o000-&o367 - vector via non-RSX EMT instruction EMT &F8-&FE &o370-&o376 - vector via RSX user EMT EMT &F8 &o370 248 - RSX user call EMT &F9 &o371 249 - RSX user call EMT &FA &o372 250 - RSX user call EMT &FB &o373 251 - RSX user call EMT &FC &o374 252 - RSX user call EMT &FD &o375 253 - RSX user call EMT &FE &o376 254 - RSX user call EMT &FF &o377 255 - RSX system call, stack contains parameters On exit, Carry set if error occured RSTS EMT calls ==================================================================== EMT &F0 &o360 240 - Set FIRQB EMT &F1 &o361 241 - Convert date/time to string EMT &F2 &o362 242 - Set CTRL-C trap EMT &F3 &o363 243 - Transfer control to an RT11 program EMT &F4 &o364 244 - Print error message EMT &F5 &o365 245 - Parse filename EMT &F6 &o366 246 - Expand job image EMT &F7 &o367 247 - Parse for RSTS command EMT &F8 &o370 248 - Clear FIRQB EMT &F9 &o371 249 - Clear XRB PDPTube EMT calls ==================================================================== EMT &00 &o000 000 - OSQUIT Quit current program. EMT &01 &o001 001 - OSCLI Interpret command line at R0. EMT &02 &o002 002 - OSBYTE Read/write byte settings. EMT &03 &o003 003 - OSWORD Read/write settings from memory. EMT &04 &o004 004 - OSWRCH Output character in R0. EMT &05 &o005 005 - OSNEWL Output LF,CR. EMT &06 &o006 006 - OSRDCH Read character to R0 and Carry. EMT &07 &o007 007 - OSFILE Perform action with whole file. EMT &08 &o010 008 - OSARGS Read info on open file or device. EMT &09 &o011 009 - OSBGET Read byte from channel. EMT &0A &o012 010 - OSBPUT Write byte to channel. EMT &0B &o013 011 - OSGBPB Read/write block of data from/to channel. EMT &0C &o014 012 - OSFIND Open/close file. EMT &0D &o015 013 - OSSYST System control functions. EMT &0E &o016 014 - OSCTRL Read/write EMT and environment handlers. EMT &0F &o017 015 - OSERROR Generate an error. Unix TRAP calls ==================================================================== TRAP 0 indir TRAP 16 chown TRAP 32 gtty TRAP 48 signal TRAP 1 exit TRAP 17 brk TRAP 33 TRAP 49 TRAP 2 fork TRAP 18 stat TRAP 34 nice TRAP 50 TRAP 3 read TRAP 19 lseek TRAP 35 ftime TRAP 51 acct TRAP 4 write TRAP 20 getpid TRAP 36 sync TRAP 52 phys TRAP 5 open TRAP 21 mount TRAP 37 kill TRAP 53 lock TRAP 6 close TRAP 22 umount TRAP 38 switch TRAP 54 ioctl TRAP 7 wait TRAP 23 setuid TRAP 39 TRAP 55 TRAP 8 creat TRAP 24 getuid TRAP 40 TRAP 56 mpxchan TRAP 9 link TRAP 25 stime TRAP 41 dup2 TRAP 57 TRAP 10 unlink TRAP 26 ptrace TRAP 42 pipe TRAP 58 TRAP 11 exec TRAP 27 TRAP 43 times TRAP 59 exece TRAP 12 chdir TRAP 28 fstat TRAP 44 profil TRAP 60 umask TRAP 13 time TRAP 29 pause TRAP 45 tui TRAP 61 chroot TRAP 14 mknod TRAP 30 utime TRAP 46 setgid TRAP 62 TRAP 15 chmod TRAP 31 stty TRAP 47 getgid TRAP 63 BSD Unix uses EMT for overlays