This file was put together from two files that are in this DL and were 
written to assist those who had purchased a communications package, but 
later found out that it would not permit them to download any of the 
programs that they found here in the CBMCOM Forum. The best they can do 
is to capture text files to be read. The following programs will permit 
you to utilize your existing communications equipment, maybe modify your 
software if necessary, and download a better communications program then 
you now have. 

These programs are called "Bootstrap" programs because they provide you 
with the barest of necessities in terms of capabilities. In some cases 
you will have to manually dial the phone to make the connection to 
CompuServe and in all cases you will have to use pulse dial instead of 
touch tone. This isn't so bad as it only has to be done once.


=======================================================================

  Ya say you can't download because you only have a dumb terminal 
program. Ya say if you could download, that you would download a new 
terminal program that could download. (Catch 22!)

 Well! I tell ya what I'm gonna do... Step right up and copy down the
following SHORT program. Type it in and save it to disk.
 The program is a simple Bootstrap XMODEM Downloader, and if the wind 
is blowing right, will permit you to download from Compuserve's CBMCOM 
Forum, the full featured Xmodem terminal program > CBTERM/C64. 
Once you have CBTERM/C64, you can up or download anything to/from CIS 
and any Xmodem BBS systems.

 Step closer young man, and I'll tell you how it works.....

The program (which I will call BXD.BAS) is a short routine to only 
download a file in xmodem. It is used in conjunction with your present
terminal program. You use your present dumb terminal program to go on
line and connect with CIS. You then goto the CBMCOM Forum, (GO CBMCOM 
at the ! prompt) and go to the DL12 data library. There you find the
latest version of CBTERM/C64. You must get the .BIN version of CBTERM,
(not the .IMG version) You instruct CIS to Download the CBTERM program
using XMODEM protocol. CIS will respond that it is begining the download.
BXD will then do an XMODEM download of the file and write it to disk.
If all works well, in 15 mins. you should have a brand spanking new copy 
of CBTERM/C64 on your disk. (note: only run your dumb terminal program 
and BXD.BAS at 300 baud.) 

BXD.BAS does the following:
 When RUN, will handshake to CIS to start the transfer. A disk file is
opened and is called CBTERM into which the incomming data is written.
 BXD then waits to recieve data blocks of 132 bytes long. Each block has
a checksum that is matched and if found to be wrong, the block is rejected
and cis sends it again. (note: the first block is offen rejected on the
first try by BXD, but gets through the second time around.)
If the checksum is ok the block is written to the disk and the next
block is recived. This continues untill the end of data marker is
sent. BXD will say "DONE" and you should have a good copy of CBTERM/C64 
now on your disk. Reset your computer and load CBTERM and use that as 
your new SMART terminal program.

Trying to keep BXD brief, many shortcuts were taken. There is no time
out check or block number check as would be included in a full featured
XMODEM program. If you suffer from noisey phone lines, you may be in 
trouble trying to use BXD. BXD expects to recieve 132 bytes in a block, 
if for some reason, a bute is dropped, BXD will sit in its loop and hang.
Each byte that is recieve is marked by a "." displayed on the screen.
and when a full block is recieve this is stated also. If you see BXD 
stop for longer than 60 seconds without recieveing any more bytes then 
you could try this: Press <STOP> to break the program. The enter: GOTO 
50 This will reject the last block recieved and restart looking for the 
block. If you coninualy get CHECK SUM BAD errors, then log off and reload
your dumb terminal program and try the process again. Don't forget to 
Verify the disk you were using as the opened file will not be good.

Here is the code for BXD.BAS:

Enter it carefully, don't forget the ;'s and other easyly overlooked 
things. If all goes well, you will be able to download a very fine 
terminal program that you can then use to up and down load just about
anything else.

If you have any questions, pleas leave them in a message to SYSOP in 
CBMCOM. No EMAIL please.

 HAVE FUN !
BXD.BAS (C) 1985 by Chrisdos
.+++++++++++++++++++++++++++++++++++++
. Version 1.1 of BXD.BAS
. This includes a small terminal routine in the program itself, and
may work directly witout the need for an external terminal program.
. Fill in lines 40 - 90 with a routine to dial your modem, or manually
connect with your phone.


5 open5,2,0,chr$(6):dim i%(132)
10 printchr$(14)"[CLS][CRDN][CRDN][CRDN]  Bootstrap XMODEM Downloader  
   Ver 1.1"
