﻿FileMgr briefing notes applies to developers and users

This project has been compiled using Borland's Turbo Pascal v7.0 and tested on a Dual 2 core with 2Gb ram under Linux running Dosemu with 2mb of EMS ram and 8 mb XMS ram. I normally use a desktop with Mandriva Linux (currently v2007.1) which also holds my bbs (Fido address is 2:250/1). It was also validated via command prompt on Windows XP. Therefore all the program I have compiled, run with no error 200 messages, I.e., filemgr.exe &.ovr, fmsetup.exe & .ovr, fmdesc.exe, fmbill.exe & fmconv.exe.


Basic test setup

My test configuration is as Mailer: Binkleyterm and Maximus as the BBS neither of which is installed. This is on drive d: In my test set up the BBS download areas are on c:\bbs.
Using my primary BBS system I set up a point aka ie 2:250/1.1 as a downlink and connected all areas then specified that all files on hold go to the d:\lap\filemgr\test\newfiles directory. In filemgr the system is set to 2:250/1.1, so all files that come into my system also go through the filemgr test environment. I told filemgr that 250/1 (the uplink) can create new areas to cut down on having to key in all 50 odd filegate areas. Having created the data files used by filemgr by using Fmsetup I made a backup of all ie, 'copy *.fm*  savadat1'. Note that if you are running an older version of Filemgr prior to 0.80 I would suggest that you attempt to use the old files having copied them to the test area then back them up and see if fmsetup shows correct information in all menus. If not, delete all *.fm* files from test area and using fmsetup create all primary system data but NOT areas, groups, scheduler etc. save setup.fm somewhere else and copy all the other files that you backed up earlier but not setup.fm. So, you will have all your old data files other than the basic system setup that you have just created.  Load up fmsetup and go through all the menus again to check that all is right with the world.  If so you can make a master backup of all data files to say savedat2 and start testing. If you did not do it this way, fmsetup will purge the other files and you will loose the settings for areas, groups etc.


Please read the additional readme files prior to loading up the source or executables. The manual is now suppled as a pdf file as well as a Open Offfice odt file (with the source code) and has been extensively rewritten. If you find any errors or omissions in it please let me know through the FILEMGR fido echo. I have supplied the source code complete with my test directory so you can make use of my old filemgr data if you have not been using previous versions.. 

I VERY strongly recommend that you do NOT do initial testing of filemgr within your BBS environment or directories until verifying that it is not casing any damage to the bbs message base. Better to make a copy of your entire BBS directory as a test area that contains all the needed directories, removing the contents of the BBS file areas (i.e., the ones that are available for downloads) and test against that area only. Don't forget I have limited testing (see above). Its working for my system but, may be not for your bbs and mailer. Remember this program is basically the same from the original release in 1996. Therefore it is possible that your BBS and mailer may have had changes to their file layouts so look at what is supported in fnconv and the specific versions.  If your one is using a later version, arrange to get a copy of the layout to me so it can be updated. That said, many of the changes do not relate to the message bases and that is the important area.

This current release 0.80.115 removes the registration key requirement, however for the moment it is still present on the menu.  Just leave it as spaces.

I will be placing the source code onto the CVS system at http://sourceforge.net/projects/filemgr in due course.

Notes on source code and compiling it.

My directory structure looks like this:

D:\lap\FileMgr			: Filemgr sources and common units used for fmdesc, fmbill, fmsetup and fmconv
D:\lap\FileMgr\asm		: Filemgr Assembler source code
D:\lap\FileMgr\bin		: Filemgr binaries / executables / programs etc
D:\lap\FileMgr\Docs		: Documentation written in open Office some of which needs more work also the gnu
				  Licenses.
D:\lap\FileMgr\Docs\source	: More documentation but for a programmer as well as the master OOo files for the
				  above directory which is for users of FileMgr includes these readme files.
