I£SETF3 CMD¼NGETDATE CMDÖMPM CMD-€ÿÿÿÿ* SETF3.CMD (sets file attribute f3 to on for MPM systems) * dbase ii, under mpm, does NASTY things to dbf and ndx files * if the user defined attribute F3 isn't set in the file's FCB * use the following program to do this from within dbase * equiv. to 'SET FILE.DBF [F3=ON]' * JAMES BUMGARDNER DA PHANTOM RBBS 818-365-2996 ACCEPT "Dbf or Ndx file" TO var STORE !(var) TO var IF VAR="D" ACCEPT "DBF FILE TO SET" TO mfile USE &mfile ELSE ACCEPT "ASSOCIATED DBF FILE" TO mfile ACCEPT "NDX FILE TO SET" TO mndx USE &mfile INDEX &mndx ENDIF CLEAR IF PEEK(95)>127 ? "F3 ALREADY SET" RETURN ENDIF POKE 95, PEEK(95)+128 STORE 41984 TO addr SET CALL TO addr POKE ADDR, 17,92,00,14,30,205,05,00,201 CALL addr RETURN * get date James Bumgardner da Phantom RBBS 818-365-2996 * insert TOD date address for MPM system below * currently set for Altos 8000 * gets the date, if TOD hasn't been set, it prompts for date and writes it * into TOD address. SET TALK OFF * address (high, low) STORE PEEK(addrl) TO d STORE PEEK(addrh)*256 TO d1 STORE d+d1 TO d STORE 84 TO y STORE 1 TO c * assume 84 at least STORE d-2191 TO d STORE "312931303130313130313031" TO m STORE VAL($(m,c,2)) TO mc DO WHILE d-mc > 0 STORE d-mc TO d STORE c+2 TO c IF C>23 STORE 1 TO c STORE y+1 TO y STORE y TO lc DO WHILE LC>3 STORE lc-4 TO lc ENDDO IF lc STORE "312831303130313130313031" TO m ELSE STORE "312931303130313130313031" TO m ENDIF ENDIF STORE VAL($(m,c,2)) TO mc ENDDO STORE c/2+1 TO c STORE STR(C,2) TO month STORE STR(D,2) TO day STORE STR(y,2) TO year STORE month+"/"+day+"/"+year TO dat SET DATE TO &dat * CHECK TO SEE IF DATE IS OK, IF NOT, GET IT IF $(DATE(),7,1) = "0" ACCEPT "Good Morning, Enter the correct date" TO dat SET DATE TO &dat STORE DATE() TO dat STORE VAL($(dat,1,2)) TO mc STORE VAL($(dat,4,2)) TO dc STORE VAL($(dat,7,2)) TO yc STORE yc TO lc DO WHILE lc>3 STORE lc-4 TO lc ENDDO IF lc STORE "031059090120151181212243273304334365" TO mon ELSE STORE "031060091121152182213244274305335366" TO mon ENDIF STORE mc-1 TO c IF c STORE dc+VAL($(mon,c*3-2,3)) TO dc ENDIF STORE 78 TO y DO WHILE y3 STORE lc-4 TO lc ENDDO IF lc STORE dc+365 TO dc ELSE STORE dc+366 TO dc ENDIF STORE y+1 TO y ENDDO STORE INT(dc/256) TO d2 STORE dc-(256*d2) TO d1 POKE 59707, d1, d2 ENDIF CLEAR RETURN * detach.cmd * use this program to temporarily leave dbase * and execute MPM commands * when you go back to dbase, everything will be as before * James Bumgardner da Phantom RBBS 818-365-2996 ? "detaching hit ^d to return to DBASE" store 41984 to addr set call to addr poke addr, 14,147,205,05,00,201 call addr RETURN