	.TITLE	PDP11
	.IDENT	/REV1.5a/
	.ENABL	LC
	.MCALL	.PRINT,.EXIT

.ASECT
.=44
	.WORD	^o500		; CHAIN$!TCBIT$
.=400

ST:
	BIS	#10000,@#44
	CALL	RES
	
WORK:	EMT	340
	BCS	.-2.
	CALL	EXEC
	BR	WORK

HOM:	.ASCII	<33>/H/<200>
CLS:	.ASCII	<33>/H/<33>/J/<200>
	.EVEN
DD:	.ASCII	<33>/Y/
YY:	.BYTE	42.
HH:	.BYTE	72.
	.ASCII	<200>
	.EVEN

REFP:	MOV	PPOS2,YY
	.PRINT	#DD
	MOV	PSWRES,R0
;	CALL	BINOUT
;	RETURN

BINOUT:	MOV	R1,-(SP)
	MOV	R2,-(SP)
	MOV	R0,R1
	MOV	#16.,R2
3$:	MOV	#'0,R0	
	ROL	R1
	ADC	R0
	EMT	341
	BCS	.-2.
	SOB	R2,3$
	MOV	(SP)+,R2
	MOV	(SP)+,R1
	RETURN

LINE:
	MOV	#79.,R1
1$:	MOV	#'",R0
	EMT	341
	BCS	.-2.
	SOB	R1,1$
	RETURN

TIT:	
	.PRINT	#CLS
	.PRINT	#HOM
	.PRINT	#CR
	.PRINT	#HEMES
	CALL	LINE
	MOV	PPOS,YY
	.PRINT	#DD
	.PRINT	#PSW1
	MOV	IPOS,YY
	.PRINT	#DD
	.PRINT	#IMES1
	MOV	O1POS,YY
	.PRINT	#DD
	.PRINT	#O1MES1
	MOV	O2POS,YY
	.PRINT	#DD
	.PRINT	#O2MES1
	RETURN


REFC:
;;;	MOV	IPOS2,YY
;;;	.PRINT	#DD
;;;	.PRINT	#BLN
;;;	.PRINT	#DD
	MOV	CC,R0
	MOV	CMD1(R0),R0
	JMP	PUTBUF

REF0:	TST	OPER
	BNE	REF2
;	JMP	REF1

REF1:	MOV	O1POS1,YY
	.PRINT	#DD
	.PRINT	#BLN
	.PRINT	#DD
	MOV	X,R0
	CALL	TTDIG
	MOV	O1POS2,YY
	.PRINT	#DD
	MOV	X,R0
	BR	BINOUT

REF:	CALL	REFP
	CALL	REFC
	CALL	REF1
;	CALL	REF2
;	RETURN

REF2:	MOV	O2POS1,YY
	.PRINT	#DD
	.PRINT	#BLN
	.PRINT	#DD
	MOV	Y,R0
	CALL	TTDIG
	MOV	O2POS2,YY
	.PRINT	#DD
	MOV	Y,R0
	JMP	BINOUT

SHOW:	MOV	CPOS,YY
	.PRINT	#DD
	.PRINT	#CMES1
	MOV	CC,R3
	.PRINT	CM(R3)
	MOV	CPOS1,YY
	.PRINT	#DD
	.PRINT	#CMES2
	MOV	OP(R3),R0
	JMP	TTDIG

POSIT:
	TST	OPER
	BMI	6$
	BNE	2$
	MOV	O1POS2,R0
5$:
	MOV	XX,R1
	BEQ	3$
	SWAB	R0
1$:	INCB	R0
	SOB	R1,1$
	SWAB	R0
3$:	MOV	R0,YY
	.PRINT	#DD
	RETURN
2$:	MOV	O2POS2,R0
	BR	5$

6$:	MOV	IPOS0,R0
	BR	3$

RES:	CLR	FLAG
;;;	CLR	CFLAG
	CLR	PSWRES
	MTPS	PSWRES
	CLR	X
	CLR	Y
	CLR	OPER
	MOV	#X,Z
	MOV	#MASK1,MASK
	MOV	#15.,XX
	MOV	#1,@MASK
	CALL	POSIT
	CLR	CC
	CALL	TIT
	CALL	REF
	INC	FLAG		;
	CALL	SHOW		;
	MOV	HPOS,YY
	.PRINT	#DD
	CALL	LINE
	.PRINT	#HMES1
	JMP	POSIT

