home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
genie-commodore-file-library
/
C64Telecom
/
HIGGYTERM-DOCUMENT-(ORIG
< prev
next >
Wrap
Text File
|
2019-04-13
|
32KB
|
1,317 lines
"
" 64TERM - A smart terminal program for the Commodore-64.
" Author of program and manual: Paul Higginbottom.
" Preliminary TERM-64 manual Page...2
" Contents:
" Section Description Page
" --------------------------------------------------------
" 1. Getting started XX
" 2. The tools XX
" 3. Terminal mode XX
" 4. The status line XX
" 5. Disk directory XX
" 6. Examine/alter protocols XX
" 7. Print file/buffer to screen/printer XX
" 8. Examine/alter function keys XX
" 9. Load or save parameters XX
" 10. Send a file to the modem XX
" 11. Save memory buffer XX
" 12. Exit program XX
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...3
" Getting started
" To make sure no previous programs, or programming of your Commodore-64
" will affect the running of this program, turn the computer OFF, if it
" is currently on.
"
" Now turn ON the computer and your disk unit, and with the program
" diskette in the drive, type:
"
" LOAD'TERM64',8,1
"
" and press RETURN.
"
" The program will automatically run; the screen will go blank, and
" shortly, the menu will appear as follows:
"
" ---------------------------------------
" Smart Terminal Program
" By Paul Higginbottom
"
" (c)1983 Commodore Business Machines Ltd.
"
"
" 1. Enter terminal mode
" 2. Disk directory
" 3. Examine/alter protocols
" 4. Print file/buffer to screen/printer
" 5. Examine/alter function keys
" 6. Load or save parameters
" 7. Send file to modem
" 8. Save memory buffer
" 9. Exit program
"
" Press '1' to '9' to select function
"
" ---------------------------------------
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...4
" ***********************************
" * *
" * NNN NN OOO TTTTTT EEEEEE *
" * NNNN NN OO OO TT EE *
" * NN NNNN OO OO TT EEEE *
" * NN NNN OO OO TT EE *
" * NN NN OOO TT EEEEEE *
" * *
" ***********************************
"
" FROM ANY POINT IN THE PROGRAM (#1) TO RETURN TO THE MENU, SIMPLY PRESS
" THE 'STOP' KEY.
"
" (#1 - IN TERMINAL MODE, IT'S SHIFTED 'STOP' SO THAT IT CANNOT BE
" PRESSED ACCIDENTALLY).
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...5
" The tools
" This section is provided to outline what this program can do, and an
" overview of how it can be done.
"
" When using this program, there are 3 forms of interaction you can have
" with it. They are:
"
" 1. Menu function selection, and supplying the information for a given
" option.
"
" 2. Command function from terminal mode, to change a 'mode' of
" operation.
"
" 3. Interaction with another computer.
"
" The menu shows you the options available to you, but provided below is
" a wider explanation of each option:
"
" 1. Enter terminal mode - This puts you in a communications environment,
" wherein, each character you type will be transmitted to another
" computer, and each character sent to you, by the other computer you are
" communicating with, will be displayed on your screen. In terminal
" mode, the screen displays a status line (the tope line of the screen)
" and the remaining 24 lines of the screen are the 'terminal's screen.'
" Certain key combinations will alter the various status 'indicators' on
" the status line.
"
" These key functions allow you to modify the terminal environment (for
" example, enabling 'word-wrap' which commands the program to
" automatically avoid words being split at the end of a line, by
" 'pushing' them onto the next line.)
"
" 2. Disk directory - This will display the directory of the diskette in
" the drive which you would usually see by doing:
"
" LOAD'$',8
"
" LIST
"
" 3. Examine/alter protocols - This option allows you to examine, and/or
" alter the communications protocols required for the particular modem,
" and/or remote computer. An example of a 'protocol' is 'baud rate',
" which is the speed at which data is transfered between the computers'
" modems. Most inexpensive modems are '300 baud' which is a transfer
" rate of roughly 30 characters per second.
"
" 4. Print a file/buffer to screen/printer - This allows you to display
" on the screen or print on the printer, the text captured in the
" computers memory with this program, or a file on the disk.
"
" 5. Examine/alter function keys - The Commodore 64 has 4 function keys.
" This package allows you to make them send to another computer, one or
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...6
" more character(s) by just one single keypress. For example, most data
" bases have a 'HELP' command. You might want to have one key press send
" 'HELP' and a <RETURN> to the remote computer. Or, similarly, any
" frequently used command/string of text can be assigned to a single
" keypress.
"
" 6. Load or save parameters - The protocols, the function key
" definitions, and even the screen, text, and border colours, may be
" loaded or saved as a 'parameter file' on disk. This is useful for
" communicating with different systems, with differing protocols, and
" commonly used commands which you have defined in the function keys. An
" example of two parameter files might be 'Source' and 'Compuserve.'
"
" 7. Send file to modem - This is a simple file transfer option. A file
" on the diskette in the drive can be transmitted to the remote computer.
" This for example, could be used to send electronic mail prepared on
" your computer when you weren't communicating with the remote computer.
"
" 8. Save memory buffer - This option allows you to save the text stored
" in the computers memory in a file on the disk drive.
"
" 9. Exit program - This option will reset the computer, as if it were
" turned off and on again.
"
" Technical note:
"
" This program is designed for communicating via the RS-232 port of the
" Commodore-64 (an edge connector, which will require suitable cable, or
" a VIC1011A adaptor) to another computer, or modem, at speeds from 50 to
" 2400 baud. Since the Commodore-64 has only one RS-232 port, the
" program assumes the printer is connected to the CBM serial port as
" device 4, or some other interface cartridge which intercepts the KERNAL
" functions (for example, RTC's 64-LINK cartridge, which allows any IEEE
" printers to be connected to the Commodore-64. This program will work
" with that cartridge installed.)
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...7
" Terminal mode (option 1 from the menu)
"
" Pressing '1' from the menu puts you in 'terminal mode' which is the
" environment where ALL communicating with another, remote computer is
" done.
"
" A status line is shown on the top line of the screen. It should look
" like:
"
" :T:S:O:W:D:B:-12:00:00-42000:0:000:000:
" ! ! ! ! ! ! ! ! ! ! !--Character code
" Status Indicators ! ! ! ! received
" ! ! ! !
" Clock------------! ! ! !------Character code sent
" ! !
" Free memory in buffer----! !----------No. nulls to be sent
" after a carriage return
"
"
" T - (The 'timeout' indicator) When you transmit characters to a remote
" computer, usually by typing, the usual environment of communications is
" known as 'full duplex' which simply means that the [larger] remote
" computer will send back to the Commodore-64 each character you send to
" it. This indicator will 'light up' (go into inverse video) if, when in
" full duplex, a character you transmit is not sent back by the remote
" computer within a short time.
"
" S - (The ALLCAPS mode indicator) The shiftlock key on the
" Commodore-64's keyboard is not always useful for entering upper case
" text, because it will shift the numerics and all other keys also, so an
" 'ALLCAPS' mode is provided for simply ensuring all alpha characters
" ('a' to 'z') transmitted are sent in UPPER case regardless of whether
" the shift key is depressed. This mode can be turned on and off by
" holding down the Commodore key and pressing 's'.
"
" O - (The OUTPUT-SUPPRESSED mode indicator) When lit, the user's output
" will not be displayed (in either half or full duplex). This is useful
" for not allowing other people to see you entering passwords on remote
" computer systems, for example. The indicator can be turned on and off
" by holding down the Commodore key and pressing 's'.
"
" W - (The WORD-WRAP mode indicator) Since the Commodore-64 can display
" 40 characters on a line, instead of 80 (or even 132) columns as most
" commercially used terminals can, words may get 'split' at the right
" hand side of your screen (for example, the word 'Commodore' beginning
" in the 35th column, and 'Commo' is on that line, and 'dore' ends up at
" the start of the next line). When the WORD-WRAP indicator is lit, the
" program will automatically ensure that no words are split at the end of
" a line. It does this by pushing the word onto the next line if it
" won't fit on the current line. Word-wrap mode can be turned on and off
" by holding down the Commodore key and pressing 'w'.
"
" D - (The DISPLAY-CONTROL-CHARACTERS mode indicator) It is most often
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...8
" not necessary to see the incoming control characters (character codes 0
" through 31 decimal, excluding certain ones, for example, 'Carriage
" Return', which is 13), but in case the user does wish to see them, the
" program allows for this. Control characters will be shown as
" highlighted characters on the screen, from '@' to 'Z'. To
" enable/disable this mode, hold down the Commodore key and press 'd'.
"
" B - (The BUFFER-OPEN/CLOSED mode indicator) Any text which is displayed
" can be stored in the memory of the Commodore-64, for later viewing, or
" hardcopy on the printer, or even storing to the disk in a file. This
" ability is known as a 'memory buffer' because the text is 'buffered'
" for later usage. The five digit number on the status line indicates
" how much memory is left for text to be stored. The text is only put
" into the memory buffer if the indicator is lit, which allows you to
" selectively store information (for example, news stories or only
" certain stock information). To start or stop the program storing
" incoming text in the memory buffer, hold down the Commodore key, and
" press 'b'. If you wish to 'clear out' the memory buffer, i.e.,
" instruct the computer to 'forget' all it has stored for you, thus
" makinng available all the memory again, hold down either shift key, and
" press '*'.
"
" For quick temporary storage of, for example, an address, or other piece
" of information you quickly want to capture, but you didn't have your
" memory buffer open, hold down the Commodore key, and press 'x'. This
" swaps the screens contents with a SECOND screen. Pressing 'Commodore
" X' again, will bring back the 'first' screen again.
"
" The clock - functions like a normal clock; can be used to inform you of
" connect time on a system, or give you the actual time. Can be reset to
" 00:00:00 by holding down the Commodore key and pressing 't', or set to
" a given time from the Examine/alter protocols option (3) from the menu.
"
" Summary of keyboard 'functions' in terminal mode:
" <SHIFT *> - Clear memory buffer
" <Commodore S> - Enable/disable ALL CAPITALS mode
" <Commodore O> - Enable/disable displaying of your typing for privacy
" <Commodore W> - Enable/disable automatic formatting of the end of each
" line
" <Commodore D> - Enable/disable display of control characters (ASCII
" 0-26)
" <Commodore B> - Enable/disable memory capture of displayed text
" <Commodore P> - Reset buffer pointer without clearing buffer
" <Commodore C> - Close disk file when sending a file from disk
" <Commodore +> - Change background colour of the screen
" <Commodore -> - Change colour of text
" <Commodore *> - Change border colour
" <left arrow> is displayed as an underscore on the screen (consistent
" with 'most' terminals).
" <CTRL L> If received, acts as a 'form feed' and clears the screen
" <CTRL :> Generates an ESC (ASCII 27) character
" <Commodore X> Swap screen with second stored, screen.
" <CTRL +> Increase the number of nulls to be sent after a
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...9
" carriage return (maximum 9)
" <CTRL -> Decrease the number of nulls to be sent after a
" carriage return (minimum 0)
" <shifted DEL> - Generates ASCII DELETE character (value 127)
" <Commodore T> - Resets clock to 0:00:00
"
" The function keys send strings as designated:
"
" Unshifted..............<F01>/<F03>/<F05>/<F07>
" Shifted................<F02>/<F04>/<F06>/<F08>
" Commodore..............<F09>/<F10>/<F11>/<F12>
" CTRL...................<F13>/<F14>/<F15>/<F16>
"
" Local editing mode
"
" This terminal program gives you to do full screen editing (as you do
" when correcting mistakes, when entering a program), even when the
" computer you are communicating with, does not support such a function.
"
" If RETURN is pressed while either shift key is held down is entered
" when in terminal mode, the cursor will flash (instead of being
" 'solid'). Incoming text will still be output to the screen as normal,
" but further typing by the user is NOT transmitted to the remote
" computer. At this point, you can use the CURSOR MOVEMENT KEYS (up,
" down, left and right), the INSert key, the DELete key, the HOME and CLR
" keys, and in fact, EVERY key to edit and enter text onto the screen.
" When you want to send a line of text, you simply position the cursor on
" the first character to be sent, and enter another <SHIFTED RETURN>.
" The program will then enter all characters from that point on on the
" screen line, and also transmit a RETURN.
"
" 'What can I use that for?' you say. Let's take a look at an example
" usage of this feature:
"
" Let us suppose the computer you are communicating with is awaiting your
" command. You want to send a letter to another user, and you enter the
" command:
"
" MAIL SEND JOHN EXPRESS
"
" The system responds with:
"
" User 'JOHN' not found.
" Re-enter:
"
" And you realise that you entered the NAME of the user you wished to
" send mail to instead of their computer account 'ID', which this
" particular system requires. You no longer have to type this command in
" all over again, you simply enter 'local editing mode' by holding down
" the shift and pressing RETURN. The cursor should be flashing. You
" move the cursor up using the cursor movement keys and correct the
" mistake:
"
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...10
" MAIL SEND XYZ999 EXPRESS
"
" To send the whole line again, you simply position the cursor on the 'M'
" in 'MAIL' (often easiest by pressing return, and then cursor up, if
" you're on the same line as the line you wish to send), and then press
" return while holding down the shift again, and you'll see the line
" re-entered for you.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...11
" Disk directory (option 2 from the menu)
"
" As soon as you press '2' from the menu, the screen will clear, and the
" directory will be listed onto the screen. As it is listed, any key can
" be pressed to stop and resume the listing, and if the STOP key is
" pressed at any time, the listing will terminate.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...12
" Examine/alter protocols (option 3 from the menu)
"
" When the program is run, the RS232 and terminal parameters are set to
" defaults which are suitable for practically all terminal work at 300
" baud, which includes the VICMODEM.
"
" When 3 is pressed from the menu, the current protocols are displayed.
" To alter them, simply press the numeric key alongisde the particular
" protocol. For example, to change duplex, press '1'. When you've set
" them to your particular requirements, pressing the STOP key will return
" you to the menu.
"
" The protocols are:
"
" '1' - Duplex - alternatives - Half, or Full. In half duplex, each
" character transmitted by your computer is displayed by the program on
" the screen. In full duplex, the program expects the remote computer to
" send each character back which your computer sends to it. Almost all
" commercial networks operate in full duplex. If, for example, you want
" to communicate with another FPZZPZ(64 though, both you, and your
" remote telecomputing partner would need to operate in half duplex.
"
" '2' - Line feed - alternatives - Yes, or No. After you transmit a
" carriage return, some networks require a linefeed also. This option
" allows you the alternative of having a line feed sent automatically
" after a return, or not. This is becoming less likely though, and in
" most operation, you would have the option set to 'No'.
"
" '3' - Stop bits - alternatives - 1, or 2. The RS232 interface
" separates each character of information with 1 or 2 stop 'pauses' or
" bits. Sometimes, more often with 1200 baud, you might need to send 2,
" instead of the far more usual 1.
"
" '4' - Parity - alternatives - None, Even, Odd, Space, or Mark. The
" RS232 interface can mark the end of each character, with an extra piece
" of information (known as a 'parity bit'), which gives either computer,
" a slightly more secure way of ensuring good data transmission. You
" would have to investigate which parity the computer you are
" communicating with requires. Most systems don't require any parity, or
" just ignore it.
"
" '5' - Baud rate - alternatives - 110, 150, 300, 600, 1200, 1800, or
" 2400. The RS232 interface can transmit information at different
" speeds. This will need to be set according to your modem, and/or the
" computer you are communicating with. 300 baud is the most common, with
" 1200 being used for 'high speed' communication usually.
"
" '6' - Word length - alternatives - 5, 6, 7, or 8 bits. Some remote
" computers ignore, or don't use all of the 8 bits in a byte. If, for
" example, you set this parameter to 7 bits, the 8th bit will be ignored.
"
" '7' - Set time - asks for the time you wish to set the clock to (which
" is displayed in terminal mode). The format of the time you enter is
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...13
" checked and if the program doesn't understand what you have entered,
" the bell will ring, and the time will not be altered. Do NOT enter in
" 24 hour format, it's a 12 hour clock. You can enter just the hours and
" minutes (the seconds will default to 0), or you can enter the full
" hours, minutes and seconds. 2 digits for each part must be entered,
" therefore, if the time is five minutes after two, you should enter:
"
" 0205
"
" or
"
" 020500
"
" '9' - Return to menu - if pressed, the program returns to the menu.
" This can also be achieved at any time by pressing the STOP key.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...14
" Print file/buffer to screen/printer (option 4 from the menu)
"
" This important option, allows you to print, to either the screen or
" your printer, the text you captured in the computer's memory buffer, or
" a disk file.
"
" When '4' is pressed to select this option, you will be asked:
"
" Buffer or file?
" (Press 'B' or 'F')
"
" As implied, press 'b' if you wish to print whatever text you may have
" stored in your memory buffer, or 'f' for a disk file.
"
" Having selected 'b' or 'f', you will then be asked (the screen will
" clear) if you wish to print to the screen or printer in a similar 'one
" key' selection. Press 's' if you just wish to view the memory buffer
" or disk file on the screen, or 'p' if you want to print the text on
" your printer.
"
" If you are printing a disk file (instead of the memory buffer), you
" will be asked for the name of the file. If you enter a filename and
" the file is not on the diskette in the drive, a bell will sound, and
" you will be returned to the main menu.
"
" If you opt to output either the contents of your memory buffer, or the
" disk file to your printer, you will then be asked to select your type
" of printer. Note, the program assumes the printer is connected to the
" CBM serial port as device 4, or some other interface cartridge which
" intercepts the KERNAL functions (for example, RTC's 64-LINK cartridge,
" which allows any IEEE printers to be connected to the Commodore-64.
" This program will work with that cartridge installed.)
"
" The program's options include:
"
" 1)1525 (or 1526), 2)Other CBM printer (IEEE printers, NOT 8300P), or
" 3)True ASCII printer (other brand of printer or Commodore 8300P).
"
" While the file/buffer is printing to screen/printer, any key can be
" pressed to stop and resume printing, and if the STOP key is pressed at
" any time, printing will terminate, and the program will prompt you to
" press any key to return to the menu.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...15
" Examine/alter function keys (option 5 from the menu)
"
" This option allows you to examine or change, the strings of characters
" which will be sent by the function keys, and function keys in
" conjunction with shift/Commodore/CTRL keys.
"
" For your own security, a password is requested when this option is
" selected from the menu. When no parameter file has been loaded, and
" the password has not been changed, it is defaulted to '64'.
"
" Having entered the password, you will see a display like:
"
" ----------------------------------------
" 5. Examine/alter function keys
" f01='
" f02='
" f03='
" f04='
" f05='
" f06='
" f07='
" f08='
" f09='
" f10='
" f11='
" f12='
" f13='
" f14='
" f15='
" f16='
" Enter key to change, press 'STOP'
" for menu, or 'p' to change password.
" ----------------------------------------
"
" To alter a string, enter the function keypress itself, for example,
" function key string 11 (f11) is entered by holding down the Commodore
" key, and pressing 'f5'. (For a full list of the key sequences, see
" 'Summary of keyboard functions' in section 2.) Having selected the
" string to change, you will be prompted to enter the text string to be
" assigned to that key. Enter this, for example:
"
" Enter new text for function key f11
" >
"
" You type 'hello', and press RETURN.
"
" The program then asks if you want a RETURN to be transmitted after the
" string when you press the function key, by prompting you with:
"
" Add a carriage return?
"
" Enter 'y', or 'n' (yes, or no) as desired. For frequently executed
" comman&?!????a?poa???07????????5?????????????9???1?????7?9????i?5??44444??????????????????????? By Paul Higginbottom
" Preliminary TERM-64 manual Page...16
" your function key assignments are completely secure, you can even
" assign your log-in password to remote systems.
"
" You are then asked if you want the string to be displayed on the screen
" or not, with the prompt:
"
" Echo string to screen? (Y/N)
"
" Enter 'y', or 'n' (yes, or no) as desired. If you do not wish
" 'viewers' watching what commands of text you are sending to the
" computer, such as log-in passwords, you would want to press 'n' for
" this option.
"
" The string is then displayed in its place in the definitions, and if
" you chose for the string not to be echoed to the screen, there are
" small 'blocks' around the assignment.
"
" If you press 'p' from the prompt, you will be asked for a new password
" (the one you enter when selecting this option from the menu). This
" password is the ONLY way you can get into the section, so if you change
" it, be sure not to forget it!
"
" When you're finished, press STOP to return to the menu.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...17
" Load or save parameters (option 6 from the menu)
"
" The 'parameters' include the protocols, the function key definitions,
" and the screen, text, and border colours. You may be save the details
" of the way you 'configure' the program for communicating with a
" particular remote computer as a file on the disk, in a parameter file.
"
" An example of two parameter files might be 'source' and 'compuserve'
" for communicating with these large, popular database networks.
"
" When '6' is pressed to select this option, you will be asked:
"
" Load or Save parameters?
" (Press 'L' or 'S')
"
" As implied, press 'l' if you wish to load in a parameter file you have
" previously stored, or 's' if you wish to save the current parameters in
" a disk file.
"
" Having selected 'l' or 's', you will be asked for the name of the file.
" If you enter a filename which causes a disk error, a bell will sound,
" and you will be returned to the main menu.
"
" Load parameters: The colours will be set, the RS232 will be setup, the
" function keys will be re-assigned.
"
" Save parameters: The colours will be saved, the RS232 parameters will
" be saved, and the function keys assignments will be saved.
"
" After either function, the program will, once again, return to the
" menu.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...18
" Send a file to the modem (option 7 from the menu)
"
" You will be asked for the name of the file on disk to be transmitted.
" If you enter a filename and the file is not on the diskette in the
" drive, a bell will sound, and you will be returned to the main menu.
" If the file is present, the program will go into terminal mode, and
" each character from the file will be transmitted to the computer as if
" you were typing it. If 'Commodore c' is entered while the file is
" still being transmitted, or a disk error occurs, or the end of the file
" is reached, the process will stop, the disk file will be closed, and
" the user will remain in terminal mode.
"
" Technical note:
" Sometimes, the number of nulls to be sent after a carriage return will
" need to be set to more than zero to ensure the computer you are
" communicating with does not drop any characters after a carriage
" return.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...19
" Save memory buffer (option 8 from the menu)
"
" Text captured in the memory buffer in terminal mode, can be stored on
" disk, in a file, for later viewing/printing, or even usage with other
" software.
"
" You will be asked for the name of the file under which you wish to
" store the memory buffer contents. If you enter a filename which causes
" an error, a bell will sound, and you will be returned to the main menu.
" Otherwise, the storing will proceed, when completed, the program will
" return to the menu.
" 8/2/83 By Paul Higginbottom
" Preliminary TERM-64 manual Page...20
" Exit program (option 9 from the menu)
"
" Pressing '9' from the menu will reset your computer, as if it had been
" turned off and on again.
" 8/2/83 By Paul Higginbottom