view interps/clc-intercal/inst/lib/perl5/Language/INTERCAL/Include/syscall.iasm @ 9071:581584df6d82

<fizzie> revert 942e964c81c1
author HackBot
date Sun, 25 Sep 2016 20:17:31 +0000
parents 859f9b4339e6
children
line wrap: on
line source

	DO NOTE: THIS LIBRARY ADDS SYSTEM CALL INTERFACE TO "SICK"

Copyright (c) 2006-2008 Claudio Calvelli, all rights reserved.

CLC-INTERCAL is copyrighted software. However, permission to use, modify,
and distribute it is granted provided that the conditions set out in the
licence agreement are met. See files README and COPYING in the distribution.

PERVERSION "CLC-INTERCAL INTERCAL/Include/syscall.iasm 1.-94.-2"

	[ FLA { #84 #89 #80 #69}
	      { #69 #88 #84 #69 #78 #83 #73 #79 #78 } ]
	[ STO #666 %OS ]

	PLEASE NOTE: SYSCALL #0 - NO OPERATION
	[ SYS #0 #0 ]
	
	PLEASE NOTE: SYSCALL #1 - (PER)VERSION NUMBER
	[ SYS #1 [
	  STO #11         TAI NUM OWN #1 %OS +
	  STO #95 SUB  #1 TAI NUM OWN #1 %OS +
	  STO #91 SUB  #2 TAI NUM OWN #1 %OS +
	  STO #87 SUB  #3 TAI NUM OWN #1 %OS +
	  STO #92 SUB  #4 TAI NUM OWN #1 %OS +
	  STO #67 SUB  #5 TAI NUM OWN #1 %OS +
	  STO #88 SUB  #6 TAI NUM OWN #1 %OS +
	  STO #74 SUB  #7 TAI NUM OWN #1 %OS +
	  STO #92 SUB  #8 TAI NUM OWN #1 %OS +
	  STO #67 SUB  #9 TAI NUM OWN #1 %OS +
	  STO #65 SUB #10 TAI NUM OWN #1 %OS +
	  STO  #0 SUB #11 TAI NUM OWN #1 %OS] ]

	PLEASE NOTE: SYSCALL #2 - INTERCAL DIALECT
	[ SYS #2 [
	  STO #17         TAI NUM OWN #1 %OS +
	  STO #91 SUB  #1 TAI NUM OWN #1 %OS +
	  STO #95 SUB  #2 TAI NUM OWN #1 %OS +
	  STO #78 SUB  #3 TAI NUM OWN #1 %OS +
	  STO #83 SUB  #4 TAI NUM OWN #1 %OS +
	  STO #78 SUB  #5 TAI NUM OWN #1 %OS +
	  STO #91 SUB  #6 TAI NUM OWN #1 %OS +
	  STO #67 SUB  #7 TAI NUM OWN #1 %OS +
	  STO #95 SUB  #8 TAI NUM OWN #1 %OS +
	  STO #70 SUB  #9 TAI NUM OWN #1 %OS +
	  STO #76 SUB #10 TAI NUM OWN #1 %OS +
	  STO #80 SUB #11 TAI NUM OWN #1 %OS +
	  STO #65 SUB #12 TAI NUM OWN #1 %OS +
	  STO #74 SUB #13 TAI NUM OWN #1 %OS +
	  STO #78 SUB #14 TAI NUM OWN #1 %OS +
	  STO #67 SUB #15 TAI NUM OWN #1 %OS +
	  STO #83 SUB #16 TAI NUM OWN #1 %OS +
	  STO  #0 SUB #17 TAI NUM OWN #1 %OS] ]

	PLEASE NOTE: SYSCALL #3 - OPEN FILE
	[ SYS #3 [
	  STO UNE MUL { #71 #101 #110 #101 #114 #105 #99 #73 #79 }
		  MUL { #110 #101 #119 }
		  [ MUL { #91 #95 #77 #70 #83 #65 } +
		    TSP NUM OWN #1 %OS +
		    TAI NUM OWN #1 %OS ]
	      WHP NUM OWN #1 %OS ] ]

	PLEASE NOTE: SYSCALL #4 - RESET FILE
	[ SYS #4 [
	  UNS MUL { #71 #101 #110 #101 #114 #105 #99 #73 #79 }
	      MUL { #114 #101 #115 #101 #116 }
	      [ WHP NUM OWN #1 %OS ] ] ]

	PLEASE NOTE: SYSCALL #5 - SEEK FILE (SEEK_SET ONLY)
	[ SYS #5 [
	  UNS MUL { #71 #101 #110 #101 #114 #105 #99 #73 #79 }
	      MUL { #115 #101 #101 #107 }
	      [ WHP NUM OWN #1 %OS +
		TSP NUM OWN #1 %OS ] ] ]

	PLEASE NOTE: SYSCALL #6 - OPEN TCP SOCKET
	[ SYS #6 [
	  STO UNE MUL { #71 #101 #110 #101 #114 #105 #99 #73 #79 }
		  MUL { #110 #101 #119 }
		  [ MUL { #91 #95 #80 #78 #86 } +
		    TSP NUM OWN #1 %OS +
		    TAI NUM OWN #1 %OS +
		    MUL { #91 #91 #80 #80 #95 #69 #65 #74 #94 #65 #74 #91 #91 #83 #83 } ]
	      WHP NUM OWN #1 %OS ] ]

	PLEASE NOTE: SYSCALL #7 - TOGGLE NEWLINE HANDLING
	[ SYS #7 [
	  UNS MUL {}
	      MUL { #95 #110 #101 #119 #108 #105 #110 #101 }
	      [ MUL { #91 #91 #80 #80 #95 #80 #86 #91 #91 #83 #83 } ] ] ]

	PLEASE NOTE: THAT'S IT FOR NOW
	[ GUP ]