; **************** ВЫВОД ЧИСЛА В ДЕСЯТИЧНОМ ФОРМАТЕ ИЗ R0  В БУФЕР, *********
; **************** АДРЕС КОТОРОГО СОДЕРЖИТ R3			    *********

DIGOUT:		
	MOV	R0,-(SP)
	MOV	R1,-(SP)
	MOV	R2,-(SP)
	MOV	R3,-(SP)
	MOV	R4,-(SP)
	MOV	R5,-(SP)
	MOV	R0,R4
	BPL	1$
	CLC
	ROL	R0
	BEQ	EXTRIM
	MOVB	#'-,(R3)+
	NEG	R4
1$:	MOV	#DECIM,R1
	MOV	#5.,R5
	CLR	R3$
STD:	MOV	(R1)+,R2
	MOV	#'0,R0
1$:	INC	R0
	SUB	R2,R4
	BGE	1$
	DEC	R0
	ADD	R2,R4
	TST	R3$
	BNE	TTOUT
	CMP	#'0,R0
	BEQ	L1
	INC	R3$
TTOUT:	MOVB	R0,(R3)+
L1:	SOB	R5,STD
	TST	R3$
	BNE	1$
	MOVB	#'0,(R3)+
1$:	MOVB	#200,(R3)+
	CLRB	(R3)
	MOV	(SP)+,R5
	MOV	(SP)+,R4
	MOV	(SP)+,R3
	MOV	(SP)+,R2
	MOV	(SP)+,R1
	MOV	(SP)+,R0
	RETURN
DECIM:	.WORD	10000.,1000.,100.,10.,1.
R3$:	0
EXTRIM:	.PRINT	#ETR
	MOV	(SP)+,R5
	MOV	(SP)+,R4
	MOV	(SP)+,R3
	MOV	(SP)+,R2
	MOV	(SP)+,R1
	MOV	(SP)+,R0
	TST	(SP)+
	RETURN
ETR:	.ASCII	/-32768/<200>
	.EVEN
; **************** ВЫВОД ЧИСЛА ИЗ R0 НА ЭКРАН **************************

TTDIG:	MOV	#BUF2,R3
	CALL	DIGOUT
	.PRINT	R3
	RETURN

; ********************* ПОИСК СИМВОЛА ИЗ R0 В СТРОКЕ (R3) *****************
; ********************* ВОЗВРАЩАЕТ В R0		0: FALSE  *****************
; *********************		НАЙДЕННАЯ ПОЗИЦИЯ: TRUE   *****************

LOOK:	MOV	R3,-(SP)
2$:	CMPB	R0,(R3)+
	BEQ	1$
	TSTB	(R3)
	BGT	2$
	MOV	R3,(SP)
1$:	MOV	R3,R0
	SUB	(SP)+,R0
	RETURN


; ********************* MAIN PROGRAM **************************************

COMAND:	.ASCIZ	/4610 /<15><12><33>/79/
LEFT:	.ASCII	<33>/D/<200>
RIGHT:	.ASCII	<33>/C/<200>
	.EVEN
EXEC:
	MOV	#COMAND,R1
	CLR	R2
3$:	CMPB	R0,(R1)+
	BEQ	2$
	TST	(R2)+
	TSTB	(R1)
	BNE	3$
	JMP	COMPIL

2$:	MOV	JUMPS(R2),PC

JUMPS:	.WORD	L4$
	.WORD	L6$
	.WORD	L1$
	.WORD	L0$
	.WORD	RES
	.WORD	L15$
	.WORD	L12$
	.WORD	L33$
	.WORD	L7$
	.WORD	L9$

L33$:	EMT	340
	BCS	.-2.
	CMPB	R0,#'A
	BEQ	L1$
	CMPB	R0,#'B
	BEQ	L0$
	CMPB	R0,#'D
	BEQ	L4$
	CMPB	R0,#'C
	BEQ	L6$
	RETURN

