
SIZEOF LC-FILE ITEM-ALLOT LC.BUFF

: name>  ( dcb 'ext #mast_item --- )
         LC.BUFF SWAP LCMAIN.DCT DICT-READ
         LC.BUFF LC.FNAME DUP 8 32 SCAN NIP 8 SWAP -	STRPCK
         SYS.DATA 30 BL SCAN DROP SYS.DATA - SYS.DATA
         SWAP ROT COUNT STRCAT STRPCK ROT TUCK NAME>HCB
         DUP HCB>N ROT +EXT SWAP NAME>HCB ;


: NAME>DCT ( dcb #mast_item --- )
           " .DCT" SWAP name> ;

: NAME>DAT ( dcb #mast_item --- )
           " .DAT" SWAP name> ;

: NAME>RPT " .RPT" SWAP name> ;

: NAME>VIEW " .VW" SWAP name> ;

: NAME>IDX ( icb #masm_item #field --- )
           0 <# # # #> " .X00" DUP >R 3 + SWAP CMOVE
           R> SWAP name> ;

: CHG-IDX  ( icb #num --- )
           0 <# # # #> " .X00" DUP >R 3 + SWAP CMOVE
           DUP HCB>N -EXT R> +EXT SWAP NAME>HCB ;

7 10 10 35 WINDOW ACTIVEW

' NO.COND LCMAIN.DCT LC.BUFF 0 LC.DESCR 30 DCT-CHOICE MASTERC

: @ACTIVES   ( title_addr --- 0 for escape, n+1 for database )
             LISTL SINGLE ACTIVEW
             OPEN-WINDOW
             LCMAIN.DCT OPEN-DICTIONARY
             ACTIVEW MASTERC DCT-CHOOSE
             ACTIVEW CLOSE-WINDOW ;
