	COMMON /errno_/
.2:
	DS 2
	CSEG
	COMMON /Sysvec_/
.3:
	DS 8
	CSEG
	COMMON /Cbuffs_/
.4:
	DS 121
	CSEG
	COMMON /Stdbufs_/
.5:
	DS 2
	CSEG
	COMMON /condev_/
.6:
	DS 6
	CSEG
	COMMON /bdosout_/
.7:
	DS 6
	CSEG
	COMMON /bdosin_/
.8:
	DS 6
	CSEG
	COMMON /filedev_/
.9:
	DS 6
	CSEG
	COMMON /devtabl_/
.10:
	DS 66
	CSEG
	COMMON /chantab_/
.11:
	DS 88
	CSEG
	COMMON /errno_/
	DS 2
	CSEG
	COMMON /dpb_type_/
.12:
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 3
	DB 7
	DB 0
	DW 255
	DW 63
	DB 192
	DB 0
	DW 16
	DW 0
	DB 16
	DW 0
	DB 1
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 4
	DB 15
	DB 0
	DW 255
	DW 127
	DB 192
	DB 0
	DW 32
	DW 0
	DB 32
	DW 0
	DB 1
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 4
	DB 15
	DB 0
	DW 511
	DW 255
	DB 240
	DB 0
	DW 64
	DW 0
	DB 64
	DW 0
	DB 1
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 4
	DB 15
	DB 0
	DW 1023
	DW 511
	DB 255
	DB 0
	DW 128
	DW 0
	DB 0
	DW 1
	DB 1
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 4
	DB 15
	DB 0
	DW 2047
	DW 1023
	DB 255
	DB 255
	DW 256
	DW 0
	DB 0
	DW 2
	DB 2
	DB 0
	DW 256
	DW 256
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 96
	DB 0
	DW 128
	DB 5
	DB 31
	DB 1
	DW 2047
	DW 1023
	DB 255
	DB 0
	DW 256
	DW 0
	DB 0
	DW 2
	DB 2
	CSEG
	COMMON /dpb_flop_/
.13:
	DB 0
	DW 256
	DW 256
	DB 68
	DB 48
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 32
	DB 0
	DW 52
	DB 4
	DB 15
	DB 0
	DW 242
	DW 127
	DB 192
	DB 0
	DW 32
	DW 2
	DB 32
	DW 0
	DB 1
	DB 0
	DW 256
	DW 256
	DB 83
	DB 48
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 0
	DB 0
	DW 26
	DB 3
	DB 7
	DB 0
	DW 242
	DW 63
	DB 192
	DB 0
	DW 16
	DW 2
	DB 16
	DW 0
	DB 1
	DB 0
	DW 256
	DW 256
	DB 77
	DB 48
	DB 32
	DB 32
	DB 32
	DB 32
	DB 32
	DB 0
	DB 0
	DB 160
	DB 0
	DW 32
	DB 5
	DB 31
	DB 0
	DW 156
	DW 127
	DB 128
	DB 0
	DW 32
	DW 3
	DB 0
	DW 1
	DB 1
	CSEG
	COMMON /curOS_/
.14:
	DB 0
	CSEG
	COMMON /localhd_/
.15:
	DS 2
	CSEG
	COMMON /floppy_/
.16:
	DS 2
	CSEG
	COMMON /floptype_/
.17:
	DS 2
	CSEG
	COMMON /donak_/
.18:
	DW 0
	CSEG
	COMMON /sendfail_/
.19:
	DW 0
	CSEG
	COMMON /fastuser_/
.20:
	DS 0
	CSEG
	COMMON /netcode_/
.21:
	DS 0
	CSEG
	COMMON /reclen_/
.22:
	DS 0
	CSEG
	COMMON /recmsg_/
.23:
	DS 0
	CSEG
	COMMON /biosptr_/
.24:
	DW 1
	CSEG
	COMMON /netmsg_/
.25:
	DS 2
	CSEG
	COMMON /CCPdisk_/