D:\lap\FileMgr\fm_bill		: Source code for fm_bill in TP.
D:\lap\FileMgr\fm_conv		: Source code for Convert in TP created to insert details of the BBS,  message base
				  and mailer that you are using.
D:\lap\FileMgr\fm_desc		: Source code for TP program that loads up group descriptions from filegate.zxx.
D:\lap\FileMgr\fm_setup		: Source code for TP Filemgr setup program (also uses assembler modules in
 				  D:\lap\asm. and includes common units.
D:\lap\FileMgr\maps             	: TP maps of compiled programs used in debugging
D:\lap\FileMgr\obj		: asm Modules that have been run through assembly
D:\lap\FileMgr\test		: Directory created for testing filemgr away from a BBS
D:\lap\FileMgr\test\bt		: Dummy Binkleyterm dir
D:\lap\FileMgr\test\nodelist	: Directory to hold nodelists
D:\lap\FileMgr\test\retire		: Files created by filemgr as retired ie replaced.
D:\lap\FileMgr\test\squish	: Holds test squish msg bases
D:\lap\FileMgr\test\temp		: Temp directory used by filemgr
D:\lap\FileMgr\test\tpl		: holds msg templates
D:\lap\FileMgr\test\bt\outbound	: Mailer outbound directory to check filemgr working
D:\lap\FileMgr\TPL		: Holds master copies of templates
D:\lap\FileMgr\tpus		: Holds three modules (2 of which I do not have source code and the third is in higher
				   directory)
D:\lap\FileMgr\Units		: Directory hold all units built by TP during compiles.

When in d:\lap\FileMgr

I use Borland TP v7.0 to compile filemgr :

"bpc filemgr.pas /B /GD -Id:\lap\filemgr -Ud:\lap\filemgr -Od:\lap\filemgr\obj -Ed:\lap\filemgr\units -Q"
to compile the thing in Borland Turbo Pascal v7.

The same applies to the other programs i.e.,

fmdesc
fmbill
fmsetup
fmconv

See the supplied comp-all.bat, this will compile all and put a copy of all executables in d:\lap\filemgr\bin and all map files in d:\lap\filemgr\maps.

I run in a dosemu, freedos environment under Linux, so I have the following set up in autoexec.bat:

Path c:\bin;c:\gnu;c:\dosemu;D:\LAP\BP\BIN;D:\LAP\FILEMGR\BIN;D:\LAP\BIN
set FILEMGR=d:\lap\filemgr\test

Everything in upper case is related to compiling and the rest is Dos related. \LAP\BIN holds my dos editor and \lap\BP\BIN is the compiler. I hope all this makes sense but any questions, go to the FILEMGR fidonet mail echo, the forum at sourceforge.net for FileMgr or send me a email but  please put its contents in the mail echo as well for others. Note that I poll for fido mail every hour via the USA.

Updates to the source code, documentation and binaries / programs available through sourceforge.net and at FILEMGR fidonet file echo.

See the files Change.log for this years changes and if you want to see what happened earlier, Change.03 for 1996 and before.


TODO (not necessarily in order)

1.Upload Project to CVS (well, as soon as I figure out how to).
2.Remove registration code.      Done
3.Clear any reported or found bugs. [Allways ongoing].
4.Create multi branch lines in CVS for code in Pascal, Assembler and C.
5.Convert Assembler code units to Pascal units with minimum functional changes.
6.Change inline assembler to Pascal with minimum functional changes.
7.Create some regression test procedures for steps 4, 5, 7 & 8 etc.
8.Release current version after testing.
9.Convert code to work with other compilers i.e., Free Pascal again with minimum changes.
10.Look at any bug fixes.
11.Release current version after testing.
12.Convert code to C to work across all O/S’s using GNU GCC, Watcom open code project etc.
13.Release current version after testing.
14.Look at bug fixes.
15.Essential Functional changes.
16.Cosmetic and other changes.



















Vince Coen, Air Applewood BBS at 2:250/1 or vbcoen@btconnect.com