L7$:	TST	NFL
	BEQ	1$
	CLR	NFL
	CLN
2$:	MFPS	PSWRES
	CALL	REFP
	JMP	POSIT

1$:	INC	NFL
	SEN
	BR	2$
NFL:	0

L9$:	TST	CFL
	BEQ	1$
	CLR	CFL
	CLC
2$:	MFPS	PSWRES
	CALL	REFP
	JMP	POSIT

1$:	INC	CFL
	SEC
	BR	2$
CFL:	0

L4$:
	MOV	#1,R1
	TST	OPER
	BMI	M2$
	DEC	XX
	.PRINT	#LEFT
	TST	XX
	BPL	.1$
	INC	XX
M2$:	JMP	JUMP

.1$:	CLC
	ROL	@MASK
	RETURN

L6$:
	CLR	R1
	TST	OPER
	BMI	M2$
	INC	XX
	.PRINT	#RIGHT
	CMP	XX,#16.
	BNE	1$
	DEC	XX
	BR	M2$
1$:	CLC
	ROR	@MASK
RET$:	RETURN

L1$:	TST	OPER
	BMI	BACK
	MOV	#1,R0
	CALL	TTDIG
	.PRINT	#LEFT
	BIS	@MASK,@Z
M00:	CALL	REF0
	JMP	POSIT

L0$:	TST	OPER
	BMI	L12$
	CLR	R0
	CALL	TTDIG
	.PRINT	#LEFT
	BIC	@MASK,@Z
	BR	M00

BACK:	CLR	FLAG
	SUB	#2,CC
	CALL	CFUN
2$:	MOV	CC,R3
	BGE	MM1$
	MOV	#108.,CC
	BR	2$

L12$:	CLR	FLAG
	ADD	#2,CC
	CALL	CFUN
MM2$:	MOV	CC,R3
	CMP	R3,#110.
	BNE	MM1$
	CLR	CC
	CLR	R3
MM1$:
	MOV	CMD1(R3),R0
	CALL	PUTBUF
	INC	FLAG		;
	CALL	SHOW		;
	JMP	POSIT

L15$:	EMT	^o340
	TST	SECFL
	BEQ	2$
	CLR	SECFL
	BR	MM2$
2$:	TST	FLAG
	BNE	1$
	INC	FLAG
	CALL	SHOW
1$:	MOV	CC,R0
	MOV	CMD2(R0),PLACE
	MOV	X,R4
	MOV	Y,R5
	MTPS	PSWRES
PLACE:	0
	MFPS	PSWRES
	MOV	R4,X
	MOV	R5,Y
	CALL	REF
	JMP	POSIT

PUTBUF:	MOV	#BUF,R1
	CLR	CFLAG
1$:	INC	CFLAG
	MOVB	(R0)+,(R1)+
	BGT	1$
	DEC	CFLAG
	BR	PRIBUF

COMPIL:	CMP	R0,#'A
	BLT	2$
	CMP	R0,#177
	BEQ	DEL$
	INC	CFLAG
	CMP	CFLAG,#9.
	BLT	1$
2$:	RETURN

1$:	MOV	CFLAG,R1
	MOVB	R0,BUF-1(R1)
	MOVB	#200,BUF(R1)
	CALL	PIL0
PRIBUF:	MOV	IPOS2,YY
	.PRINT	#DD
	.PRINT	#BLN
	.PRINT	#DD
	.PRINT	#BUF
EXI:	JMP	POSIT

DEL$:	TST	CFLAG
	BEQ	EXI
	DEC	CFLAG
	MOV	CFLAG,R1
	MOVB	#200,BUF(R1)
	MOV	IPOS2,YY
	.PRINT	#DD
	.PRINT	#BUF
	.PRINT	#RAB
	CALL	PIL0
	BR	EXI
RAB:	.ASCII	<40><200>

PIL0:	CALL	CFUN
	TST	CFLAG
	BEQ	1$
	CALL	PIL
	BCS	1$
	INC	FLAG
	CALL	SHOW
1$:	RETURN

