home *** CD-ROM | disk | FTP | other *** search
- Nicolas Leblanc #2 @20302
- Tue Jun 06 02:03:57 1995
- 0R 34 06/09 07:13 WWIVNET 4051->8421
- 0R 34 06/08 18:18 WWIVNet 4001->4051
- 0R 34 06/08 14:07 WWIVnet 4000->4001
- 0R 34 06/08 05:34 WWIVnet ->4000
- 0R 34 06/07 01:09 WWIVnet 4001->4000
- 0R 34 06/07 07:32 WWIVnet 20001->4001
- 0R 34 06/06 02:14 WWIVnet 20302->20001
- 0R 34 06/06 02:10 WWIVnet ->20302
-
- ┌┬─── ── ─ ─ ── ───────────────────────────────────────────────────┬─ ∙∙
- ││ Alternative Worlds Presents │
- └┼─────────────────────────────────────────────────────────────────────┐
- ││ Mod Name » FMD-16a.MOD │∙
- ││ Difficulty » █▒▒▒▒▒▒▒▒▒▒ (1/10) │:
- ││ WWIV Version » 4.24 ││
- ││ Date Affected » 06/01/95 ││
- :│ Files Affected » SR.C ││
- ∙│ Description » Enhance The Display of Protocols ││
- └─────────────────────────────────────────────────────────────────────┼┐
- │ A French Mod Division Release - (C) 1995 FMD Software ││
- ∙∙ ─┴─────────────────────────────────────────────────── ── ─ ─ ── ───└┘
-
- ┌┬══════════════════┐
- ││ Long Description ││
- └══════════════════┴┘
-
- Enhance your display of file protocols. This modification will not only
- show the protocols in the way it should be listed, but it will show
- automatically the protocols if the user has no default protocols defined.
- (Coming from a Morgul modification). Update to SPOT019.MOD.
-
- Should look like this:
-
- 3Available Protocols :1
-
- [Q] Abort Transfer(s)
- [0] Don't Transfer
- [1] ASCII
- [2] Xmodem
- [X] Xmodem-CRC
- [Y] Ymodem
- [B] Batch
- [Z] Zmodem
- [H] HS/Link
- 0
-
- ┌┬═══════┐
- ││ Tests ││
- └═══════┴┘
-
- This modification has been tested on a virgin WWIV v4.24 source using
- Borland C++ v4.5
-
- ──────────────────────────────────────────────────────────────────────────────
- Legend
- ╔═══╤══════════════════┐
- │ + │ Add This Line │
- │ - │ Delete This Line │
- │ * │ Modify This Line │
- │ = │ Existing Line │
- └═══╧══════════════════╝
- ───[Step 1]────────────────────────────────────────────────────────────────────
-
- **Load SR.C and replace the following function.
-
-
- int get_protocol(xfertype xt)
- {
- char s[81],s1[81],oks[81],ch,oks1[81],*ss,ch1,fl[80];
- int i,i1,prot,maxprot,done,only,oks1p,c1;
-
- if (ok_prot(thisuser.defprot, xt))
- prot=thisuser.defprot;
- else
- prot=0;
-
- c1=thisuser.colors[8];
- thisuser.colors[8]=1;
- oks1p=0;
- oks1[0]=0;
- strcpy(oks,"Q?0");
- i1=strlen(oks);
- only=0;
- maxprot=5+numextrn;
- for (i=1; i<=maxprot; i++)
- {
- fl[i]=0;
- if (ok_prot(i,xt))
- {
- if (i<10)
- oks[i1++]='0'+i;
- else
- oks[i1++]=BASE_CHAR+i-10;
- if (only==0)
- only=i;
- else
- only=-1;
- if (i>=3) {
- ch1=upcase(*prot_name(i));
- if (strchr(oks1,ch1)==0)
- {
- oks1[oks1p++]=ch1;
- oks1[oks1p]=0;
- fl[i]=1;
- }
- }
- }
- }
- oks[i1]=0;
- strcat(oks,oks1);
- if (only>0)
- prot=only;
-
- if ((only==0) && (xt != xf_none))
- {
- nl();
- pl(get_string(894));
- nl();
- return(-1);
- }
-
- done=0;
- if (prot)
- {
- ss=prot_name(prot);
- sprintf(s,"%s%s) : ", get_string(895),ss);
- strcpy(s1,oks);
- strcat(s1,"\r");
- } else {
- strcpy(s,get_string(896));
- strcpy(s1,oks);
- }
- if (!prot)
- {
- nl();
- pl("3Available Protocols :1");
- nl();
- pl("8[7Q8] 1Abort Transfer(s)");
- pl("8[708] 1Don't Transfer");
- for (i=1; i<=maxprot; i++)
- {
- if (ok_prot(i,xt))
- {
- ch1=upcase(*prot_name(i));
- if (fl[i]==0)
- npr("8[7%c8] 1%s\r\n",(i<10)?(i+'0'):(i+BASE_CHAR-10),
- prot_name(i));
- else
- npr("8[7%c8] 1%s\r\n",*prot_name(i), prot_name(i));
- }
- }
- nl();
- }
- do
- {
- nl();
- prt(7,s);
- ch=onek(s1);
- if (ch=='?')
- {
- nl();
- pl("4Available Protocols :1");
- nl();
- pl("8[7Q8] 1Abort Transfer(s)");
- pl("8[708] 1Don't Transfer");
- for (i=1; i<=maxprot; i++)
- {
- if (ok_prot(i,xt))
- {
- ch1=upcase(*prot_name(i));
- if (fl[i]==0)
- npr("8[7%c8] 1%s\r\n",(i<10)?(i+'0'):(i+BASE_CHAR-10),
- prot_name(i));
- else
- npr("8[7%c8] 1%s\r\n",*prot_name(i), prot_name(i));
- }
- }
- nl();
- } else
- done=1;
- } while ((!done) && (!hangup));
- thisuser.colors[8]=c1;
- if (ch==13)
- return(prot);
- if ((ch>='0') && (ch<='9'))
- return(ch-'0');
- else {
- if (ch=='Q')
- return(-1);
- else {
- i1=ch-BASE_CHAR+10;
- if (i1<numextrn+6)
- return(ch-BASE_CHAR+10);
- for (i=3; i<numextrn+6; i++)
- {
- if (upcase(*prot_name(i))==ch)
- return(i);
- }
- }
- }
- return(-1);
- }
-
- ───[Step 2]────────────────────────────────────────────────────────────────────
-
-
- Just compile back your source and enjoy the change. A nice and easy
- modification once again to enhance your bulletin board.
-
- French Proverb: Qui aime bien, châtie bien.
-
- For comments, bug report and suggestion, e-mail at the following address:
-
- Nicolas LeBlanc 2@20302.WWIVnet (aka Spotnick)
- -> spotnick@gamemaster.qc.ca
- Martin Bourdages 242@20306 / 3@20302.WWIVnet (aka Dark Shadow)
- -> martin.bourdages@radio.magicnet.com
-
- => French Mod Division Support Sub <=
- SubType: FMD
- Host: @20302 (WWIVnet)
- Scan sublist for other networks
-
- Read PRODUCTS.FMD for the full list of our support systems.
-
- ───[EOF]──────────────────────────────────────────────────────────────────────