.26:
	DW 4
	CSEG
	COMMON /CCPdisks_/
.27:
	DS 1
	CSEG
	COMMON /dph_/
.28:
	DS 2
	CSEG
	COMMON /dmsdpb_/
.29:
	DS 2
	CSEG
	COMMON /dmsdpbt_/
.30:
	DS 2
	CSEG
	COMMON /dmsdpbs_/
.31:
	DS 2
	CSEG
	COMMON /savedpb_/
.32:
	DS 35
	CSEG
	COMMON /curdisk_/
.33:
	DS 2
	CSEG
	PUBLIC getbits_
getbits_:	CALL .zsav##
	DW .34
	LXI H,-1
	XCHG
	LXI H,16-.34
	DAD SP
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	CALL .ls##
	CALL .cm##
	PUSH H
	LXI H,16-.34
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	XCHG
	LXI H,18-.34
	DAD SP
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	CALL .sb##
	PUSH H
	LXI H,16-.34
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	POP H
	CALL .ur##
	POP D
	CALL .an##
	RET
.34 EQU 0
	PUBLIC MSAssign_
MSAssign_:	CALL .zsav##
	DW .35
	LXI H,1
	MOV A,L
	STA .14
	RET
.35 EQU 0
	PUBLIC CPAssign_
CPAssign_:	CALL .zsav##
	DW .36
	LXI H,0
	MOV A,L
	STA .14
	RET
.36 EQU 0
	PUBLIC PWAssign_
PWAssign_:	CALL .zsav##
	DW .37
	DSEG
.38:
	DB 0
	DB 255
	DB 0
	DB 0
	DB 255
	DB 0
	CSEG
	DSEG
.39:
	DB 1
	DB 67
	DB 0
	DB 0
	DB 224
	DB 0
	CSEG
	LXI H,0
	SHLD .16
	FUNC	userno_
	CALL userno_
	LXI D,255
	CALL .eq##
	JZ .40
	LXI H,1
	SHLD .15
	JMP .41
.40:
	LXI H,0
	SHLD .15
.41:
	LXI H,3
	XCHG
	LXI H,2-.37
	DAD SP
	MOV M,E
	INX H
	MOV M,D
	LXI H,32
	PUSH H
	LXI H,6
	PUSH H
	LXI H,-2-.37
	DAD SP
	PUSH H
	FUNC	clear_
	CALL clear_
	POP D
	POP D
	POP D
.42:
	LXI H,2-.37
	DAD SP
	PUSH H
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	DCX H
	XCHG
	POP H
	MOV M,E
	INX H
	MOV M,D
	XCHG
	INX H
	MOV A,H
	ORA L
	JZ .43
	LXI H,-25-.37
	DAD SP
	PUSH H
	LXI H,-4-.37
	DAD SP
	PUSH H
	LXI H,18-.37
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,18-.37
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	FUNC	MakAssig_
	CALL MakAssig_
	XCHG
	LXI H,8
	DAD SP
	SPHL
	LXI H,0-.37
	DAD SP
	MOV M,E
	INX H
	MOV M,D
	LXI H,0-.37
	DAD SP
	mov a,m
	inx h
	ora m
	JZ .45
	LXI H,0-.37
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,2
	CALL .gt##
	JZ .44
.45:
	LXI H,0-.37
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	RET
.44:
	LXI H,6
	PUSH H
	LXI H,-4-.37
	DAD SP
	PUSH H
	FUNC	PWInput_
	CALL PWInput_
	POP D
	POP D
	JNZ .46
	LXI H,1
	RET
.46:
	JMP .42
.43:
	LXI H,-25-.37
	DAD SP
	PUSH H
	LXI H,-4-.37
	DAD SP
	PUSH H
	LXI H,18-.37
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,18-.37
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	FUNC	MakAssig_
	CALL MakAssig_
	XCHG
	LXI H,8
	DAD SP
	SPHL
	XCHG
	RET
.37 EQU -31
	PUBLIC PWInput_
