home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / MAXMAILP.ZIP / README.OS2 < prev    next >
Text File  |  1991-07-27  |  8KB  |  166 lines

  1. :GENERAL INFO:
  2.  
  3. First and most important, the author of MAXMAIL seems to use a lot of the
  4. maximus header files.  However, I had to change a few for some strange
  5. reason and they also have to me in the same directory as the maxmail source.
  6. So MAKE SURE that you keep this entire zip file contents in one dir.  If
  7. you DO NOT want to recompile it, then simply move maxmailp.exe and change
  8. maxmail.cfg file to suit your needs and then move it too to your max bbs
  9. directory.  To (re)compile, simply invoke nmake and it should work fine.
  10. NMAKE comes with 6.0a and it will create *.cbj files (object files) that
  11. will then be later linked with GATE.LIB.  GATE.LIB MUST be linked in as
  12. I'm using this file for the com routines and color.  If you've ever run a
  13. WWIV BBS, GATE.LIB will be familar as most of this is ported WWIV COMMON.PAS
  14. routines.  Since I am a registered sysop of WWIV source code, and I have
  15. NOT contacted the author of the port, I can only release object code as I
  16. don't want anyone getting pissed off!  Some of the routines also borrow
  17. from the ideas of a REAL OLD BTP port by Peter Fitzsimmons.
  18.  
  19. :INVOCATION OF MAXMAILP:
  20.  
  21. There are a few things that are different in this version of Maxmail for
  22. OS/2.  Most importantly, the added command parameters.  Here is a summary:
  23.  
  24.    /?  Will display the DOS and OS/2 allowable parameters.
  25.    /Bx Is a Gate Command.  If present, the modem is passed the (x) baud rate.
  26.    /Hx Is a Gate Command.  If present, the modem is passed the (x) com handle.
  27.    /Vx Is a Gate Command.  If present, it tells the Gate what kind of
  28.        screen (x) is being used (7 for mono, no ansi, 15 for color with ansi).
  29.    /S1 Is a Gate Command.  If present, it tells the Gate that a high speed,
  30.        MNP type modem (over 2400) is being used. /S0 or nothing denotes normal
  31.        modem type.
  32.    /W1 Is a Gate Command.  If present, it tells the Gate that the high
  33.        speed modem is locked and is using flow control. /W0 or nothing denotes
  34.        no flow control.
  35.  
  36. Here is an excerpt of a mecca file I used to call a number of my Gatekeeper
  37. routines including Maxmailp.
  38.  
  39. [top]
  40. [white]  Some Menu stuff
  41.  
  42. [white]Select: [cyan][menu]O etc |
  43. [choice]|[top]
  44. [choice]O[link][goto reader]
  45. [top]
  46.  
  47. [/Reader]
  48. [color]
  49. [isremote][Xtern_Run]J:\OSB\MAXMAILP.EXE /B%b /H%P /W1 /S1 /V15
  50. [islocal][Xtern_Run]J:\OSB\MAXMAILP.EXE /L /W1 /S1 /V15
  51. [top]
  52. [endcolor]
  53. [isremote][Xtern_Run]J:\OSB\MAXMAILP.EXE /B%b /H%P /W1 /S1 /V7
  54. [islocal][Xtern_Run]J:\OSB\MAXMAILP.EXE /L /W1 /S1 /V7
  55. [top]
  56.  
  57. In the above example, the parms should be used exactly like stated above
  58. unless one wants to activate a maxmail parm.  The only thing that needs
  59. changing (obviously) is the path name to maxmailp.  I put it in my main
  60. BBS directory (OSB) so that it can find lastus, etc fairly easily.
  61.  
  62. Both Lines, regardless of color, using [isremote] MUST have the /B and /H
  63. used above.  These are the baud rate and com handle passed from Maxp.  For
  64. more info on how maxp works, please see the os2 readme files that came with
  65. maxp.  But basically, the baud parm is the same in max as it is in maxp.  So
  66. is the Handle with the exception that in maxp, the port passed IS the handle
  67. since you DO NOT open ports in OS/2, only Handles since Maxp is actually
  68. spawning maxmailp and passing it AN ALREADY ACTIVE com port (handle).
  69.  
  70. /W1 and /S1 are to ONLY be used with high speed, locked port modems.  If you do
  71. not have such a modem, leave them out.  Finnaly, the /V15 tells the Gate that I
  72. am using a color monitor with ansi graphics as opposed to a /V7 of mono or herc
  73. without ansi.  If you have a mono monitor and ARE using Ansi, then its ok to
  74. specify /V15 (I think).  I used to have a separate line for Ansi but this was
  75. conflicting with other programs parms.  I have not had the time to test this
  76. on a mono system with ansi so please let me know if this is a problem (ie using
  77. /V15 on a mono or herc card system.
  78.  
  79. Also note that when I login locally, I use the /L meaning no modem use. In all
  80. of my other Gate Doors, /M means local or no modem and /L means last name. Also
  81. in my other Gate Doors (with the exception of maxmailp) I use a /F for first
  82. name.  This will most likely change but its easier to pass these parms than it
  83. is to read in lastusxx.bbs file (I know, I'm lazy [grin]).
  84.  
  85. For the packers, I use ARC2, PKZIP2, and LH.  For download protocals, you
  86. will most likely need to get a hold of m2zmodem (I renamed it to M2Z.EXE)
  87. available here or better yet, on Fernwood (Latest version always at Fernwood).
  88.  
  89. Otherwise, maxmail.txt will explain all the other options and the actual
  90. use of maxmail.
  91.  
  92. :COMPILING:
  93.  
  94. Can't think of too much that Craig already mentions in README.DOS.  I too use
  95. MS C 6.0a and have altered the make file slightly to compile and link in OS/2.
  96.  
  97. :MAKEFILE:
  98.  
  99. I used the same method of a makefile that maxmail uses.  But, I had to
  100. use the appropriate switches to tell cl and link about protected mode.
  101. I also had to add my GATE.LIB file into the makefile.
  102.  
  103. :GATE.LIB:
  104.     Currently, only the lib file that contains OS2COM.OBJ is enclosed.
  105. Source code to OS2COM may be released soon.  Here is an overview
  106. of the most needed functions and what they do:
  107.  
  108. prt(x,string)   -  This changes the color (if possible) to x where x is
  109.                    between 0-7.  Its not used in maxmailp but could be.
  110.                    The string is any valid C string and it will print that to
  111.                    the com port, or local screen.  It will not add a nl.
  112.  
  113. nl()            -  This simply puts a \n to the current output device.
  114.  
  115. cls()           -  Simply clears the screen, if possible.
  116.  
  117. outstring(s)    -  Does just like strout but is used for OS/2 only.
  118.  
  119. inputl(s,80)    -  Does just like strin but is used for OS/2, accepts less
  120.                    than or equal to 80 chars, and takes upper or lower case.
  121.  
  122. inputu(s,80)    -  Does just like strin but is used for OS/2, accepts less
  123.                    than or equal to 80 chars, and takes ONLY upper case.
  124.                    All of the above 3 functions are shown in protos.h.  You
  125.                    can change the define to use less than or more than 80
  126.                    chars for the 2 input functions shown above.
  127.  
  128. inputkey()      -  Does just like chrin but is used for OS/2 only.
  129.  
  130. outlocal(s)     -  This is the only function that works ONLY on the local
  131.                    screen.  It does not send s to the modem.
  132.  
  133. printfile(s)    -  I call this function because it works better with the
  134.                    GATEkeeper LIB.  As you will see, there is a built in
  135.                    pause() function that can be called directly or by using
  136.                    printfile(s).  If you decide not to use this, then the
  137.                    pauses will not be doing what they are meant to do (ie
  138.                    pausing after 23 line are displayed) because they will
  139.                    be out of sync with my i/o routines that check for 23
  140.                    lines of output.  By not using printfile, the i/o will
  141.                    get confused and either pause too much or not enough!
  142.  
  143. There are a few more functions such as logon(), logoff(1), modemcall(),
  144. localcall(), etc.  You will see these only in maxmailp.  They MUST be used
  145. as they are placed in maxmailp as they initialize the gate based on the
  146. passed GATE parms.
  147.  
  148. :MESSAGE TO MAXMAIL AUTHOR -- Might be of interest to someone else too:
  149. Maxmailp has the most changes (in fact, most of the other modules only
  150. changed due to segment violations).  Its CERTAINLY possibile to have only
  151. 1 maxmail.c with a bunch of if define's, but this was the easiest way to
  152. do it.  WE should create an exe file called maxmailp so 1, it does not
  153. overwrite maxmail.exe and 2, its the convention in the OS/2 BBS community
  154. to add a "p" to protected mode versions of software.  Feel free to modify
  155. anything as you see fit but just keep in mind that this IS working in OS/2
  156. with the exception of 1 more segment bug.  This bug is the same one that
  157. plagued us before.  It happens when a user enters a message number to add or
  158. delete that DOES NOT EXIST!  This is the ONLY Error I know of and I've tested
  159. it pretty much.
  160.  
  161.  
  162. :ORIGIN and perhaps support:
  163.  
  164. Steve Lesner @ 1:141/261
  165.           or @ 1:141/260
  166.