home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-06-23 | 34.2 KB | 1,155 lines |
-
- MACROMSG.MAC v1.2d
- by Jeff Oberlee (C)opyright 1992
-
- {:alr} {MACL MACROBBS.MAC,WF3} {:alu} {MACL MACROBBS.MAC,bbs}
-
- {:esc_menu}
- {IFCA ,ESM} {SEND ^J^M%an7%%an9%Time comes to a grinding halt! %an0}
- {:ESM} {SETE-P0 ESM2} {SETV ch}
- {PARM ,,,,0}
- {INPU ch, PRESS: [ENTER] to CHAT, [U]seredit, [D]OS, [H]angup}
- {COMP ch,h} {IFCO ESM4}
- {COMP ch,d} {IFCO ESM5}
- {COMP on,} {IFCO ESM}
- {COMP ch,u} {IFCO ESM3}
- {COMP ch,} {IFCO ,ESM}
- {:ESM1} {COMP cf,} {IFCO CT8,ESM}
- {:ESM2} {SETE-P0 esc_menu}
- {IFCA ,ESM6} {SEND %an3%Then suddenly...} {PAUS 1}
- {:ESM6} {RETURN}
- {:ESM5} {SHEL} {GOTO ESM}
- {:ESM3} {COMP open,y} {IFCO ESM}
- {:ESM8} {COMP login_name,} {IFCO ESM}
- {SETV lname,%login_name} {INPU lname,EDIT: Handle (3-30 characters)}
- {COMP lname,1} {IFCO-GE ESM8}
- {LENG %lname} {COMP _len,3} {IFCO-L ESM8}
- {LENG %lname} {COMP _len,30} {IFCO-G ESM8}
- {:ESM9} {SETV temp,%protocol} {INPU temp,EDIT: Protocol (1 letter)}
- {LENG %temp} {COMP _len,1} {IFCO ,ESM9}
- {:ESM0} {SETV ch,%al} {INPU ch,EDIT: Access Level (0-999)}
- {COMP ch,999} {IFCO-G ESM0}
- {SETV al,%ch}
- {SETV protocol,%temp}
- {SETV row,%_row} {SETV col,%_col} {DISP 2,2,0F,%an9 * Saving * }
- {COMP lname,%login_name} {IFCO ESM7}
- {SETV login_name,%lname}
- {SETE time_out}
- {CALL update_clist}
- {:ESM7} {CALL write_user}
- {DISP 2,2,07, }
- {DISP %row,%col,,}
- {SETV row} {SETV col} {SETV lname}
- {GOTO ESM}
- {:ESM4} {SETV s,2} {GOTO time_out}
-
- {:chat}
- {SETV temp,0} {SETV ccount,0}
- {WOPE-A %datadir%LOG-1.LOG} {WRIT %_tim : Chat request} {WCLO}
- {SEND ^J^M^J%an4%Paging %sysop ...^J^M}
- {SPOC n} {SEND %an3%Press %an0[ESC]%an3 then %an0[ENTER]%an3 to chat with%an7 %login_name %an3...^J^M} {SPOC y}
- {:CT7} {INCR ccount} {SETV-S ch,an%ccount}
- {SEND %ch█}
- {SEND ^G} {SEND ^G} {SEND ^G} {PAUS 2}
- {COMP ccount,5} {IFCO-G ,CT7}
- {:CT6} {SETV chat,CHAT}
- {SEND ^M%an0%Sorry, %sysop isn't around right now.^J^M}
- {SEND %an0%However, the chat flag has been set.^J^M^J}
- {GOTO CT9}
- {:CT8} {SETV tl,%_ela}
- {SETG 240,time_out}
- {WOPE-A %datadir%LOG-1.LOG} {WRIT %_tim : Started chat} {WCLO}
- {COMP cb,y} {IFCO ,CT14}
- {CAPT y,%datadir%CHAT.LOG}
- {:CT14} {SEND ^J^M^J%an3%You've just entered . . . %an7%The Twilight Zone. %an3%Reality vanishes.^J^M}
- {SEND %an2(Type "%an0%bye!%an2" on a blank line to exit when desired.)^J^M}
- {SETV cf,1} {SETV co1,%an0} {SETV co2,%an3}
- {SETE-P0 esc_menu}
- {PUSH}
- {:CT2} {COMP cf,1} {IFCO CT3}
- {SEND %co2} {SETV cf,1} {GOTO CT4}
- {:CT3} {SEND %co1} {SETV cf,2}
- {:CT4} {SETV cline}
- {:CT5} {SEND ^J}
- {:CT13} {SEND ^M%cline}
- {GETS-AH cline,78,CT2}
- {COMP cline,/c} {IFCO switch_c}
- {COMP cline,bye!} {IFCO CT1}
- {COMP cline,bye!!} {IFCO time_out}
- {COMP cline,/scroll} {IFCO view_scroll}
- {COMP cline,NO CARRIER} {IFCO time_out}
- {LENG %cline} {COMP %_len,77} {IFCO-LE CT4}
- {SETV ccount,80} {SETV dline,0} {SETV cline, %cline}
- {:CT11} {DECR ccount} {INCR dline}
- {COMP ccount,60} {IFCO-LE CT4}
- {SUBS ch,%ccount,1,%cline}
- {COMP ch, } {IFCO ,CT11}
- {COMP ccount,79} {IFCO CT4}
- {INCR ccount}
- {SUBS cline,%ccount,%dline,%cline}
- {SETV ccount,0}
- {:CT12} {INCR ccount} {SEND ^H}
- {COMP ccount,%dline} {IFCO ,CT12}
- {GOTO CT5}
- {:CT1} {CAPT n}
- {SETV ch,%_ela} {DECR ch,%tl} {INCR tlc,%ch} {SETV tl}
- {SEND ^J^M^J%an3%You've just left . . . %an7%The Twilight Zone. %an3%Reality restored.^J^M^J}
- {WOPE-A %datadir%LOG-1.LOG} {WRIT %_tim : Ended chat} {WCLO}
- {SETV cf} {SETV co1} {SETV co2} {SETV chat} {SETV cline}
- {POPS}
- {:CT9} {SETV ccount}
- {SETE-P0 esc_menu}
- {CALL press_any_key}
- {RETURN}
-
- {:switch_c}
- {:SW1} {SEND ^M%an0(0 %an1%1 %an2%2 %an3%3 %an4%4 %an5%5 %an6%6 %an7%7%an0) ^H}
- {GETS-H ch,1,SW1}
- {COMP ch,0} {IFCO-L SW1}
- {COMP ch,7} {IFCO-G SW1}
- {SEND ^M ^M}
- {COMP cf,1} {IFCO ,SW3}
- {SETV-S co2,an%ch} {SEND %co2} {GOTO SW4}
- {:SW3} {SETV-S co1,an%ch} {SEND %co1}
- {:SW4} {SETV cline}
- {GOTO CT13}
-
- {:view_scroll}
- {SCROLL}
- {GOTO CT4}
-
- {:update_clist}
- {ROPE %datadir%CALLERS.LST,UC1}
- {WOPE %datadir%TEMP.000}
- {:UC2} {READ ch} {READ cline} {READ dline}
- {COMP ch,%userno} {IFCO UC3}
- {WRIT %ch} {WRIT %cline} {WRIT %dline} {GOTO UC2}
- {:UC3} {COMP s,1} {IFCO UC5}
- {:UC4} {WRIT %ch}
- {WRIT %login_name}
- {WRIT %password}
- {:UC5} {READ dline} {WRIT %dline} {GOTO UC5}
- {:UC1} {WCLO}
- {EXEC-N COPY %datadir%TEMP.000 %datadir%CALLERS.LST}
- {EXEC-N DEL %datadir%TEMP.000}
- {RETURN}
-
- {:write_user}
- {WOPE %userdir%%userno.MHS}
- {WRIT %login_name}
- {WRIT %password}
- {WRIT %al}
- {WRIT %protocol}
- {WRIT %expert}
- {WRIT %a}
- {WRIT %fa}
- {WCLO}
- {RETURN}
-
- {:read_data}
- {ROPE %datadir%CALLER.DAT,RD1}
- {READ %callno}
- {READ %tdcalls}
- {READ pub}
- {READ pvt}
- {READ ttu}
- {READ tf}
- {READ ldate}
- {READ stime}
- {READ ftime}
- {READ l_caller}
- {READ luserno}
- {READ uhigh}
- {READ mhigh}
- {READ fhigh}
- {RCLO}
- {:RD1} {RETURN}
-
- {:write_data}
- {WOPE %datadir%CALLER.DAT}
- {WRIT %callno}
- {WRIT %tdcalls}
- {WRIT %pub}
- {WRIT %pvt}
- {WRIT %ttu}
- {WRIT %tf}
- {WRIT %ldate}
- {WRIT %stime}
- {WRIT %ftime}
- {WRIT %login_name}
- {WRIT %userno}
- {WRIT %uhigh}
- {WRIT %mhigh}
- {WRIT %fhigh}
- {WCLO}
- {RETURN}
-
- {:time_out}
- {COMP open,yy} {IFCO ,TKO} {CALL E10}
- {:TKO} {MACL MACROBBS.MAC,time_out}
-
- {:cls}
- {CLEA}
- {COMP on,} {IFCO CLS3}
- {COMP mnu,A} {IFCO CLS1}
- {SEND ^[[2J}
- {GOTO CLS2}
- {:CLS1} {SEND ^L}
- {:CLS2} {DISP 1,1,4F,│ }
- {DISP 1,3,4E,%login_name #%userno}
- {DISP 1,38,47,AL=%al}
- {DISP 1,40,47,%mspeed}
- {DISP 1,57,47,%_ela mins}
- {DISP 1,70,4F,%an9%%chat}
- {DISP 2,1,4F,└──────────────────────────────────────────────────────────────────────────────}
- {DISP 3,1,07,}
- {:CLS3} {RETURN}
-
- {:press_any_key}
- {COMP mnu,a} {IFCO PAK1}
- {SEND %an3%%an9^[[24;1h^[[24;1f[Press Any Key]%an0}
- {GOTO PAK2}
- {:PAK1} {SEND ^J^M^J[Press Any Key]}
- {:PAK2} {SETG 240,time_out}
- {GETS-H temp,1,PAK}
- {:PAK} {SEND ^M ^M}
- {SETV temp}
- {RETURN}
-
- {:dsp_file}
- {IFEX %dump_file,,DF5}
- {SETV count,0} {SETV open,y}
- {INCR count,2}
- {SETE time_out}
- {ROPE %dump_file,DF3}
- {READ dline} {SEND %an7%To: %an3%%dline^J^M} {INCR count}
- {READ dline} {SEND %an7%From: %an1%%dline^J^M} {INCR count}
- {READ dline} {SEND %an7%Subj: %an4%%dline^J^M} {INCR count}
- {READ dline} {SEND %an7%Date: %an0%%dline^J^M} {INCR count}
- {READ dline}
- {COMP dline,0} {IFCO DF11}
- {COMP dline,} {IFCO ,DF10}
- {SEND %an0%%dline^J^M} {INCR count}
- {:DF11} {SETV trace}
- {GOTO DF}
- {:DF10} {SEND %an5%Trace msg#: %an0%%dline^J^M} {INCR count}
- {SETV trace,%dline}
- {:DF} {PUSH}
- {SETE-P0 esc_menu}
- {:DF1} {READ dline}
- {COMP dline,&▀▀▀▀▀▀ Quote ▀▀▀▀▀▀} {IFCO ,LQ1}
- {SETV dline,%an4▀▀▀▀▀▀ %an7%Quote %an4▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀%an7}
- {GOTO DF8}
- {:LQ1} {COMP dline,&▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄} {IFCO ,DF8}
- {SETV dline,%an4▄▄▄▄▄▄ %an7%UnQuote %an4▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄%an0}
- {:DF8} {SEND ^M%dline%%an0^J^M}
- {INCR count}
- {COMP count,22} {IFCO DF4}
- {GOTO DF1}
- {:DF2} {RCLO}
- {:DF3} {SETV dline} {SETV ch} {SETV count}
- {SETV open}
- {POPS}
- {RETURN}
-
- {:DF4} {SETV count,0}
- {SEND %an4%More? %an7(Y,n) %an0: }
- {SETG 240,DF9}
- {:DF6} {GETS-H ch,1,DF7}
- {COMP ch,y} {IFCO DF7}
- {COMP ch,n} {IFCO DF7}
- {SEND ^H} {GOTO DF6}
- {:DF7} {SEND ^M ^M}
- {COMP ch,n} {IFCO DF2}
- {:DF9} {CALL CLS}
- {SEND ^J^M}
- {GOTO DF1}
- {:DF5} {SEND ^J^M^G%an1%Error: %an7%File not found: %dump_file}
- {CALL press_any_key}
- {RETURN}
-
- {:screen_full}
- {SEND %an4%More? %an7(Y,n) %an0: }
- {SETG 120,SF3}
- {:SF1} {GETS-H ch,1,SF2}
- {COMP ch,y} {IFCO SF4}
- {COMP ch,n} {IFCO SF4}
- {SEND ^H} {GOTO SF1}
- {:SF2} {SETV ch,y} {GOTO SF4}
- {:SF3} {SETV ch,n}
- {:SF4} {SEND ^M ^M}
- {RETURN}
-
- {:expert_tog}
- {COMP expert,ON}
- {IFCO ET1}
- {SETV expert,ON}
- {GOTO ET2}
- {:ET1} {SETV expert,OFF}
- {:ET2} {RETURN}
-
- {:ansi}
- {SETV mnu,n}
- {SETV an0,^[[0;2;37m} - gray
- {SETV an1,^[[0;1;31m} - red
- {SETV an2,^[[0;2;32m} - green
- {SETV an3,^[[0;1;33m} - yellow
- {SETV an4,^[[0;1;34m} - blue
- {SETV an5,^[[0;1;35m} - magenta
- {SETV an6,^[[0;1;36m} - cyan
- {SETV an7,^[[0;1;37m} - white
- {SETV an9,^[[5m} - blink
- {SETV an12,^[[44m} - blue background
- {SETV an13,^[[41m} - red background
- {RETURN}
-
- {:cd}
- {IFCA cd1}
- {COMP on,1} {IFCO time_out}
- *-{:cd1} {COMP on,1} {IFCO ,cd2}
- {COMP _ela,%tlc} {IFCO-GE time_out}
- {:cd2} {RETURN}
-
- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
- /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
-
- {:start}
- {SETE-P0 esc_menu}
- {PUSH}
- {CALL cd}
- {:MB1} {SETV n} {SETV ta}
- {CALL read_baseinfo}
- {COMP expert,ON} {IFCO MB4}
- {:MB8} {CALL cls}
- {SEND ^J^M^J^J%an4%}
- {SEND ^J^M ┌───────────────────────────────────────────────────┐}
- {SEND ^J^M │ %an0░░░░░░░░░░░░░░░░░░%an7 Message Base %an0░░░░░░░░░░░░░░░░░%an4 │}
- {SEND ^J^M └───────────────────────────────────────────────────┘}
- {SEND ^J^M [%an0%<%an4] Reverse [%an0%A%an4] Area List [%an0%>%an4] Forward^J^M}
-
- {SEND ^J^M %an4[%an0%P%an4] Post in this area [%an0%R%an4] ReviewScan [%an0%F%an4] File Base}
- {SEND ^J^M %an4[%an0%N%an4] NewScan ALL areas [%an0%C%an4] Chat [%an0%H%an4] Hall of Fame}
- {SEND ^J^M %an4[%an0%T%an4] NewScan THIS area [%an0%X%an4] Xpert Toggle [%an0%Q%an4] MAIN MENU^J^M}
-
- {SEND ^J^M %an0 Enter a command or message number.}
-
- {:MB4} {SEND ^J^M^J%an4%Message Base^J^M}
- {SEND %an4[%an2%%bname%%an4] %an0%%_tim^J^M}
- {DECR msgno}
- {COMP msgno,%himsgno} {IFCO-LE MB10}
- {SETV msgno,%himsgno}
- {:MB10} {SEND %an3%Msg(s): %an0%%lomsgno-%himsgno %an1%Last read: %an0%%msgno^J^M}
- {INCR msgno}
- {SETV ch,%tlc} {DECR ch,%_ela}
- {SEND %an0%Mins Left: %ch^J^M}
- {:MB5} {CALL cd}
- {:MB7} {SEND ^M} {COMP expert,ON} {IFCO ,MB9}
- {SEND %an4(%an0%?%an4=menu) }
- {:MB9} {SEND %an7%MB Command: ^H^H^H^H^H^H^H^H}
- {SETE-P0 esc_menu}
- {SETG 240,time_out}
- {GETS-H ch,1,MB5}
- {:MB14}
- {SETV dline,ph} {INST dline,%ch} {IFCO ,MB3} {COMP al,0} {IFCO MB6}
- {:MB3}
- {SETE-P0 esc_menu}
- {COMP ch,*} {IFCO time_out}
- {COMP ch,?} {IFCO MB8}
- {COMP ch,a} {IFCO area_change}
- {COMP ch,c} {IFCO chat}
- {COMP ch,f} {IFCO file_tran}
- {COMP ch,h} {IFCO hall}
- {COMP ch,p} {IFCO editor}
- {COMP ch,q} {IFCO MB2}
- {COMP ch,r} {IFCO review}
- {COMP ch,x} {IFCO expert_tog}
- {COMP ch,<} {IFCO fast_bak}
- {COMP ch,>} {IFCO fast_for}
- {SETE time_out}
- {COMP ch,n} {IFCO new_all}
- {COMP ch,t} {IFCO new_this}
- {SETV dline,123456789}
- {INST dline,%ch} {IFCO ,MB5}
- {COMP himsgno,0} {IFCO MB5}
-
- {GETS-A ch,8,MB5}
- {COMP ch,1} {IFCO MB13}
- {COMP ch,1} {IFCO-L MB14}
- {COMP ch,%lomsgno} {IFCO-GE MB11}
- {:MB13} {SETV ch,%lomsgno} {GOTO MB12}
- {:MB11} {COMP ch,%himsgno} {IFCO-LE MB12}
- {SETV ch,%himsgno}
- {:MB12} {IFEX %msgsdir%A%a\%ch.MSG,read}
- {SEND ^J^M%an7%Message #%ch not found.} {PAUS 1}
- {INCR ch} {GOTO MB11}
-
- {:MB6} {SEND ^J^M%an1%Sorry, your access level does not allow.^J^M}
- {GOTO MB5}
-
- {:MB2} {SETV quotemsg} {SETV trace}
- {MACL MACROBBS.MAC,main_menu}
-
- {:file_tran}
- {IFEX %filedir%F%fa.BAS,FX2}
- {IFEX %filedir%F*.BAS,,MB5}
- {SETV fa,0}
- {:FX1} {INCR fa}
- {COMP fa,%fhigh} {IFCO-G MB5}
- {IFEX %filedir%F%fa.BAS,,FX1}
- {:FX2}
- {ROPE %filedir%F%fa.BAS,FX1} {READ ch} {READ ch} {RCLO}
- {COMP ch,%al} {IFCO-G FX1}
- {MACL MACROFIL.MAC,start}
-
- {:hall}
- {SETV quotemsg} {SETV trace}
- {MACL MACROREG.MAC,start}
-
- {:fast_for}
- {COMP a,%mhigh} {IFCO MB5}
- {SETV ch,%a}
- {:FF1} {INCR ch}
- {COMP ch,%mhigh} {IFCO-G MB5}
- {IFEX %msgsdir%A%ch.BAS,,FF1}
- {ROPE %msgsdir%A%ch.BAS,FF1} {READ dline} {READ temp} {RCLO}
- {COMP al,%temp} {IFCO-L FF1}
- {SETV a,%ch}
- {CALL read_baseinfo}
- {:FF2} {GOTO MB4}
-
- {:fast_bak}
- {COMP a,1} {IFCO MB5}
- {SETV ch,%a}
- {:FB1} {DECR ch}
- {COMP ch,1} {IFCO-L MB5}
- {IFEX %msgsdir%A%ch.BAS,,FB1}
- {ROPE %msgsdir%A%ch.BAS,FB1} {READ dline} {READ temp} {RCLO}
- {COMP al,%temp} {IFCO-L FB1}
- {SETV a,%ch}
- {CALL read_baseinfo}
- {:FB2} {GOTO MB4}
-
- {:area_change}
- {CALL cls}
- {SETV count,0} {SETV aa,%a}
- {SEND ^J^M%an3%Message Menagerie...^J^M^J}
- {:AC1} {INCR count}
- {COMP count,%mhigh} {IFCO-G AC2}
- {IFEX %msgsdir%A%count.BAS,,AC1}
- {ROPE %msgsdir%A%count.BAS,AC1} {READ %bname} {READ %bal} {RCLO}
- {COMP al,%bal} {IFCO-L AC1}
- {SEND %an7%%count> %an2%%bname^J^M}
- {GOTO AC1}
- {:AC2} {SEND ^J^M}
- {:AC3} {SEND ^M%an7%Which will it be?%an0 ^H^H}
- {SETG 120,time_out}
- {CALL cd}
- {GETS ch,2,AC4}
- {COMP ch,1} {IFCO-L AC3}
- {COMP ch,%mhigh} {IFCO-G AC3}
- {IFEX %msgsdir%A%ch.BAS,,AC3}
- {ROPE %msgsdir%A%ch.BAS,AC3} {READ bname} {READ bal} {RCLO}
- {COMP al,%bal} {IFCO-L AC3}
- {SETV a,%ch}
- {CALL read_baseinfo}
- {:AC4} {RETURN}
-
- {:review}
- {SEND ^J^M^J}
- {:RE1} {SEND %an4%Begin reviewing at which message? %an0(%lomsgno-%himsgno) :%an7 ^H^H^H^H^H^H^H^H}
- {GETS ch,8,MB1}
- {COMP ch,1} {IFCO-L RE1}
- {COMP ch,%lomsgno} {IFCO-GE RE13}
- {SETV ch,%lomsgno} {GOTO RE14}
- {:RE13} {COMP ch,%himsgno} {IFCO-LE RE14}
- {SETV ch,%himsgno}
- {:RE14} {IFEX %msgsdir%A%a\%ch.MSG,RE15}
- {SEND ^J^M%an7%Message #%ch not found.} {PAUS 1}
- {INCR ch} {GOTO RE13}
- {:RE15} {DECR ch}
- {:RE4} {INCR ch} {COMP ch,%himsgno} {IFCO-G RE3}
- {:RE2} {IFEX %msgsdir%A%a\%ch.MSG,,RE4}
- {:RE5} {CALL cls}
- {SEND %an7%Msg# To: From: Subject:}
- {SEND ^J^M----------------------------------------------------------------------------^J^M-
- {SETV temp,0}
- {:RE7} {INCR temp}
- {ROPE %msgsdir%A%a\%ch.MSG,RE8}
- {SETV mx,9} {SETV dline,%ch}
- {LENG %dline} {DECR mx,%_len} {SUBS cline,1,%mx, }
- {SEND ^M%an0%%dline%%cline}
- {SETV mx,26}
- {READ dline} {SUBS dline,1,25,%dline}
- {LENG %dline} {DECR mx,%_len} {SUBS cline,1,%mx, }
- {SEND %an3%%dline%%cline}
- {SETV mx,26}
- {READ dline} {SUBS dline,1,25,%dline}
- {LENG %dline} {DECR mx,%_len} {SUBS cline,1,%mx, }
- {SEND %an1%%dline%%cline}
- {SETV mx,18}
- {READ dline} {SUBS dline,1,18,%dline}
- {LENG %dline} {DECR mx,%_len} {SUBS cline,1,%mx, }
- {SEND %an4%%dline%%cline^J^M}
- {RCLO}
- {:RE8} {INCR ch} {COMP ch,%himsgno} {IFCO-G RE9}
- {IFEX %msgsdir%A%a\%ch.MSG,,RE8}
- {COMP temp,20} {IFCO RE11}
- {GOTO RE7}
- {:RE11} {SETV aa,%ch}
- {CALL screen_full}
- {COMP ch,y} {IFCO RE12}
- {COMP expert,ON} {IFCO MB4,MB8}
- {:RE12} {SETV ch,%aa}
- {GOTO RE5}
- {:RE6} {IFEX %msgsdir%A%a\%ch.MSG,RE5}
- {:RE3} {SEND ^J^M%an1%That message does not exist.^J^M}
- {GOTO RE1}
- {:RE9} {SEND ^J^M%an7%<End of messages in %an5%%bname%%an7>}
- {:RE10} {COMP expert,ON} {IFCO MB4}
- {CALL press_any_key}
- {GOTO MB8}
-
- {:trace}
- {COMP trace,} {IFCO TR1}
- {SEND race}
- {INST trace,/} {IFCO ,TR1}
- {SETV ch,%_pos} {DECR ch}
- {SUBS temp,1,%ch,%trace}
- {SETV ch,%_pos} {INCR ch}
- {SUBS dline,%ch,8,%trace}
- {:TR3} {SETV dump_file,%msgsdir%A%temp\%dline.MSG}
- {IFEX %dump_file,,TR1}
- {CALL cls}
- {SEND ^J^M%an7%TRACE: %an0%Msg# %dline in area %temp^J^M^J}
- {CALL dsp_file}
- {SEND ^J^M^J%an0<%an7%SPACEBAR %an0= Trace this message, %an7%ENTER %an0= quit Trace> }
- {:TR4} {GETS-H ch,1,FW50}
- {COMP ch, } {IFCO trace}
- {SEND ^H} {GOTO TR4}
- {:TR2} {SETV temp,%a} {SETV dline,%trace} {GOTO TR3}
- {:TR1} {SEND ^J^M^J%an1%Can't trace message.^J^M} {PAUS 1} {GOTO FW50}
-
- {:new_all}
- {PUSH FW6}
- {SETV n,1} {SETV ta,%a} {SETV a,0}
- {GOTO FW20}
-
- {:new_this}
- {PUSH FW6}
- {COMP msgno,%himsgno} {IFCO-G ,FW2}
- {SEND ^J^M^J%an7<End of messages in %an5%%bname%%an7>^J^M^J}
- {POPS}
- {GOTO MB5}
-
- {:read}
- {PUSH FW6}
- {SETV msgno,%ch}
- {:FW2} {COMP msgno,%lomsgno} {IFCO-GE FW24}
- {INCR msgno} {GOTO FW2}
- {:FW24} {COMP msgno,%himsgno} {IFCO-G FW11}
- {IFEX %msgsdir%A%a\%msgno.MSG,FW21}
- {INCR msgno} {GOTO FW2}
- {:FW21} {INCR reads}
- {:FW19} {CALL cls}
- {SETV dump_file,%msgsdir%A%a\%msgno.MSG}
- {SEND ^J^M%an0%Msg# %msgno of %himsgno in %an2%%bname^J^M^J}
- {CALL dsp_file}
- {SETE time_out}
- {INCR msgno}
-
- {:FW6}
- {DECR msgno}
- {SEND ^J^M%an7[%msgno/%himsgno] %an2%%bname}
- {INCR msgno}
- {SETV ch,%tlc} {DECR ch,%_ela}
- {SEND ^J^M%an0%Mins Left: %ch}
- {SEND ^J^M%an3%Read Menu%an0: %an7%R%an0%eply, %an7%P%an0%rev, %an7%A%an0%gain, %an7%N%an0%ext, %an7%T%an0%race, %an7%J%an0%ump}
- {COMP al,%sal} {IFCO-L FW26}
- {SEND , %an7%S%an0%ysop}
- {:FW26} {SEND or %an7%Q%an0%uit?%an3 }
- {SETG 300,time_out}
- {:FW14} {CALL cd}
- {GETS-H ch,1,FW2}
- {COMP ch,r} {IFCO ,FW17} {COMP al,0} {IFCO FW18}
- {:FW17} {COMP ch,a} {IFCO FW1}
- {COMP ch,n} {IFCO FW16}
- {COMP ch,p} {IFCO FW4}
- {COMP ch,r} {IFCO FW5}
- {COMP ch,j} {IFCO FW22}
- {COMP ch,s} {IFCO FW27}
- {COMP ch,t} {IFCO trace}
- {COMP ch,q} {IFCO FW8}
- {:FW} {SEND ^H} {GOTO FW14}
- {:FW18} {SEND ^J^M%an1%Sorry, your access level does not allow.}
- {GOTO FW6}
- {:FW1} {SEND gain}
- {:FW50} {DECR msgno}
- {GOTO FW19}
- {:FW16} {SEND ext}
- {GOTO FW2}
- {:FW4} {SEND revious}
- {SETV temp,%lomsgno} {INCR temp}
- {:FW25} {COMP msgno,%temp} {IFCO ,FW10}
- {SEND ^J^M%an7<Beginning of messages in %an5%%bname%%an7>^J^M} {GOTO FW6}
- {:FW10} {DECR msgno,2}
- {IFEX %msgsdir%A%a\%msgno.MSG,FW21}
- {INCR msgno} {GOTO FW25}
- {:FW22} {SEND ump^J^M^J}
- {:FW23} {SEND ^M%an4%Enter a message number to jump to. %an0(%lomsgno-%himsgno) : %an3 ^H^H^H^H^H^H^H^H}
- {SETG 120,FW6}
- {GETS ch,8,FW6}
- {COMP ch,1} {IFCO-L FW23}
- {COMP ch,%lomsgno} {IFCO-GE FW47}
- {SETV ch,%lomsgno} {GOTO FW48}
- {:FW47} {COMP ch,%himsgno} {IFCO-LE FW48}
- {SETV ch,%himsgno}
- {:FW48} {IFEX %msgsdir%A%a\%ch.MSG,FW49}
- {SEND ^J^M%an7%Message #%ch not found.} {PAUS 1}
- {INCR ch} {GOTO FW47}
- {:FW49} {SETV msgno,%ch}
- {GOTO FW2}
- {:FW5} {SEND eply^J^M}
- {DECR msgno}
- {SETV r,1} {SETV trace,%a/%msgno}
- {SETV quotemsg,%msgsdir%A%a\%msgno.MSG}
- {ROPE %quotemsg,FW6}
- {READ dline} {READ to} {READ subj} {RCLO}
- {INCR msgno}
- {CALL editor}
- {GOTO FW6}
- {:FW8} {SEND uit^J^M}
- {CALL update_index}
- {:FW9} {POPS}
- {:FW3} {RETURN}
-
- {:FW11} {COMP n,1} {IFCO ,FW15}
- {SEND ^J^M^J%an7<Finished scanning %an5%%bname%%an7>^J^M}
- {CALL update_index}
- {:FW20} {INCR a}
- {COMP a,%mhigh} {IFCO-G FW13}
- {IFEX %msgsdir%A%a.BAS,,FW20}
- {ROPE %msgsdir%A%a.BAS,FW20} {READ bname} {READ bal} {RCLO}
- {COMP al,%bal} {IFCO-L FW20}
- {CALL read_baseinfo}
- {CALL cls}
- {SEND ^J^M^J%an0 New Scanning %an2%%bname} {PAUS 1}
- {COMP msgno,%himsgno} {IFCO-G FW20,FW2}
- {:FW13} {SETV a,%ta} {SETV ta}
- {CALL cls}
- {SEND ^J^M^J%an7<End of available messages>^J^M}
- {COMP expert,ON} {IFCO FW9}
- {CALL press_any_key}
- {GOTO FW9}
- {:FW15} {SEND ^J^M%an7<End of messages in %an5%%bname%%an7>^J^M}
- {CALL update_index}
- {GOTO FW9}
-
- {:FW27} {SEND ysop^J^M}
- {:FW28} {SEND ^J^M%an1%Sysop Menu%an0: %an7%D%an0%elete,%an7 E%an0%dit,%an7 M%an0%ove or%an7 Q%an0%uit? %an1}
- {:FW29} {CALL cd}
- {GETS-H ch,1,FW30}
- {COMP ch,d} {IFCO FW31}
- {COMP ch,e} {IFCO FW45}
- {COMP ch,m} {IFCO FW40}
- {COMP ch,q} {IFCO FW30}
- {SEND ^H} {GOTO FW29}
-
- {:FW30} {SEND ^J^M} {GOTO FW6}
- {:FW31} {SEND elete^J^M}
- {SEND ^J^M%an7%DELETE %an1%this message? %an0(y,%an7%N%an0) :%an1 }
- {:FW32} {GETS ch,1,FW28}
- {COMP ch,n} {IFCO FW28}
- {COMP ch,y} {IFCO FW33}
- {SEND ^H} {GOTO FW32}
- {:FW33} {SEND ^J^M}
- {DECR msgno}
- {EXEC-N DEL %msgsdir%A%a\%msgno.MSG}
- {CALL renumber}
- {INCR msgno}
- {SEND %an7%Message deleted.} {PAUS 1}
- {GOTO FW2}
-
- {:FW40} {SEND ove^J^M^J}
- {:FW41} {SEND ^M%an7%MOVE %an3%this message to which message area? %an0(1-%mhigh, ENTER=quit) :%an3 ^H^H}
- {GETS ch,2,FW28}
- {COMP ch,1} {IFCO-L FW41}
- {COMP ch,%a} {IFCO FW41}
- {COMP ch,%mhigh} {IFCO-G FW41}
- {IFEX %msgsdir%A%ch.BAS,,FW41}
- {ROPE %msgsdir%A%ch.BAS,FW41}
- {READ dline} {READ temp} {RCLO}
- {COMP temp,%al} {IFCO-G FW41}
- {ROPE %msgsdir%A%ch.BAS,FW41}
- {READ dline} {READ temp} {READ temp} {READ temp} {READ temp} {RCLO}
- {INCR temp}
- {SEND ^J^M^J%an7%Move this message to %an3%%dline%%an7? %an0(y,%an7%N%an0) : }
- {:FW42} {GETS aa,1,FW43}
- {COMP aa,n} {IFCO FW43}
- {COMP aa,y} {IFCO FW44}
- {SEND ^H} {GOTO FW42}
- {:FW43} {SEND ^J^M^J} {GOTO FW41}
- {:FW44} {SEND ^J^M%an3%Moving message...}
- {DECR msgno}
- {EXEC-N COPY %msgsdir%A%a\%msgno.MSG %msgsdir%A%ch\%temp.MSG}
- {EXEC-N DEL %msgsdir%A%a\%msgno.MSG}
- {CALL renumber}
- {SETV temp,%msgno} {SETV aa,%a} {SETV a,%ch}
- {CALL read_baseinfo}
- {INCR %himsgno}
- {CALL update_baseinfo}
- {CALL del_xs}
- {SETV a,%aa} {SETV aa}
- {CALL read_baseinfo}
- {SETV msgno,%temp}
- {INCR msgno}
- {GOTO FW2}
-
- {:renumber}
- {COMP lomsgno,%himsgno} {IFCO ,FW34}
- {SETV lomsgno,1} {SETV himsgno,0} {SETV msgno,0} {GOTO FW37}
- {:FW34} {COMP msgno,%himsgno} {IFCO ,FW35}
- {:FW36} {DECR himsgno} {DECR msgno}
- {IFEX %msgsdir%A%a\%himsgno.MSG,FW37,FW36}
- {:FW35} {COMP msgno,%lomsgno} {IFCO ,FW38}
- {:FW39} {INCR lomsgno}
- {IFEX %msgsdir%A%a\%lomsgno.MSG,,FW39}
- {:FW37} {CALL update_baseinfo}
- {:FW38} {RETURN}
-
- {:FW45} {SEND dit^J^M}
- {DECR msgno}
- {COMP mspeed,LOCAL} {IFCO ,FW46}
- {EDIT %msgsdir%A%a\%msgno.MSG}
- {GOTO FW19}
- {:FW46} {SETV em,1}
- {SETV dump_file,%msgsdir%A%a\%msgno.MSG}
- {SETV lineno,0}
- {SEND %an0%Loading...}
- {ROPE %dump_file,CL1}
- {READ edline} {READ edline} {READ edline}
- {READ edline} {READ edline} {READ edline}
- {:CL2} {READ edline}
- {INCR lineno} {GOTO CL2}
- {:CL1} {WOPE-A %dump_file}
- {GOTO edit_system}
-
- {:editor}
- {CALL cls}
- {INCR himsgno}
- {SETV dump_file,%msgsdir%A%a\%himsgno.MSG}
- {COMP r,1} {IFCO E1}
- {SETV trace,0}
- {SETV to,Everyone}
- {:E1} {SEND ^J^M%an0 (Press ENTER for "%an7%%to%%an0")^J^M}
- {SEND %an7%To : %an12 ^M}
- {SEND %an7%To : %an12}
- {SETG 120,time_out}
- {CALL cd}
- {GETS t,30,E12}
- {SETV to,%t}
- {:E2} {SEND ^J^M^J} {COMP r,1} {IFCO ,E3}
- {SEND %an0 (Press ENTER for "%an7%%subj%%an0")^J^M}
- {:E3} {SEND ^M%an7%Subj: %an12 ^M}
- {SEND %an7%Subj: %an12}
- {COMP r,1} {IFCO ,E5}
- {CALL cd}
- {GETS sub,30,E13}
- {SETV %subj,%sub} {SETV sub}
- {SEND ^J^M}
- {GOTO E6}
- {:E5} {SETG 120,time_out}
- {CALL cd}
- {GETS subj,30,E3}
- {SEND ^J^M}
- {:E6} {WOPE %dump_file}
- {SETV open,yy}
- {WRIT %to}
- {SEND ^J^M%an4%Anonymous? %an0(y,%an7%N%an0) : }
- {:AN} {GETS-H ch,1,AN1}
- {COMP ch,n} {IFCO AN1}
- {COMP ch,y} {IFCO AN2}
- {SEND ^H} {GOTO AN}
- {:AN1} {WRIT %login_name} {GOTO AN3}
- {:AN2} {WRIT [anonymous]}
- {:AN3} {WRIT %subj}
- {WRIT %_dat %_tim}
- {WRIT %trace} {SETV trace}
- {WRIT }
- {SETV lineno,0}
- {SEND ^J^M^J%an7%Maximum of %max lines.^J^M}
- {SEND %an1-------------%an0 /s - save %an1-------%an0 /e - editor %an1-------%an0 /abt - abort %an1--------------^J^M}
- {COMP r,1} {IFCO ,E4}
- {SEND %an1-------------------------------%an0 /q - quoter %an1-----------------------------------^J^M}
- {:E4} {SETV dline}
- {:E7} {SEND ^J^M%an3%%dline}
- {SETG 240,E10}
- {GETS-AH dline,78,E18}
- {COMP dline,/e} {IFCO edit_system}
- {COMP dline,/q} {IFCO quote}
- {COMP dline,/s} {IFCO E9}
- {COMP dline,/abt} {IFCO E10}
- {SETV dline, %dline}
- {LENG %dline} {COMP %_len,78} {IFCO-LE E8}
- {SETV ccount,80} {SETV temp,0}
- {:E15} {DECR ccount} {INCR temp}
- {COMP ccount,60} {IFCO-LE E8}
- {SUBS ch,%ccount,1,%dline}
- {COMP ch, } {IFCO ,E15}
- {COMP ccount,79} {IFCO E8}
- {SETV ch,0}
- {:E16} {INCR ch} {SEND ^H}
- {COMP ch,%temp} {IFCO ,E16}
- {SETV ch,78} {DECR ch,%temp}
- {SUBS cline,2,%ch,%dline}
- {WRIT %cline} {SETV cline}
- {INCR ccount}
- {SUBS dline,%ccount,%temp,%dline}
- {INCR lineno} {COMP lineno,%max} {IFCO-LE E7,E17}
- {:E8} {SUBS dline,2,100,%dline}
- {:E18} {WRIT %dline}
- {INCR lineno} {COMP lineno,%max} {IFCO-LE E4}
- {:E17} {SEND ^J^M%an7%You have reached the line limit.^J^M} {GOTO edit_system}
- {:E9} {WCLO}
- {SEND ^J^M%an1%Saving}
- {COMP em,1} {IFCO E11}
- {SEND #%himsgno...}
- {CALL read_data}
- {INCR pub}
- {SETV ftime,%_tim}
- {CALL write_data}
- {WOPE-A %datadir%LOG-1.LOG} {WRIT %_tim : Posted "%subj" on %bname%%an0} {WCLO}
- {CALL update_baseinfo}
- {CALL del_xs}
- {GOTO E11}
- {:E10} {WCLO}
- {EXEC-N DEL %dump_file}
- {SEND ^J^M%an1%Message aborted and deleted.^J^M} {PAUS 1}
- {DECR himsgno}
-
- {:E11} {SETV r} {SETV dline} {SETV open} {SETV subj} {SETV to}
- {SETV trace} {SETV lineno}
- {COMP em,1} {SETV em} {IFCO FW19}
- {RETURN}
-
- {:E12} {SEND %to}
- {GOTO E2}
- {:E13} {SEND %subj^J^M}
- {GOTO E6}
-
- {:del_xs}
- {COMP %maxmsg,0} {IFCO E21}
- {COMP himsgno,%maxmsg} {IFCO-LE E21}
- {SETV ch,%himsgno} {DECR ch,%maxmsg}
- {:E19} {IFEX %msgsdir%A%a\%lomsgno.MSG,,E20}
- {EXEC-N DEL %msgsdir%A%a\%lomsgno.MSG}
- {:E20} {INCR lomsgno}
- {COMP lomsgno,%ch} {IFCO-LE E19}
- {CALL update_baseinfo}
- {:E21} {SEND %an0%Ok}
- {RETURN}
-
- {:update_index}
- {IFEX %msgsdir%A%a.IND,,UIX5}
- {SEND %an0%Updating index...}
- {ROPE %msgsdir%A%a.IND,UIX4}
- {WOPE %datadir%TEMP.000}
- {SETV mic,0}
- {:UIX1} {INCR mic} {READ mi}
- {COMP mic,%userno} {IFCO UIX2}
- {WRIT %mi} {GOTO UIX1}
- {:UIX2} {WRIT %msgno}
- {:UIX3} {READ mi} {WRIT %mi} {GOTO UIX3}
- {:UIX4} {WCLO}
- {EXEC-N COPY %datadir%TEMP.000 %msgsdir%A%a.IND}
- {SETV mic} {SETV mi}
- {:UIX5} {RETURN}
-
- {:update_baseinfo}
- {WOPE %msgsdir%A%a.BAS}
- {WRIT %bname}
- {WRIT %bal}
- {WRIT %maxmsg}
- {WRIT %lomsgno}
- {WRIT %himsgno}
- {WCLO}
- {RETURN}
-
- {:read_baseinfo}
- {ROPE %msgsdir%A%a.BAS,RB1}
- {READ bname}
- {READ bal}
- {READ maxmsg}
- {READ lomsgno}
- {READ himsgno}
- {RCLO}
- {ROPE %msgsdir%A%a.IND,RB1}
- {SETV mic,0}
- {:RB2} {READ msgno} {INCR mic}
- {COMP mic,%userno} {IFCO ,RB2}
- {RCLO}
- {:RB1} {SETV mic}
- {RETURN}
-
- {:find_line}
- {SEND %an7%Searching...}
- {ROPE %datadir%RTEMP.000,FL7}
- {READ edline} {READ edline} {READ edline}
- {READ edline} {READ edline} {READ edline}
- {SETV ccount,0}
- {:FL6} {INCR ccount}
- {READ edline}
- {COMP ccount,%fline} {IFCO ,FL6}
- {RCLO}
- {:FL7} {SEND ^M ^M}
- {COMP edline,&▀▀▀▀▀▀ Quote ▀▀▀▀▀▀} {IFCO ,FL8}
- {SETV edline,%an4▀▀▀▀▀▀ %an7%Quote %an4▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀%an7}
- {GOTO FL9}
- {:FL8} {COMP edline,&▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄} {IFCO ,FL9}
- {SETV edline,%an4▄▄▄▄▄▄ %an7%UnQuote %an4▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄%an0}
- {:FL9} {RETURN}
-
- {:line_update}
- {SEND %an7%Updating...}
- {ROPE %datadir%RTEMP.000,FL3}
- {WOPE %datadir%WTEMP.000}
- {READ dline} {WRIT %dline} {READ dline} {WRIT %dline}
- {READ dline} {WRIT %dline} {READ dline} {WRIT %dline}
- {READ dline} {WRIT %dline} {READ dline} {WRIT %dline}
- {COMP t,2} {IFCO ,FL}
- {COMP ccount,0} {IFCO FL5}
- {:FL} {SETV temp,0}
- {:FL0} {INCR temp}
- {READ dline}
- {COMP temp,%ccount} {IFCO FL1}
- {WRIT %dline}
- {GOTO FL0}
- {:FL1} {COMP t,1} {IFCO FL4}
- {COMP t,2} {IFCO ,FL5}
- {WRIT %dline}
- {:FL5} {WRIT %edline}
- {:FL2} {INCR ccount}
- {:FL4} {READ dline} {WRIT %dline}
- {GOTO FL2}
- {:FL3} {WCLO}
- {EXEC-N COPY %datadir%WTEMP.000 %datadir%RTEMP.000}
- {SETV dline}
- {SEND ^M ^M}
- {RETURN}
-
- {:edit_system}
- {SEND ^M%an0%Loading...}
- {WCLO}
- {EXEC-N COPY %dump_file %datadir%WTEMP.000}
- {EXEC-N COPY %datadir%WTEMP.000 %datadir%RTEMP.000}
- {SEND ^M ^M}
- {:ES4} {SETV t}
- {SEND ^J^M%an1%Editor: %an7%A%an0%bort,%an7%C%an0%ont,%an7%D%an0%elete,%an7%E%an0%dit,%an7%I%an0%nsert,%an7%L%an0%ist,%an7%R%an0%eplace,%an7%S%an0%ave: %an3}
- {:ES1} {SETG 120,time_out}
- {GETS-H ch,1,ES1}
- {COMP ch,a} {IFCO abort}
- {COMP ch,c} {IFCO continue}
- {COMP ch,d} {IFCO delete}
- {COMP ch,e} {IFCO edit_line}
- {COMP ch,i} {IFCO insert}
- {COMP ch,l} {IFCO list}
- {COMP ch,r} {IFCO replace}
- {COMP ch,s} {IFCO save}
- {:ES3} {SEND ^H} {GOTO ES1}
-
- {:abort}
- {COMP em,1} {IFCO ES3}
- {SEND bort^J^M}
- {SETV edline} {SETV fline}
- {EXEC-N DEL %datadir%?TEMP.000}
- {WOPE %dump_file}
- {GOTO E10}
-
- {:continue}
- {COMP lineno,%max} {IFCO-G ES3}
- {SEND ontinue^J^M}
- {SEND %an7%One moment...}
- {EXEC-N COPY %datadir%WTEMP.000 %dump_file}
- {SEND ^M%an7%Ok. Carry on... :)%an3^J^M}
- {WOPE-A %dump_file}
- {GOTO E4}
-
- {:delete}
- {SEND elete^J^M^J}
- {:D5} {SEND ^M%an4%Line # to DELETE:%an0 ^H^H^H}
- {GETS fline,3,R1}
- {COMP fline,1} {IFCO-L D5}
- {COMP fline,%lineno} {IFCO-G D5}
- {SEND ^J^M}
- {CALL find_line}
- {SEND ^J^M%an0%%edline^J^M}
- {SEND ^J^M%an7%DELETE this line? %an0(%an7%Y%an0,n) :%an7 }
- {:D3} {GETS-H ch,1,D4}
- {COMP ch,y} {IFCO D4}
- {COMP ch,n} {IFCO R1}
- {SEND ^H} {GOTO D3}
- {:D4} {SEND ^J^M}
- {SETV edline}
- {SETV t,1} {CALL line_update} {DECR lineno}
- {SEND %an0%Line deleted.^J^M}
- {:D1} {GOTO ES4}
- {:D2} {SEND ^H} {GOTO D3}
-
- {:edit_line}
- {SEND dit^J^M^J}
- {:EL5} {SEND ^M%an4%Line # to EDIT:%an0 ^H^H^H}
- {GETS fline,3,R1}
- {COMP fline,1} {IFCO-L EL5}
- {COMP fline,%lineno} {IFCO-G EL5}
- {SEND ^J^M}
- {CALL find_line}
- {SEND ^J^M%an5%Line %fline reads:^J^M}
- {:EL0} {SEND %an0%%edline^J^M}
- {SEND ^J^M%an7%Type in the string to replace or press ENTER to abort.^J^M%an3}
- {GETS oldstr,60,EL1}
- {INST edline,%oldstr}
- {COMP %_pos,0} {IFCO-G EL2}
- {SEND ^J^M^J%an1%String not found.^J^M^J}
- {GOTO EL0}
- {:EL2} {SETV spos,%_pos}
- {LENG %oldstr} {SETV olen,%_len}
- {SETV mx,0}
- {SETV ch,79} {LENG %edline} {DECR ch,%_len}
- {INCR mx,%ch} {INCR mx,%olen}
- {SEND ^J^M^J%an7%Type replacement string or press ENTER to cut.^J^M%an3}
- {GETS newstr,%mx,EL3}
- {:EL3} {SEND ^J^M}
- {DECR spos}
- {SUBS lstr,1,%spos,%edline}
- {INCR spos,%olen} {INCR spos}
- {SUBS rstr,%spos,100,%edline}
- {SETV edline,%lstr%%newstr%%rstr%}
- {CALL line_update}
- {SETV ccount,%fline}
- {GOTO EL0}
- {:EL1} {SETV olen} {SETV spos} {SETV lstr} {SETV rstr} {SETV newstr} {SETV mx}
- {GOTO ES4}
-
- {:insert}
- {COMP lineno,%max} {IFCO-G ES3}
- {SEND nsert^J^M^J}
- {:I4} {SEND ^M%an4%Line # to insert BEFORE:%an0 ^H^H^H}
- {GETS fline,3,R1}
- {COMP fline,1} {IFCO-L I4}
- {COMP fline,%lineno} {IFCO-G I4}
- {SEND ^J^M}
- {COMP fline,1} {IFCO I2}
- {DECR fline} {CALL find_line} {INCR fline} {GOTO I3}
- {:I2} {SETV edline,*** BEGINNING OF MESSAGE ***}
- {:I3} {SEND ^J^M%an7%INSERTING between these lines:}
- {SEND ^J^M^J%an0%%edline^J^M}
- {CALL find_line}
- {SEND ^J^M%an0%%edline^J^M}
- {SEND ^J^M%an7%Type line to insert or press ENTER to abort.^J^M%an3}
- {GETS edline,79,I1}
- {SEND ^J^M}
- {DECR ccount}
- {SETV t,2} {CALL line_update} {INCR lineno}
- {SEND %an0%Line inserted.^J^M}
- {:I1} {GOTO ES4}
-
- {:list}
- {SEND ist^J^M}
- {SEND ^J^M%an7%Include line numbers? %an0(y,%an7%N%an0) : }
- {:L1} {GETS-H temp,1,L4}
- {COMP temp,y} {IFCO L4}
- {COMP temp,n} {IFCO L4}
- {SEND ^H} {GOTO L1}
- {:L4} {ROPE %datadir%RTEMP.000,L10}
- {READ dline} {READ dline} {READ dline}
- {READ dline} {READ dline} {READ dline}
- {SEND ^J^M^J%an3%Your message reads:^J^M^J%an0}
- {SETV ccount,0}
- {:L5} {SETV count,0}
- {:L6} {INCR ccount} {INCR count}
- {READ dline}
- {COMP dline,&▀▀▀▀▀▀ Quote ▀▀▀▀▀▀} {IFCO ,L11}
- {SETV dline,%an4▀▀▀▀▀▀ %an7%Quote %an4▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀%an7}
- {GOTO L12}
- {:L11} {COMP dline,&▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄} {IFCO ,L12}
- {SETV dline,%an4▄▄▄▄▄▄ %an7%UnQuote %an4▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄%an0}
- {:L12} {SEND %dline%%an0}
- {COMP temp,y} {IFCO ,L7}
- {SEND ^M%an7%%ccount:%an0}
- {:L7} {SEND ^J^M}
- {COMP count,21} {IFCO ,L6}
- {CALL screen_full}
- {COMP ch,y} {IFCO L5}
- {RCLO}
- {:L10} {SETV dline}
- {GOTO ES4}
-
- {:replace}
- {SEND eplace^J^M^J}
- {:R2} {SEND ^M%an4%Line # to REPLACE:%an0 ^H^H^H}
- {GETS fline,3,R1}
- {COMP fline,1} {IFCO-L R2}
- {COMP fline,%lineno} {IFCO-G R2}
- {SEND ^J^M}
- {CALL find_line}
- {SEND ^J^M%an5%Line %fline reads:^J^M}
- {SEND %an0%%edline^J^M}
- {SEND ^J^M%an7%Type new line or press ENTER to abort.^J^M%an3}
- {GETS edline,79,I1}
- {SEND ^J^M}
- {CALL line_update}
- {SEND %an0%Line replaced.}
- {:R1} {SEND ^J^M}
- {GOTO ES4}
-
- {:save}
- {SEND ave^J^M}
- {SETV edline} {SETV fline}
- {EXEC-N COPY %datadir%WTEMP.000 %dump_file}
- {EXEC-N DEL %datadir%?TEMP.000}
- {WOPE-A %dump_file}
- {GOTO E9}
-
- {:quote}
- {COMP r,1} {IFCO ,E4}
- {:Q1} {ROPE %quotemsg,Q7}
- {READ dline} {READ dline} {READ dline} {READ dline} {READ dline}
- {COMP dline,} {IFCO Q10}
- {READ dline}
- {:Q10} {SETV qcount,0}
- {SEND ^M ^M%an12 ^M}
- {SEND Quoting %to ...^J^M}
- {SEND %an12 SPACEBAR = Quote Line N = Skip Line Q = Quit ^J^M}
- {:Q2} {SEND ^M%an0%%an13 ^M}
- {READ dline}
- {COMP dline,&▀▀▀▀▀▀ Quote ▀▀▀▀▀▀} {IFCO ,Q12}
- {SETV dline,▀▀▀▀▀▀ Quote ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀}
- {GOTO Q5}
- {:Q12} {COMP dline,&▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄} {IFCO ,Q5}
- {SETV dline,▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄}
- {GOTO Q5}
- {:Q5} {SEND %an0%%dline}
- {SETG 60,time_out,n}
- {:Q6} {GETS-H ch,1,Q6}
- {COMP ch, } {IFCO Q3}
- {COMP ch,n} {IFCO Q2}
- {COMP ch,q} {IFCO ,Q6}
- {RCLO}
- {:Q7} {COMP qcount,0} {IFCO Q8}
- {WRIT &▄▄▄▄▄▄ UnQuote ▄▄▄▄▄▄}
- {WRIT }
- {INCR lineno,2}
- {:Q8} {SETV qcount}
- {SEND ^J^M%an7%Finished quoting. Please continue your message ...^J^M}
- {GOTO E4}
- {:Q3} {INCR qcount}
- {COMP qcount,1} {IFCO ,Q9}
- {WRIT &▀▀▀▀▀▀ Quote ▀▀▀▀▀▀}
- {INCR lineno}
- {:Q9} {WRIT %dline}
- {INCR lineno}
- {GOTO Q2}
-
-