    DIM STRINGS$(100)[50]
    DIM FILE$(50)
    INPUT "WHERE ARE THE ADDRESSES(5 LINES/ADDRESS)? " FILE$
    OPEN #1,FILE$
    INPUT "WHERE TO PRINT LABELS? " FILE$
    CREATE #2,FILE$
    INPUT "SKIP HOW MANY LINES AT START OF FILE? " I
    FOR I=1 TO I DO INPUT #1,FILE$
    INPUT "HOW WIDE ARE THE LABELS? " LABELWIDTH
    INPUT "HOW MANY LABELS ACROSS THE PAGE? " LABELSACROSSPAGE
    INPUT "HOW MANY HORIZONTAL SPACES BETWEEN LABELS? " HORZSPACES
    INPUT "HOW MANY LINES DEEP ARE THE LABELS? " LABELDEPTH
    INPUT "HOW MANY BLANK LINES BETWEEN LABELS? " VERTSPACES
LOOP:
    REM READ A "ROW" OF LABELS
    FOR I=1 TO LABELSACROSSPAGE
        FOR J=1 TO 4
            INPUT #1,STRINGS$((I-1)*4+J)
            IF EOF(1) THEN STRINGS$[(I-1)*4+J]=""
        NEXT J
        INPUT #1,FILE$ \ ! READ EMPTY LINE BETWEEN ADDRESSES
        IF FILE$<>""
        THEN
            PRINT "****** LABEL FILE NOT FORMATTED PROPERLY, THE FOLLOWING MUST BE BLANK:"
            PRINT FILE$
            EXIT
        FI
    NEXT I
    REM PRINT A ROW OF LABELS
    FOR J=1 TO 4
        REM PRINT A LINE OF LABEL INFORMATION
        FOR I=1 TO LABELSACROSSPAGE
            IF LEN(STRINGS$[(I-1)*4+J])>LABELWIDTH
            THEN PRINT #2,STRINGS$[(I-1)*4+J](1,LABELWIDTH);
            ELSE PRINT #2,STRINGS$[(I-1)*4+J];
            IF I<LABELSACROSSPAGE
            THEN PRINT #2,TAB(I*(LABELWIDTH+HORZSPACES));
            ELSE PRINT #2
        NEXT I
    NEXT J
    FOR J=J TO LABELDEPTH+VERTSPACES DO PRINT #2
    IF EOF(1) THEN EXIT
    GOTO LOOP
    END