PWInput_:	CALL .zsav##
	DW .47
	LXI H,.1+0
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
.48:
	LXI H,32
	PUSH H
	LXI H,16-.47
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.47
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	clear_
	CALL clear_
	POP D
	POP D
	POP D
	LXI H,12-.47
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,2-.47
	DAD SP
	MOV M,E
	INX H
	MOV M,D
	LXI H,14-.47
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,-1-.47
	DAD SP
	MOV M,E
	INX H
	MOV M,D
.49:
	LXI H,-1-.47
	DAD SP
	mov a,m
	inx h
	ora m
	JZ .50
.51:
	LXI H,255
	PUSH H
	LXI H,6
	PUSH H
	FUNC	bdos_
	CALL bdos_
	POP D
	POP D
	LXI D,255
	CALL .an##
	XCHG
	LXI H,1-.47
	DAD SP
	MOV M,E
	MOV A,D
	ORA E
	JNZ .52
	JMP .51
.52:
	LXI H,1-.47
	DAD SP
	MOV E,M
	MVI D,0
	XCHG
	JMP .53
.55:
.56:
	LXI H,.1+17
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
	LXI H,1
	RET
.57:
	JMP .48
.58:
	LXI H,.1+19
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
	LXI H,0
	RET
.59:
.60:
	LXI H,2-.47
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,12-.47
	DAD SP
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	CALL .ne##
	JZ .61
	LXI H,32
	PUSH H
	LXI H,4-.47
	DAD SP
	PUSH H
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	DCX H
	XCHG
	POP H
	MOV M,E
	INX H
	MOV M,D
	XCHG
	POP D
	MOV M,E
	LXI H,-1-.47
	DAD SP
	PUSH H
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	INX H
	XCHG
	POP H
	MOV M,E
	INX H
	MOV M,D
	XCHG
	DCX H
.61:
	JMP .54
.62:
	LXI H,1-.47
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	LXI H,4-.47
	DAD SP
	PUSH H
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	INX H
	XCHG
	POP H
	MOV M,E
	INX H
	MOV M,D
	XCHG
	DCX H
	POP D
	MOV M,E
	LXI H,-1-.47
	DAD SP
	PUSH H
	MOV A,M
	INX H
	MOV H,M
	MOV L,A
	DCX H
	XCHG
	POP H
	MOV M,E
	INX H
	MOV M,D
	XCHG
	INX H
	JMP .54
.53:
	CALL .swt##
	DW 6
	DW 13,.55
	DW 10,.56
	DW 24,.57
	DW 3,.58
	DW 127,.59
	DW 8,.60
	DW .62
.54:
	JMP .49
.50:
.63:
.65:
	LXI H,255
	PUSH H
	LXI H,6
	PUSH H
	FUNC	bdos_
	CALL bdos_
	POP D
	POP D
	LXI D,255
	CALL .an##
	XCHG
	LXI H,-2-.47
	DAD SP
	MOV M,E
	MOV A,D
	ORA E
	JNZ .66
	JMP .65
.66:
	LXI H,-2-.47
	DAD SP
	MOV E,M
	MVI D,0
	LXI H,13
	CALL .eq##
	JNZ .68
	LXI H,-2-.47
	DAD SP
	MOV E,M
	MVI D,0
	LXI H,10
	CALL .eq##
	JZ .67
.68:
	LXI H,.1+22
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
	LXI H,1
	RET
.67:
	LXI H,-2-.47
	DAD SP
	MOV E,M
	MVI D,0
	LXI H,24
	CALL .eq##
	JNZ .48
	JMP .63
.64:
	RET
.47 EQU -6
.1:
	DB 69,110,116,101,114,32,80,97,115,115,119,111,114,100,58
	DB 32,0,10,0,94,67,0,10,0
	PUBLIC P0Assign_
P0Assign_:	CALL .zsav##
	DW .70
	LHLD .29
	SHLD .30
	LXI H,12-.70
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	FUNC	getdph_
	CALL getdph_
	POP D
	JNZ .71
	LXI H,1
	RET