PIL:	CLR	FLAG
	MOV	#ADC,R4
	MOV	#BUF,R5
	CLR	R3
4$:	CMPB	(R4),(R5)
	BNE	5$
	TSTB	(R4)+
	BMI	YES
	INC	R5
	BR	4$
5$:	MOV	#BUF,R5
	TST	(R3)+
	TSTB	(R4)+
	BPL	.-2.
	CMP	R3,#110.
	BGE	NONO
	BR	4$
NONO:	INC	SECFL
	SEC
	RETURN
YES:	MOV	R3,CC
	CLR	SECFL
	CLC
	RETURN


CFUN:	MOV	CPOS0,YY
	.PRINT	#DD
	.PRINT	#CLL
	MOV	CPOS2,YY
	.PRINT	#DD
	.PRINT	#CLL
	RETURN


JUMP:	TST	OPER
	BMI	3$
	BNE	1$
	TST	R1
	BNE	6$
	INC	OPER
7$:	MOV	#MASK2,MASK
	MOV	#Y,Z
4$:	TST	XX
	BGT	2$
	MOV	#15.,XX
	MOV	#1,@MASK
5$:	JMP	POSIT

2$:	CLR	XX
	MOV	#^B1000000000000000,@MASK
	BR	5$

1$:	TST	R1
	BEQ	6$
	CLR	OPER
8$:	MOV	#MASK1,MASK
	MOV	#X,Z
	BR	4$

3$:	
	MOV	R1,OPER
	CMP	OPER,BOPER
	BEQ	5$
	TST	R1
	BEQ	8$
	BR	7$

6$:	MOV	OPER,BOPER
	MOV	#-1,OPER
	BR	5$


; ********************* СЕКЦИЯ СООБЩЕНИЙ **********************************

CR:	.ASCII	<15><12><33>/A/<200>
HEMES:	.ASCII	<11><11><11><16>/Основы  ассемблера  /<17>/PDP-11./<15><12>
HLP:	.ASCII	<11><11><11>/ (C) /<16>/"МИГ" кооп. <1988>/<11><11>
	.ASCIZ	/Версия 1.5a/<17>
PSW1:	.ASCII	/PSW:       TNZVC/<200>
IMES1:	.ASCII	<16>/Операция/
IMES2:	.ASCII	<17><200>
O1MES1:	.ASCII	<16>/Операнд #1/
O1MES2:	.ASCII	<17><200>
O2MES1:	.ASCII	<16>/Операнд #2/
O2MES2:	.ASCII	<17><200>
CMES1:	.ASCII	<16>/Функция : /<17><200>
CMES2:	.ASCII	<16>/Число операндов : /<17><200>
HMES1:	.ASCII	<15><12><16>/<ВК> - Выполнить операцию;/
	.ASCII	/  <ЗБ>,/<17>/<A>..<Z> -/<16>/ Набор команды;/
	.ASCII	/ < > - Инициализация;/<15><12>
	.ASCII	/ СТРЕЛКИ - Редактирование/
	.ASCII	/ двоичного содержимого операндов или просмотр команд./<15><12>

	.ASCII	<17><200>
	.EVEN
CMD1:
	.WORD	ADC,ADCB,ADD,ASL,ASLB,ASR,ASRB
	.WORD	BIC,BICB,BIS,BISB,BIT,BITB
	.WORD	CCC,CLC,CLN,CLR,CLRB,CLV,CLZ,CMP,CMPB,COM,COMB
	.WORD	DEC,DECB,HALT,INC,INCB,MOV,MOVB,MFPS,MTPS,NEG,NEGB,NOP,RESET
	.WORD	ROL,ROLB,ROR,RORB,SBC,SBCB,SCC,SEC,SEN,SEV,SEZ
	.WORD	SUB,SWAB,SXT,TST,TSTB,WAIT,XOR