20 print"  Written by Christopher Dunn
30 print"[CRDN][CRDN][CRDN] Use the <F1> key to start the Download"
100 print"[Terminal Mode]
110 get#5,a$:if st=8 goto170
120 a=asc(a$+chr$(0))and127
130 if a=8 then a=157:goto160
140 if a>=65 and a<=90 then a=a+32:goto160
150 if a>=97 and a<=122 then a=a-32
160 print chr$(a);
170 get a$:if a$="" goto110
180 a=asc(a$+chr$(0)):if a=20 then a=8:goto220
190 if a=133 goto 1000:rem do xmodem
200 if a>=193 and a<=218 then a=a-128:goto220
210 if a>=65 and a<=90 then a=a+32
220 print#5,chr$(a);
230 goto 110
1000 rem xmodem download
1010 ack$=chr$(6):nak$=chr$(21):eot$=chr$(4):b=1
1020 print"[CLR] Xmodem Downloader.
1030 print"Enter file name for your disk:";:f$="":input f$:if f$="" 
     goto 100
1040 print"Working! Please standby"
1050 open8,8,8,f$+",p,w"
1060 forx=1to25:get#5,n$:next:q=0:print#5,nak$;
1070 get#5,c$:if st=8 goto 1170
1080 q=q+1:i%(q)=asc(c$+chr$(0)):print".";
1090 if q=1 and c$=eot$ then close8:print"DONE!":print#5,ack$:goto100
1100 z=0:if q<132 goto1070
1110 print:print"Checking Block"
1120 ck%=0:forx=1to131:ck%=(ck%+i%(x))and255:next
1130 if ck%<>i%(132) then print"Bad Checksum!":goto1060
1140 forx=4to131:print#8,chr$(i%(x));:next:get#5,n$
1150 print"Block "b" OK.":b=b+1:print#5,ack$;:q=0
1160 goto1070
1170 rem check for time out
1180 z=z+1:if z<500 goto 1070
1190 print"Block time out! Retrying....":z=0:goto1060

A note on this program for first time users. When you are negotiating 
through CIS to get to the Data Library where the terminal programs reside 
you might find that as more information is received it will turn to 
garbage on your screen. DO NOT DISPAIR! This seems to be normal due to 
the nature of the program. Remember, it is REALLY basic in nature. Watch 
for the information to stop being printed on your screen and enter your 
information. After you hit the <CR> the screen information return to 
normal, until several lines have been received, then its back to garbage. 

           THIS DOES NOT AFFECT THE X-MODEM TRANSFER !!
           ONLY THE TEXT INFORMATION BEING RECEIVED
           PRIOR TO YOU HITTING THE NEXT CARRIAGE RETURN


=============================================================================


This ends the section on general bootstrapping. The following portion is 
specific to the Commodore 1660 Modem 300. The program is a little shorter 
as it utilizes the existing modem program "Autodial Victerm" that came 
with your modem. 

This file is for each of you who bought a Commodore 1660 modem (also known
as the MODEM/300) with the intention of downloading programs from 
Compuserve. Included with that modem is a nice terminal program called 
Higgyterm. When I first got my modem, I sat down and tried to download some 
programs. What I didn't know is that that version of Higgyterm (there are 
others) is not capable of downloading.

Fortunately, thanks to CHRISDOS, the head honcho of the CB Special Interest
Group, it is possible for you to use a simple BASIC program to download
"CBTERM", a first class full featured terminal program with downloading
capabilities.

Now to drop the other shoe.  Because the 1660 modem operates differently
from most modems, the program outlined in BXD.TXT won't work for you as
written.  This file will tell you how to modify AUTODIAL VICTERM (a 
program on the disk included with the 1660) to download "CBTERM", by 
adding a modified version of BXD.BAS to it.

Be sure you also get CBT551.DOC and CBT552.DOC, the instructions for using
CBTERM.  You can do this with Higgyterm by opening the buffer, (R)eading 
the file into it, and then saving the file to disk.  Don't try to get 
both files in the buffer at the same time.  This documentation printed 
out at 17 pages for me, and CBTERM has so many features that you will 
need these files to take advantage of it. 

-------------------------------------------------------------------------
     Note: also read the file CBTERM.TIP for additional information
-------------------------------------------------------------------------

While I'm at it, I'll give you some information that it took me a while to
figure out when I first got on COMPUSERVE. The files you will be
looking at will usually be followed by a period and a three letter code.  
The most common are .BIN, .IMG, .TXT, and .DOC.

.BIN and IMG. files are programs, and require an XMODEM or other terminal
program to download.  They are slightly different, but if you use CBTERM 
you don't have to worry about that.

.TXT and .DOC files are TEXT and DOCUMENT files.  These are simply files
of written information, and the easiest way to get them is to open your 
buffer and (R)ead them at the prompt.

You'll find that files often come in pairs, with PRGRM.DOC being the
instructions for using PRGRM.BIN or PRGRM.IMG

But now back to the subject at hand.

In order to download CBTERM, first LOAD VICTERM AUTODIAL from disk, but 
don't RUN it.  Enter the following lines (and you, too will be a 
programmer):


