MSG2PAF.EXE Version 1.3, 10 Mar 1993 Copyright (c) 1993, Jack J. Chandler DESCRIPTION: MSG2PAF.EXE is a PAF utility designed to extract genealogical data from ASCII text files and 1) place them directly into a PAF Family Records Data Base or 2) create a GEDCOM in format 2.1/2.2 to be input to PAF or to other genealogical database software with GEDCOM capability. Text file input can be any ASCII text that contains data that is desirable to input to a genealogical database, primarily names, event dates and places, and notes. This current version of MSG2PAF.EXE accepts inputs for names of individuals, dates of Birth, Christening, Death, Burial, places of Birth and Death, title, sex, and five note lines of 78 characters each. MSG2PAF.EXE inputs these data directly into the PAF Family Records files as single, unattached individuals. Individual records are added to the end of the INDIV2.DAT file. Names not already existing in the NAME2.DAT file are added in the proper position in the name tree. Notes are added to the end of the NOTES2.DAT file. These individual records must be connected to their family groups from within PAF. It is recommended that MSG2PAF.EXE be used to import data into a separate PAF Family Records Data Base rather than directly into your primary data. These records can then be viewed and edited as desired. After satisfied with the record, it can then be moved into the PAF database either with GIE.EXE or with PAF2PAF.EXE which transfers single records from one PAF database to another. Initial prompts for inputs are the drive:\path\filename of the ASCII text file and your desired output, PAF Family Records, GEDCOM, or Address Book. Address Book is not available in this version. Selection of output to PAF will display a prompt for the location of your Family Records data files. If MSG2PAF.EXE does not find Family Records data files in the location you specify, you will be asked if you want MSG2PAF.EXE to create them. This set of PAF data files can be used for future MSG2PAF.EXE input if you desire. If the selection of output is to GEDCOM, you will be prompted for the drive:\path of the GEDCOM file, and the GEDCOM filename. If MSG2PAF.EXE finds a file already exists, you will be prompted if you desire to verwrite, ppend, or e-enter. Appending to the GEDCOM file allows for repeated sessions on the same group of surnames without creating new GEDCOMs for each session. Both PAF Family Records output and GEDCOM output use the same screen display and set of data fields for the viewing of the text and extraction of the data. DISPLAY: The display is split into upper and lower windows. The upper window contains formatted display of fields in which you place the selected data. The lower window contains 12 lines of the input text file. The upper window displays the following: Sname: Giv1 : Giv2 : Giv3 : Title : SEX : DOB : POB1 : POB2 : POB3 : POB4 : DCHR : DOD : POD1 : POD2 : POD3 : POD4 : DBUR : Windows are separated by a menu bar with the following information. When the lower window is active the following menu bar appears: "ludr" refers to Left Arrow, Up Arrow, Down Arrow, Right Arrow respectively. ludr cursor egin nd ile ete to DOS elp When the upper window is active: ludr cursor urname otes ert ete See Noes Two operational modes are considered in MSG2PAF.EXE. In the lower window, the SEARCH mode allows movement of the cursor to select the data you wish to extract, as well as scrolls the text one line or one page of 12 lines at a time. In the SELECT mode, movement of the cursor movement is limited to the left and right arrow keys. In the SELECT mode, the character at the cursor is highlighted in reverse video. KEY ASSIGNMENTS: In the Lower Window: r Arrow : Moves cursor one character to the right. Does not advance to next line at the end. Marks the character in reverse video if in SELECT mode. l Arrow : Moves cursor one character to the left. Does not go to previous line at the beginning. Unmarks the character in SELECT mode. u Arrow : Moves cursor up one line. If at top of text scrolls up one text line. Inactive in SELECT mode. On the number pad, u Arrow moves to top line of text. d Arrow : Moves cursor down one line. If at bottom of text scrolls down one text line. Inactive in SELECT mode. On the number pad, d Arrow moves to bottom line of text. Home : Moves to first character in text line. Inactive in SELECT mode. End : Moves to last character in text line. Inactived in SELECT mode. Tab : Moves cursor to right 10 spaces. Inactive in SELECT mode. Shft Tab : Moves cursor to left 10 spaces. Inactive in SELECT mode. Page Up : Displays previous 12 lines of text. Inactive in SELECT mode. Page Down: Displays next 12 lines of text. Inactive in SELECT mode. : Begins SELECT mode. Marks character at cursor position. : Ends SELECT mode. Cursor goes to upper window. Upper window commands now effective. Menu bar now shows upper window commands. To enter SEX or "See Notes" select from SEARCH mode. : Ends selections for this individual. Copies data in upper window fields to the selected output file. Clears data fields in upper window. Returns to same location in lower window in SEARCH mode. Inactive in SELECT mode. : Ends session. Closes all files and EXITS to DOS. ete : Clears all data fields in upper window. Clears all data from memory array. Returns to lower window in SEARCH mode. Upper Window: r Arrow : Moves cursor to next data field horizontally. If last field in line, moves to first field in next line. l Arrow : Moves cursor to previous data field horizontally. If first field in line, moves to last field in previous line. u Arrow : Moves cursor up left column of data fields. d Arrow : Moves cursor down left column of data fields. : Moves cursor from data fields to first note line. If the first note line contains more than 72 characters, the cursor is positioned at the next note line. : Moves cursor to Surname data field. : Saves emale if cursor is in the SEX field. Cursor returns to lower window. Returns to SEARCH mode. : Saves ale if cursor is in the SEX field. Cursor returns to lower window. Returns to SEARCH mode. : Saves "See Notes" if cursor is in any date field. : Saves selected data to memory array and prints in the data field at cursor position. Cursor returns to the lower window. Selected data in lower window is unmarked. Returns to SEARCH mode. ert : Allows Keyboard input to field at cursor position in the upper window. ete : Deletes data in field at cursor position. Deletes data from memory array. DATE CONVERSION: Dates are converted and displayed in the PAF convention, i.e. numeric day, literal three letter month abbreviation, and numerical year. example: 23 Feb 1993. All dates of other accepted formats are converted. PAF date modifiers of abt, bef, and aft are accepted. Dual dates i.e. 1664/65 are accepted and displayed as 1664/1665. The notation "See Notes" is accepted and displayed in any date field. The following date formats are accepted and converted correctly. mm/dd/yyyy dd/mm/yyyy if day is greater than 12 yyyy,mm,dd yyyy,dd,mm if day is greater than 12 The delimiters above can be "/" "," or "-" in any of the above formats. February 23, 1993 February 23rd, 1993 23rd of Feb 1993 23rd day of February 1993 23 February 1993 23 of Feb., 1993 Litteral months may be abbreviated or spelled out with or with out periods. The dual year can be from 1 to 4 digits, i.e. 1994/5, 1994/95, 1994/995 or 1994/1995. If dual period crosses a millenia mark, it must be 4 digits. i.e. 1999/2001, if it crosses the century it must be at least 3 digits. i.e. 1899/901, if it crosses decade it must be at least 2 digits. i.e. 1989/91. OPERATION: The initial working screen display in MSG2PAF.EXE is the divided window with vacant data fields in the upper window and the first 12 lines of your text in the lower window. The cursor is in the upper left corner of the lower window, you are in the SEARCH mode. Scan the text to find the data you desire to extract. It does not need to be selected in the order as presented in the fields in the upper window, but as you find it in the lower window display. Scroll the text with the Down Arrow/Up Arrow, or Page Down/Page Up, to locate your data. Once the data is displayed use the arrow keys, Tab, Shift Tab, Home, End to position the cursor at the first character of the data you want to extract. When cursor is properly positioned, then press to begin the SELECT mode. The character at the cursor will be highlighted in reverse video. Move the cursor to the right with the Right Arrow to highlight each character in turn to the end of the selected data. If you overshoot, simply backup with the Left Arrow. If you back up with the Left arrow beyond the first character that you had highlighted, then all highlighting will be removed and you are returned to the SEARCH mode. You can now continue the search and start a new SELECT mode. Once the desired data has been selected and is highlighted in reverse video, then press the to end the SELECT mode. The cursor will now be displayed in the upper window in the Surname field. Move the cursor with the Arrow Keys, urname or otes to the desired data field. Press and the data is now printed in the field at the cursor position. The cursor returns to the lower window in SEARCH mode. The highlighted data in the lower window is returned to normal video. Continue the search and select procedure until all desired data has been transferred. Dates and other data that are desired but do not meet the required format criteria can be placed in the notes field. SEX: Two unique fields that have no source in the standard message text file that need entries are the SEX field and the entry "See Notes" in a date field. To enter SEX, select the from the lower window in SEARCH mode. In the upper window, move to the SEX field and press either emale or ale. "F" or "M" respectively will be displayed in the SEX field and saved in the memory data array. If an attempt to save with the ile command and SEX has not been entered, then the menu bar will change to: ** SEX has not been entered. Press emale, ale, or ontinue ** Make the proper selection at this time for the desired sex entry. SEE NOTES in Date Field: To display and store "See Notes" in a date field, select from the lower window in SEARCH mode. Move the cursor to the desired date field. Press and "See Notes" will be displayed in that date field and saved to the memory data array. When you have completed all the fields possible with the available data, then while in the lower window and in SEARCH mode, press . The data in the upper window is now saved to the selected output and you are returned to the lower window with a new clean upper window data fields to continued with another individual. KEYBOARD ENTRY: To make direct keyboard entries into the fields in the upper window go to the upper window with no data marked with the nd key form the lower window in SEARCH mode. Place the cursor in the desired data field, press ert. Type in your desired data, press . Do not extend typeing into the next data field. The entry is limited to 17 characters for names and places and to 20 characters for dates. Dates must be in one of the acceptable formats listed above. For keyboard entry of notes, press otes to go to the first note line. Down arrow to the next unfinished line. Press ert. The cursor will move to the end of the line with a '*' preceding the cursor. Type in your information. Do not exceed the end of the screen. The line will word wrap if the screen width is exceeded, only the letters to the last space before the edge of the display will be accepted. Press The notes menu bar will appear. Make the selection , , or for desired type of note. The "*" will disappear, and the normal note separaters "/" and "//" will appear. The cursor will return to the lower window in SEARCH mode. Keyboard notes may be interspersed with marked and clipped notes. Fields CANNOT be edited with this command. They can only be entered. HELP: At any time in the lower window and in SEARCH mode, will clear the lower window of text, and display the Key Assignments listed above. The menu bar will change to: PRESS OR TO EXIT HELP On exiting HELP the lower window is cleared, and the 12 lines of text previously displayed will be returned. ERRONEOUS ENTRIES: If an error has been made in marking a selection in the lower window before selecting , use the left arrow to erase the selection. When the cursor moves to the character to the left of the first marked character, you are returned to SEARCH mode. If an error has been made after posting to the upper window, you can overwrite the error with the correct data or return to the upper window with the selection in SEARCH mode, and press ete. This deletes the entry and returns you to the lower window in SEARCH mode. If the entire individual record is desired to be deleted before saving to ile, press ete while in the lower window. This clears all fields in the upper window and deletes all data for that individual in the memory data array. NOTES: The most difficult to understand may be the entries in the five available note lines in the upper window. Each line can accommodate more than one note marked and copied from the lower window text. Following is short section of an actual BBS message, captured from a genealogy echo, and the sequence of marking and saving the data and notes from it. "...concerning the following family: YOUNG, Elizabeth - b 04/12/1772 in VA? (not sure on state) d date unk but most likely in Cane Hill, Washington Co, AR. m Thomas GARVIN on 04/21/1789 in VA. Thomas was a Revolutionary War soldier who served as a Teamster under Col Joseph CARR in the VA Militia 1780-81. Elizabeth Young was the dau. of James YOUNG. Her mothers name is unk ..." With the only actual data given being the name and birth date, all other data should be placed in the notes. Following the procedures above, the name is selected from the last line to obtain surname in lower case. The actual order in which the data is captured and moved does not matter. Enter Surname, Giv1, and DOB by marking in the lower window, selecting the proper field in the upper window and setting with . Next select from the lower window, move cursor to DOD and press to set the notation 'See Notes' in the Date of Death field. Again select from the lower window, move cursor to SEX and press emale to set . The upper window should now appear as: Surname: YOUNG Giv1 : Elizabeth Giv2 : Giv3 : Title : SEX : F DOB : 12 Apr 1772 POB1 : POB2 : POB3 : POB4 : DCHR : DOD : See Notes POD1 : POD2 : POD3 : POD4 : DBUR : The blank area following the above contains space for 5 lines of notes. Back to the lower window and move cursor to and mark : in VA? (not sure on state) This is a clarification of the place of birth which was not givin. With that selection marked, press and return to the upper window. Press to move to the first note line. Press . The note is now printed in the first line just as you marked it. Now mark the last of that line in the message. " d date unk" The cursor cannot be line wrapped so this notation must be marked by itself. Press to return to the upper window. Press to move down to the first note line. This line already has a note on it, but there is still a lot of space left to use. The cursor will be at the beginning of the line but you cannot move it. At this point press . The menu bar will now change to: Continue ine ontinue Note ew Note or ete Since this note concerns other than Birth information it can be placed on a line below the birth in the PAF notes. Select ontinue Note. This will mark this note in PAF to follow the preceding note with no space between. The note will now be printed in the upper window following the first entry and separated by a single backslash "\". The note line should now look like this: in VA? (not sure on state)\d date unk Back in the lower window now mark the remainder of that particular sentence. "but most likely in Cane Hill, Washington Co. AR." You will note that there is not enough room left on the first note line for all this. Mark all that you think WILL fit in the space available. Perhaps to the end of Washington. If you do not select enough, you can make another short selection to complete the line. Press to return to the upper window. Press to move to the first noteline. Press . On the menu bar, select since this is a continuation of a line or sentence. The notelines should now look like this: in VA? (not sure on state)\d date unk but most likely in Cane Hill, Note that the entry was truncated at the space preceding the 78th character. What you see is all that was actually saved to memory. Mark and move the rest of this sentence. This time place it in the second note line since there is no room left on the first line. Press and then on the menu bar, the second line should now look like this: Washington Co, AR. Again in the lower window, mark the next line "m Thomas GARVIN on 04/21/1789 in VA." Press to go to the upper window. Press to move the cursor to the note lines. If the cursor did not move to the second line which is incomplete, use the down arrow to position it. Press . On the menu bar, select ew Note. This line will be printed in PAF following the last selection with one blank line intervening. It will be displayed in the upper window following a double backslash "\\" The total note lines should now look like this: in VA? (not sure on state)\d date unk but most likely in Cane Hill, Washington Co, AR.\\m Thomas GARVIN on 04/21/1789 In the lower window, mark the next line. "Thomas was a Rev...". Again mark a little more than you think will fit in the available space. Mark to the end of Revolutionary. Press to return to upper window. Press . If the cursor did not go to the second note line, then down arrow to the second line. Press . From the menu bar select again ew Note. The notelines should now be: in VA? (not sure on state)\d date unk but most likely in Cane Hill, Washington Co, AR.\\m Thomas GARVIN on 04/21/1789\\Thomas was a In the lower window, mark the remainder of that line in the text starting with Revolutionary. Press to return to upper window. Press for notelines. Down arrow to third noteline if necessary, press . From the menu bar, press to continue the line or sentence. The remainder of the line will now be on line three in the upper window. In the lower window, mark the next line in the message to the point you think will fit into the remaining space in line three. Perhaps to the end of Joseph or CARR. Press for the upper window, Press for notelines, arrow down to third note line if necessary. Press . From the menu bar, again select to continue the sentence. The note lines should now appear as: in VA? (not sure on state)\d date unk but most likely in Cane Hill, Washington Co, AR.\\m Thomas GARVIN on 04/21/1789\\Thomas was a Revolutionary War soldier who served as a Teamster under Col. Joseph In the lower window, now mark and move the remainder of the sentence. Place this on line 4 in the upper window. The final notelines should now appear as: in VA? (not sure on state)\d date unk but most likely in Cane Hill, Washington Co, AR.\\m Thomas GARVIN on 04/21/1789\\Thomas was a Revolutionary War soldier who served as a Teamster under Col. Joseph CARR in the VA Militia 1780-81. In PAF FR Notes this will appear as: in VA? (not sure on state) d date unk but most likely in Cane Hill, Washington Co, Ar. m Thomas GARVIN on 04/21/1789 Thomas was a Revolutionary War soldier who served as a Teamster under Col. Joseph CARR in the VA Militia in 1780-81. In GEDCOM this will appear as: 1 NOTE in VA? (not sure on state) 2 CONT d date unk but most likely in Cane Hill, Washington Co, AR. 1 NOTE m Thomas GARVIN on 04/21/1789 1 NOTE Thomas was a Revolutionary War Soldier who served as a Teamster under Col. 2 CONT Joseph CARR in the VA Militia 1780-81. There may be wrap of the "l." from "Col.". This is due to the "1 NOTE added to the total line and exeeding the screen width. When input to a Data Base with GEDCOM procedures, the "1 NOTE " will be removed and the line will display as in the PAF example above. ENDING THE SESSION: When all individuals have been selected and saved for this session, press while in the lower window in SEARCH mode. This ends the session, makes the final TRLR line entry in GEDCOM, closes all files, and returns you to DOS. The GEDCOM output has been tested on both PAF and on Brothers Keeper. There may be problems with other genealogical database software but if they will accept a GEDCOM from PAF, then they should accept the GEDCOM output from MSG2PAF.EXE If you find this program useful and intend to use it, a shareware donation of $5.00 to the author will help insure he has at least some incentive to continue with the development of PAF utilities. Mail your contribution to: Jack J. Chandler 812 Vermillion Dr. Henderson, NV 89015