.SEGMENT "HINTS" .FUNCT DO-HINTS:ANY:0:0,Q,WIN,WCLR,QN,FG,BG,NUM,MAXC,?TMP1 HLIGHT H-NORMAL CURSET -1,0 CALL1 INIT-HINT-SCREEN >WIN WINATTR S-TEXT,A-WRAP,O-CLEAR FONT 1 WINGET -3,WFSIZE SHIFT STACK,-8 >Q WINGET -3,WHIGH DIV STACK,Q >BOTTOM-HINT-NUM SCREEN S-WINDOW WINGET S-WINDOW,WCOLOR >WCLR GETB 0,30 EQUAL? STACK,APPLE-2C,APPLE-2E,APPLE-2GS \?CCL3 COLOR 1,1 HLIGHT H-INVERSE JUMP ?PRG12 ?CCL3: GET 0,0 BTST STACK,1 \?PRG6 ICALL CCURSET,2,9 COLOR 1,-1 JUMP ?PRG12 ?PRG6: WINGET S-TEXT,WCOLOR >BG SHIFT BG,-8 >FG EQUAL? FG,-1,255 \?CND8 SET 'FG,1 ?CND8: BAND BG,255 >BG EQUAL? BG,-1,255 \?CND10 SET 'BG,1 ?CND10: COLOR FG,BG ?PRG12: CLEAR S-TEXT SCREEN S-WINDOW FONT 1 ICALL HINT-TITLE,INVISICLUES,S-WINDOW SCREEN S-TEXT WINATTR -3,A-SCRIPT,O-CLEAR DIROUT D-TABLE-ON,SLINE DIROUT D-TABLE-OFF SET 'GET-HINT-ROUTINE,H-CHAPT-NAME GET HINTS,0 ICALL2 H-PUT-UP-FROBS,STACK SET 'QN,H-CHAPT-NUM GET HINTS,0 GRTR? QN,STACK \?CND14 PRINTI " [" PRINTN QN PRINTC 93 SET 'QN,1 ?CND14: ICALL2 H-NEW-CURSOR,QN ?PRG16: GET HINTS,0 >MAXC ZERO? DEMO-VERSION? /?CCL20 CALL2 INPUT-DEMO,1 >BG JUMP ?CND18 ?CCL20: INPUT 1 >BG ?CND18: EQUAL? BG,CLICK1,CLICK2 \?CND21 CALL1 SELECT-HINT-BY-MOUSE >FG GRTR? FG,0 /?CND21 EQUAL? FG,-1 \?CCL27 SET 'BG,78 JUMP ?CND21 ?CCL27: EQUAL? FG,-2 \?CCL29 SET 'BG,80 JUMP ?CND21 ?CCL29: EQUAL? FG,-3 \?CCL31 SET 'BG,13 JUMP ?CND21 ?CCL31: EQUAL? FG,-4 \?CCL33 SET 'BG,81 ?CND21: EQUAL? BG,77,109,81 /?CTR35 EQUAL? BG,113 \?CCL36 ?CTR35: SET 'Q,TRUE-VALUE JUMP ?REP17 ?CCL33: SOUND S-BEEP JUMP ?PRG16 ?CCL36: EQUAL? BG,LEFT-ARROW \?CCL40 SUB QN,BOTTOM-HINT-NUM >NUM LESS? 0,NUM \?CCL43 ICALL H-NEW-CURSOR,QN,TRUE-VALUE SET 'QN,NUM ICALL2 H-NEW-CURSOR,QN SET 'H-QUEST-NUM,1 JUMP ?PRG16 ?CCL43: SOUND S-BEEP JUMP ?PRG16 ?CCL40: EQUAL? BG,RIGHT-ARROW \?CCL45 ADD QN,BOTTOM-HINT-NUM >NUM LESS? MAXC,NUM /?CCL48 ICALL H-NEW-CURSOR,QN,TRUE-VALUE SET 'QN,NUM ICALL2 H-NEW-CURSOR,QN SET 'H-QUEST-NUM,1 JUMP ?PRG16 ?CCL48: SOUND S-BEEP JUMP ?PRG16 ?CCL45: EQUAL? BG,78,110,DOWN-ARROW \?CCL50 SET 'NUM,QN ICALL H-NEW-CURSOR,NUM,TRUE-VALUE ?PRG51: IGRTR? 'NUM,MAXC \?CND53 SET 'NUM,1 ?CND53: EQUAL? NUM,QN \?CCL57 SOUND S-BEEP ICALL2 H-NEW-CURSOR,QN JUMP ?PRG16 ?CCL57: CALL2 H-NEW-CURSOR,NUM ZERO? STACK /?PRG51 SET 'QN,NUM SET 'H-QUEST-NUM,1 JUMP ?PRG16 ?CCL50: EQUAL? BG,80,112,UP-ARROW \?CCL60 SET 'NUM,QN ICALL H-NEW-CURSOR,NUM,TRUE-VALUE ?PRG61: DLESS? 'NUM,1 \?CND63 SET 'NUM,MAXC ?CND63: EQUAL? NUM,QN \?CCL67 SOUND S-BEEP ICALL2 H-NEW-CURSOR,QN JUMP ?PRG16 ?CCL67: CALL2 H-NEW-CURSOR,NUM ZERO? STACK /?PRG61 SET 'QN,NUM SET 'H-QUEST-NUM,1 JUMP ?PRG16 ?CCL60: EQUAL? BG,13,10,32 \?CCL70 SET 'H-CHAPT-NUM,QN CALL1 H-PICK-QUESTION >Q JUMP ?REP17 ?CCL70: EQUAL? BG,CLICK1,CLICK2 \?CCL72 GRTR? FG,MAXC \?CCL75 SOUND S-BEEP JUMP ?PRG16 ?CCL75: ICALL H-NEW-CURSOR,QN,TRUE-VALUE CALL2 H-NEW-CURSOR,FG ZERO? STACK /?CCL78 SET 'QN,FG SET 'H-QUEST-NUM,1 EQUAL? BG,CLICK2 \?PRG16 SET 'H-CHAPT-NUM,QN CALL1 H-PICK-QUESTION >Q ?REP17: ZERO? Q /?PRG12 CLEAR -1 SCREEN S-WINDOW GETB 0,30 EQUAL? STACK,APPLE-2C,APPLE-2E,APPLE-2GS \?CCL85 HLIGHT H-NORMAL JUMP ?CND83 ?CCL78: SOUND S-BEEP ICALL2 H-NEW-CURSOR,QN JUMP ?PRG16 ?CCL72: SOUND S-BEEP JUMP ?PRG16 ?CCL85: BAND WCLR,255 >?TMP1 SHIFT WCLR,-8 COLOR ?TMP1,STACK ?CND83: SCREEN S-TEXT HLIGHT H-NORMAL WINATTR S-TEXT,A-WRAP,O-SET WINATTR S-TEXT,A-SCRIPT,O-SET CURSET -2,0 ICALL1 LEAVE-HINT-SCREEN RETURN M-FATAL .FUNCT H-PICK-QUESTION:ANY:0:0,CHR,MAXQ,Q,WID,QN,TMP,NUM ?FCN: CATCH >PARSE-SENTENCE-ACTIVATION HLIGHT H-NORMAL CLEAR S-TEXT GET HINTS,H-CHAPT-NUM GET STACK,1 ICALL HINT-TITLE,STACK,S-WINDOW CALL CENTER-LINE,M-MAIN-HINT-MENU,2 >WID GET HINTS,H-CHAPT-NUM GET STACK,0 SUB STACK,1 >MAXQ SCREEN S-TEXT SET 'GET-HINT-ROUTINE,H-GET-QUEST ICALL2 H-PUT-UP-FROBS,MAXQ SET 'QN,H-QUEST-NUM GRTR? QN,MAXQ \?CND1 PRINTI " [" PRINTN QN PRINTC 93 SET 'QN,1 ?CND1: ICALL2 H-NEW-CURSOR,QN ?PRG3: ZERO? DEMO-VERSION? /?CCL7 CALL2 INPUT-DEMO,1 >CHR JUMP ?CND5 ?CCL7: INPUT 1 >CHR ?CND5: EQUAL? CHR,CLICK1,CLICK2 \?CND8 CALL SELECT-HINT-BY-MOUSE,WID,TRUE-VALUE >TMP GRTR? TMP,0 /?CND8 EQUAL? TMP,-1 \?CCL14 SET 'CHR,78 JUMP ?CND8 ?CCL14: EQUAL? TMP,-2 \?CCL16 SET 'CHR,80 JUMP ?CND8 ?CCL16: EQUAL? TMP,-3 \?CCL18 SET 'CHR,13 JUMP ?CND8 ?CCL18: EQUAL? TMP,-4 \?CCL20 SET 'CHR,81 JUMP ?CND8 ?CCL20: EQUAL? TMP,-5 \?CCL22 SET 'CHR,77 ?CND8: EQUAL? CHR,81,113 /TRUE EQUAL? CHR,77,109 \?CCL27 SET 'Q,TRUE-VALUE JUMP ?REP4 ?CCL22: SOUND S-BEEP JUMP ?PRG3 ?CCL27: EQUAL? CHR,LEFT-ARROW \?CCL29 SUB QN,BOTTOM-HINT-NUM >NUM LESS? 0,NUM \?CCL32 ICALL H-NEW-CURSOR,QN,TRUE-VALUE SET 'QN,NUM ICALL2 H-NEW-CURSOR,QN JUMP ?PRG3 ?CCL32: SOUND S-BEEP JUMP ?PRG3 ?CCL29: EQUAL? CHR,RIGHT-ARROW \?CCL34 ADD QN,BOTTOM-HINT-NUM >NUM LESS? MAXQ,NUM /?CCL37 ICALL H-NEW-CURSOR,QN,TRUE-VALUE SET 'QN,NUM ICALL2 H-NEW-CURSOR,QN JUMP ?PRG3 ?CCL37: SOUND S-BEEP JUMP ?PRG3 ?CCL34: EQUAL? CHR,78,110,DOWN-ARROW \?CCL39 SET 'NUM,QN ICALL H-NEW-CURSOR,NUM,TRUE-VALUE ?PRG40: IGRTR? 'NUM,MAXQ \?CND42 SET 'NUM,1 ?CND42: EQUAL? NUM,QN \?CCL46 SOUND S-BEEP JUMP ?REP41 ?CCL46: CALL2 H-NEW-CURSOR,NUM ZERO? STACK /?PRG40 SET 'QN,NUM ?REP41: ICALL2 H-NEW-CURSOR,QN JUMP ?PRG3 ?CCL39: EQUAL? CHR,80,112,UP-ARROW \?CCL49 SET 'NUM,QN ICALL H-NEW-CURSOR,NUM,TRUE-VALUE ?PRG50: DLESS? 'NUM,1 \?CND52 SET 'NUM,MAXQ ?CND52: EQUAL? NUM,QN \?CCL56 SOUND S-BEEP JUMP ?REP51 ?CCL56: CALL2 H-NEW-CURSOR,NUM ZERO? STACK /?PRG50 SET 'QN,NUM ?REP51: ICALL2 H-NEW-CURSOR,QN JUMP ?PRG3 ?CCL49: EQUAL? CHR,CLICK1,CLICK2 \?CCL59 GRTR? TMP,MAXQ \?CCL62 SOUND S-BEEP JUMP ?PRG3 ?CCL62: ICALL H-NEW-CURSOR,QN,TRUE-VALUE CALL2 H-NEW-CURSOR,TMP ZERO? STACK /?CCL65 SET 'QN,TMP EQUAL? CHR,CLICK2 \?PRG3 SET 'H-QUEST-NUM,QN ICALL1 DISPLAY-HINT JUMP ?REP4 ?CCL65: SOUND S-BEEP ICALL2 H-NEW-CURSOR,QN JUMP ?PRG3 ?CCL59: EQUAL? CHR,13,10,32 \?CCL69 SET 'H-QUEST-NUM,QN ICALL1 DISPLAY-HINT ?REP4: ZERO? Q /?FCN RFALSE ?CCL69: SOUND S-BEEP JUMP ?PRG3 .FUNCT H-NEW-CURSOR:ANY:1:2,POS,OFF?,Y,X,?TMP1 SET 'Y,POS SET 'X,LEFT-HINT-COLUMN GRTR? POS,BOTTOM-HINT-NUM \?CND1 SUB Y,BOTTOM-HINT-NUM >Y WINGET -3,WWIDE DIV STACK,2 >X ?CND1: SUB Y,1 >?TMP1 WINGET -3,WFSIZE SHIFT STACK,-8 MUL ?TMP1,STACK ADD 1,STACK CURSET STACK,X ZERO? OFF? \?CCL5 HLIGHT H-INVERSE JUMP ?CND3 ?CCL5: HLIGHT H-NORMAL ?CND3: CALL GET-HINT-ROUTINE,POS >X ZERO? X /?CND6 PRINT X PRINTC 32 ?CND6: ZERO? OFF? \?CND8 HLIGHT H-NORMAL ?CND8: RETURN X .FUNCT SELECT-HINT-BY-MOUSE:ANY:0:2,WID,Q?,VAL,MID,X,Y,WIN,?TMP1 GET 0,27 GET STACK,2 >Y GET 0,27 GET STACK,1 >X WINGET S-WINDOW,WTOP >VAL GRTR? VAL,Y /?CCL3 SUB Y,VAL >?TMP1 WINGET S-WINDOW,WHIGH LESS? ?TMP1,STACK \?CCL3 SET 'WIN,S-WINDOW JUMP ?CND1 ?CCL3: WINGET S-TEXT,WTOP >VAL SET 'WIN,S-TEXT ?CND1: SUB Y,VAL >Y WINGET WIN,WFSIZE SHIFT STACK,-8 >VAL DIV Y,VAL >VAL GETB 0,33 >?TMP1 WINGET WIN,WFSIZE BAND STACK,255 MUL ?TMP1,STACK DIV STACK,2 >MID EQUAL? WIN,S-WINDOW \?CCL8 EQUAL? VAL,1 \?CCL11 DIV WID,2 >VAL ZERO? VAL /?CCL14 SUB MID,VAL GRTR? X,STACK \?CCL14 ADD MID,VAL LESS? X,STACK \?CCL14 RETURN -5 ?CCL14: GRTR? X,MID /?CCL19 RETURN -1 ?CCL19: RETURN -3 ?CCL11: EQUAL? VAL,2 \FALSE DIV H-OR-USE-MOUSE-WID,2 >VAL SUB MID,VAL LESS? X,STACK \?CCL24 RETURN -2 ?CCL24: ADD MID,VAL GRTR? X,STACK \FALSE RETURN -4 ?CCL8: INC 'VAL GRTR? X,MID \?CCL30 ZERO? Q? \?CCL30 ADD VAL,BOTTOM-HINT-NUM >VAL RETURN VAL ?CCL30: GRTR? VAL,BOTTOM-HINT-NUM \?CND28 SET 'VAL,BOTTOM-HINT-NUM ?CND28: RETURN VAL .FUNCT INVERSE-LINE:ANY:0:2,LN,INV,?TMP1 ASSIGNED? 'INV /?CND1 SET 'INV,H-INVERSE ?CND1: ZERO? LN /?CND3 ICALL CCURSET,LN,1 ?CND3: HLIGHT INV ZERO? INV \?CCL7 ERASE 1 RTRUE ?CCL7: FONT 4 GETB 0,39 >LN WINGET -3,WWIDE >INV ADD LN,INV DIV STACK,LN ICALL2 PRINT-SPACES,STACK GETB 0,30 EQUAL? STACK,APPLE-2E,APPLE-2C,APPLE-2GS \?CND8 CURGET SLINE GET SLINE,0 >?TMP1 SUB INV,LN CURSET ?TMP1,STACK PRINTC 32 ?CND8: FONT 1 HLIGHT H-NORMAL RTRUE .FUNCT DISPLAY-HINT:ANY:0:0,H,MX,CNT,CV,SHIFT?,COUNT-OFFS,WID,CURCX,CURC,FLG,?TMP1 HLIGHT H-NORMAL CLEAR S-TEXT SCREEN S-WINDOW ICALL INVERSE-LINE,3,H-NORMAL ICALL RIGHT-LINE,Q-RESUME-STORY,3 ICALL INVERSE-LINE,2,H-NORMAL ICALL RIGHT-LINE,RETURN-SEE-NEW-HINT,2 GET 0,8 BTST STACK,32 \?CND1 CALL CENTER-LINE,H-OR-USE-MOUSE,3 >H-OR-USE-MOUSE-WID ?CND1: ICALL INVERSE-LINE,1,H-NORMAL HLIGHT H-BOLD GET HINTS,H-CHAPT-NUM >?TMP1 ADD H-QUEST-NUM,1 GET ?TMP1,STACK >H SUB H-CHAPT-NUM,1 GET HINT-COUNTS,STACK >CV GET H,1 ICALL CENTER-LINE,STACK,1,H-INVERSE HLIGHT H-NORMAL CALL CENTER-LINE,M-SEE-HINT-MENU,2 >WID GET H,0 >MX DIROUT D-SCREEN-OFF GET H,1 PRINT STACK CRLF DIROUT D-SCREEN-ON SCREEN S-TEXT WINATTR -3,A-SCRIPT,O-SET WINATTR S-TEXT,A-WRAP,O-SET CURSET 1,1 MOD H-QUEST-NUM,2 >SHIFT? SUB H-QUEST-NUM,1 DIV STACK,2 >COUNT-OFFS SET 'CNT,1 GETB CV,COUNT-OFFS >CURCX ZERO? SHIFT? /?CCL5 SHIFT CURCX,-4 JUMP ?CND3 ?CCL5: PUSH CURCX ?CND3: BAND STACK,15 ADD 1,STACK >CURC ?PRG6: IGRTR? 'CNT,CURC /?REP7 SUB MX,CNT ADD STACK,1 PRINTN STACK PRINTI "> " GET H,CNT PRINT STACK CRLF JUMP ?PRG6 ?REP7: SET 'FLG,TRUE-VALUE ?PRG11: ZERO? FLG /?CND13 SET 'FLG,FALSE-VALUE GRTR? CNT,MX \?CCL17 PRINT NO-MORE-HINTS CRLF SCREEN S-WINDOW ICALL INVERSE-LINE,2,H-NORMAL ICALL CENTER-LINE,M-SEE-HINT-MENU,2 SCREEN S-TEXT JUMP ?CND13 ?CCL17: SUB MX,CNT ADD STACK,1 PRINTN STACK PRINTI "> " ?CND13: ZERO? DEMO-VERSION? /?CCL20 CALL2 INPUT-DEMO,1 >CURC JUMP ?CND18 ?CCL20: INPUT 1 >CURC ?CND18: EQUAL? CURC,CLICK1,CLICK2 \?CND21 CALL2 SELECT-HINT-BY-MOUSE,WID >CURCX GRTR? CURCX,0 /?CND21 EQUAL? CURCX,-3 \?CCL27 SET 'CURC,13 JUMP ?CND21 ?CCL27: EQUAL? CURCX,-4 \?CCL29 SET 'CURC,81 JUMP ?CND21 ?CCL29: EQUAL? CURCX,-5 \?CCL31 SET 'CURC,77 ?CND21: EQUAL? CURC,77,109,81 /?CTR33 EQUAL? CURC,113 \?CCL34 ?CTR33: ZERO? SHIFT? /?CCL39 GETB CV,COUNT-OFFS BAND STACK,15 >?TMP1 SUB CNT,2 SHIFT STACK,4 BOR ?TMP1,STACK PUTB CV,COUNT-OFFS,STACK JUMP ?CND37 ?CCL31: SOUND S-BEEP JUMP ?PRG11 ?CCL39: GETB CV,COUNT-OFFS BAND STACK,240 >?TMP1 SUB CNT,2 BOR ?TMP1,STACK PUTB CV,COUNT-OFFS,STACK ?CND37: EQUAL? CURC,81,113 \?CCL42 THROW TRUE-VALUE,PARSE-SENTENCE-ACTIVATION JUMP ?PRG11 ?CCL42: WINATTR -3,A-SCRIPT,O-CLEAR WINATTR S-TEXT,A-WRAP,O-CLEAR RTRUE ?CCL34: EQUAL? CURC,13,10 \?CCL44 GRTR? CNT,MX /?CCL47 SET 'FLG,TRUE-VALUE GET H,CNT PRINT STACK CRLF IGRTR? 'CNT,MX \?PRG11 SET 'FLG,FALSE-VALUE PRINT NO-MORE-HINTS CRLF SCREEN S-WINDOW ICALL INVERSE-LINE,2,H-NORMAL ICALL CENTER-LINE,M-SEE-HINT-MENU,2 SCREEN S-TEXT JUMP ?PRG11 ?CCL47: SOUND S-BEEP JUMP ?PRG11 ?CCL44: SOUND S-BEEP JUMP ?PRG11 .FUNCT H-CHAPT-NAME:ANY:1:1,N GET HINTS,N GET STACK,1 RSTACK .FUNCT H-GET-QUEST:ANY:1:1,N,?TMP1 GET HINTS,H-CHAPT-NUM >?TMP1 ADD N,1 GET ?TMP1,STACK GET STACK,1 RSTACK .FUNCT H-PUT-UP-FROBS:ANY:1:1,MX,ST,QN,X,Y,TMP,BHL,WID SET 'QN,1 SET 'X,LEFT-HINT-COLUMN SET 'Y,TOP-HINT-LINE HLIGHT H-NORMAL SET 'BHL,BOTTOM-HINT-NUM WINGET -3,WFSIZE SHIFT STACK,-8 >WID ?PRG1: IGRTR? 'ST,MX /TRUE CALL GET-HINT-ROUTINE,ST >TMP ZERO? TMP /?PRG1 SUB Y,1 MUL STACK,WID ADD 1,STACK CURSET STACK,X PRINT TMP ERASE 1 IGRTR? 'Y,BHL \?PRG1 SET 'Y,TOP-HINT-LINE WINGET -3,WWIDE DIV STACK,2 >X JUMP ?PRG1 .FUNCT INIT-HINT-SCREEN:ANY:0:0 SCREEN S-FULL CLEAR S-FULL ICALL1 RESET-MARGIN EQUAL? MACHINE,APPLE-2E,APPLE-2C,APPLE-2GS /?CCL3 ICALL DISPLAY-BORDER,P-HINT-BORDER,FALSE-VALUE JUMP ?CND1 ?CCL3: MUL 3,FONT-Y ADD 1,STACK DISPLAY P-HINT-BORDER,STACK,1 ?CND1: ICALL2 SETUP-TEXT-AND-STATUS,P-HINT-LOC SCREEN S-TEXT MARGIN 0,0 RETURN S-STATUS .FUNCT LEAVE-HINT-SCREEN:ANY:0:0 RFALSE .FUNCT HINT-TITLE:ANY:2:3,TITLE,WIN,THIRD ASSIGNED? 'THIRD /?CND1 SET 'THIRD,TRUE-VALUE ?CND1: SCREEN S-WINDOW ICALL INVERSE-LINE,1,H-NORMAL ICALL INVERSE-LINE,2,H-NORMAL ICALL INVERSE-LINE,3,H-NORMAL HLIGHT H-BOLD ICALL CENTER-LINE,TITLE,1,H-INVERSE HLIGHT H-NORMAL ICALL LEFT-LINE,2,NEXT-HINT GET 0,8 BTST STACK,32 \?CND3 CALL CENTER-LINE,H-OR-USE-MOUSE,3 >H-OR-USE-MOUSE-WID ?CND3: ICALL LEFT-LINE,3,PREVIOUS-HINT ZERO? THIRD /FALSE ICALL RIGHT-LINE,RETURN-SEE-HINT,2 CALL RIGHT-LINE,Q-RESUME-STORY,3 RSTACK .FUNCT LEFT-LINE:ANY:2:3,LN,STR,INV ICALL CCURSET,LN,1 ZERO? INV /?CND1 HLIGHT INV ?CND1: PRINT STR ZERO? INV /FALSE HLIGHT H-NORMAL RTRUE .FUNCT RIGHT-LINE:ANY:1:4,STR,LN,INV,LEN CALL JUSTIFIED-LINE,STR,LN,INV,LEN,1 RSTACK .FUNCT CENTER-LINE:ANY:1:4,STR,LN,INV,LEN CALL JUSTIFIED-LINE,STR,LN,INV,LEN,2 RSTACK .FUNCT JUSTIFIED-LINE:ANY:5:5,STR,LN,INV,LEN,CTR ZERO? LN \?CCL3 CURGET SLINE GET SLINE,0 >LN JUMP ?CND1 ?CCL3: DEC 'LN WINGET -3,WFSIZE SHIFT STACK,-8 MUL LN,STACK ADD 1,STACK >LN ?CND1: ZERO? LEN \?CND4 DIROUT D-TABLE-ON,SLINE PRINT STR PRINTC 32 DIROUT D-TABLE-OFF GET 0,24 >LEN ?CND4: WINGET -3,WWIDE SUB STACK,LEN DIV STACK,CTR CURSET LN,STACK ZERO? INV /?CND6 HLIGHT INV ?CND6: PRINT STR PRINTC 32 ZERO? INV \?CCL9 RETURN LEN ?CCL9: HLIGHT H-NORMAL RETURN LEN .ENDSEG .ENDI