.71:
	LHLD .29
	SHLD .31
	LXI H,31
	PUSH H
	LHLD .29
	PUSH H
	LXI H,.32
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,31
	PUSH H
	LXI H,.12
	PUSH H
	LHLD .29
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,0
	PUSH H
	LHLD .29
	LXI D,15
	DAD D
	POP D
	MOV M,E
	LXI H,0
	PUSH H
	LHLD .29
	POP D
	MOV M,E
	LXI H,14-.70
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	LHLD .29
	LXI D,13
	DAD D
	POP D
	MOV M,E
	LHLD .29
	RET
.70 EQU 0
	PUBLIC P0Unassi_
P0Unassi_:	CALL .zsav##
	DW .72
	LXI H,31
	PUSH H
	LXI H,.32
	PUSH H
	LHLD .31
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LHLD .30
	SHLD .29
	RET
.72 EQU 0
	PUBLIC userno_
userno_:	CALL .zsav##
	DW .73
	LDA 71
	MOV L,A
	MVI H,0
	RET
.73 EQU 0
	PUBLIC MakAssig_
MakAssig_:	CALL .zsav##
	DW .74
	LXI H,8
	PUSH H
	LXI H,16-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,22-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,6
	PUSH H
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,22-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,9
	DAD D
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,12-.74
	DAD SP
	MOV E,M
	MVI D,0
	PUSH D
	FUNC	getdph_
	CALL getdph_
	POP D
	JNZ .75
	LXI H,1
	RET
.75:
	LXI H,14-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	MOV E,M
	MVI D,0
	MOV A,D
	ORA E
	JNZ .76
	LXI H,255
	PUSH H
	LHLD .29
	LXI D,14
	DAD D
	POP D
	MOV M,E
	LXI H,255
	PUSH H
	LHLD .29
	LXI D,15
	DAD D
	POP D
	MOV M,E
	LXI H,0
	RET
.76:
	LXI H,23
	PUSH H
	LXI H,20-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	POP D
	MOV M,E
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,15
	DAD D
	MOV B,H
	MOV C,L
	FUNC	nakpoll_
	CALL nakpoll_
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,15
	PUSH H
	LXI H,0
	PUSH H
	FUNC	sendnet_
	CALL sendnet_
	POP D
	POP D
	POP D
	PUSH B
	LXI H,4
	PUSH H
	FUNC	recnet_
	CALL recnet_
	POP D
	POP D
	JZ .77
	FUNC	ackpoll_
	CALL ackpoll_
	LXI H,1
	RET
.77:
	FUNC	ackpoll_
	CALL ackpoll_
	LDA .14
	MOV L,A
	MVI H,0
	PUSH H
	LXI H,3
	PUSH H
	LXI H,2
	PUSH H
	LXI H,24-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,17
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	FUNC	getbits_
	CALL getbits_
	POP D
	POP D
	POP D
	POP D
	CALL .ne##
	JZ .78
	LXI H,1
	RET
.78:
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,16
	DAD D
	MOV E,M
	MVI D,0
	LXI H,255
	CALL .eq##
	JZ .79
	LXI H,1
	RET
.79:
	LXI H,5
	PUSH H
	LXI H,.69+0
	PUSH H
	LHLD 6
	LXI D,15
	DAD D
	PUSH H
	FUNC	strncmp_
	CALL strncmp_
	POP D
	POP D
	POP D
	JNZ .80
	LXI H,35
	JMP .81
.80:
	LXI H,31
.81:
	PUSH H
	LXI H,20-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,15
	DAD D
	MOV E,M
	MVI D,0
	XCHG
	DCX H
	LXI D,35
	CALL .ml##
	LXI D,.12
	DAD D
	PUSH H
	LHLD .29
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,8
	PUSH H
	LXI H,20-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	PUSH H
	LHLD .29
	LXI D,5
	DAD D
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,16
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LHLD .29
	LXI D,15
	DAD D
	POP D
	MOV M,E
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,17
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LHLD .29
	POP D
	MOV M,E
	LXI H,18-.74
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,18
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LHLD .29
	LXI D,13
	DAD D
	POP D
	MOV M,E
	LXI H,0
	RET