CMD2:	ADC	R4
	ADCB	R4
	ADD	R4,R5
	ASL	R4
	ASLB	R4
	ASR	R4
	ASRB	R4
	BIC	R4,R5
	BICB	R4,R5
	BIS	R4,R5
	BISB	R4,R5
	BIT	R4,R5
	BITB	R4,R5
	CCC
	CLC
	CLN
	CLR	R4
	CLRB	R4
	CLV
	CLZ
	CMP	R4,R5
	CMPB	R4,R5
	COM	R4
	COMB	R4
	DEC	R4
	DECB	R4
	HALT
	INC	R4
	INCB	R4
	MOV	R4,R5
	MOVB	R4,R5
	MFPS	R4
	MTPS	R4
	NEG	R4
	NEGB	R4
	NOP
	RESET
	ROL	R4
	ROLB	R4
	ROR	R4
	RORB	R4
	SBC	R4
	SBCB	R4
	SCC
	SEC
	SEN
	SEV
	SEZ
	SUB	R4,R5
	SWAB	R4
	SXT	R4
	TST	R4
	TSTB	R4
	WAIT
	XOR	R4,R5

OP:	.WORD	1,1,2,1,1,1,1,2,2,2,2,2,2,0,0,0,1,1,0,0
	.WORD	2,2,1,1,1,1,0,1,1,2,2,1,1,1,1,0,0,1,1,1,1
	.WORD	1,1,0,0,0,0,0,2,1,1,1,1,0,2

CM:
	.WORD	CADC,CADCB,CADD,CASL,CASLB,CASR,CASRB
	.WORD	CBIC,CBICB,CBIS,CBISB,CBIT,CBITB
	.WORD	CCCC,CCLC,CCLN,CCLR,CCLRB,CCLV,CCLZ,CCMP,CCMPB,CCOM,CCOMB
	.WORD	CDEC,CDECB,CHALT,CINC,CINCB,CMOV,CMOVB,CMFPS,CMTPS,CNEG
	.WORD	CNEGB,CNOP,CRESET
	.WORD	CROL,CROLB,CROR,CRORB,CSBC,CSBCB,CSCC,CSEC,CSEN,CSEV,CSEZ
	.WORD	CSUB,CSWAB,CSXT,CTST,CTSTB,CWAIT,CXOR


