-0L0. ( 2G >Error: No DOS(0 )0 / 0/(0/)00ֹ/ / Ȅ`l:0  1 1%7x0 1 1 18H 1(哅h k1 y0L0l00DEH B VL0@   Y0`0.` a000. 08&.` 0mm 8 L1ƕƔ 1擥`(sMAIN )SYSTEM b- WASTARTUP BAT b1) TERM80 b1.AUTORUN SYS U--ESYSTEM b-! Z2X32D DOS _ T STARTUP TXT b, TERM80 b1YtEQUATES ACT b#jEXACT ACT b)l%RUNTIME ACT bNTERM80 ADR b CTH BBS b!TERM80 CNF b s 1KX COM b ANSIBBS COM b BAUD COM b BONW COM b )CAPTURE COM b CHUNK COM b 4DELMAIL COM b" >EXACT COM b* EXAMPLE COM b+ GETMAIL COM b- LYNX COM b6 "MARKFILECOM b8 ^MENU1 COM b9 !READMAILCOM b MSENDMAILCOM b &.TERM80 COM b >HTEST COM b @ TOCOM COM b NWONB COM b Q YMR COM b _! YMS COM b lACTION DOC b vADDRBOOKDOC b zeGETMAIL DOC b/ @LYNX DOC b7 tMODULE DOC b: READMAILDOC b .SENDMAILDOC b )TERM80 DOC b~EQUATES M65 b%TEXAMPLE M65 b,<GETMAIL SCR b0SENDMAILSCR b  EQUATES TXT b' (HISTORY TXT b1 )INET TXT b2!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS~S28$HHH өH*HHllhhh@HHLH|)ӝtI)MӍ|hh`HH||)thh(`44DEPH BLV `)`` '4 4 4Ȣ4 4LI4 4 w4 4x '4 44X 4) ~`8 '4 4 4L4L4Error: Not an XL/XE Computer.4.4t5} SpartaDOS Ver 3.2d 17-Feb-86 Copyright (C) 1986 by ICD, Inc. 4.4 4 4G)@}҅  EEF E x4 d5 d5" #   c5  M c5 , W5 4LL4 L LLHEi ȱEi `|40 `` 7 YL\ 2BHG H-G H ةHhJ \hBL\`@B 442@3Y45245324 `L1( (ҩmi:; < =x:23454 Μ ,  w ,P lνе X0`234 5` P21 ,350 2 9 4 2 9 LD1 9)ҢL1,350 &2 4 2 1`08` S< ACE,0ɋ8` `ύ&'0`e1i1`,07 ,ߍҩҭҍ )  `_ҩҩ,,,8`H)ҩh `#,ҍ ҩ(ҥA,ҩҩ`jj)?j)`Ң`H?ʎ @  0h ``@@B,~-32@3452453c24` ɔ FNot SpartaDOS disketteLɢ FDisk fullLɪ FFile not foundLɣ FIllegal wildcard in nameLɘ FNot binary fileLɤ FFile erase protectedLɕ FNot version II disketteLɩ FDisk write lockedLɖ FDirectory not foundLɀ FBreak AbortLɐ% FWrite protected or bad sectorLɥ FFile name errorLɨ FFunction not supportedLɧ FCan't delete fileLɗ FFile existsL` w  w(0   0a Y©ÍYh   N Y©  NΟ`L 8L`@D , ̍̍)̝BJJJJJ ̝D̝E0 KJ)̝JJJ)̝H̝I D@   Ϭ,0),~  FError -- L`(),! *+  -"#$./0_@ @CA똩)*K HJJJJ 9h) 0:iLhWhXWXͭ LNͭXHWH`, Nnn ͠H͎͌͢ͽ `Mܩ,0 N ͭO` P..*N  . 0PH0  ʩ `$%` Π vAG) ..ܭ` 7`  7`L @ ύ  ύ 乀` Ω* #* Z 0DLϠ ̠ ̭0L0f 0  LϮ Lϭ  /A ̠ LL~υCυD. yϠC  y 婛蝀`ȹ  ` ̢0 8̽ H̽I̠0 (ʢ 0L *)L* *M @ L ( `L(= # , 魗  筙`( L#() LLL I0   䍠 e , ʎi 0L CL] 0G   KQ;`) x뭤B L  ,  ,)ߍ "LLL  ,] 0 # K ح)  "L  밻) 멀 "L` ,L  Ld͙Lj魗  Lj$H0Ld88A e , s eECFD8  8  9L H ,C]Dah LꭖCD L譔  魙8L LL$H0 s ,LxECFD  鬙 9L謓CCC)` L_CC C`C`C`  EFL뭔 K`8mi` /L9 Z"C X `L ꭔ C8 CDC}TCȱC}UC`  eCCD`  _C``Ipi ͟? x0,)C) `II  08` CL # , 魗 `1@R H0>h0   * HH 0hh`hh,L L { P*)0 0*`*)& K9:*$+0;QG` {!*B sﭟͻͼ/ P {0*)((a,,,L ) *) I0 , *)  I  0 I  K 䍝 ,) *I *c 0L U*) 0 @`L,0 K) MﭝI $ 0 zz  G L  Z v #(> sL L,0`H hɛ ,'L0,L P*H * {0h*L04*  0 )L Lq * { M {0Y) *LJ, -* { M {0 ,  ,) LkL, LLLL: * {, (] 0 # K M {0 LL8*  * 0I LL,H ) ") čɍҍ)*LB 0 ͠E 0)  0  63# ͌;QL   ͩ: ͭ ͩ: ͭ ͩa p ͩmLͭ ͩ- ͭ ͩ- ͭ L͢$ ` 6(ȭ(Ȣ(((ȭ(ȭ(` ȱCL,~LL # wL ʈ`1N@ 1!@1S@@8` v P  > Ȣ L >(ȩ(` (H(h `*$/ȱ$Aȩ *$$ `2Kd}j #H 0K 08}  )L ,08J mHh 8Jm , 3m L  8 L iL?EF,L譞)  #T 0N 0   Q 0` >$H s L)L  CȭC _ 1 /͓ hL\ s)H   EF 묓 hL\ KL\FА֐#eCCD$H0CELWEC$H _8m䍖L ``H譞=L `   hC̓ _`LK8EmEF8m䍚 W 0`8`8`CȱC`CȱC`  hCD ` / ?䭒,06/O)͒/?}` &O`)8O,0, } ,0} 8,0 8JHjmChmD`H)h)/ ?  &CD8 ` ` i͓ L?CC, CȭC CȭC _L 3 `),)   C&̓ͬ L,L   X,}T}U` .C   I1CC`   CC,0  L4L@ٯ` N j  ,0 z` _)8j`m K`, HJjhj`, H**hJ`_/]^/` 0 `y"U a ې;ݒ- ;m ; - ;  ]!K`Z6<` 2 @ ɛ  `  8)ɀɛ ȹ`COPLOASAVAPPENCWERASRENAMCREDIDELDICARUPRINTYPDIDIRMEPAUSVERIFBOOCHKDSPROTECUNPROTECLOCUNLOCXDIAINI?DIBASITIMDATTKE,,,,L̩` FFormat: Are you sure? )_H hY L W,P` 7l FNo cartridge` ̭8 F Volume:  ͭ   0ͩ   0 F͛Bytes/sector: 0 F͛ Total bytes:  l F͛ Bytes free:  lͭ ( F͛ Write lock: ,!0 FOFFL FONL  , ̠ 0  BLL `LX  ΍ 7 PL\l FPress any key to continue L FMemlo: $ 0ͭ 0 F Memhi: $ 0ͭ 0ͩL ̠ ̠L M)MӍӌj E L ̭O NF FParameter ErrorL` *L *L  FCurrent date is   F͛Enter new date: - 3_ɛX KJLL  FCurrent time is  F͛Enter new time: : 3 ɛ F`ɛ )_PAϩ, mJ  J JLO WMJ`:8`M {)pM mM iM {`ȹ 0:`8`L ` 7 VL\ 7 L\%H$H`LPLI L2 X  UD1:autorun.sysstartup.batQ*.*.COM.BATD1:Volume: Directory: FREE SECTORS LI z)͒}`UVThis program uses configurable data,which will be written to disk, sowhen using this image, be sure to runit from a device capable to save datato. You can't write data directly toa CD-Rom :-)Sysop Fox-1, Thunderdome,the ATARI 8-Bit BBS, the Netherlands.XKEY OFFBASIC OFFTYPE >SYSTEM>STARTUP.TXTPAUSECWD >TERM80DIRZ[\]^_`abcdefghiset 14=$4000set $491 = $4000;;Term80 Action! equates.;(C) 1996 CTH Enterprises;By Tom Hunt;All Rights Reserved;;;;Last updated 5.24.96;;;card QUE_IN = $D0 ;Queue input pointer.;card QUE_OUT = $D2 ;Queue output pointer.;char array VERSION = $2403 ;Example-; .BYTE $19,05,24,96 ; = version 1.9, created 5/24/96;char array TERM80_ID = $2408 ;Term80 I.D.;char array QUE = $268D; *= *+4000 ;80 X 25 X 2 = 4000 bytes.;This is where we buffer the input;stream.;char QUE_END = $362D ;End of queue.;char LOG_FLAG = $362D ;.BYTE $00 ;Look here to see if term80.log file;is active or inactive.;active = 0, inactive = 1;char array LOG = $362E ;Path of log file.;char JMP_TABLE = $8000;256 bytes that are reserved for;a jmp table.;proc MODULE_EXIT = $8000();This is the address that a term80;module should jmp to, in order;to exit and return to the;term80 core.;proc MODULE_RUN = $8003();jsr/jmp here to run a term80 module,;whose filename is stored at rfn.;proc HANGUP = $8006();jsr/jmp here to hang up the modem.;proc UNLOAD = $8009();jsr/jmp here to completly unload term80;proc LOG_TOGGLE = $800C();jsr/jmp here to turn on/off the log.;proc RUN_FILE = $800F();jsr/jmp here to prompt user;what module to run, then run it.;proc PUT_CHAR = $8012(char a);jsr/jmp here to put a character;to the modem.;byte func GET_CHAR = $8015();jsr/jmp here to get a character;from the modem.;byte func GET_CHARL = $8018();jsr/jmp here to get a character;from local.;proc PUT_CHARL = $801B(char a);jsr/jmp here to put a character;to local.;;proc PRINT_ILS() = $801E;N/A;jsr/jmp here to print an in-line;string, with zero termination;to modem.;;define PRINT_ILSL = $8021;N/A;jsr/jmp here to print an in-line;string, with zero termination;to local.;proc OPEN_LOG = $8024();jsr/jmp here to open log file.;proc GR_0 = $8027();jsr/jmp here to make gr.0 screen.;proc DIAL_LIST = $802A();Prints the dial list.proc DOWNLOAD = $802D();Ymodem batch download.proc UPLOAD = $8030();Ymodem batch uploadproc MARK_FILES = $8033();Mark files for upload.proc SL_TOGGLE = $8036();Scroll lock toggle.;proc MENU1 = $8039();Run external menuproc MENU2 = $803C();Run internal menu;proc CURSOR_OFF = $803F();Turns cursor offproc CURSOR_ON = $8042();Turns cursor on;proc SUSPEND = $8045();Suspends concurrent i/oproc RESUME = $8048();Resumes concurrent i/o;char DRIVE = $8100 ;Term80 work drive.;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;*.bbs files.;char array BBS_NAME = $8200;Bbs name we are calling.;char array BBS_NUMBER = $8250;Bbs number we are calling.;char array MACRO_1 = $82A0;Shift-control-1 macro.;char array MACRO_2 = $82F0;Shift-control-2 macro.;char array MACRO_3 = $8340;Shift-control-3 macro.;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;term80.cnf file.;char array INIT_STR = $8390;char array DIAL_TYPE = $83E0;char array DL_PATH = $8430;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;card OLD_DL = $8480 ;.word value;Where the 80 column list pointer;is stored.;char array BBS_WC = $8482;*.bbs filemask;char array YMR = $8493;Ymodem batch receive module filepath.;char array YMS = $84A6;Ymodem batch send module filepath.;char array MF = $84B9;Markfile.com module filepath.;char array RFN = $84D1;Where the module to run filename is stored.;char array RFP = $84F9;The path for term80 modules.;char array FONT = $9E00;This is where the 512 byte;compiled font loads.;;;More to be added later.byte array header=[0 0 0 $01 5 24 96]k;Example.act;For term80.; Include "D:equates.act" Include "D:runtime.act"proc my_error() printE("Error!")returnproc main() error=my_error printE("This is a test.") module_exit()return;mnopqrstuvwxyz{|}~;***************************;* ACTION! runtime package *;* Jeff Reister 4/18/87 *;* 400 S LaVenture #83 *;* Mt Vernon, WA 98273 *;***************************PROC _CPYPRM=*()SET $4EE = _CPYPRM;Called when subroutine has more;than 2 bytes of parameters.[$85$A0$86$A1$84$A2$18$68$85$84$69$03$A8$68$85$85$69$00$48$98$48$A0$01$B1$84$85$82$C8$B1$84$85$83$C8$B1$84$A8$B9$A0$00$91$82$88$10$F8$60]PROC _CHGSGN=*();utility for math routines.[$85$C0$86$C1$38$A9$00$E5$C0$48$A9$00$E5$C1$AA$68$60]PROC _FIXSGN=*();utility for math routines.[$86$C2$E0$00$10$03$20 _CHGSGN $85$82$86$83$A5$85$45$C2$85$C2$A6$85$10$09$A5$84$20 _CHGSGN $85$84$86$85$60]PROC _FIXRES=*();utility for math routines.[$A5$86$A6$87$A4$C2$10$03$4C _CHGSGN$60]PROC _MUL=*()SET $4E8 = _MUL;integer multiplication.[$20 _FIXSGN $A9$00$85$86$85$87$A5$82$D0$04$A5$83$F0$22$A5$84$D0$04$A5$85$F0$1A$46$85$66$84$90$0D$18$A5$86$65$82$85$86$A5$87$65$83$85$87$06$82$26$83$38$B0$D6$4C _FIXRES]PROC _DIV=*()SET $4EA = _DIV;integer division.[$20 _FIXSGN $A9$00$85$86$85$87$85$C1$A9$01$85$C0$A5$82$D0$04$A5$83$F0$5F$A5$84$D0$04$A5$85$F0$57$A5$82$C5$84$A5$83$E5$85$90$0F$A5$C1$30$0B$06$84$26$85$06$C0$26$C1$38$B0$E7$A5$C0$D0$04$A5$C1$F0$36$A5$82$D0$04$A5$83$F0$2E$A5$82$C5$84$A5$83$E5$85$90$19$38$A5$82$E5$84$85$82$A5$83$E5$85$85$83$A5$86$05$C0$85$86$A5$87$05$C1$85$87$46$85$66$84$46$C1$66$C0$38$B0$C2$4C_FIXRES]PROC _MODOP=*()SET $4EC = _MODOP;MOD operation. Actually just;remainder of division.[$20 _DIV $A5$82$A6$83$60]PROC _RSHOP=*()SET $4E6 = _RSHOP;RSH operation.[$A4$84$F0$0A$86$86$46$86$6A$88$D0$FA$A6$86$60]PROC _LSHOP=*()SET $4E4 = _LSHOP;LSH operation.[$A4$84$F0$0A$86$86$0A$26$86$88$D0$FA$A6$86$60]PROC _ERROU=*();Error routine.[$A9$70$AA$A9$0C$9D$42$03$20$56$E4$8A$38$E9$10$D0$F1$6C$0A$00]PROC _ERRVEC=*()[_ERROU]PROC _DEVIC=*()[$00]MODULECARD ERROR=_ERRVECBYTE device=_DEVICPROC _GOCIO=*();JSR to CIO routine and check;for errors.[$20$56$E4$10$1A$C0$88$F0$06$68$68$98$6C _ERRVEC $48$8A$48$4A$4A$4A$4A$AA$A9$01$9D$C0$05$68$AA$68$60]PROC _LODCHN=*();Check A reg for illegal IOCB #.;If ok, X reg = A reg * 16.[$C9$08$90$07$68$68$A9$86$6C _ERRVEC$0A$0A$0A$0A$AA$60]PROC _STONAM=*();I/O utility.[$18$69$01$9D$44$03$98$69$00$9D$45$03$60]PROC _SHFTR=*();I/O utility.[$48$8A$A8$68$AA$AD _DEVIC $60]PROC _CLREOL=*();Clear EOL flag.[$48$A9$00$85$A5$68$60]PROC _SETEOL=*();Set EOL flag.[$48$A9$01$85$A5$68$60]PROC _PRECON=*();I/O utility.[$8A$48$98$AA$68$A0$03$84$A3$A0$FD$60]PROC _DOPRNT=*();Print a string.[$86$A3$84$A4$20 _LODCHN $A9$00$9D$49$03$A8$B1$A3$F0$1A$9D$48$03$18$A5$A3$69$01$9D$44$03$A5$A4$69$00$9D$45$03$A9$0B$9D$42$03$20 _GOCIO $A5$A5$F0$12$A9$00$9D$48$03$9D$49$03$A9$0B$9D$42$03$A9$9B$20 _GOCIO $60]PROC STRC=*(CARD c, s)[$85$D4$86$D5$84$A2$20$AA$D9$20$E6$D8$A0$00$B1$F3$30$06$C8$91$A2$38$B0$F6$29$7F$C8$91$A2$98$A0$00$91$A2$60]PROC STRB=*(BYTE b CARD s)[$84$A3$48$8A$A8$A2$00$68$4C StrC]PROC STRI=*(INT i CARD s)[$E0$00$30$03$4C StrC $49$FF$85$A2$8A$49$FF$AA$E6$A2$D0$01$E8$A5$A2$20StrC $A0$00$18$B1$A2$69$01$91$A2$A8$88$B1$A2$C8$91$A2$88$88$D0$F7$C8$A9$2D$91$A2$60]PROC _DOPRNC=*();Print a CARD.[$48$20 _PRECON $20 StrC $68$A2$FD$A0$03$4C _DOPRNT]PROC DOPRNI=*();Print an INT.[$48$20 _PRECON $20 StrI $68$A2$FD$A0$03$4C _DOPRNT]PROC PRINTCD=*(BYTE d CARD c)[$20 _CLREOL $4C _DOPRNC]PROC PRINTC=*(CARD c)[$20 _SHFTR $4C PrintCD]PROC PRINTCDE=*(BYTE d CARD c)[$20 _SETEOL $4C _DOPRNC]PROC PRINTCE=*(CARD c)[$20 _SHFTR $4C PrintCDE]PROC PRINTBD=*(BYTE d, b)[$A0$00$4C PrintCD]PROC PRINTB=*(BYTE b)[$20 _SHFTR $4C PrintBD]PROC PRINTBDE=*(BYTE d, b)[$A0$00$4C PrintCDE]PROC PRINTBE=*(BYTE b)[$20 _SHFTR $4C PrintBDE]PROC PRINTID=*(BYTE d INT i)[$20 _CLREOL $4C _DOPRNI]PROC PRINTI=*(INT i)[$20 _SHFTR $4C PrintID]PROC PRINTIDE=*(BYTE d INT i)[$20 _SETEOL $4C _DOPRNI]PROC PRINTIE=*(INT i)[$20 _SHFTR $4C PRINTIDE]PROC PRINTD=*(BYTE d CARD s)[$20 _CLREOL $4C _DOPRNT]PROC PRINT=*(CARD s)[$20 _SHFTR $4C PRINTD]PROC PRINTDE=*(BYTE d CARD s)[$20 _SETEOL $4C _DOPRNT]PROC PRINTE=*(CARD s)[$20 _SHFTR $4C PRINTDE]PROC _HEXSTR=*();Convert a number to a hex string;for PRINTF.[$85$84$86$85$A9$FD$85$A2$A9$03$85$A3$A0$00$A9$05$91$A2$C8$A9$24$91$A2$A9$00$A2$04$06$84$26$85$2A$CA$D0$F8$69$30$C9$3A$90$02$69$06$C8$91$A2$C0$05$D0$E5$60]PROC PRINTF=*(CARD s,a,b,c,d,e,f,g)[$85$82$86$83$84$A2$AD _DEVIC $0A$0A$0A$0A$85$C1$A0$00$84$87$84$C0$B1$82$F0$4C$85$86$E6$C0$F0$46$A4$C0$C4$86$F0$02$B0$3E$B1$82$C9$25$D0$3E$E6$C0$C8$C4$86$F0$02$B0$35$B1$82$C9$25$F0$2F$C9$45$F0$29$A8$A6$87$E0$0E$B0$D4$B5$A2$48$B5$A3$E8$E8$86$87$AA$68$C0$43$F0$15$C0$49$F0$34$C0$48$F0$3C$C0$53$F0$3F$38$B0$1D$60$38$B0$B2$A9$9B$A8$A6$C1$A9$00$9D$48$03$9D$49$03$A9$0B$9D$42$03$98$20 _GOCIO $38$B0$E4$A0$03$84$A3$A0$FD$20 StrC $38$B0$0F$A0$03$84$A3$A0$FD$20 StrI $38$B0$03$20 _HEXSTR $A9$FD$A2$03$85$84$86$85$A6$C1$A9$00$9D$49$03$A8$B1$84$F0$B5$9D$48$03$18$A5$84$69$01$9D$44$03$A5$85$69$00$9D$45$03$A9$0B$9D$42$03$20_GOCIO $38$B0$98]PROC PUTD=*(BYTE d, c)[$86$A0$20 _LODCHN $A9$00$9D$48$03$9D$49$03$A9$0B$9D$42$03$A5$A0$20 _GOCIO$60]PROC PUTDE=*(BYTE d)[$A2$9B$4C PutD]PROC PUT=*(BYTE c)[$AA$AD _DEVIC $4C PutD]PROC PUTE=*()[$A9$9B$4C Put]BYTE FUNC VALB=*(CARD a)CARD FUNC VALC=*(CARD a)INT FUNC VALI=*(CARD a)[$85$A2$86$A3$A9$00$85$A0$85$A1$85$A5$A8$B1$A2$85$A4$C8$B1$A2$C9$20$F0$F9$C9$2D$D0$0B$C6$A5$C8$C4$A4$F0$02$B0$31$B1$A2$38$E9$30$90$2A$C9$0A$B0$26$48$06$A0$26$A1$A5$A0$A6$A1$0A$26$A1$0A$26$A1$18$65$A0$85$A0$8A$65$A1$85$A1$18$68$65$A0$85$A0$90$CD$E6$A1$38$B0$C8$A5$A5$F0$0D$38$A9$00$E5$A0$85$A0$A9$00$E5$A1$85$A1$60]PROC _DOINPT=*();Called by all input routines.[$86$A4$84$A5$20 _LODCHN $18$A5$A4$69$01$9D$44$03$A5$A5$69$00$9D$45$03$A5$A3$F0$18$9D$48$03$A9$00$9D$49$03$A9$05$9D$42$03$20 _GOCIO $BD$48$03$F0$03$38$E9$01$A0$00$91$A4$A5$A6$F0$07$A5$A4$A6$A5$4C ValC $60]BYTE FUNC INPUTBD=*(BYTE d)CARD FUNC INPUTCD=*(BYTE d)INT FUNC InputID=*(BYTE d)[$48$A9$78$85$A3$A9$01$85$A6$68$A2$FD$A0$03$4C _DOINPT]BYTE FUNC INPUTB=*()CARD FUNC INPUTC=*()INT FUNC InputI=*()[$AD _DEVIC$4C InputCD]PROC INPUTMD=*(BYTE d CARD s BYTE l)[$48$A9$00$85$A6$68$4C _DOINPT]PROC INPUTSD=*(BYTE d CARD s)[$48$A9$FF$85$A3$68$4C InputMD]PROC INPUTS=*(CARD s)[$20 _SHFTR $4C InputSD]CHAR FUNC GETD=*(BYTE d)[$20 _LODCHN $A9$00$9D$48$03$9D$49$03$A9$07$9D$42$03$20 _GOCIO$85$A0$60]PROC OPEN=*(BYTE d CARD s BYTE m, a)[$86$A1$20 _LODCHN $A5$A1$20 _STONAM $A5$A3$9D$4A$03$A5$A4$9D$4B$03$A9$03$9D$42$03$20 _GOCIO $8A$4A$4A$4A$4A$AA$A9$00$9D$C0$05$60]PROC CLOSE=*(BYTE d)[$20 _LODCHN $A9$0C$9D$42$03$20_GOCIO $60]PROC XIO=*(BYTE d,z,c,a1,a2 CARD s)[$20 _LODCHN $98$9D$42$03$A5$A3$9D$4A$03$A5$A4$9D$4B$03$A5$A5$A4$A6$20_STONAM $20 _GOCIO $60]PROC NOTE=*(BYTE d CARD s, o)[$86$A1$84$A2$20 _LODCHN $A9$26$9D$42$03$20 _GOCIO $A0$00$BD$4C$03$91$A1$BD$4E$03$91$A3$BD$4D$03$C8$91$A1$60]PROC POINT=*(BYTE d CARD s BYTE o)[$86$A1$20 _LODCHN $A5$A1$9D$4C$03$98$9D$4D$03$A5$A3$9D$4E$03$A9$25$9D$42$03$20 _GOCIO $60]PROC GRAPHICS=*(BYTE m)[$48$A2$60$A9$0C$9D$42$03$20$56$E4$68$9D$4B$03$49$10$09$0C$9D$4A$03$A9$53$85$A0$A9$3A$85$A1$A9$A0$9D$44$03$A9$00$9D$45$03$A9$03$9D$42$03$20 _GOCIO$60]PROC SETCOLOR=*(BYTE r, h, l)[$C9$05$B0$13$85$A0$8A$0A$0A$0A$0A$85$A1$98$29$0F$05$A1$A6$A0$9D$C4$02$60]PROC POSITION=*(CARD x BYTE y)[$85$55$86$56$84$54$60]PROC PLOT=*(CARD x BYTE y)[$20 Position $A9$06$AE$FD$02$4CPutD]PROC DRAWTO=*(CARD x BYTE y)[$20 Position $A2$60$A9$11$9D$42$03$AD$FB$02$8D$FD$02$20 _GOCIO$60]PROC Fill=*(CARD x BYTE y)[$20 Position $A2$60$A9$12$9D$42$03$AD$FB$02$8D$FD$02$20 _GOCIO$60]BYTE FUNC Locate=*(CARD x BYTE y)[$20 Position $A9$06$4C GetD]PROC Sound=*(BYTE c, p, d, v)[$C9$04$B0$25$86$A1$0A$AA$A9$00$8D$08$D2$A9$03$8D$0F$D2$A5$A3$29$0F$85$A3$98$29$0E$0A$0A$0A$0A$05$A3$9D$01$D2$A5$A1$9D$00$D2$60]PROC SndRst=*()[$A9$00$A2$07$9D$00$D2$CA$10$FA$60]BYTE FUNC Paddle=*(BYTE p)[$29$07$AA$BD$70$02$85$A0$60]BYTE FUNC PTrig=*(BYTE p)[$29$07$AA$BD$7C$02$85$A0$60]BYTE FUNC Stick=*(BYTE p)[$29$03$AA$BD$78$02$85$A0$60]BYTE FUNC STrig=*(BYTE p)[$29$03$AA$BD$84$02$85$A0$60]INT FUNC SCompare=*(CARD s1, s2)[$85$A4$86$A5$84$A2$A0$00$84$A0$84$A1$B1$A4$85$A6$B1$A2$85$A7$C4$A6$F0$15$C4$A7$F0$11$C8$B1$A4$D1$A2$F0$F1$90$03$E6$A0$60$C6$A0$C6$A1$60$A5$A6$C5$A7$F0$F9$B0$F0$90$F1]PROC SCopy=*(CARD d, s)[$85$A0$86$A1$84$A2$A0$00$B1$A2$A8$B1$A2$91$A0$C0$00$F0$04$88$38$B0$F4$60]PROC SCopyS=*(CARD d, s BYTE b, e)[$85$A0$86$A1$84$A2$A0$00$84$A6$B1$A2$C5$A5$B0$02$85$A5$A5$A4$F0$15$C5$A5$F0$02$B0$0F$A4$A4$E6$A4$B1$A2$E6$A6$A4$A6$91$A0$38$B0$E7$A5$A6$A0$00$91$A0$60]PROC SAssign=*(CARD d, s BYTE b, e)[$85$A0$86$A1$84$A2$A5$A4$F0$3B$C5$A5$F0$02$B0$35$85$A7$C6$A7$A0$00$84$A8$B1$A0$85$A9$B1$A2$85$AA$A5$A7$C5$A5$B0$15$A5$A8$C5$AA$B0$0F$E6$A8$A4$A8$B1$A2$E6$A7$A4$A7$91$A0$38$B0$E5$A5$A7$C5$A9$90$04$A0$00$91$A0$60]BYTE FUNC Rand=*(BYTE r)[$85$A2$C6$A2$A9$01$C5$A2$B0$05$38$2A$38$B0$F7$85$A3$AD$0A$D2$25$A3$C5$A2$F0$04$90$02$B0$F3$85$A0$60]PROC Poke=*(CARD a BYTE v)[$85$A0$86$A1$98$A0$00$91$A0$60]PROC PokeC=*(CARD a, v)[$20 Poke $C8$A5$A3$91$A0$60]BYTE FUNC Peek=*(CARD a)CARD FUNC PeekC=*(CARD a)[$85$A2$86$A3$A0$00$B1$A2$85$A0$C8$B1$A2$85$A1$60]PROC SetBlock=*(CARD a, l, v)[$85$A0$86$A1$84$A2$A0$00$A5$A2$D0$04$A5$A3$F0$16$A5$A4$91$A0$C8$D0$02$E6$A1$C6$A2$A5$A2$C9$FF$D0$E7$C6$A3$38$B0$E2$60]PROC Zero=*(CARD a, l)[$48$A9$00$85$A4$68$4C SetBlock]PROC MoveBlock=*(CARD d, s, l)[$85$A0$86$A1$84$A2$A0$00$A5$A4$D0$04$A5$A5$F0$18$B1$A2$91$A0$C8$D0$04$E6$A1$E6$A3$C6$A4$A5$A4$C9$FF$D0$E5$C6$A5$38$B0$E0$60]MODULEName: Tom HuntTo: tomhunt@brutus.bright.netComments: Atari 8bit developer.;Term-80 example .bbs file.;;Name of bbs.The Closer To Home BBS;BBS phone number.4193684413,,,;Shift-Control-1 thru 3 macros.;Macro #1YOUR NAME;Macro #2YOUR PASSWORD;Macro #3B;Term-80 example .cnf file.;;Term-80 work drive.1;;Modem init string.ATM1;;Dial command, either ATDT or ATDP.ATDP;;Download path.D1:>term80>download>@c@LK_ˠàéȠ󠠠tDD65536 EE#EiEL1EL9ELZELHE BLVJKBLV䨩HI BLVHIBLVjE}EӍjE)`jE`~EyFGGMGFMGGEG`GGEMGFMGGEGE`!Bc)Jk1sR9{ZbC ǤjK( ϬSr0[z8冧@a#펯Hi +ԷqP3ܿyX;"`A* hI2Qp:Yx -No%Fg=^5wV˨nO, àzFuGfG$_~]|6Ut 0@P`p2"RBrb$4dtDT6&vfVFHXhx(8ZJzj :*뛋l|L\,< ݭ~n^N>.Ͽ0 P@p`"2BRbrvGG4$tdTD&6fvFV陉XHxh8(JZjz *:ͽ|l\L<, ߯n~N^.>GGhh懠 .ELGHH`GHR%& GR: handler NOT found!LKȹȹ vHeLMIIYJfLMIIZJ vH vH[LMvIIOJ\LMwIIPJ`iȱi`HHiH B VͮH` +ELHHI@ %E .ELJ H .E` kE Please input the filename.-->> wEѝDEHIB V0DɛфDɛ kE Downloading-->> wEDDEHI B V`LK  d@榤`dI@IIJLK LI 榤IID`$E`$E$E ` .E< K .E< K GToo Many Errors! Cancelling Transfer!LuJ rJi?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'abcdefghijklmnopqrstuvwxyz(|) CueaaaaceeeiiiAAEaAooouuyOUYPfaiounNao  <>|||||aBnouTOOOoo0 =/`  @0LL@:LL@H @ @ @ @h0; !300 Baud$BJKLzCR1:vDCE VL4ELD1< !1200 Baud$B JKLCR1:DCE VL4ELD2< !2400 Baud$B JKLCR1:DCE VL4ELD3< !4800 Baud$B JKL:DR1:6DDE VL4ELD4< !9600 Baud$BJKLzDR1:vDDE VL4ELD5> !14,400 Baud$BJKLDR1:DDE VL4ELD6 !Exiting.LDLL@ !OKLDR1:DDE @(BJKL%ER1:!DEE V` !ERROR!Concurrent mode no longer active, please reload term80.`@@L@ _ŠΠˠéԠȠ󠠠䠛L@L@L@L@ BLVJKBLV䨩HI BLVHIBLV@@Ӎ@)`@`@A F `@$LUAL AThis module is ONLY for use withD@E!HI B VL4ATerm80.,DAEHI B Vl @ @ Setting colors to WHITE background, BLACK characters. @ @@ @ OK. @`@cCLK_L@L@L<@L*@ BLVJKBLV䨩HI BLVHIBLVXXXXXXXX&`Heeh`k@HHHk@)j@)~ T@ T@ Z@j@)L@JJJJIL@hhh`HHi@i@ *+ hh`HHH T@ T@ T@ Z@ T@J Z@XY Z@hhh` l@HHH @J-(L@ L@)L@ Z@hhh`()L@ Z@HHH @ @@hhh`HHH @@hhh`HHH A Ahhh`HHAA ALA Ahh` @HHH)B)L2BJJJJBL@(eeȌBhhh`HHO B ,ALVB )Ahh`HoBOO B ,AoBhoB )A`XXXXXXXXXXXXXXXX BHHBBj@L@B B BBꭠB j@ )ِB )٘B䊍BhhB`) Z@j@'BIBBIB8nBhh8` BHHL@IL@hhL,AJKDx:>term80>term80.capJ@ @@DJE @01dPKCQKUJTJ ?UTUT BPKQKUUPUTTڢ@dDCEHI B V@ @JUJT B`@@LA`M@@Dx:>term80>outfile.1 Lq@Ly@L@L@ BLVJKBLV䨩HI BLVHIBLV@A@$LAL@This is a Term80 module, andǝD@EHI B VL+Arequires the use of the Term80 coreDAE$HI B VLjAin order to work correctly.NDAEHI B Vl !Sorry, this is a modulAAe that can ONLYbe ran with Term-80 1.9 or greater.`$LA`AB @N@ !Please input the complete filespec for the input file.->D@E?HIB V@ e@@D@E h@P e@PMD@E h@MD@EHI B V@8DCEH'IB VP8DCEHI B V(L CB7C$@ k@HP n@hɛ.P n@P n@`@LfB.P n@P n@@ e@P e@ !All done!L@-HLDDx:>term80>getmail.scr Dx:>term80>mail.txt LALAL=AL+A BLVJKBLV䨩HI BLVHIBLV A A`RD&LAR: handler NOT found!mDAEHI B VLMAȹȹ BbBBBbBcBBBcB B&B&B&B'B'B'B B5BBBBBB5B5B6BBBBBB6B6B`iȱi` ` =DDD ͞D͝D8`oBBpB DDD  ɛ`oBpB DDD ͥ͞D͝D8` `  LB i<DiD` DDD DmDDmDDDD` D;DߝD@EHIB VLGdele DGEHI B VߍG@Gɛ"  B V  GGש   qD B !Ok.LF !No email messages.LF@7HL H$&.6P@0ф`&@hihiHHȱȱ`8Hh` \@E…¦ \@`L\@` m@"Ff ee&8L@ m@_Wń児0 &&86.ń児8儅充FfFf8L@ @` Fj` &`p B V8l oA VhhlAHHJJJJhh`hhlA `iDiE`HhA`Hh`Hh`Hh` AIHiDiE B AHI B A`ԆՄ ؠ0ȑ8)ȑ`HhL)B0L)BII襢 )Biȑȩ-`H A )BhLAH A WBhLA ALB ALB ALB ALBLB ALBLB ALB ALB ALB ALB ALB ALA ALB ALA ALBȩ$&*i0:iȑ`A LFĆ>%>Ć5%/E)ԵH膇hCI4Hterm80>getmail.scr Dx:>term80>mail.txt LAL ALAAL/A BLVJKBLV䨩HI BLVHIBLV A A`RD&LAR: handler NOT found!qDAEHI B VLQAȹȹ BCCJCCCJC BjCjCjCkCkCkC ByCCCIAJIyCyCzCCCIBJIzCzC`iȱi`)B$L^CLcBThis is a Term80 module, andFDBEHI B VLBrequires the use of the Term80 coreDBE$HI B VLBin order to work correctly.͝DBEHI B Vl !Sorry, this is a module that can ONLYbe ran with Term-80 1.9 or greater.L$L C` ` EEE EE8`CDC ^EEE  ɛ`CC ^EEE ͥEE8` `  LC i?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'abcdefghijklmnopqrstuvwxyz(|) Cueaaaac~}EaAooouuyOUYPfiounNao  <>/` @A$LA !Sorry, this is a module that can ONLYbe ran with Term-80 1.9.`$LXA@@L@@ELA_Ů͠éԠȠ󠠠䠛L@L@L@L@ BLVJKBLV䨩HI BLVHIBLVD1:>TERM80>TERM80.BAT `AH) Please input the filemask for the file(s) you want to mark for uploading.hӭH) -->>hӢҝD@E?HIB V@ɛLCD@0 w@0ҝD@E z@0#DAE@HIB V0#DAE@HIB V0#DAE@HIB V0#DAE@HIB V0#DAE@HIB V+ARLC#DAEHI B VH) Mark this file for uploading? [Y/N] hӢtDAEHIB VtAYLDyLDN nɛvLCLBLDH) hӭH) No more files in this directory which match filemask.hӭH) hӭH) hӭH) Exiting.hӭH) hӢ0 w@` @@Dɛ@D:>LDȢ#A@D .@DȢ #A@D  @D@ w@@D@E z@@@DDEHI B V@ w@LB@K@LL@ _L@L@L<@L*@ BLVJKBLV䨩HI BLVHIBLVL@S@`L@L<@`CL<^` LBLBLCLC BLVJKBLV䨩HI BLVHIBLVDx:>term80>term80.adrDx:>term80>mail.txtDx:>term80>mail.oldF&NFROM: DATE: TO: SUBJECT: NAME: FLFaC QI٩FLGwgC)FaC<L^I( )Dɛ`)D`$C@ B@#DCE BLBI !------------------------@aDCE@HIB VLHaC.EbCɛ> ![S]end, [N]ext, [E]xit ->?  QISLHNL6GELLGaDCEHI B V FLUGFLHaC QIٰFLHaCDɛ`FL-HaC QIٷFLcHaC<LMH( )Eɛ`)E`ȹaC)E>ʩ)E`FL|HaC QIټF`aCEɛ` !No more address book entires. Exiting.Lc !Create email message for-)DEEHI B V ![Y/N] ->?  QIH BhYL'INL6G)ENAɛEAɛ` !Error!`a`{`)`ȹaC)D>ʩ)D`:C@ B@9DCE BLK@@L@M @N@%BJK9DCE V !------------------------tI@aDCEwHIB V@aDCEwHIB V@aDCEwHIB VLLaC.LJbCɛLJ@&BJK9DCE V䘢@L@M@N @ ![R]eply, [N]ext, [A]dd Address, [E]xit ->?  QIRLMNLIELcALNLJtILKaCɛL K:LKtI !} FROM: )DFEHI B V ! DATE: DDEHI B V !SUBJECT: DEEHI B VaDCEHI B V hM FL+J !Error! Cannot open 9DCEHI B V !Exiting.Lc !No more new messages.[D]elete, [C]opy -> mail2.txt, [E]xit ->  QIDL&MCLbLEФLc !Copying mail.txt -> mail.old.@ BP B@9DCE BPMDCE B@>DBEHIB VP>DBEHI B V䭘ɀ@ BP B !Mail.txt copied to mail.old.@ B@!BJK9DCE V䘢@ B !Mail.txt erased.LcT` ![More] U ! } B` !Create email message for-)DDEHI B V ![Y/N] ->?  QIH BhYLMNLI)DNAɛ @EAɛ` !N/A`OU !Please input the name to search for->'DNEwHIB V'N QI'Nɛ@ B@#DCE B@aDCEwHIB V !No more.LFaC QIFиaC)E QINɛ. B'NɛLPNLPLPNɛL'PȢLP !Send email to )DEEHI B V@aDCEwHIB V !At eDCEHI B V ![Y/N]->  QINL'PYLPaC)ENA( <ɛ`)ENA`aC> )ENAɛ`)ENA` Q D FڭQԭQ آQ0LQ)Q詛Q !Error #DQEHI B VLc !Error- >DBEHI B VLc !Error- ^D@EHI B VLc !Error-֝D@EHI B VLcXXXXXXXX&`Heeh`RHHHR)R)~ R R R͡R)LRJJJJIRhhh`HHiSiS *+ hh`HHH R R R R RJ RXY Rhhh` RHHH SJ-(R R)R Rhhh`()R RHHH S S@hhh`HHH S@hhh`HHH S Shhh`HH(T(T SL3T Shh` SHHH)GT)LiTJJJJGTR(eeȌGThhh`UTO HT cSLT `SLbHTOO HT cSThLbXXXXXXXXXXXXXXXX HTHHTTRRT T TTT R )T )T䊍ThhT`) RR'TITTIT8nThh8` HTHHRIRhhLcS]feDx:>term80>mail.out]@ B@D]E BLQ01]U]U]T]UT]U]UT T]]UUPUTTAOU 蝗UU.Uɛ!@DUEHI B VL{]@L].@D]EHI B V@ B]U]T B`Dx:>term80>sendmail.scr /d%^]:CNC ![R]ead, [S]end, [E]xit ->  QIR uIL^ELcSLl^@ BP B@$D^E BLQPD]E B0YP B !CAUTION! [O]verwrite, [A]ppend ->?  QIOAL^P BPD]E BL2_P BPD]E B@>DBExHIB V>B)TLQP>DBEHI B V@>DBExHIB V>B)HLQP>DBEHI B V@^D@ExHIB V^@)ML*RP^D@EHI B V@֝D@EPHIB V@)FLWR@ B} B @Lva ![V]iew Address Book[S]earch Address Book[E]nter Address Manually->? H h)V GL(aE S OL(aLH` !Please input the address of the person that you want to send email to.-->NDAExHIB V !Please input the subject of the message.-->DAE'HIB VPLarcpt to: P{DaE HI B VPNDAEHI B VPLadataPƝDaEHI B VPLaSubject: PDaE HI B VPDAEHI B VP֝D@EHI B VP B !Press RETURN to begin your message. Press ESC to save message, or CONTROL-Cto cancel message.>DBEHIB V} BUT T @ B ? BLcLJcLcLcLcLcɛLd~LdHUNhLbh BLb c 2] !Message saved.[R]ead Next, [S]end, [E]xit ->Ll^ !Exiting READMAIL.@ BP BLULb cU cLb`UNLb cU cLbTLb cT cLbTLb cT cLb @ BU`TLb cTULb c  cLb'd$L\eLadThis is a Term80 module, andDDdEHI B VLdrequires the use of the Term80 coreDdE$HI B VLdin order to work correctly.˝DdEHI B Vl !Sorry, this is a module that can ONLYbe ran with Term-80 1.9 or greater.L$Le`     @ @L&A`Dx:>term80>mail.out@Eix@ C C@`L@L@LALA BLVJKBLV䨩HI BLVHIBLV D#@@ !DEBUG mode ON.@ @ &D@@ D@E @0LA !Error! Cannot find D@EHI B VL`B @ @@@ C C @ @@!D@EHIB VLC!@. "@ɛLB C @ @ @!@ɛ H h  @ @ @ @ @LA  @  LCBLBLhB eDBEHI B VL @LB. DBEHI B V@ @LBrset DBEHI B V @ @LBquit DBEHI B V @ @LA !Message(s) successfully sent!Delete MAIL.OUT [Y/N]? -> H h)NL`BYЬ@ @@!BJK D@E V䘢@ @ !MAIL.OUT has been deleted.L`B ` @  @ @LC` !Exiting because of user requestL`B @ @`RD&LRDR: handler NOT found!;DDEHI B VLDȹȹ D DBB DABCBBC`iȱi`D$LELDThis is a Term80 module, andȝDDEHI B VL,Erequires the use of the Term80 coreDEE$HI B VLkEin order to work correctly.ODEEHI B Vl !Sorry, this is a module that can ONLYbe ran with Term-80 1.9 or greater.L$LE` !"#$%&'()*+,-./0123456789:;<=$$L%6`L!$L)$LJ$L8$ BLVJKBLV䨩HI BLVHIBLVӍZ$)`Z$`} $TL$~D$EHI B V`n$@퍘􀑙쀲퀨􀀀04l @`i` $` 0 0` 4R $TLA0Term-809D0EHI B V 0Lz0Checking system...gD0EHI B V 0 0`"0%L61L0Sorry, MEMLO is too high!D0EHI B VL1I require a memlo of $2400, or lower.D0E&HI B VL0SL 2 0Ln1Sorry, but this program requires thatHD1E&HI B VL1it be ran on Sparta Dos 3.2d, orD1E!HI B VL1FTE Dos 3.2g/gx.՝D1EHI B V 0L0L$2Sparta Dos detected.D2EHI B V 02L 3 0 [$ Sorry, but this is a program that g$ [$ absolutly requires the use of an g$ [$ AUTHORIZED version of Sparta Dos. g$ 0 [$ It will only run on 3.2d or 3.2g/gx. g$ 0L0L/3Authorized version detected.D3EHI B V 0RLN4 [$ g$ [$ g$ [$ R: device not found in handler address g$ [$ table! This program requires the use g$ [$ of the Black Box or the MIO as a g$ [$ serial interface for the modem. g$ [$ g$ [$ g$L0M4Lk4R: device installed.VD4EHI B V 0`@@`"0n$( $ $`RD&L$R: handler NOT found!D$EHI B VLn$ȹȹ -%77 -%7:7: -% 7k86 7l86 [$ R: handler hooks installed. g$ I8`iȱi`KD&Le%K: handler NOT found!ND%EHI B VLn$ȹȹ -%66 [$ K: hooks installed. g$ I8 [$ g$ [$ Press any CONSOL key for menu. g$ [$ g$`ED&L-&E: handler NOT found!D&EHI B VLn$ȹȹ -% -%77 [$ E: hooks installed. g$ I8`D1:>TERM80>TERM80.CNF0 $ [$ Opening g$D&EHI B V0L&D1:>TERM80>TERM80.CNFD&E $0L?' [$ Error opening configuration file!! g$L펢0DE(HIB V* [$ Error! No drive specified! g$L`;𯭐1L_':L_'0DE(HIB V& [$ Error! No init string. g$L`;0DE'HIB V& [$ Error! No init string. g$L`;00DE'HIB V( [$ Error! No download path. g$L`0;`4;D1:>TERM80>TERM80.LOGL.4*D4EHI B VL7LX4TD4EHI B VL7L4~D4EHI B VL7L4D4EHI B VL70 $4`40D4E $L4`0 $`4L4nЅҩ$х [$ Queue initialized. g$ I8` $ x8LC5R1:?D5E $ x8&B JKLo5R1:kD5E V䘢$BJKL5R1:D5E V x8(BJKL5R1:D5E V x8 [$ Serial port initialized to 19,200 baud. g$ I8` $ L6K:D6E $`$6`%6 & O & y$ 5 25 9% 64 4  $Li6R:fD6E $(BJKL6R1:D6E V䘢 L7SL7L8L8 ɛ 8 $~L%4LO4Ly4L4 Т d/ ѥ4ߥ٩nЩ$ѭ Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8 Y8\ vL70Hɛ 8L7~h KL7hH4 0 $ 4h  ӥ4nҩ$ % LL688ɛ  $8  $L6>8>8ɛ  $>8  $L6i`@`i`hhL6 ?8 `hhL7i `88@ɛ  $8  $L6PУУPPШШPPЭЭPPввPPззPPммL8PФФPPЩЩPPЮЮPPггPPииPPнн@L=9`LJ;K+*OPU I-=VCBXZ436521, .NM/REY TWQ9078<>FHDGSALJ:K\^OPU I_|VCBXZ$#&%"![ ]NM?REYTWQ()'@ FHDGSA {  { }   $` $H $h` ` $`h ;h ; ; ; ɛ :L; ;H ;H`h;;h<; 8;;<; :L0;<;H;;H %` $` Q;Lc;R1:_D;E $(BJKL;R1:D;E V`MLבLsLЏLLL!L:L:L:L:L:L%;L4LLLvLLӐL:LLL\L8L%LQ;LW;LO1p D1:>TERM80>*.BBSD1:>TERM80>YMR.COMD1:>TERM80>YMS.COMD1:>TERM80>MARKFILE.COM D1:>TERM80> Dx:>term80>term80.bat01`menu1FфɛLs $ LpK:mDE $01̍01 4( $1L01L2LɅ 9L!3L߅01Lv4L 9L5L 9LӐ6L 9 Џ`7L 9`8L L9L)L)AL8 :LBLkL01`QRRRRRRRRRRRRRRRRRRRRRRRRE|퍘||荳䏑|QRRRRXRRRRRRRRRRRRRRRRRRRRRRRRXRRRRE|||;=$ial,ist||;=2un-odule||;=$ownload||;=5pload||;=-ark&iles||;=(angup||;=%xit-enu||;=,og3essionis/.||;=1uit4erm ||;!=3croll,ockis/&&||;"=3creen#apture|||ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRC@D1:>TERM80> pppB]Å0 $0DE $슢0{DE(HIB V0{DE(HIB V0{DE(HIB V0{DE(HIB V0{DE(HIB VLRL[ $슭i0 $ [$ ] g${DEHI B VL0 $ $ [$ Please Choose #, Or RETURN To Exit-> g${DE(HIB V{ɛ`80ˊ0 $0DE $슢0{DE(HIB V0 $ 4 [$ Error! g$`슭ˊк} .}B~S*ɛ}*ɛ+ [$ Opening g$*DEHI B V0 $0*DE $0DE(HIB V [$ Error! g$0 $ 4`; [$ Dialing g$DEHI B V0PDE'HIB V [$ Error! g$0 $ 4`P;0DE'HIB V [$ Error! g$0 $ 4`;0DE'HIB V [$ Error! g$0 $ 4`;0@DE'HIB VL@; 4쎬쎹ɛ  $쎬쎹Pɛ  $  $` [$ g$ [$ Press a key. g$ $ $0 $@ $P $` $p $$$ !BJK#DE V䘮$6` [$ Downloading... g$0 $0(BJKDE V @ 4` $ L"BJKLR1:DE V䘥i "BJKLR1:DE V䘥i L7+++3DEHI B V eLgATH bDEHI B V`/./&&U&T4`T4 4`D1:>TERM80>TERM80.CAP.com [$ Mark Files... g$`@0 $0(BJKDE V @ 4``@ [$ Run what term-80 module? -->> g$ѝDEHIB Vфɛ`ф.ɛΐфɛ0 $ фɛ䑩`@0(BJKDE VL@`@䑚 4` [$ Uploading file(s)... g$`@0 $0(BJKDE V @ 4`&"`"`capturecфɛLs@@@@@@ O TUkO`+ * `HH`LɛUL%}Lcc)PW O ݓ tLXi˥Yi̩ˈ̠@ˈ`΍bPjb**&*&iͩe΅`UURUT " 8TT`X˥Y̠ˈ 9RUTL`TXy{˥Yy̥UJeː̅`Uj1,bJJJJMc)PE)P`,b Mc)PE)P`(PxkdekdLkd Pc O ݓ dkɛL~L̔}LkLꔝe kLf kek LQ dkL_ kUUiRUTkLfҎ҈Lfc P O ݓ`%H$H` LX@șșLLL&ʕ  B VXͩB͍DE V@șR [$ g$ [$ 80 column driver initialized. g$ I8L &ʕ@j $LE:DE $` Pc O ݓ` Pc O ݓ` UUiR`UT`S COL80 7A00 7F80 '@@@@((((@@@@@@@@@@@@@@@@ 򩢅󩖅 ٥ԍՍ򩩅󩖅 ٥ԍՍ򩰅󩖅 ٥ԍՍ`0`0`0`_`ɛ $_`L\`ĖŖ  / ? > >[` >0 $`:L旮ŖĖ ŖL ŖLŖL;LŖĖLmL ʖ``E :`s UƖTȖ`KL ʖ$UTU :U͇``UTUO :LnUT`u ƖUȖT` ʖHf$ 8ΜTΞU`AĖT8휖T`BĖTmT`CUmU`D`nL  /UT D Fڭԭ آ0LO)詛 D Fڭԭ آ0L~)詛 Rɛ $L; :͙Ιɛ $͙ΙLʙR :`JLL'GLU`aUmP8PTU`d T`eTmT`` hh`Hӥ4nҩ$h``OO`{.~} !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_'abcdefghijklmnopqrstuvwxyz(|) CueaaaaceeeiiiAAEaAooouuyOUYPfaiounNao  <>|||||aBnouTOOOoo0 =/` FF```fff$$BB00ss @@F`olll lhlx~DNND$ff$  @jD$JD@P(DDDDD(DD@@HHD䤤NL"D"",N¤HDJDDDDD N@.J"DDjĪȨΨ䊈ʊ䤤***,**ĪĪʄƨĢJJJJJNNJD((HBB".@@@LJNƨ df`ʊ ̤(j*,*@@DNNJĪƪƂFꊊNNJJ .N`nljjbb`(ll(%6?@@L@_@=@ 'H) Press a key hӭ KLABCDEFGHIJKLM=2>`  B JKIHiDiELV`L2 2 BLV`Lu2q2l Lr2 &` Fj`8冨凪` 2EӅӥ 2`ʆǪƩ Ɛee` 2ƦʆǢ &Ɛeǐ 2 2L2 2'&&&8儨児祂*L2&&*ń8&&L2 73`hihiHHȱȱL2c !#3`Lr2JJJJ`H 2h`Hȩh N2L3 W2L3 2L3 2L3 2H8`HhHh ;4L3 BHI V䅠L3 Lr4 2L3Ԇ ؠPIPP` 4P 2L3 4L4 4L4 4L4H- 48塪墨hL4 4L4 5L4 4ȹP`텠8堨塪 4芨Oȩ-`PP j4P棩 Ѥģ0-ģ6000:,80H & &ehe&eģ0ʥ 8堅塅`$ 4&*i0:0i 4Ʀ`¢ 护°ڱ%ȱ%E 4L<6担CS .4L<6I 4L<6H 5L<6 4L<6 &B V 3NLMȑ` MLN%B VL3S:6E:6H (4 66 3 (4h)0I66L3[\ZUVT` 766` #7L4 7Lp4 7L4) ` #7L4 3` 0d r2ҥ `2)2ҩ`p`0)97`@0)ӈJJJJ)`Ѕ`ȱ`` 8ȥ`HhƣĢ`ƥĤ`Ѣ 8`ȱѢĦ`膡``ťƤe8夰L8 Ƥ8`ŦeѠe桊L8(LR9N9N9Lm9N9 (4N9LW9l `Lx9t9L9%ESystem Error %B%Et99~ 6 O9`L9 i?9 i9999IL99@L9999L99`L9L9 i 9 i999 99 i i999999L`: 99LA:89`Lv: 3i: 9r:r:i:L:j:k:` i n: io:n:o: i i99Ȍp:i:::p:L: 9p:L: 9 i!l: im:p:l:m:ILY;p:@LY;j:mp:k:il:m:l:m:p:L ;j:k:8p:`Lq;9& s:&9L;L;Usage: TOCOM filename.ext; 4 O9`L; p4; p4;; 3m;;i;;;`L;;;%b;)l;; 73mn V`L; .49& 3 ;0pro>uploads> E EEI16000000LELELELE BLVJKBLV䨩HI BLVHIBLVAHBHMBHAGMAHBHAFAH`AHBH@FMBHAGMAHBHAFAH@F`!Bc)Jk1sR9{ZbC ǤjK( ϬSr0[z8冧@a#펯Hi +ԷqP3ܿyX;"`A* hI2Qp:Yx -No%Fg=^5wV˨nO, àfG$_~]|6Ut 0@P`p2"RBrb$4dtDT6&vfVFHXhx(8ZJzj :*뛋l|L\,< ݭ~n^N>.Ͽ0 P@p`"2BRbr4$tdTD&6fvFV陉XHxh8(JZjz *:ͽ|l\L<, ߯n~N^.>hh懠 ELIHHH`R%& CHR: handler NOT found!L\Mȹȹ HPKKKL PKKKL H HPKKKLPKKKL`iȱi`11111111@B'd gIQ000000000gIIIIIɛʽIgIgI80gIgILILIImHIImHIImHILIgIL JL JImHIImIIImIILIgIL:JL:JImIIImIIImIILJgILjJLjJImIIImIIImIILEJgILJLJImIIIm IIIm IILuJgILJLJIm IIIm IIIm IILJgILJLJImIIImIIImIILJgIL*KL*KImIIImIIImIILK`iWK B VWK` EL+K@ E EL^N +K E`L\M  E榤`L\M  L@榤`LL@LL\M LK 榤LLD`E`EE ` E< M E< M CHToo Many Errors! Cancelling Transfer!LL LiTERM80>TERM80.BATDD:EO16000000LTEL\EL}ELkE BLVJKBLV䨩HI BLVHIBLVGGMGFMGGEG`GGEMGFMGGEGE`!Bc)Jk1sR9{ZbC ǤjK( ϬSr0[z8冧@a#펯Hi +ԷqP3ܿyX;"`A* hI2Qp:Yx -No%Fg=^5wV˨nO, àfG$_~]|6Ut 0@P`p2"RBrb$4dtDT6&vfVFHXhx(8ZJzj :*뛋l|L\,< ݭ~n^N>.Ͽ0 P@p`"2BRbr4$tdTD&6fvFV陉XHxh8(JZjz *:ͽ|l\L<, ߯n~N^.>R%& HR: handler NOT found!LKȹȹ H/JK0JK HmIIIIIJJJJJMN NNNFONOVOlOtOOnIIIIIJJJJJMN NNNGOOOWOmOuOO H%JK&JK`iȱi`iH B VH` NELHhh懠 QELHHH`$`LBIOnly for use with !!!%DIEHI B Vl D 榤`9@ 榤`9I@I 榤IID`GE`GEGE ` < K < K HToo Many Errors! Cancelling Transfer!LJ HJifD+EDɛDȢ=EɛDDDD E KH QEhCLMLWK ILM I D D cIG G I KH QEh LWK IL#N KH QEhC LWK IL>N IDΨD end with a period, followed by a single return. Additions to this file may be created using a text editor, like textpro.{|}~Documentation forBeta Getmail.com Getmail.com is a module for use with Term80 version 1.9. It will retrieve email from an ISP that supports telnet. You must create a getmail.scr (script) file and install it into your >term80> directory, on your term80 drive. The script file looks like this-telnet your.domain.server 110user yournamepass yourpassword Edit the script file with your own user name and password, and save it. This script file is used by getmail.com for it's navigation into your server's mail server, via telnet.-------------------------------------- How To Use It You must copy the getmail.com program into your >term80> directory. Then just log into your server in the normal fashion, and after you get the ">" prompt, goto the term80 menu, press "2" to run a module, and type "getmail". The rest of the process should be automatic. When it's done, you should return automatically to term80 and once again be looking at your server's ">" prompt. You can then type "quit" to disconnect. Getmail.com will save your mail into mail.txt. It opens it in append mode, so it will not overwrite any mail aready saved. It translates ascii cr/lf's to atascii eol's. Also, the current buffer size of getmail.com is approximatly 14k, so if you ask someone to send you a file in email, be sure that it doesn't go over this size. One more thing, getmail.com will ask if it's ok to delete your old email on your server, but ONLY if it is successful in downloading it. Note: This version of getmail.com is not for distribution. It is for use by designated testers, only.Documentation forBeta Lynx.com Lynx.com is a module for use with Term80 version 1.9. It is a module which configures term80 for use on a lynx server. To use it, just press "2" at the main Term80 menu, and type in "lynx". After that you can telnet from your server to a lynx server, and do some serious web surfing! Here's a couple of lynx servers, to get you started:panda.uiowa.edu 128.255.200.2lynx.cc.ukans.edu 129.237.33.1 For example, to use the lynx server at the University of Iowa, you would type in the following:telnet panda.uiowa.edu If your isp doesn't have a dns (domain name server), you would use the internet address in place of the name of the server.Happy surfing!!! Note: This version of lynx.com is not for distribution. It is for use by designated testers, only.MODULE.DOC for the beta release ofTerm80.Term80(C) 1995 CTH EnterprisesBy Tom HuntAll Rights Reserved-------------------------------------- Term80 allows you to easily run external modules from it's menu. Creating useful term80 modules is also easy, if you have any mac/65 programming experience. Action programmers can also easily create term80 program modules. The program module must reside in the $4000-$7FFF memory area. This provides 16k of ram for module use. Included in this arc is EQUATES.TXT and EQUATES.M65. You can use these in your own programs. Also included is EXAMPLE.M65, which illustrates how to structure a term80 program module. Channel one is reserved for modem i/o. If you want to get or put bytes over the modem, do it on this channel. You should never close this channel. Channel two is reserved for the keyboard. If you need to get a byte from the keyboard, do it with this channel. Channel three is reserved for the log file.--------------------------------------;Term80 equates.;(C) 1995 CTH Enterprises;By Tom Hunt;All Rights Reserved;;;Last updated 8.19.95;;;QUE.IN = $A0 ;Queue input pointer;;QUE.OUT = $A2 ;Queue output pointer.;VERSION = $2403 ;Example-; .BYTE $10,07,25,95 ; = version 1.0, created 7/25/96;TERM80.ID = $2408 ;Term80 I.D.;QUE = $268D; *= *+4000 ;80 X 25 X 2 = 4000 bytes.;This is where we buffer the input;stream.;QUE.END = $362D ;End of queue.;LOG.FLAG = $362D ;.BYTE $00 ;Look here to see if term80.log file;is active or inactive.;active = 0, inactive = 1;LOG = $362E ;Path of log file.;JMP.TABLE = $8000;256 bytes that are reserved for;a jmp table.;MODULE.EXIT = $8000;This is the address that a term80;module should jmp to, in order;to exit and return to the;term80 core.;MODULE.RUN = $8003;jsr/jmp here to run a term80 module,;whose filename is stored at rfn.;HANGUP = $8006;jsr/jmp here to hang up the modem.;UNLOAD = $8009;jsr/jmp here to completly unload term80;LOG.TOGGLE = $800C;jsr/jmp here to turn on/off the log.;RUN.FILE = $800F;jsr/jmp here to prompt user;what module to run, then run it.;PUT.CHAR = $8012;jsr/jmp here to put a character;to the modem.;GET.CHAR = $8015;jsr/jmp here to get a character;from the modem.;GET.CHARL = $8018;jsr/jmp here to get a character;from local.;PUT.CHARL = $801B;jsr/jmp here to put a character;to local.;PRINT.ILS = $801E;jsr/jmp here to print an in-line;string, with zero termination;to modem.;PRINT.ILSL = $8021;jsr/jmp here to print an in-line;string, with zero termination;to local.;OPEN.LOG = $8024;jsr/jmp here to open log file.;GR.0 = $8027;jsr/jmp here to make gr.0 screen.;DIAL.LIST = $802A;Prints the dial list.DOWNLOAD = $802D;Ymodem batch download.UPLOAD = $8030;Ymodem batch uploadMARK.FILES = $8033;Mark files for upload.SL.TOGGLE = $8036;Scroll lock toggle.;MENU1 = $8039;Run external menuMENU2 = $803C;Run internal menu;CURSOR.OFF = $803F;Turns cursor offCURSOR.ON = $8042;Turns cursor on;SUSPEND = $8045;Suspends concurrent i/oRESUME = $8048;Resumes concurrent i/o;DRIVE = $8100 ;Term80 work drive.;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;*.bbs files.;BBS.NAME = $8200;Bbs name we are calling.;BBS.NUMBER = $8250;Bbs number we are calling.;MACRO.1 = $82A0;Shift-control-1 macro.;MACRO.2 = $82F0;Shift-control-2 macro.;MACRO.3 = $8340;Shift-control-3 macro.;;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;term80.cnf file.;INIT.STR = $8390;DIAL.TYPE = $83E0;DL.PATH = $8430;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;OLD.DL = $8480 ;.word value;Where the 80 column list pointer;is stored.;BBS.WC = $8482;*.bbs filemask;YMR = $8493;Ymodem batch receive module filepath.;YMS = $84A6;Ymodem batch send module filepath.;MF = $84B9;Markfile.com module filepath.;RFN = $84D1;Where the module to run filename is stored.;RFP = $84F9;The path for term80 modules.;FONT = $9E00;This is where the 512 byte;compiled font loads.;;;More to be added later.Documentation forBeta Readmail.com Readmail.com is a module for use with Term80 version 1.9. It is a 80 column text processor that is used to create and read internet email messages. These email messages are uploaded to your ISP via the sendmail.com program. Sendmail.com has it's own documentation. To use this program, you must edit the sendmail.scr file. This is the same file used by the sendmail.com program. It looks like this-telnet your.domain.name 25helo your.domain.namemail from: yourname@your.domain.nameFrom: yourname@your.domain.name (Real Name) Substitute your ISP's domain name and your real name, etc, and save it into your >term80> directory. Writem.com uses this file for accessing your ISP's pop server, and for message header information. You must also copy the writem.com program into your >term80> directory. Next, just load Term-80 as you normally would, and press "2" at the main menu. At the prompt type in "readmail". This will run the readmail.com program. Readmail will prompt you for the receiver's complete internet email address, or to search it's address book, or to read any incoming messages. When creating a new message, you can press control-c to abort, or escape to save. Readmail.com saves it's messages to a >term80>mail.out file. Readmail.com appends messages to this file. After sucessfully sending email messages with the sendmail.com program, you must delete the mail.out file yourself. A future version of writem.com will have file/folder and address book manipulation features. Note: This version of readmail.com is not for distribution. It is for use by designated testers, only.Documentation forBeta Sendmail.com Sendmail.com is a module for use with Term80 version 1.9. It will send email through an ISP that supports telnet. You must create a sendmail.scr (script) file and install it into your >term80> directory, on your term80 drive. The script file looks like this-telnet your.domain.name 25helo your.domain.namemail from: yourname@your.domain.nameFrom: yourname@your.domain.name (Real Name) On the "From:" line, the name in parentheses is your REAL name. Edit the script file with your own user name , address, and ISP domain name, etc., and save it. This script file is used by sendmail.com for it's navigation into your server's mail server, via telnet.-------------------------------------- How To Use It You must copy the sendmail.com program into your >term80> directory. Then you must compose your internet email messages offline, with the writem.com program. It has it's own documentation. Then just log into your server in the normal fashion, and after you get the ">" prompt, goto the term80 menu, press "2" to run a module, and type "sendmail". The rest of the process should be automatic. When it's done, you should return automatically to term80 and once again be looking at your server's ">" prompt. Just type "quit" to disconnect. Sendmail.com will send your mail from the file named mail.out. This file is created by the readmail.com module. The size of your email messages is limited only by the RFC specification for POP mail. One more thing, sendmail.com does not automatically delete your old mail.out file. A future enhanced version may be released that will have all kinds of mail/folder and address book features. Note: This version of sendmail.com is not for distribution. It is for use by designated testers, only.Documentation for version 1.9 ofTerm80.Term80(C) 1996 CTH EnterprisesBy Tom HuntAll Rights ReservedUpdate date 5.19.96 Term80 is designed for calling IBM ansi bulletin boards at the highest speeds supported by the MIO and Black Box. MIO users will benefit by purchasing Len Spencer's replacement R: handler for the MIO. It is called Hyperspeed. Len may be contacted by calling his bbs, Moonbase Alpha, at 14075782811.The first step in using term-80 is to make sure that you have the hardware necessary to run it. Since term80 depends upon true concurrent i/o, it absolutly requires one of the following hardware/software configurations:1- A modem connected to a bb/mio, and/or2- A hard drive connected to a bb/mio, OR3- Set the term80 drives to point to an internal ramdisk. This is done by editing the term80.cnf file.So far term-80 is the only Atari-8 80-column terminal program that can handle 14,400 baud. To my knowledge, having a modem connected to either an MIO or Black Box is the only way to get this speed. It is set up to run at 14,400 baud, but you can change this by running the BAUD external module. It is a requirement that you have either a hard drive or a ramdisk. If you don't have either one, then you cannot run term-80. Because of speed reasons and problems with concurrent i/o, your term80> work directory must reside on either a hard drive or ramdisk. Term80 will probably not work with SDX or 3.3a. Sorry. It won't work with that European clone of sparta dos, either. Term80 uses the Sparta vectors which are under the O.S. Now that all of that is out of the way, this is how to configure your system to run term-80. You will need to create a term80> directory on D1:. This directory must contain a file called term80.cnf, which is the configuration file for term80. You may edit the supplied term80.cnf and cth.bbs file to suit your needs. You may use a text processor like TextPro to create this, and the other term80 files you will need. A typical term80.cnf file might look like this-;Term-80 example .cnf file.;;Term-80 work drive.1;;Modem init string.ATZ;;Dial command, either ATDT or ATDP.ATDP;;Download path.D8:>downloads> As you can see, you can use the semi-colon as a comment character. The first entry is the term80 work drive. This is the work drive which must be on either a hard drive or ramdisk. Whatever drive you choose will require that some files be placed in a term80> directory on that drive. More on this later. The next entry is your modem's init string. It may be simple like the one in this example, or as elaborate as you deem necessary. The next line is your modem's dial string. It would be atdt for touch tone, or atdp for pulse dial. The next line is the path that you want your downloads to go on. This too, must reside on either a hard drive or ramdisk. Now you must create a term80> directory on the term80 work drive that you defined in the first entry of the term80.cnf file. Into this directory you must copy ymr.com, yms.com, term80.com, and the sample cth.bbs file. Also, your term80.log file will be created in your term80> directory on your term80 work drive after you run term80. Now you must edit the example cth.bbs file. It should look like this-;Term-80 example .bbs file.;;Name of bbs.The Closer To Home BBS;BBS phone number.4193684413,,,;Macro #1YOUR NAME;Macro #2YOUR PASSWORD;Macro #3SOMETHING ELSEInsert your own name and password into the file and resave it. This is how you create your bbs lists. Each bbs that you call will have it's own *.bbs file. Whenever you choose to dial a bbs from the Term80 menu, it looks in your term80> directory on your term80 work drive for files with a .bbs extention.------------------------------------- When you run Term80, it begins with the log file disabled. If you want it enabled, you must go to the Term80 menu and toggle it on. After toggeling it on, it will record every character that comes across your screen and every thing you type. Keep it off to gain a little more speed.------------------------------------- When you exit the Term80 program, the modem does not get hung up. The reason for this was so that you could exit the program, do some other thing like copy files, look at disk directories, etc, and reload term80 when done. Doing this will not drop your carrier.------------------------------------- To gain a little speed when loading term80, press the select key until it starts to load. You'll notice the speed difference.-------------------------------------THE TERM80 MENU  || |䯱|  | | | [1] Dial List | | [2] Run Module | | [3] Download | | [4] Upload | | [5] Mark Files | | [6] Hangup | | [7] Exit Menu | | [8] Log Session is ON | | [9] Quit Term-80 | | [A] Scroll Lock is ON | | [B] Screen Capture | | |  [1] Dial List This will display a list of *.bbs files, found in your >term80> directory, on your term80 work drive. These files contain information for calling and logging onto your favorite bulletin boards. See the CTH.BBS file, as an example of one of these files. Currently term80 only supports 1-9 of these files.[2] Run Module This will prompt you for the filename of the term80 module you want to run. This function was included to make term80 an easily expandable program. For instance, a secondary menu module could be created and ran directly from this function. A term80 program module must be made according to certain programming guidlines. These guidlines are explained later.[3] Download This function calls the term80 program module named ymr.com. It is a ymodem batch receive. Ymr.com must be found on your term80 work drive, in a term80> directory.[4] Upload This function calls the term80 program module named yms.com. It is a ymodem batch send. Yms.com must be found on your term80 work drive, in a term80> directory. Also, before sending files via ymodem batch, you must have already marked them with the [5] function.[5] Mark Files This function calls the term80 program module named markfile.com. It marks files for ymodem batch sending. Markfile.com must be found on your term80 work drive, in a term80> directory. Whenever you use this function to mark files for uploading, it creates or appends to a term80.bat file, found on your term80 work drive, in a term80> directory. This version of term80 requires that you delete your term80.bat file after using it. If you do not, this function will simply keep adding files to it.[6] Hangup Hangs up the modem.[7] Exit Menu This returns you to the terminal screen. Pressing any consol key does the same thing.[8] Log Session is ON Upon loading, term80's log file is turned on. You may toggle this off/on via this function. The log file that term80 creates/appends to is found on your term80 work drive, in your term80> directory. When it's turned off you gain a little more speed.[9] Quit Term-80 This exits the program. It returns the system to it's previous state. If you are online and choose this function, the line will not hang up. This was done to allow you to leave term80, and re-load it without interrupting your online session.[A] Scroll Lock is OFF Occasionally you come across an ANSI game that makes use of all of the standard 25 lines of a display. Trouble with this, is that we have only 24! When such a game tries to print to the 25th line, our screen scrolls, messing up the formatted display. Turn this to ON to disable screen scrolling.[B] Screen Capture Choose this to capture what is on your terminal screen. The output goes to the file Dx:>term80>term80.cap, on the drive that is your term80 work drive. Output is appended to that file.-------------------------------------ANSI Term80 supports a subset of standard ansi. It supports the various cursor positioning functions. It just ignores the rest. It also supports a translation of the IBM character set.-------------------------------------INCLUDED TERM80 MODULESYMR COM 3302 8-08-95 4:27p This is the ymodem batch receive module. This is automatically ran whenever you press "3" at the Term80 menu.YMS COM 2849 7-23-95 8:21p This is the ymodem batch send module. This is automatically ran whenever you press "4" at the Term80 menu.MARKFILE COM 1314 8-14-95 5:43a This is the module which marks the files you wish to upload, using ymodem batch send. This is automatically ran whenever you press "5" at the Term80 menu.MENU1 COM 94 8-14-95 5:05a This module simply routes control to the internal menu when you press a consol key at the terminal screen.EXAMPLE COM 240 8-13-95 8:26p Just an example, assembled from the EXAMPLE.M65 source code. Run this by pressing "2" at the Term80 menu, then type "example".1KX COM 2365 7-31-95 8:46p Xmodem CRC/Xmodem 1k receive module. Run this by pressing "2" at the Term80 menu, then type "1kx".CAPTURE COM 1065 8-14-95 7:59p This captures whatever is currently displayed on your terminal screen. It saves it to Dx:>term80>term80.cap. Each time you use it, it appends to this file. This is automatically ran whenever you press "B" at the Term80 menu. It takes about 5 seconds for this module to capture a screen, due to the fact that it is converting the raster to characters.BAUD COM 1409 8-19-95 3:21p Use this to change baud rates before dialing a bbs. Term80 defaults to 14,400 baud. But you may change this by running this module. Run this by pressing "2" at the Term80 menu, then type "baud".-------------------------------------GUIDLINES FOR CREATING TERM80 PROGRAM MODULES A program module can reside in the 16k programming window. This window starts at $4000, and extends up to $7FFF. See MODULE.DOC for more information.z X;SAVE#D9:EQUATES.M65X;X;( X;LOAD#D9:2X;<X;Term80 equates.FX;(C) 1995 CTH EnterprisesPX;By Tom HuntZX;All Rights ReserveddX;nEIxX;X;X;Last updated 8.19.95X;X;X;#QUE.IN;;Queue input pointer;X;%QUE.OUT;;Queue output pointer.X;VERSION$;;Example-9X; .BYTE $10,07,25,95 ; = version 1.0, created 7/25/96X;TERM80.ID$;;Term80 I.D.X; QUE&+X; *= *+4000 ;80 X 25 X 2 = 4000 bytes."&X;This is where we buffer the input, X;stream.6X;@QUE.END-6;;End of queue.JX;TLOG.FLAG-6;;.BYTE $00 ^(X;Look here to see if term80.log filehX;is active or inactive.rX;active = 0, inactive = 1|X;LOG.6;;Path of log file.X;JMP.TABLE$X;256 bytes that are reserved forX;a jmp table.X;MODULE.EXIT&X;This is the address that a term80#X;module should jmp to, in orderX;to exit and return to theX;term80 core.X;MODULE.RUN)X;jsr/jmp here to run a term80 module,%X;whose filename is stored at rfn.X;&HANGUP0'X;jsr/jmp here to hang up the modem.:X;DUNLOAD N,X;jsr/jmp here to completly unload term80XX;bLOG.TOGGLE l)X;jsr/jmp here to turn on/off the log.vX;RUN.FILE X;jsr/jmp here to prompt user%X;what module to run, then run it.X;PUT.CHAR$X;jsr/jmp here to put a characterX;to the modem.X;GET.CHAR$X;jsr/jmp here to get a characterX;from the modem.X;GET.CHARL$X;jsr/jmp here to get a character X;from local.X; PUT.CHARL*$X;jsr/jmp here to put a character4X;to local.>X;HPRINT.ILSR%X;jsr/jmp here to print an in-line\"X;string, with zero terminationfX;to modem.pX;zPRINT.ILSL!%X;jsr/jmp here to print an in-line"X;string, with zero terminationX;to local.X;OPEN.LOG$#X;jsr/jmp here to open log file.X; GR.0'&X;jsr/jmp here to make gr.0 screen.X;DIAL.LIST*X;Prints the dial list.DOWNLOAD-X;Ymodem batch download.UPLOAD0X;Ymodem batch upload$MARK.FILES3.X;Mark files for upload.8SL.TOGGLE6BX;Scroll lock toggle.LX;V MENU19`X;Run external menuj MENU2term80>dl>EXAMPLE.M65X;X;(!X;ASM,,#D1:>term80>EXAMPLE.COM2EI<X;FX;PX;Term80 equates.ZX;(C) 1995 CTH EnterprisesdX;By Tom HuntnX;All Rights ReservedxX;X;@X;All term80 modules must beX;assembled here.X; !STARTX; == =_$X;This means version 1.1, createdX;on 8/13/1995X;X;Last updated 7.26.95X;X;X;>D9:>TERM80>EQUATES.M65"X;,X;6!X;----------------------------@X;Actual program begins hereJ!X;----------------------------TX;^ STARThQTERM80.IDrR> |H !?B0X;- PRINT.ILSL;;Print in-line string locally) ASorry, but this module can onlyA=" Abe used with Term-80.A==!@ :X;?B0X; PRINT.ILSL$ AThe log flag is currently A= QLOG.FLAGF !?B0 PRINT.ILSL& Aactive.A==0!?B1:X;D?B0N PRINT.ILSLX Ain-active.A==b?B1lvX;X; PRINT.ILSL. AWatch the lights blink on your modemA= Awhile I hang it up.A== HANGUPX;X; PRINT.ILSL ABye bye now.A== X; RTS!MODULE.EXITX;telnet your.domain.name 110user yournamepass yourpasswordtelnet your.domain.name 25helo your.domain.namemail from: yourname@your.domain.nameFrom: yourname@your.domain.name (Real Name);SAVE#D9:EQUATES.M65;;;LOAD#D9:;;Term80 equates.;(C) 1995 CTH Enterprises;By Tom Hunt;All Rights Reserved; .OPT NO LIST;;;Last updated 8.19.95;;;QUE.IN = $A0 ;Queue input pointer;;QUE.OUT = $A2 ;Queue output pointer.;VERSION = $2403 ;Example-; .BYTE $10,07,25,95 ; = version 1.0, created 7/25/96;TERM80.ID = $2408 ;Term80 I.D.;QUE = $268D; *= *+4000 ;80 X 25 X 2 = 4000 bytes.;This is where we buffer the input;stream.;QUE.END = $362D ;End of queue.;LOG.FLAG = $362D ;.BYTE $00 ;Look here to see if term80.log file;is active or inactive.;active = 0, inactive = 1;LOG = $362E ;Path of log file.;JMP.TABLE = $8000;256 bytes that are reserved for;a jmp table.;MODULE.EXIT = $8000;This is the address that a term80;module should jmp to, in order;to exit and return to the;term80 core.;MODULE.RUN = $8003;jsr/jmp here to run a term80 module,;whose filename is stored at rfn.;HANGUP = $8006;jsr/jmp here to hang up the modem.;UNLOAD = $8009;jsr/jmp here to completly unload term80;LOG.TOGGLE = $800C;jsr/jmp here to turn on/off the log.;RUN.FILE = $800F;jsr/jmp here to prompt user;what module to run, then run it.;PUT.CHAR = $8012;jsr/jmp here to put a character;to the modem.;GET.CHAR = $8015;jsr/jmp here to get a character;from the modem.;GET.CHARL = $8018;jsr/jmp here to get a character;from local.;PUT.CHARL = $801B;jsr/jmp here to put a character;to local.;PRINT.ILS = $801E;jsr/jmp here to print an in-line;string, with zero termination;to modem.;PRINT.ILSL = $8021;jsr/jmp here to print an in-line;string, with zero termination;to local.;OPEN.LOG = $8024;jsr/jmp here to open log file.;GR.0 = $8027;jsr/jmp here to make gr.0 screen.;DIAL.LIST = $802A;Prints the dial list.DOWNLOAD = $802D;Ymodem batch download.UPLOAD = $8030;Ymodem batch uploadMARK.FILES = $8033;Mark files for upload.SL.TOGGLE = $8036;Scroll lock toggle.;MENU1 = $8039;Run external menuMENU2 = $803C;Run internal menu;CURSOR.OFF = $803F;Turns cursor offCURSOR.ON = $8042;Turns cursor on;SUSPEND = $8045;Suspends concurrent i/oRESUME = $8048;Resumes concurrent i/o;DRIVE = $8100 ;Term80 work drive.;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;*.bbs files.;BBS.NAME = $8200;Bbs name we are calling.;BBS.NUMBER = $8250;Bbs number we are calling.;MACRO.1 = $82A0;Shift-control-1 macro.;MACRO.2 = $82F0;Shift-control-2 macro.;MACRO.3 = $8340;Shift-control-3 macro.;Not functional in this version.;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;;---------------------------------;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;;These are loaded from the;term80.cnf file.;INIT.STR = $8390;DIAL.TYPE = $83E0;DL.PATH = $8430;;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;--------------------------------;OLD.DL = $8480 ;.word value;Where the 80 column list pointer;is stored.;BBS.WC = $8482;*.bbs filemask;YMR = $8493;Ymodem batch receive module filepath.;YMS = $84A6;Ymodem batch send module filepath.;MF = $84B9;Markfile.com module filepath.;RFN = $84D1;Where the module to run filename is stored.;RFP = $84F9;The path for term80 modules.;FONT = $9E00;This is where the 512 byte;compiled font loads.;;;More to be added later.Revision History For Term808.15.95 Released version 1.4. This is the 1st general release.8.19.95 Version 1.5. Fixed a bug with the log file. Under some circumstances, it wouldn't open, or stay open.8.25.95 Version 1.6. The ansi character translation is much nicer now. Also fixed a bug with the ansi single character delete control string.5.24.96 Version 1.9 BETA. This version includes special modules for use with the internet. Specifically, internet email and lynx servers. Also, the third macro for *.bbs files has been added.      !"#$%&'()*+,-Accessing The Internet With The Atari8bitBy Tom HuntCopyright (C) 1996All Rights ReservedKeywords: Atari, 8bit, 8-bit, XL, XE,shellVersion 1.1, Updated 5/15/96--------------------------------------OutlineWhat is available for the 8bit on theinternet?Equipment neededSoftware neededServices neededHow to use the shellCommands available from the shellHow To Use A Slip/ppp Account--------------------------------------What is available for the 8bit on theinternet? When you access the internet, thewhole world awaits you. You can readand post messages on the usenet. Youcan download and upload programs. Youcan correspond through email withanyone who has an internet emailaddress. You can do all of this andmore, with your Atari 8bit computer! There a few things we cannot do,because of software limitations. Thatis, we cannot "surf the web" witha web browser like Netscape. We can,however, do some serious web surfingusing a host program called lynx. More on that later. There is no reason why an Atari8bit owner cannot enjoy internetaccess. It does not require the likesof an Intel Pentium to access theinternet. Remember, most of thevarious host servers on the internethave their development roots around atext-based interface. Much of thisremains intact today.--------------------------------------Equipment needed You need your Atari 8bitcomputer, a modem, a modem interface,and a phone line. If you are using adirect-connect modem (ie one that doesnot require a separate interface), youdon't need the modem interface. A modem interface is necessaryfor using standard modems. An exampleof a direct-connect modem would be thesx-212 modem, made by Atari. It canbe daisy-chained into any sio port. Examples of modem interfaces would bethe 850 interface, made by Atari, theBlack Box, made by CSS, thethe P:R: Connection and MIO, made byFTE. While it is true that you caneven use a 300 baud modem, most ISP's(Internet Service Providers) haveimplemented a minimum baud rate,somewhat above 300 baud. Beforeacquiring an internet account checkwith perspective ISP's about whattheir minimum baud rate is. With thecheapness of 8bit modem interfaces and2400 baud modems, there is no reasonfor not considering upgrading from 300or 1200 baud. If you can afford a BB(Black Box) or MIO, and a 14.4k baudmodem, all the better! Most Atari 8-bit modem interfaceslimit your maximum reliable baud rateto around 4800 baud. Keep this inmind before considering connecting anexpensive 14.4k baud modem to an 850or P:R: interface. If you wish toconnect to your ISP at 14.4k baud, youmust use either an MIO, made by ICD,or Black Box, made by CSS. Both ofthese two interfaces connect to your8bit through the PBI on the back of anXL, or the ECI on the XE. Also, thereare different versions of the MIO,some of which apparently do not fullyimplement hardware handshaking(CTS/RTS), making 14.4k baudconnections unreliable. There is areplacement R: handler for these typesof MIOs, called Hyperspeed, by LenSpencer. It seems to fully implementhardware handshaking in the effectedMIOs. At the time of this writing,there is no way to connect at 28.8kbaud or above. This is because the8bit's operating system is limited toa maximum of 19.2k baud for it's porti/o rate. The port baud rate must bemore than the modem's connect baudrate. Therefore 14.4k baud is thelimit, until someone comes up with amodification which allows the 8bit todo i/o over a port at more than 19.2kbaud.--------------------------------------Software needed You need what is known as aterminal program. Examples of wellknown and capable terminal programsinclude: Term80 (CTH Enterprises),BobTerm, Express!, Flicker Term, andIce-T. There are others, and theirexclusion from being mentioned is inno way to be considered as me sayingthat they are not good. Others willbe added to the list in the future, asreports from 8bit owners are sent into me about their usefulness. If theterminal program supports VT or ANSIcursor positioning, so much thebetter. If you are using a modeminterface, chances are that it camewith an appropriate R: handler. Thishandler allows the terminal program totalk to the device using standardAtari operating system calls. Boththe Black Box and MIO have their ownbuilt-in R: handlers.--------------------------------------Services needed You will need an account with anISP, or Internet Service Provider. Alist of a few ISPs is providedelsewhere in this document. An ISP should provide you with alocal phone number you can use to"dial up", and get into your internetaccount. A important itemhere, is to know if your ISP providesyou with what is known as a "shell"account, or if they only provice aslip/ppp account. Just about anyterminal program can be used with ashell account. But a slip/ppp accountrequires some type of tcp/ip socketdriver. Fortunately, most isp'sthat only provide slip/ppp also provideseveral other optional commandsimmediatly after you logon. One of those commands is "telnet", which youcan use to access the internet. Slip/ppp accounts depend upon a network protocol called tcp/ip, and normallyyou need a winsock driver on an Intelplatform in order to use a slip/pppaccount. A shell account gives you sometype of command-line interface withyour ISP. There are different typesof shells. Their differences arebasically in the syntax of thecommands and command parameters thatyou can issue from your keyboard. Forthe remainder of this document, I willbe using examples which work under a"bash" type of shell. If you find an ISP which canprovide you with a shell account, youmay want to ask what are their mostpopular shell commands, and how to usethem. Of course, most of what youwill learn about accessing theinternet, will come as a result ofhaving an inquisitive mind.--------------------------------------How to use the shell If you are familiar with using ados that uses a command lineinterface, then using a shell accountwill be nothing new. You type in thename of the command (or program) youwant to use. Files are placed into adirectory tree. Here are somecommands to help you to navigate thedirectory tree:pwd ;Displays the directory ;you are currently "in".ls ;Displays the contents ;of your current working ;directory.cd ;Allows you to choose ;a new directory. If you want help on how to use acommand, type:man [command] ;Where [command] ;is the name of ;the command you ;need help with. Typically, you will be assignedyour own home directory by your ISP. This directory is for your own use. You can keep and maintain your filesin your home directory. For example,my home path looks like this:/[tilde]tomhunt/ The tilde character isn'tsupported by the default 8bitcharacter set. It looks like a small,horizontal "squiggle". It can beproduced by typing ESC-CONTROL-DELETE.--------------------------------------Commands available from the shell Commands allow you to do avariety of things from within yourshell account. For example, if youwould type in "ftp ftp.mirrors.aol.com"from your shellaccount, the "ftp" command would berun on your host server, and it wouldattempt to open a connection to anAmerica OnLine server, whose domainname is "ftp.mirrors.aol.com". Ftpallows you to download and uploadfiles from/to ftp file servers on theinternet. To download a file via ftp,you should set your file type tobinary, and then issue the "get"command, followed by a space, and thenthe name of the file you want todownload. Actually, it is downloadingit from the remote server to your hostserver. After downloading and exitingftp, you would typically use the "sb"command to have your host server sendthe file to your 8bit. Although it isa two-step process, server-to-serverconnections are typically at 57k baud,so the initial ftp get shouldn't taketoo long. The "sb" transfer betweenyour host server and your 8bit willtake longer, depending upon yourconnect baud rate. The sb command cansend files to your 8bit via zmodem,ymodem, or xmodem. After downloadingto your computer, you will want toremove the files from your homedirectory. Most ISP's charge for filespace. Do that with the "rm" command.The syntax is " rm [mask] "--------------------------------------How To Use A Slip/ppp Account If your isp doesn't offer shellaccounts, see if they allow you to getto the telnet command. If they do,then you can use Term80 for accessingboth internet email, and for accessinglynx servers. However, in order to use it,Term80 requires specific hardware. Itrequires:1- Modem connected to a BB or MIO, and a floppy disk drive.2- OR a hard drive connected to a BB or MIO, and your modem connected to a P:R:, 850, or similar interface.3- OR both a hard drive AND modem connected to a BB or a MIO. Some users with NONE of theabove mentioned configurations haveactually been successful insubstituting a ramdisk, in the placeof the hard drive. They just set uptheir term80.cnf file so that theprogram's disk drives are all set tothe ramdisk. Term80 comes with a special modulewhich configures it for use on lynxservers. A lynx server allows you toaccess web pages, libraries, searchengines like Alta Vista and Yahoo.The web pages will be missingtheir graphics, but you can use yourkeyboad to highlight and select anylink that you would like to go to. Acouple of popular lynx servers are lynx.cc.ukans.edu, and panda.uiowa.edu.In order to connect to a lynx server,you would first load the LYNX modulefrom the Term80 main menu, connect andlog into your ISP, and TELNET to thelynx server. Some lynx servers allowyou to goto other servers, via theftp command, or the "g"oto command. Another feature of Term80 1.9 isit's ability to send and receive emailusing telnet access. It also supports the use of an address book forkeeping track of internet addresses.If the only local ISP in your areaprovides slip/ppp accounts, but alsooffers the telnet command, then youcan use such an account, if you useTerm80.