mirror of
https://github.com/PDP-10/its.git
synced 2026-03-21 08:48:51 +00:00
63 lines
719 B
Plaintext
63 lines
719 B
Plaintext
; <C>NC.MID
|
|
|
|
; This file is needed to assemble MIDAS programs produced by
|
|
; the C compiler as well as hand-coded MIDAS programs designed
|
|
; to be loaded with C programs.
|
|
|
|
.SYMTAB 4000.,4000.
|
|
RELOCATABLE
|
|
.INSRT <C>MULSEG
|
|
.MSEG 200000',600000',700000'
|
|
|
|
IF1,[
|
|
.MLLIT==1
|
|
|
|
A=1
|
|
B=2
|
|
C=3
|
|
D=4
|
|
P=15.
|
|
.CCALL=1_27.
|
|
GO=JRST
|
|
|
|
EQUALS ENTRY .GLOBAL
|
|
EQUALS EXTERN .GLOBAL
|
|
|
|
DEFINE .IDATA
|
|
.SEG 0
|
|
TERMIN
|
|
|
|
DEFINE .UDATA
|
|
.SEG 1
|
|
TERMIN
|
|
|
|
DEFINE .CODE
|
|
.SEG 2
|
|
TERMIN
|
|
|
|
DEFINE .PDATA
|
|
.SEG 3
|
|
TERMIN
|
|
|
|
; STACK HACKING FOR VARIABLE REFERENCES
|
|
|
|
%P==0
|
|
DEFINE PPUSH [A]
|
|
PUSH P,A
|
|
%P==%P+1
|
|
TERMIN
|
|
DEFINE PPOP [A]
|
|
POP P,A
|
|
%P==%P-1
|
|
TERMIN
|
|
DEFINE CCALL N,F
|
|
.CCALL N,F
|
|
%P==%P-N
|
|
TERMIN
|
|
|
|
];END IF1
|
|
|
|
IF2,[IFDEF FS1,[
|
|
.KILL %A,%P,A,B,C,D,P,GO,.CCALL
|
|
]]
|