.74 EQU 0
.69:
	DB 72,73,68,79,83,0
	PUBLIC writemod_
writemod_:	CALL .zsav##
	DW .83
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,16-.83
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	PUSH H
	LXI H,18-.83
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,7
	DAD D
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,49
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,14
	DAD SP
	SPHL
	LXI H,12-.83
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,7
	DAD D
	MOV E,M
	MVI D,0
	LXI H,77
	CALL .eq##
	JZ .84
	LXI H,0
	RET
.84:
	LXI H,1
	RET
.83 EQU 0
	PUBLIC getdph_
getdph_:	CALL .zsav##
	DW .85
	LHLD .26
	MOV E,M
	MVI D,0
	XCHG
	MOV A,L
	STA .27
	LXI H,12-.85
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	seldisk_
	CALL seldisk_
	POP D
	SHLD .28
	LHLD .28
	MOV A,H
	ORA L
	JNZ .86
	LDA .27
	MOV L,A
	MVI H,0
	PUSH H
	FUNC	seldisk_
	CALL seldisk_
	POP D
	JNZ .87
	LXI H,.82+0
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
.87:
	LDA .27
	MOV L,A
	MVI H,0
	PUSH H
	LHLD .26
	POP D
	MOV M,E
	LXI H,0
	RET
.86:
	LHLD .28
	LXI D,10
	DAD D
	MOV E,M
	INX H
	MOV D,M
	LXI H,-16
	DAD D
	SHLD .29
	LHLD .28
	RET
.85 EQU 0
.82:
	DB 42,42,42,69,114,114,111,114,58,32,100,101,102,97,117
	DB 108,116,32,100,114,105,118,101,32,114,101,115,101,108,101
	DB 99,116,105,111,110,32,102,97,105,108,117,114,101,10,0
	PUBLIC GetAssig_
GetAssig_:	CALL .zsav##
	DW .89
	LXI H,12-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	getdph_
	CALL getdph_
	POP D
	JNZ .90
	LXI H,1
	RET
.90:
	LXI H,12-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	POP D
	MOV M,E
	LXI H,8
	PUSH H
	LHLD .29
	LXI D,5
	DAD D
	PUSH H
	LXI H,18-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,127
	PUSH H
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	POP D
	PUSH H
	MOV L,M
	MVI H,0
	CALL .an##
	XCHG
	POP H
	MOV M,E
	LHLD .29
	LXI D,18
	DAD D
	MOV E,M
	MVI D,0
	XCHG
	DCX H
	DCX H
	DCX H
	PUSH H
	LHLD .29
	LXI D,21
	DAD D
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	POP D
	XCHG
	CALL .ls##
	PUSH H
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,9
	DAD D
	POP D
	MOV M,E
	INX H
	MOV M,D
	LHLD .29
	LXI D,15
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,12
	DAD D
	POP D
	MOV M,E
	LHLD .29
	MOV E,M
	MVI D,0
	PUSH D
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,13
	DAD D
	POP D
	MOV M,E
	LHLD .29
	LXI D,13
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,14
	DAD D
	POP D
	MOV M,E
	LHLD .29
	LXI D,14
	DAD D
	MOV E,M
	MVI D,0
	PUSH D
	LXI H,16-.89
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	LXI H,15
	DAD D
	POP D
	MOV M,E
	LXI H,0
	RET
.89 EQU 0
	PUBLIC nakpoll_
nakpoll_:	CALL .zsav##
	DW .91
	FUNC	userno_
	CALL userno_
	MOV A,L
	STA .20
	LDA .20
	MOV L,A
	MVI H,0
	MOV A,H
	ORA L
	JZ .93
	LHLD .15
	MOV A,H
	ORA L
	JZ .92