CADC:.ASCII	<16>/Прибавление переноса/<17><33>/K/<200>
CADCB:.ASCII	<16>/Прибавление переноса к байту/<17><33>/K/<200>
CADD:.ASCII	<16>/Сложение/<17><33>/K/<200>
CASL:.ASCII	<16>/Арифметический сдвиг влево/<17><33>/K/<200>
CASLB:.ASCII	<16>/Арифметический сдвиг байта влево/ <17><33>/K/<200>
CASR:.ASCII	<16>/Арифметический сдвиг вправо/<17><33>/K/<200>
CASRB:.ASCII	<16>/Арифметический сдвиг байта вправо/<17><33>/K/<200>
CBIC:.ASCII	<16>/Очистка битами/<17><33>/K/<200>
CBICB:.ASCII	<16>/Очистка битами байта/<17><33>/K/<200>
CBIS:.ASCII	<16>/Установка битов/<17><33>/K/<200>
CBISB:.ASCII	<16>/Установка битов байта/<17><33>/K/<200>
CBIT:.ASCII	<16>/Проверка битов/<17><33>/K/<200>
CBITB:.ASCII	<16>/Проверка битов байта/<17><33>/K/<200>
CCCC:.ASCII	<16>/Очистка всех кодов условий/<17><33>/K/<200>
CCLC:.ASCII	<16>/Очистка разряда переноса (бит/<17>/ C)/<33>/K/<200>
CCLN:.ASCII	<16>/Очистка разряда отриц. результата (бит/<17>/ N)/<33>/K/<200>
CCLR:.ASCII	<16>/Очистка/<17><33>/K/<200>
CCLRB:.ASCII	<16>/Очистка байта/<17><33>/K/<200>
CCLV:.ASCII	<16>/Очистка разряда переполнения (бит/<17>/ V)/<33>/K/<200>
CCLZ:.ASCII	<16>/Очистка разряда нулевого результата бит( /<17>/Z)/<33>/K/<200>
CCMP:.ASCII	<16>/Сравнение первого операнда со вторым/<17><33>/K/<200>
CCMPB:.ASCII	<16>/Сравнение байтов/<17><33>/K/<200>
CCOM:.ASCII	<16>/Инверсия ( дополнение до 1 )/<17><33>/K/<200>
CCOMB:.ASCII	<16>/Инверсия байта/<17><33>/K/<200>
CDEC:.ASCII	<16>/Уменьшение на  1/<17><33>/K/<200>
CDECB:.ASCII	<16>/Уменьшение байта на  1/<17><33>/K/<200>
CHALT:.ASCII	<16>/ОСТАНОВ/<17><33>/K/<200>
CINC:.ASCII	<16>/Увеличение на  1/<17><33>/K/<200>
CINCB:.ASCII	<16>/Увеличение байта на  1/<17><33>/K/<200>
CMOV:.ASCII	<16>/Пересылка/<17><33>/K/<200>
CMOVB:.ASCII	<16>/Пересылка байта/<17><33>/K/<200>
CMFPS:.ASCII	<16>/Пересылка из /<17>/PSW/<33>/K/<200>
CMTPS:.ASCII	<16>/Пересылка в  /<17>/PSW/<33>/K/<200>
CNEG:.ASCII	<16>/Изменение знака/<17><33>/K/<200>
CNEGB:.ASCII	<16>/Изменение знака байта/<17><33>/K/<200>
CNOP:.ASCII	<16>/Пустая операция/ <17><33>/K/<200>
CRESET:.ASCII	<16>/СБРОС ШИНЫ/<17><33>/K/<200>
CROL:.ASCII	<16>/Циклический сдвиг влево/ <17><33>/K/<200>
CROLB:.ASCII	<16>/Циклический сдвиг байта влево/<17><33>/K/<200>
CROR:.ASCII	<16>/Циклический сдвиг вправо/<17><33>/K/<200>
CRORB:.ASCII	<16>/Циклический сдвиг байта вправо/<17><33>/K/<200>
CSBC:.ASCII	<16>/Вычитание переноса/<17><33>/K/<200>
CSBCB:.ASCII	<16>/Вычитание переноса из байта/<17><33>/K/<200>
CSCC:.ASCII	<16>/Установка всех кодов условий/<17><33>/K/<200>
CSEC:.ASCII	<16>/Установка разряда переноса (бит /<17>/C)/<33>/K/<200>
CSEN:.ASCII	<16>/Установка разряда отриц. результата (бит /<17>/N)/<33>/K/<200>
CSEV:.ASCII	<16>/Установка разряда переполнения (бит /<17>/V)/<33>/K/<200>
CSEZ:.ASCII	<16>/Установка разряда нулевого результата (бит /<17>/Z)/<33>/K/<200>
CSUB:.ASCII	<16>/Вычитание/<17><33>/K/<200>
CSWAB:.ASCII	<16>/Обмен байтов/<17><33>/K/<200>
CSXT:.ASCII	<16>/Расширение знака (бит /<17>/N)/<33>/K/<200>
CTST:.ASCII	<16>/Прверка/<17><33>/K/<200>
CTSTB:.ASCII	<16>/Проверка байта/<17><33>/K/<200>
CWAIT:.ASCII	<16>/Ожидание прерывания/<17><33>/K/<200>
CXOR:.ASCII	<16>/Исключающее "ИЛИ"/<17><33>/K/<200>

