mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-24 17:04:19 +00:00
3565 lines
38 KiB
Plaintext
3565 lines
38 KiB
Plaintext
; SLAVE SUPORT PROCESS FOR CP/NET
|
||
;
|
||
; 1982.8.9. BASE
|
||
;
|
||
TITLE SLAVE SUPORT PROCESS FOR CP/NET
|
||
;
|
||
; EQUATIONS OF DOS FUNCTIONS
|
||
;
|
||
CGTUSR EQU 32 ;GET/SET USER CODE
|
||
CLOGIN EQU 64 ;LOGIN
|
||
CSNDMS EQU 66 ;SEND MESSAGE
|
||
CRCVMS EQU 67 ;RECEIVE MESSAGE
|
||
CMAX EQU 74 ;CP/NET FUNCTION MAX
|
||
COPENQ EQU 135 ;OPEN QUEUE
|
||
CREADQ EQU 137 ;READ QUEUE
|
||
CWRITQ EQU 139 ;WRITE QUEUE
|
||
CDELAY EQU 141 ;DELAY
|
||
CCREAT EQU 144 ;CREATE PROCESS
|
||
CSYSDT EQU 154 ;GET SYSTEM DATA PAGE
|
||
CGTPDA EQU 156 ;GET CURRENT PROCESS DESCRIPTOR POINT
|
||
;
|
||
LNTFCB EQU 39 ;FILE CONTROL BLOCK LENGTH FOR CP/NET
|
||
;
|
||
; BIAS OF PARAMETER AREA
|
||
;
|
||
BRTNUM EQU 7 ;FUNCTION ROUTINE NUMBER
|
||
BPDPNT EQU 17 ;PROCESS DESCRIPTOR POINTER
|
||
BQBUF EQU 19 ;QUEUE BUFFER POINTER
|
||
BFCB EQU 21 ;FCB AREA TOP
|
||
BSPLBF EQU 476 ;SPOOLER BUFFER
|
||
BQSPL EQU 494 ;UQCB FOR SPOOLER
|
||
BQIN EQU 663 ;NETWORK QUEUE IN UQCB TOP
|
||
BQOUT EQU 675 ;NETWORK QUEUE OUT UQCB TOP
|
||
BLNG EQU 687 ;PARAMETER BLOCK LENGTH
|
||
;
|
||
; BDOS ENTRY POINTER
|
||
;
|
||
BDOSAD:
|
||
DW 0 ;SET BY OS
|
||
;
|
||
; MAIN PROCESS DESCRIPTOR
|
||
;
|
||
DW 0 ;LINK TO NEXT PROCESS DESCRIPTOR
|
||
DB 0 ;STATUS
|
||
DB 100 ;PRIORITY
|
||
DW MAINST+38 ;STACK POINTER VALUE
|
||
DB 'Slave0SP' ;PROCESS NAME
|
||
DB 0 ;CONSOLE
|
||
DB 0FFH ;MEMORY SEGMENT IS RESIDENT
|
||
DW 0
|
||
DW 0
|
||
DW 0
|
||
DB 0
|
||
DW 0
|
||
DB 0
|
||
DW 0
|
||
DW 0
|
||
DW 0 ;HL'
|
||
DW 0 ;DE'
|
||
DW 0 ;BC'
|
||
DW 0 ;AF'
|
||
DW 0 ;IY
|
||
DW 0 ;IX
|
||
DW 0 ;HL
|
||
DW 0 ;DE
|
||
DW 0 ;BC
|
||
DW 0 ;AF
|
||
DW 0
|
||
;
|
||
;
|
||
; COMMENT & USER ID
|
||
;
|
||
DB 'COPTRIGHT (C) 1980, DIGITAL RESEARCH '
|
||
;
|
||
DB 0,0,0,0,0,0
|
||
;
|
||
; FILE CONTROL BLOCK FOR SPOOLING
|
||
;
|
||
SPLFCB:
|
||
DB 1,'SLVxSPL0','TXT'
|
||
DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||
;
|
||
; DATA FOR USER QUEUE CONTROL BLOCK
|
||
;
|
||
QCNTQU:
|
||
DB 'NtwrkQIx'
|
||
;
|
||
UQSPOL:
|
||
DW 0 ;LINK TO QUEUE
|
||
DW 0 ;LINK TO BUFFER
|
||
DB 'SPOOL '
|
||
;
|
||
UQMXLT:
|
||
DW 0 ;LINK TO QUEUE
|
||
DW 0 ;LINK TO BUFFER
|
||
DB 'MXList '
|
||
;
|
||
UQMLBX:
|
||
DW 0 ;LINK TO QUEUE
|
||
DW Y19C4 ;LINK TO BUFFER
|
||
DB 'MailBoxQ'
|
||
;
|
||
; BIT MASK DATA INDEX
|
||
;
|
||
IXBTMS:
|
||
DW 0FFFEH ;BIT 0
|
||
DW 0FFFDH ; 1
|
||
DW 0FFFBH ; 2
|
||
DW 0FFF7H ; 3
|
||
DW 0FFEFH ; 4
|
||
DW 0FFDFH ; 5
|
||
DW 0FFBFH ; 6
|
||
DW 0FF7FH ; 7
|
||
DW 0FEFFH ; 8
|
||
DW 0FDFFH ; 9
|
||
DW 0FBFFH ; 10
|
||
DW 0F7FFH ; 11
|
||
DW 0EFFFH ; 12
|
||
DW 0DFFFH ; 13
|
||
DW 0BFFFH ; 14
|
||
DW 07FFFH ; 15
|
||
;
|
||
; CP/NET FUNCTION ROUTINE NUMBER INDEX
|
||
;
|
||
IXFNRT:
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 001H
|
||
DB 002H
|
||
DB 003H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 004H
|
||
DB 000H
|
||
DB 000H
|
||
DB 005H
|
||
DB 006H
|
||
DB 007H
|
||
DB 008H
|
||
DB 008H
|
||
DB 009H
|
||
DB 00AH
|
||
DB 00BH
|
||
DB 006H
|
||
DB 009H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 009H
|
||
DB 000H
|
||
DB 005H
|
||
DB 00CH
|
||
DB 00DH
|
||
DB 00EH
|
||
DB 00FH
|
||
DB 010H
|
||
DB 005H
|
||
DB 010H
|
||
DB 00DH
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 011H
|
||
DB 012H
|
||
DB 013H
|
||
DB 014H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
DB 000H
|
||
;
|
||
;
|
||
; DATA FOR SPOOL START
|
||
;
|
||
T011C:
|
||
DB '.TEX[D]',0
|
||
;
|
||
;
|
||
;
|
||
A0124:
|
||
DCX SP
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV D,E
|
||
PUSH D
|
||
INX SP
|
||
PUSH B
|
||
MOV E,M
|
||
INX H
|
||
MOV D,M
|
||
INX H
|
||
MOV C,M
|
||
MOV M,E
|
||
INX H
|
||
MOV B,M
|
||
MOV M,D
|
||
PUSH B
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,0FFH
|
||
A013D:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
DCX H
|
||
CMP M
|
||
JZ A018C
|
||
LXI H,T0005
|
||
DAD SP
|
||
T014D:
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
PUSH H
|
||
PUSH H
|
||
LXI H,T0006
|
||
DAD SP
|
||
POP D
|
||
CALL A1647
|
||
POP D
|
||
PUSH H
|
||
LXI H,D0001
|
||
DAD D
|
||
PUSH H
|
||
LXI H,T0006
|
||
DAD SP
|
||
POP D
|
||
CALL A1647
|
||
DCX D
|
||
DCX D
|
||
DCX D
|
||
CALL A16A9
|
||
ORA L
|
||
SUI 001H
|
||
SBB A
|
||
POP H
|
||
ANA M
|
||
RAR
|
||
JNC A0189
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
POP H
|
||
POP H
|
||
POP H
|
||
RET
|
||
;
|
||
A0189:
|
||
JMP A013D
|
||
;
|
||
A018C:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
POP H
|
||
POP H
|
||
POP H
|
||
RET
|
||
;
|
||
; CHECK SLAVE ID ON STACK SLAVE ID 1B
|
||
; INPUT COUNTER 1B
|
||
; C:SLAVE ID BIT DATA 2B
|
||
; OUTPUT
|
||
; A:-1 NOT FOUND OTHER VECTOR NUMBER
|
||
;
|
||
CHKSID:
|
||
DCX SP
|
||
PUSH H
|
||
MOV B,C ;SAVE SLAVE ID
|
||
PUSH B
|
||
INX SP ;RESERVE 4 BYTE WORK
|
||
LXI H,1
|
||
DAD SP ;GET WORK POINT FOR COUNTER
|
||
MVI M,-1 ;INITIALIZE COUNTER
|
||
MVI A,1
|
||
INX H
|
||
MOV M,A ;INITIALIZE BIT DATA
|
||
INX H
|
||
MVI M,0
|
||
CHKSIL: ;ONE BIT CHECK LOOP
|
||
MVI A,-1
|
||
RAR
|
||
JNC CHKSIE ;ALWAYS FAILS NOT USED
|
||
LXI H,1
|
||
DAD SP ;GET COUNTER POINT
|
||
MOV A,M
|
||
INR A ;COUNT UP
|
||
MOV M,A
|
||
LHLD Y19C0 ;CONFIGRATION TABLE TOP
|
||
INX H
|
||
INX H
|
||
CMP M ;COMPARE WITH MAX SLAVE COUNT
|
||
JNZ CHKSIS ;NOT TO END
|
||
MVI A,-1 ;NOT FOUND END
|
||
POP H
|
||
POP H
|
||
RET
|
||
;
|
||
CHKSIS: ;CHECK ONE DATA
|
||
LXI B,4
|
||
LHLD Y19C0
|
||
DAD B ;GET SLAVE ID TABLE TOP
|
||
PUSH H
|
||
LXI H,4
|
||
DAD SP ;GET BIT DATA POINT
|
||
POP D
|
||
CALL A1652 ;CHECK LOGIN VECTOR
|
||
MVI A,0
|
||
CALL A169D ;CHECK ZERO
|
||
ORA L
|
||
JZ CHKSIN ;NOT LOGIN SLAVE
|
||
LXI H,1
|
||
DAD SP
|
||
MOV C,M ;GET NUMBER OF VECTOR
|
||
MVI B,0
|
||
LXI H,6
|
||
DAD B ;GET BIAS TO SLAVE PROCESSOR ID BUFFER
|
||
XCHG
|
||
LHLD Y19C0
|
||
DAD D ;GET SLAVE PROCESSOR ID BUFFER
|
||
PUSH H
|
||
LXI H,2
|
||
DAD SP
|
||
MOV A,M ;GET ID CODE
|
||
POP H
|
||
CMP M
|
||
JNZ CHKSIN ;NOT MATCH CHECK NEXT
|
||
LXI H,1 ;MATCH CODE
|
||
DAD SP
|
||
MOV A,M ;GET VECTOR NUMBER
|
||
POP H
|
||
POP H
|
||
RET
|
||
;
|
||
CHKSIN:
|
||
LXI H,2
|
||
DAD SP
|
||
XCHG
|
||
LXI H,2
|
||
DAD SP
|
||
CALL A1638 ;*2 FOR BIT SHIFT
|
||
XCHG
|
||
DCX H
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SAVE NEW BIT DATA TO WORK
|
||
JMP CHKSIL ;TO NEXT BIT CHECK
|
||
;
|
||
CHKSIE: ;LOOP END ROUTINE NOT USED
|
||
POP H
|
||
POP H
|
||
RET
|
||
;
|
||
; CHECK HEADER DATA ON STACK DATA BUFFER POINT 2B
|
||
; INPUT
|
||
; BC:DATA BUFFER TOP
|
||
; OUTPUT
|
||
; HL:BC
|
||
; BC:RESULT
|
||
; A:RESULT 0 OK -1 ERROR
|
||
;
|
||
CHKHDR:
|
||
PUSH B ;SAVE DATA BUFFER POINT ON STACK
|
||
LXI D,3 ;BIAS TO FUNCTION CODE
|
||
LXI H,
|
||
DAD SP ;GET DATA BUFFER POINTER POINT
|
||
CALL A1647 ;GET FUNCTION CODE DATA POINT
|
||
MVI A,CMAX
|
||
CMP M
|
||
JNC $+9 ;NOT FUNCTION CODE OVER
|
||
LXI B,-1 ;OVER OF FUNCTION CODE
|
||
POP H
|
||
MOV A,C
|
||
RET
|
||
;
|
||
LXI H,0
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M ;GET DATA BUFFER POINT
|
||
INX B
|
||
LHLD Y19C0
|
||
INX H
|
||
LDAX B ;GET MASTER ID
|
||
CMP M ;COMPARE WITH MASTER ID IN CONFIGRATION TABLE
|
||
JZ $+9 ;OK
|
||
LXI B,-1 ;MISS MATCH OF MASTER ID
|
||
POP H
|
||
MOV A,C
|
||
RET
|
||
;
|
||
LXI D,3 ;BIAS TO FUNCTION CODE
|
||
LXI H,0
|
||
DAD SP
|
||
CALL A1647 ;GET FUNCTION CODE POINT
|
||
MOV A,M
|
||
CPI CLOGIN
|
||
JNZ $+7 ;NORMAL CODE
|
||
MVI A,0 ;LOGIN CODE SO NO CHECK OF SLAVE ID
|
||
POP H
|
||
RET
|
||
;
|
||
LXI H,0 ;NORMAL CODE SO CHECK SLAVE ID
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LDAX B ;GET SLAVE ID CODE
|
||
MOV C,A
|
||
CALL CHKSID ;CHECK SLAVE ID CODE
|
||
CPI -1
|
||
JNZ $+9 ;MATCH SLAVE ID
|
||
LXI B,-1 ;NOT FOUND OF SLAVE ID
|
||
POP H
|
||
MOV A,C
|
||
RET
|
||
;
|
||
LXI D,3
|
||
LXI H,0
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M ;GET FUNCTION CODE
|
||
SUI CSNDMS ;CHECK SEND MESSAGE COMMAND
|
||
SUI 1
|
||
SBB A
|
||
PUSH PSW
|
||
MOV A,M
|
||
SUI CRCVMS ;CHECK RECEIVE MESSAGE COMMAND
|
||
SUI 1
|
||
SBB A
|
||
POP B
|
||
MOV C,B
|
||
ORA C
|
||
RAR
|
||
JNC $+9 ;NOT MAIL COMMAND
|
||
LDA Y19C3 ;GET MAIL BOX MODE -1 ON
|
||
CMA
|
||
POP H
|
||
RET
|
||
;
|
||
MVI A,0 ;SUCCESS END
|
||
POP H
|
||
RET
|
||
;
|
||
; EACH PROCESS COMMON ROUTINE REENTRANT
|
||
; INPUT
|
||
; C:CHANEL NUMBER
|
||
;
|
||
CSTART:
|
||
LXI H,-BLNG+1
|
||
DAD SP ;STACK POINTER TO UPPER AREA OF DATA AREA
|
||
SPHL
|
||
MOV B,C
|
||
PUSH B ;SET CHANEL NUMBER
|
||
INX SP
|
||
LXI D,0
|
||
MVI C,CGTPDA
|
||
CALL BDOS ;GET PROCESS DESCRIPTOR ADDRESS
|
||
XCHG
|
||
LXI H,BPDPNT
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SET PROCESS DESCRIPTOR POINT
|
||
LXI H,BQBUF
|
||
DAD SP ;GET QUEUE BUFFER POINT
|
||
XCHG
|
||
LXI H,BQIN+2
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SET BUFFER POINT TO INPUT UQCB
|
||
MVI L,7 ;COPY LENGTH
|
||
PUSH H
|
||
LXI H,BQIN+4+2
|
||
DAD SP ;GET NAME POINT FOR UQCB
|
||
XCHG
|
||
LXI B,QCNTQU ;NAME DATA POINTER
|
||
POP H
|
||
LDAX B
|
||
STAX D ;COPY NAME
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ $-5
|
||
LXI H,0
|
||
DAD SP
|
||
MOV A,M ;GET CHANEL
|
||
CPI 10
|
||
JNC CMSTQI ;OVER A
|
||
MVI A,'0' ;0 TO 9
|
||
LXI H,0
|
||
DAD SP
|
||
ADD M ;MAKE QUEUE NAME CODE
|
||
LXI H,BQIN+11
|
||
DAD SP
|
||
MOV M,A ;SET TO NAME DATA
|
||
JMP CMSTIW
|
||
;
|
||
CMSTQI: ;OVER A
|
||
MVI A,'A'
|
||
LXI H,0
|
||
DAD SP
|
||
ADD M ;MAKE QUEUE NAME CODE
|
||
SUI 10
|
||
LXI H,BQIN+11
|
||
DAD SP
|
||
MOV M,A ;SET TO NAME DATA
|
||
CMSTIW:
|
||
LXI H,BQIN
|
||
DAD SP ;GET UQCB POINT
|
||
XCHG
|
||
MVI C,COPENQ
|
||
CALL BDOS ;OPEN QUEUE
|
||
CPI 0
|
||
JZ CMSTIO ;OK
|
||
LXI D,1 ;CAN'T OPEN
|
||
MVI C,CDELAY
|
||
CALL BDOS ;DELAY FOR MAKE QUEUE
|
||
JMP CMSTIW ;RETRY
|
||
;
|
||
CMSTIO:
|
||
LXI H,BQBUF
|
||
DAD SP
|
||
XCHG
|
||
LXI H,BQOUT+2
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SET BUFFER POINTER IN UQCB FOR OUT
|
||
MVI L,6 ;COUNT OF NAME COPY
|
||
PUSH H
|
||
LXI H,BQOUT+4+2
|
||
DAD SP
|
||
XCHG
|
||
LXI B,QCNTQU ;DATA POINT
|
||
POP H
|
||
LDAX B
|
||
STAX D ;COPY NAME
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ $-5
|
||
LXI H,BQOUT+10
|
||
DAD SP
|
||
MVI M,'O' ;"NtwrkQOx"
|
||
LXI H,0
|
||
DAD SP
|
||
MOV A,M ;GET CHANEL
|
||
CPI 10
|
||
JNC CMSTQO ;OVER A
|
||
MVI A,'0' ;0 TO 9
|
||
LXI H,0
|
||
DAD SP
|
||
ADD M ;MAKE QUEUE NUMBER CODE
|
||
LXI H,BQOUT+11
|
||
DAD SP
|
||
MOV M,A ;SET NUMBER
|
||
JMP CMSTOW
|
||
;
|
||
CMSTQO: ;OVER A
|
||
MVI A,'A'
|
||
LXI H,0
|
||
DAD SP
|
||
ADD M ;MAKE QUEUE NUMBER CODE
|
||
SUI 10
|
||
LXI H,BQOUT+11
|
||
DAD SP
|
||
MOV M,A ;SET NUMBER
|
||
CMSTOW:
|
||
LXI H,BQOUT
|
||
DAD SP
|
||
XCHG
|
||
MVI C,COPEN
|
||
CALL BDOS ;OPEN QUEUE
|
||
CPI 0
|
||
JZ CMSTOO ;OK
|
||
LXI D,1 ;CAN'T OPEN
|
||
MVI C,CDELAY
|
||
CALL BDOS ;DELAY FOR MAKE QUEUE
|
||
JMP CMSTOW
|
||
;
|
||
CMSTOO:
|
||
LXI H,1
|
||
DAD SP
|
||
MVI M,0 ;CLEAR FCB INITIALIZE COUNT
|
||
CMSTFL:
|
||
MVI A,7 ;COUNT OF RESERVED FCB AREA
|
||
LXI H,1
|
||
DAD SP
|
||
CMP M ;CHECK END
|
||
JC CMSTFE ;ALL OVER
|
||
LXI H,1
|
||
DAD SP
|
||
MOV L,M ;GET COUNT
|
||
MVI H,0
|
||
LXI D,LNTFCB ;RESERVED FCB LENGTH
|
||
CALL A167C ;GET BIAS
|
||
XCHG
|
||
LXI H,BFCB ;BIAS TO FCB AREA TOP
|
||
DAD SP
|
||
DAD D ;GET FCB DATA POINT
|
||
MVI M,0 ;CLEAR FLAG
|
||
LXI H,1
|
||
DAD SP
|
||
MOV A,M
|
||
INR A ;COUNT UP
|
||
MOV M,A
|
||
JNZ CMSTFL ;TO NEXT FCB
|
||
CMSTFE: ;ALL FCB OVER
|
||
LXI H,4
|
||
DAD SP
|
||
MVI M,0 ;CLEAR
|
||
LXI H,10
|
||
DAD SP
|
||
MVI M,0 ;CLEAR
|
||
LDA Y19C2 ;GET SPOOL MODE
|
||
RAR
|
||
JNC CMLOOP ;NO SPOOL
|
||
LHLD UQSPOL ;GET SPOOL QUEUE POINTER
|
||
XCHG
|
||
LXI H,BQSPL ;BIAS OF UQCB FOR SPOOL
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SET LINK TO SPOOLER QUEUE
|
||
LXI H,BSPLBF ;BIAS OF SPOOLER BUFFER
|
||
DAD SP
|
||
XCHG
|
||
LXI H,BQSPL+2
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D ;SET POINTER TO SPOOLER QUEUE
|
||
;
|
||
;
|
||
CMLOOP: ;LOOP OF ONE MESSAGE EXCHANGE
|
||
MVI A,-1
|
||
RAR
|
||
JNC CMLPRT ;ALWAYS FAIL NOT USED
|
||
LXI H,BQIN
|
||
DAD SP
|
||
XCHG
|
||
MVI C,CREADQ
|
||
CALL BDOS ;GET DATA FROM NETWORKIF
|
||
LXI B,-1
|
||
LXI H,5
|
||
DAD SP
|
||
MOV M,C ;INITIALIZE DATA
|
||
INX H
|
||
MVI M,0
|
||
LXI D,3
|
||
LXI H,BPDPNT
|
||
DAD SP
|
||
CALL A1647 ;GET POINTER OF FUNCTION CODE
|
||
MOV C,M ;GET FUNCTION CODE OF MESSAGE
|
||
MVI B,0
|
||
LXI H,IXFNRT ;ROUTINE INDEX
|
||
DAD B
|
||
MOV A,M ;GET ROUTINE NUMBER
|
||
LXI H,BRTNUM
|
||
DAD SP
|
||
MOV M,A ;SET ROUTINE NUMBER
|
||
LXI H,BPDPNT
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M ;GET DATA BUFFER POINT
|
||
CALL CHKHDR ;CHECK HEADER DATA PARAMETER
|
||
RAR
|
||
JNC CMLPRD ;OK
|
||
LXI H,6 ;ERROR
|
||
DAD SP
|
||
MVI M,-1
|
||
JMP CMLPEN
|
||
;
|
||
CMLPRD:
|
||
LXI H,BRTNUM
|
||
DAD SP
|
||
MOV C,M ;GET ROUTINE NUMBER
|
||
MVI B,000H
|
||
LXI H,IXMAIN ;ROUTINE INDEX
|
||
DAD B
|
||
DAD B
|
||
MOV E,M
|
||
INX H
|
||
MOV D,M ;GET TARGET ROUTINE
|
||
XCHG
|
||
PCHL ;TO EACH ROUTINE
|
||
;
|
||
; ROUTINES OF EACH FUNCTION
|
||
;
|
||
;
|
||
A042C:
|
||
JMP CMLPEN
|
||
;
|
||
A042F:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV E,M
|
||
MVI D,000H
|
||
LXI H,T0900
|
||
DAD D
|
||
XCHG
|
||
MVI C,000H
|
||
CALL A162D
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP CMLPEN
|
||
;
|
||
A044E:
|
||
LXI D,T0006
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI B,T0005
|
||
DCX D
|
||
PUSH H
|
||
CALL A163B
|
||
MOV E,M
|
||
MVI D,000H
|
||
LXI H,T0C00
|
||
DAD D
|
||
XTHL
|
||
MOV C,M
|
||
POP D
|
||
CALL A162D
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
JMP CMLPEN
|
||
;
|
||
A0475:
|
||
LXI H,T000A
|
||
DAD SP
|
||
MOV A,M
|
||
CMA
|
||
RAR
|
||
JNC A052F
|
||
LXI B,0FFFFH
|
||
LXI H,T000A
|
||
DAD SP
|
||
MOV M,C
|
||
LDA Y19C2
|
||
RAR
|
||
JNC A051F
|
||
LXI H,T01F2
|
||
DAD SP
|
||
MVI M,000H
|
||
MVI L,024H
|
||
PUSH H
|
||
LXI H,T0275
|
||
DAD SP
|
||
XCHG
|
||
LXI B,SPLFCB
|
||
POP H
|
||
A04A0:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A04A0
|
||
LXI H,A0000
|
||
DAD SP
|
||
MOV A,M
|
||
CPI 00AH
|
||
JNC A04C1
|
||
MVI A,030H
|
||
LXI H,A0000
|
||
DAD SP
|
||
ADD M
|
||
LXI H,T0277
|
||
DAD SP
|
||
MOV M,A
|
||
JMP A04CF
|
||
;
|
||
A04C1:
|
||
MVI A,041H
|
||
LXI H,A0000
|
||
DAD SP
|
||
ADD M
|
||
SUI 00AH
|
||
LXI H,T0277
|
||
DAD SP
|
||
MOV M,A
|
||
A04CF:
|
||
LXI H,T01F3
|
||
DAD SP
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,011H
|
||
CALL BDOS
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
A04E8:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
CPI 0FFH
|
||
JZ A050B
|
||
LXI H,T027B
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,012H
|
||
CALL BDOS
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
JMP A04E8
|
||
;
|
||
A050B:
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,016H
|
||
CALL BDOS
|
||
CPI 0FFH
|
||
JNZ A051F
|
||
LXI H,019C2H
|
||
MVI M,000H
|
||
A051F:
|
||
LDA Y19C2
|
||
CMA
|
||
RAR
|
||
JNC A052F
|
||
LXI D,UQMXLT
|
||
MVI C,089H
|
||
CALL BDOS
|
||
A052F:
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
LXI B,T0005
|
||
DCX D
|
||
CALL A163B
|
||
MOV A,M
|
||
LXI H,T000B
|
||
DAD SP
|
||
MOV M,A
|
||
LXI H,D0001
|
||
DAD SP
|
||
MVI M,001H
|
||
A0552:
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV A,M
|
||
LXI H,D0001
|
||
DAD SP
|
||
CMP M
|
||
JC A069A
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T0005
|
||
DAD B
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
POP D
|
||
CALL A1647
|
||
MOV A,M
|
||
LXI H,T0003
|
||
DAD SP
|
||
MOV M,A
|
||
MOV A,M
|
||
CPI 01AH
|
||
JNZ A0630
|
||
LXI H,T000A
|
||
DAD SP
|
||
MVI M,000H
|
||
LDA Y19C2
|
||
RAR
|
||
JNC A0625
|
||
LXI H,T01F2
|
||
DAD SP
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T01F3
|
||
DAD SP
|
||
DAD B
|
||
MVI M,01AH
|
||
LXI H,T01F3
|
||
DAD SP
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,015H
|
||
CALL BDOS
|
||
CPI 0FFH
|
||
JNZ A05BB
|
||
LXI H,019C2H
|
||
MVI M,000H
|
||
JMP A0622
|
||
;
|
||
A05BB:
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,010H
|
||
CALL BDOS
|
||
CPI 0FFH
|
||
JNZ A05D2
|
||
LXI H,019C2H
|
||
MVI M,000H
|
||
JMP A0622
|
||
;
|
||
A05D2:
|
||
LXI D,T00FF
|
||
MVI C,020H
|
||
CALL BDOS
|
||
LXI H,T01DC
|
||
DAD SP
|
||
MOV M,A
|
||
LXI H,T01DD
|
||
DAD SP
|
||
MVI M,000H
|
||
MVI L,008H
|
||
PUSH H
|
||
LXI H,T0276
|
||
DAD SP
|
||
PUSH H
|
||
LXI H,T01E2
|
||
DAD SP
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A05F4:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A05F4
|
||
MVI L,008H
|
||
PUSH H
|
||
LXI H,T01E8
|
||
DAD SP
|
||
XCHG
|
||
LXI B,T011C
|
||
POP H
|
||
A0608:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A0608
|
||
LXI H,T01EE
|
||
DAD SP
|
||
XCHG
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
LXI D,D0001
|
||
MVI C,027H
|
||
CALL BDOS
|
||
A0622:
|
||
JMP A062D
|
||
;
|
||
A0625:
|
||
LXI D,UQMXLT
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
A062D:
|
||
JMP A0690
|
||
;
|
||
A0630:
|
||
LDA Y19C2
|
||
RAR
|
||
JNC A0684
|
||
LXI H,T01F2
|
||
DAD SP
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T01F3
|
||
DAD SP
|
||
DAD B
|
||
PUSH H
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
MOV M,A
|
||
LXI H,T01F2
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
CPI 080H
|
||
JNZ A0681
|
||
LXI H,T01F2
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI H,T01F3
|
||
DAD SP
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI H,T0273
|
||
DAD SP
|
||
XCHG
|
||
MVI C,015H
|
||
CALL BDOS
|
||
CPI 0FFH
|
||
JNZ A0681
|
||
LXI H,019C2H
|
||
MVI M,000H
|
||
LXI H,T000A
|
||
DAD SP
|
||
MVI M,000H
|
||
A0681:
|
||
JMP A0690
|
||
;
|
||
A0684:
|
||
LXI H,T0003
|
||
DAD SP
|
||
MOV E,M
|
||
MVI D,000H
|
||
MVI C,005H
|
||
CALL BDOS
|
||
A0690:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
JNZ A0552
|
||
A069A:
|
||
JMP CMLPEN
|
||
;
|
||
A069D:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV E,M
|
||
MVI D,000H
|
||
LXI H,T0600
|
||
DAD D
|
||
XCHG
|
||
MVI C,000H
|
||
CALL A162D
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP CMLPEN
|
||
;
|
||
A06BC:
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI B,T0005
|
||
DCX D
|
||
PUSH H
|
||
CALL A163B
|
||
MOV E,M
|
||
INX H
|
||
MOV D,M
|
||
POP H
|
||
MOV C,M
|
||
CALL BDOS
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M
|
||
CPI 020H
|
||
JNZ A0718
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M
|
||
CPI 0FFH
|
||
JNZ A0708
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP A0718
|
||
;
|
||
A0708:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M
|
||
LXI H,T0004
|
||
DAD SP
|
||
MOV M,A
|
||
A0718:
|
||
JMP CMLPEN
|
||
;
|
||
A071B:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV A,M
|
||
SUI 008H
|
||
SUI 001H
|
||
SBB A
|
||
CMA
|
||
DCX H
|
||
MOV M,A
|
||
MOV A,M
|
||
CMA
|
||
RAR
|
||
JNC A078D
|
||
LXI H,T0002
|
||
DAD SP
|
||
MVI M,000H
|
||
A074F:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
CMA
|
||
INX H
|
||
PUSH PSW
|
||
MOV A,M
|
||
SUI 008H
|
||
ADI 0FFH
|
||
SBB A
|
||
POP B
|
||
MOV C,B
|
||
ANA C
|
||
RAR
|
||
JNC A078D
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
MOV A,M
|
||
CMA
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
CMA
|
||
RAR
|
||
JNC A078A
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
A078A:
|
||
JMP A074F
|
||
;
|
||
A078D:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
CMA
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
CMA
|
||
RAR
|
||
JNC A0831
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
DCX H
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
MOV H,B
|
||
MOV L,C
|
||
LXI B,0FFFFH
|
||
MOV M,C
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
POP H
|
||
PUSH B
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
POP H
|
||
MOV M,C
|
||
INX H
|
||
MOV M,B
|
||
MVI L,00DH
|
||
LXI D,T0007
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0003
|
||
PUSH H
|
||
LXI H,T0151
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A07F9:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A07F9
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0003
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
XTHL
|
||
MOV C,M
|
||
POP D
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 0FFH
|
||
JNZ A0831
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
MOV H,B
|
||
MOV L,C
|
||
MVI M,000H
|
||
A0831:
|
||
JMP CMLPEN
|
||
;
|
||
A0834:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0887
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,010H
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP A088D
|
||
;
|
||
A0887:
|
||
LXI H,T0006
|
||
DAD SP
|
||
MVI M,0FFH
|
||
A088D:
|
||
JMP CMLPEN
|
||
;
|
||
A0890:
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV A,M
|
||
CPI 011H
|
||
JNZ A08C3
|
||
LXI H,T000D
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T01D3
|
||
DAD SP
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A08B6:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCX H
|
||
MOV A,H
|
||
ORA L
|
||
JNZ A08B6
|
||
JMP A08E3
|
||
;
|
||
A08C3:
|
||
LXI H,T0005
|
||
PUSH H
|
||
LXI H,T000E
|
||
DAD SP
|
||
LXI D,T0017
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A08D9:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCX H
|
||
MOV A,H
|
||
ORA L
|
||
JNZ A08D9
|
||
A08E3:
|
||
LXI H,T014F
|
||
DAD SP
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T01D1
|
||
DAD SP
|
||
XTHL
|
||
MOV C,M
|
||
POP D
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
SUI 0FFH
|
||
ADI 0FFH
|
||
SBB A
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
MOV A,M
|
||
SUI 03FH
|
||
ADI 0FFH
|
||
SBB A
|
||
POP B
|
||
MOV C,B
|
||
ANA C
|
||
RAR
|
||
JNC A095F
|
||
A0924:
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV A,M
|
||
SUI 0FFH
|
||
ADI 0FFH
|
||
SBB A
|
||
PUSH PSW
|
||
MOV A,M
|
||
RRC
|
||
RRC
|
||
RRC
|
||
ANI 060H
|
||
MOV C,A
|
||
MVI B,000H
|
||
LXI H,T0151
|
||
DAD SP
|
||
DAD B
|
||
PUSH H
|
||
LXI H,T0008
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
SUB M
|
||
ADI 0FFH
|
||
SBB A
|
||
POP B
|
||
MOV C,B
|
||
ANA C
|
||
RAR
|
||
JNC A095F
|
||
LXI D,A0000
|
||
MVI C,012H
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP A0924
|
||
;
|
||
A095F:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T0008
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
MOV M,A
|
||
CPI 0FFH
|
||
JZ A09D7
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
MVI L,020H
|
||
MVI A,003H
|
||
PUSH H
|
||
LXI H,T0008
|
||
DAD SP
|
||
ANA M
|
||
MOV L,A
|
||
MVI H,000H
|
||
LXI D,T0020
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0151
|
||
DAD SP
|
||
DAD D
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0017
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A09A3:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A09A3
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,020H
|
||
LXI H,T0005
|
||
LXI D,T0017
|
||
PUSH H
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T0010
|
||
DAD SP
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A09CD:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCX H
|
||
MOV A,H
|
||
ORA L
|
||
JNZ A09CD
|
||
A09D7:
|
||
JMP CMLPEN
|
||
;
|
||
A09DA:
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI B,T0005
|
||
DCX D
|
||
PUSH H
|
||
CALL A163B
|
||
XTHL
|
||
MOV C,M
|
||
POP D
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
JMP CMLPEN
|
||
;
|
||
A09FA:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,082H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0AD8
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T000F
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0008
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0023
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,014H
|
||
CALL BDOS
|
||
LXI D,T0087
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T000F
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0023
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
JMP A0AE4
|
||
;
|
||
A0AD8:
|
||
LXI D,T0087
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0AE4:
|
||
JMP CMLPEN
|
||
;
|
||
A0AE7:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,002H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0BC5
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T000F
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0008
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0023
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0009
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,015H
|
||
CALL BDOS
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T000F
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0023
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
JMP A0BD1
|
||
;
|
||
A0BC5:
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0BD1:
|
||
JMP CMLPEN
|
||
;
|
||
A0BD4:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,082H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
T0C00:
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0CA5
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
MVI L,003H
|
||
LXI D,T0007
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0024
|
||
PUSH H
|
||
LXI H,T0151
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A0C3C:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A0C3C
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,021H
|
||
CALL BDOS
|
||
LXI D,T0087
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T000F
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0023
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
JMP A0CB1
|
||
;
|
||
A0CA5:
|
||
LXI D,T0087
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0CB1:
|
||
JMP CMLPEN
|
||
;
|
||
A0CB4:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,002H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0D90
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
MVI L,003H
|
||
LXI D,T0007
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0024
|
||
PUSH H
|
||
LXI H,T0151
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A0D1C:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A0D1C
|
||
LXI D,T000A
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,01AH
|
||
CALL BDOS
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0003
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
XTHL
|
||
MOV C,M
|
||
POP D
|
||
CALL BDOS
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T000F
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0023
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
JMP A0D9C
|
||
;
|
||
A0D90:
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0D9C:
|
||
JMP CMLPEN
|
||
;
|
||
A0D9F:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,005H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0E60
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,023H
|
||
CALL BDOS
|
||
LXI D,T000A
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T000F
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0023
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
MVI L,003H
|
||
LXI D,T0024
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0007
|
||
PUSH H
|
||
LXI H,T0017
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A0E55:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A0E55
|
||
JMP A0E6C
|
||
;
|
||
A0E60:
|
||
LXI D,T000A
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0E6C:
|
||
JMP CMLPEN
|
||
;
|
||
A0E6F:
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,003H
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
PUSH B
|
||
INX D
|
||
MOV B,D
|
||
MOV C,E
|
||
MVI E,008H
|
||
CALL A0124
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 008H
|
||
JZ A0F30
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI D,T0007
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T000F
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0008
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0023
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0003
|
||
LXI H,T014D
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
MVI C,024H
|
||
CALL BDOS
|
||
LXI D,T0008
|
||
LXI H,T0013
|
||
DAD SP
|
||
PUSH PSW
|
||
CALL A1647
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
MVI L,003H
|
||
LXI D,T0024
|
||
PUSH H
|
||
LXI H,T014F
|
||
DAD SP
|
||
CALL A1647
|
||
LXI D,T0005
|
||
PUSH H
|
||
LXI H,T0017
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A0F25:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A0F25
|
||
JMP A0F3C
|
||
;
|
||
A0F30:
|
||
LXI D,T0008
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,0FFH
|
||
A0F3C:
|
||
JMP CMLPEN
|
||
;
|
||
A0F3F:
|
||
LXI D,T0003
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
LXI B,T0005
|
||
DCX D
|
||
PUSH H
|
||
CALL A163B
|
||
MOV E,M
|
||
INX H
|
||
MOV D,M
|
||
POP H
|
||
MOV C,M
|
||
CALL BDOS
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV M,A
|
||
MVI A,001H
|
||
LXI H,T0008
|
||
DAD SP
|
||
MOV M,A
|
||
INX H
|
||
MVI M,000H
|
||
LXI H,D0001
|
||
DAD SP
|
||
MVI M,000H
|
||
A0F6E:
|
||
MVI A,00FH
|
||
LXI H,D0001
|
||
DAD SP
|
||
CMP M
|
||
JC A100C
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
LXI H,T0008
|
||
DAD SP
|
||
CALL A1652
|
||
MVI A,000H
|
||
CALL A169D
|
||
ORA L
|
||
JZ A0FF1
|
||
LXI H,T0002
|
||
DAD SP
|
||
MVI M,000H
|
||
A0F99:
|
||
MVI A,007H
|
||
LXI H,T0002
|
||
DAD SP
|
||
CMP M
|
||
JC A0FF1
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0027
|
||
CALL A167C
|
||
XCHG
|
||
LXI H,T0015
|
||
DAD SP
|
||
DAD D
|
||
XCHG
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
DCX H
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
LXI D,T0003
|
||
DCX H
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T0003
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
POP H
|
||
SUB M
|
||
SUI 001H
|
||
SBB A
|
||
MOV H,B
|
||
MOV L,C
|
||
ANA M
|
||
RAR
|
||
JNC A0FE7
|
||
LXI H,T014D
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
MOV H,B
|
||
MOV L,C
|
||
MVI M,000H
|
||
A0FE7:
|
||
LXI H,T0002
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
JNZ A0F99
|
||
A0FF1:
|
||
LXI H,T0008
|
||
DAD SP
|
||
XCHG
|
||
LXI H,T0008
|
||
DAD SP
|
||
CALL A1638
|
||
XCHG
|
||
DCX H
|
||
MOV M,E
|
||
INX H
|
||
MOV M,D
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
JNZ A0F6E
|
||
A100C:
|
||
JMP CMLPEN
|
||
;
|
||
A100F:
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LDAX B
|
||
MOV C,A
|
||
CALL CHKSID
|
||
CPI 0FFH
|
||
JNZ A110B
|
||
DI
|
||
LHLD Y19C0
|
||
INX H
|
||
INX H
|
||
LXI B,T0003
|
||
PUSH H
|
||
LHLD Y19C0
|
||
DAD B
|
||
POP D
|
||
LDAX D
|
||
CMP M
|
||
JZ A110A
|
||
LXI H,D0001
|
||
DAD SP
|
||
MVI M,000H
|
||
A103C:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
SUI 008H
|
||
ADI 0FFH
|
||
SBB A
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T0005
|
||
DAD B
|
||
PUSH PSW
|
||
PUSH H
|
||
LXI H,T0017
|
||
DAD SP
|
||
POP D
|
||
CALL A1647
|
||
PUSH H
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T0016
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C0
|
||
DAD D
|
||
POP B
|
||
LDAX B
|
||
SUB M
|
||
SUI 001H
|
||
SBB A
|
||
POP B
|
||
MOV C,B
|
||
ANA C
|
||
RAR
|
||
JNC A107F
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
INR A
|
||
MOV M,A
|
||
JMP A103C
|
||
;
|
||
A107F:
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
CPI 008H
|
||
JZ A1092
|
||
LXI H,T0006
|
||
DAD SP
|
||
MVI M,0FFH
|
||
JMP A110A
|
||
;
|
||
A1092:
|
||
LXI B,T0003
|
||
LHLD Y19C0
|
||
DAD B
|
||
MOV A,M
|
||
INR A
|
||
LHLD Y19C0
|
||
DAD B
|
||
MOV M,A
|
||
LXI H,D0001
|
||
SHLD Y19CB
|
||
LXI H,019CDH
|
||
MVI M,000H
|
||
A10AB:
|
||
LXI B,T0004
|
||
LHLD Y19C0
|
||
DAD B
|
||
LXI D,019CBH
|
||
CALL A1652
|
||
MVI A,000H
|
||
CALL A169D
|
||
ORA L
|
||
JZ A10D6
|
||
LHLD Y19CB
|
||
XCHG
|
||
LHLD Y19CB
|
||
DAD D
|
||
SHLD Y19CB
|
||
LDA Y19CD
|
||
INR A
|
||
STA Y19CD
|
||
JMP A10AB
|
||
;
|
||
A10D6:
|
||
LXI B,T0004
|
||
LHLD Y19C0
|
||
DAD B
|
||
LXI D,019CBH
|
||
CALL A1692
|
||
LXI B,T0004
|
||
PUSH H
|
||
LHLD Y19C0
|
||
DAD B
|
||
POP B
|
||
MOV M,C
|
||
INX H
|
||
MOV M,B
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
XCHG
|
||
INX H
|
||
PUSH B
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,T0006
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C0
|
||
DAD D
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
A110A:
|
||
EI
|
||
A110B:
|
||
JMP CMLPEN
|
||
;
|
||
A110E:
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LDAX B
|
||
MOV C,A
|
||
CALL CHKSID
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
CPI 0FFH
|
||
JZ A1186
|
||
DI
|
||
LXI B,T0004
|
||
LHLD Y19C0
|
||
DAD B
|
||
PUSH H
|
||
LXI H,T0003
|
||
DAD SP
|
||
MOV C,M
|
||
MVI B,000H
|
||
LXI H,IXBTMS
|
||
DAD B
|
||
DAD B
|
||
POP D
|
||
CALL A1652
|
||
LXI B,T0004
|
||
PUSH H
|
||
LHLD Y19C0
|
||
DAD B
|
||
POP B
|
||
MOV M,C
|
||
INX H
|
||
MOV M,B
|
||
LXI B,T0003
|
||
LHLD Y19C0
|
||
DAD B
|
||
MOV A,M
|
||
DCR A
|
||
LHLD Y19C0
|
||
DAD B
|
||
MOV M,A
|
||
EI
|
||
LXI D,UQMLBX
|
||
MVI C,089H
|
||
CALL BDOS
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV L,M
|
||
MVI H,000H
|
||
LXI D,T0005
|
||
CALL A167C
|
||
LXI B,T0005
|
||
DAD B
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MVI M,000H
|
||
LXI D,UQMLBX
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
A1186:
|
||
JMP CMLPEN
|
||
;
|
||
A1189:
|
||
LXI D,UQMLBX
|
||
MVI C,089H
|
||
CALL BDOS
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LHLD Y19C0
|
||
INX H
|
||
POP B
|
||
LDAX B
|
||
CMP M
|
||
JNZ A11AE
|
||
LXI H,019CAH
|
||
MVI M,0FFH
|
||
JMP A11CA
|
||
;
|
||
A11AE:
|
||
LXI D,T0005
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MOV C,M
|
||
CALL CHKSID
|
||
STA Y19CA
|
||
CPI 0FFH
|
||
JNZ A11CA
|
||
LXI H,T0006
|
||
DAD SP
|
||
MVI M,0FFH
|
||
A11CA:
|
||
LXI H,T0006
|
||
DAD SP
|
||
MOV A,M
|
||
CPI 0FFH
|
||
JZ A12F4
|
||
LDA Y19CA
|
||
INR A
|
||
STA Y19CA
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
PUSH H
|
||
LHLD Y19C4
|
||
POP D
|
||
LDAX D
|
||
CMP M
|
||
JNZ A1202
|
||
LXI H,T0006
|
||
DAD SP
|
||
MVI M,0FFH
|
||
JMP A12F4
|
||
;
|
||
A1202:
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MOV A,M
|
||
INR A
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
PUSH PSW
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0003
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
LXI D,T0005
|
||
PUSH H
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
PUSH H
|
||
LHLD Y19C4
|
||
INX H
|
||
MOV E,M
|
||
MVI D,000H
|
||
POP H
|
||
MOV L,M
|
||
MVI H,000H
|
||
CALL A167C
|
||
POP D
|
||
CALL A1648
|
||
SHLD Y19C8
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LHLD Y19C8
|
||
INX H
|
||
LDAX B
|
||
MOV M,A
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LHLD Y19C8
|
||
POP B
|
||
LDAX B
|
||
MOV M,A
|
||
LHLD Y19C4
|
||
INX H
|
||
MOV A,M
|
||
DCR A
|
||
DCR A
|
||
MOV H,B
|
||
MOV L,C
|
||
CMP M
|
||
JNC A12A3
|
||
LHLD Y19C4
|
||
INX H
|
||
MOV A,M
|
||
DCR A
|
||
DCR A
|
||
LHLD Y19C8
|
||
MOV M,A
|
||
A12A3:
|
||
LHLD Y19C8
|
||
MOV L,M
|
||
LXI D,T0006
|
||
PUSH H
|
||
LXI H,T0015
|
||
DAD SP
|
||
CALL A1647
|
||
PUSH H
|
||
LHLD Y19C8
|
||
INX H
|
||
INX H
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A12BB:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A12BB
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MOV A,M
|
||
INR A
|
||
LHLD Y19C4
|
||
MOV L,M
|
||
MVI H,000H
|
||
MOV E,A
|
||
MVI D,000H
|
||
CALL A165D
|
||
LXI D,T0005
|
||
PUSH H
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
POP B
|
||
MOV M,C
|
||
A12F4:
|
||
LXI D,UQMLBX
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
JMP CMLPEN
|
||
;
|
||
A12FF:
|
||
LXI D,UQMLBX
|
||
MVI C,089H
|
||
CALL BDOS
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LDAX B
|
||
MOV C,A
|
||
CALL CHKSID
|
||
INR A
|
||
STA Y19CA
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MOV A,M
|
||
CPI 000H
|
||
JNZ A133C
|
||
LXI H,T0006
|
||
DAD SP
|
||
MVI M,0FFH
|
||
JMP A1409
|
||
;
|
||
A133C:
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MOV A,M
|
||
DCR A
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
PUSH PSW
|
||
CALL A167C
|
||
LXI B,T0002
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
POP B
|
||
MOV C,B
|
||
MOV M,C
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,T0003
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
LXI D,T0005
|
||
PUSH H
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,D0001
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
PUSH H
|
||
LHLD Y19C4
|
||
INX H
|
||
MOV E,M
|
||
MVI D,000H
|
||
POP H
|
||
MOV L,M
|
||
MVI H,000H
|
||
CALL A167C
|
||
POP D
|
||
CALL A1648
|
||
SHLD Y19C8
|
||
LXI H,T0005
|
||
DAD SP
|
||
MVI M,000H
|
||
LHLD Y19C8
|
||
MOV A,M
|
||
INR A
|
||
INR A
|
||
MOV L,A
|
||
PUSH H
|
||
LHLD Y19C8
|
||
LXI D,T0004
|
||
PUSH H
|
||
LXI H,T0017
|
||
DAD SP
|
||
CALL A1647
|
||
XCHG
|
||
POP B
|
||
POP H
|
||
A13C8:
|
||
LDAX B
|
||
STAX D
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ A13C8
|
||
LXI D,T0005
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,D0001
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
MOV A,M
|
||
INR A
|
||
LHLD Y19C4
|
||
MOV L,M
|
||
MVI H,000H
|
||
MOV E,A
|
||
MVI D,000H
|
||
CALL A165D
|
||
LXI D,T0005
|
||
PUSH H
|
||
LHLD Y19CA
|
||
MVI H,000H
|
||
CALL A167C
|
||
LXI B,D0001
|
||
DAD B
|
||
XCHG
|
||
LHLD Y19C6
|
||
DAD D
|
||
POP B
|
||
MOV M,C
|
||
A1409:
|
||
LXI D,UQMLBX
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
JMP CMLPEN
|
||
;
|
||
A1414:
|
||
JMP CMLPEN
|
||
;
|
||
A1417:
|
||
JMP CMLPEN
|
||
;
|
||
A141A:
|
||
JMP CMLPEN
|
||
;
|
||
A141D:
|
||
JMP CMLPEN
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
;
|
||
; MAIN INDEX OF FUNCTION ROUTINES
|
||
;
|
||
IXMAIN:
|
||
DW A042C
|
||
DW A042F
|
||
DW A044E
|
||
DW A0475
|
||
DW A069D
|
||
DW A06BC
|
||
DW A071B
|
||
DW A0834
|
||
DW A0890
|
||
DW A09DA
|
||
DW A09FA
|
||
DW A0AE7
|
||
DW A0BD4
|
||
DW A0CB4
|
||
DW A0D9F
|
||
DW A0E6F
|
||
DW A0F3F
|
||
DW A100F
|
||
DW A110E
|
||
DW A1189
|
||
DW A12FF
|
||
DW A1414
|
||
DW A1417
|
||
DW A141A
|
||
DW A141D
|
||
;
|
||
; END PROCESS
|
||
;
|
||
;
|
||
CMLPEN:
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
LDAX B
|
||
INR A
|
||
DCX H
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
MOV H,B
|
||
MOV L,C
|
||
MOV M,A
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
LDAX B
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV M,A
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
DCX H
|
||
PUSH B
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
MOV H,B
|
||
MOV L,C
|
||
POP D
|
||
LDAX D
|
||
MOV M,A
|
||
LXI H,T0013
|
||
DAD SP
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
LXI H,D0001
|
||
DAD SP
|
||
MOV A,M
|
||
MOV H,B
|
||
MOV L,C
|
||
MOV M,A
|
||
LXI H,T0005
|
||
DAD SP
|
||
MOV A,M
|
||
RAR
|
||
JNC CMLPES
|
||
LXI D,T0004
|
||
LXI H,T0013
|
||
DAD SP
|
||
CALL A1647
|
||
MVI M,000H
|
||
LXI B,T0005
|
||
DCX D
|
||
CALL A163B
|
||
PUSH H
|
||
LXI H,T0008
|
||
DAD SP
|
||
MOV A,M
|
||
POP H
|
||
MOV M,A
|
||
CMLPES:
|
||
LXI H,T02A3
|
||
DAD SP
|
||
XCHG
|
||
MVI C,08BH
|
||
CALL BDOS
|
||
JMP CMLOOP
|
||
;
|
||
CMLPRT:
|
||
LXI H,T02AF
|
||
DAD SP
|
||
SPHL
|
||
RET
|
||
;
|
||
; INITIALIZER ROUTINE
|
||
; START UP EACH CHANEL PROCESS
|
||
;
|
||
INSTAT:
|
||
LXI D,UQSPOL
|
||
MVI C,COPENQ
|
||
CALL BDOS ;OPEN SPOOL
|
||
CPI 0
|
||
JZ INSTSP ;GET QUEUE LINK
|
||
LXI D,1
|
||
MVI C,CDELAY
|
||
CALL BDOS ;WAIT FOR PRIORITY RESOLUTION
|
||
LXI D,UQSPOL
|
||
MVI C,COPENQ
|
||
CALL BDOS ;TRY AGAIN
|
||
CMA
|
||
STA Y19C2 ;SET SPOOLER MODE
|
||
CMA
|
||
RAR
|
||
JNC $+11 ;OK OPENED
|
||
LXI D,UQMXLT ;NO SPOOLER SO GET LIST QUEUE
|
||
MVI C,COPEN
|
||
CALL BDOS
|
||
JMP INSTSL
|
||
;
|
||
INSTSP:
|
||
LXI B,-1
|
||
LXI H,Y19C2
|
||
MOV M,C ;SET SPOOL MODE ON
|
||
INSTSL:
|
||
LXI D,0
|
||
MVI C,CSYSDT
|
||
CALL BDOS ;GET SYSTEM DATA AREA
|
||
LXI D,9
|
||
DAD D
|
||
SHLD Y1A4E ;SAVE CONFIGRATION TABLE POINTER
|
||
INSTWN: ;WAIT FOR NETWORKIF INITIALIZATION
|
||
LHLD Y1A4E
|
||
MVI A,0
|
||
CALL A16B4 ;CHECK EMPTY
|
||
ORA L
|
||
JNZ INSTWS ;GET DATA
|
||
LXI D,1
|
||
MVI C,CDELAY
|
||
CALL BDOS ;WAIT FOR INITIALIZATION
|
||
JMP INSTWN ;TRY AGAIN
|
||
;
|
||
INSTWS:
|
||
LXI D,UQMLBX
|
||
MVI C,COPENQ
|
||
CALL BDOS ;OPEN MAIL BOX QUEUE
|
||
SUI 0
|
||
SUI 1
|
||
SBB A
|
||
STA Y19C3 ;SAVE MAIL BOX MODE
|
||
RAR
|
||
JNC INSTML ;NO QUEUE
|
||
LXI D,UQMLBX
|
||
MVI C,CREADQ
|
||
CALL BDOS ;READ DATA
|
||
LXI D,UQMLBX
|
||
MVI C,CWRITQ
|
||
CALL BDOS ;WRITE DATA
|
||
LHLD Y19C4 ;MAIL BOX DATA
|
||
INX H
|
||
INX H
|
||
SHLD Y19C6 ;SAVE MAIL BOX BUFFER POINT
|
||
INSTML:
|
||
LHLD Y1A4E
|
||
MOV E,M
|
||
INX H
|
||
MOV D,M ;GET CONFIGRATION TABLE POINT
|
||
XCHG
|
||
SHLD Y19C0 ;SAVE CONFIGRATION TABLE POINT
|
||
LHLD Y1A4E
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
INX B
|
||
INX B
|
||
MOV H,B
|
||
MOV L,C
|
||
SHLD Y1A4E ;TO SLAVE SUPPORT COUNTER POINT
|
||
LHLD Y1A4E
|
||
MOV L,M
|
||
MOV A,L
|
||
STA Y1A53 ;SAVE MAX SUPPORT COUNT
|
||
LXI D,28 ;LENGTH OF CONFIGRATION TABLE-2
|
||
LHLD Y1A4E
|
||
DAD D
|
||
SHLD Y1A4E ;SAVE SLAVE 1 DATA BUFFER POINT
|
||
LXI H,Y1A52
|
||
MVI M,0 ;CLEAR COUNT
|
||
INSTPR: ;SLAVE SUPORT SYSTEM SET UP LOOP
|
||
LDA Y1A52
|
||
INR A ;COUNT UP
|
||
STA Y1A52
|
||
LXI H,Y1A53
|
||
CMP M
|
||
JZ INSTPE ;ALL OVER
|
||
MVI L,52 ;COPY DATA LENGTH
|
||
PUSH H
|
||
LHLD Y1A4E ;GET CURRENT BUFFER TOP
|
||
XCHG
|
||
LXI B,PDSLSP ;BASE PROCESS DESCRIPTOR
|
||
POP H
|
||
LDAX B
|
||
STAX D ;COPY DATA
|
||
INX B
|
||
INX D
|
||
DCR L
|
||
JNZ $-5
|
||
LHLD Y1A4E
|
||
MVI A,0
|
||
MOV M,A
|
||
INX H
|
||
MVI M,0 ;CLEAR LINK
|
||
LDA Y1A52
|
||
CPI 10
|
||
JNC INSTPS ;OVER A
|
||
LDA Y1A52 ;0 TO 9
|
||
ADI '0'
|
||
LXI B,11 ;BIAS TO NAME
|
||
LHLD Y1A4E
|
||
DAD B
|
||
MOV M,A ;SET NUMBER
|
||
JMP INSTPN
|
||
;
|
||
INSTPS: ;OVER A
|
||
LDA Y1A52
|
||
ADI 'A'
|
||
SUI 10
|
||
LXI B,11
|
||
LHLD Y1A4E
|
||
DAD B
|
||
MOV M,A ;SET NUMBER
|
||
INSTPN:
|
||
LXI D,52 ;PROCESS DESCRIPTOR LENGTH
|
||
LHLD Y1A4E
|
||
DAD D
|
||
LXI D,768 ;STACK LENGTH
|
||
DAD D
|
||
DCX H
|
||
DCX H
|
||
SHLD Y1A50 ;SAVE ENTRY STACK
|
||
LXI B,4
|
||
PUSH H
|
||
LHLD Y1A4E
|
||
DAD B
|
||
POP B
|
||
MOV M,C
|
||
INX H
|
||
MOV M,B ;SET ENTRY STACK
|
||
LHLD Y1A50
|
||
LXI B,CSTART ;COMMON ROUTINE ENTRY POINT
|
||
MOV M,C
|
||
INX H
|
||
MOV M,B ;SET ENTRY POINT
|
||
LXI B,46
|
||
LHLD Y1A4E
|
||
DAD B ;GET C REG DATA POINT
|
||
LDA Y1A52
|
||
MOV M,A ;SET CHANEL NUMBER
|
||
LHLD Y1A4E
|
||
XCHG
|
||
MVI C,CCREAT
|
||
CALL BDOS ;CREATE PROCESS
|
||
LXI D,52 ;PROCESS DESCRIPTOR LENGTH
|
||
LHLD Y1A4E
|
||
DAD D
|
||
LXI D,768 ;STACK LENGTH
|
||
DAD D
|
||
SHLD Y1A4E ;SET NEXT DATA POINT
|
||
JMP INSTPR ;TO NEXT CHANEL
|
||
;
|
||
INSTPE:
|
||
LXI H,Y19C0 ;STACK TO COMMON ROUTINE ENTRY STACK
|
||
SPHL
|
||
MVI C,0 ;CHANEL ZERO PROCESS
|
||
CALL CSTART ;TO COMMON ROUTINE
|
||
RET
|
||
;
|
||
; TO BDOS
|
||
;
|
||
;
|
||
BDOS:
|
||
LHLD BDOSAD
|
||
PCHL
|
||
;
|
||
A162D:
|
||
LHLD D0001
|
||
INX H
|
||
INX H
|
||
MOV H,M
|
||
MOV L,D
|
||
MOV D,E
|
||
PCHL
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
MOV L,C
|
||
MOV H,B
|
||
A1638:
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
A163B:
|
||
LDAX D
|
||
ADD C
|
||
MOV L,A
|
||
INX D
|
||
LDAX D
|
||
ADC B
|
||
MOV H,A
|
||
RET
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
XCHG
|
||
MOV E,A
|
||
MVI D,000H
|
||
A1647:
|
||
XCHG
|
||
A1648:
|
||
LDAX D
|
||
ADD L
|
||
MOV L,A
|
||
INX D
|
||
LDAX D
|
||
ADC H
|
||
MOV H,A
|
||
RET
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
MOV L,C
|
||
MOV H,B
|
||
A1652:
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
LDAX D
|
||
ANA C
|
||
MOV L,A
|
||
INX D
|
||
LDAX D
|
||
ANA B
|
||
MOV H,A
|
||
RET
|
||
;
|
||
A165D:
|
||
MOV B,H
|
||
MOV C,L
|
||
LXI H,A0000
|
||
MVI A,010H
|
||
A1664:
|
||
PUSH PSW
|
||
DAD H
|
||
XCHG
|
||
SUB A
|
||
DAD H
|
||
XCHG
|
||
ADC L
|
||
SUB C
|
||
MOV L,A
|
||
MOV A,H
|
||
SBB B
|
||
MOV H,A
|
||
INX D
|
||
JNC A1676
|
||
DAD B
|
||
DCX D
|
||
A1676:
|
||
POP PSW
|
||
DCR A
|
||
JNZ A1664
|
||
RET
|
||
;
|
||
A167C:
|
||
MOV B,H
|
||
MOV C,L
|
||
LXI H,A0000
|
||
MVI A,010H
|
||
A1683:
|
||
DAD H
|
||
XCHG
|
||
DAD H
|
||
XCHG
|
||
JNC A168B
|
||
DAD B
|
||
A168B:
|
||
DCR A
|
||
JNZ A1683
|
||
RET
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
MOV L,C
|
||
MOV H,B
|
||
A1692:
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
LDAX D
|
||
ORA C
|
||
MOV L,A
|
||
INX D
|
||
LDAX D
|
||
ORA B
|
||
MOV H,A
|
||
RET
|
||
;
|
||
A169D:
|
||
MOV E,A
|
||
MVI D,000H
|
||
MOV A,E
|
||
SUB L
|
||
MOV L,A
|
||
MOV A,D
|
||
SBB H
|
||
MOV H,A
|
||
RET
|
||
;
|
||
; >> NO EXECUTION PATH TO HERE <<
|
||
MOV L,C
|
||
MOV H,B
|
||
A16A9:
|
||
MOV C,M
|
||
INX H
|
||
MOV B,M
|
||
LDAX D
|
||
SUB C
|
||
MOV L,A
|
||
INX D
|
||
LDAX D
|
||
SBB B
|
||
MOV H,A
|
||
RET
|
||
;
|
||
A16B4:
|
||
MOV E,A
|
||
MVI D,000H
|
||
MOV A,E
|
||
SUB M
|
||
MOV E,A
|
||
MOV A,D
|
||
INX H
|
||
SBB M
|
||
MOV D,A
|
||
XCHG
|
||
RET
|
||
;
|
||
; MAIN PROCESS (SLV0SP) STACK
|
||
;
|
||
MAINST:
|
||
DW 0C7C7H,0C7C7H,0C7C7H,0C7C7H
|
||
DW 0C7C7H,0C7C7H,0C7C7H,0C7C7H
|
||
DW 0C7C7H,0C7C7H,0C7C7H,0C7C7H
|
||
DW 0C7C7H,0C7C7H,0C7C7H,0C7C7H
|
||
DW 0C7C7H,0C7C7H,0C7C7H
|
||
A16E6:
|
||
DW INSTAT
|
||
;
|
||
DS 728 ;STACK & WORK FOR SLV0SP
|
||
;
|
||
; WORKING
|
||
;
|
||
Y19C0: DS 2 ;CONFIGRATION TABLE POINTER
|
||
Y19C2: DS 1 ;SPOOL MODE 0 NO
|
||
Y19C3: DS 1 ;MAIL MODE -1 ON
|
||
Y19C4: DS 2
|
||
Y19C6: DS 2 ;MAIL BOX BUFFER POINTER
|
||
;
|
||
Y19C8: DS 2
|
||
Y19CA: DS 1
|
||
Y19CB: DS 2
|
||
Y19CD: DS 1
|
||
;
|
||
DS 128
|
||
;
|
||
;
|
||
Y1A4E: DS 2 ;INITIALIZE WORK DATA BUFFER
|
||
Y1A50: DS 2 ;WORK FOR STACK POINTER
|
||
Y1A52: DS 1 ;SLAVE PROCESS SET UP COUNTER
|
||
Y1A53: DS 1 ;MAXIMUM SUPORT COUNT
|
||
;
|
||
;
|
||
;
|
||
END
|
||
END
|
||
|