home *** CD-ROM | disk | FTP | other *** search
- ; Title : OVERVIEW.TSK Last Updated : September 5, 1991
- ; Author : Steve Johnson - FmP. Version : 1.60
- ; Purpose : Gives access to all other tasks in Shareware issue.
- ; Notes : Uses env. var. FMPDIR for forms
- GOTO 1INIT
- 1START
-
- move 0f800h to bbmask
- menu 1,"SMENU"
- option 1,31,34
- move hilite to main_choice
- screen 1
- forms logon.ovr
- screen 0
- if choice = 31
- put bounce_bar
- forms formsname
- return
- fi
- put tml nowait
- move 8000h to bbmask
- menu 4,choice
- option 4,32
- put menus_help
- exitm
- option 4,33
- put forms_help
- exitm
- option 4,34
- move 0c000h to bbmask
- menu 5,b_bar
- option 5,30
- exitm
- option 5,31
- option 5,default
- if choice = 31
- move 'help' to fname
- else
- move display to fname
- fi
- move hilite to m_choice
- trim fname
- move 8018h to bbmask
- menu 6,fname
- option 6,1
- move m_choice to choice
- return 1
- option 6,41
- move m_choice to choice
- decrement choice
- if choice = 0
- move 8 to choice
- fi
- return 101
- option 6,42
- move m_choice to choice
- increment choice
- return 101
- option 6,30
- exitm
- endm 6
- exitm
- endm 5
- exitm
- endm 4
- forms formsname
- move true to bbdisp
- move main_choice to choice
- return
- option 1,1
- move 0c000h to bbmask
- menu 11,'INTMENU'
- option 11,31
- if hilite = 5 or hilite = 4
- move display to formname
- trim formname
- put formname nowait
- fi
- clear bbdisp
- move hilite to choice
- return
- option 11,1
- clear choice
- until choice = 31 ;<esc> not <f1> !
- move 8000h to bbmask
- put "OVERVIEW"
- increment choice
- if choice < 19
- move display to formname
- trim formname
- put formname wait 0 noclear
- clear bbdisp
- fi
- fi
- move 1 to choice
- return
- option 11,2
- move 08000h to bbmask
- clear choice
- menu 112,"DOC_MENU"
- option 112,1,3
- if no_comspec
- return
- fi
- move display to filename
- trim filename
- dir filename
- if found
- display normal cls
- RUN "list " filename
- if resp ne 0
- put "NO_COMSPEC"
- inkey char
- fi
- else
- cursor 10 14 "File " filename " not found - have you set FMPDIR?"
- cursor 11 14 'Press any key'
- inkey char
- fi
- return
- option 112,4
- sizevar c_dir 0
- user c_dir
- clear count min_missing missing
- insert c_dir
- put "DRIVE"
- if keyval = esc
- clear bbdisp
- return
- fi
- display normal cls 'Integrity check in progress.'
- display 2 'Any missing files will be highlighted...'
- until count = 43
- move entry count of filelist to filename
- trim filename
- if filename ne null
- combine c_dir '\' filename into string
- replace all '\\' of string with '\'
- userline "Looking for " string
- dir string
- add 1 to count giving group_id
- locate line column
- menu 3,group_id
- option 3,1
- display crlf 'Checking essential files from root of Issue disc)'
- exitm
- option 3,11
- display crlf 'Checking files required by OVERVIEW task (frozen in TMISSUE)'
- exitm
- option 3,25
- display crlf 'Checking files comprising EXAMPLE tasks set (frozen in TMEXAM)'
- exitm
- option 3,38
- display crlf 'Checking files comprising On-line MANUALS tasks (frozen in TMMANUAL)'
- option 3,default
- exitm
- endm 3
- if not found
- if filename ct '.MAC'
- replace '.MAC' of string with '.OVR'
- dir string
- replace '.OVR' of string with '.MAC'
- if found
- display crlf string
- locate line column
- cursor line 39 'OVR file found so MAC not required'
- fi
- fi
- if not found
- move true to missing
- if count < 17
- move true to min_missing
- fi
- locate line column
- if line < 22
- display crlf attention string
- lookfor STRING
- locate line column
- if found
- CURSOR LINE 39 normal '(' filename ' Accessible via APPEND)'
- else
- CURSOR LINE 39 normal '(' filename ' Not accessible via APPEND)'
- fi
- fi
- fi
- fi
- fi
- fi count
- if missing
- if not min_missing
- userline 'All files comprising minimal system are present Press any key...'
- else
- userline 'Not all files for even a minimal system are present. Press any key...'
- fi
- inkey char
- put missing_advice
- else
- userline "All files present. Press any key..."
- inkey char
- fi
- return
- option 112,5
- if no_comspec
- return
- fi
- if build@ = 1
- put notshare
- clear bbdisp
- return
- fi
- if build@ = 2
- put registered
- clear bbdisp
- return
- fi
- sizevar c_dir 0
- user c_dir
- clear count abort
- ; check files available first
- clear count
- until count = 12
- combine c_dir '\' entry count of iss_source into string
- replace all '\\' of string with '\'
- trim string
- DIR string
- IF NOT FOUND
- insert string
- put NOSOURCE noclear
- clear bbdisp
- return
- fi
- fi count
- put repdrive noclear
- if anyfk
- return
- fi
- get char
- upper char
- move ddrive to locn
- select char
- user '\'
- if resp ne 0
- select locn
- user c_dir
- cursor 10 14 'Sorry: Bad response from drive ' char ':' 15
- cursor 11 14 'Suspect no disc or not formatted. Press any key...'
- inkey char
- return
- else
- sizevar string 12
- dspace
- move display to string
- if string < rep_space
- select locn
- user c_dir
- cursor 10 14 'Sorry: Insufficient space on drive ' char ':' 10
- cursor 11 14 '(requires 260000 bytes) Press any key...'
- inkey char
- return
- fi
- fi
- select locn
- user c_dir
- clear count
- until count = 12
- move entry count of iss_source to filename
- combine char ':' entry count of iss_SOURCE into string
- cursor 10 14 50
- trim filename string
- cursor 10 14 "Copying " filename ' to ' string
- run "copy " filename 1 string " >nul:"
- dir string
- if not found
- move true to errors
- insert filename string
- put 'NODEST' noclear
- return
- fi
- fi count
- put replicate_ok
- return
- option 112,6
- option 112,30
- move 2 to choice
- move true to bbdisp
- return 1
- endm 112
- move 2 to choice
- return
- option 11,3
- clear choice
- if conventional
- menu 113,"CONVENTIONAL"
- else
- move 8000h to bbmask
- menu 113,"USER_INTERFACE"
- fi
- option 113,1
- if conventional
- CLEAR CONVENTIONAL
- else
- MOVE TRUE TO CONVENTIONAL
- fi
- display cls
- cursor 20 10 bright normal
- display "Press a key to select USER INTERFACE again to see the contrast"
- wait 5
- move 3 to choice
- move 2 to timer
- return 101
- option 113,2
- display cls bright normal
- cursor 12 10 "The ASK command provides a conversational mode of input."
- cursor 13 10 "Here the text is being placed 'manually' on screen by"
- cursor 14 10 "the cursor command. "
- option 113,3
- clear continue
- until continue
- if choice = 2
- cursor 16 10
- ask continue "Ready to go on (Y or N)"
- else
- put "GOON" noclear
- get continue
- fi
- fi
- return
- option 113,4
- move ldate to long_date
- move time to current_time
- insert long_date current_time
- put "TEXT"
- return
- option 113,5
- put "OVERLAY" noclear
- return
- option 113,6
- put "WINDOW"
- return
- option 113,7,8
- move choice to m_choice
- clear done continue
- until done
- trim current_time short_date string filename num logi
- fieldfill current_time short_date string filename num logi
- if m_choice = 7
- if continue
- put "DATACAPTURE" nodisp noclear
- else
- put "DATACAPTURE" noclear
- fi
- else
- if continue
- put "DATACAPTURE2" nodisp noclear
- else
- put "DATACAPTURE2" noclear
- fi
- fi
- if not anyfk
- get current_time short_date string filename num logi
- display cls
- cursor 10 10 "I'll remember those values for next time!"
- move true to done
- else
- if fk1
- forms logon.ovr
- put forms_help
- move true to continue
- forms formsname
- else
- display cls
- move true to done
- cursor 10 10 "You cheated and pressed function key " FUNKEY
- if funkey = 10
- display ' or <esc>'
- fi
- fi
- fi
- fi
- cursor 12 10
- wait
- move m_choice to choice
- return
- option 113,30
- option 113,9
- move 3 to choice
- return 1
- endm 113
- move 5 to choice
- return
- option 11,4
- option 11,5
- go 1CHECK_AVAILABILITY
- option 11,6
- option 11,30
- move 1 to choice
- return 1
- endm 11
- option 1,2
- move 0c000h to bbmask
- clear choice
- menu 12,'EUMENU'
- option 12,31
- move display to formname
- trim formname
- put formname nowait
- clear bbdisp
- move hilite to choice
- return ; re-display current menu
- option 12,1
- option 12,2
- option 12,3
- goto 1CHECK_AVAILABILITY
- option 12,30
- move 2 to choice
- return 1
- emdm 12
- option 1,3
- move 0c000h to bbmask
- clear choice
- menu 13,"TMENU"
- option 13,30
- move 3 to choice
- return 1
- option 13,31 ;F1 key pressed
- move display to formname
- trim formname
- put formname wait 0 noclear
- clear bbdisp
- move hilite to choice
- return ; re-display current menu
- option 13,1,15
- goto 1CHECK_AVAILABILITY
- endm 13
- move 3 to choice
- return
- option 1,4
- move 0c000h to bbmask
- clear choice
- menu 14,'MANMENU'
- option 14,31
- move display to formname
- trim formname
- put formname nowait
- clear bbdisp
- move hilite to choice
- return ; re-display current menu
- option 14,1,4
- goto 1CHECK_AVAILABILITY
- option 14,30
- exitm
- endm 14
- move 4 to choice
- return
- option 1,5
- move hilite to main_choice
- clear choice
- put new_help nowait
- move 8000h to bbmask
- menu 7,"NEW"
- option 7,30
- exitm
- option 7,default
- move hilite to m_choice
- move hilite to num with lead_zeroes
- combine 'NEW' num into name
- move 8018h to bbmask
- menu 8,name
- option 8,41
- decrement m_choice
- option 8,42
- if choice = 42
- increment m_choice
- fi
- move m_choice to choice
- if choice = 0
- move 7 to choice
- fi
- return 101
- option 8,default
- exitm
- endm 8
- move m_choice to choice
- return
- endm 7
- move main_choice to choice
- return
- option 1,6
- option 1,30
- STOP
- endm 1
-
- 1CHECK_AVAILABILITY
- if no_comspec
- return
- fi
- move display to formname ; display contains topic text
- trim formname ; remove trailing spaces
- combine formname ".TSK" 9 into searchname
- trim searchname
- dir searchname
- if not found
- insert searchname
- if formname = 'SCRMAN' or formname = 'TMMAN' or formname sw 'PRINT'
- move 'TMMANUAL' to formname
- else
- if formname = 'SMART' or formname = 'CONFIG' or formname = 'STANDARD' or formname = 'INTRO'
- move 'TMISSUE ' to formname
- else
- move 'TMEXAM ' to formname
- fi
- fi
- insert formname
- if ddrive = 'A' or ddrive = 'B'
- put 'NO_ROOM' noclear
- return
- fi
- insert fmpdir
- put "NOT_AVAILABLE" noclear
- get create
- if not create
- clear bbdisp
- return
- fi
- move 'A' to char
- trim formname
- find iss_source sw formname
- move entry row of iss_source to filename
- trim filename
- lookfor filename
- until found
- put "ISSUE_DISC" noclear
- if funkey = 10
- clear bbdisp
- return
- fi
- get char
- combine char ':' formname '.EXE' into string
- lookfor string
- if found
- run 'copy >nul: ' string 1 filename
- fi
- fi
- popscreen screenid
- display cls
- run formname
- locate line column
- clear screen_line
- scanvid line giving screen_line
- move searchname to formname
- replace '.TSK' of formname with null
- popdown screenid
- popfree screenid
- if screen_line sw '[Y/N] N'
- clear bbdisp
- return
- fi
- fi
- IF NOT FOUND
- RETURN
- FI
- if formname ne 'NATO'
- combine formname ".ovr" 9 into searchname
- trim searchname
- lookfor searchname
- if not found
- put 'CREATE_OVR'
- get create
- if not create
- clear bbdisp
- return
- fi
- popscreen screenid
- display cls
- displayln making_message
- run "scr /i/q " formname
- if elevel = 0
- combine formname '.MAC' into macname
- move '1RETURNSPACE' to returnlocn
- GO 1SAVESPACE
- 1RETURNSPACE
- else
- clear create
- if elevel = 1
- erase searchname
- insert entry elevel of scr_errors
- put 'FAILED_OVR' noclear
- fi
- fi
- popdown screenid
- popfree screenid
- fi
- fi
- IF FOUND OR CREATE
- if formname = "CONFIG" or formname = "STANDARD"
- run "tm /o" flags 1 formname
- else
- run "tm" 1 flags 1 formname
- fi
- if elevel = 0
- cursor 22 40 attention " OVERVIEW Press any key to continue " normal
- else
- cursor 10 0 attention " OVERVIEW Problem encountered by Taskmaster" normal
- if elevel = 44
- cursor 11 0 'Suspect forms (OVR) file corruption. Erasing '
- trim formname
- append '.OVR' to formname
- display formname
- erase formname
- fi
- fi
- inkey char
- FI
- return
-
- 1INIT
-
- hexvar esc,1b
- hexvar crlf,0d0a
- int count
- int column
- int line
- int m_choice
- int main_choice
- int message_line
- int screenid
- int group_id
-
- logical abort
- logical conventional
- logical continue
- logical create
- logical done
- logical errors
- logical min_missing
- logical missing
- logical no_comspec
- logical savespace
-
- var c_dir,68 ;drive and FMPDIR
- var char,1
- var COMSPEC,68,$COMSPEC
- var current_time,5
- var discspace,12 ;free disc space returned into here
- var rep_space,12,' 260000'
- var filename,14,"OVERVIEW"
- var fname,20
- var macname,12,'OVERVIEW.MAC'
- var flags,4
- var fmpdir,68,$FMPDIR
- var formname,13
- var formsname,50
- var locn,1
- var logi,1
- var long_date,11
- var making_message,56,"Attempting to create an OVR file with SCR - Please wait!"
- var minlegal,12,' 100000' ;disc space warning limit
- var menu_name,20,"USER_INTERFACE"
- var null,1
- var name,6
- var num,2
- var o_dir,68 ;The original directory
- var returnlocn,12,'2RETURNSPACE'
- var screen_line,80
- var searchname,12
- var short_date,11
- var string,40
-
- var scr_errors,28,occurs 3,
- 'Success, no errors in source'
- 'Errors in source '
- 'Fatal error, e.g. file error'
-
- var filelist,12,occurs 43,
- 'TM.EXE ' ;0 in root
- 'VENDOR.DOC '
- 'LIST.COM '
- 'LICENCE.FMP '
- 'INSTALL.TSK '
- 'INSTALL.OVR '
- 'FMPVT52.DEF '
- 'LOGON.OVR '
- ' '
- ' ' ;9
- 'SCR.EXE ' ;10 in tmissue
- 'LICENCE.FMP '
- 'SHARETM.FMP '
- 'README.FMP '
- 'OVERVIEW.TSK'
- 'OVERVIEW.MAC'
- 'EXAMPLES.TMS'
- 'CONFIG.TMS '
- 'CONFIG.TSK '
- 'CATALOG.EUC '
- 'STANDARD.TSK'
- 'INTRO.TSK '
- 'INTRO.MAC '
- 'SMART.TSK ' ;23
- 'TEST.TSK ' ;24 in tmexam
- 'DIRECTOR.TSK'
- 'HVMENU.TSK '
- 'BROWSE.TSK '
- 'HELP.TSK '
- 'HELP.MAC '
- 'TMDEV.TSK '
- 'MENUONE.TSK '
- 'HOTEMENU.TSK'
- 'NATO.TSK '
- 'WORDPROC.TSK'
- 'SWEEP.TSK '
- 'WHEREIS.TSK '
- 'TMMAN.TSK ' ;37 in tmmanual
- 'TMMAN.MAC '
- 'SCRMAN.TSK '
- 'SCRMAN.MAC '
- 'PRINTMAN.TSK'
- 'PRINTSCR.TSK' ;42
-
- var iss_source,12,occurs 12,
- 'TM.EXE '
- 'TMISSUE.EXE '
- 'TMEXAM.EXE '
- 'TMMANUAL.EXE'
- 'FMPVT52.DEF '
- 'LOGON.OVR '
- 'VENDOR.DOC '
- 'LIST.COM '
- 'LICENCE.FMP '
- 'GO.BAT '
- 'INSTALL.TSK '
- 'INSTALL.OVR '
-
- vconst attention,79
- vconst bright,41
- vconst cel,55
- vconst cep,56
- vconst cls,11
- vconst normal,5
-
- end
-
- if fmpdir = null
- move "C:\FMP" to fmpdir
- fi
- sizevar o_dir 0
- if fmpdir sw "~:\"
- move fmpdir to formsname
- sizevar formsname 3
- append '*.*' to formsname
- dir formsname
- if resp = 0
- select fmpdir
- else
- displayln 'The logged drive is ' ddrive
- displayln 'OVERVIEW: Cannot select the drive specified in FMPDIR i.e.: '
- displayln FMPDIR
- stop
- fi
- fi
- user o_dir ;Save working directory into o_dir
- user fmpdir
- if resp ne 0
- displayln 'OVERVIEW: Cannot select the directory:'
- displayln FMPDIR
- displayln 'Please SET FMDIR=\dir where dir is place you installed to.'
- stop
- fi
- move 'OVERVIEW.OVR' to formsname
- lookfor formsname
- if not found
- forms logon.ovr ;in case /q and registered
- insert filename formsname
- put "NO_FMPDIR_FORMS"
- stop
- fi
- if not colour
- move "/m/o" to flags
- fi
- if comspec = null
- move "c:\command.com" to comspec
- fi
- dir *.tm
- if not found
- forms logon.ovr
- put "BOUNCE_BAR"
- put "TESTCARD"
- fi
- forms formsname
- clear current_time short_date string filename num logi
- dir comspec
- if not found
- move true to NO_COMSPEC
- append 20 to comspec
- insert comspec
- put "NO_COMSPEC"
- fi
- dir list.com
- if not found
- insert fmpdir
- put "NO_LIST"
- fi
- move true to hide
- move formsname to searchname
- go 1savespace
- 2RETURNSPACE
- GOBACK 1START
-
- 1SAVESPACE
- dspace
- move display to discspace
- if discspace < minlegal
- dir macname
- if found
- insert searchname macname macname
- put 'SAVE_SPACE'
- get savespace
- if savespace
- erase macname
- fi
- fi
- fi
- goback RETURNLOCN
-
- ENDTASK
- Forms source in separate file OVERVIEW.MAC.
- You may invoke TMISSUE to recreate OVERVIEW.MAC if deleted.
-