.93:
	RET
.92:
	LXI H,1
	SHLD .18
	FUNC	ackpoll_
	CALL ackpoll_
	RET
.91 EQU 0
	PUBLIC ackpoll_
ackpoll_:	CALL .zsav##
	DW .94
	LDA .20
	MOV L,A
	MVI H,0
	MOV A,H
	ORA L
	JZ .96
	LHLD .15
	MOV A,H
	ORA L
	JZ .95
.96:
	RET
.95:
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,40
	PUSH H
	FUNC	bioshl_
	CALL bioshl_
	POP D
	POP D
	POP D
	RET
.94 EQU 0
	PUBLIC sendnet_
sendnet_:	CALL .zsav##
	DW .97
	LDA .20
	MOV L,A
	MVI H,0
	MOV A,H
	ORA L
	JNZ .98
	LHLD .24
	MOV E,M
	INX H
	MOV D,M
	LXI H,106
	DAD D
	MOV E,M
	INX H
	MOV D,M
	XCHG
	SHLD .25
	LXI H,14-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	DCX H
	PUSH H
	LXI H,18-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	INX H
	PUSH H
	LHLD .25
	INX H
	INX H
	PUSH H
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	MOV E,M
	MVI D,0
	PUSH D
	LHLD .25
	INX H
	POP D
	MOV M,E
	JMP .99
.98:
	LHLD .18
	MOV A,H
	ORA L
	JZ .100
	LXI H,0
	SHLD .18
.101:
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	naksend_
	CALL naksend_
	POP D
	POP D
	POP D
	JNZ .102
	FUNC	ackpoll_
	CALL ackpoll_
	LDA .21
	MOV L,A
	MVI H,0
	PUSH H
	LXI H,.88+0
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
	POP D
	JMP .101
.102:
	JMP .103
.100:
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.97
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	sendagai_
	CALL sendagai_
	POP D
	POP D
	POP D
.103:
.99:
	RET
.97 EQU -4
.88:
	DB 42,119,97,105,116,105,110,103,32,37,120,42,10,0
	PUBLIC recnet_
recnet_:	CALL .zsav##
	DW .105
	LDA .20
	MOV L,A
	MVI H,0
	MOV A,H
	ORA L
	JNZ .106
.107:
	LHLD .25
	INX H
	mov a,m
	ora a
	JZ .108
	JMP .107
.108:
	LXI H,12-.105
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LHLD .25
	INX H
	INX H
	PUSH H
	LXI H,18-.105
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	FUNC	blockmv_
	CALL blockmv_
	POP D
	POP D
	POP D
	JMP .109
.106:
	LXI H,12-.105
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	SHLD .22
	LXI H,14-.105
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	XCHG
	SHLD .23
	FUNC	receive_
	CALL receive_
	JZ .110
	LDA .21
	MOV L,A
	MVI H,0
	PUSH H
	LXI H,.104+0
	PUSH H
	FUNC	printf_
	CALL printf_
	POP D
	POP D
	LXI H,1
	RET
.110:
.109:
	LXI H,0
	RET
.105 EQU -1
.104:
	DB 42,110,101,116,32,101,114,114,111,114,32,37,120,42,0
;
; Code time critical routines into assemble:
;
BASE equ 0
;
sendnet: jmp 0
recnet: jmp 0
nakpoll: jmp 0
 common /netcode_/
netcode: db 0
 common /fastuser/
recuser: db 0
 common /reclen_/
reclen: dw 0
 common /recmsg_/
recmsg: dw 0
;
; NAKSEND - codes the nakpoll and sendnet together - needed to ensure
; that the send will be done in time for the z816 case
;
 cseg
 public naksend_
naksend_:
 push b
 lhld BASE+1
 xchg
 lxi h,6ch
 dad d
 lxi d,sendnet
 lxi b,9
; ldir
 db 0edh
 db 0b0h
 call nakpoll
 sta netcode
; bit 0,a
 db 0cbh
 db 047h
 jnz .cont
