monsym.red 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324
  1. %
  2. % MONSYM.RED - Support for Dec-20 system LAP code
  3. %
  4. % Author: Eric Benson
  5. % Symbolic Computation Group
  6. % Computer Science Dept.
  7. % University of Utah
  8. % Date: 19 March 1982
  9. % Copyright (c) 1982 University of Utah
  10. %
  11. CompileTime <<
  12. macro procedure DefineJSYSRangeFrom X;
  13. begin scalar Start, L;
  14. Start := Sub1 second X;
  15. L := third X;
  16. return ('progn
  17. . for each Name in second L collect
  18. list('progn, list('put, MkQuote Name,'(quote JSYSValue),
  19. Start := Add1 Start),
  20. list('put,MkQuote Name,
  21. '(quote InstructionDepositFunction),
  22. '(quote JSYSDeposit))));
  23. end;
  24. >>;
  25. lisp procedure JSYSDeposit X;
  26. << if !*WritingFaslFile then UpdateBitTable(1, 0);
  27. DepositAllFields(8#104, 0, get(car X, 'JSYSValue)) >>;
  28. flag('(ERJMP ERCAL), 'MC);
  29. lisp procedure ERJMP Address;
  30. list list('jump, 8#16, Address);
  31. lisp procedure ERCAL Address;
  32. list list('jump, 8#17, Address);
  33. DefineJSYSRangeFrom(1, '(
  34. LOGIN
  35. CRJOB
  36. LGOUT
  37. CACCT
  38. EFACT
  39. SMON
  40. TMON
  41. GETAB
  42. ERSTR
  43. GETER
  44. GJINF
  45. TIME
  46. RUNTM
  47. SYSGT
  48. GNJFN
  49. GTJFN
  50. OPENF
  51. CLOSF
  52. RLJFN
  53. GTSTS
  54. STSTS
  55. DELF
  56. SFPTR
  57. JFNS
  58. FFFFP
  59. RDDIR
  60. CPRTF
  61. CLZFF
  62. RNAMF
  63. SIZEF
  64. GACTF
  65. STDIR
  66. DIRST
  67. BKJFN
  68. RFPTR
  69. CNDIR
  70. RFBSZ
  71. SFBSZ
  72. SWJFN
  73. BIN
  74. BOUT
  75. SIN
  76. SOUT
  77. RIN
  78. ROUT
  79. PMAP
  80. RPACS
  81. SPACS
  82. RMAP
  83. SACTF
  84. GTFDB
  85. CHFDB
  86. DUMPI
  87. DUMPO
  88. DELDF
  89. ASND
  90. RELD
  91. CSYNO
  92. PBIN
  93. PBOUT
  94. PSIN
  95. PSOUT
  96. MTOPR
  97. CFIBF
  98. CFOBF
  99. SIBE
  100. SOBE
  101. DOBE
  102. GTABS
  103. STABS
  104. RFMOD
  105. SFMOD
  106. RFPOS
  107. RFCOC
  108. SFCOC
  109. STI
  110. DTACH
  111. ATACH
  112. DVCHR
  113. STDEV
  114. DEVST
  115. MOUNT
  116. DSMNT
  117. INIDR
  118. SIR
  119. EIR
  120. SKPIR
  121. DIR
  122. AIC
  123. IIC
  124. DIC
  125. RCM
  126. RWM
  127. DEBRK
  128. ATI
  129. DTI
  130. CIS
  131. SIRCM
  132. RIRCM
  133. RIR
  134. GDSTS
  135. SDSTS
  136. RESET
  137. RPCAP
  138. EPCAP
  139. CFORK
  140. KFORK
  141. FFORK
  142. RFORK
  143. RFSTS
  144. SFORK
  145. SFACS
  146. RFACS
  147. HFORK
  148. WFORK
  149. GFRKH
  150. RFRKH
  151. GFRKS
  152. DISMS
  153. HALTF
  154. GTRPW
  155. GTRPI
  156. RTIW
  157. STIW
  158. SOBF
  159. RWSET
  160. GETNM
  161. GET
  162. SFRKV
  163. SAVE
  164. SSAVE
  165. SEVEC
  166. GEVEC
  167. GPJFN
  168. SPJFN
  169. SETNM
  170. FFUFP
  171. DIBE
  172. FDFRE
  173. GDSKC
  174. LITES
  175. TLINK
  176. STPAR
  177. ODTIM
  178. IDTIM
  179. ODCNV
  180. IDCNV
  181. NOUT
  182. NIN
  183. STAD
  184. GTAD
  185. ODTNC
  186. IDTNC
  187. FLIN
  188. FLOUT
  189. DFIN
  190. DFOUT
  191. ));
  192. DefineJSYSRangeFrom(160, '(
  193. CRDIR
  194. GTDIR
  195. DSKOP
  196. SPRIW
  197. DSKAS
  198. SJPRI
  199. STO
  200. ARCF
  201. ));
  202. %define(jsASNDP,8%260) # NOT IMPLEMENTED
  203. %define(jsRELDP,8%261) # NOT IMPLEMENTED
  204. %define(jsASNDC,8%262) # NOT IMPLEMENTED
  205. %define(jsRELDC,8%263) # NOT IMPLEMENTED
  206. %define(jsSTRDP,8%264) # NOT IMPLEMENTED
  207. %define(jsSTPDP,8%265) # NOT IMPLEMENTED
  208. %define(jsSTSDP,8%266) # NOT IMPLEMENTED
  209. %define(jsRDSDP,8%267) # NOT IMPLEMENTED
  210. %define(jsWATDP,8%270) # NOT IMPLEMENTED
  211. DefineJSYSRangeFrom(188, '(
  212. ATNVT
  213. CVSKT
  214. CVHST
  215. FLHST
  216. GCVEC
  217. SCVEC
  218. STTYP
  219. GTTYP
  220. BPT
  221. GTDAL
  222. WAIT
  223. HSYS
  224. USRIO
  225. PEEK
  226. MSFRK
  227. ESOUT
  228. SPLFK
  229. ADVIS
  230. JOBTM
  231. DELNF
  232. SWTCH
  233. TFORK
  234. RTFRK
  235. UTFRK
  236. ));
  237. DefineJSYSRangeFrom(214, '(
  238. OPRFN
  239. CGRP
  240. VACCT
  241. GDACC
  242. ATGRP
  243. GACTJ
  244. GPSGN
  245. ));
  246. DefineJSYSRangeFrom(320, '(
  247. RSCAN
  248. HPTIM
  249. CRLNM
  250. INLNM
  251. LNMST
  252. RDTXT
  253. SETSN
  254. GETJI
  255. MSEND
  256. MRECV
  257. MUTIL
  258. ENQ
  259. DEQ
  260. ENQC
  261. SNOOP
  262. SPOOL
  263. ALLOC
  264. CHKAC
  265. TIMER
  266. RDTTY
  267. TEXTI
  268. UFPGS
  269. SFPOS
  270. SYERR
  271. DIAG
  272. SINR
  273. SOUTR
  274. RFTAD
  275. SFTAD
  276. TBDEL
  277. TBADD
  278. TBLUK
  279. STCMP
  280. SETJB
  281. GDVEC
  282. SDVEC
  283. COMND
  284. PRARG
  285. GACCT
  286. LPINI
  287. GFUST
  288. SFUST
  289. ACCES
  290. RCDIR
  291. RCUSR
  292. ));
  293. DefineJSYSRangeFrom(488, '(
  294. SNDIM
  295. RCVIM
  296. ASNSQ
  297. RELSQ
  298. ));
  299. DefineJSYSRangeFrom(504, '(
  300. THIBR
  301. TWAKE
  302. MRPAC
  303. SETPV
  304. MTALN
  305. TTMSG
  306. ));
  307. END;