1190 OH=56577:HI=32:LO=255-32
2000 REM 1660 BOOTSTRAP DOWNLOADER 
2010 PRINT"BOOTSTRAP XMODEM DOWNLOADER"
2011 PRINT"(C) 1985 BY CHRISDOS"
2020 DIM I%(132)
2030 ACK$=CHR$(6):NAK$=CHR$(21):EOT$=CHR$(4)
2040 OPEN8,8,8,"CBTERM,W,P"
2050 FORX=1TO25:GET#5,A$:NEXTX:PRINT#5,NAK$;
2060 GOSUB2100
2070 IFCK%<>I%(132)THENPRINT"CHECK SUM BAD":GOTO2050
2080 FORX=4TO131:PRINT#8,CHR$(I%(X));:NEXTX:GET#5,A$
2090 B=B+1:PRINT"BLOCK OK":PRINT#5,ACK$;:GOTO2060
2100 N=FRE(0):FORX=1TO132
2110 IFPEEK(667)=PEEK(668)GOTO2110
2120 GET#5,A$:I%(X)=ASC(A$+CHR$(0)):PRINT".";
2130 IFX=1ANDA$=EOT$THENCLOSE8:PRINT"DONE":PRINT#5,ACK$:STOP
2140 NEXTX:PRINT"HAVE BLOCK "B
2150 CK%=0:FORX=1TO131
2160 CK%=(CK%+I%(X))AND255:NEXTX:RETURN
 
 
Check your work carefully, and SAVE this to disk with the name MUTTERM. 
Actually you can call it anything you want, but MUTTERM describes this
mongrelized program nicely.  If you decide to run the program to test it,
it will create a program title called "CBTERM" on your disk.  Don't be
fooled.  There is no program there. It's just a title.  Make sure you
scratch this program title before you actually try to download the CBTERM
program (or the download won't work).

When the magic moment comes to get CBTERM, LOAD and RUN "MUTTERM".  Put a
disk in your drive that does not have "CBTERM" listed in its directory, and
has at least 49 blocks free.  Follow the instructions in the 1660 User's
Manual for VICTERM READ to get onto COMPUSERVE.  Having done that, follow
the menu prompts to CBMCOM and then to Data Library 12 (DL12 - CBTERM &
RELATED). Maneuver to CBT45.BIN and tell COMPUSERVE you want to DOWnload 
that program.  At the following prompt, choose the XMODEM protocol.

-------------------------------------------------------------------------
             Note: The latest version of CBTerm is CBT66.bin
-------------------------------------------------------------------------

You will next see the following prompt:

Starting XMODEM download.
Enter a carriage return when transfer
is complete.

When you see this, hit RUN/STOP (unshifted!).  Then enter GOTO 2000 and
hit RETURN.  This will begin a conversation between your computer and
COMPUSERVE's that will result in "CBTERM" being SAVEd directly on your
disk.  You should immediately see a series of dots appearing across your
screen, indicating that data is being transferred.  If you don't see 
anything for a minute, enter GOTO 2050 <RETURN>.  Wait a minute and then 
repeat this cycle a few times in hopes that you get some results.  If you 
don't, well, bad luck.  You don't have the terminal program but you are 
no worse off than you were before.

If things are going OK you will get progress reports from your computer as
the download continues.  About every 20-30 seconds you should see "HAVE
BLOCK" followed by the number of blocks of information that your computer 
has received.  The screen will then display either "BLOCK OK" OR "CHECK 
SUM BAD", depending on whether the block was accurately received.  If it 
was not recieved properly, the computer will try to get that block again.
  Again, if the program seems to stop running for one minute, hit RUN/STOP
and enter GOTO 2050 to try to get things going again. 


The whole process of downloading CBTERM involves transferring 95 blocks of
information and will take 15 to 20 minutes if you have no problems.  If
the download is succesful, the following prompt will appear:

DONE.
BREAK IN 2130

Enter GOTO 200 to resume using AUTODIAL VICTERM and then enter the <RETURN>
that COMPUSERVE asked you for at the beginning of the download.  You can
then continue your visit to CBIG and COMPUSERVE, or you can log off and
begin taking advantage of your new terminal program.

Just in case you are like me, and you can't wait to try out a new program,
here are some things you should know about CBTERM and the 1660.  Load the
program with LOAD "CBTERM",8, and then RUN it.  When the prompt "BAUD" 
comes up, enter 3 (for 300).  When the first screen comes up, hit the 
COMMODORE key and the 5 key at the same time.  This will set you up for 
Negative Dialing. Next, hit the COMMODORE key and H (for help) at the same
time to see a list of most of the commands to CBTERM.  If you are 
adventurous, you will then have enough information to use CBTERM to get 
back online and grab some other programs.  If you are less impetuous, 
check out the documentation files first.

Just some further information.  After using CBTERM for a while, I downloaded
some other terminal programs from the CBM programming SIG.  Some of them may
be excellent for other applications, but I haven't found any program that is
better suited to working with COMPUSERVE than CBTERM, and you can get
it here for free, courtesy of CHRISDOS. 

BXD.BAS is (c) Chris Dunn, AKA CHRISDOS, and is quoted here by
permission.


             Geoff Sjostrom
               72207,2026
 