; xra a ; force fail
 pop b
 ret
;
; SENDAGAI - assumes nakpoll in progress, alternat entrypoi is used
; above after nakpoll succeeds
;
 public sendagai
sendagai:
 push b
.cont:
 lxi h,4
 dad sp
 mov a,m
 inx h
 inx h
 mov c,m
 inx h
 mov b,m
 inx h
 mov e,m
 inx h
 mov d,m
 xchg
 call sendnet
 ori 1 ; force success
 pop b
 ret
;
; RECEIVE - receives message from network
;
 public receive_
receive_:
 push b
 lda recuser
; lbcd reclen
 db 0edh
 db 04bh
 dw reclen
; lhld recmsg ;assume recmsg set up (caller beware)
 call recnet
 sta netcode
 ani 0e1h
 cpi 080h
; zero is success here!
 pop b
 ret
	PUBLIC wboot_
wboot_:	CALL .zsav##
	DW .112
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,1
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.112 EQU 0
	PUBLIC seldisk_
seldisk_:	CALL .zsav##
	DW .113
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,16-.113
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,0
	PUSH H
	LXI H,9
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.113 EQU 0
	PUBLIC settrk_
settrk_:	CALL .zsav##
	DW .114
	LXI H,0
	PUSH H
	LXI H,14-.114
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,10
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.114 EQU 0
	PUBLIC setsect_
setsect_:	CALL .zsav##
	DW .115
	LXI H,0
	PUSH H
	LXI H,14-.115
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,11
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.115 EQU 0
	PUBLIC setdma_
setdma_:	CALL .zsav##
	DW .116
	LXI H,0
	PUSH H
	LXI H,14-.116
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,12
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.116 EQU 0
	PUBLIC biosread_
biosread_:	CALL .zsav##
	DW .117
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,13
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.117 EQU 0
	PUBLIC bioswrit_
bioswrit_:	CALL .zsav##
	DW .118
	LXI H,0
	PUSH H
	LXI H,14-.118
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,14
	PUSH H
	FUNC	bios_
	CALL bios_
	POP D
	POP D
	POP D
	RET
.118 EQU 0
	PUBLIC sectran_
sectran_:	CALL .zsav##
	DW .119
	LXI H,0
	PUSH H
	LXI H,16-.119
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,16-.119
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,0
	PUSH H
	LXI H,16
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.119 EQU 0
	PUBLIC netlock_
netlock_:	CALL .zsav##
	DW .120
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,32
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.120 EQU 0
	PUBLIC cpmmap_
cpmmap_:	CALL .zsav##
	DW .121
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,33
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.121 EQU 0
	PUBLIC netunloc_
netunloc_:	CALL .zsav##
	DW .122
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,34
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.122 EQU 0
	PUBLIC lclhdsta_
lclhdsta_:	CALL .zsav##
	DW .123
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,16-.123
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,0
	PUSH H
	LXI H,44
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.123 EQU 0
	PUBLIC hdrest_
hdrest_:	CALL .zsav##
	DW .124
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,16-.124
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,0
	PUSH H
	LXI H,48
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.124 EQU 0
	PUBLIC hdstat_
hdstat_:	CALL .zsav##
	DW .125
	LXI H,0
	PUSH H
	LXI H,0
	PUSH H
	LXI H,16-.125
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,0
	PUSH H
	LXI H,45
	PUSH H
	FUNC	dmsbiosh_
	CALL dmsbiosh_
	XCHG
	LXI H,10
	DAD SP
	SPHL
	XCHG
	RET
.125 EQU 0
	PUBLIC displays_
displays_:	CALL .zsav##
	DW .126
	LXI H,12-.126
	DAD SP
	MOV E,M
	INX H
	MOV D,M
	PUSH D
	LXI H,9
	PUSH H
	FUNC	bdos_
	CALL bdos_
	POP D
	POP D
	RET
.126 EQU 0
	COMMON /.lnprm/
	DS 4
	END
