keepch equ $ LXI H,mline PUSH H LHLD mptr POP D DAD D PUSH H LXI H,4 DAD SP MOV L,M MVI H,0 POP D MOV A,L STAX D LHLD mptr PUSH H LXI H,80 DCX H POP D CALL cclt MOV A,H ORA L JZ cc602 LHLD mptr INX H SHLD mptr DCX H cc602 equ $ LXI H,2 DAD SP MOV L,M MVI H,0 RET preproce equ $ PUSH B DCX SP XCHG LXI H,-9 DAD SP SPHL XCHG LHLD cmode MOV A,H ORA L JNZ cc603 XCHG LXI H,12 DAD SP SPHL XCHG RET cc603 equ $ LXI H,0 SHLD lptr SHLD mptr cc604 equ $ CALL ch MOV A,H ORA L JZ cc606 CALL ch LXI D,32 XCHG . CALL cceq PUSH H CALL ch LXI D,9 XCHG . CALL cceq POP D CALL ccor MOV A,H ORA L JZ cc607 LXI H,32 PUSH H CALL keepch POP B cc608 equ $ CALL ch LXI D,32 XCHG . CALL cceq PUSH H CALL ch LXI D,9 XCHG . CALL cceq POP D CALL ccor MOV A,H ORA L JZ cc610 CALL gch JMP cc608 cc610 equ $ cc609 equ $ JMP cc611 cc607 equ $ CALL ch LXI D,34 XCHG . CALL cceq MOV A,H ORA L JZ cc612 CALL ch PUSH H CALL keepch POP B CALL gch cc613 equ $ CALL ch LXI D,34 XCHG . CALL ccne MOV A,H ORA L JZ cc615 CALL ch LXI D,92 XCHG . CALL cceq MOV A,H ORA L JZ cc616 CALL gch LXI H,9 DAD SP PUSH H CALL ch PUSH H CALL xlate POP B POP D MOV A,L STAX D LXI H,9 DAD SP MOV L,M MVI H,0 PUSH H CALL keepch POP B CALL gch JMP cc617 cc616 equ $ CALL ch MOV A,H ORA L JNZ cc618 LXI H,cc601+0 PUSH H CALL error POP B JMP cc614 JMP cc619 cc618 equ $ CALL gch PUSH H CALL keepch POP B cc619 equ $ cc617 equ $ JMP cc613 cc615 equ $ cc614 equ $ CALL gch LXI H,34 PUSH H CALL keepch POP B JMP cc620 cc612 equ $ CALL ch LXI D,39 XCHG . CALL cceq MOV A,H ORA L JZ cc621 LXI H,39 PUSH H CALL keepch POP B CALL gch cc622 equ $ CALL ch LXI D,39 XCHG . CALL ccne MOV A,H ORA L JZ cc624 CALL ch LXI D,92 XCHG . CALL cceq MOV A,H ORA L JZ cc625 CALL gch LXI H,9 DAD SP PUSH H CALL ch PUSH H CALL xlate POP B POP D MOV A,L STAX D LXI H,9 DAD SP MOV L,M MVI H,0 PUSH H CALL keepch POP B CALL gch JMP cc626 cc625 equ $ CALL ch MOV A,H ORA L JNZ cc627 LXI H,cc601+14 PUSH H CALL error POP B JMP cc623 JMP cc628 cc627 equ $ CALL gch PUSH H CALL keepch POP B cc628 equ $ cc626 equ $ JMP cc622 cc624 equ $ cc623 equ $ CALL gch LXI H,39 PUSH H CALL keepch POP B JMP cc629 cc621 equ $ CALL ch LXI D,47 XCHG . CALL cceq PUSH H CALL nch LXI D,42 XCHG . CALL cceq POP D CALL ccand MOV A,H ORA L JZ cc630 CALL inchar CALL inchar cc631 equ $ LXI H,1 MOV A,H ORA L JZ cc633 CALL ch LXI D,42 XCHG . CALL cceq MOV A,H ORA L JZ cc634 CALL nch LXI D,47 XCHG . CALL cceq MOV A,H ORA L JNZ cc632 cc635 equ $ cc634 equ $ CALL ch MOV A,H ORA L JNZ cc636 CALL inline JMP cc637 cc636 equ $ CALL inchar cc637 equ $ LHLD eof MOV A,H ORA L JNZ cc632 cc638 equ $ JMP cc631 cc633 equ $ cc632 equ $ CALL inchar CALL inchar JMP cc639 cc630 equ $ CALL ch PUSH H CALL an POP B MOV A,H ORA L JZ cc640 LXI H,10 DAD SP LXI D,0 XCHG . CALL ccpint cc641 equ $ CALL ch PUSH H CALL an POP B MOV A,H ORA L JZ cc643 LXI H,10 DAD SP CALL ccgint LXI D,8 XCHG . CALL cclt MOV A,H ORA L JZ cc644 LXI H,0 DAD SP PUSH H LXI H,12 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D PUSH H CALL ch POP D MOV A,L STAX D cc644 equ $ CALL gch JMP cc641 cc643 equ $ cc642 equ $ LXI H,0 DAD SP PUSH H LXI H,12 DAD SP CALL ccgint POP D DAD D MVI M,0 LXI H,10 DAD SP PUSH H LXI H,2 DAD SP PUSH H CALL findmac POP B POP D CALL ccpint MOV A,H ORA L JZ cc645 cc646 equ $ LXI H,9 DAD SP PUSH H LXI H,macq PUSH H LXI H,14 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 POP D MOV A,L STAX D MOV A,H ORA L JZ cc648 LXI H,9 DAD SP MOV L,M MVI H,0 PUSH H CALL keepch POP B JMP cc646 cc648 equ $ cc647 equ $ JMP cc649 cc645 equ $ LXI H,10 DAD SP LXI D,0 XCHG . CALL ccpint cc650 equ $ LXI H,9 DAD SP PUSH H LXI H,2 DAD SP PUSH H LXI H,14 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 POP D MOV A,L STAX D MOV A,H ORA L JZ cc652 LXI H,9 DAD SP MOV L,M MVI H,0 PUSH H CALL keepch POP B JMP cc650 cc652 equ $ cc651 equ $ cc649 equ $ JMP cc653 cc640 equ $ CALL gch PUSH H CALL keepch POP B cc653 equ $ cc639 equ $ cc629 equ $ cc620 equ $ cc611 equ $ JMP cc604 cc606 equ $ cc605 equ $ LXI H,0 PUSH H CALL keepch POP B LHLD mptr PUSH H LXI H,80 DCX H POP D CALL ccge MOV A,H ORA L JZ cc654 LXI H,cc601+33 PUSH H CALL error POP B cc654 equ $ LXI H,0 SHLD mptr SHLD lptr cc655 equ $ LXI H,line PUSH H LHLD lptr INX H SHLD lptr DCX H POP D DAD D PUSH H LXI H,mline PUSH H LHLD mptr INX H SHLD mptr DCX H POP D DAD D MOV L,M MVI H,0 POP D MOV A,L STAX D MOV A,H ORA L JNZ cc655 cc657 equ $ cc656 equ $ LXI H,0 SHLD lptr XCHG LXI H,12 DAD SP SPHL XCHG RET xlate equ $ PUSH B PUSH B LXI H,6 DAD SP MOV L,M MVI H,0 LXI D,110 XCHG . CALL cceq MOV A,H ORA L JZ cc658 LXI H,13 POP B POP B RET cc658 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 LXI D,116 XCHG . CALL cceq MOV A,H ORA L JZ cc660 LXI H,9 POP B POP B RET cc660 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 LXI D,98 XCHG . CALL cceq MOV A,H ORA L JZ cc662 LXI H,8 POP B POP B RET cc662 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 LXI D,114 XCHG . CALL cceq MOV A,H ORA L JZ cc664 LXI H,13 POP B POP B RET cc664 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 LXI D,102 XCHG . CALL cceq MOV A,H ORA L JZ cc666 LXI H,12 POP B POP B RET cc666 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 PUSH H CALL numeric POP B MOV A,H ORA L JZ cc668 LXI H,2 DAD SP PUSH H LXI H,8 DAD SP MOV L,M MVI H,0 LXI D,48 XCHG . CALL ccsub POP D CALL ccpint LXI H,0 DAD SP LXI D,2 XCHG . CALL ccpint cc672 equ $ LXI H,0 DAD SP CALL ccgint LXI D,3 XCHG . CALL ccle MOV A,H ORA L JZ cc671 JMP cc673 cc669 equ $ LXI H,0 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint JMP cc672 cc673 equ $ CALL nch PUSH H CALL numeric POP B MOV A,H ORA L JZ cc674 LXI H,2 DAD SP PUSH H LXI H,4 DAD SP CALL ccgint LXI D,8 XCHG . CALL ccmult PUSH H CALL gch POP D DAD D LXI D,48 XCHG . CALL ccsub POP D CALL ccpint JMP cc675 cc674 equ $ LXI H,2 DAD SP CALL ccgint POP B POP B RET cc675 equ $ JMP cc669 cc671 equ $ cc670 equ $ LXI H,2 DAD SP CALL ccgint POP B POP B RET cc668 equ $ LXI H,6 DAD SP MOV L,M MVI H,0 POP B POP B RET cc676 equ $ cc667 equ $ cc665 equ $ cc663 equ $ cc661 equ $ cc659 equ $ POP B POP B RET addmac equ $ XCHG LXI H,-9 DAD SP SPHL XCHG PUSH B LXI H,2 DAD SP PUSH H CALL symname POP B MOV A,H ORA L JNZ cc677 CALL illname CALL kill XCHG LXI H,11 DAD SP SPHL XCHG RET cc677 equ $ LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc678 equ $ LXI H,2 DAD SP PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 PUSH H CALL putmac POP B MOV A,H ORA L JNZ cc678 cc680 equ $ cc679 equ $ cc681 equ $ CALL ch LXI D,32 XCHG . CALL cceq PUSH H CALL ch LXI D,9 XCHG . CALL cceq POP D CALL ccor MOV A,H ORA L JZ cc683 CALL gch JMP cc681 cc683 equ $ cc682 equ $ cc684 equ $ CALL gch PUSH H CALL putmac POP B MOV A,H ORA L JNZ cc684 cc686 equ $ cc685 equ $ LHLD macptr PUSH H LXI H,1000 DCX H POP D CALL ccge MOV A,H ORA L JZ cc687 LXI H,cc601+47 PUSH H CALL error POP B cc687 equ $ XCHG LXI H,11 DAD SP SPHL XCHG RET putmac equ $ LXI H,macq PUSH H LHLD macptr POP D DAD D PUSH H LXI H,4 DAD SP MOV L,M MVI H,0 POP D MOV A,L STAX D LHLD macptr PUSH H LXI H,1000 DCX H POP D CALL cclt MOV A,H ORA L JZ cc688 LHLD macptr INX H SHLD macptr DCX H cc688 equ $ LXI H,2 DAD SP MOV L,M MVI H,0 RET findmac equ $ PUSH B LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc689 equ $ LXI H,0 DAD SP CALL ccgint PUSH H LHLD macptr POP D CALL cclt MOV A,H ORA L JZ cc691 LXI H,4 DAD SP CALL ccgint PUSH H LXI H,macq PUSH H LXI H,4 DAD SP CALL ccgint POP D DAD D PUSH H LXI H,8 PUSH H CALL astreq POP B POP B POP B MOV A,H ORA L JZ cc692 cc693 equ $ LXI H,macq PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JNZ cc693 cc695 equ $ cc694 equ $ LXI H,0 DAD SP CALL ccgint POP B RET cc692 equ $ cc696 equ $ LXI H,macq PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JNZ cc696 cc698 equ $ cc697 equ $ cc699 equ $ LXI H,macq PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JNZ cc699 cc701 equ $ cc700 equ $ JMP cc689 cc691 equ $ cc690 equ $ LXI H,0 POP B RET outbyte equ $ LXI H,2 DAD SP MOV L,M MVI H,0 MOV A,H ORA L JNZ cc702 LXI H,0 RET cc702 equ $ LHLD output MOV A,H ORA L JZ cc703 LXI H,2 DAD SP MOV L,M MVI H,0 PUSH H LHLD output PUSH H CALL putc POP B POP B LXI D,0 XCHG . CALL ccle MOV A,H ORA L JZ cc704 CALL closeout LXI H,cc601+64 PUSH H CALL error POP B cc704 equ $ JMP cc705 cc703 equ $ LXI H,2 DAD SP MOV L,M MVI H,0 PUSH H CALL putchar POP B cc705 equ $ LXI H,2 DAD SP MOV L,M MVI H,0 RET outstr equ $ PUSH B LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc706 equ $ LXI H,4 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 PUSH H CALL outbyte POP B MOV A,H ORA L JNZ cc706 cc708 equ $ cc707 equ $ POP B RET typlin equ $ PUSH B LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc709 equ $ LXI H,4 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H POP D DAD D MOV L,M MVI H,0 PUSH H CALL putchar POP B MOV A,H ORA L JNZ cc709 cc711 equ $ cc710 equ $ LXI H,13 PUSH H CALL putchar POP B POP B RET nl equ $ LXI H,13 PUSH H CALL outbyte POP B RET tab equ $ LXI H,32 PUSH H CALL outbyte POP B RET col equ $ LXI H,cc601+82 PUSH H CALL outstr POP B RET error equ $ PUSH B CALL comment LXI H,line PUSH H CALL outstr POP B CALL nl CALL comment LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc712 equ $ LXI H,0 DAD SP CALL ccgint PUSH H LHLD lptr POP D CALL cclt MOV A,H ORA L JZ cc714 LXI H,line PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 LXI D,9 XCHG . CALL cceq MOV A,H ORA L JZ cc715 CALL tab JMP cc716 cc715 equ $ LXI H,32 PUSH H CALL outbyte POP B cc716 equ $ LXI H,0 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint JMP cc712 cc714 equ $ cc713 equ $ LXI H,94 PUSH H CALL outbyte POP B CALL nl CALL comment LXI H,cc601+89 PUSH H CALL outstr POP B LXI H,4 DAD SP CALL ccgint PUSH H CALL outstr POP B LXI H,cc601+98 PUSH H CALL outstr POP B CALL nl LHLD errcnt INX H SHLD errcnt LXI H,cc601+107 PUSH H CALL typlin POP B POP B RET ol equ $ LXI H,2 DAD SP CALL ccgint PUSH H CALL ot POP B CALL nl RET ot equ $ CALL tab LXI H,2 DAD SP CALL ccgint PUSH H CALL outstr POP B RET streq equ $ PUSH B LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc717 equ $ LXI H,4 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JZ cc719 LXI H,6 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 PUSH H LXI H,6 DAD SP CALL ccgint PUSH H LXI H,4 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 POP D CALL ccne MOV A,H ORA L JZ cc720 LXI H,0 POP B RET cc720 equ $ LXI H,0 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H JMP cc717 cc719 equ $ cc718 equ $ LXI H,0 DAD SP CALL ccgint POP B RET astreq equ $ PUSH B LXI H,0 DAD SP LXI D,0 XCHG . CALL ccpint cc721 equ $ LXI H,0 DAD SP CALL ccgint PUSH H LXI H,6 DAD SP CALL ccgint POP D CALL cclt MOV A,H ORA L JZ cc723 LXI H,8 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 PUSH H LXI H,8 DAD SP CALL ccgint PUSH H LXI H,4 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 POP D CALL ccne MOV A,H ORA L JNZ cc722 cc724 equ $ LXI H,8 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JNZ cc725 JMP cc722 cc725 equ $ LXI H,6 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 MOV A,H ORA L JNZ cc726 JMP cc722 cc726 equ $ LXI H,0 DAD SP PUSH H CALL ccgint INX H POP D CALL ccpint DCX H JMP cc721 cc723 equ $ cc722 equ $ LXI H,8 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 PUSH H CALL an POP B MOV A,H ORA L JZ cc727 LXI H,0 POP B RET cc727 equ $ LXI H,6 DAD SP CALL ccgint PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D MOV L,M MVI H,0 PUSH H CALL an POP B MOV A,H ORA L JZ cc728 LXI H,0 POP B RET cc728 equ $ LXI H,0 DAD SP CALL ccgint POP B RET match equ $ PUSH B CALL blanks LXI H,0 DAD SP PUSH H LXI H,line PUSH H LHLD lptr POP D DAD D PUSH H LXI H,8 DAD SP CALL ccgint PUSH H CALL streq POP B POP B POP D CALL ccpint MOV A,H ORA L JZ cc729 LHLD lptr PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D SHLD lptr LXI H,1 POP B RET cc729 equ $ LXI H,0 POP B RET amatch equ $ PUSH B CALL blanks LXI H,0 DAD SP PUSH H LXI H,line PUSH H LHLD lptr POP D DAD D PUSH H LXI H,10 DAD SP CALL ccgint PUSH H LXI H,10 DAD SP CALL ccgint PUSH H CALL astreq POP B POP B POP B POP D CALL ccpint MOV A,H ORA L JZ cc730 LHLD lptr PUSH H LXI H,2 DAD SP CALL ccgint POP D DAD D SHLD lptr cc731 equ $ CALL ch PUSH H CALL an POP B MOV A,H ORA L JZ cc733 CALL inbyte JMP cc731 cc733 equ $ cc732 equ $ LXI H,1 POP B RET cc730 equ $ LXI H,0 POP B RET blanks equ $ cc734 equ $ LXI H,1 MOV A,H ORA L JZ cc736 cc737 equ $ CALL ch MOV A,H ORA L JNZ cc739 CALL inline CALL preproce LHLD eof MOV A,H ORA L JNZ cc738 cc740 equ $ JMP cc737 cc739 equ $ cc738 equ $ CALL ch LXI D,32 XCHG . CALL cceq MOV A,H ORA L JZ cc741 CALL gch JMP cc742 cc741 equ $ CALL ch LXI D,9 XCHG . CALL cceq MOV A,H ORA L JZ cc743 CALL gch JMP cc744 cc743 equ $ RET cc744 equ $ cc742 equ $ JMP cc734 cc736 equ $ cc735 equ $ RET outdec equ $ PUSH B PUSH B DCX SP LXI H,1 DAD SP LXI D,0 XCHG . CALL ccpint LXI H,3 DAD SP LXI D,10000 XCHG . CALL ccpint LXI H,7 DAD SP CALL ccgint LXI D,0 XCHG . CALL cclt MOV A,H ORA L JZ cc745 LXI H,7 DAD SP PUSH H LXI H,9 DAD SP CALL ccgint CALL ccneg POP D CALL ccpint LXI H,45 PUSH H CALL outbyte POP B cc745 equ $ cc746 equ $ LXI H,3 DAD SP CALL ccgint LXI D,1 XCHG . CALL ccge MOV A,H ORA L JZ cc748 LXI H,0 DAD SP PUSH H LXI H,9 DAD SP CALL ccgint PUSH H LXI H,7 DAD SP CALL ccgint POP D CALL ccdiv LXI D,48 XCHG . DAD D POP D MOV A,L STAX D LXI H,0 DAD SP MOV L,M MVI H,0 LXI D,48 XCHG . CALL ccne PUSH H LXI H,5 DAD SP CALL ccgint LXI D,1 XCHG . CALL cceq POP D CALL ccor PUSH H LXI H,3 DAD SP CALL ccgint POP D CALL ccor MOV A,H ORA L JZ cc749 LXI H,1 DAD SP LXI D,1 XCHG . CALL ccpint LXI H,0 DAD SP MOV L,M MVI H,0 PUSH H CALL outbyte POP B cc749 equ $ LXI H,7 DAD SP PUSH H LXI H,9 DAD SP CALL ccgint PUSH H LXI H,7 DAD SP CALL ccgint POP D CALL ccdiv XCHG POP D CALL ccpint LXI H,3 DAD SP PUSH H LXI H,5 DAD SP CALL ccgint LXI D,10 XCHG . CALL ccdiv POP D CALL ccpint JMP cc746 cc748 equ $ cc747 equ $ INX SP POP B POP B RET cc601 equ $ DB 109,105,115,115,105,110,103,32,113,117 DB 111,116,101,0,109,105,115,115,105,110 DB 103,32,97,112,111,115,116,114,111,112 DB 104,101,0,108,105,110,101,32,116,111 DB 111,32,108,111,110,103,0,109,97,99 DB 114,111,32,116,97,98,108,101,32,102 DB 117,108,108,0,79,117,116,112,117,116 DB 32,102,105,108,101,32,101,114,114,111 DB 114,0,32,101,113,117,32,36,0,42 DB 42,42,42,42,42,32,32,0,32,32 DB 42,42,42,42,42,42,0,45,45,45 DB 32,69,114,114,111,114,58,32,83,101 DB 101,32,111,117,116,112,117,116,46,0