CMD:
BLN:	.ASCII	/          /<200>
ADC:	.ASCII	/ADC/<200>
ADCB:	.ASCII	/ADCB/<200>
ADD:	.ASCII	/ADD/<200>
ASL:	.ASCII	/ASL/<200>
ASLB:	.ASCII	/ASLB/<200>
ASR:	.ASCII	/ASR/<200>
ASRB:	.ASCII	/ASRB/<200>
BIC:	.ASCII	/BIC/<200>
BICB:	.ASCII	/BICB/<200>
BIS:	.ASCII	/BIS/<200>
BISB:	.ASCII	/BISB/<200>
BIT:	.ASCII	/BIT/<200>
BITB:	.ASCII	/BITB/<200>
CCC:	.ASCII	/CCC/<200>
CLC:	.ASCII	/CLC/<200>
CLN:	.ASCII	/CLN/<200>
CLR:	.ASCII	/CLR/<200>
CLRB:	.ASCII	/CLRB/<200>
CLV:	.ASCII	/CLV/<200>
CLZ:	.ASCII	/CLZ/<200>
CMP:	.ASCII	/CMP/<200>
CMPB:	.ASCII	/CMPB/<200>
COM:	.ASCII	/COM/<200>
COMB:	.ASCII	/COMB/<200>
DEC:	.ASCII	/DEC/<200>
DECB:	.ASCII	/DECB/<200>
HALT:	.ASCII	/HALT/<200>
INC:	.ASCII	/INC/<200>
INCB:	.ASCII	/INCB/<200>
MOV:	.ASCII	/MOV/<200>
MOVB:	.ASCII	/MOVB/<200>
MFPS:	.ASCII	/MFPS/<200>
MTPS:	.ASCII	/MTPS/<200>
NEG:	.ASCII	/NEG/<200>
NEGB:	.ASCII	/NEGB/<200>
NOP:	.ASCII	/NOP/<200>
RESET:	.ASCII	/RESET/<200>
ROL:	.ASCII	/ROL/<200>
ROLB:	.ASCII	/ROLB/<200>
ROR:	.ASCII	/ROR/<200>
RORB:	.ASCII	/RORB/<200>
SBC:	.ASCII	/SBC/<200>
SBCB:	.ASCII	/SBCB/<200>
SCC:	.ASCII	/SCC/<200>
SEC:	.ASCII	/SEC/<200>
SEN:	.ASCII	/SEN/<200>
SEV:	.ASCII	/SEV/<200>
SEZ:	.ASCII	/SEZ/<200>
SUB:	.ASCII	/SUB/<200>
SWAB:	.ASCII	/SWAB/<200>
SXT:	.ASCII	/SXT/<200>
TST:	.ASCII	/TST/<200>
TSTB:	.ASCII	/TSTB/<200>
WAIT:	.ASCII	/WAIT/<200>
XOR:	.ASCII	/XOR/<200>

CLL:	.ASCII	<33>/K/<200>
	.EVEN

ENDMES:
; ********************* СЕКЦИЯ ПЕРЕМЕННЫХ *********************************

PPOS:	.BYTE	31.+6.
	.BYTE	31.+28.
PPOS2:	.BYTE	31.+7.
	.BYTE	31.+28.
IPOS:	.BYTE	31.+9.
		P1=31.+10.
	.BYTE	P1
IPOS2:	.BYTE	31.+10.
	.BYTE	P1
IPOS0:	.BYTE	31.+10.
	.BYTE	P1-1
O1POS:	.BYTE	31.+9.
		P2=P1+8.+10.
	.BYTE	P2
O1POS1:	.BYTE	31.+9.
		P3=P2+10.+1.
	.BYTE	P3
O1POS2:	.BYTE	31.+10.
	.BYTE	P2
O2POS:	.BYTE	31.+9.
		P4=P3+12.
	.BYTE	P4
O2POS1:	.BYTE	31.+9.
		P5=P4+10.+1.
	.BYTE	P5
O2POS2:	.BYTE	31.+10.
	.BYTE	P4
CPOS:	.BYTE	31.+13.
	.BYTE	31.+10.
CPOS0:	.BYTE	31.+13.
	.BYTE	31.+10.+10.
CPOS1:	.BYTE	31.+15.
	.BYTE	31.+10.
CPOS2:	.BYTE	31.+15.
	.BYTE	31.+10.+18.
HPOS:	.BYTE	31.+19.
	.BYTE	31.+1.

X:	0
Y:	0
Z:	0
XX: 	0
MASK:	0
MASK1:	0
MASK2:	0
OPER:	0
BOPER:	0
CC:	0
PSWRES:	0
FLAG:	0
CFLAG:	0
SECFL:	0

; *************** СЕКЦИЯ БУФЕРОВ ********************************************

BUF:	.BLKW	12.
BUF1:	.BLKW	6.
BUF2:	.BLKW	6.
AREA:	.BLKW	6.
BUF3:	.BLKW	12.
DEV:

.END	ST

 