LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!)The following 15 source program files and 1 documentation file comprise Gary Kato's Xmodem /// terminal program for the ///. It is a terminal program that you can use to call your favorite bbs (like ///'s Company), but also includes Ascii file transfer fu-READ.ME.FIRSTxK MANUAL.P1K XK. *MENU.MAKER L |K.PRINT.ALL VK/K%SEG.T [jK/Ÿ/ *SOS.INTERP _4keK/! *SOS.KERNEL ,VK/!a*SOS.DRIVER.S K0III.SRC.01RCEu' -XMODEM.SOURCE:-;*XMAIN.TEXT :r:.DISKNAME.DATEK.K1FLASHNAME.DATFGK.w HELLO GK./ *HELLO.TEXTI >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@Lnctions AND Xmodem and Binary II error-free file transfer protocol functions. You will need the Pascal system to A)ssemble the source code that you capture here, and you will need the Makeinterp program to convert the assembled codefile into an interprete nutable+2 ;window stack pointer Temp2ptr .equ winsp+2 strptr .equ Temp2ptr+2 cvbuff .equ strptr+2 ; 3 bytes for binary to decimal conversion xcount .equ cvbuff+3 dataptr .equ xcount+3 Tempptr .equ 20 ; 2 bytes. Pointer to dialog to be displayed actsubmenu .equ Tempptr+2 ; Pointer to active submenu template submenutable .equ actsubmenu+2 ;Pointer to submenu table in template winsp .equ submepe for radio button EditBox .equ 1 ; Type for Edit box RLE .equ 0 ; ** No RLE yet ; ; Zero Page Variables ; *** Evidently, SOS uses some Interpreter Zpage. Idiots. ; So, start at 20 hex. ; *********************** .include mymacr.text .include SOSERR.text maxprefix .equ 128. MAXWINDOW .equ 5. ; Nest up to 5 windows Blinktime .equ 0ff Radio .equ 0 ; Ty More comments added for possible public ; domain release. ; ; Created by: Gary M. Kato ; Copyright 1987, 1988 Gary M. Kato ; ;*************************************************  !"#$%&'()*+,-./0123456789:;<=>?@ABCDRelease - many bugs fixed ; 1.8 - 3/1/88 ; error recovery on Xmodem send fixed ; Menus renamed to Dialogs, submenus to dialog ; items. ; .nolist .patchlist ;************************************************************************ ; ; Xmodem /// - An Xmodem program for the Apple /// ; Version 1.0 - First Release ; 1.7 - Next to run the scrubber every month or so. Haven't had a hard drive fail yet on any of my AT's. Yep, I'm getting psyched for my trip to the Caymans. Adam and I are going to start our diving certification lessons next month, and take our four open water divour hard disk under Catalyst or Selector ///. a copy. I'll keep my eyes open for you. Have a great Memorial Day Weekend!!!! Best Regards.......Ed able to measure any noticable speed improvement in my hard drives, but it does make me feel more secure processor. If all of this is beyond your capabilities, contact me via email and I will give you my address. You can send me a blank, formatted disk in a SAS disk mailer and I'll send you a copy of Xmodem /// that is ready to boot and run, or install on yr. Makeinterp can be found in the the Programming - Pascal Programs topic area (#19). Detailed instructions for accomplishing all this is found in the beginning of the Xmodem /// documentation file, which can be edited and printed with your favorite word ;pointer to data buffer for error checks mapptr .equ dataptr+2 string1 .equ mapptr+2 string2 .equ string1+2 ptr1 .equ string2+2 ptr2 .equ ptr1+2 errname .equ ptr2+2 smtype .equ errname+2 next .equ smtype+1 .absolute .proc xmodem3 ; The following are constants for Codetype: Standalone .equ 0 ;Stand alone interpreter DTM .equ 1 ;On Three's Desktopixlist $30 jsr initvars ldx linedelay ;delay a while for reader to see lda #2 ; copyright notice sta linedelay jsr dodelay stx linedelay jsr DiEcapable $20 lda grafref sta outgref .endc ; ; Determine prefix to be used. ; SOS Getprefix,Gprefixlist lda prefix bne $30 SOS Setprefix,Sprefq $20 ; ; Error msg saying can't find .Grafix in SOS.Driver ; ; Don't allow RLE ; lda #Nografix & 0ff ldx #Nografix / 256. & 0ff jsr Alert lda #0 sta RLesetlist+1 SOS OPEN,RS232LIST lda RS232ref sta inmodemref sta outmodref SOS Dstatus,RSstatlist ; get RS232 parameters .if RLE SOS OPEN,Graflist be ; lda #Nors232 & 0ff ldx #nors232 / 256. & 0ff jsr Alert jmp Stop $10 lda RS232dev sta Rsstatlist+1 sta modstatlist+1 sta BreakList+1 sta RSr ; Don't let .Console echo sta halfdup SOS Dcontrol,Duplist ; ; Open .RS232 ; SOS Getdevnum, RS232numlist beq $10 ; ; Error: Can't find .Rs232 in SOS.Driver frame outstr Copyright outstr Version ; ; Don't let .Console handle echoing automatically since the ; letter in an Open-Apple sequence gets echoed. ; lda #0 ewport, and ; put up copyright notice SOS WRITE, initscreen lda #errbox & 0ff sta tempptr lda #errbox / 256. & 0ff sta tempptr+1 jsr Makewindow jsr DrawROL,Nllist SOS DCONTROL,Dclist lda consref sta initref sta inref sta getline+1 sta outref sta outstrlist+1 ; Put up initial screen, set initial viN,CONSLIST SOS getdevnum, consnumlist lda consdev sta keynum sta dupdevnum sta nldev sta SaveViewlist+1 sta Dclist+1 sta sslist+1 SOS DCONT sta winsp lda #windowstack / 256. & 0ff sta winsp+1 lda #filename & 0ff sta errname lda #filename / 256. & 0ff sta errname+1 SOS OPEname .ascii "Xmodem ///" .endc .include data.text begin ; init Apple 3 state ldx #0ff txs cld ; ; Init dialog stuff ; lda #windowstack & 0ff .word codelen jmp begin .endc .if Codetype = DTM .org 3800 ;Accessory loading address jmp begin ;Start of code .byte 10. ;length of desk accessory Manager PKM .equ 2 ;Power Keys Module Codetype .equ Standalone .if Codetype = Standalone start .equ 5800 .org start-0e .ascii "SOS NTRP" .word 0 .word start sposdialog ; get rid of copyright notice loop jsr consstat bcc nouserinput SOS READ,Incons lda inconschar+1 sta keymod lda inconschar bpl notspchar jsr doOAkey jmp nouserinput notspchar ; ; Not a special char combination ; tax ; save input char cmp #8 bne $10 ldy bscount beq nous ; disk is no longer in the drive. ; ; 1. If the user had another floppy in the drive and it was ; actually accessed, then SOS catches the fact and puts up ; it's own "Insert Disk Blah-blah in Drive 1" message. prefix,y sta outfilchar-1,y dey bne $20 SOS Write,Outfile Stop SOS Flush,Closelist beq $20 ; ; A Tale of Two Cases - Things that happen when the Xmodem s "Insert Disk" ; message but returns a 2E (Switched disk) error here. ; ; lda #Swvolmsg & 0ff ldx #Swvolmsg / 256. & 0ff jsr Alert $15 ldy prefix sty outfile+4 $20 lda outfile+4 SOS Write,Outfile beq $15 ; ; This code is needed if the user has a disk other than the ; Xmodem disk in the drive and has not accessed it. Since it ; wasn't accessed, SOS doesn't put up it lda format sta outfilchar+1 ldx #9. $10 lda halfdup,x sta outfilchar+2,x dex bpl $10 lda prefix sta outfilchar+30. lda #31. sta e settings ; lda setref sta Outfile+1 sta closeref sta smref SOS Setmark,SMList ; get mark back to beginning of file lda speed sta outfilchar pCapture ; stop capturing. $30 jmp loop ; ; Quit - Stop the world! I want to get off! ; quit pla ; clean up stack since we're not returning pla ; * do we really have to do this? ; ; Savld ignore bne $30 $10 SOS WRITE,Outfile beq $30 cmp #IOERROR bne $20 dec foretry bne $10 $20 jsr ioerr ;error writing to disk, so jsr Sto lda capture ; Doing Ascii capture? and captoggle beq $30 cpy #0a ; Line feed bne $10 ; No, output it to screen ldx ignorelf ; Yes, see if we shoucc loop SOS READ,inmodem lda inmodemchar and #7f ; Show only 7 bits for .Console cmp #7f beq loop tay jsr echo sty outfilchar console? bpl nouserinput stx outconschar ;sure, no sweat SOS Write,outcons nouserinput jsr doblink ; ; Check for RS2323 input ; jsr modstat ba bscount lda sendlf ;send line feed too? beq nouserinput ldx #0a ;yes stx outmodchar SOS WRITE,Outmodem bit halfdup ; echo to or CR stx outmodchar ;output to RS232 SOS WRITE,Outmodem cpx #0d ;was it CR? bne nouserinput lda #0 ;if so, reset bsackspace count sterinput dey dey sty bscount $10 bit halfdup ; Should we echo? bpl $20 ; no jsr echo $20 inc bscount ; assume it's not BS ; It will do this for 3 times. If after 3 times, SOS ; decides the user really doesn't want to put in the right ; disk. Well, I won't stand for that! ; ; 2. If the user had another floppy in the drive and it ; was *NOT* accessed, then SOS does NOT handle the error. ; That's what this code is about. ; lda #Swvolmsg & 0ff ldx #Swvolmsg / 256. & 0ff jsr Alert jmp Stop $20 js xonoff lda #0 sta closeref ; my file wasn't open marker jsr Txmodem bcs $10 lda #XTDonemsg & 0ff ;"Transfer done" ldx #XTDonemsg / 256. & 0ff $30 ;file wasn't opened, so don't close! jmp SC2 $30 rts Xupload lda capture beq $5 lda #toffmsg & 0ff ldx #toffmsg / 256. & 0ff jsr alert rts $5 jsr age "Xmodem Receive Aborted" ; Delete file ; lda #RxAbortmsg & 0ff ldx #Rxabortmsg / 256. & 0ff $20 jsr Alert jsr xbackon ;back to old xon setting lda closeref beq lda #0 sta closeref ; my file wasn't open marker jsr Rxmodem bcs $10 lda #XRdonemsg & 0ff ldx #Xrdonemsg / 256. & 0ff bcc $20 $10 ; ; Output an error messe cursor on jsr cout $30 rts XCapture lda capture beq $5 lda #toffmsg & 0ff ldx #toffmsg / 256. & 0ff jsr alert rts $5 jsr Xonoff ;turn Xon off #2 ;Shift key down? beq $10 ;no ; ; Capture screen to disk ; jsr capscreen $10 outstr Togonmsg rts $20 outstr Togoffmsg lda #5 ;forc lda capture ;if capture isn't on, don't even bother beq $30 lda captoggle ;invert the Ascii capture toggle eor #0ff sta captoggle beq $20 lda keymod and inconschar rts ;======================================================================= ; Returns: ; Globals used: ; Calls: ; Called by: ;======================================================================= AToggle A holds character read ; Globals used: ; inconschar, inconschar+1 ; Calls: ; Called by: ;======================================================================= Readcons SOS READ, Incons lda .include conver.text .include ioerr.text .include savesc.text .nolist ;======================================================================= ; Readcons - Read a byte from the keyboard. ; Returns: ; asciis.text .include rxmode.text .include txmode.text .ascii "Copyright 1987, 1988, Gary M. Kato" .include alert.text .include gpack.text .include crc.text * ;************************************************************ $10 brk ; SOS Quit .byte 65 .word $10 .include settin.text .include dialog.text .includee: If we were not running as an interpreter, we'd best * ; do a Get_Level at the beginning, add 1, then Set_Level. * ; Here, we'd do what we just did, but then Get_Level, * ; subtract 1, Set_Level (back to what it was) r ClearRSbuff ;in case we were XOffed. lda #0 ;close all files we opened sta closeref SOS CLOSE, Closelist ;************************************************************ ; Not bcc $20 $10 lda #TXAbortmsg & 0ff ;"Transfer Aborted" ldx #TXAbortmsg / 256. & 0ff $20 jsr Alert ; put up message lda #1 ; set modem up for 1 byte output sta outmodref+3 jsr xbackon ;back to old xon setting lda closeref beq $30 ; file wasn't open so don't close!! jmp SC2 ; do post-traList clc rts oerr cmp #FNFErr beq trycreate jsr ioerr sec rts trycreate tax ; save error # lda #2 bit try to create the file. ; tryopen ; Open file SOS OPEN,Filelist bne oerr ; ; Set Mark to beginning of file ; lda fileref sta smref SOS Setmark,SM ; 0 means no errors ; if an error was encountered creating/opening the file, then ; an error message is printed to .CONSOLE. If the error was ; File Not Found and the file is to be opened for writing, then ; tryopen will 2ptr+1 inx bne $10 iny $10 stx outstrlist+2 sty outstrlist+3 SOS Write,outstrlist rts ; ; Tryopen - Tries to open the file whose name is in filename ; C = 1 means errora clc adc halfwidth ; find the start column sta ovrcol outstr ovrset ldy #0 lda (temp2ptr),y sta outstrlist+4 ldx temp2ptr ldy tempred. ; outcname lda createlist+1 sta temp2ptr lda createlist+2 sta temp2ptr+1 ldy #0 tya sec sbc (temp2ptr),y ; get name length sec ror OA-S bne $10 sec ; OA-S found rts $10 clc ; OA-S not found rts ; ; Outcname - Output the filename given to CREATE, on row 1 ; of the current viewport, cente for an Open-Apple-S ; If found, C=1, else C=0 ; Trashes A ; checkabort jsr consstat bcc $10 jsr Readcons and #0df ; Ignore case bit cmp #53+80 ; Check for tcons pla rts ; ; Crlf - output a carriage return/linefeed to the console ; crlf pha lda #0d jsr cout lda #0a jsr cout pla rts ; ; Checkabort - Check the keyboardatlist lda buffstatus+6 bne $10 clc rts $10 sec rts ; ; Cout - output the character in A to the console ; Preserves A ; Cout pha sta outconschar SOS Write,ou bne $10 clc rts $10 sec rts ; ;* modstat - returns carry ; =0 no char ; =1 char available in buffer ; Trashes A ; modstat SOS dstatus,modst jsr Disposdialog rts ; ;* Consstat - returns carry ; =0 no char ; =1 char available in buffer ; Trashes A ; consstat SOS dstatus,keystatlist lda gotin election lda #Helpmenu & 0ff sta tempptr lda #Helpmenu / 256. & 0ff sta tempptr+1 jsr Showdialog jsr Readcons ;wait for any key. Throw input away. nsfer cleanup $30 rts ; ; DoBreak - Transmit a BREAK signal ; DoBreak SOS DControl,Breaklist rts ; ; DoHelp - Put up the help dialog until user hits any key ; DoHelp lda #0 sta submenunum sta s access ;Is open for writing? beq $10 $5 SOS CREATE,createlist beq tryopen ; file created. Try open again. cmp #DUPERR ; file with that name already exist? beq $20 jsr ioerr ; no. Some other error. sec rts $10 txa jsr ioerr sec rts $20 ; ; Overwrite? ; If yes, open file, put mark at beginning. lename ; at end of file? bne $50 ; no, leave it alone dec filename ; yes, ignore dot. $50 rts ; ; ShowFbox ; ShowFbox lda #Filebox & 0ff sta tempso add .text to it. ; $20 lda #5 tay clc adc filename sta filename tax $30 lda textstr,y sta filename+1,x dex dey bpl $30 $40 cpx fi ; if so, don't add .text to filename cmp #2f ; '/'? beq $20 ; yes. End of filename, add .text dex bne $10 ; ; no '.' found in filename, Look backwards for '.' in filename ; if not found then append '.text' to filename ; addtext ldx filename $10 lda filename,x ; get a char cmp #2e ; '.'? beq $40 ; Copy inbuffer to filename ldx inbuffer stx filename beq $20 $10 lda inbuffer,x sta filename,x dex bne $10 clc rts $20 sec rts ; ; Addtext - $20 inx jmp $10 $30 dex bmi $20 jsr dobs jmp $10 doesc ldx #0 stx inbuffer rts doret stx inbuffer rts ; ; Dofilename ; DoFilename beq $30 cmp #1b ;Escape? beq doesc cmp #0d ;return? beq doret bne $10 $15 cpx temp beq $10 sta inbuffer+1,x jsr coutax # of characters ; Getstring lda #5 jsr cout ldx #0 sty temp $10 jsr Readcons lda inconschar cmp #20 bpl $15 cmp #8 ;Backspace? bne $35 lda capture beq $37 jsr Addtext $37 jmp $5 ;always taken $40 sec rts ; ; Getstring - Input a string into inbuffer from the console ; On entry, Y holds m ioerr jmp $5 $30 jsr ShowFBox outstr Filmsg jsr DoFBox ldx inbuffer beq $40 stx filename $35 lda inbuffer,x sta filename,x dex 0 ; cancel file transfer lda Createlist+1 sta Destroylist+1 lda Createlist+2 sta Destroylist+2 SOS Destroy,Destroylist bne $25 jmp $5 $25 jsr #30. sta halfwidth jsr outcname jsr Processdialog jsr Disposdialog lda selection cmp #1 beq $30 ; use another name bpl $4sta mitem sta submenunum lda #1 sta selection lda #Ovrmenu & 0ff sta tempptr lda #Ovrmenu /256. & 0ff sta tempptr+1 jsr Showdialog lda ; may have to do a Set_File_Info or it might ; be easier to just Delete/Create a new file. ; If no, ask for another name to use and do it over again. ; If Cancel, then cancel Xmodem. ; lda #0 ptr lda #Filebox / 256. & 0ff sta tempptr+1 jsr Makewindow jsr Drawframe rts DoFbox ldy #40. jsr Getstring jsr Disposdialog rts ; ; Initvars - Initialize Xmodem /// variables ; initvars; ; Get stuff from Preferences file ; lda filelist+1 ;save previous filename pointer pha lda filelist+2 pha lda #gksetname & 0ff 0d beq $5 ; cr is ok cmp #0a beq $5 ; lf is ok cmp #9 beq $5 ; tab is ok cmp #8 bne $10 jsr dobs rts $5 smp (string2),y bne $20 dey bne $10 $20 rts ; ; Echo - See if the char in A is ok to echo to console and do it if so ; echo cmp #20 bpl $5 ;printable ascii is ok cmp # ; ; Strcmp - compare string1 and string2. ; Return: Z = 1 - match ; else Z = 0 ; strcmp ldy #0 lda (string1),y cmp (string2),y bne $20 tay $10 lda (string1),y coutput a backspace, space, backspace ; Trashes A ; dobs lda #8 jsr cout lda #20 ; Blank out character on console jsr cout lda #8 jsr cout rts sta createlist+1 lda speed sta Rstatbuff+1 lda format sta Rstatbuff+2 SOS DControl,RSstatlist lda #Blinktime sta blink rts ; ; dobs - use only access param for open/create sta ignorelf lda #0 sta capture sta bscount pla sta filelist+2 sta createlist+2 pla sta filelist+1 20. sta delay ; 20 second Xmodem delay lda #6 sta speed ;300 baud lda #1 sta attemptCRC ; CRC for Xmodem cont lda #1 sta createlist+5 ;osettings ; lda #0 ; init variables sta halfdup ; full duplex sta sendlf ; Don't send line feed after CR sta usebinary ; Binary II on lda # lda infilechar-1,y sta prefix,y dey bne $10 SOS Setprefix,Sprefixlist SOS Dcontrol, RSstatlist jmp cont ; ; No settings on disk, so init them to defaults. ; na format ldx #9. $5 lda infilechar+2,x sta halfdup,x dex bpl $5 lda infilechar+30. sta prefix sta infile+4 tay SOS Read,Infile $10 ; nope. Must have just created it lda #31. ; 31 bytes sta infile+4 SOS Read,Infile lda infilechar sta speed lda infilechar+1 st; Get_eof to see if it's a new file. ; if 0 then it's new. goto nosettings. ; else read in the variables ; SOS Geteof,geoflist lda geoflist+2 ; anything in the file? beq nosettings #5 ; Pascal data file sta croptlist jsr tryopen bcc $1 jmp nosettings $1 lda fileref sta setref sta geoflist+1 sta infile+1 ; ;point to "Xmodem.set" sta filelist+1 sta createlist+1 lda # & 0ff sta filelist+2 sta createlist+2 lda #3 ; read/write sta access ldata outconschar SOS Write,Outcons $10 rts ; ; DoOAkey - Process Open-Apple key combinations ; A - Start Ascii capture ; E - Start Ascii upload ; Z - Toggle Ascii capture on/off ; S - Stop capture ; X - Start Xmodem capture ; W - Start Xmodem upload ; T - Terminal Settings ; C - Change Settings ; P - Send BREAK sequence ; Q - Quit ; ? - Help ; doOAkey and #7f cmp #3f ;For ? or /, 5 WAP /// SIG HELLO PROGRAM. UPDATED 4/12/89 DGO :#1,".D1/hello.text" ž#170 (#1;ERIN$ 2ERIN$<40F#1/P=23:=25:"PRESS ANY KEY TO CONTINUE.":G$U-Z#2,".D1/FLASHNAME.DAT":#2;FLASH$:#2%dFLASH=110: FLASTHE WAP OFFICE LIBRARY HAS A NUMBER OF APPLE /// BOOKS AND MAGAZINES. XMODEM /// SOURCE CODE K art .end whatever they were ; Xbackon ldx #3 $10 lda oldxon,x sta RSstatlist+8.,x dex bpl $10 SOS Dcontrol,RSstatlist rts oldxon .block 4 .list codelen .equ *-stdx #3 $10 lda RSstatlist+8.,x sta oldxon,x lda #0 sta Rsstatlist+8.,x dex bpl $10 SOS Dcontrol,RSstatlist rts ; ; Xbackon - set Xon/xoff handshaking, delays ton bne $20 $10 lda #6 ;turn cursor off $20 jsr cout $30 rts blink .byte 0 curstate .byte 0 ; ; Xonoff - turn off Xon/Xoff handshaking, delays. preserve old values ; Xonoff l dec blink bne $30 ; not time to blink lda #blinktime sta blink lda curstate eor #0ff sta curstate bne $10 lda #5 ;turn cursor oord DoTermset-1 .word Doausettings-1 .word StopCapture-1 .word DoBreak-1 ; ; Blink cursor ; doblink lda capture and captoggle beq $30 ;capture not on. Don't blink rts oachartable .byte 9. .ascii "AWERQZTFSP" oajumptable .word ACapture-1 .word XUpload-1 .word AUpload-1 .word XCapture-1 .word Quit-1 .word AToggle-1 .w $40 ;match found dex bpl $30 rts ;no match in table. $40 txa asl a tay lda oajumptable+1,y pha lda oajumptable,y pha put up help dialog beq $10 cmp #2f bne $20 $10 jmp Dohelp $20 and #5f ; mask off OA bit and make it uppercase ldx oachartable $30 cmp oachartable+1,x beq HER SUBROUTINEnSLOW=110xFLASH/2=FLASH/2):۴ =11:=07 FLASH$ SLOW FLASH:".d1/Menu.Maker" /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// SIG, Washington Apple Pi 12022 Parklawn Drive Rockville, MD. 20852 (301)-984-0301600 =Q:WW=0A=:A=21A=9&oldprefix$=40A=31410: Control C "aborts" program to Basic(:A=13770: Return Selects a file *DA=27:50: Escape to change disks/FA=324000: back out one directory level 3GA=(80+UCA)A=(80+L"BASIC 0":150A$="TEXT 0":150A$="CAT 0":150A$="FONT 0":150A$="FOTO 0":150A$(L),"BLOCKS")510*=27:=19:"FREE MEMORY AVAILABLE: ";=7:=20:"80C";A$(L);$:=5:THPOS=4:I=1:IBOTM=J-1:620Q=:=26:=21:sic; +Q Quits."r12);::"80C";a$;:+w#9,"DISKNAME.DAT":#9;DISKNAME$:#9|d$=DISKNAME$$=23:=0::"80C";d$;::12)201M=3:=14:"This /// SIG Disk is \^ 19";Р,2)", Washington Apple `, Ltd."=4:B$(1)="":B$(2)=""A$=16,B) THEN 240 #1, d$="":=10:"80C";d$ ž#1300I=0"I=I+1:#1;A$(I):290,#1 6L=I-1@j=1:same=0 J:SEG=0 Tœ2030^CT<1CT=1cCT>13000Zha$="{,|,~,}; selects; to new disk; J/2)=4:=+1:ۙ=44B$(J);:J=J+1I:1,180,22:2,280,21:2,2380,23:8A$(1000),B$(1000),C%(511),C$(20),name$(20):=10:=0UCA=128:LCA=UCA+32CT=15 IF PREFIX$= PREFIX$+MID$(B$(I),KMNOPQRSTVOLUME NAME (/DISKNAME) OR DEVICE NAME (.Dx)"P12);::"80C";a$;:Zb$="CHANGING DISKS"$d=23:=0::"80C";b$;::12).n=12:=20:"MAKE A NEW MENU FOR DISK: ";N$xN$)<2110=N$ :210 I=1L(A$(I),A$))200B$0 WAP /// SIG MENU.MAKER PROGRAM (v. 6.2) =".D1"210: Coldstart (320: Warmstart &*X=11000: TEXT SLOW-DOWN LOOP ,X.1 CHANGE DISK SUBROUTINE23œ202:2200<RFa$=" YOU MAY SELECT YOUR DISK BY We hope you enjoy it and encourage your submission of programs to our PD library. source code for XMODEM ///, our PD Xmodem Telecommunications Program (Disk 3TEL.05). You will need Pascal to use this, if you desire to take a look at the code or - hopefully - upgrade it so that it may be more useful for all ///ers.HJ0 WELCOME! WAP /// SIG Public Domain Library Disk Category/Number : Source Code/3SRC-01 Disk Format: Self-booting Side One This disk contains the CA)"PRINT.ALL": OA+P 3HA=(81+UCA)A=(81+LCA):::: OA+Q Quits 3IA=(83+LCA)A=(83+UCA)"PRINT.SHOW": OA+S 2JA=(68+LCA)A=(68+UCA)/Screen.Savers/HELLON=THPOS:B$(I);XA<8A>11540bA-7640,660,690,720l:=THPOS:B$(I);v:520: 500THPOS=4:I/2=I/2)I=I-1I=IBOTM THPOS=44:I/2<>I/2)I=I+1I2=-1:I=I-2:IBOTM<30THPOS=44I=IBOTM/2)*2:=+IBOTM/2)-1:pload or download with the host computer. UW______________ Xmodem Receive Aborted ____________________________________________________________ Similar messages will be displayed for all file upload/download activities. It is also the ONLY way to properly abort an XMODEM uABORT/CLOSE RECEIVE/TRANSMIT, S: This command key aborts/closes all file upload/download operations. For example, if you are in the middle of an XMODEM download, pressing this key will display: ______________________________________________a$,1)="/"5060:s=s-1 5030=a$240 MENU.MAKER 6.2 * Thanks to C.M.Davidson for his help!l; G$:::320H: Error Routine 202:U=11:"79C";"BAD PATH ERROR (NO DISK IN DISK DRIVE OR DESIRED FILE NOT FOUND.)"X=11000:X:::210Z a$="{,|,~,}; selects; back 1 leve 1600 &:WW=1:0 :SEG=1;".D1/SEG.F" SEG=1".D1/SEG.G"diskname$=3802  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T READ PASCAL TEXT FILES."04=10:"7M$="NOVEMBER":1750M$="DECEMBER":1750826);"-";M$;" ";Ѡ,2));", ";"19";Р,2);" ";/П,2))=>13П,2))-12;џ,6);:1780$П,2))=0"12";џ,6);:ٟ;$П,2))=>12" PM-":" AM-" 1830WW=1530 =26:=211660,1670,1680,1690,1700,1710,1720,1730,1740^M$="JANUARY":1750hM$="FEBRUARY":1750rM$="MARCH":1750|M$="APRIL":1750M$="MAY":1750M$="JUNE":1750M$="JULY":1750M$="AUGUST":1750M$="SEPTEMBER":1750M$="OCTOBER":1750T 0")2070H540R\A$="RUNNING "+B$(I),16,B)f"79C";A$;:=0pB$(I),16,B) z::SEG=1".D1/SEG.T"t=+B$(I),16,B) yCT=CT+1~240:=24:=0:"@ ..... "DATE.TIME.LINE" ....JM=Ҡ,4,2))BTM1630,1640,1650,0=+IBOTM/2-.5):I=IBOTM:I/2=I/2)I=I-1 œ2120B=B$(I),16)," ")-1 B$(I),"BASIC 0")850B$(I),"TEXT 0")890 B$(I),"CAT 0")1140*B$(I),"FONT 0")18504B$(I),"FOTO 0")1930>B$(I),"PASTXSENDING BREAKS, P: This command key sends a break sequence to the remote system, used by some systems for ending sessions. ^`abcdefghijklmnopqrstuvwxyz{|}~ŭ᭭򭭪𭭠򠭠頭퀠Šӳ頠𠠀𠠠堠젭ӠΠSOS NTRPRHeLZĠР쁭堠堠ՠP򠭠έ魭EAD PASCAL TEXT FILES."04=10:"78C";"ANY KEY RETURNS TO THE MENU."!>G$:::".D1/MENU.MAKER",320R",220(204::"79A";""; 2D=1:F=1 <#4;a$ FD=D+1 P#5;a$ZD=60#5;12)dD=60D=1nF=F+1::d$;::Y=1100:Y x13402  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T R".D1/MENU.MAKER",220 d$="" A$="PRINTING "+B$(I),16,B)=01:=0::"80C";A$;:#3,B$(I),16,B)Z=1#3;b$:"78A";b$Z=Z+1:Z=18:1290 1260 #4,B$(I),16,B)#5,".PRINTER"+ž#4#5;12):::".D1/MENU.MAKE30C$="N"C$="n"1160;:=23:=0::"79C";"PRESS ANY KEY TO HALT LISTING": $1020.202 8::Z=1B::=23:=0::"79C";"WOULD YOU LIKE A PRINTED COPY?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"1170*C$="N"C$="n"Z\]79C";"PRESS ANY KEY TO HALT LISTING"::202 1020#2,B$(I),16,B)ž#242:::1160Z=1#2;A$:"78A";A$Z=Z+1:Z>1842:::Z=1980*:=23:=0::"79C";"CONTINUE...?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"10 MENU.MAKER TEXT MODULESEG=0"MENU.MAKER"890&*X=11000: TEXT SLOW-DOWN LOOP ,X.1,180,22:2,280,21:2,2380,23:z:A$="LISTING "+B$(I),16,B)$=01:=0::"80C";A$;::12)>=23:=0::"QUIT XMODEM ///, Q: This command key exits the program, and returns you to either the "INSERT SYSTEM DISKETTE and REBOOT" prompt, or to the CATALYST or SELECTOR /// menus. ̠Ώ h:gpOn[n٧s]ds3issssssss0b>&dsjs|T}|s[:: 悅 lc!)` +b` +b` sL :b#`L,H s h ऊL(,L8f` A KL jLdjOPPKLL h AKL` Ѽ   (`H shLs Aji!S)Lt`SSS`L` z :0.`9::hhgg.%g& $gegަhH逪hhʰ` ҥ [ aLT ҥIJJABB=>>;<<?@@T ě hhhHH  `89$ 0~!L`!sm?iٰcL`S )!a{)Qi ڐ߽S) -ai) -aɢ ɣɍж$HS -ahʥ0SSȩ5%"/װ&hԐɈf0ɔĐ 8,f 8f L_ʅSS=ȄL`ȱi8eiidHddhd) _ ƢLh _L>h jhP _S @a-Qggeg5hih 6i6 "]S" ]$%SSSg a aL^ S S`La8 SiUjjS):,$f 0$ p fHhH_HcH uhch_hhhfhi0hhhB B A` ֥'( )&񦕤LNKM$Lb ě $m wl "m6X6+5 56ɀ56H $mhɀ(Z)& mL k~ wlL ͝dL Nsd# wl^_ ꂅ__hg^`8 悕`gHhHhH5?6@6@*5g5666gҦhhhhhhhhg:e:;e; ;m;`@c@c?be^@e@ _m__^ \Lx] i6g55``BY BSAMHH H] LPL(\)&P ěj9ȑ9ȑ99i=:i: >i>`Ɂ7XWWXjnXWi` ]?@@bgchch )^ ]b ]b^b^L\b8g+H__^8_ABB 9::)ѭ [ I[ aυ婶ZeLLL^$%Lae LGidFddddddd.ddddddddd ɕdˏd`Ls  Apple Business BASIC v1.23 - Copyright Apple Computer, 1980-83 CTERESOURCE UNAVAILABLDIRECTORY FULDUPLICATE VOLUM ERROR Please Press SPACE BAR IN PROGRAM INTERRUPTED%&'(%+.@C$DE FG!H"I'MN#PQRTW(X潭`: 808`:dd@՚H Z#IJJCSTRING TOO LONFORMULA TOO COMPLECAN'T CONTINUUNDEF'D FUNCTIOVARIABLSOS CALFILES BUSNOT SOI/FILE TOO LARGWRITE PROTECDISK SWITCHEBAD PATFILE NOT FOUNPATH NOT FOUNVOLUME NOT FOUNDUPLICATE FILDISK FULFILE LOCKEFILE NOT OPEDEVICE DISCONNECONV&CONV$CONV%LEFT$RIGHT$MID$INSTR>=<^/*-+NEXT WITHOUT FOSYNTARETURN WITHOUT GOSUOUT OF DATILLEGAL QUANTITOVERFLOOUT OF MEMORUNDEF'D STATEMENBAD SUBSCRIPRANGINVOKSTACK OVERFLOREDIM'D ARRADIVISION BY ZERILLEGAL DIRECTYPE MISMATNDEELSCONLISCLEAGENETABTSPCUSINTHEAMOSTEANOEXTENSIODIAFNOAAAAAAAAAAAAAASGNINTABSATYPRECAAAAAAAAAAPDLBUTTONSQRRNDLOGEXPCOSSINTANATNAAAAAAAAAAAASTR$HEX$CHR$LENVALASCTENAACONVOERRLIERKBEOTIMEDATEPREFIXEXFNEXFN%OUTREINDENAAAAAAAPOHOMA SUB$OFTRACNOTRACNORMAINVERSSCALERESUMALEGOTIRESTORSWAGOSURETURRESTOOALOASAVDELETRURENAMLOCUNLOCCREATEXECHAIAAACATALOAADATIMAGCADEAPRIssssssssss\3!z~IssssssssssssIG%ӓ,ssևwn7}|tttUUZ{fzxxˆU膅[L<^ENFONEXINPUOUTPUDIREAWRITOPECLOSATEXABYAAAAAWINDOINVOKPERFORAAFRHPOVPdd A 6 s e 9c()' 9cKHLI jLdj89弅:彬: 悅`H hɝɞɜ)`dd  6芅 e ()'` e'()HKIL 9cL>hL<^) i!Ls j @aLK$L% L<^gHhHhH , - b j$% @ag5h6h6hhhhh8g5h6h 悅`6 "]La ud `L  d.CONSOLE[[ TdSdddddd0 ddddd`?TUJ)TU  ' Lsi imLqLsh E0`H ty ))ELyq  8 $0!PizEn{dUeUi hLqLs `wLr !L2 {}$ 0`QɀX zLs.+"2mXm tL qXXW zzEn{i x }H$ ]kh8 )KLe9e:: }Lgi , p s$8$0p`PL<^Յ H s r ɀ ȱX Hih0 & ?<I?iE W Lq s )L<^ȱQȱȅR dj sLHoUVV$ LhU Lp$ LL<^opL^```?EXTRA IGNORED?REENTER $0pL,`LgXW ׫ k*iXX 4X \\L<^Xii7 { n k$ |WlXVVE$ P% eT{||Hd ̐h p IkLo00$0 L>o "m nV dj$D$ P 膼Lo$0",i [ kLoHSHhp< {}$ p0H 07h ]k ,LmUVV `p F sLn 2 ukLoF вLm jȪЖ LL<^~p l nhhLgOPP` Add# 6d s S SS@Ln A " r ,; s lLn#f  ;П ⭩,SLn "mʆ,S _S% nLh "mL_T ST#L(, U VV ׫$ 0  QpU= d hkddhe##5ddˏdd?Ll ,?#$04dHHd = d hkddˡddhhd`LsL#&F  ; s b 0` L+l$ Nsd#Lzm566ȱ5Ll H# wl m#͉LchL$m QRKLLsh$0LU$^`=8WW>X> 悅XXXL:^ g`L<^ l Jj bx bp,_;Ll  ~q$0P oՅ5R66R l ~ L%l $m0 =k $m#`$L#i)8#Ll  s s( L7bʊ# L-l m hxd5d$0H h`L^bLb$%/%5$ &5 &5e$$5e%%$&%$e$% Lk ׫ sHH ~qLPkHHh$0'ph | ZlWȥmW`L$|hXWXL-hm lmmLkl VYZZ{|| w ᐥlmmYZZ LxWXX ox ExYW# kXX 4=^W^0A, 9:: Ga.ghh 悅` A` \\ɾ,L<^hhZkKhLhhhe9e:: mLg jei `Ls j:,"hhhhLgɜEɝDɞLb Hɾɺдmhɾ Qp aj pi `p j` jLi j,d wlOZL^L^-L(dPL<^OPMNKLhhLg` Ls ҥ?ieCiLa,  aFL s a iLg ]hhh5h689H: H:HLHKHH6H5HHH` ui` pi` Qp j pi `p i` j jK$L%8eȢЅ iLOPP$pX0S&ȱhȱKȱLe潥ɂ逅$L# $mKL x~ m khLgLsLc h5逢)&a TH THLgL6k8:9: STT`)ɀLK$Lb8gLOPPKLMNhhm Vf0 mLf) mWA 0 -a mL8fW;8<< 悕` 6kLU*i kXX 4XLy \\'_ch_chbi^g \ihh ] Qp aj ih `p b iq bqn %jjg56Ly { b bq | XHWHHHֺh$PLh wlȱȱ%$LWH mh x~  m#W", mȱ28eLeji`Lwl mȱ"Ɂɂ ȱ :, iTjj ȱiVjj8逪XW0 Vf0WHW$ 0X: h ,@dd )e dʙdH &eh(dL ddک,ddLd:e``eLeHELLO ue 5eLse6e:7ee8ee:e`EAd j @a(% -, bLs j {ghhi L[ s r$PLsi,L3-hLs L*tɘcɭ_ TTLdd`jk8L|L3L3TL3,L3i LL r$PLLBLsș Ȅ ( qƚƚ` s s),;,=,#,(,,ѼLL<^L<^ llmm$P$`LćHƽ Ƽh`$ lȱlLL{ɝɍLɎСL s HI s shmHmHlHHɦ# shmHmHlHH , hHLt  ,, shTTLui ui,L3$0 |Lu xijk6kxyy xxy6+|] {n LU{HLʁIڢIڢ-(h#5ᆥ](IڢʥnH BiHɁy U{y рhɁ xhLB` vy{| g|S}dpL}Qz}c0~~D:~L̑56gh6hegehh `iɇoȘ戅 aziȅ xdo`Abi$nFn) i  j g g ^ ܇.Laz͠Lć ^ ׄ& ć ׄ ć ͠L- x |z K{ | T}{ x xnH yxn0 I B xh B Lр |  ZuL.y +|z% T}uH }h{ ~|H !z az ~hJ inIn`L~8;)q4X>Vt~w/z*|cYX ~uƀ1rP aziP | |iɈ { T}i8Huiiu x BU 瀩{h z` |] az 뀩]Laz | i8fe.șR0șRmymlylkykjyj00ڊIi i/ȄȪ)Re.șRI)ЪR0.ȩ+f.8f-RER/8 i:RRRRRR`y`'d |Ģ { &{f o0`LB ` H$ge &{h 80 '~L}H |h |zEn{iLxf d$h0Ly ef q80fL}COt#t$JZ mLKjk8 | ~Lm ^|-$nșRnȩ0iL f~ azea~ } \~ } &{e B{e yx %}ei0nihoi8傐IL|`7 z!L|iD8$n yiLyn)FjjjLyiɠ %}nnI*imLyjklm` s e-o+ smo..IE)2s S -+fh r$h8fL}fg s$gPf8ef B{f65m5l5k5n j5i`d,]WXX566 |m5 ^|l5k5n %j5i5` |m l)m |m`znth` |ht`i  y my`i n*` |jkjI*mlinLyFn`nEz0ʢiH xv5ui`uei0,iiL0y{n`nI0hhL,yLy |i{ xi` |={{ {LZ{ zL{ |8ii zivjwk xlym* 蕁24(y&x&w&v0⨥ymyxlxwkwvjvL{@jjj)(L{L<^~jklmL y56y^Vy dv88; 54541r |LiHi z xz U{y xy рz xh '~z zLz z~ zm zl zk zj zL{LyJ eyexew~ev~f~ffffJ`5665y5x5w5zEn{z lkj |yjJkjlkmlmi in`emeymlexlkewkjevjLkyi&m&l&k&j8iIiii9fjfkflfmf`nIngjIjgIm lkj`L<^}i0vvvvvj`L656 wh H5Gh`lmm566 Lx5Hȱ5ȱ5 F665 w56h(` x("LH)&h`( '&'`lmm566LxĠLx znInEz{iLx y? zL||uu`8i$iznIii0ĨV y${Wiuu8Iem_B_B`)&N> ȱI8gJJ hhge ghh f feLH>H= x\L|F )XHABB8 __^hHI8e^ @1 @+?%GHHHIJJih BABGHh`$  ě u Дs IJJ^__Lveȱeȱe 8` `H Jh(L悈`H逨h` Hh8 Hɀjhji` HihJi(`  ~q$L ɺ b$P i pi$ȱLdjɻƟ dj 柰ީ Lihh sLg  s ! b   s "!!!" ऩ थ (! ( ऩ थ (" ( द!LGb8Lऩ@iu +-ELj) e | ^ .' "5 1 p) iIii i)Lm` ?i $0 ׄ $0 $0 ^`Hhth`^Qb ^^ 78ߠȘH yxy hL3 j kqHHHH s H , ,H s s ~qhh 1 lhhXhXhWWȱW7ȱW8 eLNLXZWX ` GGH HlHmHmH khmhmhlh hk8j7k8Lޒ e7788IjJkJk )lmm'&`UR{R||L̐: / cRRȹRRȥ Rл s `Lsh sh5lh6mh6mhxhyhy x x Qȱx7ȱx88 Ƃ 7e7888ł75 楽HHȱȱ6H6H5H s =к bqhhh Lshhhh` ~R/mZlmYZ PujHkki^^`H"h{||kjkȱ{ "ie{||  V{|56|6 w&5L<^i8e` ě u8A?pB@B@ )onL܇jkL| Nsdȩ8 NsdL2Lа,L<^ A s ׫ g iq s= sXHXHWHHHH ajL? b rLiq HHH s iqhhh5ȱ6ȱLI65 g5H6 2|Hgȑgʆ5a g5ȑgȥg <^^^__ɂ逅____<;إy6 hlhm^Ȋ^LL:^ȥ5^H^h ͎el5emȆ6п  ͎e^e__ iLZe *& eegggegȱgehh Ľ ,L<^  8` ^LQ ŠhhL6 $P 訽5 ͎56ۥ 8ee L:^?be^@ce@c __^_ \__^;<<6  $Phihi^Ȋ^6h656H |mHlHkHjHiHl5 8eeghh^__` HHH H bqh hhhn0iɐ1 }L yxL%}\i FHHHHH 6hhhHHlm ,҄ shh)>=>hgh<<;[a{p ;<<ccb? @c@ube.a{bb,\(eb cc`ebcA[8饰 a{8`8\e@@He? ]@@?hbbb0 ea ȑbc8L@ @@h5H ?5^6_6_hhXhXhWLk ? % ?Џ`5566` xe5566ɂ66` s p `  zLseff z.!'$ iߪ$ 0 H8eAi\h$ P8 (Lt$ 0}5}} ,kk} , kklm Lٓ[ 80@ 6 2`  dkH) ojhJJJJ ojL 0:i`L<^ jHHHHHH s jhLyqhhh6h6h555_ȱ5VHHHH %L/5H6H6Ht $mlmkljkij8ihn`L,$0DpA q enHi80 @Lyu \ % @u ćh `&m&l&k&j`2L0 և yxLT}$0pLI oբRLi `u LLi u Lui0 ܆ چ,,% п 擩lm0u 1eL5665`iɀ*iH i  @8 ei $ tutt tj ȡhn` t` 0RN0R 0R$n-RRR`i` p`5665i`$0BP?iH i hLbe55f5f6e}Lme6u5u }`6ʈ`v`jip` ? #  ue }~ %u $ چ 0 u}` L uu  ) }Li <i@L{i$i0 p $ 1`ui` LL Lbb `}i~ei^~0] e e^`}`566i5`_cf_cfi^eub` ?^qbep`L<^ ?8b^e` rp`I` ? ㄩp^|be #^b ebbu|beiee^^iL56^f8 hx57 xLCx8I77JJ8 88` H dhjL YYHH dYZZ oxhhe5566ɂ逅66 wZZY L YIL=m ) s  ʊHYImm shhhhYhZhZHHE` 3YZZ xLCxl5Ym6Zm6Z x` Lj5 3LٓL bq VlmL{} ӓ0566 `sL{ bq Zm*elLmLiɑL %}lm$%`L:^fCDDEFUVFVX L; d  seRթR`yiɀjjn*8miɝ d L .q$uL$)JJ8偅8傪 u Tf$i0Ł!y0GLqL~䁰< 0$H ,GhGթ $u$n 0GЫ-Gv)' $G uJ-$n0+G $G0)`u vphh` Ljk ,hh`Sj9-k L9j ekekk|z)ekk |j[ ٢  L`j 9kkj"j"kеAX"+-&$.ECR/#Z*! DBA0 k$JJJJ) vvyLj L ʟ,-uukv kv@vvyL5Lj ʟA80멀uukeqqtt$uA)*t L; $uЫkЦuuj ysLq,kl$uhuuj XkkNuuj k 4%v. #  1$u tAvʘtDթ q(~th`pvquts~y fp$pp8j/;XAx=|8ez{{ ghh "o `L x  wwghhoؠKkqvj L`$uZuukvN kGv@  pJ LUL-LG -$p0`pog $mkڥrok8o,koLdjAaCcoJ mko 5 $mkk mLw L L HG56H6LExh  (`|||}z,A[ :808Ш`,ޞ@`y Gy`LHq,;' L Pu  pLLwl`|H}HzH{HHH ɶ# xhH s  ~q s,; Ls  ~q$ hxrL iLpnH ~hɀ8(*iR.-:/ RRhhh{hzh}h| Pu p 0|8cJcm J_mm嚍J_AgBhBh \^A_B_B` ^"( zM jF566 x}z{6{LҜ #z{{"} GLsL<^ jHHH i dj ٥z{{ j}hhh ;в| |膆  RRRRH uhA?B@7B@87F8f7877878L:^7 8*JA5gB6B68 悅h圍h?H@H@HI?J@J@ "]h@h@h?gAhBhBJJ8 悅J圍J7ߚ8BܚLs`䚌B L:^`Ib^J sL͙ɚʚ `pAƚЙϚŚњ˚ ̚8 悅DDF͚ Κ8 DiFEC CD)ӚDmӚDԚCBКLěŚAݚ⚠IȌ 8 ꂍ  8 ꂅJJ` !7Ri88 pi UŦLUUU HHHHL 2hh LW iL 2hlhkhn jhimhHɗ8 Ls`LIŚ1CUDVDVU Lŧ 0 7U L`L:^֩ ŚEĚ L| Qp QeeRee8 1 V` 痠U` hh R LsL  z (L[ Rީ  @Y%(&:$LU s և ^|iHn %jHkHlHK s n ZlHmH5 s iH jHH楩e ) ,LsLR eՅ7V8U #   785U6VLΔU7e778ҥU^V_bcF_hcCgDhebbc \^__`U8傅UV` |UȱU` L<^ |UUƜ0ƛ ӗWqeWȱWqei W` |8UUWȥVUX`UeUUVUO / +'L U)łiV VL LI 8U 7ȱ7 UU ЯUVULU7V8 p L LZ U qUU qUH85h688V77U U 5qUWȥ6qUX7qWWȥ8qWW ٥IiV) V LVU?e8V je?e>e8U>e5V?e665e=e@eeehi?e ueL5e qrL,op ɩ`et?ek;e`hZ L<^hZL<^L=ee>e ?e`opqrst !e5ehe?eLje LjeR=89R>:>:iR:RiRRiRL`8(RR(`EeFe  s bq Vml0L dMeL` bՍe :RRRiRȐȰRe9Re: J 2IHJh*=>> 95:6:6R L1 1Lԫ`L:^  aFL^R, ue 5eLڭR7>e?e5e?eJeKeLje֩ u>e?eՍ "] a a$% iLg֢   sLj$%`8f  a e ; ` s ɩ` YLILcopL7 z0xH ׫$0_ ;h8fH`aai shH2 h zJJJJf Ik ɩ` ̬ t os YLA ևLLק jWXX` ׫$`pd8isŠt`dyoopd8ip`J uv`&&&8孪孪宐橈`! @ uA?B@B 悅@=g>h>h ]=i>j>k a=g8i>hj>h 悅ki=5j>6k6k;el)@7Me0u(> ƬƫHH ,hohp` ɩCe0R`ȹR`ee?e@e ue 5e T L=e;e`Lso`n}pm aa`dyo ɃɄ b`" lJJJJYe s ˰L8Ls LԫN l@u=ekPe tMe )llNesOet NeOetMeCOeNeȌ=e>e;e,i-i8, ȱ,%,W,pp ڠ %p`l  " ) i SOS KRNLb.D1/SOS.INTERPŠ̠Š.D1/SOS.DRIVERР頞 0 ) (lH'&3&'&#e'#%e'%'&"$"$#%'#%h`$eh`L)i   HH `TH..TH..TH..THATS ALL, FOLKS!R`RT RT`#RT RRRRR`0R`RR 㵩:RRL㵆  ~ RR`BLOCKS FREE: BLOCKS USED: TOTAL BLOCKS: sj]"]\AjiGa@aI[5x<^sě xCxEx5eҥV{}g}gkj̐kIk~^hT}27uejewsHH st\hh H PASCODPASTXTTEXT PASDTABINARYFONT FOTO BASIC DATA WPTEXTSYSTEMRESERVRESERVCAT RPSDATRPSIDXAFDISCASMOD AFRPT SCNLIBk;eo $'>ed?e ɩE` eĐL Ȑ 15WL QL5WW{5 ې'`,55 ې'` ݠ B1 ȩȑ Lɦ8`5  @ R㥶i ` İG8`F`X8``éۅĩ >` T֩xxMH]@ Kۅ5H ɐE$ eİ Ȱ h`h`8`W h8`hR`hLҿ i x +ۅ5ۅ6 ǰ `E8<W`­ `0XLۅ5` ռ``ߤeI`IiţO`Ȯʆ/ )󘑡`()0zq 滅ѺY Ueۅ5Ѻ Ѻ  Qܐ'`i ҩ *C8/y.i/ ȑ  © $ E7<3W`ȽLֽȄ @8`R ) [)_[AͰ")[)_[A:0/.ЩȑΘ8e * ȩ`Loü 7)?۽۩ W٠Յ<ōōř ռV7 uM78 V榠=ü#)@5 ɐ /ݐE ) .) @L `lqhٯ޿=ϓTXIֲ̛̐~ؠIJK,-NOPQ0vt `` LLɠ8`ΛLL渠`0 `8`HiHiH ihhȱh`86)IH)heuQɸ` ` W` ] %饚0` W` ߰4`)|E8LLLRLLLLL*LLLLLhh`LLL`SOS 1.3 01-NOV-82(C) 1980, 1982 BY APPLE COMPUTER INC. ) `G`î** }*`o^`on 8 JJAj@` *?($`ΠņɠŠ堠РѠ͠஠әƆH v?c,,,,h߈ߢ~))`3PLLP*%(i&`Ѕ񩏍E H pph`Xۅ ۩ۍۅ Lɰ ʰۅۄÍÍۙ'Ù ۍ*ۨ  Ѝ۹ۙ8v- ðJ ¥ ð, ðLO ʰƥLT`'  mې浰``8 8 Wٍۭۅ5ۅƭۅ X̰ ìۈۑ T̰ۅƭۅ X̰ۙ%ۍ" T`K8`)` İ ۱ۈ` ưW/ۈęۈЍ۩@` 8 MƐ  5 Q8`LŅ ͱ ͰU..++,,IJ/ ӥ-.?Цե,J+jѲ4Ƴǥ4聠 H hH kh8`8-ȥ.L 8*Ʊ )8 0*-`.G.ʱ*+,EP'.E.LұE0+,,ӄ*p-e  )LBѠٳ )8`i (` )N8`*eȱ+eȱ,i۠Ѻ*ȱ+L - ť.Lkҥ. ՅL ͐Ld ~ pа.J/)@߅4N8`) ))УJ8` ۑȭۑǠۑۑȭۑ($S8`O8` "` / 򑺠+* ͐H h8` ΰi `()  *ǵ յý5Ņ4gȩυɩč5 iψ }.8` iϙLIѠ ˢ L΢ ΰ LϠ ˢ ΰ1` Đ@ АP8`B8`ۑJJJJ -ѥ +jѲ84ƳJJ 2ΐ3泑ƳLTΩ潑ƽ`ƱƳ ΰ( {Π۵*+)e`8`)` J J + ΰ" 0 ΰ 🱼ѼL8`ǩ Ϡ` ϰ ƑȥǑ` Ѻе*`)ȥ+8ۍې  ,ѺLTΠ"LΠ5 խ ɐ /ݐE`C8`)@ ϰa)ۥ,8ېu+J,\ ȱLJΠ) ϰ'#,J(] { ΰ ƑȥǑ.8` { ΰ,JѲ ƳL΅ƱƳ ΰҥ,J0`#$"0#`!qȱi 5H5Ƶ ǽ jh5`L2̩ƍv̥Ǎw̩ÎL%ϠƄǥLj̩۬L~̠HHh` ̐`*ѺG0?M`)J"u-- M8`۬` # ː`  = O̰)= I`JJJJѶQi Lˢ  0 ̐ `"L˦ `H8`8$$"$= O̰=`$0`#$"0`$` H hQ)fʅ F jF jF jF &!  eװ*  ̰F湥 ƹ`Z8`@  ʰ泭ۑƳ ʐ` ʐ` ˰ ƹ Wː`ۘ . . .۪8*JۦȱѶ"` ɰ Ȑ`E`Ɔ X̐8`>>5Ѷ Qܩ<`>`\ʊJJJJ ۍ۩  ˰Fȱ X̰6 0 Lɠ 0ۑۑ8ȱ`H8` ɹ $  8JJJJ8 ` ۠ǽi `< Ȱ+<#5 ې'` ɐ /ݐE`W8`R` 5&i ` Ȱ 0i `<8> ȐT eİF cȰB)Hh5 ˭)*ȑƑȥǑ'(ȑ`L)ɭ)Ѷ*e`M) `ۅH)Ѱ%}ʈh Qܐ'``hi ` p6۽ʹZ5 HȐ/i i `гW8`0( ɐ Ȱ ʮ6E`5 խ ɐ ޢ ȰLȍ۱Ǎ X̰% & !J8` *LĢ `8 iۥƍۥǍ`ۅ %  6 )Ѱ Ѱ` 𝭧e ǐ bǰL*ۈ5ȱ۠ƍȱǍ X̐ H h1  /ݐE`ۈۅ ۅ 8ƭ X̐`LLŠǠ  ݭv̅w̅ ðzv̍ŭw̍ŭƭ ­ōō T̰]ŅƮņ X̠8iȱiiȱi ṰŅǭŅ XLōۭ۩ۅ ȱ8D`F`8eYƍťǍŠ)͠(` L Ͱ2 ~ P kҐ#L8 T 2ΠHHȑhhȑ`Ld )N8` xհ*eȱ+eȱ,i۠Ѻ۹ۑ񥤅- ť.Lcԥ.La Ͱ$)rJ Lɰ )# Ԑ)Hۑۑh8`P) հ Wհҥ,J+j泭۪ƳۑȊ ) ~ fPL ͊.>.ʱ+,EP!.E.Lw+,,ӄ*- P*e (` հB հ5 Wհ0,J۪泭ۑƳ s߭lߩ * xLx @h hhh ,0)ߨ)Ah&'0HHHH xhhhh ,0)ߍLLhhh@)&&&(&('+*H)H(h)H@x )HH30.0\-JM-, J3,e$,d,,  * *l߅߅H ߅ \xi ߅LHHH *ح)0 D) HHHH,, ߩ0  xLߍ󠠩à٠΀ƉŠŠӠҠȠHHH *ح)0 D) HHHH,, ߘ)@ *)X  xI)}h)L, L )ڠ) w߭)Ů􅮈 ߠ'x)) J,QJ,SJ,U,P,W(`)(()  8)j`J j߅`0X ٠͠堘ӠȠŠ=`Insert volume: Τ in device: 蠠ɠ then press the ALPHA LOCK key twicex)_ @,P,R,T,V) )) `)8( ߠ',@ ߠ0  '葺 ݰL`5`i 祻(8`2ޝ51©ޅéąŅƍ >ϩ 1ޠ== f ɰ`ޭ`5=(5= i Х(`=H hDC5 L3ܵ ɐ /ݐ 8`5 ˥JJJJ8 H h ` ܠ825H h5 ɐ /ݐ 8`Hh ܥ5 `ɥܥܥܥܥ5`܅܅܅܅܅5`( ݰ)Ѻ ݰL ݰ泱Ƴ ʰȭۮ ʰͩΪΩۦ eװqȭqLJ  ˰Aۅƭۅ X̰2%&N  ʰƭ X̐`Ӏ堁ӠҠՈ՘̠ƠŠӠ̠ɤӮȪŅ͠Ϊ ܆5 HȰۈ)ۅƭۅ X̰ 3ڰLÍLT̥L㼠  ʰ` İK ХP8` LɐH80)N  հ)@LO ˰)0 ̐` M ­۠泭ۑƳѲƱƳ X̰ RڰäJۑĥ` İo!)N8`WپX0 ĥLä X0 ĥLà !"#$ Đ2@H AڰCŰrP` 3ڰ(` AڰѶ? İG8`Fە1 ռ İ ЩP߭)@N8`1@8` Aڰ񈱴 ˦,+* ʈJj =ؠ yiȩ`y4泱ƳHhz ʠiȱizLA`L;ؠ"  `1` Đ7@8V۩ Lɠ۪8ۊ۠X)JJJƄ X Ġȱ۠ ȍ۱۠ ۭ) ۍ ð*)#  O̰``)(`N8` ) xհۈ ̰آ*գ  Ͱ ݢգ LvL{ؠ;i ڥ(8` ְ( ȱ5 HȦ)`Lxץ: ש ְ⥺i ꥻ(8`Lx Lxש u )۠0)p խ.8`)@ ϰ) ϰۈۅƭۅǭۅ5 X̰ *ƭ۬͵̶L  ΐ` Wհ> H۪ȱHۑhƳh sϰq ` ʰiȱi `)5©éՅĩ5 }JJ+`.`8`ɂ )`@ ש ְO ֤Fȑȱȱȱ008 8hhh H(`x )HH'Ƚ!88x , ,,(`," , *)` `   `x )HH8(=&(+ʈ&ਹ''&&hh(` * @ HH` 2``ӠР    0) ) $p10LYeieLVȱ d0L`Hȱ hh` WɸSI I.ȩ8A 8ɸ4ɠ(H)h h8   `    i Ȣ d` $,)?P^ GL㢮 5L}P.)(Ơ L`ޠ LR  稱 I)0JJJJѤ  БĈ` H`)à`֩ нѽ>`]PU]]UPPX0 0 PPXPP  į󠠩ҙ̙ɠΠɊՐӠӢ̢ՠҠŠԠҚРĠ鱃ԠȠࠠLQ  * WHHH>%H H @`)h8`  HШБˆeЅА SYSTEM FAILURE = $hh8`hhhxآY_Z@tPRVT,p S JJJJ ) ʍL@ i0i6`îӉ͠堧ǥӥ``HhHy)(h`H` 0L?i `h` `` `x)( 8 `jjJJԥ)եӬɂ )Ӆ҅`  `H0Xh`Π'à̠ȈL` 8`څ  Lk%  Lk8Lu텚8嚅 L L Ld V ``  h` ک V `ۅץ  VLFx) ( :` H ) L  .P'pб0 &L:L5'8+8`0Fܢ` ř,Ř 0 8f)J ӭƅХDžѥL1LUȑ  i ߩLL )  札)  ҩLL` **éL0;` H ) 4 )ߍ) hjjjjۥ0CF = -$(L !LLL&L L-LJ٥eƦ ,L  # ` (L.L…ҥÅ,] Xx,f (I0јIFjFjFji```x@gŽPy+wLwԠ͠ŠԹ.D1 .D2 .D3 .D`HJJJJh)y` (2>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< SOS DRVR"CUSTOM.3 )((8*,;((*,((+)((9/(p((>3  =9 :9 .(~|L|LNqooGoDDDcc0ccpc]]c"QM"|@@pAATT**|  )* i LiHh`PQPQ>P Q,PQ"PɀQ@PAQ`8`nɀ<)nopoLpp` 0h8蘠fȊf` ab 1abo)abaݰb L9c`` a N0Ioa0H ha`pLopna n`  3ɠ/8 L %iLɠ8逨J Hh $`b >_-%^%p_^^_ab"08^c_L8^c_L8^c_L8^c_ȑcc\] ab^_ ``aV R0M bba dda `Q8STRQ ST`c\ȱc]a  b 5DU e\^e]_ ^_ ^_LH8\^]_?Je\^e]_,78\^]_ ^ݰ_ ^_LH^_ $bL@A^_aoQ*@A RQL@A `T8`RLSJTKQHIQiHiIKNJ)M8逅OPOPHMIN'a MHNILHOIPaOHPI8JHFKIGFGaHMINNMʆSTL8HSITQQSTde0f`   cCȱcD C Ea  UV 1 ELUFVG FUUCVDեYCWZDXWXCUDV[ v`b0WXYZiUcȥVcWX eeYZ ggE` @SATRDžŠƠŚ̮ÎȠ Ӡ̠Ӡ` LL#L/LL'Lgab `abBcd cdBrcadbho:ab.cݰdDcݰd8abҊ v+abcabRcdTefVghXijSdfhj RR`^0U ` 0 ʠ0 8 `ůàՠԠàࠝӢӠ ȠDž̖͌͊頀ϐωŠŠӠҠȠγ`%!^0 ^)@`a R =` *^)ـooL]^)?i |TU QTU]qUoqTITsUsprRprqs]ToUXa` RL=Xa` R` *R`X`U T  *\AX[ @F\B9ɏ5\o*Ɂo)[[ @^`U V  *C?^0: ݳ ٢ ^)?i` *)@o `p^ XiH 1h `)X0 8~X 1`C X`)X0`C РǠ𠠐ŠŠӠҠȠƠŮƠҢâӠUAQY @?ZY 9ZYY^TU QZo>> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>>xrL ==L: ,lCL <=L: <,n)LL8 L8 u:L8 ;)ߍ;j`; ;j`uBL8 uCL8 u)u;) u;L8    x) `(,  LuL-upp<`uqq=L: vuL L L #1:CY` 9C<m><=m@=>@?AL8 >m<>@m=@<=L8 <m>?=m@AL8 C9L8 ; ;k`;);k`,@`<,m p<L<`<p<`,ms<L=q=L: ,lXґȥӑ,10 h0  `,g0L  ҅ӥĥŰ+,0p 4 Ls  Ls i )"|tȌs|st HH` MjH,: <J h̰ <rh,oL`%CYgu9 Ln90$0%,7 ҥ L$0T,8OK50P;ҥ,8 L%\   8҅¥Ӆé҅L,5,6  & @jIH,5 p  He҅Ґhe…å逅h,23Lhʩd8,h)ec efeede`,5 H  h 4  `5!    4(P 4 4  `,g0L,10kH0 ԥ f0)ĭ9)9҅xh(ĥŐL i,1HȊ©L,52,9-P" a{) b) )ab)a a,h0& &+%a0 +hcefd(c,@cfabdf`cnx  (,4h`dd,9P"<:J H) +̰ H) +ʭcP h̰BTVSPLH   5"ʘ HH` (# (=  0`)aI88  >!SHOLES 1!1!2@23#3#4$4$5%5%6^67&7&8*8*9(9(0)0)-_-=+=+\|QWERTYUI OP[{]}`~`~ASDFGHJ K L ;:;:'"'"ZXCVBNM ,<,<.>.>/?/?d0hp00000>0# #0~$ <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""""< >>> <Le Le ,g0L HH`! ( 9EKQWbmz`(" ((è%È`2ȭ3`1`d`c`+È`&È` & IMk`4`5`6`7`8`9`<ȭ=` & @jI`:ȭpȭqé,i0L È`,g HH`LL! l      5  Hdcefh&+si  M0   h) `(" (  (È& 8  `)2ȱÍ3`)1`Ɂ" (cefd`Hc to do any modifications (a fact you pretty much already know if you were interested enough to purchase this disk.) To see how the program acutally runs, you'll need WAP /// SIG PD disk 3TEL.05 - XMODEM /// (or you can recomplile the source code). WAP /// SIG PD PDS NAME: XMODEM /// SOURCE CODE DISK ID : 3SRC-13 BOOTABLE? SIDE ONE ONLY This disk contains the source code files to Gary Kato's wonderful XMODEM Protocal Telecommunications Program. It's Pascal-based - so you will need Pascal (+@EIR[ty} NQ     ! ( 0 7 I N S _  . G R Y f {    ! $ 4 9 F I P S V \ a h m p s x |     ' + < ? D G N U f k p x ?BEJMRUX]`h  2;AGMS[fot|              . 3 6 9 < ? B E H N S V \ _ b w  KORY\aelpu !$(+.147<?BFILORUX]`finsw| !%*/369<+;CNU\eh "*-036<BLORX_fj &+38;?DGLTot <?BGLQgjox',/25:BG̑ʈ0 Ցʭr̈A萠L: ֦ڱΑ0Б֤ h L  p,:0 JfiΥiώJe΅Хiю@ B $p̑бʑΈ0 Б̱ΑʈeمΐeمАA萿 :  `ʝ"`t  !#%')L: 8p,:Jf׮@$PA B $P@/A'ʤ˅΄ϥ̤ͅЄ B $̑бʑΈ0Ƞ h L: $)טɀIim>ٮ@8pذ `$0"8,:Jک@ׅפ؈۩MjL,:08*Ȅ B ,:J}΅н(I I $0;P̑бʑΈ,:JՐrx 0, )ߍ:) J)*PR,T,V( : `,k<,: JI`I`<,:J̰`=m@>,:J}ʅ̽(I I `<Mj,:0pJՐ̑ʈ`pJհ0`ՑʭrpȐ`=m@< B h A$g " x) (,`% (gL,}0, `gé ĩ `:) j:;jN;~j;O,:0'???>>8?>p<<AAA@@8A@q==C)CB)B C}0 x) `(`hh% ( ΍ ύ逅Ñ}`` " ( ĩ~Íĩϭ & &υΠÑΈ~ F ~ҰةeÅÐн},,P,`,g$ ( efh) `xÙ+(`xÙ&(`)4`)5`)6`)7`)8`)9`,i0!M:0p ȱq L `" (~)y ~JJ* I `x|x|,,}P-X~ F }~L } `, To help you though, we've also included the manual-on-disk as found on 3TEL.05. ON SIDE ONE: File Name Blocks Modified Time File Type Created Time Eof XMODEM.SOURCE 4 29-May-90 7:59 DataFile 26-Sep-93 22:45 1536 XMt/Close Receive/Transmit J. Sending Breaks K. Quit XMODEM /// L. XMODEM STANDARD COMMAND KEYS INDEX KEYS AND SETUP A. System Help B. File Transfer Settings C. Terminal Settings D. Receive XMODEM File E. Transmit XMODEM File F. Receive ASCII File G. Transmit ASCII File H. Toggle ASCII Capture I. AborTABLE OF CONTENTS INTRODUCTION I. GENERAL INFORMATION A. Equipment Requirements B. What is XMODEM? C. What is BINARY II D. ASCII Terminal E. Booting Directly F. Installing under CATALYST or SELECTOR /// II. COMMANDMANUAL.P1vK ' '(CONTENTSwK *%INTROK  I..GENERAL.INFOK II..KEYS.SETUPK  8:20 DataFile 26-Sep-93 19:52 6144 ALERT.TEXT 4 29-May-90 8:20 DataFile 26-Sep-93 19:52 1536 T 48 29-May-90 8:17 DataFile 26-Sep-93 19:51 24064 CRC.TEXT 6 29-May-90 8:18 DataFile 26-Sep-93 19:52 2560 CONVER.TEXT 6 29-May-90 8:19 DataFile 26-Sep-93 19:52 2560 ASCIIS.TEXT 13 29-May-90 3 19:50 2560 IOERR.TEXT 4 29-May-90 8:14 DataFile 26-Sep-93 19:51 1536 GPACK.TEXT 11 29-May-90 8:15 DataFile 26-Sep-93 19:51 5120 DIALOG.TEXT 50 29-May-90 8:16 DataFile 26-Sep-93 19:51 25088 DATA.TEX:03 DataFile 26-Sep-93 19:50 8704 SAVESC.TEXT 7 29-May-90 8:05 DataFile 26-Sep-93 19:50 3072 RXMODE.TEXT 40 29-May-90 8:07 DataFile 26-Sep-93 19:50 19968 MYMACR.TEXT 6 29-May-90 8:13 DataFile 26-Sep-9RCE 4 26-Sep-93 22:37 DataFile 26-Sep-93 19:49 1071 TXMODE.TEXT 32 29-May-90 8:01 DataFile 26-Sep-93 19:49 15872 SOSERR.TEXT 7 29-May-90 8:02 DataFile 26-Sep-93 19:50 3072 SETTIN.TEXT 18 29-May-90 8AIN.TEXT 58 29-May-90 8:21 DataFile 26-Sep-93 22:46 29184 ON SIDE TWO: File Name Blocks Modified Time File Type Created Time Eof XMODEM.SOUINTRODUCTION XMODEM /// is a comprehensive telecommunications program that gives your Apple /// the ability to communicate with remote computers, access timesharing systems or tie into remote information services. But, its most important advantage over oWHAT IS XMODEM? XMODEM is an error checking telecommunications protocol. It is extremely accurate and highly coordinated. It has long been a standard for PC telecommunications. XMODEM was designed as a protocol for transmitting and receiving of whole fge and processing is recommended. EQUIPMENT REQUIREMENTS To use XMODEM /// you will need: 1. An Apple /// Computer with 128k of memory; 2. A telephone modem and cabling; 3. The Apple /// .RS232 "driver" (included in your "SOS.DRIVER" file). A second disk for data stora =".d1/manual"".d1/menu.maker"K  #I.FK  I..GENERAL.INFOvK ' 'GOTO.MANUAL ,K I.A#K  #I.B K  #I.CK  I.DK - I.Er CATALYST or SELECTOR ///. n binary format for later conversion; And, XMODEM /// features the new BINARY II option for Apple file transmission. You now can literally send and receive SOS or ProDOS files intact and ready to use! XMODEM /// may be run on diskettes or installed undeys; XMODEM /// allows you to use the XMODEM protocol, a powerful telecommunications protocol that is highly coordinated and extremely accurate; In the XMODEM receive mode, XMODEM /// allows you to both download and upload any file as an ASCII text file ir most telecommunications needs; In the ASCII terminal mode, XMODEM /// allows you to both download and upload ASCII text files of your choosing; XMODEM /// is able to use a variety of bit settings, baud rates, half or full duplex, linefeed and line delather telecommunications packages for the /// is that you can use the XMODEM telecommunications protocol with the BINARY II option for Apple Computer files. XMODEM /// has several major features: XMODEM /// can be used as an ordinary TTY ASCII terminal foiles, not as a terminal protocol itself. The idea is best illustrated by an example. Let's say you are calling your local real estate data base, and you want to obtain a set of files on a number of individuals. Usually you enter the names one at a time oWHAT IS BINARY II BINARY II is a data format for the transmission of Apple ][ or Apple /// files via the XMODEM protocol. It is an option that can be turned off or on by XMODEM ///. Binary II files are transmitted as straight binary data with special fo/ for the transmission of a file, the requests are reversed, with the host asking for you to begin transmission. At the end of transmission, press RETURN to exit. e, print it, and then re-enter the data elsewhere, you can quickly convert it for use in your programs directly! That is the power of using the XMODEM protocol. Experiment a little and you will be surprised at what you can do. If you are using XMODEM //f the line. It would not be difficult to write a simple BASIC or Pascal program, or even a /// EZ Pieces spreadsheet, to pull the data out of your downloaded text file and use it where you need it. Instead of having to download a variable length data fil 2> ADDRESS:
. | . v VALUE: Now, you know that the same information always starts at the same place - the thirteenth byte of every line - and continues to the end oare going to follow a standard format of some sort. For example, let's say your real estate data files follow this format: NAME FOUND: ^ Thirteenth byte of line v P - Send a BREAK signal | | | | Hit any key to return | |___________________________________________________| EN APPLE> E - Ascii Upload | | Z - Toggle Ascii Capture On/Off | | S - Stop File Transfer | | F - File Transfer Settings | | T - Terminal S | | Q - Quit | | R - Receive Xmodem | | W - Transmit Xmodem | | A - Ascii Capture | | / OR ?: This command displays the HELP screen, which gives a quick summ =".d1/manual"".d1/menu.maker"II.LKKK $II.F"K $II.GK $II.H/K $II.IV+K II.JXK II.KYK II..KEYS.SETUPvK ' 'GOTO.MANUAL ,K $II.AK ,$II.B K & $II.C K) $II.DK! $II.E e .RS232 driver if necessary. The interpreter path for your system will be the /SOS.INTERP file. 9) Update your CATALYST or SELECTOR /// system. XMODEM /// is now ready to use. FILE TRANSFER SETTINGS, F: This command displays the FILE TRANSFER SETTINGS screen. Once entered, you may use the Right/Left arrow keys to move to the area you want to change. The Up/Down keys are strictly for changing settings. RETURN saver SOS or ProDOS file (BINARY II ON), XMODEM /// will be able to send or receive the file ready for immediate use; XMODEM TIMEOUT represents the amount of time for XMODEM /// to wait for a response from the other computer before it retires the last operat is the Apple // and Apple /// Computer file transmission standard. It is normally used only for transmitting or receiving of Apple Computer SOS or ProDOS files, so the default is OFF. However, if enabled for the transmitting or receiving of Apple Computotocol will automatically reset for CHECKSUM error checking (but not vice-versa). The only reason that you may wish to switch to Checksum error checking is for extra speed during a transfer-Checksum is a much simpler error checking calculation; BINARY II 255 is the maximum; XMODEM ERROR CHECKING is the type of error checking you want XMODEM /// to do. Most systems use CRC checking, and that is the default, although if you have the system set for CRC and it finds the host is using CHECKSUM, the XMODEM prLUE is the amount of time the program is to wait after the transmission of a line before the next line is sent. Normally you will use this feature only for older, slower host computers. A value of "1" is the default, which results in a delay of 1 second. l for the direct entry of data on host computers that do not display a prompt themselves after line entries; PROMPT CHAR defines the prompt character to be used in the PROMPT mode. ":" is the default, but it can be any legal keyboard character; DELAY VAto any legal SOS pathname. Hit return twice to accept a new prefix$. AFTER A LINE IS SENT allows you to set up for a delay before the next line is sent or to be prompted for the next line. Normally you will use the USE DELAY option. USE PROMPT is usefu | | 1 Xmodem timeout | | 10 | |___________________________________________________________| PREFIX will display the boot-time prefix. You may change it pload only | |Prompt Char BINARY II Download only | | : Off Both | | On | |Delay Value | |After a line is sent|Xmodem Error Checking|Use pathnames in| | Use Delay Use Checksum Binary II | | Use Prompt Use CRC Neither | | U | | | | Prefix | | /DATA/XMODEM/ | | es setting, ESCAPE exits with no save: ____________________________________________________________ | | | File Transfer Settings | | ion. If XMODEM /// times out 10 times without getting a response, the XMODEM transfer is aborted. The default is 10, about 10 seconds. USE PATH IN BINARY II. The BINARY II standard and XMODEM /// allow you not only to transmit a SOS or ProDOS file- they also allow you to store the current pathname of the file for future downloads and uploads. This is an extremely useful scheme for transmission of data from one system to another, similarly setup system. However, the pathname used in the Binary II file RECEIVE XMODEM FILE, R: This command is for receiving of an XMODEM or XMODEM with BINARY II transmitted file. When this key is pressed, you will see the prompt: _______________________________________________________________ ata stream. , and is the default. It is also preferable to half-duplex because the host will show you what it received, not what you think you sent; ADD LINEFEED sets your program to add (YES) or not add (NO) linefeeds every time a RETURN character is found in the dex echos each character entered on your system back to your screen. If the host is also echoing you will see double characters displayed on your screen. In that case change your parameter to Full-Duplex. Full-Duplex is the most common transmission method changed as necessary for your modem, host computer and line conditions. FORMAT sets the bit and parity protocol. The default is eight bits, no parity, a common protocol; DUPLEX sets the style of duplex for interfacing with the host computer. Half-dupl 4800 baud 6 bits, MARK parity NO 9600 baud 6 bits, SPACE parity YES ___________________________________________________ SPEED sets the baud rate for the system you will be using and the modem you will use. The default is 300 baud, but may be 7 bits, odd parity Full 134.5 baud 7 bits, even parity Half 300 baud 7 bits, MARK parity 600 baud 7 bits, SPACE parity 1200 baud 8 bits, no parity Add 1800 baud 6 bits, odd parity Linefeed 2400 baud 6 bits, even parityTERMINAL SETTINGS, T: This command key enters the terminal setting area, with the following options: ____________________________________________________ Terminal Settings Speed Format Duplex 110 baud ame, only during uploads, only during downloads, or at all times. The default is to strip the pathname (Neither) entirely, so that files are saved under the program's defined PREFIX. off (i.e., /MY.FILE) can lead to a major problem- what if the pathname loaded into he BINARY II file does not exist in your dissimilar system! XMODEM /// allows you to determine how much of a pathname you want to receive: just the file nis dependent on the pathname you specify to XMODEM ///. For example, XMODEM /// can accept a full, downloaded pathname (i.e., /PROFILE/MY.DIRECTORY/MY.FILE, where the pathname hopefully exists) for downloading or strip the Device/Volume/Sub-Directory path Receive XModem Filename: _______________________________________________________________ Enter your pathname/filename, press RETURN and the host computer and your /// will begin coordinating the file download. If you want to save to your syst e for downloading the displayed data. The receiving of data can be toggled on/off with the Z function (see below). If you want to receive a file under your present system prefix, just enter the filename. Files saved will be as straight Asci _____________________________________________________ Ascii Capture Filename: ____________________________________________________________ Enter the pathname/filename, press RETURN and XMODEM /// will immediately open a filRECEIVE ASCII FILE, A: This command key for the receiving of an ASCII text file from a system that does not offer XMODEM capabilities. When this command key is entered, you are prompted for the name of the file you wish to receive: _______nd your /// will begin coordinating the upload. If you want to use a file under your present system prefix, just enter the filename. If you are uploading a BINARY II file, the pathname to your file will also be uploaded to the BINARY II file.  r ProDOS file: ____________________________________________________________ Transmit Xmodem Filename: ____________________________________________________________ Enter your pathname/filename, press RETURN, and the host computer aTRANSMIT XMODEM FILE, H: This command is for the transmitting of a XMODEM or XMODEM with BINARY II file. When this command key is entered, you are prompted for then name of the file you wish to transmit. You can literally transmit any SOS oem prefix, just enter the filename. If you are downloading a BINARY II file, remember to set the SAVE PATHNAME feature for the correct pathname save. If a file already exists, you will be prompted to destroy the file or enter a new pathname. i text files, easy to load and modify with your word processor. If a file already exists, you will be prompted to destroy the file or save to another filename. When you first open a file for ASCII Capture, you can also "capture" the entire screen by pressing A keys and then entering the capture file pathname. When the file opens, it will capture the present text screen. You can also perform a similar command for the Z command (see below). When that file is open for dataXMODEM /// COMMAND KEYS: XMODEM /// also has the four standard command keys for the XMODEM protocol that can be used during a XMODEM transmission or receive session. These keys are normally NOT used by the operator, and are included only to make XMODEM /data capture, the cursor will begin to blink. ata he wants to download. When toggling the ASCII Capture feature on and off, you may, at any time, toggle to save the ENTIRE presently displayed screen by pressing the Z keys at the same time. When you have toggle the program ON for TOGGLE ASCII CAPTURE, Z: While in the ASCII capture ( A) mode, this command key allows you to toggle the data capture on and off without closing the ASCII Capture file completely. Very useful for the user to select at will the dbegin uploading the ascii file data. If you wish to transmit a file existing under the current pathname, just enter the filename. ________________________________________________ Transmit Ascii Filename: ____________________________________________________________ Enter the pathname/filename of the file, press RETURN and XMODEM /// will immediately TRANSMIT ASCII FILE, E: This command key allows you to transmit an ascii text file to a system that does not offer XMODEM capabilities. When the key is entered, you will be prompted for the name of the file you wish to upload: ____________ receive, the cursor will blink. // a standardised XMODEM terminal. CONTROL-X This command key will abort and cancel an XMODEM receive or transmission. Use only if your system appears to 'lock-up' and you have no other options for aborting. CONTROL-D This command key will instruct th