BIN/TX ;	BIN/TXT		BIN/TOO
 ;		* * * * * * * * * * * * *
 ;		*  PROGRAM BY KIM WATT  *
 ;		* BREEZE COMPUTING INC. *
 ;		*     P.O. BOX  1013    *
 ;		* BERKLEY, MICH.  48072 *
 ;		*    (313)  288-9422    *
 ;		* * * * * * * * * * * * *
 ;
 ;
 	ORG	0F98EH
 BELOW	DEFW	0
 Y	DEFB	91
 	DEFB	10
 	DEFB	9
 	DEFB	8
 	DEFB	31
 Y1	DEFB	8
 	DEFB	9
 	DEFB	91
 	DEFB	10
 	DEFB	'Y'
 	DEFB	'Q'
 BUFFER	DEFS	110
 FLALEN	DEFW	0
 FLASH	CALL	0A7FH
 	LD	A,L
 	LD	(FLALEN),A
 FLON	CALL	SETUP
 	LDIR
 	CALL	LITE
 	CALL	GETKEY
 	CALL	SETUP
 	EX	DE,HL
 	LDIR
 	CALL	GETKEY
 	JR	FLON
 GETKEY	LD	B,40H
 KEYLP	CALL	2BH
 	OR	A
 	JR	NZ,HAVEIT
 	DJNZ	KEYLP
 	RET
 HAVEIT	LD	HL,CHAR
 	LD	(HL),A
 	EX	(SP),HL
 	CALL	SETUP
 	EX	DE,HL
 	LDIR
 	CALL	TONE
 	POP	HL
 	JP	0A9AH
 SETUP	LD	HL,(4020H)
 	LD	DE,BUFFER
 	LD	A,(FLALEN)
 	LD	C,A
 	LD	B,0
 	RET
 LITE	CALL	SETUP
 	LD	B,C
 NEWCUR	LD	(HL),176
 	INC	HL
 	DJNZ	NEWCUR
 	RET
 LOCK	DI
 	CALL	TONE
 	LD	A,(3840H)
 	CP	6
 	JR	NZ,LOCK
 	LD	A,(3880H)
 	OR	A
 	JR	Z,LOCK
 	EI
 	RET
 LENGTH	DEFB	0
 REQLEN	DEFB	0FFH
 CHAR	DEFB	0
 GETSTR	CALL	0A7FH
 	LD	A,L
 	LD	(REQLEN),A
 AGAIN	CALL	CURSOR
 	XOR	A
 	LD	(LENGTH),A
 	LD	HL,BUFFER
 BOL	LD	DE,(4020H)
 SCAN	LD	A,(DE)
 	LD	(CHAR),A
 SCAN2	LD	A,176
 SCAN1	LD	(DE),A
 	LD	BC,500H
 	CALL	60H
 	PUSH	DE
 	CALL	2BH
 	POP	DE
 	OR	A
 	JR	NZ,GOTONE
 	LD	A,(DE)
 	LD	B,A
 	LD	A,(SCAN2+1)
 	CP	B
 	JR	NZ,SCAN2
 	LD	A,(CHAR)
 	JR	SCAN1
 GOTONE	CALL	CHKCUR
 	CALL	ADJUST
 	CP	0DH
 	JR	Z,DONE
 	CP	8
 	JR	Z,BCKSPA
 	CP	18H
 	JR	Z,BOL1
 	CP	31
 	JR	Z,AGAIN
 	CP	20H
 	JR	C,SCAN
 	CP	5FH
 	JR	NC,SCAN
 	LD	C,A
 	LD	A,(REQLEN)
 	LD	B,A
 	LD	A,(LENGTH)
 	CP	B
 	JR	NC,SCAN
 	LD	A,C
 	LD	(DE),A
 	LD	(HL),A
 	INC	DE
 	INC	HL
 	LD	A,(LENGTH)
 	INC	A
 	LD	(LENGTH),A
 	CALL	TONE
 	JR	SCAN
 BCKSPA	LD	A,(LENGTH)
 	OR	A
 	JR	Z,SCAN
 	DEC	A
 	LD	(LENGTH),A
 	LD	A,20H
 	LD	(DE),A
 	LD	(HL),A
 	DEC	DE
 	DEC	HL
 	CALL	TONE
 	JR	SCAN
 CURSOR	LD	HL,(4020H)
 	LD	A,(REQLEN)
 	LD	B,A
 	INC	B
 LOOP3	LD	(HL),20H
 	INC	HL
 	DJNZ	LOOP3
 	RET
 DONE	LD	A,20H
 	LD	(DE),A
 	LD	(HL),0DH
 	INC	DE
 	LD	A,(LENGTH)
 	LD	B,A
 	LD	A,(REQLEN)
 	SUB	B
 	JR	Z,OKDONE
 	LD	B,A
 	LD	A,20H
 	LD	(4020H),DE
 LOZZZ	LD	(DE),A
 	INC	DE
 	DJNZ	LOZZZ
 OKDONE	LD	HL,LENGTH
 	JP	0A9AH
 BOL1	LD	A,20H
 	LD	(DE),A
 	LD	HL,BUFFER
 	LD	DE,(4020H)
 	XOR	A
 	LD	(LENGTH),A
 	JP	BOL
 ADJUST	CP	0AH
 	JR	Z,LINFED
 	CP	9
 	JR	Z,RARROW
 	CP	19H
 	JR	Z,LARROW
 	RET
 LINFED	LD	A,5CH
 	RET
 RARROW	LD	A,5EH
 	RET
 LARROW	LD	A,5DH
 	RET
 CHKCUR	CP	1BH
 	JR	Z,HIGH
 	CP	1AH
 	JR	Z,LOW
 	RET
 HIGH	EX	AF,AF'
 	LD	A,143
 CONT1	LD	(SCAN2+1),A
 	LD	A,20H
 	LD	(DE),A
 	EX	AF,AF'
 	RET
 LOW	EX	AF,AF'
 	LD	A,176
 	JR	CONT1
 TONE	DI
 	EXX
 	LD	IX,DURAT
 	LD	IY,FREQ
 	LD	C,(IX)
 LOOPZ	LD	B,(IY)
 	LD	A,1
 	OUT	(0FFH),A
 LOOPY	DJNZ	LOOPY
 	LD	B,(IY)
 	INC	A
 	OUT	(0FFH),A
 LOOPX	DJNZ	LOOPX
 	DEC	C
 	JR	NZ,LOOPZ
 	EXX
 	EI
 	RET
 DURAT	DEFB	8
 FREQ	DEFB	60
 SORT	CALL	0A7FH
 	LD	E,(HL)
 	INC	HL
 	LD	D,(HL)
 	LD	(LABEL1+1),DE
 	INC	HL
 	LD	E,(HL)
 	INC	HL
 	LD	D,(HL)
 	LD	(DATA7),DE
 LABEL1	LD	HL,0
 	LD	(DATA6),HL
 LABEL3	LD	DE,(DATA6)
 	SRL	E
 	XOR	A
 	SRL	D
 	JR	NC,$+4
 	SET	7,E
 	LD	(DATA6),DE
 	LD	A,D
 	OR	E
 	RET	Z
 	LD	HL,(LABEL1+1)
 	SBC	HL,DE
 	LD	(DATA4),HL
 	LD	HL,0
 	LD	(DATA3),HL
 LABEL2	LD	HL,(DATA3)
 	LD	(DATA2),HL
 	LD	HL,(DATA2)
 	LD	DE,(DATA6)
 	ADD	HL,DE
 	LD	(DATA5),HL
 	EX	DE,HL
 	LD	HL,0
 	ADD	HL,DE
 	ADD	HL,DE
 	ADD	HL,DE
 	PUSH	HL
 	LD	DE,(DATA2)
 	LD	HL,0
 	ADD	HL,DE
 	ADD	HL,DE
 	ADD	HL,DE
 	LD	BC,(DATA7)
 	ADD	HL,BC
 	EX	DE,HL
 	POP	HL
 	ADD	HL,BC
 	PUSH	HL
 	PUSH	DE
 	LD	C,0
 	LD	A,(HL)
 	LD	B,A
 	LD	A,(DE)
 	CP	B
 	JR	NC,$+5
 	LD	C,1
 	LD	B,A
 	XOR	A
 	OR	B
 	JR	Z,$+1BH
 	PUSH	BC
 	INC	DE
 	INC	HL
 	LD	C,(HL)
 	INC	HL
 	LD	B,(HL)
 	PUSH	BC
 	POP	HL
 	EX	DE,HL
 	LD	C,(HL)
 	INC	HL
 	LD	B,(HL)
 	PUSH	BC
 	POP	HL
 	POP	BC
 	LD	A,(DE)
 	SUB	(HL)
 	JR	C,$+0CH
 	JR	NZ,$+29H
 	INC	DE
 	INC	HL
 	DJNZ	$-8
 	BIT	0,C
 	JR	NZ,$+21H
 	POP	DE
 	POP	HL
 	LD	B,3
 	LD	C,(HL)
 	EX	DE,HL
 	LD	A,(HL)
 	LD	(HL),C
 	EX	DE,HL
 	LD	(HL),A
 	INC	HL
 	INC	DE
 	DJNZ	$-8
 	LD	HL,(DATA6)
 	EX	DE,HL
 	LD	HL,(DATA2)
 	XOR	A
 	SBC	HL,DE
 	LD	(DATA2),HL
 	JR	NC,$-110
 	JR	$+4
 	POP	DE
 	POP	HL
 	LD	HL,(DATA3)
 	LD	DE,1
 	XOR	A
 	ADD	HL,DE
 	LD	(DATA3),HL
 	LD	DE,(DATA4)
 	SBC	HL,DE
 	JP	C,LABEL2
 	JP	LABEL3
 DATA2	DEFW	0
 DATA3	DEFW	0
 DATA4	DEFW	0
 DATA5	DEFW	0
 DATA6	DEFW	0
 DATA7	DEFW	0
 	DEFM	'0000'
 	DEFB	'0'
 MSG1	DEFW	1F1CH
 	DEFB	3
 	DEFW	22
 	DEFM	'** SALESRECORD **'
 	DEFB	3
 	DEFW	128
 	DEFM	'ORDER DATE:'
 	DEFB	3
 	DEFW	128+23
 	DEFM	'ORDER VALUE:'
 	DEFB	3
 	DEFW	192
 	DEFM	'PO#:'
 	DEFB	3
 	DEFW	192+23
 	DEFM	'COMM %:'
 	DEFB	3
 	DEFW	192+38
 	DEFM	'SALESPERSON:'
 	DEFB	3
 	DEFW	256
 	DEFM	'SO#:'
 	DEFB	3
 	DEFW	256+23
 	DEFM	'COMM $:'
 	DEFB	3
 	DEFW	256+41
 	DEFM	'DATE PAID:'
 	DEFB	3
 	DEFW	320
 	DEFM	'CUST NAME:'
 	DEFB	3
 	DEFW	320+30
 	DEFM	'INVOICE #:'
 	DEFB	3
 	DEFW	384
 	DEFM	'ITEM:'
 	DEFB	3
 	DEFW	384+12
 	DEFM	'QUANTITY:'
 	DEFB	3
 	DEFW	384+30
 	DEFM	'INVOICE $:'
 	DEFB	3
 	DEFW	448
 	DEFM	'DESCRIPTION:'
 	DEFB	3
 	DEFW	512
 	DEFM	'REQUIRED DATE:'
 	DEFB	3
 	DEFW	512+30
 	DEFM	'ESTIMATED DATE:'
 	DEFB	3
 	DEFW	576
 	DEFM	'ACKNOWLEDGED DATE:'
 	DEFB	3
 	DEFW	576+30
 	DEFM	'SHIP DATE:'
 	DEFB	3
 	DEFW	640
 	DEFM	'PRINCIPAL:'
 	DEFB	3
 	DEFW	640+20
 	DEFM	'REMARKS:'
 	DEFB	0
 MG1	LD	HL,MSG1
 	CALL	PRINT
 	LD	HL,3C00H+64
 	LD	DE,3C00H+65
 	LD	BC,63
 	LD	(HL),140
 	LDIR
 	LD	HL,3C00H+768
 	LD	DE,3C00H+769
 	LD	BC,63
 	LD	(HL),140
 	LDIR
 	RET
 MSG2	DEFW	1F1CH
 	DEFM	'BINNING - SALESRECORD - MASTER MENU'
 	DEFW	0D0DH
 	DEFM	'<1>.  ADD A SALESRECORD'
 	DEFB	0DH
 	DEFM	'<2>.  EDIT A SALESRECORD'
 	DEFB	0DH
 	DEFM	'<3>.  PRINT A SALESRECORD'
 	DEFB	0DH
 	DEFM	'<4>.  END PROGRAM'
 	DEFW	0D0DH
 	DEFB	0
 MG2	LD	HL,MSG2
 	JP	PRINT
 MSG3	DEFW	1F1CH
 	DEFM	'- PRINT SALESRECORDS -'
 	DEFW	0D0DH
 	DEFM	'<1>.  PRINT A SINGLE RECORD'
 	DEFB	0DH
 	DEFM	'<2>.  PRINT A SERIES OF RECORDS'
 	DEFB	0DH
 	DEFM	'<3>.  PRINT A GROUP OF RECORDS'
 	DEFB	0DH
 	DEFM	'<4>.  RETURN TO MENU'
 	DEFW	0D0DH
 	DEFB	0
 MG3	LD	HL,MSG3
 	JP	PRINT
 MSG4	DEFB	3
 	DEFW	832
 	DEFM	'SEARCH KEY #1, DATA: '
 	DEFB	0
 MG4	LD	HL,MSG4
 	JP	PRINT
 MSG5	DEFB	3
 	DEFW	896
 	DEFM	'SEARCH KEY #2, DATA: '
 	DEFB	0
 MG5	LD	HL,MSG5
 	JP	PRINT
 MSG6	DEFB	3
 	DEFW	960
 	DEFM	'SEARCH KEY #3, DATA: '
 	DEFB	0
 MG6	LD	HL,MSG6
 	JP	PRINT
 MSG7	DEFB	3
 	DEFW	896+20
 	DEFM	'<< ENTER CORRECTION >>'
 	DEFB	0
 MG7	CALL	MG8
 	LD	HL,MSG7
 	JP	PRINT
 MG8	LD	HL,3C00H+832
 	LD	DE,3C00H+833
 	LD	BC,191
 	LD	(HL),20H
 	LDIR
 	RET
 MSG9	DEFB	3
 	DEFW	896+14
 	DEFM	'IS EVERYTHING CORRECT (Y N Q) ? '
 	DEFB	0
 MG9	CALL	MG8
 	LD	HL,MSG9
 	JP	PRINT
 MSG10	DEFB	3
 	DEFW	896+14
 	DEFM	'CORRECT FILE ('
 	DEFB	91
 	DEFB	20H
 	DEFB	92
 	DEFB	20H
 	DEFB	93
 	DEFB	20H
 	DEFB	94
 	DEFM	' Y Q) ? '
 	DEFB	0
 MG10	CALL	MG8
 	LD	HL,MSG10
 	JP	PRINT
 PRINT	LD	A,(HL)
 	INC	HL
 	OR	A
 	RET	Z
 	CP	3
 	JR	Z,DISPL
 	CP	20H
 	JR	C,CONTRL
 	LD	DE,(4020H)
 	LD	(DE),A
 	INC	DE
 	LD	(4020H),DE
 	JR	PRINT
 DISPL	LD	E,(HL)
 	INC	HL
 	LD	D,(HL)
 	INC	HL
 	EX	DE,HL
 	LD	BC,3C00H
 	ADD	HL,BC
 	LD	(4020H),HL
 	EX	DE,HL
 	JR	PRINT
 CONTRL	CALL	33H
 	JR	PRINT
 SHOWIT	CALL	0A7FH
 	LD	A,H
 	OR	A
 	RET	NZ
 	LD	A,L
 	OR	A
 	RET	Z
 	CP	11
 	RET	NC
 	EX	DE,HL
 	SLA	E
 	LD	HL,TABLE
 	ADD	HL,DE
 	LD	E,(HL)
 	INC	HL
 	LD	D,(HL)
 	EX	DE,HL
 	JP	(HL)
 TABLE	DEFW	0
 	DEFW	MG1
 	DEFW	MG2
 	DEFW	MG3
 	DEFW	MG4
 	DEFW	MG5
 	DEFW	MG6
 	DEFW	MG7
 	DEFW	MG8
 	DEFW	MG9
 	DEFW	MG10
 	END	402DH
 	INC	HL
 	LD	D,(HL)
 	EX	DE,HL
 	JP	(HL)
LOAD FAST
BASIC 63940,2,RUN"SR
                                                                                                                                                                 