home *** CD-ROM | disk | FTP | other *** search
- PROC startapp:
- LOCAL fname$(128),app%,als$(5),pgname$(40),apname$(8),extn$(4)
- LOCAL ap%,newfile%,cbyte$(1),pid%,cmdl$(128),ret%
- ap%=1 :newfile%=1
- WHILE 1
- dInit "Start application"
- dChoice ap%,"Application","Database,Word Processor,Agenda,Program Editor"
- dChoice newfile%,"Open","Existing file,New file"
- IF dialog=0 : CONTINUE : ENDIF
- VECTOR ap% :dbf,word,agn, prog :endv
- dbf:: fname$="\DAT\*.DBF" :pgname$="data"
- apname$="Data" :extn$=".DBF" :als$="" :GOTO d2
- word:: fname$="\WRD\*.WRD" :pgname$="word"
- apname$="Word" :extn$=".WRD" :als$="" :GOTO d2
- agn:: fname$="\AGN\*.AGN" :pgname$="agenda"
- apname$="Agenda" :extn$=".Agn" :als$="" :GOTO d2
- prog:: fname$="\OPL\*.OPL" :pgname$="word"
- apname$="Program" :extn$=".OPL" :als$="OROPO" :GOTO d2
- d2:: dInit "Chose file"
- IF newfile%=1
- dFile fname$,"Open:",0
- cbyte$="O"
- ELSE
- dFile fname$,"Create:",1
- cbyte$="C"
- ENDIF
- IF DIALOG=0 :CONTINUE :ENDIF
- pgname$="ROM::"+pgname$+".APP"+CHR$(0)
- cmdl$=cbyte$+apname$+CHR$(0)+extn$+" "+als$+CHR$(0)+fname$+CHR$(0)
- ret%=call($0187,addr(pgname$)+1,addr(cmdl$),0,0,addr(pid%))
- IF ret%<0
- pgname$=LEFT$(pgname$,LEN(pgname$)-1)
- PRINT "Couldn't start",pgname$
- PRINT err$(ret%) : GET : CONTINUE
- ENDIF
- CALL($0688,pid%)
- ENDWH
- ENDP
-