view interps/clc-intercal/CLC-INTERCAL-Base-1.-94.-2/INTERCAL/Include/syscall.iasm @ 12501:7383c3977132 draft default tip

<wib_jonas> learn The password of the month is multisensory, interactive complexity of physical life experience.
author HackEso <hackeso@esolangs.org>
date Thu, 27 Jun 2024 16:57:10 +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 ]