IMD 1.18: 15/11/2012 17:43:03 tdospc   éŽWang 3.0pÐý  ***44 SYSTEM FILES MISSING***45 DISK READ ERROR***46 DEFECTIVE START DISKBIOS SYSMSDOS SYS*S¹*‹Š& Í’¾‹ Ðà²Í‘öÄ€u¾>é6¾¡ö&‹Ø¡±Óè²Í‘öÄ€t×¾uècté裡‹£�¾€èOtéñ‹E£�艸@ŽÀ&¡§2Û=xtþÃ=€t ±ÓèþÀ ŠØ¾*3ÿ¹kúüó¥¡�-&±Óè‹�Zê@ü‹¿QVW¹ ó¦_^YtƒÇ âU‹MÑéA�ÃPSQ‹Â3Ò»÷ãÑè‹Ø‹—s±Óê�âÿY[XÃQR‹ÂŠ 2ÿèÑÿ�úÿt +ËrC@;Âuëì3É[X+ÁQR“-Š 2í÷á“Ðà‹6‹²Í‘¾>öÄ€uëŠø2Û‹ZY Éu§Ã¾Wë¾ Í‹»Í—ê þÿ5ýÿÿðÿðÿ€   À à @`€ ÿÏà! #ðÿÿo'€) +À-à/1 3@5ðÿ7€9 ;Àÿï?A C@E`G€I KÀMàÿÿ/SðÿÿoW€Yðÿ[ðÿ]à_a c@e`gðÿi kðÿÿïoqðÿÿÿÿÿÿÿÿ�y {À}à� ƒ@…`‡€ÿ¯‹À�à� ‘ “@ •` —€ ™  ›À �à Ÿðÿÿÿÿ£ðÿÿo §€ ©  «À ­à ¯ ± ³@ µ` ·€ ¹  »À ½à ÿ Á Ã@ Å` Ç€ ÿÿÿËðÿÍðÿÏ Ñ Ó@ ÿo ×€ Ù  ÛÀ Ýà ßá ã@ÿoç€é ëÀíàïñ ó@õ`÷€ù ûÀÿïÿ!ÿÿÿJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJýÿÿðÿðÿ€   À à @`€ ÿÏà! #ðÿÿo'€) +À-à/1 3@5ðÿ7€9 ;Àÿï?A C@E`G€I KÀMàÿÿ/SðÿÿoW€Yðÿ[ðÿ]à_a c@e`gðÿi kðÿÿïoqðÿÿÿÿÿÿÿÿ�y {À}à� ƒ@…`‡€ÿ¯‹À�à� ‘ “@ •` —€ ™  ›À �à Ÿðÿÿÿÿ£ðÿÿo §€ ©  «À ­à ¯ ± ³@ µ` ·€ ¹  »À ½à ÿ Á Ã@ Å` Ç€ ÿÿÿËðÿÍðÿÏ Ñ Ó@ ÿo ×€ Ù  ÛÀ Ýà ßá ã@ÿoç€é ëÀíàïñ ó@õ`÷€ù ûÀÿïÿ!ÿÿÿJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ-READ ME- -TPCUPD-001 €BOOTARC A €RBOOTFILEA !BOOTFILECOM $BOOTROM A %ACFGTPC COM 6CFGTPC MSG =€DCHANGE COM O€CHECKSUMA Q€ CHECKSUMCMD TCMDTOCOMA UCMDTOCOMCMD ZCMPAT210DOC \/CMPAT310DOC hDATETIMECOM l€FCN5PRN A mFCN5PRN COM r€LANTPC DRV sLOCAL A t€LOCAL COM u€MASTER COM vPCDOS210CLI w€EPCDOS310CLI ‰[PRINT COM  €PRINTER COM ¡REASSIGNCOM ¢RESET COM ¤€SWEEP EXE ¥gTPCLOD DOC ¿(TPCLOD GEN É€TPCLOD PAR Ê€TPCLOD ROM ÌTURBOARCA ΀TURBOPC1COM Õ>TURBOPC2COM å€_TURBOPC3COM ý€TURBOPRNA ÿ€TURBOPRNCOM €TDOSPC («��öööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö  öööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö INSTALLATION NOTES FOR TurboDOS/PC (3/25/85) Welcome to a new inovative world of PC networking support provided by the creators of the TurboDOS operating system, Software 2000. In the distribution of this new product, Intercontinental Micro Systems has attemped to make your configuration simpler with the use of our utility called "CFGTPC" (Configuration Utility for TurboDOS/PC). This utility resides on your distribution diskette that is DOS (PC-DOS or MS-DOS) compatable. First, please read your TurboDOS/PC manual for an understanding of what this product is capable of providing for you. Then you may proceed with the installation of the TurboDOS/PC network driver for your ICM LAN products. TurboPC2 (or TurboPC1 for DOS version 1 only) will default looking for the network driver in the file "TURBOPC.DRV" on the default drive. ICM distributes the object code of the LAN product driver in the file "LANTPC.DRV". Before using the configuration utility, copy our driver object code into the default file name with the DOS command: COPY LANTPC.DRV TURBOPC.DRV Then you may run the configuration utility with the DOS command: CFGTPC Note that the configuration utility will provide help when a "?" is entered into the main options menu or the sub-menus. OM.EXE.BATVBAPW (Šàè:Äté‡$:ÄtŠàèï:Äu €>&tþ&Ãö!ÿtWV»€&ŠÐâ2öÚ&‹w&‹ FFŠ&#Š>!&:$u&&:Du &:|u&Š|&Šd&ŠDˆ>!è¶Æ$^ÃÆâÐÆ!^ë�þ&»&×<u€>&tþ&ée&Š$2ÛƒÆ&:v&ŠþÃÆþÌuïéË*Ã&Š$*ãþÄF&Š4Šî€æ€åðÆ'Æ."ítÆ' F&ŠF&‹€þu (é7ÿ"Òuëd�P‰+ #"ÂÆ%¶@µ€±?„Öuþ%Šà"åÐì"Á Ä"Ét Ðí€Í€ÐéÐîëߊèXŠ%²ÒâSŠÍ2íÙ&Š[2öÚPŠÄöá‹+€þuÀØX2䨀þu Ø&Š'C&Šë�&Š´€þt ´€þt¸#è™Æ$ÊȀá´"ÉtÒıÒè< t<t< t < uþ0&"ˆ&$ë4�&"ë-�€ôÿ &"ë#�0&"öÄt"&"t ³¹è¾ë �³¹è³Š&"ˆ&#Ð.# InterContinental Micro Systems, Inc. TurboDOS/PC Version 1.08 Update Information July 12, 1986 Written by: John E. Lauber  OVERVIEW  Thió  ió  thå  distributioî oæ  TurboDOS/Pà versioî  1.08®  Thå � existinç  Softwarå  200°  Guidå stilì remainó currenô  witè  thió � version but I feel a few points should be noted by this document.  FEATURES  TurboDOS/Pà  versioî   1.0¸  representó  thå   lonç   anä   harä � developemenô patè beguî bù thió producô foò truå filå sharinç anä � recorä lockinç capabilities® Alì thå IBÍ documenteä filå sharinç � DOÓ functionó havå beeî placeä intï 1.08¬  anä testeä tï thå besô � of our knowledge. Previouó  bugó concerninç recorä lockó werå noô thaô bad¬  iæ yoõ � consideò  thaô DOÓ 3.1° haä similaò recorä locë bugó  also®  Thå � latest IBM DOS version 3.20 is a better effort.  INSTALLATION  TurboDOS/Pà versioî 1.0¸ MUSÔ BÅ USEÄ witè TurboDOÓ versioî 1.43® � Therå   arå nï exceptionó tï thió rule®  ICÍ wilì releaså TurboDOÓ � 1.4³  aô  thå samå timå T/Pà 1.0¸ ió released¬  sï pleaså  updatå � your file servers at the same time. Thå supporô foò TurboDOS/Pà clientó bù youò filå serveò haó  beeî � separateä  intï it'ó owî modulå "TPCSUP"®  Thió musô bå includeä � intï  alì  operatinç systemó witè disë  peripheraló  attacheä  tï � them®  Thió  includeó disë deviceó thaô maù bå attacheä tï slavå � operating systems also. Supplieä  oî  youò distributioî disë ió á ne÷  patcè  documenô  É � developeä  foò  "COMMAND.COM¢  undeò DOÓ 3.1° (DOÓ 3.2°  waó  noô � availablå aô thå time)® Thió ió similaò tï thå patcè É developeä � foò  DOÓ 2.1° anä dramaticallù increaseó youò prograí  loaä  timå � viá  thå  network®  Consulô  thå filå  "CMPAT310.DOC¢  foò  morå � details. John E. Lauber #title "Download boot ROM for PC-DOS and TurboDOS/PC" #subttl "Copyright 1986, Software 2000, Inc." ; Version: 07-Jan-86 module "BOOTROM" ; BOOTROM.A is a sample bootstrap ROM that illustrates one ; method of implementing network downloading of MS-DOS or ; PC-DOS and TurboDOS/PC into a diskless workstation. This ; sample code is intended to be stored in an auxilliary ROM ; (supported by most popular PC networking boards) and to ; work in conjunction with the ROM BIOS of an IBM PC or ; compatible work-alike machine. Modifications will most ; likely be required for workstations which differ from the ; IBM PC in any significant way. ; Here is the basic strategy used to implement downloading: ; ; 1. A normal PC-DOS system diskette is prepared. It must ; contain a boot sector, the system files necessary to ; boot PC-DOS (for IBM PC-DOS: IBMBIO.COM, IBMDOS.COM, ; and COMMAND.COM) and the files necessary to load ; TurboDOS/PC (TURBOPC.COM and TURBOPC.DRV). ; ; 2. The system diskette is converted to a download boot ; file (using the utility program BOOTFILE.COM) and ; stored on the file server's disk where the boot ROM ; expects to find it. ; ; 3. The boot ROM is given control during the ROM BIOS ; initialization phase, and alters INT 0x18 (ROM BASIC ; entrypoint) and/or INT 0x19 (floppy disk bootstrap ; entrypoint). When the ROM BIOS has completed its ; initialization phase, it executes INT 0x19 (if a ; diskette is available) or INT 0x18 (otherwise). Since ; these interrupt vectors have been altered, the boot ; ROM will get control at this point. ; ; 4. The boot ROM sends a network request to open the ; download boot file. It then alters INT 0x13 (the ; physical disk I/O entrypoint of the ROM BIOS) to ; point to a disk I/O routine in the boot ROM which ; converts physical disk I/O requests into corresponding ; network requests accessing the download boot file. ; ; 5. Using the altered INT 0x13, the boot ROM reads the ; normal PC-DOS boot sector into memory at 0000:7C00 and ; jumps to it (just as the ROM BIOS would have done). ; ; 6. Loading of PC-DOS now proceeds in the normal fashion ; except that all physical disk I/O operations are being ; redirected over the network. #page ; To prepare a binary file for ROM programming, assemble ; using TASM, link using TLINK, manually strip off .CMD ; header (first 128 bytes) and then manually patch checksum ; byte so that all bytes of the ROM sum to zero (modulo ; 256) as required by the IBM ROM BIOS. tlink "B" ;omit base page ; The sample boot ROM code which follows is divided into ; two parts. Part 1 implements the basic download stragety ; described above, and is dependent upon the IBM-compatible ; ROM BIOS but independent of the type of network hardware. ; Part 2 contains a network circuit driver appropriate to ; the particular type of networking hardware being used. ; Part 1 follows: ; The boot ROM needs access to an area of RAM that is not ; used by PC-DOS. Here we are using the top half of the ; interrupt vector area (0000:0200 to 0000:03FF). ramseg == 0x20 ;RAM segment used by ROM ramlen == 0x200 ;RAM length (bytes) romlen == 8192 ;length of boot ROM (bytes) ; define bits in TurboDOS message format code "msgfmt" frstmb == 1<<0 ;first message in session lastmb == 1<<1 ;last message in session morfol == 1<<2 ;more follows reqfcb == 1<<3 ;request contains fcb reqdat == 1<<4 ;request contains data repf  cb == 1<<5 ;reply contains fcb repdat == 1<<6 ;reply contains data repmsg == 1<<7 ;this is a reply message ; define flag bits in TurboDOS message user field "msgcuf" tfcn == 1<<5 ;T-function priv == 1<<6 ;privileged user logon == 1<<7 ;logged-on loc Data# ;data segment (RAM) xint13: res word 2 ;original INT 0x13 save reccnt: res word 1 ;records to read counter dskfmt == word . ;download file disk format: sides: res byte 1 ;number of sides (1 or 2) sects: res byte 1 ;number of sectors (8 or 9) ; The following structure defines the format of a TurboDOS ; network message. msgbuf: ;network message buffer msglen: res byte 1 ;length msgdid: res word 1 ;destination address msgpid: res byte 1 ;process id msgsid: res word 1 ;source address msgorg: res word 1 ;originator address res byte 1 ;originator process res byte 1 ;forwarding level msgfmt: res byte 1 ;message format code msgl0 == .-msgbuf ;length (header-only) msga: res byte 1 ;AL-reg msgc: res byte 1 ;CL-reg res byte 1 ;CH-reg res byte 1 ;DL-reg res byte 1 ;DH-reg res byte 1 ;BL-reg res byte 1 ;BH-reg msgcuf: res byte 1 ;current user + flags msgl1 == .-msgbuf ;length (header+regs) msgfcb: res byte 36 ;fcb msgcmp: res byte 1 ;compat flags msgl2 == .-msgbuf ;length (header+regs+fcb) msgdat: res byte 128 ;data record msgl3 == .-msgbuf ;length (hdr+regs+fcb+dat) loc Code# ;code segment (ROM) ; ROM Initialization Procedure ; ROM BIOS validates the "signature" and ROM checksum, then ; does far-call to offset 0003 to allow ROM to initialize. ; NOTE: must add checksum byte to end of ROM before burning ; so all bytes in ROM sum to zero modulo 256. start: ;start of ROM word 0xAA55 ;signature for ROM BIOS byte romlen/512 ;ROM size (512-byte segmts) jmp init ;ROM initialization entry signon: byte "TurboDOS/PC Network Boot ROM", 0x0D, 0x0A byte "Copyright 1986, Software 2000, Inc." byte 0x0D, 0x0A, 0 filnam: byte "BOOTFILEDSK" ; ROM init routine replaces the ROM BASIC and/or disk boot ; interrupts so that they point to our net boot routine. int18 == 1 ;replace INT 0x18 (ROM BASIC) int19 == 0 ;replace INT 0x19 (disk boot) init: push ax ;save registers push dx push ds xor ax,ax ;ds -> interrupt page mov ds,ax #if int19 mov 0x19*4,word &boot ;INT 0x19 (disk boot) mov 0x19*4+2,cs ;-> new boot routine #endif #if int18 mov 0x18*4,word &boot ;INT 0x18 (ROM BASIC) mov 0x18*4+2,cs ;-> new boot routine #endif pop ds ;restore registers pop dx pop ax retf ;end of initialization ; Network bootstrap procedure ; The net boot routine gets control when the ROM BIOS is ; all done with its tests and initialization. It opens ; a remote download file containing a disk-image of a ; bootable MS-DOS disk. It replaces the BIOS disk I/O ; interrupt so it points to a routine that simulates ; disk I/O by accessing the download file over the net. ; It then reads the MS-DOS boot sector into RAM and ; transfers control to it. Booting proceeds normally ; except that disk I/O is done over the net. boot: mov ax,&ramseg ;get RAM segment base mov ds,ax ;ds -> RAM mov ss,ax ;ss -> RAM mov sp,=ramlen ;sp -> top of RAM segment sti ;interrupts OK now mov bx,&signon ;display sign-on message call disply call netnit ;initialize network driver ; set up network message to open BOOTFILE.DSK file mov msglen,=msgl2 ;set up message length mov cx,=msgl2-1 ;zero header/regs/fcb mov di,&msgbuf+1 push ds  pop es ;es -> RAM segment xor al,al cld rep stos al mov msgc,=15 ;msgc = open function mov msgfmt,=(frstmb|reqfcb|repfcb) mov cx,=11 ;move filename to msgfcb mov si,&filnam mov di,&msgfcb+1 push cs pop ds ;ds -> ROM segment cld rep movs byte push es pop ds ;ds -> RAM segment or msgfcb+6,=byte 1<<7 ;set attrib F6 (R/O) mov al,netusr ;get user number or al,=(priv|logon) ;privileged+logon flags mov msgcuf,al ;to message mov al,netcmp ;get compatibility flags mov msgcmp,al ;to message mov ax,netsid ;get source address mov msgsid,ax ;to message mov msgorg,ax mov al,netdsk ;get disk drive inc al ;adjust to 1-based mov msgfcb,al ;to message mov ax,netdid ;get dest net address mov msgdid,ax ;to message ; send message to open BOOTFILE.DSK file and get reply msg call sndrcv ;send message/receive reply jz __opn ;if open OK, continue mov bx,&__oer ;display error message jmp halt ;diagnose and halt __oer: byte "Can't open download file",0 __  opn: ; Replace disk I/O interrupt (INT 0x13) so that diskette ; read requests are converted to reads of the remote ; download file. (Save original contents of INT 0x13 in ; a canonical location so they may be restored later by a ; transient program if local disk I/O is required.) xor ax,ax ;es -> interrupt page mov es,ax es mov ax,0x13*4 ;save original INT 0x13 mov xint13,ax es mov ax,0x13*4+2 mov xint13+2,ax es mov 0x13*4,word &dskio ;INT 0x13 (disk I/O) es mov 0x13*4+2,cs ;-> new dskio routine ; Read MS-DOS first FAT sector into memory at 0000:7C00 ; and analyze disk format code (first byte of FAT) mov dskfmt,=0x0801 ;assume initial disk format push ds ;save ds mov ax,=0x0201 ;ah = read, al = 1 sector mov cx,=0x0002 ;ch = cyl 0, cl = sector 2 xor dx,dx ;dh = head 0, dl = drive 0 mov es,dx ;es:bx = DMA address mov bx,=0x7C00 int 0x13 ;read FAT sector pop ds ;restore ds jnc __fat ;successful mov bx,&__fer ;display error message jmp halt ;diagnose and halt __fer: byte "Can't read FAT sector",0 __tbl: ;disk format table byte 2,8 ;fmtcode=FF byte 1,8 ;fmtcode=FE byte 2,9 ;fmtcode=FD byte 1,9 ;fmtcode=FC __fat: es mov al,[bx] ;get disk format code not al ;complement cbw ;convert to word add ax,ax ;times 2 mov bx,ax ;index to bx cs mov ax,__tbl[bx] ;get disk format info mov dskfmt,ax ;save disk format info ; Read MS-DOS boot sector into RAM at 0000:7C00 and ; transfer control to it. Booting should now proceed ; as usual. mov ax,=0x0201 ;ah = read, al = 1 sector mov cx,=0x0001 ;ch = cyl 0, cl = sector 1 xor dx,dx ;dh = head 0, dl = drive 0 mov es,dx ;es:bx = DMA address mov bx,=0x7C00 int 0x13 ;read boot sector jnc __boot ;successful mov bx,&__ber ;display error message jmp halt ;diagnose and halt __ber: byte "Can't read boot sector",0 __boot: jmpf 0x7C00,0 ;transfer to boot sector ; Physical Disk I/O Procedure ; This routine gets control via INT 0x13 in place of the ; normal BIOS disk I/O driver. It simulates disk I/O ; by doing appropriate random reads of the download file. ; Only reset/status/read are supported. ; ; On entry: ; AH = function (0=reset,1=stat,2=rd,3=wrt,4=vfy,5=fmt) ; AL = number of sectors ; CH = cylinder ; CL = sector ; DH = head ; DL = drive (bit 7 -> hard disk) ; ES:BX = DMA address ; On return: ; Carry-flag set if error ; AH = disk status (zero if successful) ; AL = number of sectors actually read dskio: sti ;re-enable interrupts test ah,ah ;reset function? jz reset ;yes, process dec ah ;status function? jz status ;yes, process dec ah ;read function? jnz inval ;no, invalid function test dl,dl ;read of floppy drive A? jz read ;yes, process inval: mov ah,=0xff ;else, invalid function stc ;return with CY set dskxit: retf 2 ;like IRET but don't POPF status: xor al,al ;return successful status reset: clc ;return with CY clear jmps dskxit read: push ds ;save ds push bp ;save registers push di push si push es push dx push cx push bx push ax push ax ;save ax mov ax,&ramseg ;get RAM segment base mov ds,ax ;ds -> RAM pop ax ;restore ax mov di,bx ;es:di -> DMA address ; number of records to read = #sectors * 4 ; first record to read = ; ((cylinder * sides + head) * sects + sector - 1) * 4 add ax,ax add ax,ax ;#sectors * 4 mov reccnt,ax ;save #records to read mov al,ch ;cylinder imul sides ;* sides add al,dh ;+ head imul sects ;* sects xor ch,ch add ax,cx ;+ sector dec ax ;- 1 add ax,ax add ax,ax ;* 4 mov msgfcb+33,ax ;store fcb random record readl: ; set up network message to read a random record push es ;save DMA address push di mov msglen,=msgl2 ;set up message length mov cx,=msgl1-1 ;zero header/regs mov di,&msgbuf+1 push ds pop es ;es -> RAM segment xor al,al cld rep stos al mov msgc,=33 ;msgc = read random funct mov msgfmt,=(reqfcb|repfcb|repdat) mov al,netusr ;get user number  or al,=(priv|logon) ;privileged+logon flags mov msgcuf,al ;to message mov al,netcmp ;get compatibility flags mov msgcmp,al ;to message mov ax,netsid ;get source address mov msgsid,ax ;to message mov msgorg,ax mov al,netdsk ;get disk drive inc al ;adjust to 1-based mov msgfcb,al ;to message mov ax,netdid ;get dest net address mov msgdid,ax ;to message ; send message to read a random record, and get reply msg call sndrcv ;send message/receive reply jz __rrr ;if read OK, co  ntinue mov bx,&__rer ;display error message jmp halt ;diagnose and halt __rer: byte "Can't read download file",0 __rrr: pop di ;restore DMA address pop es mov cx,=128 ;move record to DMA address mov si,&msgdat cld rep movs byte inc word msgfcb+33 ;increment fcb rand rec num dec reccnt ;decrement record count jz readx ;exhausted jmp readl ;not exhausted, read more readx: pop ax ;restore registers xor ah,ah ;return successful status clc ;with no CY flag pop bx pop cx pop dx pop es pop si pop di pop bp pop ds jmp dskxit ;exit ; send message in msgbuf over the network ; receive reply message into msgbuf ; check for disk error response and process sndrcv: call netsnd ;send message jc __nse ;if network error, diagnose mov msglen,=msgl3 ;max message length call netrcv ;receive reply jc __nre ;if network error, diagnose mov al,msglen ;get message length cmp al,=20 ;disk error message? jz __err ;yes, process cmp al,=11 ;aborted message? jz __abt ;yes, process mov al,msga ;else, get return code test al,al ;was operation successful? ret ;done __err: mov msglen,=msgl0+1 ;message length (header+1) mov al,msgfcb ;setup process id mov msgpid,al mov ax,msgsid ;exchange source/dest addr xchg ax,msgdid mov msgsid,ax mov msgfmt,=repmsg ;message format code mov msga,=0xff ;abort jmp sndrcv ;send abort message __abt: mov bx,&__abm ;display error message jmp halt ;diagnose and halt __nse: mov bx,&__nsm ;display error message jmp halt ;diagnose and halt __nre: mov bx,&__nrm ;display error message jmp halt ;diagnose and halt __nsm: byte "Network send error",0 __nrm: byte "Network receive error",0 __abm: byte "Physical disk error " byte "reported by file server",0 ; All errors proceed here to halt with message string ; pointer in cs:bx. halt: call disply ;display diagnostic message mov bx,&__msg call disply ;display abort/halt message sti ;enable interrupts jmps . ;halt __msg: byte 0x0D,0x0A byte "Download aborted, processor halted ",7,0 ; display a null-terminated string ; cs:bx -> string disply: cs mov al,[bx] ;get byte from string inc bx test al,al ;null terminator? jz __x ;yes, done push bx ;save bx mov ah,=14 ;teletype output mode mov bx,=7 ;bh = page, bl = color int 0x10 ;display character pop bx ;restore bx jmps disply ;continue __x: ret ;done #page ; Part 2 contains a network circuit driver appropriate to ; the particular type of networking hardware being used. ; Part 2 follows: BUFSEG == 0xE000 ;TRANSMIT/RECEIVE BUFFER SEGMENT ; IOBASE == 0x0200 ;I/O PORT ADDRESS BASE ; INTMSK == IOBASE+0 ;COM 9026 INTERRUPT MASK REGISTER STATUS == IOBASE+0 ;COM 9026 STATUS REGISTER COMAND == IOBASE+1 ;COM 9026 COMMAND REGISTER ; DISXMT == 1 ;DISABLE TRANSMITTER COMMAND DISRCV == 2 ;DISABLE RECEIVER COMMAND ENAXMT == 3 ;ENABLE TRANSMITTER COMMAND ENARCV == 4 ;ENABLE RECEIVER COMMAND DEFCON == 5 ;DEFINE CONFIGURATION COMMAND CLRFLG == 6 ;CLEAR FLAGS COMMAND ; TA == 1<<0 ;TRANSMITTER AVAILABLE BIT TMA == 1<<1 ;TRANSMIT MESSAGE ACKNOWLEDGED BIT RECON == 1<<2 ;RECONFIGURATION BIT TST == 1<<3 ;TEST MODE BIT POR == 1<<4 ;POWER ON RESET BIT ETS1 == 1<<5 ;EXTENDED TIMEOUT STATUS 1 BIT ETS2 == 1<<6 ;EXTENDED TIMEOUT STATUS 2 BIT RI == 1<<7 ;RECEIVER INHIBITED BIT loc Data# ;data segment (RAM) netsid: res word 1 ;source net address netdid: res word 1 ;destination net address netdsk: res byte 1 ;disk drive (base 0) netusr: res byte 1 ;user number netcmp: res byte 1 ;compatibility flags loc Code# ;code segment (ROM) NETNFO: WORD 0x0201 ;SOURCE NET ADDRESS WORD 0x0202 ;DESTINATION NET ADDRESS BYTE 1 ;DISK DRIVE (BASE 0) BYTE 0 ;USER NUMBER BYTE 0xB8 ;COMPATABILITY FLAGS ; NETNFL == .-NETNFO ;NETWORK INFO LENGTH ; Network initialization procedure. ; Perform any needed network initialization, and set up the ; network information variables in the RAM segment (above). netnit: MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=DISXMT ;GET DISABLE TRANSMITTER COMMAND OUT DX,AL ;DISABLE TRANSMITTER MOV AL,=DISRCV ;GET DISABLE RECEIVER COMMAND OUT DX,AL ;DISABLE RECEIVER MOV AL,=DEFCON ;GET CONFIGURATION COMMAND OUT DX,AL ;DEFINE CONFIGURAION MOV AL,=CLRFLG|0x18 ;GET CLEAR FLAGS COMMAND OUT DX,AL ;CLEAR POR AND RECON STATUS FLAGS MOV DX,=INTMSK ;GET INTERRUPT MASK REGISTER XOR AL,AL ;GET INTERRUPT MASK OUT DX,AL ;DISABLE ALL INTERRUPTS PUSH DS ;SAVE DS-REG MOV SI,&NE  TNFO ;GET NETWORK INFORMATION OFFSET MOV DI,&netsid ;GET NETWORK INFORMATION OFFSET MOV CX,=NETNFL ;GET NETWORK INFORMATION LENGTH PUSH DS ;RAM SEGMENT TO TOP OF STACK POP ES ;RAM SEGMENT TO ES-REG PUSH CS ;ROM SEGMENT TO TOP OF STACK POP DS ;ROM SEGMENT TO DS-REG CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;COPY NETWORK INFORMATION INTO RAM POP DS ;RESTORE DS-REG RET ;DONE ; Network receive-message procedure. ; Receive a network message into "msgbuf". The maximum ; permissable message length has been passed in "msglen". ; In case of an unrecoverable network error, return with ; the carry-flag set. netrcv: MOV DI,&msgbuf ;GET MESSAGE BUFFER ADDRESS MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=ENARCV ;GET ENABLE RECEIVER COMMAND OUT DX,AL ;ENABLE RECEIVER TO BUFFER 0 MOV DX,=STATUS ;GET STATUS REGISTER __WTL: IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TST ;TEST MODE BIT SET? JNZ __ERR ;IF SO, CONTINUE TEST AL,=RI ;RECEIVER INHIBITED BIT SET? JZ __WTL ;IF NOT, CONTINUE PUSH DS ;ELSE, SAVE DS-REG PUSH DS ;RAM SEGMENT TO TOP OF STACK POP ES ;RAM SEGMENT TO ES-REG MOV AX,=BUFSEG ;GET BUFFER SEGMENT MOV DS,AX ;BUFFER SEGMENT TO DS-REG MOV SI,&0 ;GET RECEIVE BUFFER 0 MOV AL,2[SI] ;GET RECEIVE BUFFER COUNT MOV CL,AL ;BUFFER COUNT TO CL-REG XOR AL,AL MOV CH,AL ;MAKE BUFFER COUNT DOUBLE LENGTH ADD SI,CX ;CALC NETWORK MESSAGE ADDRESS SUB AL,CL ;CALC ACTUAL MESSAGE LENGTH MOV CL,AL ;ACTUAL MESSAGE LENGTH TO CX-REG ES MOV AL,[DI] ;GET MAXIMUM MESSAGE LENGTH CMP AL,CL ;MAXIMUM MESSAGE LENGTH EXCEEDED? JNC __MLNE ;IF NOT, CONTINUE MOV CL,AL ;ELSE, TRUNCATE MESSAGE LENGTH __MLNE: CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;MOVE MESSAGE FROM RECEIVE BUFFER POP DS ;RESTORE DS-REG CLC ;CLEAR CARRY FLAG RET ;DONE __ERR: STC ;SET CARRY FLAG RET ;DONE ; Network send-message procedure. ; Send a network message from "msgbuf". The actual message ; length has been passed in "msglen". In case of an unre- ; coverable network error, return with the carry-flag set. netsnd: MOV SI,&msgbuf ;GET MESSAGE BUFFER ADDRESS MOV AL,[SI] ;GET MESSAGE LENGTH TEST AL,AL ;MESSAGE LENGTH=0? JZ __X ;IF SO, CONTINUE MOV DX,=STATUS ;ELSE, GET STATUS REGISTER IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TST ;TEST MODE BIT SET? JNZ __ERR2 ;IF SO, CONTINUE MOV AX,=BUFSEG ;ELSE, GET BUFFER SEGMENT MOV ES,AX ;SET ES-REG MOV DI,&0x0200 ;GET TRANSMIT BUFFER MOV AL,1[SI] ;GET MESSAGE DESTINATION ID ES MOV 1[DI],AL ;SET DESTINATION ID XOR AL,AL MOV CH,AL SUB AL,0[SI] ;CALC TRANSMIT BUFFER COUNT ES MOV 2[DI],AL ;SET TRANSMIT BUFFER COUNT MOV CL,AL ;TRANSMIT BUFFER COUNT TO C-REG ADD DI,CX ;CALC MESSAGE BUFFER ADDRESS MOV CL,0[SI] ;GET ACTUAL MESSAGE BUFFER LENGTH CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;MOVE MESSAGE INTO TRANSMIT BUFFER MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=ENAXMT|1<<3 ;GET ENABLE COMMAND OUT DX,AL ;ENABLE TRANSMITTER MOV CX,=0 ;INITIALIZE LOOP COUNTER MOV DX,=STATUS ;GET STATUS REGISTER __WTL: IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TA ;TRANSMITTER AVAILABLE BIT SET? JNZ __TABS ;IF SO, CONTINUE LOOP __WTL ;ELSE, CONTINUE JMPS __ERR1 ;CONTINUE __TABS: TEST AL,=TMA ;MESSAGE ACKNOWLEDGED BIT SET? JZ __ERR2 ;IF NOT, CONTINUE CLC ;ELSE, CLEAR CARRY FLAG RET ;DONE __ERR1: MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=DISXMT ;GET DISABLE TRANSMITTER COMMAND OUT DX,AL ;DISABLE TRANSMITTER __ERR2: STC ;SET CARRY FLAG __X: RET ;DONE ; LOC start+(romlen-1)  ;LOCATE TO LAST BYTE ; CKSUM: BYTE 0 ;CHECKSUM BYTE end ;end of module #title "Utility to convert PC-DOS disk to download boot file" #subttl "Copyright 1986, Software 2000, Inc." ; Version: 07-Jan-86 module "BOOTFILE" ; BOOTFILE.COM is a PC-DOS transient program that converts ; a PC-DOS system disk into a disk-image file that can be ; subsequently accessed by a download boot ROM (BOOTROM.A) ; to implement network downloading of PC-DOS + TurboDOS/PC. ; To utilize this program, first format a PC-DOS system ; disk and copy to it any files that will be required f  or ; the downloading process (e.g. TURBOPC.COM, TURBOPC.DRV). ; Then execute this utility to copy the system disk to a ; download file as follows: ; ; A> BOOTFILE B: C:BOOTFILE.DSK ; | | ; source disk----------+ | ; destination file----------------+ ; ; The download file must be placed on the file-server's ; disk where the boot ROM expects to find it. ; To create the BOOTFILE.COM utility under 8086 TurboDOS, ; perform the following steps: ; ; 0A} TASM BOOTFILE ; 0A} TLINK BOOTFILE.CMD ; 0A} CMDTOCOM BOOTFILE ; WARNING: This program makes direct calls on the ROM BIOS ; (via INT 0x13) to read physical sectors from the source ; system disk. It will not work on machines which do not ; implement a ROM BIOS that is compatible with the IBM PC ; (at least insofar as INT 0x13 is concerned). tlink "8" ;8080 model - use CMDTOCOM tfcb == 0x005C ;MSDOS default FCB loc Data# ;data segment fmttbl: ;nsides/nsects table byte 2,8 ;fmtcode=FF byte 1,8 ;fmtcode=FE byte 2,9 ;fmtcode=FD byte 1,9 ;fmtcode=FC msgtbl: ;msg table by format word &fmtff ;fmtcode=FF word &fmtfe ;fmtcode=FE word &fmtfd ;fmtcode=FD word &fmtfc ;fmtcode=FC ; format messages fmtff: byte "2 sides, 8 sectors $" fmtfe: byte "1 side, 8 sectors $" fmtfd: byte "2 sides, 9 sectors $" fmtfc: byte "1 side, 9 sectors $" ; error messages crlfbl: byte 0x0D, 0x0A, 0x07, "$" errus: byte "Usage: DOWNLOAD d: fn",0x0D,0x0A byte " d: is source drive",0x0D,0x0A byte " fn is destination filename$" errsd: byte "Invalid source drive$" errdd: byte "Invalid destination drive$" errdf: byte "Can't create destination file$" errrs: byte "Error reading source disk$" errwd: byte "Error writing destination file$" errsf: byte "Invalid format code on source disk$" align bufseg: res word 1 ;track buffer segment nsides: res byte 1 ;number of tracks/cylinder nsects: res byte 1 ;number of sectors/track srcdrv: res byte 1 ;input drive (A=0) errcnt: res byte 1 ;error counter loc Code# ;code segment start: call ckparm ;check command parameters call bufadr ;calc track buffer address call ckform ;check source disk format call create ;create destination file xor ch,ch ;ch = cylinder __cyl: xor dh,dh ;dh = head __sid: call dot ;display a dot call rdtrk ;read track from src dsk call chktrk ;check if track=all filler jc __done ;if so, done call wrtrk ;write track to dest file inc dh ;increment head cmp dh,nsides ;head < nsides? jb __sid ;yes, next side inc ch ;increment cylinder cmp ch,=40 ;cyl < cyls? jb __cyl ;yes, next cylinder __done: call close ;close dest file exit: int 0x20 ;terminate ; display error message whose address is in dx ; then terminate error: push dx ;save dx mov dx,&crlfbl ;display CR/LF/BEL mov ah,=9 ;display error message int 0x21 pop dx ;restore dx mov ah,=9 ;display error message int 0x21 jmps exit ;exit program ; check command line parameters ; set up srcdrv and tfcb ckparm: test al,al ;invalid source drive? mov dx,&errsd ;yes, error jnz error test ah,ah ;invalid dest drive? mov dx,&errdd ;yes, error jnz error mov al,tfcb ;get source drive test al,al ;omitted? mov dx,&errus ;yes, error jz error dec al ;adjust to base zero mov srcdrv,al ;save source drive mov al,tfcb+1 ;get source FN(1) cmp al,=' ' ;filename specified? ja error ;if so, error mov al,tfcb+16+1 ;get dest FN(1) cmp al,=' ' ;filename specified? jbe error ;if not, error push ds pop es mov si,&tfcb+16 ;move FCB2 to FCB1 mov di,&tfcb mov cx,=16 cld rep movs byte ret ; calculate address of a buffer large enough to hold one ; track of the source disk and which doesn't cross a 64K ; memory address boundary. Store buffer address as a ; paragraph number in "bufseg". bufadr: mov ax,&EndData# ;get first free offset add ax,=15 ;round up mov cl,=4 ;convert to paragraph shr ax,cl mov cx,cs ;calc first free paragraph add ax,cx mov cx,ax ;save buffer segment in cx add ax,=((9*512)>>4)-1 ;calc end buffer para xor ax,cx ;check if 64K bound crossed and ax,=0xF000 mov ax,cx ;restore buffer segment jz __x ;buffer segment is OK add ax,=0x0FFF ;else, round up to next and ax,=0xF000 ; 64K boundary __x: mov bufseg,ax ;save buffer segment ret ;done ; create destination file, and set record size to ; track size (512*nsects)   create: mov dx,&tfcb ;create dest file mov ah,=0x16 int 0x21 test al,al ;successful? mov dx,&errdf ;no, error jnz error mov ah,nsects ;get sectors/track add ax,ax ;times 512 (sector size) mov tfcb+14,ax ;set record size mov byte tfcb+32,=0 ;zero current record push ds mov ds,bufseg ;set DMA address -> buffer xor dx,dx mov ah,=0x1A int 0x21 pop ds ret ;done ; close destination file close: mov dx,&tfcb ;close dest file mov ah,=0x10 int 0x21 ret ;done ; delete destination file delete: mov dx,&tfcb ;delete dest file mov ah,=0x13 int 0x21 ret ;done ; check source disk format by reading first FAT sector ; and checking format code. Set up nsects/nsides. ckform: mov al,=1 ;read first FAT sector mov cx,=2 ;(track=0, head=0, sec=2) xor dh,dh call rdsecs jnc __rok ;no errors, continue mov dx,&errrs ;report error jmp error __rok: mov es,bufseg ;get disk format code es mov al,0 ;get disk format code not al ;complement cmp al,=4 ;valid? jb __fok ;yes mov dx,&errsf ;no, report error jmp error __fok: cbw ;convert to word add ax,ax ;convert to index mov bx,ax ;table index in bx mov ax,fmttbl[bx] ;get nsides/nsects from tbl mov word nsides,ax ;save nsides/nsects mov dx,msgtbl[bx] ;get format message mov ah,=9 ;display message int 0x21 ret ;done ; read a track from the source disk ; ch = cylinder number ; dh = head number rdtrk: mov cl,=1 ;cl = sector mov al,nsects ;al = number of sectors call rdsecs ;read track from src disk jnc __x ;no errors, continue call close ;close dest file call delete ;delete dest file mov dx,&errrs ;report error jmp error __x: ret ;done ; check if track in the track buffer consists of all ; identical filler bytes (any value except zero)... ; if so, we have reached the end of useful data on the ; source disk, in which case return carry flag set. chktrk: mov es,bufseg ;es:di -> track buffer mov di,=0 es mov al,[di] ;get first byte test al,al ;zero? jz __x ;yes, not filler (CF=0) push cx ;preserve cx mov cx,tfcb+14 ;rpt count = track length cld repz scas byte ;are all bytes identical? pop cx ;restore cx clc ;set CF=0 jnz __x ;not identical (CF=0) stc ;all filler, CF=1 __x: ret ;done ; write track buffer to destination file wrtrk: push dx ;save dx mov dx,&tfcb ;write trk to dest file mov ah,=0x15 int 0x21 pop dx ;restore dx test al,al ;successful? jz __x ;yes, continue call close ;close dest file call delete ;delete dest file mov dx,&errwd ;report error jmp error __x: ret ;done ; read sectors into track buffer using ROM BIOS (int 0x13) ; call with CH=cyl, CL=sec, DH=head, AL=#sectors rdsecs: mov si,=10 ;initialize error counter mov es,bufseg ;es:bx = buffer address xor bx,bx mov dl,srcdrv ;dl = drive __l: mov ah,=2 ;read sectors push si push ax int 0x13 pop ax pop si jnc __x ;successful, continue dec si ;error, decrement count jnz __l ;not exhausted, try again stc ;else, flag error __x: ret ;done ; display a dot dot: push dx ;save dx mov dl,='.' ;display a dot mov ah,=0x02 int 0x21 pop dx ;restore dx ret ;done end start ;end of module TURBOPRNCOM õ€/:›;dð,./:›;eDM.,..›;fF.,/h›;g¼S.,.:›;hñ.,/.›;iBF.,-:›;jLIT.,/:›;kSFR'..:›;nKR..,..›;oFIM.,/:›;pKR.,..›;qSEK ,-:›;rkr..,.:›;sPts.,/:›;tESC.,/:›;uTL.,/:›;xDRS..,/:›;yð,./.›,ÉR ,/.›;ÿè>èuèÑè•0í0öèkèÿèrè*þÆ:6ìrêþÅ€ý(ráèšÍ Rºæ´ Í!Z´ Í!ëï„Àº@uê„äºUuã \„ÀºêtÙþÈ¢î ]< wÍ m< vƾl¿\¹üó¤Ã¸ð±ÓèŒÉȉÁ1È%ð‰Ètÿ%ð£êú\´Í!„ÀºouƒŠ&íÀ£jÆ|Žê1Ò´Í!ú\´Í!ú\´Í!ð¹0öè~sº�éFÿŽê& öÐ<rºÆé2ÿ˜À‰Ã‹‡ˆ£ì‹—�´ Í!ñ íèEs è¨ÿè­ÿº�éÿÃŽê¿&Š„Àt Q‹jüó®YøuùÃRº\´Í!Z„Àt èrÿèwÿº§éÑþþ Žê1ÛŠî´VPÍX^sNuóùÃR².´Í!Zà  ˜¬¿Ó2 sides, 8 sectors $1 side, 8 sectors $2 sides, 9 sectors $1 side, 9 sectors $ $Usage: DOWNLOAD d: f  n d: is source drive fn is destination filename$Invalid source drive$Invalid destination drive$Can't create destination file$Error reading source disk$Error writing destination file$Invalid format code on source disk$DISC ³p‚ÓAUTOEXECBAK %Lp†ANSI SYS `u FsAUTOEXECBAT 8Pp?‚SW-DEMO2 (RtéåONFIG BAK gbN£?CONFIG SYS ÖeN=PCLOCK COM 7!ý#title "Download boot ROM for PC-DOS and TurboDOS/PC" #subttl "Copyright 1986, Software 2000, Inc." ; Version: 07-Jan-86 module "BOOTROM" ; BOOTROM.A is a sample bootstrap ROM that illustrates one ; method of implementing network downloading of MS-DOS or ; PC-DOS and TurboDOS/PC into a diskless workstation. This ; sample code is intended to be stored in an auxilliary ROM ; (supported by most popular PC networking boards) and to ; work in conjunction with the ROM BIOS of an IBM PC or ; compatible work-alike machine. Modifications will most ; likely be required for workstations which differ from the ; IBM PC in any significant way. ; Here is the basic strategy used to implement downloading: ; ; 1. A normal PC-DOS system diskette is prepared. It must ; contain a boot sector, the system files necessary to ; boot PC-DOS (for IBM PC-DOS: IBMBIO.COM, IBMDOS.COM, ; and COMMAND.COM) and the files necessary to load ; TurboDOS/PC (TURBOPC.COM and TURBOPC.DRV). ; ; 2. The system diskette is converted to a download boot ; file (using the utility program BOOTFILE.COM) and ; stored on the file server's disk where the boot ROM ; expects to find it. ; ; 3. The boot ROM is given control during the ROM BIOS ; initialization phase, and alters INT 0x18 (ROM BASIC ; entrypoint) and/or INT 0x19 (floppy disk bootstrap ; entrypoint). When the ROM BIOS has completed its ; initialization phase, it executes INT 0x19 (if a ; diskette is available) or INT 0x18 (otherwise). Since ; these interrupt vectors have been altered, the boot ; ROM will get control at this point. ; ; 4. The boot ROM sends a network request to open the ; download boot file. It then alters INT 0x13 (the ; physical disk I/O entrypoint of the ROM BIOS) to ; point to a disk I/O routine in the boot ROM which ; converts physical disk I/O requests into corresponding ; network requests accessing the download boot file. ; ; 5. Using the altered INT 0x13, the boot ROM reads the ; normal PC-DOS boot sector into memory at 0000:7C00 and ; jumps to it (just as the ROM BIOS would have done). ; ; 6. Loading of PC-DOS now proceeds in the normal fashion ; except that all physical disk I/O operations are being ; redirected over the network. #page ; To prepare a binary file for ROM programming, assemble ; using TASM, link using TLINK, manually strip off .CMD ; header (first 128 bytes) and then manually patch checksum ; byte so that all bytes of the ROM sum to zero (modulo ; 256) as required by the IBM ROM BIOS. tlink "B" ;omit base page ; The sample boot ROM code which follows is divided into ; two parts. Part 1 implements the basic download stragety ; described above, and is dependent upon the IBM-compatible ; ROM BIOS but independent of the type of network hardware. ; Part 2 contains a network circuit driver appropriate to ; the particular type of networking hardware being used. ; Part 1 follows: ; The boot ROM needs access to an area of RAM that is not ; used by PC-DOS. Here we are using the top half of the ; interrupt vector area (0000:0200 to 0000:03FF). ramseg == 0x20 ;RAM segment used by ROM ramlen == 0x200 ;RAM length (bytes) romlen == 4096 ;length of boot ROM (bytes) ; define bits in TurboDOS message format code "msgfmt" frstmb == 1<<0 ;first message in session lastmb == 1<<1 ;last message in session morfol == 1<<2 ;more follows reqfcb == 1<<3 ;request contains fcb reqdat == 1<<4 ;request contains data repfcb == 1<<5 ;reply contains fcb repdat == 1<<6 ;reply contains data repmsg == 1<<7 ;this is a reply message ; define flag bits in TurboDOS message user field "msgcuf" tfcn == 1<<5 ;T-function priv == 1<<6 ;privileged user logon == 1<<7 ;logged-on loc Data# ;data segment (RAM) xint13: res word 2 ;original INT 0x13 save reccnt: res word 1 ;records to read counter dskfmt == word . ;download file disk format: sides: res byte 1 ;number of sides (1 or 2) sects: res byte 1 ;number o  f sectors (8 or 9) ; The following structure defines the format of a TurboDOS ; network message. msgbuf: ;network message buffer msglen: res byte 1 ;length msgdid: res word 1 ;destination address msgpid: res byte 1 ;process id msgsid: res word 1 ;source address msgorg: res word 1 ;originator address res byte 1 ;originator process res byte 1 ;forwarding level msgfmt: res byte 1 ;message format code msgl0 == .-msgbuf ;length (header-only) msga: res byte 1 ;AL-reg msgc: res byte 1 ;CL-reg res byte 1 ;CH-reg res byte 1 ;DL-reg res byte 1 ;DH-reg res byte 1 ;BL-reg res byte 1 ;BH-reg msgcuf: res byte 1 ;current user + flags msgl1 == .-msgbuf ;length (header+regs) msgfcb: res byte 36 ;fcb msgcmp: res byte 1 ;compat flags msgl2 == .-msgbuf ;length (header+regs+fcb) msgdat: res byte 128 ;data record msgl3 == .-msgbuf ;length (hdr+regs+fcb+dat) loc Code# ;code segment (ROM) ; ROM Initialization Procedure ; ROM BIOS validates the "signature" and ROM checksum, then ; does far-call to offset 0003 to allow ROM to initialize. ; NOTE: must add checksum byte to end of ROM before burning ; so all bytes in ROM sum to zero modulo 256. start: ;start of ROM word 0xAA55 ;signature for ROM BIOS byte romlen/512 ;ROM size (512-byte segmts) jmp init ;ROM initialization entry signon: byte "TurboDOS/PC Network Boot ROM", 0x0D, 0x0A byte "Copyright 1986, Software 2000, Inc." byte 0x0D, 0x0A, 0 filnam: byte "BOOTFILEDSK" ; ROM init routine replaces the ROM BASIC and/or disk boot ; interrupts so that they point to our net boot routine. int18 == 1 ;replace INT 0x18 (ROM BASIC) int19 == 1 ;replace INT 0x19 (disk boot) init: push ax ;save registers push dx push ds xor ax,ax ;ds -> interrupt page mov ds,ax #if int19 mov 0x19*4,word &boot ;INT 0x19 (disk boot) mov 0x19*4+2,cs ;-> new boot routine #endif #if int18 mov 0x18*4,word &boot ;INT 0x18 (ROM BASIC) mov 0x18*4+2,cs ;-> new boot routine #endif pop ds ;restore registers pop dx pop ax retf ;end of initialization ; Network bootstrap procedure ; The net boot routine gets control when the ROM BIOS is ; all done with its tests and initialization. It opens ; a remote download file containing a disk-image of a ; bootable MS-DOS disk. It replaces the BIOS disk I/O ; interrupt so it points to a routine that simulates ; disk I/O by accessing the download file over the net. ; It then reads the MS-DOS boot sector into RAM and ; transfers control to it. Booting proceeds normally ; except that disk I/O is done over the net. boot: mov ax,&ramseg ;get RAM segment base mov ds,ax ;ds -> RAM mov ss,ax ;ss -> RAM mov sp,=ramlen ;sp -> top of RAM segment sti ;interrupts OK now mov bx,&signon ;display sign-on message call disply push ds ;preserve ds call netnit ;initialize network driver pop ds ;restore ds ; set up network message to open BOOTFILE.DSK file mov msglen,=msgl2 ;set up message length mov cx,=msgl2-1 ;zero header/regs/fcb mov di,&msgbuf+1 push ds pop es ;es -> RAM segment xor al,al cld rep stos al mov msgc,=15 ;msgc = open function mov msgfmt,=(frstmb|reqfcb|repfcb) mov cx,=11 ;move filename to msgfcb mov si,&filnam mov di,&msgfcb+1 push cs pop ds ;ds -> ROM segment rep movs byte push es pop ds ;ds -> RAM segment or msgfcb+6,=byte 1<<7 ;set attrib F6 (R/O) mov al,netusr ;get user number or al,=(priv|logon) ;privileged+logon flags mov msgcuf,al ;to message mov al,netcmp ;get compatibility flags mov msgcmp,al ;to message mov ax,netsid ;get source address mov msgsid,ax ;to message mov msgorg,ax mov al,netdsk ;get disk drive inc al ;adjust to 1-based mov msgfcb,al ;to message mov ax,netdid ;get dest net address mov msgdid,ax ;to message ; send message to open BOOTFILE.DSK file and get reply msg call sndrcv ;send message/receive reply jz __opn ;if open OK, continue mov bx,&__oer ;display error message jmp halt ;diagnose and halt __oer: byte "Can't open download file",0 __opn: ; Replace disk I/O interrupt (INT 0x13) so that diskette ; read requests are converted to reads of the remote ; download file. (Save original contents of INT 0x13 in ; a canonical location so they may be restored later by a ; transient program if local disk I/O is required.) xor ax,ax ;es -> interrupt page mov es,ax es mov ax,0x13*4 ;save original INT 0x13 mov xint13,ax es mov ax,0x13*4+2 mov xint13+2,ax es mov 0x13*4,word &dskio ;INT 0x  13 (disk I/O) es mov 0x13*4+2,cs ;-> new dskio routine ; Read MS-DOS first FAT sector into memory at 0000:7C00 ; and analyze disk format code (first byte of FAT) mov dskfmt,=0x0801 ;assume initial disk format push ds ;save ds mov ax,=0x0201 ;ah = read, al = 1 sector mov cx,=0x0002 ;ch = cyl 0, cl = sector 2 xor dx,dx ;dh = head 0, dl = drive 0 mov es,dx ;es:bx = DMA address mov bx,=0x7C00 int 0x13 ;read FAT sector pop ds ;restore ds jnc __fat ;successful mov bx,&__fer ;display error message jmp halt ;diagnose and halt __fer: byte "Can't read FAT sector",0 __tbl: ;disk format table byte 2,8 ;fmtcode=FF byte 1,8 ;fmtcode=FE byte 2,9 ;fmtcode=FD byte 1,9 ;fmtcode=FC __fat: es mov al,[bx] ;get disk format code not al ;complement cbw ;convert to word add ax,ax ;times 2 mov bx,ax ;index to bx cs mov ax,__tbl[bx] ;get disk format info mov dskfmt,ax ;save disk format info ; Read MS-DOS boot sector into RAM at 0000:7C00 and ; transfer control to it. Booting should now proceed ; as usual. mov ax,=0x0201 ;ah = read, al = 1 sector mov cx,=0x0001 ;ch = cyl 0, cl = sector 1 xor dx,dx ;dh = head 0, dl = drive 0 mov es,dx ;es:bx = DMA address mov bx,=0x7C00 int 0x13 ;read boot sector jnc __boot ;successful mov bx,&__ber ;display error message jmp halt ;diagnose and halt __ber: byte "Can't read boot sector",0 __boot: jmpf 0x7C00,0 ;transfer to boot sector ; Physical Disk I/O Procedure ; This routine gets control via INT 0x13 in place of the ; normal BIOS disk I/O driver. It simulates disk I/O ; by doing appropriate random reads of the download file. ; Only reset/status/read are supported. ; ; On entry: ; AH = function (0=reset,1=stat,2=rd,3=wrt,4=vfy,5=fmt) ; AL = number of sectors ; CH = cylinder ; CL = sector ; DH = head ; DL = drive (bit 7 -> hard disk) ; ES:BX = DMA address ; On return: ; Carry-flag set if error ; AH = disk status (zero if successful) ; AL = number of sectors actually read dskio: sti ;re-enable interrupts test ah,ah ;reset function? jz reset ;yes, process dec ah ;status function? jz status ;yes, process dec ah ;read function? jnz inval ;no, invalid function test dl,dl ;read of floppy drive A? jz read ;yes, process inval: mov ah,=0xff ;else, invalid function stc ;return with CY set dskxit: retf 2 ;like IRET but don't POPF status: xor al,al ;return successful status reset: clc ;return with CY clear jmps dskxit read: push ds ;save ds push bp ;save registers push di push si push es push dx push cx push bx push ax push ax ;save ax mov ax,&ramseg ;get RAM segment base mov ds,ax ;ds -> RAM pop ax ;restore ax mov di,bx ;es:di -> DMA address ; number of records to read = #sectors * 4 ; first record to read = ; ((cylinder * sides + head) * sects + sector - 1) * 4 add ax,ax add ax,ax ;#sectors * 4 mov reccnt,ax ;save #records to read mov al,ch ;cylinder imul sides ;* sides add al,dh ;+ head imul sects ;* sects xor ch,ch add ax,cx ;+ sector dec ax ;- 1 add ax,ax add ax,ax ;* 4 mov msgfcb+33,ax ;store fcb random record readl: ; set up network message to read a random record push es ;save DMA address push di mov msglen,=msgl2 ;set up message length mov cx,=msgl1-1 ;zero header/regs mov di,&msgbuf+1 push ds pop es ;es -> RAM segment xor al,al cld rep stos al mov msgc,=33 ;msgc = read random funct mov msgfmt,=(reqfcb|repfcb|repdat) mov al,netusr ;get user number or al,=(priv|logon) ;privileged+logon flags mov msgcuf,al ;to message mov al,netcmp ;get compatibility flags mov msgcmp,al ;to message mov ax,netsid ;get source address mov msgsid,ax ;to message mov msgorg,ax mov al,netdsk ;get disk drive inc al ;adjust to 1-based mov msgfcb,al ;to message mov ax,netdid ;get dest net address mov msgdid,ax ;to message ; send message to read a random record, and get reply msg call sndrcv ;send message/receive reply pop di ;restore DMA address pop es jnz reader ;if read error, exit mov cx,=128 ;move record to DMA address mov si,&msgdat cld rep movs byte inc word msgfcb+33 ;increment fcb rand rec num dec reccnt ;decrement record count jz readok ;exhausted jmp readl ;not exhausted, read more reader: pop ax ;restore al mov ah,=0xFF ;return error status stc ;with CY flag set jmps readx ;join common exit readok: pop ax ;restore al xor ah,ah ;return successful stat  us clc ;with no CY flag readx: pop bx ;restore registers pop cx pop dx pop es pop si pop di pop bp pop ds jmp dskxit ;exit ; send message in msgbuf over the network ; receive reply message into msgbuf ; check for disk error response and process sndrcv: push ds ;preserve ds call netsnd ;send message pop ds ;restore ds jc __nse ;if network error, diagnose mov msglen,=msgl3 ;max message length push ds ;preserve ds call netrcv ;receive reply pop ds ;restore ds jc __nre ;if network error, diagnose mov al,msglen ;get message length cmp al,=20 ;disk error message? jz __err ;yes, process cmp al,=11 ;aborted message? jz __abt ;yes, process mov al,msga ;else, get return code test al,al ;was operation successful? ret ;done __err: mov msglen,=msgl0+1 ;message length (header+1) mov al,msgfcb ;setup process id mov msgpid,al mov ax,msgsid ;exchange source/dest addr xchg ax,msgdid mov msgsid,ax mov msgfmt,=repmsg ;message format code mov msga,=0xff ;abort jmp sndrcv ;send abort message __abt: mov bx,&__abm ;display error message jmp halt ;diagnose and halt __nse: mov bx,&__nsm ;display error message jmp halt ;diagnose and halt __nre: mov bx,&__nrm ;display error message jmp halt ;diagnose and halt __nsm: byte "Network send error",0 __nrm: byte "Network receive error",0 __abm: byte "Physical disk error " byte "reported by file server",0 ; All errors proceed here to halt with message string ; pointer in cs:bx.  halt: call disply ;display diagnostic message mov bx,&__msg call disply ;display abort/halt message sti ;enable interrupts jmps . ;halt __msg: byte 0x0D,0x0A byte "Download aborted, processor halted ",7,0 ; display a null-terminated string ; cs:bx -> string disply: cs mov al,[bx] ;get byte from string inc bx test al,al ;null terminator? jz __x ;yes, done push bx ;save bx mov ah,=14 ;teletype output mode mov bx,=7 ;bh = page, bl = color int 0x10 ;display character pop bx ;restore bx jmps disply ;continue __x: ret ;done #page ; Part 2 contains a network circuit driver appropriate to ; the particular type of networking hardware being used. ; Part 2 follows: loc Data# ;data segment (RAM) netsid: res word 1 ;source net address netdid: res word 1 ;destination net address netdsk: res byte 1 ;disk drive (base 0) netusr: res byte 1 ;user number netcmp: res byte 1 ;compatibility flags loc Code# ;code segment (ROM) ; Network initialization procedure. ; Perform any needed network initialization, and set up the ; network information variables in the RAM segment (above). netnit: ret ;done ; Network receive-message procedure. ; Receive a network message into "msgbuf". The maximum ; permissable message length has been passed in "msglen". ; In case of an unrecoverable network error, return with ; the carry-flag set. netrcv: ret ;done ; Network send-message procedure. ; Send a network message from "msgbuf". The actual message ; length has been passed in "msglen". In case of an unre- ; coverable network error, return with the carry-flag set. netsnd: ret ;done end ;end of module DRIVER SYS `u ÌNDS COM x5 ”DSKSETUPCOM |T„ ˆYDUMP EXE ÛH…{€+EDLIN COM j� RGEXE2BIN EXE `u Vê FC EXE `ç ^Þ8FECHO COM O�ò:rtÆ;èìè8;rtè'ëò¸7Í!ˆº €ú/uÆ» \Æ;¾´ ¿ø,Žlü¹ó¥¡p£ÿ.jèËP3ÀXÃèË3Û‹x‹:Êt´>Í!ˆC:ît´>Í!ˆ.ƒÃ¹´>Í!CâùÃSP´QÍ!ŽÛ¡.£9 Šà£X[Ãèé$ÿSP´QÍ!¡9ŽÛ£X[úÅé4þº6 nè‚ÿuïèæºF€>nuºNèÖº[èÐèø Í!¸ Í!ÃEºB¸=Í!s=uºèéëýè´ÿë勨º�3ɸBÍ!r¹/Žlº´?Í!œP´>Í!X�r;Átº)èƒÿ뱎l¾¹Z*üÑé3Ò­Ðâûú‹¸"%Í!º½¸#%Í!º¨¸$%Í!Ãèÿºzè9¸ Í!$_ to exit\\LAN assignments: …ŠÈ:n™ÄõÆ¥è&»µ°è© »”°è¡ ŠDè|»­°è“ ŠDèn»Ç°è… ŠDè`»ä°èw ŠDèR»°èi ‹\èÍ »°è[ ‹\è¿ »9°èM ‹\è½ »W°è? ‹\è¯ »vè�ºœèøuúÐR to exit\\Miscellaneous options: ³ ¸ ì  H – Ç Æ¥èß»µ°èb»'°èZŠD è5»E°èLŠD èB »]°è>ŠD è�»t°è0ŠD ŠdèQ »Š°èŠDè> »¡°èŠDè½»»èaºœèÊuú Rèå to exit\\Disk assignments: Æ¥è‡ »”è$ŠDèç »­èŠDèÛ èl 0É:Lué»ô °è »ö è; » ˆÈDþÀèø» è( ˆÈèíŠèçèé»Éè ˆÈèÚ‹_è$þÁ:LrÈ»& èý ºœèfuúo Rè� to exit\\Printer assignments: Æ¥è§ »ÇèDŠDè è˜ 0É:LuéH»É °è7»Ë èg »à ˆÈþÀè'»ð èW ˆÈèâŠèè»ÉèD ˆÈèÏ‹_èSþÁ:LrË» è, ºœè•uúO Rè° to exit\\Queue assignments: Æ¥èí »ä芊DèM èÞ 0É:Lu鎻�°è}»�è­ »¢ˆÈþÀèm»°è� ˆÈèâŠè\è^»ÉèŠ ˆÈèÏ‹_è™þÁ:LrË»¿èr ºœèÛ uú Rèö §‹©ã¾«¬ò®uQW¹ã ó¦t _Yëç0Àé‰þ_Y ÿ_˹dè°.èq¹ è¹1À‡Ð÷ñ0é]QS‰ÓŠCþÈy´Í!èM°:èF¹è°.è;¹è[YÊC< t$è&âòÃPèL\ X@èè>èGé'è5\ è9éPè&\ è*è X@èèèÊ'„äuð èØþÌuùÃèý -> Ãèô\Enter ÃèBëè6èà hexð(計øèa°,螈ØèW°)é”RètuˆÆèF t<0sCëôèauˆô0ÒZà ÿZÈİ'èjˆà< s °^è_ˆà@èX°'éSŠ<'u#CŠ< r<^uCŠ< rè ,@r<w0äà ÿÃé „ÀtèMYesÃèENoÊèÜ to continue º¡èyé èø\Cannot open file: èWýé èÛ\Cannot make file: è:ýéðè¾\Invalid file: è!ýé×è¥\Insufficient memory availableé²è€\Cannot read file: èßüé•èc\Cannot write file: èÁüéwèE\Invalid option\é`è.\Invalid drive name\éEè\Invalid printer name\é(èö\Invalid queue name\é èÛ\I  nvalid hex input\éóèÁ\Invalid decimal input\éÕè£\Invalid ASCII input\é¹è‡\Invalid yes/no input\éœèj\Invalid number range input\éyèG\Invalid network address input\éSChange all optionsnetwork address (circuit,node)? (A-P)? (y/n)? CFGTPC MSG‰&ü‰÷ÿÿtéwº´Í!<ÿuè×ÉÓ÷GÿÿtèåË_‰Cè§„ÀtèÒɉڴÍ!»1À‰G ‰G!‰G#@‰G‰Ú‹´'Í!P´Í!X„ÀtèÃË‹€'CâúÆéè?Æþ¡£ºÊR‹Š<t<#u0Cºòè¡èÓ‹u é³é3COMMENT,WAITKBREAK˜öþÿu錊C<t èŒ< uò‰Ãéùè:t¢ÿCŠC<t :ÿuó‰ëZéÚ‰öþÿt@è€\Press to continue, or q to exit º-èÍPèsXèê‰Ó‹_)ˇÓrìRQSèÔZR»Ýè°[YƒéƒÃ‰OþSËSèØ‰Ú»Ùè–[YZ‰W‰Ë0Àà ÿÃë‰Ù»Ý‹»Ý)Ót‰Ó)ˇÓuïQè‡Z»ÙèdëûÙ‹»Ù)Ót9‰Ñ»Ù‹»Ù)Ó‰Ëtç»Ó_þ)ˇÓuçS‰Ë‹_ƒÃS‰ËèDY[‹WʉWë»Ã‡Ó‹ Gu‡Ó‹‰‡Ó‰‰W“‰GÇӋ Gu‡Ó‹G‰W‡Ó‰‰G“‰Ë Gt‹‰Ú‹_‰“‰G‰Ó1À‰‰GÃ1À‰‰GÃWŒØŽÀü‰ß0Àóª_ÃýëüVWŒØŽÀ‰Þ‰×ó¤‰ó‰ú_^ÃR´ Í![CŠC0äSÃÆ[늄Àt< wCëóÀÇӀ?‡Ót5SЇӀ?t èÚÿ:u‡ÓCBëê< w ƒÄ‹G‡Óÿà€?tCëøƒÃ‡Ó[ëÂÃ0ÀÃ#COMMENT \ Thió  ió  thå  helð filå foò TurboDOS/Pà Configuratioî  Utility® � Helð filå labeló alwayó begiî witè thå characteò "#¢ anä coulä bå � oæ  anù  length®  Thå filå labeló musô alsï begiî iî  thå  firsô � columî  oæ  á  linå anä additionaì characteró oî  thaô  linå  arå � ignored® Therå arå currentlù siø (6© helð labeló defined: #MAIN - Main menu #LAN - LAN assignments #MISC - Miscellaneous options #DISKS - Disk assignments #PRINTERS - Printer assignments #QUEUES - Queue assignments Other reserved word labels control the help message display as follows: #COMMENT d - Suppress scan until delimiter "d" reached. #WAIT - Wait for type at the console. #BREAK - Break scan of text file. \ #MAIN HELP Main options Page 1 GENERAL:  Maiî optionó providå aî entrù intï eacè oæ thå fivå (5© �           categorieó foò configuratioî oæ thå TurboDOS/Pà networë �           driveò oî youò machine®  Thå arrangemenô oæ thió  menõ �           ió  iî thå mosô likelù ordeò oæ necessarù changeó  wheî �           configurinç á ne÷ machine®  Eacè categorù wilì displaù �           á  sub-menõ  oæ  configuratioî optionó  oò  assignmentó �           alonç  witè  thå currenô  settings®  Furtheò  helð  ió �           availablå   undeò  eacè  categorù  bù  enterinç  á  '?§ �           (similaò tï helð selecteä here).           Thå TurboDOS/Pà configuratioî utilitù operateó bù firsô �           loadinç  á  compatiblå networë driveò filå intï  memorù �           wheî  thå prograí begins¬  anä displayinç anä  changinç �           thå  networë configuratioî optionó locateä iî thå  copù �           oæ thå driveò iî memory®  Afteò alì changeó arå  made¬ �           thå modifieä driveò ió theî saveä bacë intï thå filå oî �           disë tï makå thå changeó permanent.           Thå  currenô driveò filå undeò configuratioî ió  alwayó �           displayed directly after the main options menu. #WAIT #COMMENT \ \ HELP Main options Page 2 @ -> Changå alì options®  Thió wilì starô yoõ througè  eacè �           sub-categorù  iî thå ordeò describeä below®  Wheî eacè �           categorù ió finisheä anä  LAΠ assignm  entó shoulä bå configureä beforå proceedinç �           intï  disk¬  printer¬  oò queuå  assignments®  Optionó �           undeò  thió  categorù seô thå numbeò  oæ  locaì  disks¬ �           remotå disks¬ remotå printer¬ anä remotå queues® Theså �           numberó  arå useä wheî thå timå comeó tï assigî  remotå �           devices® Otheò optionó seô thå LAN-Pà hardwarå relateä �           I/Ï  anä  memorù baså addresses¬  anä TurboDOÓ  logicaì �           network source and destination information.  B -> Miscellaneouó optionó arå seô next® Theså arå TurboDOÓ �           relateä  optionó  foò thå operatioî oæ  TurboDOS/Pà oî �           youò   particulaò  filå  server(s)®   Optionó  includå �           initiaì useò areá foò rooô directory¬  privilegeä  useò �           flag¬  compatibilitù flags¬ initiaì prinô mode¬ initiaì �           spool drive, and end of print character. #WAIT #COMMENT \ \ HELP Main options Page 3 C -> Disë  assignmenô allowó yoõ tï "point¢ tï remotå  diskó �           oî youò Pà tï diskó locateä oî TurboDOÓ server(s)® Thå �           numbeò  oæ remotå diskó configureä herå ió  baseä  upoî �           thå numbeò oæ remotå diskó seô undeò LAÎ assignments.      D -> Printeò  assignmentó  allo÷  yoõ tï "point¢  tï  remotå �           printeró  oî  youò Pà tï printeró locateä  oî  TurboDOÓ �           server(s)®  Thå  numbeò oæ remotå printeró  configureä �           herå  ió baseä upoî thå numbeò oæ remotå  printeró  seô �           undeò LAÎ assignments. E -> Queuå assignmentó allo÷ yoõ tï "point¢ tï remotå queueó �           oî  youò  Pà tï queueó locateä oî  TurboDOÓ  server(s)® �           Thå  numbeò  oæ remotå queueó configureä herå ió  baseä �           upoî  thå  numbeò  oæ  remotå  queueó  seô  undeò   LAÎ �           assignments. #WAIT #COMMENT \ \ HELP Main options Page 4 ITEM Wheî thå optionó oò assignmentó arå tï bå changed® Thå � ENTRY:    firsô  steð ió tï enteò thå desireä categorù anä selecô �           Thå iteí tï changå froí thå sub-menu®  You'lì theî  bå �           prompteä  tï  enteò  thå item'ó ne÷  value®  Inpuô  ió �           alwayó  expecteä  iî thå samå forí aó iô  ió  displayeä �           witè  á  fe÷ exceptions®  Thå followinç ió á  lisô  oæ �           possiblå displaù formats: nn ......... Decimal number (0-255) nn hex ..... Hexadecimal number (0-FFH) Yes or No .. Logical boolean expression d .......... TurboDOS device name (A-P) 'a' ........ ASCII character (^L=control-L) text ....... Explanatory text           Decimaì   numberó  maù  bå  alternativelù  entereä   iî �           hexadecimaì  bù enterinç aî "H¢ afteò thå numbeò  (i.e® �           33 = 21H, 100 = 64H). #WAIT #COMMENT \ \ HELP Main options Page 5 END Speciaì carå shoulä bå useä wheî endinç á configuratioî � SESSION:  sessioî  tï insurå thaô whaô yoõ wanô ió  accomplished® �           Endinç á sessioî doeó noô displaù á sub-menõ aó peò thå �           otheò categories®  Instead¬  á prompô ió issueä askinç �           whetheò  yoõ wisè tï savå thå modifieä driveò bacë intï �           thå  filå oî disk® Á yeó replù wilì updatå thå driveò filå thaô waó loadeä �           witè  thå changeó madå durinç thå session®  Á nï replù �           ignoreó  thå changes®  Botè replieó wilì exiô bacë  tï �           thå  operatinç system®  Typinç Numbeò  oæ locaì disks®  Thió parameteò shoulä bå  seô �           accordinç tï thå numbeò oæ locaì disë driveó locateä oî �           youò PC®  Pà disë deviceó usuallù begiî witè devicå  Á �           (floppù  disë  drivå 0)¬  aî optionaì devicå   (floppù �           disë  drivå  1)¬  anä optionaì harä  disë  deviceó  C-¿ �           followinç this®  Foò example¬ á standarä IBÍ PC/XÔ haó �           onå  floppù  disë devicå Á anä harä disë devicå  C¬  oò �           threå (3©   locaì diskó (A-C)®  Remotå disë deviceó wilì �           begiî  aó  locaì  devicå Ä oî  youò  PC®  Thå  maximuí �           alloweä locaì diskó ió 32. B -> Numbeò oæ remotå disks®  Thió parameteò shoulä bå  seô �           tï  thå  numbeò oæ desireä remotå disë deviceó oî  youò �           TurboDOÓ  server(s©  yoõ wisè tï  support®  Wheî  disë �           assignmentó  arå madå (maiî optionó menu)¬  thió numbeò �           oæ disë maù bå assigneä networë addresses® Thå maximuí �           allowed remote disks is 16. NOTE      Thå  combineä totaì oæ botè locaì anä remotå diskó  maù �           not be greater than 32, governed by DOS limits. #WAIT #COMMENT \ \ HELP LAN assignments Page 2 C -> Numbeò  oæ remotå printers®  Thió parameteò shoulä  bå �           seô  tï  thå numbeò oæ desireä remotå prinô deviceó  oî �           youò TurboDOÓ server(s© thaô yoõ wisè tï support® Wheî �           printeò assignmentó arå madå (maiî optionó menu)¬  thió �           numbeò  oæ printeró maù bå assigneä networë  addresses® �           The maximum allowed remote printers is 16. D -> Numbeò oæ remotå queues®  Thió parameteò shoulä bå seô �           tï  thå numbeò oæ desireä remotå spooì queueó  oî  youò �           TurboDOÓ  server(s©  thaô yoõ wisè  tï  support®  Wheî �           queuå  assignmentó arå madå (maiî optionó  menu)¬  thió �           numbeò  oæ  queueó maù bå assigneä  networë  addresses® �           The maximum allowed remote queues is 16. NOTE Thå TurboDOS/Pà commands¬  PRINÔ anä PRINTER¬ allo÷ thå �           alterinç oæ thå currenô prinô outpuô tï direcô printeró �           or queues, both of which are always remote. #WAIT #COMMENT \ \ HELP LAN assignments Page 3 E -> LAΠ  I/Ï  baså  address®   Thió  hexadecimaì   numbeò �           representó thå physicaì I/Ï baså addresó aó selecteä oî �           youò  LAΠ networë  controlleò board®  I/Ï  baseó  arå �           modulï 1¶ (i.e®  ° hex¬  1° hex,...¬ 2E° hex¬ 2F° hex)® �           Seå  belo÷  foò commoî LAΠ assignmentó  foò  differenô �           systems. F -> LAΠ memorù  baså  address®  Thió  hexadecimaì  numbeò �           representó  thå physicaì memorù segmenô aó selecteä  oî �           youò  LAΠ networë controlleò  board®  Memorù  segmenô �           baseó arå modulï 64ë (i.e® 200° hex¬ 300° hex,...¬ E00° �           hex¬  F00° hex)®  Seå belo÷ foò commoî LAÎ assignmentó �           for different systems.           SYSTEM I/O base Memory base ---------------------------------------------------           IBM-PC(XT) 0200 E000           IBM-PCjr 0100 C000           Zenith Z100 0068 CF80 #WAIT #COMMENT \ \ HELP LAN assignments Page 4 G -> LAÎ sourcå networë address®  Thió parameteò representó �           thå  TurboDOÓ  networë assignmenô foò  youò  PC®  Thió �           assignmenô ió governeä bù whicè circuiô numbeò haó beeî �           seô  iî  youò systeí foò thå LAÎ anä thå  physicaì  LAÎ �           controlleò nodå settinç (LANà ID)® Thió musô bå seô tï �           thå  LAΠ circuiô numbeò anä thå Pà controller'ó  nodå �           setting® Seå circuiô anä nodå networë addresó entrù iî �           thå maiî optionó helð area. H -> LAΠ destinatioî networë address®  Thió parameteò setó �           youò  defaulô destinatioî networë addresó foò  TurboDOÓ �           functionó thaô dï noô specificallù referencå á  circuiô �           anä  nodå (i.e®  MASTEÒ command¬  date/timå functions)® �           Seå circuiô anä nodå networë addresó entrù iî thå  maiî �           options help area. NOTE Thå circuiô numbeò specifieä witè alì networë addresseó �           ió á logicaì TurboDOÓ assignmenô only® Iî general¬ alì �           circuiô numberó wilì bå thå same¬ anä nodå numberó neeä �           onlù bå altered®  Possiblå exceptionó tï thió rulå arå �           in network forwarding cases. #WAIT #BREAK #MISC #COMMENT \ \ HELP Miscellaneous options Page 1 A -> Initiaì useò areá foò root® Thió assignó á useò numbeò �           oî thå remotå disë foò thå DOÓ rooô directory® Furtheò �           sub-directorieó wilì begiî assignmentó witè higheò useò �           numberó endinç witè useò 31® Thå maximuí alloweä valuå �           here is 31. B -> Privil  egeä useò flag® Thió booleaî flaç determineó thå �           TurboDOS/Pà supporô foò remotå disks®  Iæ yoõ arå  seô �           privileged¬  thå  MKDIÒ anä RMDIÒ locaì commandó iî DOÓ �           can create and remove sub-directories on remote disks. C -> Compatibilitù flags®  Thió hexadecimaì bytå  parameteò �           setó  filå  manipulatioî techniqueó  oî  remotå  disks® �           Supporteä  identicaì  tï  á normaì  TurboDOÓ  operatinç �           system¬ thå biô definitioî ió aó follows: bit 7 = permissive flag bit 4 = mixed-mode flag           bit 6 = suspend flag bit 3 = logical flag           bit 5 = global-write flag (bits 2-0 not defined)           (consult TurboDOS User's Guide for explanations) #WAIT #COMMENT \ \ HELP Miscellaneous options Page 2 D -> Initiaì  prinô  mode®  Thió  texô  orienteä  parameteò �           determineó  thå defaulô prinô modå wheî TurboDOS/Pà ió �           initiallù  loadeä intï thå PC®  Thå possiblå modeó arå �           as follows:           Local Prinô outpuô handleä locaìly.�           Offline Print output is discarded.           Direct to Printer p  Prinô    outpuô   ió    routeä �                                    directlù  tï remotå printeò  ð �                                    (where p=A-P). NOTE Tï changå tï direcô prinô mode¬  uså P=ð (wherå p=A-P)® �           Examples: P=A, P=B,..., P=O, P=P            Spooled to Queue q Prinô  outpuô  ió  routeä   tï �                                    remote queue q (where q=A-P). NOTE Tï changå tï spooleä prinô mode¬ uså Q=ñ (wherå q=A-P)® �           Examples: Q=A, Q=B,..., Q=O, Q=P #WAIT #COMMENT \ \ HELP Miscellaneous options Page 3 E -> Initiaì  spooì drive®  Thió disë devicå parameteò setó �           thå   defaulô  routinç  oæ  prinô  spooì  fileó   untiì �           explicitly changed with the PRINT command. F -> Enä oæ prinô character® Thió ASCIÉ valuå shoulä bå seô �           tï thå desireä enä oæ prinô character¬ oò ° (ASCIÉ '^@§ �           to disable end of print detection through print stream. #WAIT #BREAK #DISKS #COMMENT \ \ HELP Disk assignments Page 1 GENERAL: Remotå  disë  assignmentó arå displayeä anä changeä  iî �           thió  category®  Thå numbeò oæ remotå diskó arå  showî �           beginninç  witè thå nexô drivå namå afteò locaì  disks® �           Thå numbeò oæ locaì anä remotå diskó arå displayeä herå �           becauså  theù  affecô  thå display¬  buô  maù  onlù  bå �           changeä  througè thå LAÎ assignmentó  category®  Drivå �           assignments are displayed as follows:           Local drive d -> remote drive d network address (c,n)           wherå  "Locaì  drivå d¢ wilì bå thå defaulô drivå  namå �           thaô  youò Pà wilì know¬  "remotå drivå d¢ wilì bå  thå �           drivå  namå oî thå TurboDOÓ server¬  anä "c,n¢ wilì  bå �           the remote drives network address.           Tï  changå á disë assignment¬  typå iî thå locaì  drivå �           namå  oæ thå disk®  Firsô you'lì bå prompteä  foò  thå �           remotå drivå name¬ followeä bù á prompô foò thå networë �           addresó  oæ thå drive®  Typinç remote drive p network address (c,n)           wherå  "Locaì printeò p¢ wilì bå thå printeò namå  thaô �           youò  Pà wilì know¬  "remotå printeò p¢  wilì  bå  thå �           printeò namå oî thå TurboDOÓ server¬  anä "c,n¢ wilì bå �           thå remotå printer'ó networë address.           Tï  changå  á printeò assignment¬  typå  iî  thå  locaì �           printeò name®  Firsô you'lì bå prompteä foò thå remotå �           printeò  name¬  followeä  bù á prompô foò  thå  networë �           addresó oæ thå printer®  Typinç remote drive q network address (c,n)           wherå "Locaì queuå q¢ wilì bå thå queuå namå thaô  youò �           Pà wilì know¬ "remotå queuå q¢ wilì bå thå printeò namå �           oî  thå TurboDOÓ server¬  anä "c,n¢ wilì bå thå  remotå �           queue'ó networë address.           Tï  changå á queuå assignment¬  typå iî thå locaì queuå �           name®  Firsô  you'lì bå prompteä foò thå remotå  queuå �           name¬  followeä bù á prompô foò thå networë addresó  oæ �           thå  queue®  Typinç éNƒ~uÇFèƒ%Šø0ÿK+^;Ã}èr%FPè~'‹åë  ø0äHPèp'‹åè>éƒ~uÇFèW%‰Fè'%H+F‹^;Ø}èC%FPè\'‹åë è %HPèP'‹åèØ=éÕƒ~uÇFè%;F~è%+FPè+'‹åë3ÀPè!'‹åè©=馋F…ÀtÿN‚~tS‚>uè­$HH‹^;Ø~è¡$HHë‹FPèË&‹åëH ÷0äŠø0ÿ‰é8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ŒØŽÐ¼ü¾€Š„ÀtˆÁµFŠ when change complete Ãè Unable to free drive(s): ÃS‰å‹^Uè]‰^[ÜP.ŠC„ÀtèëóX�ÃSQR´Í!ZY[ÃSQR²ÿ´Í!tøZY[ÃPSQR$ˆÂ´Í!ZY[XÃ%NLU86 EXE 0�û´`MODE COM †ff �Å#MORE COM `u ¿NODEBUG COM bÏ0NOSTACK COM Fnm .ªPART EXE €TŠ Í^bPC-SWEEPCOM �ûÐ „PC-SWEEPDOC �û ZPC-SWEEPUPD �ûŸPCTOOLS EXE ªFú 6PREP EXE éTŠ ÚXZPRINT COM Pj— f“$.r2.q.nu-m.-l(,iÓ+hÆ*g *c”*Pc*Mù)L£)Kw)JB)f¿(H¿(D�(CS(B(AÝ'¾T.;„ù.u.ÿ¤û.ƒîyïƒÄ ]ÃUƒì‹ìÇF ]0äHŠn0ÿŠ^0íI‰F¡‰^»d™÷ûŠ_0ÿŠ`0öJ‰F3ÀP¸66PR¸û5P¸_5PS¸5P¸Š4Pÿv¸N4P¸Ä3PQ¸r3P¸Û2Pÿv¸—2P¸µ1Pÿv¸V1Pÿv3ÀP¸P¸E1Pèéì‹å‰FéëƒÄ]à]0ä@=¢]~Æ]èéXÿ‚>nt3Àë3À@¢n‚>ˆ t „Àt3À@ë3À¢é/ÿ ^0ä@=¢^éÿÆ^éÿ¡»d™÷û»ÿÿS»,S3ÛS�^S»Â6S‰Fè�‹å…Àuéëþ‹F»d÷ë£éÝþ¸î6P輋åèú=à‰FuÆ_éÁþƒ~ué¸þ‹F¢_é¯þ `0äHu¸ë¸¢`é™þÿ/00F0_0˜0Æ0‹ðƒþsÑæ.ÿ¤Ü0ézþUƒì ‹#TITLE "TURBODOS OPERATING SYSTEM TURBOPC BOOT ROM CHECKSUM UTILITY" #SUBTTL "COPYRIGHT 1986, SOFTWARE 2000, INC." ; ; COPYRIGHT 1986, SOFTWARE 2000, INC. ; ; VERSION: 01/07/86 ; MODULE "CKSUM" ;MODULE NAME ; #INCLUDE "EQUATE" ;SYMBOLIC EQUIVALENCES ; LOC Data# ;LOCATE IN DATA SEGMENT ; CKSUM: BYTE 0 ;CHECKSUM VALUE ; RES WORD 48 ;STACK AREA STACK == . ;TOP OF STACK AREA ; FNFMSG: BYTE ACR,ALF,"File not found",ACR,ALF,ABEL,"$" WREMSG: BYTE ACR,ALF,"File write error",ACR,ALF,ABEL,"$"    EOJMSG: BYTE ACR,ALF,"Checksuming complete",ACR,ALF,"$" ; LOC Code# ;LOCATE IN CODE SEGMENT ; BYTE "COPYRIGHT 1986, SOFTWARE 2000, INC." BYTE " (VERSION 01/07/86) " ;VERSION DATE ; START: MOV AX,DS ;GET DS-REG MOV SS,AX ;SET SS-REG MOV SP,&STACK ;SET SP-REG MOV DX,&TFCB ;GET DEFAULT FCB ADDRESS MOV CL,=OFFCN ;CL=OPEN FILE FUNCTION INT OPSYSC ;OPEN FILE TEST AL,AL ;FILE OPENED SUCCESSFULLY? JNZ __FNF ;IF NOT, CONTINUE MOV TFCB+33,=WORD 0 ;ELSE, SET RANDOM RECORD=0 MOV TFCB+35,=BYTE 0 __RDL: MOV DX,&TFCB ;GET DEFAULT FCB ADDRESS MOV CL,=RRFFCN ;CL=READ RANDOM FILE FUNCTION INT OPSYSC ;READ FILE TEST AL,AL ;READ SUCCESSFUL? JNZ __EOF ;IF NOT, CONTINUE MOV CX,=128 ;ELSE, GET RECORD LENGTH MOV BX,&TBUF ;GET DEFAULT BUFFER ADDRESS MOV AL,CKSUM ;GET CHECKSUM VALUE __CKSL: ADD AL,[BX] ;ADD RECORD VALUE TO CHECKSUM INC BX ;INCREMENT POINTER LOOP __CKSL ;CONTINUE MOV CKSUM,AL ;UPDATE CHECKSUM VALUE INC WORD TFCB+33 ;INCREMENT RANDOM RECORD JMPS __RDL ;CONTINUE __EOF: MOV AL,CKSUM ;GET CHECKSUM VALUE NEG AL ;NEGATE CHECKSUM VALUE MOV TBUF+127,AL ;STORE CHECKSUM IN LAST BYTE DEC WORD TFCB+33 ;DECREMENT RANDOM RECORD MOV DX,&TFCB ;GET DEFAULT FCB ADDRESS MOV CL,=WRFFCN ;CL=WRITE RANDOM FILE FUNCTION INT OPSYSC ;WRITE FILE PUSH AX ;SAVE RETURN CODE MOV DX,&TFCB ;GET DEFAULT FCB ADDRESS MOV CL,=CFFCN ;CL=CLOSE FILE FUNCTION INT OPSYSC ;CLOSE FILE POP AX ;RESTORE RETURN CODE TEST AL,AL ;WRITE SUCCESSFUL? JNZ __WRE ;IF NOT, CONTINUE MOV DX,&EOJMSG ;ELSE, GET END OF JOB MESSAGE JMPS __X ;CONTINUE __FNF: MOV DX,&FNFMSG ;GET FILE NOT FOUND MESSAGE JMPS __X ;CONTINUE __WRE: MOV DX,&WREMSG ;GET WRITE ERROR MESSAGE __X: MOV CL,=PBFCN ;CL=PRINT BUFFER FUNCTION INT OPSYSC ;DISPLAY MESSAGE MOV CL,=0 ;CL=WARM START FUNCTION INT OPSYSC ;DONE ; END START ÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿã>PèU‹åèÁãëQdžÛèÔ$¸Pè%‹åÿ†Û¸ Pèq‹å=‰†Õt=t@u惾Õtƒ¾Û |ȃ¾Û | ¸÷>Pè‹åènãè%HP3ÀPèÇ‹åè7�Äæ]ÃU�ìì‹ì R0ä=t¸ä=PèÏ‹åè;ã�Äì]ø?P轋åèR¸—P¸OP�†ŠP¸(?Pè+‹å…Àu�Äì]Ã�†ŠP¸—PèßD‹å3ÀP¸—Pèz;‹å…À‰†åy¸—P¸O?Pèk‹åè×â�Äì]øm?PèY‹åèHP¸Pè ‹åÆÿ3À»S‰†ß‰†áè$‹åè½#džédž烾á |é!dž㸠PèK‹å‰†Û@u‹†ã@= ‰†ã}¸PèÎ#‹ådžۋ†Û=t =tƒ¾ã |¾ƒ¾ã |¸›?Pè‹åè.âéþÛu ¸Pè�#‹åé°‹†á@Pÿ¶ß¸­?Pè–‹å¸PèÍ‹å»Sˆ†‰èÀ‹åŠž‰0ÿØ�ûÿ‰†Ýt ¸Ë?Pèe‹åéM‹†ß@ é8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ŒØŽÐ¼aº\±Íà„ÀuRÇ}ƺ\±!Íà„Àu¹€»€ Câû¢ÿ}ëÞ öØ¢ÿÿ}º\±"ÍàPº\±ÍàX„Àu º‹ëºaëºu± Íà±Íà File not found $ File write error $ Checksuming complete $�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ#TITLE ".CMD TO .COM CONVESION UTILITY PROGRAM" #SUBTTL "COPYRIGHT 1986, SOFTWARE 2000, INC." ; ; COPYRIGHT 1986, SOFTWARE 2000, INC. ; ; VERSION: 01/07/86 ; MODULE "CMDCOM" ;MODULE NAME ; #INCLUDE "EQUATE" ;SYMBOLIC EQUIVALENCES ; LOC Data# ;LOCATE IN DATA SEGMENT ; RES 96 ;STACK AREA STACK == . ;TOP OF STACK AREA SSSAVE: WORD 0 ;STACK SEGMENT SAVE AREA SPSAVE: WORD 0 ;STACK POINTER SAVE AREA ; SRCFCB: BYTE 0," CMD" ;SOURCE FCB RES 24 DSTFCB: BYTE 0," COM" ;DESTINATION FCB RES 24 CPYBUF: RES 128 ;COPY BUFFER ; LOC Code# ;LOCATE IN CODE SEGMENT ; BYTE "COPYRIGHT 1986, SOFTWARE 2000, INC." BYTE " (VERSION 01/07/86) " ;VERSION DATE ; START: MOV SSSAVE,SS ;SAVE SS-REG MOV SPSAVE,SP ;SAVE SP-REG MOV AX,DS ;GET DS-REG MOV SS,AX ;SET SS-REG MOV SP,&STACK ;SET SP-REG MOV DX,&CPYBUF ;GET COPY BUFFER ADDRESS MOV CL,=SDFCN ;CL=SET DMA FUNCTION INT OPSYSC ;SET DMA ADDRESS TO COPY BUFFER MOV SI,&TFCB ;GET DEFAULT FCB ADDRESS MOV DI,&SRCFCB   ;GET SOURCE FCB ADDRESS MOV CX,=9 ;GET LENGTH OF DRIVE/NAME MOV AX,DS ;GET DS-REG MOV ES,AX ;SET ES-REG CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;COPY FILE DRIVE/NAME MOV SI,&TFCB ;GET DEFAULT FCB ADDRESS MOV DI,&DSTFCB ;GET DESTINATION FCB ADDRESS MOV CX,=9 ;GET LENGTH OF DRIVE/NAME MOV AX,DS ;GET DS-REG MOV ES,AX ;SET ES-REG CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;COPY FILE DRIVE/NAME MOV SRCFCB+12,=BYTE 0 ;SET SOURCE FCB EXTENT=0 MOV DX,&SRCFCB ;GET SOURCE FCB ADDRESS MOV CL,=OFFCN ;CL=OPEN FILE FUNCTION INT OPSYSC ;OPEN SOURCE FILE TEST AL,AL ;SOURCE FILE OPENED SUCCESSFULLY? JNZ __SFNF ;IF NOT, CONTINUE MOV SRCFCB+32,AL ;ELSE, SET CURRENT RECORD=0 MOV DX,&DSTFCB ;GET DESTINATION FCB ADDRESS MOV CL,=DFFCN ;CL=DELETE FILE FUNCTION INT OPSYSC ;DELETE DESTINATION FILE MOV DSTFCB+12,=BYTE 0 ;SET DEST FCB EXTENT=0 MOV DX,&DSTFCB ;GET DESTINATION FCB ADDRESS MOV CL,=MFFCN ;CL=MAKE FILE FUNCTION INT OPSYSC ;CREATE DESTINATION FILE TEST AL,AL ;DESTINATION FILE CREATED? JNZ __DFNC ;IF NOT, CONTINUE MOV DSTFCB+32,AL ;ELSE, SET CURRENT RECORD=0 MOV SRCFCB+32,=BYTE 3 ;SET CURRENT RECORD=3 __CPYL: MOV DX,&SRCFCB ;GET SOURCE FCB ADDRESS MOV CL,=RSFFCN ;CL=READ SEQUENTIAL FUNCTION INT OPSYSC ;READ SOURCE FILE TEST AL,AL ;READ SUCCESSFUL? JNZ __RFNS ;IF NOT, CONTINUE MOV DX,&DSTFCB ;GET DESTINATION FCB ADDRESS MOV CL,=WSFFCN ;CL=WRITE SEQUENTIAL FUNCTION INT OPSYSC ;WRITE DESTINATION FILE TEST AL,AL ;WRITE SUCCESSFUL? JZ __CPYL ;IF SO, CONTINUE JMP __DFWE ;ELSE, CONTINUE __RFNS: DEC AL ;RETURN CODE=1? JZ __EOF ;IF SO, CONTINUE JMP __SFRE ;ELSE, CONTINUE __EOF: MOV DX,&SRCFCB ;GET SOURCE FCB ADDRESS MOV CL,=CFFCN ;CL=CLOSE FILE FUNCTION INT OPSYSC ;CLOSE SOURCE FILE TEST AL,AL ;FILE CLOSE SUCCESSFUL? JZ __SFCS ;IF SO, CONTINUE JMP __SFCE ;ELSE, CONTINUE __SFCS: MOV DX,&DSTFCB ;GET DESTINATION FCB ADDRESS MOV CL,=CFFCN ;CL=CLOSE FILE FUNCTION INT OPSYSC ;CLOSE DESTINATION FILE TEST AL,AL ;FILE CLOSE SUCCESSFUL? JZ __DFCS ;IF SO, CONTINUE JMP __DFCE ;ELSE, CONTINUE __DFCS: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "End of conversion" BYTE 0 JMP EXIT ;CONTINUE __SFNF: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Source file not found" BYTE ABEL,0 JMP EXIT ;CONTINUE __DFNC: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Unable to create destination file" BYTE ABEL,0 JMP EXIT ;CONTINUE __DFWE: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Unable to write destination file"  BYTE ABEL,0 JMPS EXIT ;CONTINUE __SFRE: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Unable to read source file" BYTE ABEL,0 JMPS EXIT ;CONTINUE __SFCE: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Unable to close source file" BYTE ABEL,0 JMPS EXIT ;CONTINUE __DFCE: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF BYTE "Unable to close destination file" BYTE ABEL,0 JMPS EXIT ;CONTINUE ; EXIT: CALL DMS ;DISPLAY MESSAGE BYTE ACR,ALF,0 XOR AX,AX ;SET RETURN CODE=0 MOV SS,SSSAVE ;RESTORE SS-REG MOV SP,SPSAVE ;RESTORE SP-REG RETF ;DONE ; DMS: PUSH BX ;SAVE BC-REG MOV BP,SP ;GET SP-REG MOV BX,2[BP] ;GET MESSAGE ADDRESS PUSH BP ;SAVE BP-REG CALL MSGBX ;DISPLAY MESSAGE POP BP ;RESTORE BP-REG MOV 2[BP],BX ;SET UP RETURN ADDRESS POP BX ;RESTORE BX-REG RET ;DONE ; MSGBX: PUSHF ;SAVE FLAGS PUSH AX ;SAVE AX-REG __L: CS MOV AL,[BX] ;GET MESSAGE BYTE INC BX ;INCREMENT POINTER TEST AL,AL ;LAST CHARACTER? JZ __X ;IF SO, CONTINUE CALL CONOUT ;ELSE, DISPLAY CHARACTER JMPS __L ;CONTINUE __X: POP AX ;RESTORE AX-REG POPF ;RESTORE FLAGS RET ;DONE ; CONOUT: PUSH AX ;SAVE REGISTERS PUSH BX PUSH CX PUSH DX AND AL,=0x7F ;STRIP SIGN BIT FROM CHARACTER MOV DL,AL ;OUTPUT CHARACTER TO E-REG MOV CL,=RCOFCN ;CL=RAW CONSOLE OUTPUT FUNCTION INT OPSYSC ;OUTPUT CHARACTER TO CONSOLE POP DX ;RESTORE REGISTERS POP CX POP BX POP AX RET ;DONE ; END START ""##é8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) Œ`‰&bŒØŽÐ¼`º¬±Íà¾\¿d¹ ŒØŽÀüó¤¾\¿ˆ¹ ŒØŽÀüó¤Æpºd±Íà„Àux¢„ºˆ±ÍàÆ”ºˆ±Íà„Àu}¢¨Æ„ºd±Íà„Àuºˆ±Íà„Àtêé‡þÈt驺d±Íà„Àt龺ˆ±Íà„ÀtéÔè  End of conversionéãèñ Source file not foundéÄèÒ Unable to create destination fileé™è§ Unable to write destination fileëpè~ Unable to read    source fileëMè[ Unable to close source fileë)è7 Unable to close destination fileëè 1ÀŽ`‹&bËS‰å‹^Uè]‰^[ÜP.ŠC„ÀtèëóX�ÃPSQR$ˆÂ±ÍàZY[Xà CMD COM�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿÃGIÇF‰F ‰^ ‹F=(}#‹^ ‹ðóÑàØŠˆ ‹v v‹^ ØŠˆÿFëÕ‹F (» S»(SPè%!‹å‹F (ŠuA0ÿS»(SPè!‹å ô0ä3ÛSPè•ý‹å ô0ä‹ðŠ^ˆœ½`Šõ0ÿSPèUó‹åƒÄ]ÃUƒì‹ì¸ÐP¸QP¸wAPèŸ ‹å¸ÐP¸çXP¸GIPèŽ ‹å¸P¸Ö`P¸½`Pè} ‹å‚>¼`t  õ0äÑø¢õ ôŠõŠö¢mAˆoAˆnAƒÄ]ÃUƒì‹ì¸ÐP¸wAP¸QPè: ‹å¸ÐP¸GIP¸çXPè) ‹å¸P¸½`P¸Ö`Pè ‹åÆFŠF0ä=}ŠF0ä3ÛSPè»ü‹åŠF0ä@ˆFëÝ oA¢ö0äPè¶ñ‹å mA0äŠnA0ÿSPèkò‹åƒÄ]ÃUƒì‹ì ô0ä=|3ÀƒÄ]Â>¼`t  õ0äÑø¢õ ôŠõŠöŠuA¢pA ¢tA¸P¸`aPˆrAˆsAˆqAè ‹å3ÀPè*ó‹å Y0äHt  uA0ä5ë3À¢ö¢uA0äPèñ‹å3.mb 12 .po 1 .pc 40 PATCH TO COMMAND.COM (09/29/85) ------------------------------- The following patch may be made to the COMMAND.COM of an MS-DOS type system in order to speed program loads from remote TurboDOS/PC drives which have large hashed directories. The file PCDOS210.CLI is COMMAND.COM for PC-DOS 2.1 that has the patches already installed, to use simply copy to command.com on your pc. The problems lies not so much in the time DOS takes to load the program but the ambiguous file search performed by the command line interpreter to find acted upon file types (COM's, EXE's, and BAT's). This patch removes the ambiguous file search and replaces it with up to three non-ambiguous file searches. The patch has been applied to IBM-PC DOS 2.10 and Leading Edge MS-DOS 2.11, both with positive results. The following patch examples can be made with the DOS DEBUG program. The offset addresses shown conform when COMMAND.COM is loaded under the debugger. The patch can be carefully installed, then written back to disk for testing. This patch CANNOT be may to the resident portion of COMMAND.COM in memory. If your DOS version differs from the addresses shown, then you can load COMMAND.COM under the Z80 TurboDOS MONITOR program and search for the following three bytes using the "where" command as follows: W AA AA AA These are the three instructions that poke "?" characters into the FCB file type field. It seems to be a fairly unique sequence of bytes. The address returned by the search translates to the code segment offset under DEBUG. The SEARCH portion of the code can be identified about ten instructions later. Best of Luck, John E. Lauber .pa ************************************************** **** ** SYMBOLIC REPRESENTATION OF THE PATCH** **** ************************************************** CODE LOGIC BEFORE PATCH: MOVAH,11;FUNCTION=SEARCH FIRST SEARCH:PUSHCS POPDS;COPY CS TO DS REG MOVDX,FCB;POINT FCB INT21 ORAL,AL;TEST RESULTS MOVAH,12;FUNCTION=SEARCH NEXT JNZENDSRH;NO FILE, CONTINUE CMP WORD PTR [BUFFER+9],4F43 ;BUFFER+9="COM"? JNZ NOTCOM;NO, CONTINUE CMP BYTE PTR [BUFFER+B],4D JNZ NOTCOM;NO, CONTINUE OR BYTE PTR [FLAGS],04;SET "COM" FLAG JMP DOEXEC;AND EXECUTE ; NOTCOM:CMP WORD PTR [BUFFER+9],5845 ;BUFFER+9="EXE"? JNZ NOTEXE;NO, CONTINUE CMP BYTE PTR [BUFFER+B],45 JNZ NOTEXE;NO, CONTINUE OR BYTE PTR [FLAGS],01;SET "EXE" FLAG JMP SEARCH;AND CONTINUE ; NOTEXE:CMP WORD PTR [BUFFER+9],4142 ;BUFFER+9="BAT" JNZ SEARCH;NO, CONTINUE CMP BYTE PTR [BUFFER+B],54 JNZ SEARCH;NO, CONTINUE OR BYTE PTR [FLAGS],02;SET "BAT" FLAG JMP SEARCH;AND CONTINUE ; ENDSRH:TESTBYTE PTR [FLAGS],01;"EXE" FILE? JZ NOEXE;NO, CONTINUE MOV WORD PTR [BUFFER+9],5845 ;SET BUFFER+9="EXE" MOV BYTE PTR [BUFFER+B],45 JMP DOEXEC;AND EX  ECUTE ; NOEXE:TEST BYTE PTR [FLAGS],02;"BAT" FILE? JZ NOFIND;NO, CONTINUE MOV WORD PTR [BUFFER+9],4142 ;SET BUFFER+9="BAT" MOV BYTE PTR [BUFFER+B],54 ; DOBAT:(CONTINUE WITH "BAT" FILE PROCESSING) ... NOFIND:(IF NO "COM", "EXE", OR "BAT" FILE FOUND) ... DOEXEC:(IF "COM" OR "EXE" FILE FOUND) CODE LOGIC AFTER PATCH: PGMLOAD: PUSHCS POPDS;COPY CS TO DS REG MOVWORD PTR [FCB+9],4F43;SET FCB+9 MOVBYTE PTR [FCB+B],4D;TO "COM" CALLSEARCH;LOOK FOR "COM" FILE JNZNOTCOM;IF FAILED, CONTINUE ORBYTE PTR [FLAGS],04;ELSE, SET "COM" FLAG JMPDOEXEC;AND CONTINUE ; NOTCOM: MOVWORD PTR [FCB+9],5845;SET FCB+9 MOVBYTE PTR [FCB+B],45;TO "EXE" CALLSEARCH;LOOK FOR "EXE" FILE JNZNOTEXE;IF FAILED, CONTINUE ORBYTE PTR [FLAGS],01;ELSE, SET "EXE" FLAG JMPDOEXEC;AND CONTINUE ; NOTEXE: MOVWORD PTR [FCB+9],4142;SET FCB+9 MOVBYTE PTR [FCB+B],54;TO "BAT" CALLSEARCH;LOOK FOR "BAT" FILE JNZNOFIND;IF FAILED, CONTINUE ORBYTE PTR [FLAGS],02;ELSE, SET "BAT" FLAG JMPDOBAT;AND CONTINUE ; SEARCH: MOVAH,11;FUNCTION=SEARCH FIRST FILE PUSHCS POPDS;COPY CS TO DS REG MOVDX,FCB;POINT FCB INT21 ORAL,AL;TEST IF SUCCESSFUL RET;EXIT WITH FLAGS SET ; ; FILL WITH NOP'S ; DOBAT:(CONTINUE WITH "BAT" FILE PROCESSING) ... NOFIND:(IF NO "COM", "EXE", OR "BAT" FILE FOUND) ... DOEXEC:(IF "COM" OR "EXE" FILE FOUND) .pa ********************************** **** ** IBM PC-DOS COMMAND.COM** ** SPECIFIC PATCH ADDRESSES** ** DOS VERSION 2.10** **** ********************************** CODE IMAGE BEFORE PATCH: CS:158D B411 MOV AH,11;FUNCTION=SEARCH FIRST CS:158F 0E PUSH CS CS:1590 1F POP DS;COPY CS TO DS REG CS:1591 BAEC2C MOV DX,2CEC;POINT FCB CS:1594 CD21 INT 21 CS:1596 0AC0 OR AL,AL;TEST RESULTS CS:1598 B412 MOV AH,12;FUNCTION=SEARCH NEXT CS:159A 7543 JNZ 15DF;NO FILE, CONTINUE CS:159C 813E712D434F CMP WORD PTR [2D71],4F43;BUFFER+9="COM"? CS:15A2 750F JNZ 15B3;NO, CONTINUE CS:15A4 803E732D4D CMP BYTE PTR [2D73],4D CS:15A9 7508 JNZ 15B3;NO, CONTINUE CS:15AB 800EC22C04 OR BYTE PTR [2CC2],04;SET "COM" FLAG CS:15B0 E9C701 JMP 177A;AND EXECUTE CS:15B3 813E712D4558 CMP WORD PTR [2D71],5845;BUFFER+9="EXE"? CS:15B9 750E JNZ 15C9;NO, CONTINUE CS:15BB 803E732D45 CMP BYTE PTR [2D73],45 CS:15C0 7507 JNZ 15C9;NO, CONTINUE CS:15C2 800EC22C01 OR BYTE PTR [2CC2],01;SET "EXE" FLAG CS:15C7 EBC6 JMP 158F;AND CONTINUE CS:15C9 813E712D4241 CMP WORD PTR [2D71],4142;BUFFER+9="BAT" CS:15CF 75BE JNZ 158F;NO, CONTINUE CS:15D1 803E732D54 CMP BYTE PTR [2D73],54 CS:15D6 75B7 JNZ 158F;NO, CONTINUE CS:15D8 800EC22C02 OR BYTE PTR [2CC2],02;SET "BAT" FLAG CS:15DD EBB0 JMP 158F;AND CONTINUE CS:15DF F606C22C01 TEST BYTE PTR [2CC2],01;"EXE" FILE? CS:15E4 740E JZ 15F4;NO, CONTINUE CS:15E6 C706712D4558 MOV  WORD PTR [2D71],5845;SET BUFFER+9="EXE" CS:15EC C606732D45 MOV BYTE PTR [2D73],45 CS:15F1 E98601 JMP 177A;AND EXECUTE CS:15F4 F606C22C02 TEST BYTE PTR [2CC2],02;"BAT" FILE? CS:15F9 741F JZ 161A;NO, CONTINUE CS:15FB C706712D4241 MOV WORD PTR [2D71],4142;SET BUFFER+9="BAT" CS:1601 C606732D54 MOV BYTE PTR [2D73],54 CS:1606 (CONTINUE WITH "BAT" FILE PROCESSING) CODE IMAGE AFTER PATCH: CS:158D 0E PUSH CS CS:158E 1F POP DS;COPY CS TO DS REG CS:158F C706F52C434F MOV WORD PTR [2CF5],4F43;SET FCB+9="COM" CS:1595 C606F72C4D MOV BYTE PTR [2CF7],4D CS:159A E83900 CALL 15D6;SEARCH FILE CS:159D 7508 JNZ 15A7;NOT FOUND, CONTINUE CS:159F 800EC22C04 OR BYTE PTR [2CC2],04;SET "COM" FLAG CS:15A4 E9D301 JMP 177A;AND CONTINUE CS:15A7 C706F52C4558 MOV WORD PTR [2CF5],5845;SET FCB+9="EXE" CS:15AD C606F72C45 MOV BYTE PTR [2CF7],45 CS:15B2 E82100 CALL 15D6;SEARCH FILE CS:15B5 7508 JNZ 15BF;NOT FOUND, CONTINUE CS:15B7 800EC22C01 OR BYTE PTR [2CC2],01;SET "EXE" FLAG CS:15BC E9BB01 JMP 177A;AND CONTINUE CS:15BF C706F52C4241 MOV WORD PTR [2CF5],4142;SET FCB+9="BAT" CS:15C5 C606F72C54 MOV BYTE PTR [2CF7],54 CS:15CA E80900 CALL 15D6;SEARCH FILE CS:15CD 754B JNZ 161A;NOT FOUND, CONTINUE CS:15CF 800EC22C02 OR BYTE PTR [2CC2],02;SET "BAT" FLAG CS:15D4 EB30 JMP 1606;AND CONTI   NUE CS:15D6 B411 MOV AH,11;FUNCTION=SEARCH FIRST CS:15D8 0E PUSH CS CS:15D9 1F POP DS;COPY CS TO DS REG CS:15DA BAEC2C MOV DX,2CEC;POINT FCB CS:15DD CD21 INT 21 CS:15DF 08C0 OR AL,AL;TEST RESULTS CS:15E1 C3 RET;EXIT WITH FLAGS CS:15E2 90 NOP ... ...;FILL FOR EXTRA BYTES ... CS:1605 90 NOP CS:1606 (CONTTINUE WITH "BAT" FILE PROCESSING) .pa ********************************** **** ** LEADING EDGE COMMAND.COM** ** SPECIFIC PATCH ADDRESSES** ** DOS VERSION 2.11** **** ********************************** CODE IMAGE BEFORE PATCH: CS:1459 B411 MOV AH,11;FUNCTION=SEARCH FIRST CS:145B 0E PUSH CS CS:145C 1F POP DS;COPY CS TO DS REG CS:145D BA402E MOV DX,2E40;POINT FCB CS:1460 CD21 INT 21 CS:1462 0AC0 OR AL,AL;TEST RESULTS CS:1464 B412 MOV AH,12;FUNCTION=SEARCH NEXT CS:1466 7543  JNZ 14AB;NO FILE, CONTINUE CS:1468 813EC52E434F CMP WORD PTR [2EC5],4F43;BUFFER+9="COM"? CS:146E 750F JNZ 147F;NO, CONTINUE CS:1470 803EC72E4D CMP BYTE PTR [2EC7],4D CS:1475 7508 JNZ 147F;NO, CONTINUE CS:1477 800ED92D04 OR BYTE PTR [2DD9],04;ELSE, SET "COM" FLAG CS:147C E9A701 JMP 1626;AND EXECUTE COM-FILE CS:147F 813EC52E4558 CMP WORD PTR [2EC5],5845;BUFFER+9="EXE"? CS:1485 750E JNZ 1495;NO, CONTINUE CS:1487 803EC72E45 CMP BYTE PTR [2EC7],45 CS:148C 7507 JNZ 1495;NO, CONTINUE CS:148E 800ED92D01 OR BYTE PTR [2DD9],01;ELSE, SET "EXE" FLAG CS:1493 EBC6 JMP 145B;AND CONTINUE CS:1495 813EC52E4241 CMP WORD PTR [2EC5],4142;BUFFER+9="BAT"? CS:149B 75BE JNZ 145B;NO, CONTINUE CS:149D 803EC72E54 CMP BYTE PTR [2EC7],54 CS:14A2 75B7 JNZ 145B;NO, CONTINUE CS:14A4 800ED92D02 OR BYTE PTR [2DD9],02;ELSE, SET "BAT" FLAG CS:14A9 EBB0  JMP 145B;AND CONTINUE CS:14AB F606D92D01 TEST BYTE PTR [2DD9],01;"EXE" FILE? CS:14B0 740E JZ 14C0;NO, CONTINUE CS:14B2 C706C52E4558 MOV WORD PTR [2EC5],5845;SET BUFFER+9="EXE" CS:14B8 C606C72E45 MOV BYTE PTR [2EC7],45 CS:14BD E96601 JMP 1626;AND CONTINUE CS:14C0 F606D92D02 TEST BYTE PTR [2DD9],02;"BAT" FILE? CS:14C5 741F JZ 14E6;NO, CONTINUE CS:14C7 C706C52E4241 MOV WORD PTR [2EC5],4142;SET BUFFER+9="BAT" CS:14CD C606C72E54 MOV BYTE PTR [2EC7],54 CS:14D2 (CONTINUE WITH "BAT" FILE PROCESSING) CODE IMAGE AFTER PATCH: CS:1459 0E PUSH CS CS:145A 1F POP DS;COPY CS TO DS REG CS:145B C706492E434F MOV WORD PTR [2E49],4F43;SET FCB+9="COM" CS:1461 C6064B2E4D MOV BYTE PTR [2E4B],4D CS:1466 E83900 CALL 14A2;SEARCH FILE CS:1469 7508 JNZ 1473;NOT FOUND, CONTINUE CS:146B 800ED92D04 OR BYTE PTR [2DD9],04;SET "COM" FLAG CS:1470 E9B301 JMP 1626;AND CONTINUE CS:1473 C706492E4558 MOV WORD PTR [2E49],5845;SET FCB+9="EXE" CS:1479 C6064B2E45 MOV BYTE PTR [2E4B],45 CS:147E E82100 CALL 14A2;SEARCH FILE CS:1481 7508 JNZ 148B;NOT FOUND, CONTINUE CS:1483 800ED92D01 OR BYTE PTR [2DD9],01;SET "EXE" FLAG CS:1488 E99B01 JMP 1626;AND CONTINUE CS:148B C706492E4241 MOV WORD PTR [2E49],4142;SET FCB+9="BAT" CS:1491 C6064B2E54 MOV BYTE PTR [2E4B],54 CS:1496 E80900 CALL 14A2;SEARCH FILE CS:1499 754B JNZ 14E6;NOT FOUND, CONTINUE CS:149B 800ED92D02 OR BYTE PTR [2DD9],02;SET "BAT" FILE CS:14A0 EB30 JMP 14D2;CONTINUE CS:14A2 B411 MOV AH,11;FUNCTION=SEARCH FIRST CS:14A4 0E PUSH CS CS:14A5 1F POP DS;COPY CS TO DS REG CS:14A6 BA402E MOV DX,2E40;POINT FCB CS:14A9 CD21 INT 21 CS:14AB 08C0 OR AL,AL;CHECK RESULTS CS:14AD C3 RET*EXIT WITH FLAGS CS:14AE 90  NOP ... ...*FILL FOR EXTRA BYTES ... CS:14D1 90 NOP CS:14D2 (CONTINUE WITH "BAT" FILE PROCESSING) END OF PATCH PROCEDURES 2 C706C52E4558 MOV WORD PTR [2EC5],5845;SET BUFFER+9="EXE" CS:14B8 C606C72E45 MOV BYTE PTR [2EC�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ  ; ; PATCH INFORMATION FOR COMMAND.COM ; PC-DOS VERSION 3.10 ; ; CHANGES THE AMBIGUOUS PROGRAM LOOKUP TO 3 CONSECUTIVE NON-AMBIGUOUS ; SEARCH FUNCTIONS AND CONTINUES IF A .COM, .EXE, OR .BAT FILE IS FOUND. ; ; THIS PATCH IS DESIGNED FOR TO BE INSTALLED WITH THE PC-DOS DEBUGGER ; "DEBUG.COM" AND IS EXTREMELY DIFFICULT TO PRODUCE. THE FOLLOWING IS THE ; ATTEMP TO OUTLINE THE PATCHING PROCEDURE. THE COMMAND.COM MODULE MAY ; WITH THE DIFFERENT VERSIONS OF PC-DOS VERSION 3 AND MAY REQUIRE SOME ; ADDITIONAL WORK TO FIND THE BEGINNING OF THE COMMAND LOOKUP ROUTINES. ; ; PATCH RESEARCHED AND DEVELOPED BY JOHN E. LAUBER. ; ; THE FILE "PCDOS310.CLI" CONTAINS A PREVIOUSLY PATCHED VERSION OF THE ; 3.10 COMMAND PROCESSOR. ; ; STEP #1 ; ------- ; LOAD THE COMMAND.COM PROGRAM INTO MEMORY WITH THE DEBUGGER. NOTE THE ; CURRENT CODE SEGMENT "CS" REGISTER. USE THE "R CS" COMMAND TO ADD 134H ; TO THE CURRENT CS REGISTER (CS=CS+134H). ; ; STEP #2 ; ------- ; USE THE "A 2346" COMMAND TO BEGIN ASSEMBLY OF THE FOLLOWING PATCH CODE. ; THE LXXXX LABELS ARE FOR CHECKING YOUR ADDRESSES DURING ASSEMBLY TIME. ; L2346: PUSH CX ; "PATCH" PUSH DX PUSH DI PUSH SI ; SAVE REGISTERS PUSHF ; SAVE FLAGS PUSH DX ; SAVE FILE SPEC POINTER MOV DI,DX ; FILE SPEC POINTER TO REG MOV SI,46E1 ; POINT BUFFER XOR DX,DX ; PRESET DEFAULT DRIVE CMP BYTE PTR [DI+1],3A ; DRIVE SPECIFIED? JNZ 2361 ; IF NOT, CONTINUE MOV DL,[DI] ; ELSE, LOAD THE DRIVE NAME AND DL,0DF ; MASK TO VALID NAMES SUB DL,40 ; REMOVE DRIVE NAME BIAS L2361: MOV AX,4700 ; FUNCTION = GET CURRENT DIRECTORY INT 21 POP DX ; RESTORE FILE SPEC POINTER JC 239D ; ON ERRORS, CONTINUE MOV BYTE PTR [46D3],0 ; CLEAR CODE CALL 23AD ; SETUP .COM TYPE INT 21 ; SEARCH .COM FILE MOV AX,8 ; SET .COM CODE JNC 238C ; IF FOUND, CONTINUE CALL 23B4 ; SETUP .EXE TYPE INT 21 ; SEARCH .EXE FILE MOV AX,4 ; SET .EXE CODE JNC 238C ; IF FOUND, CONTINUE CALL 23BB ; SETUP .BAT TYPE INT 21 ; SEARCH .BAT FILE MOV AX,2 ; SET .BAT CODE JC 23A4 ; IF NOT FOUND, CONTINUE L238C: MOV SI,46BF ; POINT FOUND STRING MOV DI,46D4 ; POINT FILE SPECIFIER MOV CX,0D ; GET LENGTH CLD ; DIRECTION = INCREMENT REP MOVSB ; COPY FILE NAME MOV [46D3],AL ; SET FOUND CODE JMPS 23A7 ; CONTINUE ; L239D: MOV DX,[4721] CALL 3159 L23A4: MOV AX,0 ; SET NOT FOUND RETURN CODE L23A7: POPF ; RESTORE FLAGS POP SI POP DI POP DX POP CX ; RESTORE REGS RET ; AND DONE ; L23AD: PUSH DI PUSH SI ; SAVE REGS MOV SI,3AEE ; POINT .COM STRING JMPS 23C0 ; AND CONTINUE ; L23B4: PUSH DI PUSH SI ; SAVE REGS MOV SI,3AF2 ; POINT .EXE STRING JMPS 23C0 ; AND CONTINUE ; L23BB: PUSH DI PUSH SI ; SAVE REGS MOV SI,3AF6 ; POINT .BAT STRING ; L23C0: XOR AX,AX ; ZERO REG MOV DI,DX ; FILE SPEC STRING TO REG MOV CX,80 ; LENGTH = 128 CLD ; DIRECTION = INCREMENT REPNZ SCASB ; SEARCH END OF STRING SUB DI,5 ; BACKUP TO FILE TYPE MOV CX,4 ; LENGTH = 4 REP MOVSB ; SETUP THE TYPE STRING POP SI POP DI ; RESTORE REGS MOV CX,13 ; ATTRIBUTE REG = CODE MOV AX,4E00 ; FUNCTION = FIND FIRST RET ; DONE ; ; STEP #3 ; ------- ; THE FOLLOWING BYTE FROM CS:23DB THROUGH CS:2400 COULD BE ZERO'ED ; OR FILLED WITH NOP'S (HEX 90). THEY MAY ALSO BE IGNORED IF YOUR'RE ; PRESSED FOR TIME. ; ; STEP #4 ; ------- ; USE THE "R CS" TO RESTORE YOUR CODE SEGMENT TO IT'S ORIGINAL VALUE ; (CS=CS-134H). YOUR DEBUGGER'S BX&CX REGISTERS SHOULD STILL BE SET ; TO THE PROPER LENGTH OF THE PROGRAM PROVIDING THAT YOU DID NOT USE ; ANY TRACE COMMANDS. FINALLY, USE THE "N NEWNAME.COM" COMMAND TO SET ; UP YOUR FCB FOR WRITTING, AND USE THE "W" COMMAND TO WRITE THE ; ALTERED COMMAND.COM MODULE BACK TO DISK. TEST THE NEW COMMAND.COM ; MODULE FOR PROPER OPERATION, THEN COPY TO YOUR BOOT DISKETTE FOR ; DEFAULT LOADING. ; ; YOU'RE DONE! é�± èЄÀu9SˆÑ†î0Ò´-Í!„Àu/X=€t.»àèBŠCŠ7CŠ0í�Ál´+Í!„Àu»òè<ë"»ë»6ë »Jë»jëèeè èiè\ëÍ SP»ãè ‰ÂXÐ[é3Š0äCŠ0öCŠ0íè]þÊt »åÓ€Ôëðã‰Â¸m÷áÑéÑéÈÐÃS¹µ1Ò÷ñÑàÑà@�êmwù�ÂmˆÁè‰Ð1Û0öCŠ—å)Ðw÷ЈÝ[ˆCˆ/CˆKKÃS»çÆ„ÉtöÁuþ[ÃSQRVW´²ÿÍ!tø_^ZY[ÃSQRVW´ ²ÿÍ!_^ZY[°töÐÃPSQRVW$ˆÂè€>~´t´Í!_^ZY[Xû< t< rþÃÆà$øS»:v P° è¸ÿXëó[ÃÆ~ÃÆ~Ê„Àt$<\tè˜ÿëè.CëéÃSU‰å‹^èC‰^][Ã.Š„Àt$<\tènÿëèCëèð è`ÿ° é[ÿ. éTÿ¸ÿÍ!øÿÍ!à /   \DOS date and time has been set\Cannot read TurboDOS date and timeCannot set DOS timeTurboDOS date has not been set Cannot set DOS dateEDLIN COM j� RGEXE2BIN EXE `u Vê FC EXE `ç ^Þ8FECHO COM O�ò:#TITLE "TURBODOS/PC PRINT FILTER FOR DOS FUNCTION 5" #SUBTTL "COPYRIGHT 1985, SOFTWARE 2000, INC." ; ; COPYRIGHT 1985, SOFTWARE 2000, INC. ; ; VERSION: 09/25/85 ; ; EDIT HISTORY: ; 09/25/85 JL - CREATED FROM TURBOPRN ; MODULE "FCN5PRN" ;MODULE NAME ; This is a sample TurboDOS/PC print filter, written to ; work with the most generic MS-DOS implementations. ; ; Its primary function is to intercept print output ; requests at the DOS level (FCN 5) and to pass them ; to TurboDOS/PC via C-function 5. This interception ; does not take place if the current print mode is "local" ; or "offline". ; ; A secondary function is to cause TurboDOS/PC to flush ; its print buffer whenever there has been no print output ; for awhile. This print filter makes use of the BIOS ; timer tick interrupt (INT 0x1C) for this purpose. ; LOC Code# ;LOCATE IN CODE SEGMENT ; BYTE "COPYRIGHT 1985, SOFTWARE 2000, INC." BYTE " (VERSION 09/25/85) " ;VERSION DATE ; ALIGN ;ALIGN TO WORD BOUNDARY ; I21DWD: WORD 0,0 ;INTERRUPT 0x21 TRANSFER DOUBLE WORD I1CDWD: WORD 0,0 ;INTERRUPT 0x1C TRANSFER DOUBLE WORD LOACNT: BYTE 0 ;LIST OUTPUT ACTIVITY COUNT ; ; INT 0x21 (MS-DOS FUNCTIONS) INTERRUPT SERVICE ROUTINE ; I21ISR: CMP AH,=5 ;FUNCTION NUMBER=5? JNZ __X3 ;IF NOT, CONTINUE PUSH CX ;SAVE REGISTERS PUSH BX PUSH AX PUSH DX ;SAVE OUTPUT CHAR MOV DX,=0xFFFF ;SET DX-REG=0FFFFH MOV CH,=0xFF ;SET CH-REG=0FFH MOV CL,=27 ;CL=SET/RETURN PRINT MODE FUNCTION MOV AX,=0xFF01 ;SET T-FCN FLAG INT 0x21 ;GET CURRENT PRINT MODE CMP BL,=2 ;CURRENT PRINT MODE=LOCAL? JZ __X2 ;IF SO, CONTINUE POP DX ;ELSE, RESTORE DX-REG MOV CL,=5 ;CL=LIST OUTPUT FUNCTION MOV AX,=0xFF00 ;SET C-FCN FLAG INT 0x21 ;OUTPUT CHARACTER CS MOV LOACNT,=10 ;SET LIST OUTPUT ACTIVITY COUNT POP AX ;RESTORE REGISTERS POP BX POP CX IRET ;DONE __X2: POP DX POP AX ;RESTORE REGISTERS POP BX POP CX __X3: CS JMPFI I21DWD ;CONTINUE ; ; INT 0x1C (TIMER TICK) INTERRUPT SERVICE ROUTINE ; I1CISR: CS CMP LOACNT,=0 ;LIST OUTPUT ACTIVITY COUNT=0? JZ __X ;IF SO, CONTINUE CS DEC LOACNT ;DECREMENT LIST ACTIVITY COUNT JNZ __X ;IF COUNT NOT EXHAUSTED, CONTINUE PUSH CX ;SAVE CX-REG MOV CL,=31 ;CL=FLUSH LIST BUFFER FUNCTION MOV AX,=0xFF01 ;SET T-FCN FLAG INT 0x21 ;FLUSH LIST BUFFER POP CX ;RESTORE CS-REG TEST AL,AL ;FLUSH LIST BUFFER SUCCESSFUL? JZ __X ;IF SO, CONTINUE CS INC LOACNT ;INCREMENT LIST ACTIVITY COUNT __X: CS JMPFI I1CDWD ;CONTINUE WITH TIMER INTERRUPT ; ; TRANSIENT PROGRAM ENTRYPOINT ;  START: MOV AL,=0x1C ;GET INTERRUPT 0x1C (TIMER TICK) CALL GETINT ;GET INTERRUPT VECTOR ADDRESS MOV DI,BX ;INTERRUPT VECTOR OFFSET TO DI-REG MOV SI,&I1CISR ;GET INTERRUPT 0x1C ADDRESS MOV CX,=16 ;GET COMPARE LENGTH CLD ;CLEAR DIRECTION FLAG REPE CMPS BYTE ;UTILITIY ALREADY INSTALLED? JZ __UAI ;IF SO, CONTINUE MOV I1CDWD,BX ;SAVE INTERRUPT VECTOR OFFSET MOV I1CDWD+2,ES ;SAVE INTERRUPT VECTOR SEGMENT MOV AL,=0x21 ;GET INTERRUPT 0x21 (MS-DOS FUNCTIONS) CALL GETINT ;GET INTERRUPT VECTOR ADDRESS MOV I21DWD,BX ;SAVE INTERRUPT VECTOR OFFSET MOV I21DWD+2,ES ;SAVE INTERRUPT VECTOR SEGMENT MOV DX,&I21ISR ;GET INTERRUPT SERVICE ADDRESS MOV AL,=0x21 ;GET INTERRUPT 0x21 CALL SETINT ;SET INTERRUPT VECTOR ADDRESS MOV DX,&I1CISR ;GET INTERRUPT SERVICE ADDRESS MOV AL,=0x1C ;GET INTERRUPT 0x1C CALL SETINT ;SET INTERRUPT VECTOR ADDRESS MOV DX,&START ;GET LAST BYTE ADDRESS INT 0x27 ;TERMINATE BUT STAY RESIDENT __UAI: INT 0x20 ;DONE ; ; SUBROUTINE TO LOAD AN INTERRUPT VECTOR ; GETINT: PUSH DS ;SAVE DS-REG XOR BX,BX ;GET INTERRUPT VECTOR PARAGRAPH MOV DS,BX ;INTERRUPT PARAGRAPH TO DS-REG MOV BL,AL ;INTERRUPT NUMBER TO BX-REG ADD BX,BX ;X2 ADD BX,BX ;X2=X4 MOV ES,2[BX] ;GET INTERRUPT VECTOR SEGMENT MOV BX,0[BX] ;GET INTERRUPT VECTOR OFFSET POP DS ;RESTORE DS-REG RET ;DONE ; ; SUBROUTINE TO STORE AN INTERRUPT VECTOR ; SETINT: PUSH ES ;SAVE ES-REG XOR BX,BX ;GET INTERRUPT VECTOR PARAGRAPH MOV ES,BX ;INTERRUPT PARAGRAPH TO ES-REG MOV BL,AL ;INTERR  UPT NUMBER TO BX-REG ADD BX,BX ;X2 ADD BX,BX ;X2=X4 ES MOV 0[BX],DX ;GET INTERRUPT VECTOR OFFSET ES MOV 2[BX],DS ;SET INTERRUPT VECTOR SEGMENT POP ES ;RESTORE ES-REG RET ;DONE ; END START �‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿtore a Set UpRetrieves a previously saved Set Up from a disk file.Reset PC/InterCommRestores PC/InterComm to its initial settings.Answerback message; now '%s'Specifies the answerback message.Send answerback message (the VT100 Ctrl-BREAK function)Sends the defined answerback message.%2nEnter the computer system name: %2nStoring > > >%2nSave the Set Up in what file (default is %s): vt%2nUnable to create '%s'%2nWrite error or disk full while saving.%2n%60x> > > Loading%2nLoad the Set Up from whaé��COPYRIGHT 1985, SOFTWARE 2000, INC. (VERSION 09/25/85) €üu+QSPRºÿÿµÿ±¸ÿÍ!€ûtZ±¸ÿÍ!.ÆD X[YÏZX[Y.ÿ.<.€>Dt.þDuQ±¸ÿÍ!Y„Àt.þD.ÿ.@°è9‰ß¾z¹üó¦t*‰@ŒB°!è‰<Œ>ºE°!è!ºz°èº Í'Í 1ÛŽÛˆÃÛÛŽG‹Ã1ێÈÃÛÛ&‰&Œ_ÃÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿred: %2nDo you really want to clear all tab stops? %20xV T 1 0 0 E M U L A T O R (Release 1.1)%n%12y%50xEXECUTE - Modify this item.%13y%50xHELP - Help on this item.%14y%50xCANCEL - Exit menu.%c %rItem is:%2n%18x%c %r%2nHelp is:%2n%r%50x%*yANY KEY - Return to menu._Û---Break Received------Carrier Lost------Carrier On---/Z[?6c[?10nile Option MenuHow to save when collecting text; now %[Manual%;Auto%;XON/XOFF%;Small%:Small XON/XOFF%] savingManual -- excess text is diˆÈþÀué€þÈtþÈtTˉ×.‹܃°î.‹܃Âì¨u4¨€t÷ŒØŽÀ.¡ÞŽØ¾ŠDˆÁ0ÀˆÅÎ(ȈÁ&Š8ÈsˆÁüó¤ŒÀŽØ0Àë°ÿé¬ÿ‰ÖŠ„Àtd.‹܃Âì¨uU.¡ÞŽÀ¿ŠD&ˆE0ÀˆÅ*&ˆEˆÁÏŠ üó¤.‹܃° î¹.‹܃Âì¨uâùë¨t0Àë .‹܃°î°ÿé=ÿLANTPCnàÐÿ¸ù)Y   ŒÈŽØ‹܃Âì¹Ð¸ÝHuýâøŽÞ&¡&£þ<ÑùuJˆá‹܃ÂìˆÄÐÈÐÈ%?ˆåƒ>ëu‰ëƒ>íu£í0íŠð»ùèLŠó»)èBŠö»Yè8‹ÜƒÂ°î°î°î°î‹܃Â0Àîºn´ Í!è"º®´ Í!»ä¸‰éÝýãƒu‰GƒÃâòËÚ¹dè°.è¹ è¹1À‡Ð÷ñ0RˆÂ´Í!ZÃIntercontinental Micro Systems, Corp. LAN-PC interface driver $ $�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ#TITLE "TURBODOS OPERATING SYSTEM TURBODOS/PC LOCAL DRIVE RESTORE UTILITY" #SUBTTL "COPYRIGHT 1986, SOFTWARE 2000, INC." ; ; COPYRIGHT 1986, SOFTWARE 2000, INC. ; ; VERSION: 01/07/86 ; MODULE "LOCAL" ;MODULE NAME ; RAMSEG == 0x0020 ;BOOTROM RAM SEGMENT ; LOC Code# ;LOCATE IN CODE SEGMENT ; BYTE "COPYRIGHT 1986, SOFTWARE 2000, INC." BYTE " (VERSION 01/07/86) " ;VERSION DATE ; START: MOV SI,&0 ;GET SAVED INTERRUPT 0x13 OFFSET MOV AX,&RAMSEG ;GET BOOT ROM RAM SEGMENT MOV DS,AX ;SET DS-REG MOV DI,&0x13*4 ;GET INTERRUPT 0x13 VECTOR MOV AX,&0 ;GET INTERRUPT VECTOR SEGMENT MOV ES,AX ;SET ES-REG MOV CX,=2 ;GET INTERRUPT VECTOR LENGTH CLD ;CLEAR DIRECTION FLAG REP MOVS WORD ;RESTORE ORIGINAL INT 0x13 VECTOR INT 0x20 ;DONE ; END START ÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿé8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ¾¸ ŽØ¿L¸ŽÀ¹üó¥Í PATCH PROCEDURES 2 C706C52E4558 MOV WORD PTR [2EC5],5845;SET BUFFER+9="EXE" CS:14B8 C606C72E45 MOV BYTE PTR [2EC�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ   0x%*yTransmitting file %s.%0x%*yCollecting for file %s. Used %u of %u characters.%2nName of file to transmit (default is '%s'): %2nUnable to open '%s'%2nCollect into which file (default is '%s'): %2nUnable to %screate '%s'open or %2n---Write error or disk full------Collection Buffer Full------Write error or disk full while collecting---%n---End of Text---%50xANY KEY - next screen.---Collection in Progress---history.vtscreens.vt---Cannot open save file------Write error or disk full while é9�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ŒØŽÐ¼6º€±¸ÿÍ!ŒÚ±3¸ÿÍ!² ¶ÿ±!¸ÿÍ!„ÀtLþÀuCº6´ Í!²ÿ´Í!ˆÂu².:t:¶ÿ±!¸ÿÍ!»€Š„ÀtÛˆÁµCŠ$ˆÂQS´Í![Yâïëĺ‹ëºÖ´ Í!¸ë¼6º±!¸ÿÍ!º_´ Í!1ÀÍ Console attached to master processor $ Console detached from master processor $ Console already attached to master processor $ Non-privileged user $ Remote console driver not present $k number error%n short block write error, disk full?%n checksum error%n duplicate block%n sequence error%ní1%2nDefine which function key): %sF%dShift-%2nEnter the string to be sent: Strings sent by function keys are:%2nF%u%4x'%s'%n%40xShift-F%u%50x'%s'%nÿÿ%rYesNo Please enter 'Y' or 'N'%n'%s' is not a decimal number.%n%d is not in the range %d to %d. Cancelled%n%né} €üKt.ÿ.« UWVRQSP.Œµ .‰&³ [X;ÃtŽÓ¼€»ÿÿ´HÍ!�ûYrp´HÍ!rjØ6‰g �ëY6‰± ŽÀ´IÍ!èu;· t<º9 ¸=Í!r?‹ØºÀ�€.3ɸBÍ!¹N�ޱ ´?Í!P´>Í!Y�ùNuè:6;· u 6Æ2 6ÿ¯ ë6Å6³ Çÿt�ùœ�D6޵ .‹&³ X[YZ^_]Ï.ޱ ¹N�3öéfº =t=tºŸ=t º•= tºˆè´ëŒÉŽÑ¼€Í!rδMÍ!.£l éûŒÈŽØ´ Í!÷3 ÿÿu%3íÆw Æw ƒ>s tÇs ÿÿ€>k ué ùËèôºqè]¸ Í!$_r tƒ>s uºõèëþº è€>r uÅ« ¸!%Í!.¡, .£¸LÍ!Çs ޽ ´IÍ!‹* ´PÍ!¡l €>k u3ÀÆk ÿ.& .�& .�( X¿€¹@ó¥´QÍ!.‰* ´PŒËÍ!.Çs �.Æk .€>k t0»ÿÿ´HÍ!�ûqséIÿ´HÍ!r÷.Æk .£½ Ø.‰g �ëQ.‰c ŒÈŽÐ¼€ŽØè³3í¸ÿÿ‡u =ÿÿt´.Í!ƒ>s ÿué%ÿèÍèIþ;· u èª;i tÆ2 èMè/þ;· u è�;i tèëé¸7Í!ˆ¿ €ú/uÆÀ \Æ2 ¾¹ ¿±,Žc ü¹ó¥¡g £ÿ.a èËP Àu´Í!þÀSŠØÍÐÀÐÀ$uþÀþÀ:Ø[v Àë3ÀXÃèË3Û‹o ‹:Êt´>Í!ˆC:ît´>Í!ˆ.ƒÃ¹´>Í!CâùÃSP´QÍ!ŽÛ¡.£0  Šà£X[ÃûWQPŽÝ‹D.ˆ&¿·¹ƒÆ ó¤XY_èÀÿRè&ZA¢¬öÄ€t ö€u鸾“öÄt¾—­£ž­£ �çÿƒÿ v¿ ‰>. Ñ狽ç‡úèæº›èàö€t º¯´ Í!뺥èÊ€>2 tèzërºù踸 Í!è­ ´s tÇs ÿÿƒ>. tƒ>. uÆw ƒ>s tÇs ÿÿŠÄ‹×èϺèVº¥èP°ëëèéçýSP´QÍ!¡0 ŽÛ£X[ú¼éúüº- e èWþuïèº=€>e uºEèºRè ¸ Í!ú­PSRV‹ò¬P$<0r<9w,0˜Ñà»Ø‹èßÿëŠÐ´Í!X¨€tØ^Z[XÃEº9 ¸=Í!s=uºßé„üè‡ÿë勨ºÀ3ɸBÍ!r¹Î3Žc º´?Í!œ´>Í!�r�ùÎ3t¸º èVÿ뱎c ¾¹*üÑé3Ò­Ðâûúž¸"%Í!º™¸#%Í!ºâ¸$%Í!Ã"*3?CRVbrz…�­Â3ÊÖÜáèíóWrite protecôBad uniôNot readùBad command DatáBad call formaôSeeëNon-DOS disëSector not founäNo papeòWrite faulôRead faulôDisëreadwrit e5writinç drive A Š device $ COMMANÄ allocation  file rror Cannot emorù batcèInserôAbort, Retry, Ignore? 0File3table bad¬0Invalid1.COM091.COM disk in drive A default drivå0and strike any key when ready°0Terminate8 job (Y/N)? EXEC failure°E5in EXE4°Program too big to fit in m7°0Bad or missing Command Interpreteò0No free4handleó0M73eµ06load1, system halteä06start1, exiting°2or4name°,ÿÿÿ_:/%PIPE1.$$$_:/%PIPE2.$$$ü €\l‘-/ƒdPATH=COMSPEC=/COMMAND.COM¼€ŒÈÈ£½ ¡Œà ŒÇ Œ» £g -Q£c ¡, ÀtþŠë ¸à ±ÓèŒÚ£ ¸7Í!ˆ¿ €ú/u Æg\�Æî \¸!5Í!‰« Œ­ º€¸!%Í! \¢e @<@tý¿ ¾}   ¹�ó¤ü´:£î £u¢Cè¹ù¾€¬ŠÈ2íãC¾�¬< t< t:¿ u4Iã)¬ Í!ë4�2ö€Ê¸DÍ!‹Ó[[Q¹3Û´>Í!Câù‹Ú´EÍ!´EÍ!´EÍ!´>Í!YãVéXÿÆŠ¸à ±ÓèŒÚ£ ÆDÿ ^Y‹>‹¬I< t < tªãëñVQ¾g¹ŠEÿècuFI󤋋¸=Í!r ‹Ø´>Í!Y^ã-éÿº�´ Í!¾g‹>‹¹ó¤ëäéèþþr €>…ÿuÆ…âë€>r t#´PŒÛÍ!¿ ¸ž«ŒØ«¸™«ŒØ«Œºm¸.%Í!¡£, Œ¡£o Œ Œ$ Œ( ¿9 ‹6‹€>Št¾¶WèË‹÷_s‹6‹¬ª Àuú»½´JÍ!€>Šu» ´HÍ!è�÷èÜ÷‰i ¡g -Y�£± èaó‰· €>…u_»´HÍ!rF£3 ŽÀ3ÿ€>uu ´Í!A¢u¾u¹ó¥¸ÿÿ± ó«ºu¸=Í!r‹Ø´>Í!ë,Ž3 ´IÍ!Ç3 ¸)£†¡c £ˆÿ†ƒ>s uºÔ´ Í!é7ô€>¿ /ts ÿué°üŒÈŽÐ¼v/ŽÀ6޳,û6Æ+€6Æœ+€ ít 6Ç+ ë€>q t º,´;Í!€>x t €>w uè Æk Æq ŒÈŽØ+µ,º÷â Òt¸ÿÿ£Ð,޳,ön ÿtè~rè$ ´Í!6¢Ã,ön ÿtègrèõ öw ÿté3öw ÿtéÌÆ& ÆO ÆN ÷3 ÿÿtéƒ>s t¾ÿÿ‡6s ¿ž+3ɬªA< uùIˆ�+é3º+´ Í!Š+2íƒÁ¾+¿œ+ó¤éVW¿í,0ªè1 ª< t <%uô&ÆEÿ=¾í,èW‹÷_s¾í,¬ Àt< t <=tªëð°%ª^< téœèî <%t< ué˜,0r¢< wž˜‹ðÑæWŽ3 3É‹Á‹ùIò®þ&‹5_ƒþÿtf¬< taªëøº~%6ÿ½,t#Ž3 ´IÍ!Ç3 Æw Æw ºg%èïéþèç¸ Í!éþèGrÁ¿ž+èn <:uèg < uùè` ÷3 ÿÿuçéêýèR <%uéZÿª< uñ�ïŸ+‹Ç&¢�+è9 èýön ÿt ºž+è–è…èKté]¾ž+¿ì,¸)Í!<t<ÿuéÔ鮊¢Ï,° ¹ Gò®° *Á¢ì,¿�3ÉV¬ª< àúöш€^èq£Æ,¿\¸)Í!¢Ä,¬:·,t < tè uðNèO£È,¿l¸)Í!¢Å,è>£Ê, È,£Ì,€< t Fè+ Ì,ëñ ì,ŠÏ, Òté‹þÈuO޳,ƒ>s ÿtéªýé"ý“Ã3Ûè´ :·,uó�Ë€Fè¦ < tçFè ¿8¹�ò®u ¸Óà ØëÓëÑVBAPWºÂ&éܾ*µ¿ì,Š ã2ó¦Ÿñž¬¢Á,­uì‹Ð€>Á,t  Ä, Å,<ÿtÍè‚ÿÒéŒüé…üþÊþÈt÷ÆÂ,ŠÏ,ˆì,ÆÁ-Rºì,èåZsþÁ-ë�èš°?¿õ,ªªªºh-´Í!èé ‹÷¿b,Æ€>Á-téðÇõ,COÆ÷,Mè9u€Â,éÓÇõ,EXÆ÷,Eè!u€Â,é»Çõ,BAÆ÷,Tè uK€Â,ë0´ºì,Í!ÀÃ������������������������������������ºh-´Í! ÀtèéÃ鮺,´;Í!޳,Æq ¿b,‹ÖŽ ¬ Àt2Ûª Àt <;t¬ëôé‘&ÆEÿ;NŠ\ÿOSVR‹ò2Ò€|:uŠ€ê@ˆì,Wè‘ _sº›(è*Z^[†\ÿ´;Í!ˆ\ÿ6޳,þq r˜éøþ޵,´IÍ!ûÿÿ´HÍ!´HÍ!&£½ £µ,‹ØŒÈ+ú÷â Òt¸ÿÿ£Ð,Ãèꎳ,&Æw &Æw &÷3 ÿÿuè®ÿ»´HÍ!&£3 è«ÿ&Ž3 Šh-3ÿè 3À‹ÈIò®O ¸,&:Eÿtª¾i-è ¸ÿÿ‹ß¹ ó«èø¾ž+¿* ¹ èJ< t#ã &Ž3 &‰?CC¬è<tª< t ëó° ªãÙIëÖ2Àª3À£5 £7 ƒ>s ÿuÇs ðÿéJú襀=tŠEÿè°t ¸,ªë  h-@ª°:ª¾i-èˆ èŽµ,´IÍ!޳,&þk &Æq ¿\‹÷¹Ró¥ºb,» ¸KöÁ-ÿtéãÿ.¹,º¼%è³éßùƒ>s t�>s ÿïð޳,¢q Ã÷×,ÿÿuºî%ëÓ Ö,:Õ,tèx‹6×,3ÿ脺ª&è|´6Š\Í!=ÿÿtÊ÷á÷ã‹ú‹ðèfº´&é^Rºü ´AÍ!º ´AÍ!3À£w Æn ZúÝ(ëº)èÚÿéoÿ޳,þx ´Í!A¢ »ü ˆ‹Ó3É´<Í!rÕ‹Ø´>Í!º ´<Í!rƋش>Í!è*Æn ‹6y ƒ>s ÿuÇs ðë#Æn ‹6y ¬<|uw‹ ¸=Í!rŒ‹Ø°ÿ†G¢¿ž+3É€< uépÿ€<|tø¬ª< t8A<|uõ&ÆEÿ I6ˆ�+N‰6y ‹ Q3ɸ<Í!Yr¸‹Ø°ÿ†G¢‡ ‰ ë 6ˆ�+N‰6y è¶éÎúèýþ�>s ðuÇs ÿÿékøŽ³,3ɾž+‹þ¬< t<"u÷þÅëó‹÷¬<"uþÍt ˆGþÁ¬<"uöþÍ<>u2€<>u¬&þN èæ< u &ÇO ëhW¿O ¬< tDèÕt?:·,t9ªëí<w t¿{ &‰>y ¾ž+è[¬ª< uúˆ�+&€>w À>·,/tÆ-té ¾\¿h-‹×¹ ó¤´Í!ºv(Pèiè"èPX Àu ö€-€té¸ü´ÆUÿÆ[�r&t°?¿]¹ óª‹6È-¿\¸)Í!´ºUÍ!Pè¡XëºUÍ!þÀuéoüé¡ÿ×,¾p-èÒö·-uì¾{-ötº£'èñëèæ¡ˆ- Àtv¿Ù,P¸ «X‹Ð±Óè$·èȰ-ªŠÂ$è¾°-ªŠÆÐèPŽ-3À‹Ø‹è¹ ÑæÑוèO•“èJ“âî¿Ù,¹’è'“è •è 3ÀªºÙ,éÍPŠÔèZŠòÐêÐêÐêÐêèŠÖ€ât±þÍ"Í€Ê0*ъªÃÀ'†ÄÀ'†Äú–)¾€¬ Àtèb< tè!ýs €>Æ-tºõ'é«ú¹ ¾]¬Æ-t뛋6»-¿lèã¸)Í!€>m º–)t´º\Í!PèkXº×%þÀuÅéú¾�è¸< uéîè¸=Í!ºî%rã‹ØŽµ,3Ò6‹Ð,´?Í!‹Èã=S»´@Í![r ;ÁtäI;Át)»¸DÍ!ö€u麎³,€>q t º,´;Í!2ÀèÇùÃ5 ƒ7 Sºf 6‹ä.´?¹Í![‹Èr ã f <u(Ž3 ´IÍ!Ç3 èŒ ° �>s ðÿuÇs ÿÿÆn ìètúNÃ< t<=t <,t<;t< þ�èßÿ€>\t FF‹ÞèÑÿ;Þu < tºÂ&é"ùèÐý¿U¸ÿÿª3À««ª°ªG¹ °?óªºh-´Í!ºU´Í!PºÐ'èµ \@<@u Ã,Aè® X   Àt ºç'è™éƒýºâ'è�¾p-¹ ¿Ù,‹×ó¤¸ «3Àªé~ècýèé]ýº­'èj¿Ù,´0Í!P2ä± öñ±Òà ĹŠÐè�ý°.ªXŠÄ2ä± öñ±Òà ĹŠÐèsý3ÀªºÙ,é0èér&€=u ḛ̀>è ë8&ŠG Àt0<$tè ëï&ŠG»Õ) ÀtƒÃèE:t€?uñëÓWÿW_ëÈúÏ)éÖ°=ë°ë °>ë°<ë°|éÆ ¾€¬2䣹-‰6»-ÆÊ-ÆÆ-‹6»-‹¹-‹Öã;QVè¸ô£½-[+ÞYË‹Öã)I¬èúuþÆ-Y+ù‡ùÀ< t ¬è7è?<=uðþ€¬ Àtè¬ü< ÃŽ³,&Ž 3ÿè &€=u÷ð=ë2À¹ò®Ãr u &Å« ¸!%Í!6޵,´IÍ!¸LÍ!èý¸=Í!r‹Ø¸DÍ!ö€u ´>Í!ºº(è¹ë)�2ö€Ê¸DÍ!S¹3Û´>Í!Câù[´EÍ!´EÍ!´EÍ!´>Í!6޳,¡£o ¸ÖPË»¸DÍ!ö€t4öÂt/¸)5Í!ŒÀ=�w#´ 3ÛÍ´ÍŠÔþʶ3À‹È·´Í3Ò·´ÍþÓ)¬ŠÈ2í´¬ŠÐÍ!âùáÆ, Ì,ºÿ&u5¾�èõú< tF­=: uéÆþèKüöÊ-u´;Í!sWé‚ùèu´9Í!sIº (é"ôº–)ëø¾�è¸ú< tñ¡Æ, Ì,ºÿ&uâè üöÊ-ÃèÞÿu´:Í!sº&(éíóºà&è�¸ Í!è�øÃ¿,ŠÂ@<@uÃ,þÀªŠ&¸,°:«‹÷´GÍ!rù¬< tªâø¬< tŠà°.ª†Äª±¬< tªâø2ÀªÃÆw �>s ÿuÇs ÿÿéaí€>þ ÿtOºh-´Í!ºÿ ´€>þ t´Æþ Í! Àu¿¾h-¿y &‰>ü ¬@<@t &€>x t´:«èuÿ&ÆEÿ ‹ü €?t‰‹ó¬< uû‹Ö¾¡ ¿ž+3ɬ<%uŠ&û :$uFV‹ó¬< tAªë÷^ëãªA< uÝI6ˆ�+‰ü ön ÿt&ÆEÿ$ºž+è�&ÆEÿ éêîéê,ºì(�>s ÿuÇs ÿÿé¤ò¾�3ÉŽ³,¿y 2À&¢x &†w ÀuË&‰>ü &Æþ ÿèù­<%um&ˆ&û èù< t$­=INt=inuVèýø¬<(uNèõø<)u޳,é·þ¬< tB<)tª<*t¿¡ ¬ª< uú&þw &ƒ>s ÿu&Çs ÿ&€>þ u¿ÿ ¾y €|:uþx ¸)Í!ÃXºÝ(é¼ñÆÂ,¾�èRø< të‹î¿*µ‹õŠ Gã3ëu¬&Š%G:Ät€Ì :ÄâîŸù‹GGžuÛ¬< tºè"øuÑèøÿãöÂ,ë¸V3ɬ< t¡è øtAëó<=t< t‘¬ëõ¬<=u‰èê÷< t‚_ó¦t€|ÿ t¼¬< t·èÛ÷uö°ÿë¬èÑ÷uí2Àë¿h-¸)Í!´‹×Í!öÂ,ÿtöÐ Àtééêè¢÷‹Î�é�(€Š€ˆ�+¿ž+ó¤° ªéí· 2Û¬< t¤è�÷t ,0†ÃöçÆÃëꎳ,Š&l 2À:ãs¦þÈ뢎³,¡3 ©ÿÿt3ŽÀŽØ3É‹Á‹ùIò®‹÷FF¹ ó¥ƒ=ÿt‹5Çÿÿ6޳,¬< uû€<t&‰5ÃŽ³,÷3 ÿÿtó3Ò‰5 ‰7 è~¿]¹ ° ò®uAƒé ÷Ù6‰h-è“ö<:t!èŒö< uè…ö<:t÷3 ÿÿuêè=ºË(éð¿]6‹h-QèböY &:uë, &:uÐGâèèKö< wÆ< tè@ö< uùè9ö.‹ä.´>Í!ÃŽ3 3Ò¸=Í!r6£ä.‹Ø‹5 ‹7 ¸BÍ!Ëڊ,@ùÃè�r޳,uÆn ÃÆn à€<r º‚èN é=ô޳,Šn ºq)ë(ézïèW¸3r u²Í!Ã2ÒÍ!Ê€ Éuá2ÀÍ!ŠÚº\)è ºW) ÛuºQ)é è"¸.r uÍ!ÃþÈÍ!Ê€ Éu®´TÍ!ŠØºf)ë˾]¬ w uè è*Y[XZÀ>& tº& ¸=Í!ºî%r ‹Ø°ÿ†G¢Ãééì€>O t6€>N tºO ¸=Í!r 3Ò3ɋظBÍ!ëºO 3É´<Í!º4&rȋذÿ†G¢À>#.ÿt ‹6Ö.‰6$.Æ#.ÿ3í‹6Ö.³+¿‚.è–öÇ€t#öÇuðèìè¯ò¿ì,¸)Í!»¬-¾í,‹>(.èŠé‹è¸3À¢Î,£Ò,¢Ï,‹6$.‰6Ö.èÀté‹éP3À£Ì,¢Å,¢ß.¢Û.¢Þ.£×,¢Ü.¢Ä,¢#.£‚.£Ë-£+.£«-£h-£(-H¢Ô,¢".¢Æ-¾�³+3í¿‚.èrGöÇ€tÆß.öÇt .Ê, .Ì,ëÝöÇ€uþÅ,V¡æ.¾‚.+Æ¿Ë-Ç£È-ˆÇ-Aó¤ˆ>Ê-ÇÊ,^믠ß.¢Ä,ÐàÐà¢Ø.º–) Å, Àt<vé“ë½Æ-<u  Ã,A´:ÆF¿Ë-«ÇÊ,ÆFÆFè�€~u€>Ì-:u€N¿Í-ÆFèu‹~€=uºõ'€}þ:uªÆF€NèYºÿ&¡Ì,=€t”©t´TÍ!޳,2ä£u ¸.Í!3í¾�³+¿‚.èöÇuõ .Ê,÷Åu €>Ä,tÆÞ.V¡æ.¾‚.+Æ¿+.Ç£(.ˆ'.Aó¤ˆ>*.^‹Åè è¬çèè]é›è‹6×,3ÿèuﺘ&èmé‹ä€>Ä,u[º+.èbèBïºî%é¯V¡æ.¾‚.+Æ¿+.Ç£(.ˆ'.Aó¤ˆ>*.^‹ÅèÇèSçèÁ€>Ä,u 3À¢Î,£Ò,¢Ï,‰6Ö.¿,½&.èž‹6(.À>ß.uë€3í‹6Ö.³+¿‚.è:öÇ€tëöÇuðè�ÿ¿\¸)Í!¡+.€ü:t°@,@¢\´舜è6ð�téTÿ2À†Ô, Àt ¹ ¿«-¾h-ó¤2À¢Ú.‹>(.¾i-èö€>Ä,uö*.t º+.è‹èpîèQ€>Ä,u è rÆÎ,€>Ä,t èÆö#.ÿtéìüè uÆÏ,ë¦éDÿ´ö*.u äÃP´ºh-Í!Xº\Í! ÀÃÆÂ,º+.¸=Í!rð‹Ø‰.¸WÍ!‰à.‰â.¸DÍ!€â€ˆ�.t €>Û.tº*)éM‹.‹Ð,‹Ò,+Êuè@€>Ý.ue‹Ð,޵,´?Í!rU‹ÈãQ€>�.u€>Þ.t‹Ñ‹>Ò,°Žµ,ò®uþÂ,A+Ñ‹ÊÒ,‰Ò,;Ð,r èë€>Ý.uë�€>�.t€>Â,t�‹.´>Í!À>Ï,uø Ê,èòt6‹Ò,;Ð,u è¢tùÃ3ÛŽµ,ÇÿÒ,ÆÚ. Ü.2äÒ,r=tcèvuÔ€>Ü.tW‹.‹â.‹à.€>Ø.t1´,Í!ÐáÐáÑáÑáÑáÐî ÎQ´*Í!�鼆éÑáÐæÐæÐæÐæÐæ€Õ ÖŠõY¸WÍ!´>Í!ÿ×,þÏ,øÃ‹.èæÿºË-´AÍ!Ç×,ëè Ä,PèX:Ä,ÃÆÝ.€>Î,té€è<èu€>�.u€>Ä,ºJ&t[ÆÚ.¸=€>Ú.u´<3ɺË-Í!º4&r>£.ÆÎ,‹Ø¸DÍ!ˆ!.ö€t2 Ê,$ u  Þ. Û.tz ¨t¸D2ö€Ê ˆ!.Í!ë ëuÆÞ.€Ø.€>Ú.uè‚u€>�.uºn&è÷ÇÒ,þÝ.Ë.3ɇÒ,ãóþÜ.€>Ú.uU3ÒŽµ,´@Í!ºÿ%r+ÈtÓö!.€tö!. u €>Ø.u?It<ºµ)è¢  þÏ,€>Î,t‹.´>Í!ºË-´AÍ!ÆÎ,éü3҇ѸBÍ!€>Â,t´@Í!Ã$ zP$¢Û.X$¢Þ.Ø. Þ. ÀÀ>Æ-ÿu ¿,½Æ-èÒè°ì2À†". Àué‹6È-¿(-¸)Í!¡Ë-€ü:t°@ŠÞ.,@¢(- Ê-Š&*.% Àt:Äu€>ß.tþ#.2Àë4"ÄÐè ß.¢Ä,ÐàÐà¢Ø.€>Û.u$¢Þ. Éu Àt‹Ò,ã°3ÿ޵,ò®uO‰>Ò,»i-€>Ä,t»¬-¾)-‹>È-¹¬Í!ö€uAöFt;‹V€þ:t²@€ê@è˜ñ‹ÕƒÂŠ~€ç€ÿu‹v€|þ:uÆFëÆFNë^€ÿuÆFô;Í!r&èNå‹ú3À‹ÈIò®O ¸,ÆF:EÿtªÆF€Nè<ÃÆFŠ~öÇtóÆF‹v€<t €<.t€|þ:tÆFN2Û†´;Í!†rèôäÃé+ê‰~€F ¸?.¹óª†Äª†Ä±óª2ÀªÃQP¾+.¿Ë-ŠÃ,Šé€|:u­,AŠÈ€}:uŠGG,AŠè:éu è t‹Dÿ‹MÿP"ÁXu<.u äë€ù.u íXYæu®€|ÿt¨ëõRQSP»Ù,ˆ‹Ó»‹Ë´@Í!X[YZÃPS°$»ëP° ëP°$ëP3ÀS»QW‹ú¹ÿÿò®÷ÙII´@Í!r ;Áu_Y[XÃŽ³,ºÿ%&€>w t &Æw º)éóã3À£æ.¢é.¢ê.ŠøœW3ɬè‡êu< tö< tò†ê. Àtêéêèßí:Ãu€Ï€ëÛ< uéÐ:·,uéÑ€<:uèþ¬èú‰>æ.Æè.é…‰>æ.Æè.èâåuP Ã,Aè×°:èÒX‰>æ.Æè.<.u þé.Æè.ÿé.t´°?*&è.rR†áã †á葆áâ÷†áèˆåu€ÏöÇu<‰>æ.ÿæ.Æè.ÿÆé.èi¬è%íè²ét(< t$:·,t:Ãt<:u†ÆDÿ ëºz)ééâé5è2ÿN_�ùÃNë.€Ï�Í€èséF< tçè#èàìWQ¿8¹ò®u¸Óà èY_°ª_�øÃªAþè.ÃVWQPS¸ðŽÀ&€>þÿýtø[XY_^øÀŽÀ3ÿ&�=Uªt €=ðríëà&Š]2ÿÑãÑãƒÃ�ã€ÿ¿&Š G2í ÉuÃë׋òFó¦tùƒÇëä€Â-ùëš»ÿÿ´HÍ!´HÍ!SP¸"%.޳,ºŽÍ!ŒÚŽÂZ´UÍ!ŽÚº€´Í!&¡ £,[ŒÚÓ‰ŒÚJŽÚB‰ŽÚ�ûr3Û±ÓãŒÚŽÒ‹ã3ÀP÷Ð.ÿ6Ä-.ÿ6Â-ŽÂË Batch file missing $ Insert disk with batch file and press any key when ready $Bad command or file name $Duplicate file name or File not found $Insufficient disk space $Out of environment space $File creation error $File cannot be copied onto itself $Content of destination lost before copy $ File(s) copied $ File(s) $ bytes free $Invalid drive specification $Strike a key when ready . . . $Invalid parameter $SunMonTueWedThuFriSat Invalid date$Current date is $ Enter new date: $ Invalid time$Current time is $ Enter new time: $Are you sure (Y/N)? $ $IBM Personal Computer DOS Version $ Volume in drive $ is $ has no label$Invalid directory $Unable to create directory $Invalid path, not directory, or directory not empty $Must specify ON or OFF $ Directory of $No Path $PATH=PROMPT=Invalid drive in search path $Invalid device $Label not found $Syntax error $ FOR cannot be nested $Intermediate file error during pipe $Cannot do binary reads from a device $off $on $BREAK is $VERIFY is $ECHO is $Invalid path or file name $Invalid number of parameters $Error writing to device $ D^TôP¦N–VsGLB"_Ð $íEH QNOT­ ERRORLEVEL;EXISTýDIR RENAMEÅ RENÅ ERASEP DELP TYPE REMCOPYßPAUSE2DATEKTIMEáVERjVOLÛ CD¹CHDIR¹MDìMKDIRìRD!RMDIR!BREAK¥VERIFYÚSET"PROMPT PATH³EXITÜCTTY ECHOlGOTO©SHIFTiIFcFOR{CLSf¸3Í!ˆ†3Ò¸3Í!´QÍ!‰‰ŽÛ6ij Œ0‰.´Í!ŠÐ´Í!¢‹±¸ÒÓè[ã‡èï‹‹\‹TŽDŽ\<v°é¸ëû<tõ.‰N.ŒP.¢R.Æg¸=Í!rß.£S‹Ø¸DÍ!ö€t°ëË.Çe.öRu`.Å6N‹ Àu.މ¡,.£a ÀtEüŽÀ3ÿ¹ÿ2Àò®t° éž®uôW‹ßƒÃ±Óë´HÍ!YséŽÀ.£aQŒÁË.;‡Ywl3ö3ÿ󤹋SºhèÌ´?Í!èÎrN=uƒ>tuÆgÿ¡h=MZt=ZMté¡l±Óà+p£WöRt+Ä>N&‹£„&‹E£U麰ë° P.‹Sèh´>Í!Xé—P»ÿÿ´HÍ!XƒûrÖ;ÃwÒ€>gurrÅ;ÃwÁ+rtr;Ãv‹Ã‹Ø‰c´HÍ!r££e€>gt c+W-£U£„;‡w*W;‡v/€>gt%‹Ð+cW;‡w¡‡+WëÊŒÊ�ÂY;ÂsÖëÛéFÿ‹pR±ÓâX± Óè‹È‹S¸BÍ!‹W�ûr»à)WS±Óã‹Ë‹SŽ„3ÒQè{´?Í!è}Y;È[u „ƒ>WuÀ‹U¡vÁ£_¡x£]Ä|£YŒÀÁ£[3É‹€‹S¸BÍ!sé¹þ‹nRºh¹  .‹Sè´?Í!èZrÞ¹¿h.‹6UƒúuéÍ&ÅŒØÆŽØ‹ƉƒÇJâãë¹égþ.öRt .Å6N­.£„ëA»ÿÿ´HÍ! ÛtÞ.‰c´HÍ!.£e.£„ƒë.‹‡;Áw+È;Ëw‹Ù�ûs‹Ã±Óàë¸ÿÿP.‹S3ɋѸBÍ!.‹SY.Ž„3ÒQèf´?Í!èh^;Æuéàý.öRu".¡„-.£[.ÇYN.‰6].£_ŽØÇ.‹Sè%´>Í!è'.öRtéY.‹e¾.¡a ÀtHŽØ‰.¡eHŽØ‰R´UÍ!ŽÂ.‰‰Z.ÿ6a&�,.‹6cò&‰6.Å6NVÅt¹ Q¿\Šó¤3À««Y^VÅt ¿lŠ<󤫫^Åt¹€‹ùó¤þÉ.:>‹vŠùë2ÿ.:‹vŠÙë2ÛèÔÿtÿtÿtÿt&� &� 3ÀŽØ�ˆ�ŠR.މº€´Í!Z.öRt&.Å6].Ä>N&Œ]NN‰&‰u.ÅY&Œ]&‰Eëd�èx.Å6Yú.Ž_.‹&]ûVŽÂŽÚ‹ÃËS»è [ÃS.‹‰è[ÃP.¡a ÀtHŽØ‰.¡e ÀtHŽØ‰XÃèÿt2ä‰�ùë �èÿt�øœè �Dë¨Å6³ ÃPR.І¸3Í!ZXÃÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ¸êPèT<‹åƒ~}ÿ67èAl‹åÇ7ÿÿÆFè% éjþ‚>ntŠF0äPè�‹åéUþŠF0ä= uéHþŠF0ä= u ŠF 0ä= tŠF0äPèa‹åé&þ ^0äë0¸ PèN‹å¸ PèE‹åë/¸ Pè:‹å¸ Pè1‹åë‡|�s‹ðƒîr ƒþsÑæ.ÿ¤›ÿ6è•\‹å‚>_uéÉýè² éÃýèP[èXIƒÄ ]ÃUƒì‹ì‹F= v » 1Ò÷óPèçÿ‹å‹F» 1Ò÷óƒÂ0Rè6\‹åÿ6èC\‹åƒÄ]ÃUƒì‹ì¡…Àt"¸K™÷>‰F¸K™÷> ‹^+؋ù™÷ùë3À£ƒÄ]ÃUƒì‹ì W0ä=u¸ë‚>þt¸ë¸Pè ‹åƒÄ]ÃUƒì‹ìèõWè(N¸PèùC‹å…Àu!èyN¡7…Àx Pè²j‹åÇ7ÿÿè,/¸ÿÿƒÄ]ÃèXXèŒ 3ÀƒÄ]ÃUƒì‹ì W0ä=u¸ë¸Pè6‹åƒÄ]ÃUƒì‹ì‚>ÿtè­IƒÄ]Ã�~é­ ºÀ =tº¥ =tºk =t ºW = tºH èuë Í!rÒ´MÍ!.£È éL.ö) t .ö) té0Ï.ö) t€ürò€ü wíƒÄùÊ.€) û¡Ï ÀuP´ Í!X÷w ÿÿt! ÀuèèsŽw ´IÍ!Çw Ð.Ê è3À‹è¢Ô ¢Õ è9Ï tÇÏ ÿÿ€&) û8Ç uéþùËP3À.†* Àt.Ð.Ê XúРè´€>Î tƒ>Ï u ºë è ûëþº è—€>Î u¡l .£¡n .£ ¡p .£ ¸LÍ!ÇÏ Žå ´IÍ!‹j ´PÍ!¡È €>Ç u3ÀÆÇ ÿ.f .�f .�h X¿€¹@ó¥´QÍ!.‰j ´PŒËÍ!.ÇÏ �.ÆÇ .€>Ç t=»ÿÿ´HÍ!è  ;Øs é@ÿ¸yH±ÓèôHÍ!rï.ÆÇ .£å Ø.‰à èÞÿ+Ø.‰¿ ŒÈŽÐ¼-ŽØè�3í¸ÿÿ‡Ñ =ÿÿt´.Í!ƒ>Ï ÿuéÿès;Å tÆv èèb;Å tèQëò¸7Í!ˆç €ú/u±\ˆè Æv ¾á ¿¡=Ž¿ ü¹ó +Îó¤¡Ã £ÿ.½ èËPS‹Ø¸DÍ!s Àë%÷Ð[XÃèËè3Û‹Ë ‹:Êt´>Í!ˆC:ît´>Í!ˆ.ƒÃ¹´>Í!CâùÃSP´QÍ!ŽÛÅ4‹.£t . Šà‰X[Ãèé ÿSP´QÍ!¡t ŽÛÅ4‰X[úÓé þ Â èjÿuò�úÓu貺ë謋¹ ‹6» ÆD$è�ÆDºýè“èø Í!¸ Í!ÃEºy ¸=Í!s=uºŽ éµýè¨ÿë勨º@3ɸBÍ!r¹jGŽ¿ º´?Í!œP´>Í!X�r;Át¸ºÓètÿ뱎¿ ¾¹:üÑé3Ò­ЃÒâøúˆ¸"%‰ Œ Í!º<þÀÍ!ºÄþÀÍ!ú* èörø¸ Í!rñ$_:ô uÃ:ó uâùÃûWQPŽÝ‹D.ˆ&µ¿“¹ƒÆ ó¤XY_èµþRè°ZA¢‡öÄ€t öµ€u鋾höÄt¾p‰>ø UVRQS´YÍ![YZ^]‰>a Œc 2䋸ƒïs¿ Æe ƒÿtƒÿuÆe ‰>r ƒÿv=‹ø¸Í/<ÿu%‹Ç´Í/r¢e ‹×¹ÿÿ2Àò®ÆEÿ$è%ÆEÿëÆe ‹>ø ‰>r Ñ狽0‡úè€>e tèùë.ºxèô‹Öèïöµ€t º‹´ Í!뺀èÙ€>v tèðýéçýƒ>r uQÅ6a W¿Z¹ üó¤_YºG´ Í!ºžè£öÓ ÿt´ë{¸ Í!è� ´:÷ tiþÄ:õ taþÄ:ö uªö) t€>Î tº2 èbëþ¡l £¸ÿLÍ!Š* èû Òt ƒ>Ï tÇÏ ÿÿƒ>r tƒ>r uÆÕ ƒ>Ï tÇÏ ÿÿŠÄ‹×è7ýϺ¶è º€è°ë꺈P´ øÍ!XÃTbku‚‡—œ©ºÃÏÚêü /Write protect$Bad unit$Not ready$Bad command $Data$Bad call format$Seek$Non-DOS disk$Sector not found$No paper$Write fault$Read fault$General Failure$Sharing Violation$Lock Violation$Invalid Disk Change$FCB unavailable$Sharing buffer exceeded$Please Insert disk $reading$writing$ error $ drive A $ device $Abort, Retry, Ignore? $ File allocation table bad,$ Invalid COMMAND.COM $Insert disk with $ in drive and strike any key when ready $ Terminate batch job (Y/N)? $EXEC failure $Error in EXE file $Program too big to fit in memory $ No free file handles$Bad Command or file name $Access denied $ Memory allocation error $ Cannot load COMMAND, system halted$ Cannot start COMMAND, exiting $ Top level process aborted, cannot continue. $,ÿÿ_:/_______.____:/_______.___, < €\ld-/-IYNraiPATH=COMSPEC=/COMMAND.COM¼-´0Í!†à= r= vº×´ Í!ŒÀ&9tþÍ ¡£l ¡ £n ¡ £p ¸¿ ±ÓèŒÉÁ£å ¡Œë Œï   Œ㠣à Ç<>Ç: ºyH±Óê+£¿ ¡, Àtþ%ë ¸ ±ÓèŒÚÂ£Ó ŽÀ¸7Í!ˆç :3u 4¢þ€>%u&¢´Í!þÀ¢Â  \ Àt&´:¢Â @ý€>%u¿Ÿ¾�¹�ó¤&£ü£ èðö¾€¬ŠÈ2íñÆ ¾�ãHI¬:5tö< tò:ç téœã1I¬ ÿu½Æë¶éP:7uÆë¦:8u‰6Ï ÆÎ Æé,Í!ë4�2ö€Ê¸DÍ!‹Ó[[Q¹3Û´>Í!Câù‹Ú´EÍ!´EÍ!´EÍ!´>Í!YãaéåþÆ%¸ ±ÓèŒÚÂ£Ó ŽÀ 5ˆDÿ^Y‹>&¬I:5t < tªãëïVQ¾þ¹&ŠEÿèuFIó¤‹&¸=Í!r ‹Ø´>Í!Y^ã"é‚þºŠè¬=AuºÃè­¾þ‹>&¹ó¤ëÚ€>Î t.´PŒÛŽÃÍ!¿ ¸ˆ«ŒØ«¸<«ŒØ«¸Ä«ŒØ«ŒºW¸.%Í!¡£l Œ¡£Ë Œ× ŒÛ Œß ¿y ‹6&€>%ŒØŽÀt¾(Wèj‹÷_s ‹6&�Æ &‰>¹ &ƒ¹ ¬ª Àuú&‰>» &ÿ» &Š& €Ä@&ˆ& » ±Óë´JÍ!€>%u‹:´HÍ!ŽÓ 6£Ó ŽÀ3ö‹þ¹ ó¤ÆÁ ¾@¿Ž¿ ¹jHñNùOýó¤üè.ô‰Å €>té�»´HÍ!rh£w ÆÊ ŽÀ3ÿ°ª3À««¸ÿÿ¹ ó«€> u ´Í!9¢ ¾ ¹ó¥º ¸=Í!r‹Ø´>Í!ë>è7=AuºÕè8Žw ´IÍ!Çw ÆÊ ¸4£¡¿ £ÿƒ>Ï uº_èÆ) é§ñP¡¿ €>Á tSŒË¸@ÑèÑèÑèÑèÃ[£#ÿ!XÃRŠ38ç t:Ât:4ZÃèr.ëA�üè(ŽÓ 3ÿQVW¬è<G&:Eÿuâó_^Yt Qè"Y&€=uàùËþWè ëWè Y+ù‡ùà0ë2À¹ò®Ã:1r:2w, ÃÄV‹òÇD ^Ï The IBM Personal Computer DOS Version 3.10 (C)Copyright International Business Machines Corp 1981, 1985 (C)Copyright Microsoft Corp 1981, 1985 Licensed Material - Program Property of IBM�Specified COMMAND search directory bad aSpecified COMMAND search directory bad access denied ŒAccess denied ÅIncorrect DOS version $/DEV/CON/COMMAND.COM:\AUTOEXEC.BATÿE1COMSPEC==az/\ pdcA´Í!.Ž£=¸ÿÿ‡Ñ =ÿÿt´.Í!.ÿ¡=3íƒ>Ï ÿué[üŒÈúŽÐ¼&HûŽÀ6Ž£=6Æ;€6Æ<€ ít 6Ç€; ë€>Í tÆÍ º…<´;Í!€>+ t €>* uè_ÆÇ ŒÈŽØPº&H¸8Í!X+¥=S»÷ã[ Òt¸ÿÿ=v%þ£Â=Ž£=öÊ tèr ö* ÿuè×´Í!6¢µ=ö* ÿté¥öÊ tèØrèföÕ ÿté6ÆN=ÆÙ ÆØ ÆÔ ÷w ÿÿtè�ëN�ƒ>Ï t¾ÿÿ‡6Ï ¿<3ɬªA< uùIˆ<ë*�¸ ]Í!¸]²Í!º;´ Í!Š;2íƒÁ¾;¿<ó¤è<èÐté¼éúèÏs º+4èÕ.é†þöÙ@uîƒ>—Ct߃>Ü@tؾ<¿>¸)Í!‹×@€:uŠ€âß*Í:<ÿt ‹>Ú@€=ué?þéJŠ¢Á=° ¹ Gò®°*Á¢>¿�V¾<èʬèÎt < t:§=uðN3ɬª< àúO‹ïöш€^‹>Þ@‰>¸=‹6â@ öu‹õ¿\¸)Í!¢¶=‹>é@‰>º=‹6í@ öu‹õ¿l¸)Í!¢·=‹>ô@‰>¼=‹>Þ@÷×#>™C‰>¾= >ŠÁ= ÒuþÈé²é9Ž£=ƒ>Ï ÿtéRþé®ýVWQPS¸ðŽÀ&€>þÿýtø[XY_^øÀŽÀ3ÿ&�=Uªt €=ðríëà&Š]2ÿÑãÑãƒÃ�ã€ÿ¿&Š G2í ÉuÃë׋òFó¦tùƒÇë䀖?ùëš»ÿÿ´HÍ!´HÍ!SP¸"%.Ž£=º1Í!ŒÚŽÂZ´UÍ!ŽÚº€´Í!&¡Ó £,[ŒÚÓ‰ŒÚJŽÚB‰ŽÚ�ûr3Û±ÓãŒÚŽÒ‹ã3ÀP÷Ð.ÿ6˜?.ÿ6–?ŽÂËèOrÃ�ú�4t.ÿ­=tèóè®¢Ô ºÎ3è?èÑ,éyüè¿,èëʸ Í!¸ Í!Ãè¼ÿ¿<ŒØŽw ÿ6ÿ6ŽØè+<:YZt'÷w ÿÿt.Žw ‰‰¸BÍ!.ÇFHÿÿ3Éë�èÙè÷w ÿÿu²ÃèöA�ù€s,<%t2ª< uí�ï<‹Ç&¢<èÙèŠöÊ tÓº<èÔèsÃ< tè�ªëÓè¶<%tÇ< tÃ,0r6< w2˜‹ØÑãŽw &‹wƒþÿt™Žw I¬< tA�ù€sªëñ2Àëµé{ÿW¿>0ªèiª< u&ÆEÿ¾>_èMOéfÿ<%uá°=&ˆEÿ¾>QèY‹÷_rè(Oé3ÿ÷w ÿÿuÃè < uðÃŽ¥=´IÍ!ûÿÿ´HÍ!´HÍ!&£å £¥=‹ØŒÈ+ÃS»÷ã[ Òt¸ÿÿ=v%þ£Â=ÃèÃŽ£=èNè è³ÿ& Ê $Pè–¾Ë<èU‹Ù�øQ±Óë´HÍ!&£w è˜ÿZ&Žw &Æ3À&£&£H¿‹ß¹ ó«‹Êó¤¾<¹ è5< tã&‰?ƒÃ¬è-tª< t ëó° ªãßIëÜ2Àª�]±Óë´JÍ!ƒ>Ï ÿuÇÏ ðÿXÐ&Ê Ê éBúP.Ž£=&¡w ÀtŽÀ´IÍ!3À&£w &Ð.Ê XÃP¬ª ÀuúXÃSQ÷w ÿÿtVŽw &ƒ&ƒŒÈŽØ‹FHƒûÿuºHH‹ÿ:‹Ã@´?Í!‹Èã ‰hH3Û‰FHЇHHC;hHr»ÿÿ‰FH<uŽ£=ènÿèM° ƒ>Ï ðuÇÏ ÿÿY[ÃXºi8é¿Æ´=Ç#G¾�è*< tå‹î¿´9µ‹õŠ Gã7ëu¬&Š%G:Ät€Ì :ÄâîŸù‹GGžuÛ¬< t´èúuÑèíÿãö´=ÿ#Gë´V3ɬ< t—èÞtAëó<=t< t‡¬ëõ¬<=u è¾< t_ó¦tN€< t¸¬< t³è¯uö°ÿë;é\ÿ¬è¢uê2Àë.¬è˜uúºš>¸Í!»#G¸×@è7‹¹¸NÍ!r2Àë�°ÿö´=ÿtöÐ Àt鮸èS‹Î�é�(€Š€ˆ<¿<üó¤° ªŽ£=ÆÔ ÿéáùé{ÿ· 2Û¬< tôè#t ,0†ÃöçÆÃëꎣ=Š&È 2À:ãs—þÈ듎£=¡w ÀuÃŽÀŽØ¿�u¹ ó¥ƒ=ÿtë‹5Çÿÿ¬< uû€<tÛ‰5Ã÷w ÿÿt èÿýèÀ tðøÃùÃŽ£=÷w ÿÿtó3ÒŽw ‰‰èHû¿]¹ ° ò®uAƒé ÷Ù.‰š>è³ÿr<:t#è´ý< u è£ÿr <:t÷w ÿÿuèèPºX8éÔè‡ÿrð¿].‹š>ëQè�ýY &:uë, &:uÉGâèèjý.ƒ>š>}< w·< tèWý< uùèPýèÃ.‹Ã@ƒûr´>Í!ÃŽw º¸=Í!r‹‹.£Ã@‹Ø¸BÍ!.ÇFHÿÿËں4诊,@ùÃèz.Ž£=�>Ï ÿuÇÏ ÿÿéþöëå¡Ö ŽØŽÀºË¸Í!ƒ>EtÿG‹G;IÚ¸è8‹O‹öGu‹7. Ò:8Dÿu A°:8DuƒÁ+ʃ>EtöGu‹Oë!�Q3ɸNÍ!Yë�¸OÍ!¸ÿÿr¸£E Àu�‹7¿Kó¤ƒ>Eu ¾é€<t¤uø2Àª3É÷Ñ3Û¿<ŠDŠ6K¸è­‹w FŠF<%u84uFV¾K¬ª ÀàúOA^ëåªI< ußöÑ.ˆ<.Ž£=öÊ t&ÆEÿÇ|?<º¯3èQ&&ÆEÿ éP÷éP÷èTé7éOüŽ£=&€>Õ uëè²3Òè rç<%uã‹è¬ ÀuÜèúr×%ßß;Ö:uά Àt:Ò:uÃG ƒo‹DÿëèÑr®:Ò:u¨€üt:&Ó:uénþÿÿOFë�è¯rŒ;Ô:uéWþéÒû‹Êwƒî Ó:8tè�réëì‹úÆ;Ô:tGè|rÖ  %ßß;Ø:uͬ ÀuÈèirÃPSQRWVUèøù芻èfœ&£Ö èòù�]^_ZY[Xr<&ÿ6Ö IO&‰G&‰>I&ˆD&ÇEÿÿ‹Å&ˆ&K&þÕ &ƒ>Ï ÿu&ÇÏ ÿú›8éö B;—C} ‹Ú¸×@è!‹7­øÃùÃŽ£=ºƒ8�>Ï ÿuÇÏ ÿÿéÆ P.Ž£=&¡Ö ÀtŽÀ´IÍ!&ÇÖ &ÆÕ Xø×@ºÿÿ3É3ö;—Cs?‹ÙèÄ w÷ÆüuöGtë&º6és ÉuƒtƒƒG ƒGƒoƒúÿuÜ‹ÓA뻉6¸=R2Àƒúÿt‹Ú‹?€}:uŠ ,`¢\è°?¿]¹ 󪡸=£ì>Ǹ=Æô>¨°t°¢È=¢Ç=ÇÉ=ºš>´Í!Š\è: [ƒûÿt‹´NÍ!rö¯>@tǸ=þÿë{‹´;Í!ss‹w;ÖtI2Ɇ ´;Í!† s=ŠDÿè uŠDþèº t†Lÿ´;Í!†Lÿs!µ::lÿu ‹‡Î+΃ùtºg7öGuºh4é| �<..u €|uÿ¸=ë¿\¸)Í!€<tÿ¸=Sè>ºš>‰“?ºð7èa#[ƒûÿtƒ>¸=t| èÔºg7é0 èËë©ÆUÿÆ[´ºUÍ!Pè´XþÀuéÒÿÉ=¾¢>è öì>téˆö­>tºé6è#닾>‰x?‹À>‰z?º¦3èþ"¡º> Àt\¿Ë=P¸ «X‹Ø%ŠÐ‹Ã±Óè$ŠðŠÏÐé2íƒÁP€ùdr€édèÓ‹¸>㸠«ÑéÑéÑéÐéÐéŠ7H€Ë€èT3ÀªºË=‰|?º¯3è›"þÇ=u  È=¢Ç=èÒþô>uöì>tÆô>èy뺵3èo"´ºUÍ!é'ÿ÷É=ÿÿué¯þ È=:Ç=t蔺5‹6É=‰6…?è@"´6Š\Í!=ÿÿuÃ÷á÷㣇?‰‰?º•5é!"¿Ë=¹ó¤° ª¹ó¤3ÀªRºË=‰|?º¯3è"Zúý5èø!è3õè8ú^9¾€¬ Àt-è6< t&RVºh4¬è1t< uö< ^ZVè½s€>š?t^ºg7é� ºh4Y° 8]tñƒÁ;ñu°:8Dþtãéóº^9èæ< tÖ胺=9tÎs €>š?të¿‹6ð>èÈ< º^9tI°:º68Dt?¿l¸)Í!° 8mt/¬ºW5è3t&´º\Í!<ÿu ùºU4èu R°ÿPè§XþÀtÃZè!éÐðéùþ�èn< uº^9éèèÿ öž?tºW5騏=Í!sºh4=tͺ=9ùè' é¿Æ%G‹ØŽ¥=3Ò.€>%Gu¦.‹Â=´?Í!‹Èã¤3ÿP°ò®X‘=u€}ÿu +ÈI.ö%GS»´@Í![r ;Át¼I;Áuû¸DÍ!ö€uòéM¾�èΊ&\Æ\< tˆ&\¬¬<:uè´< tº¹5é.èš¿U°ÿª3À««ª°ªG¹ °?󪺚>´Í!ºU´Í!éÃènèéh´0Í!P2䣋?X†à2ä£�?º7é èsr&€=u èr°>èZë:&ŠG Àt2:Ñ:tèGëí&ŠG»‰9 ÀtƒÃèÎ:t€?uñëÑWÿW_ëÆú…9é®°=ë°ë  Ð:ë Ï:ë Î:WR¿�?ªº!7èŠZ_ôÍ!Í:èâÿÃ2Ò¾š>‹þ µ=A´:« ¨=ª‡÷‰>|?´GÍ!º¯3sºÜ5èRÃ躚>‰|?º¯3èAÊ\ŠÂ@<@uµ=þÀP¾�>´GÍ!séÔ¿š>‹×X´:« ¨=ªÃèyèpt*èOèâèÀèb<;t¬< tèò<;tèEtèúëê3À«ÃèèÃ&€=u ºü7éȃï‹÷è·�ùÿtæ¿ö>º+чÑ󤺓3颻¸DÍ!ö€tLöÂtG¸)5Í!ŒÂ¸ 5Í!ŒÀ;Ðw5´Í<v <t´Íô 3ÛÍ´ÍŠÔþʶ3À‹È»´Í3Ò·´Íþ‡9¬ŠÈ2í´¬ŠÐÍ!âùÃè%NN€<:uƸ=Í!r‹Ø¸DÍ!ö€u ´>Í!ºD8è ë)�2ö€Ê¸DÍ!S¹3Û´>Í!Câù[´EÍ!´EÍ!´EÍ!´>Í!Ž£=¡£Ë ¸ÍPËŽ£=&¡l &£&¡n &£ &¡p &£ Ž¥=´IÍ!´L& È Í!èïè}Vèk^uÃèSèaVëOé¯èXtø3ÛV¬< t<=u÷þÀ< uðþÇëì^þËtºi8é:Sè°[þÏtÃè6‹ßèV‡ß¾ 8¹ó§uÆÖ@‹û^V¬< tèIëö^€>Ö@t“èzŽ£=¿y ‹ß´Í!€|:u Šè,AƒÇ&‰>¹ þÀ&¢Â @&¢ ‹û¬èNt< tªëó2ÀªÆÖ@O&‰>» ÃŽ£=ŽÓ 3ö€<t ¿ö>¬ª Àuúº“3èªëæ¾þ7ë¾8Vè%r‹÷蜇÷èò+Îó¤^þþ7ë¾8èròë{�üè-Ž£=&ŽÓ 3ÿQVW¬èpG&:Eÿuâó_^YtËQèVY&€=uàùËþWèAëWè?Y+ù‡ùÀ< tú¬è8èI<=uðþ€¬ Àt÷èw< ÃŽ£=&ŽÓ 3ÿ&€=tîèëõ°=ë2À¹ò®Ã:ß:r:à:w, .ÿ8HÃQSè:‹Ùƒë;ûr(PQSèSð[ƒÃ±ÓëC´JÍ!œŽ£=èHð�YXsºÆ4錪&Ç[YÃPŒÀHŽÀ&¡±Óà‹ÈXÃŽ£=€>Í tòº…<´;Í!2Àèùá¸= ¾=º6u3¾�è¿< tF¬<:uVè±^< uèüè™Ãè@öž?u´;Í!sïºg7è3Ãèr ´9Í!sôº†7èfèþ�ès< t‹Ö¬èqt < uöÆDÿÃÆDÿVèV^< tòº^93ÀùÃèÎÿru´:Í!sòº¿7è èØÿ…<ŠÂ@<@uµ=þÀªŠ&¨=°:«‹÷´GÍ!rÜÃRº9è°ZìètúNÃ< tû<=t÷<,tó<;tï< të< ù¬< tªâø¬< tŠà å:ª†Äª±¬< tªâø2ÀªÃ¦uü€|ÿtöëõP° QW‹ú¹ÿÿò®ÆEÿ‰|?º¯3è>ÆEÿ r_YXÃŽ£=º©4&€>* tèïºÃ8éñP´/8&§=tNŠDÿè½ÿt$;òt,Šè²ÿtNëòP å:8DXt ŠDÿ<:tè™ÿuùÃÆ´;Í!sÊè†ÿùu÷2Û†\´;Í!rìˆ\èF‰6œ?¿\¸)Í!ÓÃ3ÛèÊþ:§=uó�Ë€Fè¼þ< tçFèbý¿ú:¹�ò®u ¸Óà ØëÓëѺ¹5ééŠ Àtù¿Ð93ɾ>Š Gãì:>u‰ð>ó¦ŸùŠ¢³=G‹GGžuÜè‘ö³=t  ¶= ·=<ÿtµ¾<èMþ6ð>¿�3ɬª< tAë÷ˆ€ö³=u è uº6é©ÿÓéxèW¿�¾€¬ŠÈ2í §=<ò®_ÃÆ´=ŠÁ=ˆ>Æ•?Rº>è¿êZsþ•?ë�¿Ë<Æ€>•?të�è© Àt =|ë�é,íëC�è쎥=´IÍ!Ž£=&þÇ &ÆÍ ¿\‹÷¹Ró¥ºË<»Ó ¸Kö•?ÿtéÓêŒÁŽÑ¼-ÿ.©=º+4èéÎç3ÉŽ£=¾<‹þ¬<"uþÅë÷< uó‹÷¬<"uþÍt ˆGþÁ¬<"uöþÍ:Ð:u88u¬&þØ è4ý< u Æ &ÇÙ é˜W¿Ù ‹ß¬< thèýtc:§=t]ªëí:Ï:u‹Þèþü< u Æ ÇN= ëdW¿N=‹ßëÈŠà€ü|t:&Î:u?&€>* u&Ð&Ê &þ* èÂü< t <|t:Î:ué†à°:+߃ûÿt&8EÿuO2Àª_ˆ%G€ü tþÁé/ÿ&€>* t¿N &‰>L ¾<èuü¬ª< uúˆ<&€>* þ€¬2ä£î>‰6ð>Æž?Æš?‹6ð>‹î>‹Öã=QVèký£ò>[+ÞYË‹Öã+I¬è»üuþš?‰î>þ€¬ Àt÷è< ìèäûu<;uöNÃRPSQ.Ž£=€>* u öÔ ÿuè èLY[XZÃ.€>N=t÷ºN=¸=‹ØÍ!r ‹Ø°ÿ†G¢Ãèq=At€ÿ=tºÞ4éüýºh4=tõº{4éîý€>Ù t=€>Ø tºÙ ¸=PÍ![r 3Ò3ɋظBÍ!ë=ùt°ºÙ 3É´Ï t�>Ï ÿïðŽ£=¢Í ÃR.Ž£=º, ´AÍ!º< ´AÍ!Zè2Æ+ úi8èÚÿé(ýœè‰ÿPRºÃ8èÉÿè7ZX�=Aué ýéÝ䎣=þ+ ´Í!.Í:¢< », ˆ2äˆ&/ ˆ&? ‹Ó3É´ZÍ!r´‹Ø´>Í!º< ´ZÍ!r¥‹Ø´>Í!è�þ‹6L ƒ>Ï ÿuÇÏ ðë0€&Ê þ‹6L ¬<|t .:Î:t鉋Ï ¸=Í!sécÿ‹Ø°ÿ†G¢¿<3É€< uéAÿ. Î:8tõ€<|tð¬ª< t?A<|t.:Î:uî&ÆEÿ I.ˆÏ ðuÇÏ ÿÿéÐã.Œ£=ŒÈŽÀŽØº&H¸8Í!Ç� Æ<€Ç< èlèlˋًËʲdöò†Ä’·¡&H ÀtHt"·è9è+è"è%è'ÃèèèèèÃèè èëîŠÅèWà1HªÃŠÁèLÃŠÆ Àt  èBŠÂè=þ�èÝø< tëI�ºL6è}èOº`6èt¸8º\Í!‹ò­ºo6Hxº~6tº�6èX´ º<¹è Í!3Éèè‰ø¾<€< tª¡&H Àt*Ht@èZr*è‰r%èBr èrè@ro¬< uj´+Í! ÀubÃè%r\èbrWè#rRèXrMèë×èrCèIr>èëåèkrÒŠôÃècŠÔÃè]rú¹lè)œN�t€< tS³dŠÄöã[‹Èè>rÛŠÄ´Èú96è£é&ÿ¬Õ u¿›E2íŠ<þÁ󤾛E¿F³ ‰6ŸF3íÆÕ@è öès ítèë Æ„?èsÚë�øë�ù^_ZY[XÃSQRWVœèfƒ>—C@}OŠ÷‹—Cÿ—C¸×@è‚ÇG‰Oˆw‹6F‰76Å@+÷‰w‹6ŸF‰w ‹÷‹>Fù�ÿšD}+ùüó¤°ª‰>F�øë ¸ë¸�ù^_ZY[ÃPSQWœöÇtƒ>�Fÿt‹�F¸×@è o .™C�ùë¡—C£�F�ø_Y[XÃPŠÃ³ öã[ÓÃSQRVWUœöÙ@téÃè<º¡F¸Í!è$óŒÌF‰>ÎF‰>ÐF»€¾Ë<èKrÖ‹ÖÇ!G¹5èƒ Àtk‹è¿Ë<‹6×@‹Ú@+δ:ƒùr8dt µ=A«ë­«ƒé ŠÐ€ê` ÒFªƒùr ¬I:ÒFtANV‹÷¸GÍ!‹þ^ ÒF€=t €=tGëøª8uFIãó¤é‰öÙ@u·;‹Ú@+×@�ÂË<èš‹èŸ íužsó3Àëp¿Ë<‹ÐF‹6ÎFÿ6ÌF&€|.u4Q&Šˆ&ŠDˆE ÒFˆEV&Š€Ê €ê`‹÷ƒÆ¸GÍ!èíøñN‹þ^ƒÆY+Îÿ6ÌFüó¤O ÒF:Eÿtª¾ÔF3ɬª Àuú‹Å�]_^ZY[ÃP°/èiôt°\¢ÒFXâÒFXÃSQRWVœèãÿ¿F‹6ÐF‰6ÎFÿ6ÌF¬ Àt:Çtªëô‰6ÐFŠØ3À�ÿFt ÒF:Eÿtª‹ò¬ª ÀuúºFÇ!G18è Ût�øë�ù^_ZY[ÃQRWVœR‹ú¾áF3Ò€}:uŠ€â߀ê@¸GÍ!Zr4ÆÓFè<Í!¸sè9Í!¸s è6Í!¸r¾¿F¿ÔF¹ üó¤¢ÓFë ‹!Gèµ ¸�^_ZYÃWV¾î:ë WV¾ò:ëWV¾ö:1À‰×�¹€üò®ƒï¹ó¤^_¹¸NÃ�������������������������������������PSQRWVœ‹×@‹>Ú@€=t.‹ÊÜ@+ÏA°.üò®‹Ï+ʃë;Ë‹þ‹òüó¤Oª°?ªªª°ª�øë�ù^_ZY[XÃSQRWVUœ�ÃS±Óë¸HÍ!rD‹èŽÀ¹D3ÿ¾×@󤋗C3À¾×@I|$‹Ùèèü‹—×@+Ö&‰‹—Ú@+Ö&‰W‹—à@+Ö&‰W ëÙ‹Åë�ùë�ø]^_ZY[ù ¾]¬¹ ó¤3Àª‰�?º<7é W¿ö>´*Í!˜èè%÷2Àªº“3è _ËðÑæð�Æ6‹Ù¹ó¤° ªÃ3À£~?£³@£ÿ?¢À=£Ä=£¼=£Å@£œ?¢Á=¢›?¢þ?¢ž?¢@¢µ@¢š?¢ý?¢…<¢·@¢´=£Y@£¿@£Á@¢[@¢»@£¾=¢·=¢½@¢¸@¢¼@£É=£¹@¢¶=¢ú?£û?£\@£Ÿ?£@£à>£š>£W>¢¾@H£ö?¢Æ=¢ù?¢š?¾�ŠÜ:þÕ@Æ„?3í¿\@褜þ¾@öÇ€tƽ@öÇt .¼= .¾=�r3ë×�r.öÇ€uþ·=V¡Å@¾\@+Æ¿Ÿ?Ç£œ?ˆ›?Aó¤ˆ>ž?Ǽ=^릀>½@u€>·=u €>¾@uº5é  ½@¢¶=ÐàÐࢵ@º^9 ·= Àt<vé¢ñ½š?<u" µ=Í:´:ÆF¿Ÿ?«Ç¼=ÆFÆFè}€~u°:8 ?u€N¿¡?ÆFèa‹~€=uºg7°:8Eþu¦ÆF€NèDº6¡¾=©ãu�©t´TÍ!Ž£=2ä£Ñ ¸.Í!3í¾�ŠÜ:¿\@è„öÇuõ .¼=÷Åu €>¶=tƼ@V¡Å@¾\@+Æ¿@Ç£ÿ?ˆþ?Aó¤ˆ>@^‹Åèïèzïèéè`é£è±ºn5‹6É=‰6~?èÜ鄨€>¶=u_º@‰v?º�3èźh4évV¡Å@¾\@+Æ¿@Ç£ÿ?ˆþ?Aó¤ˆ>@^‹Åè“èïè�€>¶=u 3À¢À=£Ä=¢Á=‰6³@¿…<½ý?èw‹6ÿ?À>½@ué|ÿ3í‹6³@ŠÜ:¿\@è§rëöÇ€tæöÇuîè‹ÿ¿\¸)Í!€<u¡@€ü:t°@ ,`¢\´èœè‹ì�téDÿ2À†Æ= Àt ¹ ¿à>¾š>ó¤2À¢·@‹>ÿ?¾›>èkí€>¶=uö@tº@‰|?º¯3èÞè!íèÉ€>¶=u è•rÆÀ=€>¶=t èwöú?ÿtë è…u_ÆÁ=ë €>ú?ÿt ‹6³@‰6û?Æú?ÿ3í‹6³@ŠÜ:¿\@èÒöÇ€t2öÇuðè¸þèÜë¿>¸)Í!»á>¾>‹>ÿ?è-€>¶=tÆ·@éWÿéÚþè3À¢À=£Ä=¢Á=‹6û?‰6³@ètéEþéÿ´ö@u äÃP´ºš>Í!Xº\Í! ÀÃÆ´=º@¸=Í!sè9ñœ=Auº�4èñ�Ë؉Y@¸WÍ!‰¿@‰Á@¸DÍ!€â€ˆ[@t €>¸@tºì8éx‹Y@‹Â=‹Ä=+Êuèh€>»@ue‹Â=Ž¥=´?Í!rU‹ÈãQ€>[@u€>¼@t‹Ñ‹>Ä=°Ž¥=ò®uþ´=A+Ñ‹ÊÄ=‰Ä=;Â=r è€>»@uë�€>[@t€>´=t�‹Y@´>Í!À>Á=uø ¼=è"t4‹Ä=;Â=u èÊtùÃ3ÛŽ¥=ÇÿÄ=Æ·@¡¹@Ä=r=t è uÖƒ>¹@t}‹ö?‹Á@‹¿@€>µ@t1´,Í!ÐáÐáÑáÑáÑáÐî ÎQ´*Í!�鼆éÑáÐæÐæÐæÐæÐæ€Õ ÖŠõYƒû~*¸WÍ!¸B3Ò‹ÊÍ! М¸DÍ!R´>Í!Z�u ÷€uèëÿÉ=þÁ=øÃ‹ö?èÀÿèÇÉ=ë캟?´AÍ!à¶=PèX:¶=ÃÆ»@€>À=téƒèDè(u€>[@u€>¶=º5t^Æ·@¸=€>·@u´<3ɺŸ?Í!ºÞ4è<ïr>£ö?ÆÀ=‹Ø¸DÍ!ˆø?ö€t2 ¼=$ u  ¼@ ¸@tz ¨t¸D2ö€Ê ˆø?Í!ë ëuƼ@€µ@€>·@uè¡u€>[@uº05è›ÇÄ=þ»@Ëö?3ɇÄ=ãóÿ¹@€>·@uZ3ÒŽ¥=´@Í!º©4r+ÈtÓöø?€töø? u €>µ@u¾It»ºz9þÁ=èB€>À=t‹ö?ƒû~´>Í!ºŸ?´AÍ!ÆÀ=é2û3҇ѸBÍ!€>´=tÁ´@Í!Ã$ zP$¢¸@X$¢¼@µ@ ¼@ ÀÀ>š?ÿu ¿…<½š?èßèEè2À†ù? Àu銋6œ?¿W>¸)Í!€<tÆE|¡Ÿ?€ü:t°@м@ ,`¢W> ž?Š&@% Àt:Äu€>½@tþú?2Àë4"ÄÐè ½@¢¶=ÐàÐࢵ@€>¸@u$¢¼@ Éu Àt‹Ä=ã°3ÿŽ¥=ò®uO‰>Ä=»›>€>¶=t»á>¾X>‹>œ?¹¬Í!ö€uEöFt?‹V€þ:t²@€Ê €ê`èéç‹ÕƒÂŠ~€ç€ÿu‹v³:8\þuÆFëÆFNëb€ÿuÆFÃè í´;Í!r#‹ú3À‹ÈIò®O ¨=ÆF:EÿtªÆF€NèEÃÆFŠ~öÇtóÆF‹v€<t(Šå:8t ³:8\þtÆFN2Û†è®ì:\ÿt´;Í!†s¿ùéhà‰~€F ¡æ:¹óª†Äª†Ä±óª2ÀªÃQP¾@¿Ÿ?е=Šé°:8Du­*Í:ŠÈ°:8Eu ŠGG*Í:Šè:éu#ènçt‹Dÿ‹MÿP"ÁXu:å:u äë:å:u íXYÃ3À‰>Å@¢È@¢É@ŠøœW3ɬè÷æu<   tö< tò†É@ Àtêé#€>„?uè~å:Ãu€Ï€ëÔ< ué:§=ué²:8uè@¬è<‰>Å@ÆÇ@饉>Å@ÆÇ@€>„?uèçuP µ=Í:è°:è X‰>Å@ÆÇ@:å:u þÈ@ÆÇ@ÿÕ@uë%é´€>È@t´°?*&Ç@rê†áã †á躆áâ÷†áè²æu!€Ï€>Õ@töÇuO‰>Å@ÿÅ@ÆÇ@ÿÆÈ@苬€>„?uèœäèóåt2< t.:§=t(:Ãt$<:u€>„?uè_ëÒFëéVÿº=9éCèé¬ÞN_�ùÃNë?€Ï�Í€èªåF< u °ª�Í@ëàè+èDäWQ¿ú:¹�Í@ò®u �åÿ¿¸Óà èY_°ª_�øÃªAþÇ@ÃèËè èPåÃ.Ç;ë.Ç;üRU‹ìQSPWV¿;‹n>‹vƒÅ3Ûèä¬<%t Àtèˆëòè‹^_X[Y]ZÃ.Æ;¬<%tã.:Û:tH.:Ü:tç.:Ý:tB.:Þ:t;<0r?<9w;<0u.ƒ>;u´0.ˆ&;P.¡;¹ ÷áZ2ö€ê0Â.£;ë¬.Æ;ë¤.€;ëœ$ß.:ä:t.:á:t.:â:t.:ã:t&è>éWÿ.Ç;ël.Ç; ëcèŠÂèÑèé7ÿVè ‹ò.‹; Ét .€>;uè'V¬ Àtè¨ëö^.€>;t .‹; Étè^èÝéöþ3ÒV¬ ÀtBëø^+ÊvègÃè¶‹Â3Ò.€>;tè§SV.‹6;.‹;è ^[è@è�é¶þIP‹Â3Ò÷ö‹ØX÷ö‡ÚP ÂXtSèçÿ[ë .€>;uè€û rƒÃ.Ї€3QèYà É~ . ;QèYâùê�ÿ;tù;‡Ï+ÏtöS.‹;º;´@Í!r;Èt.Ž£=º©4&ö* ÿtèÙìºÃ8éÛå[ÃV‹óƒÃ>‹2‹^Ã3À.¢;.¢;.£;° .¢;Ã0123456789ABCDEF%S�3—3ö>%S ™3v?%9ld¡3x?z?%S¬3|? ³3 Batch file missing ·3 Insert disk with batch file and press any key when ready Ð3Bad command or file name 4Duplicate file name or File not found -4File not found W4Path not found j4Access denied }4Insufficient disk space �4Out of environment space «4File creation error È4File cannot be copied onto itself à4Content of destination lost before copy 5Invalid filename or file not found 25%9d File(s) copied Y5~?%9d File(s) r5…?%9ld bytes free ƒ5‡?‰?Invalid drive specification ›5Current drive is no longer valid»5Strike a key when ready . . . Þ5Invalid parameter ÿ5SunMonTueWedThuFriSat Invalid date*6Current date is ;6 Enter new date N6(mm-dd-yy): b6(dd-mm-yy): q6(yy-mm-dd): €6 Invalid time �6Current time is ¡6 Enter new time: ´6Are you sure (Y/N)?É6 ß6IBM Personal Computer DOS Version %1d.%02d ë6‹?�?%C7�? Volume in drive %c %s%7’?�?is has no labelInvalid directory S7Unable to create directory i7Invalid path, not directory, or directory not empty ˆ7Must specify ON or OFF Á7 Directory of %S Ü7“?No Pathô7PATH=PROMPT=COMSPEC=Invalid drive in search path 8Invalid device 38Label not found F8Syntax error Z8 FOR cannot be nested k8Insufficient memory …8Intermediate file error during pipe �8Cannot do binary reads from a device Å8BREAK is î8VERIFY is ú8ECHO is 9off 9on 9Invalid path or file name !9Invalid number of parameters ?9Error writing to device `9 |9 �9B½D.&E¯G³H¥L¸NÓPßQ«TßV7_Ÿ$ÀNOTÁ ERRORLEVEL…EXISTDIR‘ RENAMEÀRENÀERASEhDELhTYPE8REMCOPYa&PAUSE[DATEÉTIMEÌVER.VOLØCDÛCHDIRÛMDMKDIRRDbRMDIRbBREAKd%VERIFY–%SETÏPROMPTµPATHHEXIT‡CTTY"ECHO!%GOTOúSHIFT³IFqFOR CLS·A|<>$())INDO*-+LlazDCSX.?.,:.pyn.COM.EXE.BATVBAPW   The2 3ÎPE EXE`\4€²AUTOEXECBATNe ï‡�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿé8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ŒØŽÐ¼þè/¡£ ¢è@r~ˆÁ èŠ8Èt4 è€8Èt. èv8Èt5 èl8Èt; èb8Èt* èX8Èt.ë90Àë°¢èürþÀ¢ë0À¢þÀë 0À¢ë°¢ëèïr\¢€è¶ë€ötK‹Š.±¸ÿÍ! þÈu5 „Àt.þȈdzÿº þÀ¢±¸ÿÍ!„Àt‹Š.±¸ÿÍ!èÎèKèá „Àt<t0èé AèK „Àt!èíë  „Àt èð @è-ëèðëè÷èþ 1ÀÍ ºÿÿµÿ±¸ÿÍ!‰¢Ãè?r< tëõÃè3r< t÷Ãè)r<=u÷è r,Ar<õÃèr<=u÷è r,Ar<õà€„ÀùtþÈ¢€‹þŠC‰þèÀÜ.£J.‰L. Y<ÿu. [.€>Zt» ë»Îë»0äÀÃ.‹…ÀtÿÐ.‹L.¡J�.ÿ.NˆÐ.¢XþÀ.:^w.¢\è^þȈÂÉӊ<ÿuƒÃŠ„Àu. \.¢X.‰Vè8ˆÉӊ<ÿuƒÃŠ.¢X.‰V„Àu. \èˆÃèH.€>Jÿt .ŽT.‹R.;VtƒÃ„Àu. \ˆÉӊ.¢X.‰V€:u ,`èË@ˆÃ.‹V. XˆÈÐ.¢X„Àtè­ˆÂÃ.ŠXÃÃ. \þÈ.¢JÃ.‰R.ŒTÈÐ.¢XþÀè‚þȈÂÈè<ÿt þÀèrþȈÅÃQWŒÏŽÇ. JþÀ¿$.Š^µüò®uöÙ.^ˆÈþÈ.¢J_YÈÐ.¢XþÀ.:^w.¢]è(þȈÂÃ. ]þÈ.¢JÃè .ÿ.Bè.ÿ.FþÀèþÈÃSQˆå0ä»#Ã.ŠˆìY[ôÍ!ˆÂ´Í!¢^¾€¬„ÀtD¬< t?<=u÷ŠDþè0ä¿#Ǭ< t èˆëÞŒ@‰ß¾_¹ üó¦u& \0ä»#Ã&о$‰÷¹üó¤è,Í ´Í!þÀŒßŽÇèº_°!èTº€°%èLºˆ°&èDº«Í'¿$Š^µüò®u öÙ^&ˆ\Ã&¢\è÷þþȈ´œÿ>Ã1ÛŽÛˆÃÛÛŽG‹Ã1ێÈÃÛÛ&‰&Œ_à Invalid drive specified $ END START ÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿé8�COPYRIGHT 1985, SOFTWARE 2000, INC. (VERSION 01/07/85) Í ABCÿÿEÿÿÿÿHIJÿÿLMNOPQÿÿSTUVWXYÿÿ[\ÿÿ^_`aÿÿcdefghijklmnoÿÿqÿÿsÿÿuvwxÿÿÿÿ{|ÿÿ~ÿÿ€ÿÿ‚ÿÿÿÿÿÿÿÿ‡ˆ‰ÿÿ‹Œ�Ž��‘’ÿÿÿÿ•ÿÿÿÿ˜™ÿÿÿÿœ�žŸ ÿÿ¢ÿÿÿÿ¥¦ÿÿÿÿÿÿÿÿÿÿÿv è¨ ‹åƒÄ]ÃUƒì‹ìÿvèñ‹åPÿvèŒ ‹åƒÄ]ÃU‹ìÿvÿv èy ‹å‹v‚<tÿv è® ‹åÿvÿv èè ‹å¸xPÿv èÜ ‹åÿvÿv èÑ ‹å]ÃUƒìR‹ì‚~ZuÿvVèÚ‹å…ÀtƒÄR]ÃÿvX�FPè ‹å�FPèX ‹åÿvVèg‹åP�FPè‹ ‹å�FPÿvVèõ ‹åƒÄR]ÃUƒì‹ìÿv è>‹å».SPè ‹å‹ð‰v‚~tÆ‹v‚<u¸xPÿv è@ ‹åÿv ÿv è5 ‹åƒÄ]ÃUƒì‹ì‹FH‰F‹F@‹ð‰F‚<uò‹vN‹Æ;F‰FrŠ0ä=:tŠ0ä=/t Š0ä=\u׋F@ƒÄ]ÃUƒì‹ì‹vŠ0ä=/‰Ft!=\tŠ0ä=.t‚<t ŠD0ä=:t3Àë3À@ƒÄ]Ë܎&Ž,¿‹w&ŠG¨ÿuŒØŽÀ3ÀÊ$FöÄÿt:Ätå‹w&ŠG¨ÿuøëØ‹wO&ŠGˆF¨ÿuõŒØŽÀ¸ÿÿË܋W‹O‹G´B‹_Í!‹Ø‹Âs¸ÿÿMZ'4 ÿÿ�ZfAjA�AU‹ìƒìD¸‰Ì°‰Îèþ4‰Fü¸‰Fþ‹Fþ;Fü}‹FþƒÀA�6ÃvþˆÿFþëä¸�6ËVüƒÂòˆ�~u‹vƒÆÿ4�F¼PèDƒÄë�~}�P�F¼PèDƒÄ�F¼Pè«CƒÄƒøu-�v¼Š˜Pè5@ƒÄP�ÃPèÀ>ƒÄƒøt�P�F¼PèsNƒÄ�F¼PèoCƒÄƒøu"¸:P�F¼Pè�>ƒÄƒøt�P�F¼PèBNƒÄ�F¼PèuƒÄ Àt ¸nˆÉèž#¸ Pè–ƒÄ�F¼Pè6ƒÄë*�#Pè3ƒÄ�F¼Pè3ƒÄ�6Pèü2ƒÄ¸Pèí<ƒÄè)‹å]ÃU‹ìƒì¸‰Føº‰½‰¿¸º‰Á‰Ã¸ ˆÊ°fˆË°‰Fú‹Fú Àté«èü�>»u �TPè”2ƒÄë ÿvøè;ƒÄ¸ ˆFþèŸ.Pè4HƒÄˆFüŠFþ˜˜ƒø-uŠFü˜˜P�_PèŒ=ƒÄƒøuë ŠFþ˜˜ƒø+u*ŠFü˜˜P�hPèj=ƒÄƒøu�oPè)2ƒÄ¸ ˆFþéŠFü˜˜ˆÊŠFü˜˜PéXéÔŠFü˜˜ˆFþŠFü˜˜Pè’1ƒÄ¸ Pèˆ1ƒÄ鳸 Pè{1ƒÄ�vøVè ƒÄéœ�ŒPèÈ1ƒÄŠFþ˜˜Pè*ƒÄé‚��Pè®1ƒÄèéqÿNø�–Pèš1ƒÄ�~ø}¸ Pè$1ƒÄ‹»ƒè‰FøéE�œPèq1ƒÄŠFþ˜˜P¸PÿvøèÙƒÄé$�¢PèP1ƒÄÿvøè|ƒÄ Àtÿ»‹Fø;»|¸ PèÇ0ƒÄ¸‰Føéì�°Pè1ƒÄÿvèû ƒÄ Àt(¸º‰½‰¿¸º‰Á‰Ã¸‰Fø°fˆËé©è飊Fþ˜˜PÿvøèÍ5ƒÄé‘�½Pè½0ƒÄ¸ P°P�6Ó‹FøÑàð‹4ÿtÿtè¹.ƒÄ�ÄPè’0ƒÄ�6Ó‹FøÑàð‹4ÿtèJ,ƒÄ¸ Pè 0ƒÄé8ŠÉ˜˜P�ÔPèŽ;ƒÄƒøu �ÙPèM0ƒÄë �vøVèÃ!ƒÄéÿvèúƒÄ Àt&¸‰Føº‰½‰¿¸º‰Á‰Ã¸fˆËéÑ�ýPèý/ƒÄ¸Pè5ƒÄ鹊Fþ˜˜ƒø u � PèÛ/ƒÄë ŠFþ˜˜Pè…%ƒÄé“�Pè¿/ƒÄ¸Pè÷ƒÄé{ŠFþ˜˜ƒø u �0Pè�/ƒÄë ŠFþ˜˜Pèë!ƒÄéUÿvøèEƒÄéIè Àtè⸉Fø°fˆËé0�6Ó‹FøÑàð‹4ŠD!˜ˆFý¸*�6Ó‹VøÑâò‹4ˆD!ŠFý˜˜ƒø*tF�6Ó‹FøÑàð‹4‹D‹T½¿‰½‰¿�6Ó‹FøÑàð‹4‹D‹TÁÉÁ‰Ã�APèíƒÄ�vøVè%ƒÄé¡�6Ó‹FøÑàð‹4ŠD!˜ˆFý¸ �6Ó‹VøÑâò‹4ˆD!ŠFý˜˜ƒø*uF‹½‹¿�6Ó‹^øÑãó‹4+DT‰½‰¿‹Á‹Ã�6Ó‹^øÑãó‹4+DT‰Á‰Ã�LPè^ƒÄ�vøVè–ƒÄéŠFþ˜˜PÿvøèK1ƒÄéŠFþ  ˜˜Pèt!ƒÄéñ�WPè.ƒÄ¸‰FúéÝè/ƒøtHèö Àt>è<ÿvè.ƒÄ Àtè^èZ븉»¸‰Føº‰½‰¿¸º‰Á‰Ãé��]Pè¹-ƒÄéèÇ=zxwvutsrqpomljihfedcba/? -+p  ýë\Í´¨‚jD,öÅlZTÙ¸Œ{aaJJ))&&ŠÊ˜˜ƒø-uë ŠÊ˜˜ƒø+uë ŠÊ˜˜ƒøuë ŠÊ˜˜ƒøuéúéKú‹å]ÃU‹ìÿvèï,ƒÄ¸ P°Pÿ6Ãÿ6Áèö*ƒÄ�nPèÏ,ƒÄ¸ P°Pÿ6¿ÿ6½èÖ*ƒÄ�sPè¯,ƒÄ‹å]ÃU‹ìŠË˜˜ƒøfuŠÊ˜˜ƒøbu¸bˆË�‚Pè€,ƒÄë)ŠÊ˜˜P�«Pè�7ƒÄƒøt¸fˆË�±PèU,ƒÄ‹å]ÃU‹ì¸ P°P‹FƒÀPè:*ƒÄ�ÚPè/,ƒÄ�6Ó‹FÑàð‹4�Pè,ƒÄ�6Ó‹FÑàð‹4�DPè,ƒÄ¸ Pè“+ƒÄ�6Ó‹FÑàð‹4ÿtèò&ƒÄ¸ Pès+ƒÄ¸ P°P�6Ó‹FÑàð‹4ÿtÿtèÔ)ƒÄ¸KPèI+ƒÄ�6Ó‹FÑàð‹4ŠD!˜Pè1+ƒÄ¸:Pè'+ƒÄ‹å]ÃU‹ì�ìˆ�6Ó‹FÑàð‹4�P�†xÿPè±;ƒÄ�6Ó‹FÑàð‹4�DP�†xÿPèBFƒÄ�†xÿPè&ƒÄ�†xÿPèAƒÄ�~-téË�ÝPè+ƒÄ¸@P�F¸Pèc'ƒÄ�F¸PèÐ%ƒÄ�F¸Pèæ@ƒÄ�v¸Š˜ƒøu¸‹å]Ã�íPèà*ƒÄèü&Pèp7ƒÄ‰Fþ‹FþPëD�PèÂ*ƒÄ¸‰FüëD� Pè¯*ƒÄ¸‰Füë1�Pèœ*ƒÄ¸‹å]øPè&*ƒÄëèš:ANYŸ � z g �~þYuë�~þNuëé�ÿëO�vüV�F¸P�Pèc$ƒÄ Àt븋å]Ã�6Ó‹FÑàð‹4�DP�F¸PèEƒÄ�F¸Pèã$ƒÄ�F¸Pèù?ƒÄ�F¸P�†xÿPè¯DƒÄƒøu�*Pèñ)ƒÄ¸‹å]Ãÿvüÿv�F¸P�†xÿP赃ĉFú¸ Pèc)ƒÄ‹Fú‹å]ÃU‹ì�ìÆ�vþV�FºP�GPè¾#ƒÄ Àt븋å]Ã�6Ó‹4�‹ðŠ˜P�vºŠ˜Z;Âu�TPèv)ƒÄ¸‹å]ø‰Fü‹Fü;»|é)�6Ó‹FüÑàð‹4ŠD!˜ƒø*té �6Ó‹FüÑàð‹4�P�†:ÿPèt9ƒÄ�6Ó‹FüÑàð‹4�DP�†:ÿPèDƒÄ�†:ÿPèË#ƒÄ�†:ÿPèà>ƒÄ�FºP�†zÿPè39ƒÄ�6Ó‹FüÑàð‹4�DP�†zÿPèÄCƒÄ�†zÿPèŠ#ƒÄ�†zÿPèŸ>ƒÄÿvþÿv�†zÿP�†:ÿP考Ä Àt븋å]ø#�6Ó‹VüÑâò‹4ˆD!‹½‹¿�6Ó‹^üÑãó‹4+DT‰½‰¿‹Á‹Ã�6Ó‹^üÑãó‹4+DT‰Á‰ÃÿFüéËþ¸ PèÅ'ƒÄ¸‹å]ÃU‹ìƒì�qPÿvèn ƒÄ‰Fð‹Fðƒøu&�sPèù'ƒÄÿvèð'ƒÄ�ŽPèå'ƒÄ¸‹å]ø‰Fù�~ù}‹vðvùŠ˜�vì‹VùƒêòˆÿFùëÞ‹F Àuéã�’PÿvèýƒÄ‰Fò‹FòƒøuéÇ�”Pè…'ƒÄ¸ P°Pÿvè¢'ƒÄ�¢Pèj'ƒÄè†#Pèú3ƒÄˆFöŠFö˜˜ƒøYuë ŠFö˜˜ƒøNuë:ŠFö˜˜ƒøAu$ÿvòè,!ƒÄÿvðè#!ƒÄ�½Pè'ƒÄ¸‹å]øPè¨&ƒÄ롊Fö˜˜ƒøNu$�ÚPèö&ƒÄÿvòèç ƒÄÿvðèÞ ƒÄ¸‹å]Ã�íPèÒ&ƒÄÿvòèà ƒÄÿvèÛ5ƒÄ�òPÿvèƒÄ‰Fò‹Fòƒøu/�ôPèœ&ƒÄÿvè“&ƒÄ�Pèˆ&ƒÄÿvðèy ƒÄ¸‹å]ø|PèÀ2ƒÄ‰Fô‹Fôƒøu�PèX&ƒÄ¸‹å]Ã�,PèF&ƒÄ¸ P°Pÿvèc&ƒÄ�5Pè+&ƒÄ¸ P°PÿvèH&ƒÄ�:Pè&ƒÄ¸‰Fû¸|Pÿvôÿvðè4ƒÄ‰F÷�~÷é„è!" Àt9è"ÿvòèÔƒÄÿvðè˃Äÿvèã4ƒÄ�>Pè½%ƒÄÿvôèŸ3ƒÄ¸‹å]Ãÿvûÿv÷ÿvôèë-ƒÄ‰Fûÿv÷ÿvôÿvòèƒÄƒøÿu¸ÿÿ‰F÷ë¸|Pÿvôÿvð詃ĉF÷érÿÿvðèZƒÄ¸‰Fù�~ù}�vì‹FùƒèðŠ�àÿ‹vòvùˆÿFùëÛÿvòè&ƒÄ�~÷}é΋F ÀuéÄ�LPè %ƒÄ�WPÿvè^ƒÄ‰Fò‹Fòƒøu&�YPèé$ƒÄÿvèà$ƒÄ�zPèÕ$ƒÄ¸‹å]ø‰Fý¸|PÿvôÿvòèòƒÄ‰F÷�~÷~'ÿvýÿv÷ÿvôèì,ƒÄ‰Fý¸|PÿvôÿvòèÆƒÄ‰F÷ëÒÿvòèxƒÄ�~÷|#‹Fû;Fýt�~Pèd$ƒÄÿvôèF2ƒÄ¸‹å]Ãÿvôè62ƒÄ�~÷}��Pè9$ƒÄÿvèK3ƒÄ¸‹å]Ã�¥Pè$ƒÄ¸‹å]ÃU‹ìƒìF¸ Pè¢#ƒÄ�­Pèü#ƒÄè PèŒ0ƒÄˆFúŠFú˜˜ƒøTuë ŠFú˜˜ƒøUuëEŠFú˜˜ƒøAu�ÑPèÂ#ƒÄ¸‹å]ÊFú˜˜ƒø }¸ ˆFúŠFú˜˜Pè:#ƒÄ�õPè”#ƒÄ닊Fú˜˜ƒøTu �Pè}#ƒÄë �Pèp#ƒÄ�!Pèe#ƒÄè�Pèõ/ƒÄˆFûŠFû˜˜ƒøYuë ŠFû˜˜ƒøNuëEŠFû˜˜ƒøAu�EPè+#ƒÄ¸‹å]ÊFû˜˜ƒø }¸ ˆFûŠFû˜˜Pè£"ƒÄ�iPèý"ƒÄ닊Fû˜˜ƒøYu �ƒPèæ"ƒÄë �ˆPèÙ"ƒÄ¸ Pèj"ƒÄ¸‰Fý‹Fý;»|éÉ�6Ó‹FýÑàð‹4ŠD!˜ƒø*u ŠFú˜˜ƒøTuë&�6Ó‹FýÑàð‹4ŠD!˜ƒø*u鈊Fú˜˜ƒøUté{�6Ó‹FýÑàð‹4�P�FºPè¦2ƒÄ�6Ó‹FýÑàð‹4�DP�FºPè8=ƒÄ�FºPèÿƒÄŠFû˜˜ƒøYté„�ŒPè"ƒÄ¸ P°P�FºPè:"ƒÄ�™Pè"ƒÄèPè’.ƒÄˆFüŠFü˜˜ƒøYuë ŠFü˜˜ƒøNuë ŠFü˜˜ƒøAuë*ŠFü˜˜ƒø }¸ ˆFüŠFü˜˜PèP!ƒÄ�§Pèª!ƒÄé~ÿë?èÙ Àt 躸AˆFüë-¸YˆFü�ÁPè‚!ƒÄ¸ P°P�FºPèž!ƒÄ�ÇPèf!ƒÄŠFü˜˜ƒøAu �ÌPèQ!ƒÄë[ŠFû˜˜ƒøYu"ŠFü˜˜ƒøYu �ðPè0!ƒÄë �õPè#!ƒÄŠFü˜˜ƒøYu�FºPè*0ƒÄ�úPè!ƒÄ¸ Pè• ƒÄÿFýé+þè+ÿvèƒÄ ÀtèMèI븉»¸‹å]ÃU‹ìƒìDèäPèX-ƒÄˆFüŠFü˜˜ƒøYuë ŠFü˜˜ƒøNuë ¸Pè4 ƒÄëÏŠFü˜˜ƒøNu�Pè‚ ƒÄ¸‹å]Ã�6Ó‹FÑàð‹4�P�F¼Pè¬0ƒÄ�6Ó‹FÑàð‹4�DP�F¼Pè>;ƒÄ�F¼PèƒÄ�Pè1 ƒÄ�F¼PèB/ƒÄ�0Pè ƒÄ�6Ó‹FÑàðÿ4èô-ƒÄ‹FƒÀ‰Fý‹Fý;»"�6Ó‹FýÑàð‹4�>Ó‹FýƒèÑàø‰5ÿFýëÕ¸‹å]ÃU‹ìƒìÿvè40ƒÄ‰Á‹Áƒøu¸‹å]Ë6ÁƒÆŠ˜ƒÀ@ˆFüŠFü˜˜P�ÃPè»*ƒÄƒøuŠFü˜˜ƒø@tÿ6Áè\-ƒÄ¸‹å]Ã�6ÅV‹6ÁƒÆŠ˜ƒèPè‡ ƒÄèR¸‰»°PèÁƒÄ‰Fý�~ýÿt'�>»ô| �6Pè!ƒÄëèøP蕃ĉFýëÒÿ6Áèî,ƒÄ¸‹å]ÃU‹ìƒì¸‰Fþ�~þ },‹6ÁvþŠ˜ƒø*u�~þ }¸?‹6ÁvþˆÿFþëèÿFþë͸ ‰Fþ�~þ },‹6ÁvþŠ˜ƒø*u�~þ }¸?‹6ÁvþˆÿFþëèÿFþëÍ‹å]ÃU‹ì�AP¸Pè|-ƒÄÿ6Áÿvèo-ƒÄ�àÿ‹å]ÃU‹ìƒì ¸"Pè›*ƒÄ‰Fú‹Fú�6Ó‹»ÿ»Ñâò‰‹vú�‰Fø�6AŠ�àÿƒÀ@‹vøÿFøˆ¸:‹vøÿFøˆ¸‹vøˆ‹vú�D‰Fø¸‰Fö�~ö }�6AvöŠ�àÿ‹vøÿFøˆÿFöë߸.‹vøÿFøˆ�~ö }�6AvöŠ�àÿ‹vøÿFøˆÿFöë߸‹vøˆ¸º‰Fü‰Vþ¸ ‰Fö�~ö~7‹Fü‹VþRP¸ºRPèý2XZRP�6AvöŠ�àÿ3Ò[YØʉ^ü‰NþÿNöë‹Fü‹Vþ‹vú‰D‰T¸ºRP‹Fü‹Vþ�ÀÿƒÒRPèˆ'XZ‹vú‰D‰T�6[Š�àÿº‹ÊÓà�6ZŠ�âÿ‹vú‰D�6YŠ�àÿº‹ÊÓà�6XŠ�âÿ‹vú‰D¸ ‹vúˆD!‹å]ÃU‹ìƒì¸‰Fþ‹Fþ;»}�6Ó‹FþÑàðÿ4è‰*ƒÄÿFþëß‹å]ÃU‹ìƒì�\P脃Ä�aPèyƒÄ�gPènƒÄ�qPècƒÄ�vPèXƒÄŠF˜˜PëèbëèýëèLëèR,+-   îé为‰Fü‰Vþ‰Fø‰Vú¸‰Fò‹Fò;»}Y�6Ó‹FòÑàð‹4‹D‹TFøVú‰Fø‰Vú¸ºRP�6Ó‹FòÑàð‹4‹D‹T�ÀÿƒÒRPè+&XZFüVþ‰Fü‰VþÿFòëž�yP詃ĸ P°Pÿ6»è˜ƒÄ�|Pè�ƒÄ¸ P°Pÿvúÿvøè–ƒÄ�‹PèoƒÄ¸ P°PÿvþÿvüèxƒÄ�”PèQƒÄ¸ºRP‹Å‹Ç�ÀÿƒÒRPè™%XZ‰Fô‰Vö¸ P°Pÿ6Çÿ6Åè4ƒÄ�œPè ƒÄ¸ P°PÿvöÿvôèƒÄ�ªPèïƒÄ‹å]ÃU‹ì�¯Pè݃Ä�íPèÒƒÄ�+PèǃÄ�fP較Ä�›P豃Ä�ÑP覃Ä�P蛃Ä�7Pè�ƒÄ�rPè…ƒÄ�«PèzƒÄèzƒøu �ßPègƒÄë �úPèZƒÄ�5PèOƒÄ‹å]ÃU‹ì�\Pè=ƒÄ�€Pè2ƒÄ�¡Pè'ƒÄ�ÎPèƒÄ� PèƒÄ� PèƒÄ�M PèûƒÄ‹å]ÃU‹ì�v PèéƒÄ�š PèÞƒÄ� PèÓƒÄ�ú PèȃÄ� P轃ċå]ÃU‹ì‹vÿ‹v‹;»|¸ Pè7ƒÄ¸‹v‰‹å]ÃU‹ìƒìB¸‰Fþ‹Fþ;»|é)�6Ó‹FþÑàð‹4ŠD!˜ƒø#té �6Ó‹FþÑàð‹4�P�F¾Pè�)ƒÄ�6Ó‹FþÑàð‹4�DP�F¾Pè"4ƒÄ�F¾PèéƒÄ¸*�6Ó‹VþÑâò‹4ˆD!�6Ó‹FþÑàð‹4‹D‹T½¿‰½‰¿�6Ó‹FþÑàð‹4‹D‹TÁÉÁ‰Ã�@ P較ĸ P°P�F¾PèØƒÄ�N P蠃ĸ P°P�6Ó‹FþÑàð‹4ÿtÿt蜃Ä�T PèuƒÄ¸ P°Pÿ6¿ÿ6½è|ƒÄ�X PèUƒÄÿFþéËþ¸ PèàƒÄ¸‹å]ÃU‹ìƒìB�a Pè-ƒÄ¸@P�F¾PèqƒÄ�v¾Š˜ƒøu¸‹å]Ã�F¾Pè(ƒÄƒøu-�v¾Š˜Pè‹$ƒÄP�ÃPè#ƒÄƒøt�| P�F¾PèÉ2ƒÄ�F¾PèÅ'ƒÄƒøu"¸:P�F¾Pèå"ƒÄƒøt�~ P�F¾Pè˜2ƒÄ�F¾Pè (ƒÄ‰Fþ‹Fþƒøu¸‹å]Ãÿvþèf%ƒÄ�F¾Pÿvè¹'ƒÄè¥úÿvè—÷ƒÄ ÀtèǸ Pè¿úƒÄ븉»¸‹å]ÃU‹ì�ìÆ�‚ Pè/ƒÄ¸@P�†:ÿPèrƒÄ�¶:ÿŠ˜ƒøu¸‹å]Ã�• P�†:ÿPè«1ƒÄƒøuèl‹å]ø:P�†:ÿPè"ƒÄƒøt�†:ÿP�†zÿPè'ƒÄë+�6Ó‹FÑàð‹4�P�†zÿPèû&ƒÄ�†:ÿP�†zÿPè˜1ƒÄ�†zÿPè^ƒÄ�†zÿPès,ƒÄ�6Ó‹FÑàð‹4�P�FºPè»&ƒÄ�6Ó‹FÑàð‹4�DP�FºPèM1ƒÄ�FºPèƒÄ�†zÿP�FºPè«!ƒÄƒøt=�— Pè,ƒÄ�FºPè"ƒÄ�© PèƒÄ�†zÿPè ƒÄ�° PèƒÄ¸‹å]Ã�³ PèïƒÄ�FºPèåƒÄ�º PèÚƒÄ�†zÿPèσÄ�É PèăÄ�6Ó‹FÑàð‹4�DP�†zÿPèm ƒÄ Àtë�Ì P藃ĸ‹å]ø‹å]ÃU‹ì�ì†�ê PèwƒÄ¸@P�†zþP躃Ä�†zþPè&ƒÄ�†zþPè;+ƒÄ�¶zþŠ˜ƒøu¸‹å]Ã�†zþP�†zþPèô ƒÄ Àtë"� PèƒÄ�†zþPèƒÄ¸ P褃Äëëé€ÿ�( Pè÷ƒÄ¸@P�†ºþPè:ƒÄ�†ºþP覃Ä�†ºþPè»*ƒÄ�¶ºþŠ˜ƒøu¸‹å]Ã�†ºþP�†ºþPèt ƒÄ Àtë"�K P螃Ä�†ºþP蓃ĸ Pè$ƒÄëëé€ÿ¸‰†zÿ‹†zÿ;»|éŒ�6Ó‹†zÿÑàð‹4�DP�†:ÿPèœ$ƒÄ�†úþP�†:ÿP�†zþPèÆƒÄ�†úþP�†:ÿPèÚ.ƒÄ‰†|ÿ�¾|ÿté4�†úþP�†:ÿP�†ºþPè’ƒÄ�f PèýƒÄ�†:ÿPèòƒÄ�o PèçƒÄ�†úþPè܃Ä�v PèуÄèíPèa ƒÄˆ†~ÿІ~ÿ˜˜ƒøAu�„ P譃ĸ‹å]ʆ~ÿ˜˜ƒøYté¤�¡ Pè�ƒÄ�6Ó‹†zÿÑàð‹4�P�F¿Pè½#ƒÄ�†:ÿP�F¿Pè[.ƒÄ�F¿Pè"ƒÄ�†úþP�†ÿPè”#ƒÄ�†ÿPèƒÄ�†ÿP�F¿PèžƒÄ Àt �§ Pè ƒÄë(�º PèƒÄ�†úþP�6Ó‹†zÿÑàð‹4�DPèA#ƒÄë �À PèéƒÄÿ†zÿégþ¸‹å]ÃU‹ìƒìJ�vþV�F¾P�Ä PèÙ ƒÄ Àué¤�v¾Š˜PèHƒÄ�v¾ˆ�v¶V�v¾Š˜ƒèAPè˃ĸºRP‹F¶‹V¸�ÀÿƒÒRPèßXZ‰Fº‰V¼�Û PèhƒÄ�F¾Pè^ƒÄ�ò PèSƒÄ¸ P°Pÿv¸ÿv¶è\ƒÄ�ø Pè5ƒÄ¸ P°Pÿv¼ÿvºè>ƒÄ� PèƒÄ‹å]ÃU‹ìƒì@� PèƒÄ¸@P�FÀPèFƒÄ�FÀPèÓ'ƒÄ�vÀŠ˜ƒøu¸‹å]Ã�FÀP¸;PèØ ƒÄƒøu� P躃ĸ‹å]Ã�B P訃Ä�FÀP螃Ä�Y P蓃Ä�vÁŠ˜ƒø:u�6Ó‹4�‹ðŠ˜P�vÀŠ˜Z;Âuë �vÁŠ˜ƒø:t¸‹å]ø‹å]Ëå]ÃU‹ìƒìŠÉ˜˜Pèø&ƒÄˆFþŠFþ˜˜Pé^‹v‹4�DP‹v‹4�DPèÇ+ƒÄ‰FüéW‹v‹4‹~‹=‹E‹U;Tu;Ds¸ÿÿ‰Füë*‹v‹4‹~‹=‹E‹U;T|u;Dv¸‰Fü븉Füé‹v‹4‹~‹=‹E;Ds¸ÿÿ‰FüëT‹v‹4‹~‹=‹E;Dv¸‰Füë:‹v‹4‹~‹=‹E;Ds¸ÿÿ‰Füë ‹v‹4‹~‹=‹E;Dv¸‰Fü븉Füé•‹v‹4�DP‹v‹4�DPèç*ƒÄ‰Fø‹v‹4�DƒÀ P‹v‹4�DƒÀ PèÆ*ƒÄ‰Fú�~út‹Fú‰Füë‹Fø‰FüëB�\ PèóƒÄŠÉ˜˜Pè�ƒÄ�} Pèۃĸ‰Füëèäedsn6$ã#r#!##ŠÉ˜˜PŠFþ˜˜Z;Âu‹Fü‹å]ûÿÿ‹Fü÷ë‹å]Ëå]ÃU‹ìƒì�ä"P¸Pÿ6»�ÓPè„"ƒÄ‹å]ÃU‹ìƒìB�€ PèaƒÄ¸@P�F¾Pè¥ ƒÄ�v¾Š˜ƒøu¸‹å]Ã�F¾PèäƒÄ�v¾Š˜ƒø-u�v¿Š˜ƒøt¸‰Fþ�v¿Š˜�v¾ˆë¸‰Fþ�v¾Š˜P�� Pè'ƒÄƒøt'‹Fþ Àt�v¾Š˜ƒè ˆÉë �v¾Š˜ˆÉ¸‹å]Ã�” P迃Ä�¥ Pè´ƒÄ�´ P詃Ä�È P螃Ä�× P蓃Ä�ç P舃Äéÿ‹å]ÃU‹ìƒìj� PèpƒÄ¸@P�F¾Pè´ ƒÄ�F¾Pè! ƒÄ�F¾Pè7$ƒÄ�v¾Š˜ƒøu¸‹å]Ã�F¾P�F¾PèóƒÄ Àtë� PèƒÄ¸‹å]Ã�F¾P�F›PèSƒÄ�F–‰F¸�F¸‰Fº¸‰Fþ‹Fþ;»}3�Ó‹VþÑâ‰F¼ÿv¼ÿvºè†üƒÄƒø‹Fþ‹v‰¸‹å]ÃÿFþëÄ‹»ƒè‹v‰¸‹å]ÃU‹ìƒì�5 Pè– ƒÄŠF˜˜ƒø+u �; Pè� ƒÄ�> Pèv ƒÄ¸‰Fþ‰Fü‹Fü;»|é˜�6Ó‹FüÑàð‹4ŠD!˜ƒø*u ŠF˜˜ƒø-uÿvüèêàƒÄ¸ PèÉ ƒÄÿFþ�6Ó‹FüÑàð‹4ŠD!˜ƒø*t ŠF˜˜ƒø+uÿvüè´àƒÄ¸ Pè“ ƒÄÿFþ�~þu¸‰Fþ�M PèÝ ƒÄèù�U PèÏ ƒÄÿFüé\ÿ�] Pè¾ ƒÄ‹å]ÃU‹ì�쎊F˜˜ƒø-t �` Pèž ƒÄë �u Pè‘ ƒÄ¸@P�†rÿPèÔƒÄ�†rÿPè@ƒÄ�†rÿPèU"ƒÄ�¶rÿŠ˜ƒøu¸‹å]Ã�†rÿP�†rÿPèƒÄ Àtë�� Pè8 ƒÄ¸‹å]ø‰Föº‰Fø‰Vú¸º‰Fü‰Vþ¸‰Fò‹Fò;»|é5�6Ó‹FòÑàð‹4ŠD!˜ƒø*ué�F²P�6Ó‹FòÑàð‹4�DP�†rÿPèUƒÄ�F²P�6Ó‹FòÑàð‹4�DPè^&ƒÄ‰FôŠF˜˜ƒø u �~ôuëŠF˜˜ƒø-té¸�~ôué®ÿvòè,߃Ä�6Ó‹FòÑàð‹4‹D‹T½¿‰½‰¿�6Ó‹FòÑàð‹4‹D‹TÁÉÁ‰Ã¸*�6Ó‹VòÑâò‹4ˆD!�ª PèÞƒÄÿFö�6Ó‹FòÑàð‹4‹D‹TFüVþ‰Fü‰Vþ�6Ó‹FòÑàð‹4‹D‹TFøVú‰Fø‰VúÿFòé¿þ�~öu �¶ Pè½ ƒÄëb�È Pè° ƒÄ¸ P°Pÿvöè ƒÄ�Ë Pè• ƒÄ¸ P°Pÿvþÿvü螃Ä�á Pèw ƒÄ¸ P°Pÿvúÿvøè€ƒÄ�ê PèY ƒÄ¸ Pèê ƒÄ‹å]ÃU‹ìƒìF�î Pè: ƒÄŠF˜˜ƒ  ø+u �ö Pè% ƒÄ�ù Pè ƒÄ¸@P�F¼Pè^ƒÄ�F¼Pè˃Ä�F¼PèáƒÄ�v¼Š˜ƒøu¸‹å]Ã�P�F¼Pè6ƒÄ‰Fý‹FýƒøuéŠ� Pè¾ ƒÄ�F¼Pè´ ƒÄ�Pè© ƒÄèÅPè9ƒÄˆFüŠFü˜˜ƒøYuë ŠFü˜˜ƒøNuë ¸Pè ƒÄëÏŠFü˜˜ƒøNu�5Pèc ƒÄÿvýèTƒÄ¸‹å]Ã�CPèH ƒÄÿvýè9ƒÄ�F¼PèPƒÄ�HP�F¼P腃ĉFý‹Fýƒøu'�JPè ƒÄ�F¼Pè ƒÄ�fPèûƒÄ¸‹å]ø‰Fº‹Fº;»|é—�6Ó‹FºÑàð‹4ŠD!˜ƒø*u ŠF˜˜ƒø-uë �6Ó‹FºÑàð‹4ŠD!˜ƒø*tYŠF˜˜ƒø+uO�6Ó‹FºÑàð‹4�DP�F¼PèЃÄ�F¼PèDƒÄ�F¼PèoƒÄP�F¼PÿvýèñƒÄ¸P�jPÿvýè߃ÄÿFºé]ÿÿvýè<ƒÄ‹å]ÃU‹ìƒìÿv褃ĉÁ‹Áƒøu¸‹å]Ãè鸉Fþ�~þ}‹6Á‹FþƒÀðŠ˜‹vvþˆÿFþëݸ.‹vƒÆˆ¸ ‰Fþ�~þ }‹6ÁvþŠ˜‹vvþˆÿFþë⸋vƒÆ ˆÿ6Á薃ĸ‹å]ÃU‹ìƒì¸*PÿvèÂƒÄ Àtë¸?Pÿvè¯ƒÄ Àt¸‹å]Ãÿvè߃ĉFþ‹Fþƒøu¸‹å]Ãÿvþ¸PèYƒÄ�àÿ‰Fú�~út8¸wPÿvèaƒÄ Àtë¸WPÿvèNƒÄ Àtÿvþ¸PèƒÄ�àÿ‰Fú�~útÿvþèàƒÄ¸‹å]ø‹vþ‰D‹Fþ‹å]ÃU‹ì‹F3Ò‹v‰D!‰T#‹å]ÃU‹ìÿv¸PèǃÄ�6ÐVèÙ!ƒÄ‹Ô‰ä‹F‰Þ‹F‰Ü¸'‰Ø�6ØV�6ØV¸!P蠃ċ܋å]ÃU‹ìÿv¸PèsƒÄ�6ÐVè…!ƒÄ‹Ô‰ä‹F‰Þ‹F‰Ü¸(‰Ø�6ØV�6ØV¸!PèLƒÄ‹Ø�àÿƒøu¸ÿÿ‹å]ËÜ‹å]Ëå]ÃU‹ìÿv¸PèƒÄÿvèۃċå]ÃU‹ìÿvèàƒÄ¸ Pÿvè%ƒÄÿv賃ċvŠ˜ƒøu¸‹å]ø:Pÿvè܃ăøu�mPÿvè� ƒÄ‹vƒÆŠ˜ƒøVu¸‹vƒÆˆ¸‹v‰ë¸‹v‰ÿvèbƒÄƒøu‹vŠ˜P�ÃPè~ƒÄƒøt¸‹å]ø‹å]ÃU‹ìƒì‹F‰Fü‹F‰Fþ‹vüŠ˜ƒøt‹vüŠ˜ƒø t‹vüŠ˜‹vþÿFþˆÿFüë׸‹vþˆ‹å]ÃU‹ìƒì�o‰Fú‹Fƒà‰Fô‹Fº‹ÊÓøƒà‰Fò‹Fº ‹ÊÓøƒà�À¼‰Fö¸‰Fð‹Fð;Fò}ÿFúÿFúÿFúÿFúÿFðëç¸0P°Pÿvô芃ĸ-PèƒÄ‹vúÿFúŠ˜Pè ƒÄ‹vúÿFúŠ˜PèûƒÄ‹vúŠ˜PèîƒÄ¸-PèäƒÄ¸0P°Pÿvöè9ƒÄ‹å]ÃU‹ìƒì‹Fº‹ÊÓøƒà?‰Fþ‹Fº ‹ÊÓøƒà‰Fü¸0P°PÿvüèÿƒÄ¸:Pè�ƒÄ¸0P°PÿvþèåƒÄ‹å]ÃU‹ì¸P°Pè߃Ä�àÿ‹å]ÃU‹ì¸P° PèǃÄ�àÿ‹å]ÃU‹ìÿvÿvèƒÄ‹å]ÃU‹ìÿv‹F™RPèƒÄ‹å]ÃU‹ìƒì‹F‹V‰Fø‰Vú‹F‰Fò‹Fø‹Vúƒú%uƒøs‹F‹V÷Ú÷؃ډFø‰Vú¸-‹vòÿFòˆ¸‰Fö‰Fô�~ô |éƒ�6½‹FôÑàÑàð‹‹TRPÿvúÿvøèt XZ‰Fü‰Vþ‹Fü‹Vþƒúuƒøtë‹Fö Àt?‹Fü‹VþƒÀ0ƒÒ‹vòÿFòˆ�6½‹FôÑàÑàð‹‹TRPÿvúÿvøè, XZ‰Fø‰Vú¸‰FöÿFôésÿ‹Fö Àtë ¸0‹vòÿFòˆ¸‹vòÿFòˆ‹å]ÃU‹ìŠF ˜˜Pÿvÿv‹F™RPèƒÄ ‹å]ÃU‹ìƒì�FêPÿvÿvèÍþƒÄ�FêPèFƒÄ‰Fý‹F‰Fù‹Fý‰Fû‹Fû;F }ŠF ˜˜‹vùÿFùˆÿFûëæ¸‹vùÿFùˆ�FêPÿvèÿƒÄ‹å]ÃU‹ìŠF˜˜Pÿv‹F™RPèƒÄ‹å]ÃU‹ìƒìŠF ˜˜Pÿv�FðPÿvÿvècÿƒÄ �FðP较ċå]ÃU‹ìƒì ‹F‹V‰Fü‰Vþ‹F‰Fô¸‰Fø‰Fö�~ö}u�6å‹FöÑàÑàð‹‹TRPÿvþÿvüèÞ XZ‰Fú�~útë‹Fø Àt=�6vúŠ˜‹vôÿFôˆ�6å‹FöÑàÑàð‹‹TRPÿvþÿvüè¤ XZ‰Fü‰Vþ¸‰FøÿFöé„ÿ‹Fø Àtë ¸0‹vôÿFôˆ¸‹vôÿFôˆ‹å]ÃU‹ìƒì�FêPÿvÿvè-ÿƒÄ�FêPèØƒÄ‰Fý‹F‰Fù‹Fý‰Fû‹Fû;F }ŠF ˜˜‹vùÿFùˆÿFûëæ¸‹vùÿFùˆ�FêPÿv葃ċå]ÃU‹ìƒìŠF ˜˜Pÿv�FðPÿvÿvèÿƒÄ �FðPèlƒÄ‹å]ÃU‹ì‹Ì Àt'ŠF˜˜ƒø u ¸ P°PèTƒÄŠF˜˜P¸PèDƒÄ‹Î Àt'ŠF˜˜ƒø u ¸ P°Pè%ƒÄŠF˜˜P¸PèƒÄ‹å]ÃU‹ìƒì‹F‰Fþ‹vþŠ˜ƒøt‹vþŠ˜PèzÿƒÄÿFþëã‹å]ÃU‹ìƒìÿvèÇÿƒÄÿv較ĉFþ‹Fþ;F}ŠF˜˜PèBÿƒÄÿFþëç‹å]ÃU‹ìƒì‹Fƒè‹vƒÆˆÿv¸ P苃ĸ P°Pè~ƒÄ¸ P°PèqƒÄ¸‰Fþ‹vvþŠ˜ƒø t‹vvþŠ˜‹v‹VþƒêòˆÿFþë׸‹v‹Vþƒêòˆ‹å]ÃU‹ì¸P°PèƒÄP¸PèƒÄ�àÿ‹å]ÃU‹ìƒì¸P°0Pèø ƒÄƒà‰Fþƒøu¸‹å]ËFþ‹å]Ëå]ÃU‹ìƒì(èÇÿƒøtW¸6‰FÚ‹FƒÀ‰Fà�vÚV�vÚV¸!PèÁƒÄ‹F܉Fî‹FÞ‰Fö‹FÚ�àÿ‰Fø‹FÚƒøÿu¸ÿÿºÿÿ‹v‰‰T¸‹å]Ãé̸P°Pèi ƒÄ�àÿ‰FØÿv¸PèU ƒÄ¸‰FÚ�vÚV�vÚV¸!PèRƒÄ‹Fæ‰Fò‹F܉Fô‹FÞ‰Fö‹FÚ�àÿ‰Fø‹Fà‰Fð¸‰Fî°‰Fì°‰Fê‹FðƒÀ;Fì~Iÿvò‹FêFôPè̓ĉFú‹Fìƒà Àt‹Fúº‹ÊÓè‰FúÿFêÿFê‹Fú�àÿ‰Fú�~úuÿFîÿFìë¬ÿvظPèª ƒÄ‹Fø÷nö™RP‹Fî™RPè�XZ‹v‰‰T¸‹å]ÃU‹ìƒìÿvèh ƒÄPÿvè^ ƒÄZ;Ât¸‹vˆ¸‹å]ËF‰Fú‹F‰Fü‹F‰Fþ‹vúŠ˜ƒøt.‹vúŠ˜ƒø?u ‹vüŠ˜‹vþˆë ‹vúŠ˜‹vþˆÿFúÿFüÿFþëǸ‹vþˆ¸‹å]ÃU‹ìƒìF�ŸPèáüƒÄŠF˜˜Pë�¤PèÎüƒÄë�±PèÁüƒÄëèÐ +-„7h7[7¸ PèAüƒÄ�6Ó‹FÑàð‹4�P�F¼Pè× ƒÄ�6Ó‹FÑàð‹4�DP�F¼PèiƒÄ�F¼Pè0÷ƒÄ�¿P�F¼Pè·ôƒÄ‰Fº‹Fºƒøu'�ÁPèBüƒÄ�F¼Pè8üƒÄ�ÖPè-üƒÄ¸‹å]Ã�åPèüƒÄ�PèüƒÄ¸‰FþŠF˜˜ƒø+u¸‰Î¸P�vüVÿvºè"õƒÄƒøuéÀ‹Füƒà‰Fü‹FüPëë+¸ ‰FüÿFþÿvüèXûƒÄëèÌ  n8e8e8c8c8�~þu)¸‰FþŠF˜˜ƒø-u�%Pè‚ûƒÄèž÷�-PètûƒÄè¨÷ ÀtJè‰÷‰Fü�~üt=�~üt6�~ü uë�~üuè}÷ Àtè^÷ëôëèW÷‰Fü�~ü uë�~üuëé'ÿÿvºèõƒÄ�5Pè ûƒÄ¸‰Î‹å]ÃU‹ìƒì\�8PèðúƒÄŠF˜˜Pë�APèÝúƒÄë�NPèÐúƒÄëèß +-u9Y9L9¸ PèPúƒÄ�6Ó‹FÑàð‹4�P�F¦Pèæ ƒÄ�6Ó‹FÑàð‹4�DP�F¦PèxƒÄ�F¦Pè?õƒÄ�\P�F¦PèÆòƒÄ‰F¤‹F¤ƒøu'�^PèQúƒÄ�F¦PèGúƒÄ�sPè<úƒÄ¸‹å]Ã�‚Pè*úƒÄ�ŸPèúƒÄ¸º‰Fì‰VîŠF˜˜ƒø+u¸‰Î¸P�væVÿv¤è+óƒÄƒøu鼸ºRPÿvîÿvìèFXZ‰Fê�~êuH‹Fì‹Vîƒúu�øt7�ÁPè°ùƒÄ¸‰Fè�~è}�vðv芘Pè.ùƒÄÿFèëä¸ PèùƒÄ¸ºRPÿvîÿvìèáXZƒúudƒøu_‹Fì‹Vîƒúu�øt#ŠF˜˜ƒø-u�ÄPèAùƒÄè]õ�ÌPè3ùƒÄ¸ PèÄøƒÄ�ÔPèùƒÄ�óPèùƒÄ� PèùƒÄ�~êu¸0P°Pÿvîÿvìè\øƒÄ�!PèãøƒÄ‹Fæ�àÿ‰Fæ¸0P°P‹Fæ™RPè4øƒÄ¸ PèWøƒÄ‹Fæƒà‰Fæ�~æ }ë�~æu ¸.�vðvêˆë ‹Fæ�vðvêˆ�Fì�Vîèµô ÀtJè–ô‰Fæ�~æt=�~æt6�~æ uë�~æuèŠô Àtèkôëôëèdô‰Fæ�~æ uë�~æ  uëé+þÿv¤èòƒÄ‹FêƒÀ‰Fè�~è}¸ �vðvèˆ�$Pèþ÷ƒÄÿFèëÞ�(Pèî÷ƒÄ¸‰Fè�~è}�vðv芘Pèl÷ƒÄÿFèëä�+PèÁ÷ƒÄ¸‰Î‹å]ÃU‹ì‹^‹N‹VöÆ€œÒC�t�ò— âî‹Â]ÃU‹ìƒì8‹F‰FÈ‹vÈÿFÈŠ�àÿ‰Fú‹FúÿNú Àt+‹vÈŠ�àÿƒø uë‹vÈŠ�àÿƒø u¸‹vȈÿFÈë˸‹vȈ�.‰FΉF̉FÊ‹F‰Fȸ‰Fþ‹vÈÿFÈŠ�àÿƒÀ‰Fú‹FúÿNú Àué‘‹vÈŠ�àÿ Àtëéy‹vÈŠ�àÿƒøu ‹FȃÀ‰FÌë‹FÈ�vЋVþÿFþÑâò‰�~þ|�3P¸ P覃ĸ€PèVƒÄ‹vÈŠ�àÿ ÀtÿFÈÿNúëëÿFÈébÿ¸�vЋVþÑâò‰‹�‰Fü¸‰��C‰FÈ‹vÌŠ�àÿƒø>u ÿFÌ�E‰FÈ‹Fü Àt‹Fü‰��G�vЉ�FÐPÿvþèâÁƒÄPèƒÄ‹å]ÃU‹ìƒìÿvèÁƒÄ‹å]ÃU‹ìƒì�IP¸ PèîƒÄ‹F‰Fþ‹vþŠ˜ƒøt‹vþŠ˜P¸Pè̃ÄÿFþëß�TP¸ P踃ĸÿPè›ÿƒÄ‹å]ÃP2Àë P°ëP°ëP°SQRVU‹ìW˜“‹F‹V‹v‹~öÃu Òy ÷Ú÷؃ÚþÇ ÿy ÷ß÷ރ߀÷S¹ 3ÛS‡NúÑàÑÒÑÓÑÑ;ùw r;ów+ÞÏ@‡Núâá^YöÁt “‹ÖöÅt€õöÁu öÅt÷Ú÷؃ډF‰V_]^ZY[XÂU‹ìPR‹F ÷f‰F ‹F÷fF ‹F÷f‰FV ZX]ÂU‹ì‹vŠ�àÿ Àt'ŠF�àÿ�àÿ‹vÿFŠ�âÿ;Ðu ÿN‹F‹å]Ãë̸‹å]ÃU‹ìƒì‹� ÀtC�vøV觃ċFü‰Fþ¸V‰Fð‹F‰Fö‹F‰Fú�vðV�vðV蒃ăà Àt¸ÿÿ븋å]ø‰Fòÿv詃ĉFð Àtë¸ÿÿ‹å]Ãÿvè�ƒÄ‰Fò ÀtëÿvðèôƒÄ¸ÿÿ‹å]øP‹FðƒÀPÿvòècƒÄÿvð¸PèïƒÄ�àÿ‰Fôÿvð較Äÿvò賃ċFô Àt¸ÿÿ븋å]Ëå]ÃU‹ìƒìÿv较ĉFþ Àt¸Pÿvÿvþè’ƒÄë�€P¸ P舃ĸ€Pè8ƒÄ‹Fþ‹å]ÃU‹ìŠF˜˜ƒøa|ŠF˜˜ƒøz¸àÿPZŠF˜ˆFŠF˜˜‹å]ÃU‹ì‹F‹‰ Ût(x Àt"P‹V�‰è)�‡´ Í! ít 9nv‹nëàX‹� Ût´LÍ!�6žÿ,¾ŠÂ±Óê$�'@'Nˆuíú”´ Í!¸ÿÿPè“ÿÛãü¸.ŽØŒ &¡;=vÜ+=Œß�Ç;øs‹Ç¾Ž;ðsÅ+Æ;;r½;9v¡9ðŒß‹Æ+Ç=v¸+ð‹þ‹ð±ÓàœYúŽ×‹à3íU‹ìQ�þW´0Í! Àu2ä[£�t [XŽÀ+Ø´JÍ!ŒÛ¾€Š €Á�áþ+á‹üó¤ŽÛ‹ÄPŽÃ¿A¹ +Ï3ÀóªèˆúPèÝþU‹ìƒì�Füÿ‹F‹v‹;Ðt�¢P¸ PèƒÄ¸ˆ€Pè°þƒÄ�‰Fü‰Fþ‹vü‹4‰vú öt‹F;Fúwë‹Fü‰Fþ‹Fú‰FüëÜ‹F;Fúu믋vü‹4‹~‰5‹F‹vü‰�;Füt4‹F‹VüƒÂ‹vüT;Ðu!‹vü‹DƒÀ‹vD‹vü‰D‹v‹4‹~ü‰5ë ‹Fü‰Fþ‹F‰Fü‹Fú Àt2‹Fú‹VüƒÂ‹vüT;Ðu‹vü‹DƒÀ‹vúD‹vü‰D‹vú‹4‹~ü‰5‹’‹VüƒÂ‹vüT;Ðu‹Fü‰’¸‹vþ‰‹å]ÃU‹ìŠf‹VÍ!]ÃU‹ìƒì‹� Àt7‹F‰Fö¸A‰Fð�vøVèï ƒÄ�vðV�vðVèò ƒÄƒà Àt¸ÿÿ븋å]ÃÿvèƒÄ‰Fð Àtë¸ÿÿ‹å]Ãÿvð¸Pè‹ÿƒÄ�àÿ‰FòÿvðèXþƒÄ‹Fò Àt¸ÿÿ븋å]Ëå]ÃU‹ìƒì‹F‰Fþ‹vþŠ�àÿ Àt1‹vþŠ�àÿƒøAr‹vþŠ�àÿƒøZw¸ ‹vþŠ�âÿЈÿFþë‹F‹å]ÃüU‹ìŒßŽÇ‹~3À3ÉIò®-+Á]ÃU‹ìPSQWŒÈŽÀ‹~‹F&‹ ‹ÙÑãûAýò¯ƒÇû&‹‰F_Y[X]üÂüU‹ìŒßŽÇ‹~3À3ÉIò®÷Ñ‹v‹~öÁt¬ªÑéó¥‹F]ÃU‹ìƒìV‹vƒÆŠ�àÿƒø:u3‹vŠ�àÿPèüƒÄ‰Fª�~ªA}ë�~ªP~馸‹VЉVë¸PèHþƒÄ�àÿƒÀA‰Fª�¨P�F°PèlÿƒÄ‹Fª�v°ˆ�F°ƒÀ‰Fþ‹F‰Fü‹vüŠ�àÿ Àt‹vüŠ�àÿƒø\tÿFüëà‹vüŠ�àÿ Àtëë\¸‰F¬‹F‰Fü‹vüÿFüŠ�àÿPèTûƒÄ‹vþÿFþˆ�àÿƒø\uë‹F¬ ÀtÿN¬ëÿNþëÉ‹Fþ�V°ƒÂC;ÐséÛ‹Fü‰Fémÿ‹Fþ�V°ƒÂ;ÐsÿNþ¸‹vþˆ‹� Àtëë ‹Fþ�V°ƒÂ;Ðu¸�v°ˆ¸P�F°Pè4þƒÄƒÀ&Pè$ ƒÄ‰F® Àtëëv�F°P‹v®�D%Pè[þƒÄ‹Fªƒè@‹v®ˆ¸ P° P‹v®�DPèø ƒÄ�vV¸P‹v®�DPè;ƒÄ Àtë�vV¸P‹v®�D Pè ƒÄ Àtë‹F®‹å]Ãÿv®è–ûƒÄ¸‹å]ÃU‹ìƒì‹v‹4‰vü‹vüŠ�àÿ ÀtG‹vüÿFüŠ�àÿPèúƒÄƒà‰Fþ�~þ.uë%�~þ!}¸‹å]ËF ÀtÿN‹Fþ‹vÿFˆ묋Fü‹v‰¸‹å]ÃU‹ìƒì‹FÿN Àt*‹vŠ�àÿ‰Fþ‹vŠ�àÿ‹vÿFˆ‹Fþ‹vÿFˆëÌ‹å]ÃU‹ìƒìX�~s‹å]ø‰F®°�v°‰‹Fƒè�v؉‹F®ÿN® ÀuéÛ�v°‹F®Ñàð‹‰F¬‹F¬ƒÀ‰F¨�vØ‹F®Ñàð‹‰Fª‰F‹F¨;Fªr颋F¨;Fªs.‹FP‹F÷f¬^ðV‹FP‹F÷f¨^ðV‹v ÿփăø}ÿF¨ëÊ‹F¨;Fªw.‹FP‹F÷fª^ðV‹FP‹F÷f¬^ðV‹v ÿփăø}ÿNªëÊ‹F¨;Fªs+ÿv‹FP‹FªÿNª÷f^ðV‹FP‹F¨ÿF¨÷f^ðVè»þƒÄéSÿ‹FP‹F÷fª^ðV‹FP‹F÷f¬^ðV‹v ÿփăø~%ÿv‹FP‹F÷fª^ðV‹FP‹F÷f¬^ðVèjþƒÄ‹Fª;F¬vÿNª‹Fª;F¬v<‹F;F¨v4‹F+F¨‹Vª+V¬;Ðs$¸P�vV�vªVè-þƒÄ¸P�v¨V�v¬VèþƒÄ‹Fª;F¬v!‹F¬�v°‹V®Ñâò‰‹Fª�vØ‹V®ÿF®Ñâò‰‹F;F¨v!‹F¨�v°‹V®Ñâò‰‹F�vØ‹V®ÿF®Ñâò‰�~®r �«PèõôƒÄéþ‹å]ÃüU‹ìŠ^€û%t€û&tPœZRèX-oI¢IP€æ R3ێÊ^ÑãÑã&ÿw&ÿ7‹^ ¹ÿ7CCâú_^ZY[XÏ‹ìœWVRQSP‹^¹6�CCâùX]]ÃU‹ìQRP‹Nãƒù v¹ ‹F‹V ÑàÑÒâú‰F‰V XZY]ÂU‹ìŠF˜˜ƒøA|ŠF˜˜ƒøZ¸ PZŠF˜ˆFŠF˜˜‹å]ÃU‹ìƒì‹F‰Fþ‹vþŠ�àÿ Àt1‹vþŠ�àÿƒøar‹vþŠ�àÿƒøzw¸àÿ‹vþŠ�âÿЈÿFþë‹F‹å]ÃU‹ìƒì¸‰Fì‰Fî‰Fê�~ê}�6è‹FêÑàð‹4 ötëëÿFêëß�~êué ¸P°PèwƒÄ‰Fî‹Fî ÀtëéðÿF‹F÷Ѓà‹vî‰DÿvèTùƒÄƒøé´‹vƒÆŠ�àÿƒø:té ¸‰Fè�~è|é�¸‰Fæ�~æ}9�6»‹Fè÷ëð�Fæ‹ðŠ�àÿP‹vvæŠ�àÿPèˆõƒÄZ;ÂuÿFæëÀ�~æté:‹FƒàP�6»‹Fè÷ëðŠD�àÿZ;Ât鸋vî‹T ЉT�6»‹Fè÷ëðŠD�àÿ‹vî‰�~è|é«‹� Àué ‹Fƒèƒà�À=‰Fð�vøV芃Ä�6�‰Fö�vðV�vðV脃ăà Àt龋Fð‹vî‰D¸€‹vî‹T ЉT�~uG¸D‰Fð‹vî‹D‰Fò�vðV�vðVè?ƒÄ¸D‰Fð‹vî‹D‰Fò‹Fö�àÿƒÈ ‰Fö�vðV�vðVèƒÄ‹vî‹Dƒàƒøu ‹vî‹4ƒþu ¸ˆ‹vî‰Dë ¸‹vî‰Dë ¸‹vî‰DëÿFèéfþ‹vî‹D÷Ѓà Àué¿ÿvèô÷ƒÄ‹vî‰ Àtëéñ‹vî‹4�D%ƒÀ‹ðŠ�àÿ Àt+ÿvèAƒÄ‰Fì ÀtëéÅ‹vî‹4�D%PèŽƒÄ Àt鯋F Àt‹vîÿ4¸Pè'öƒÄ‹vîÿ4‹FƒÀPèöƒÄ�àÿ‰Fè‹Fì ÀtÿvìèHƒÄÿvìèÒôƒÄ�~è~é]¸‹vî‹4‰D¸‹vî‰D‹vîÿtèكċvî‰D Àué0¸ÿP‹vîÿt‹vîÿt衃ċFî�6è‹VêÑâò‰‹vî‹D÷Ѓà Àuéñ‹F Àtéç‹vî‹4‹D‹T‹vî‰D‰T‹vî‹Dƒà ÀuéËvî‹D‹T Ðu鳋vî‹D  ‹T�àÿƒâ‰Fè‹Fè Àt븉Fè‹vî‹D‹TRP‹Fè™[Y+ØÊQS¸ ºRPèÎXZ‹vî‹4‰D!‰T#‹vîÿt¸PèçôƒÄ‹vîÿ4¸!PèØôƒÄ¸‰Fæ‹Fæ;Fè}‹vî‹tvæŠ�àÿƒøuëÿFæëÝ‹Fæ+F虋vî‹\‹LØʉ\‰L‹Fê‹å]ËFî Àt‹vî‹4 öt ‹vîÿ4èPóƒÄÿvîèGóƒÄ¸ÿÿ‹å]ÃüU‹ìŒßŽÇ‹~3À3ÉIò®÷Ñ‹~‹vöÁt¦uÑéó§tƒîƒï¦u¦tHë�@]ÃU‹ìÄv&‹]ÃüU‹ìŒßŽÇ‹~‹÷3À3ÉIò®÷ыы~3ÉIò®O‹ÊöÁt¬ªÑéó¥‹F]Ëô‹tŒ ŒTŒ\ŒDÃüU‹ì‹^¹ÿ7CCâú_^ZY[XÍ!‹ìœWVRQSP‹^ ¹6�CCâùX]ÃU‹ìŒØŽÀ‹v‹~‹N;÷rüëñNùOýó¤]üÃU‹ìƒì‹FƒÀƒàþ‰F�~þv¸‹å]Ë?FP�F+’3ÒZ;Âs¸‹å]Ë’‰Fþ‹F‹’Љ’‹Fþ‹å]ÃU‹ìƒìV‹� Àt븋å]Ã�v²VèÿƒÄ�F¼ƒÀ‰F²ÿvèÞóƒÄ Àt,‹vƒÆŠ�àÿƒø:u‹vŠ�àÿPèUðƒÄƒèAƒà‰F°ë¸Pè´òƒÄ�àÿ‰F°�¹P�F¼PèÛóƒÄ‹F°ƒÀA�v¼ˆ¸G‰FªÿF°�vªV�vªVèªþƒÄƒà Àt¸‹å]Ã�F¼PèTóƒÄƒÀPèhƒÄ‰Fº Àt븋å]Ã�F¼PÿvºèzóƒÄ‹Fº‹å]ÃU‹ìPRQ‹F‹V ‹Nãƒù v¹ ÑúÑØâú‰F‰V YZX]ÂU‹ìŒØŽÀ‹~‹NŠFüóª]ÃU‹ìƒì‹FƒÀƒàþ‰F�~ÿv¸‹å]Ã�‰Fú‹vú‹4‰vü öto‹vü‹D;Fr[‹FƒÀ‹vü‹T;Ðr6‹vú‹4‹FðƒÆ‰vþ‹vü‹4‹~þ‰5‹vü‹D+Fƒè‹vþ‰D‹Fþ‹vü‰ë ‹vü‹D‰F‹vü‹4‹~ú‰5ë ‹Fü‰Fúé…ÿ‹Fü Àtë‹FƒÀPèÇýƒÄ‰Fü Àt‹Fü‹vü‰‹F‹vü‰D�Fü‹Fü‹å]ÃU‹ìƒì‹F3ÒRP‹F3ÒRPèùìXZ‰Fü‰Vþ‹Fü‹Vþƒúruƒøèv¸‰Fúë ÿvüèåþƒÄ‰Fú Àt¸Pÿvüÿvúè¹þƒÄ‹Fú‹å]ÃU‹ìƒì‹� Àtë¸ÿÿ‹å]Ã�vøVèµüƒÄ‹F‰Fö¸;‰Fð�vðV�vðVè¬üƒÄƒà Àt¸ÿÿ‹å]ø‹å]Ã????????.???:*.*File name string '' is not a valid file string No files. ?/choqvw?/hoqvIllegal option with switch ? Again Back Copy Delete file? Erase files Info: bytes Time = nNeEJump only works in name, ext order Mass copy: Illegal command Protected mass copy: Illegal command Tagged Untagged eXit Illegal command K ( bytes) total -------------Backwards------------ tuj -------------Forewards------------ . to filename -> Verify the copy (Y/N/A) ->Yes No ABORT copy to drive -> Can't copy a file to itself to drive -> Can't copy a file to itself rError opening input file '' rOutput file exits. Delete (Y/N) --> ABORT <== Aborting copying No - copy omitted Yes wError opening output file '' Error allocating space Copying -> : Copy aborted Verifyingr Error opening file for verify ''  Verify error I/O Error occurred Done Erase Tagged or Untagged files --> ABORT <== Aborting erase function  <== Illegal response! Tagged Untagged Query for delete --> ABORT <== Aborting erase function  <== Illegal response! Yes No Delete file (Y/N/A) -->  <== Illegal response! File -- ABORT <== Aborting erase function Yes No DeletedNo -- deletion aborted YES - Deleting file-done Too many files. Terminating search. CWEEP version 1.30 files, using bytes (K) -- bytes free (K) sp/cr Advance to next file [L] Log new drive/filename [A] Re-tag '#' marked files [M] Mass copy tagged files [B] Back up one file [P] Protected mass copy [C] Copy file to drive [R] Rename a file [D] Delete a file [S] Sort directory [E] Erase (un)tagged files [T] Tag a file [F] Free space on a drive  [U] Untag a file [H] Hexidecimal display [V] View file on screen [I] Print size/time for file [W] Wildcard file tag [J] Jump to a named entry [X] Exit program [?] Print this message [?] Print this message [Z] Change subdirectory [-?], [+?] List other help messages Commands when prefixed by a '-' [C] Copy file to a new name [H] Hex dump to screen with page pauses [O] Output a list of tagged files to a disk file [Q] List tagged files  [V] View file to screen with page pauses [W] Tag files not matching wildcard Commands when prefixed by a '+' [H] Hex dump to screen and printer [O] Output a list of untagged files to a disk file [Q] List untagged files [V] View file to screen and printer Tagging file - ( total) Log in drive and files -> :*.*Rename to or * -> *Error renaming '' to '' File '' renamed to '' Error in processing new name Rename files matching wildcard -> Illegal file name given: Rename files to -> Illegal file name given: Rename '' to '' (Y/N/A) -> ABORT <== Aborting renaming Yes Error in renaming Done No Free space on drive -> Free space on drive '' is bytes (K) Change directory -> Illegal CHDIR command; no change made Subdirectory changed: Error in sort order in compare '' Sort order -> ndse Choices are: [N]ame [E]xtension [S]ize or [D]ate. Prefix with '-' for inverted order Jump to -> Illeg  al file name string List untagged files [More] Wildcard matching ->Wildcard not matching -> Illegal file name string Tagging No files tagged files tagged, using bytes (K) Output untagged to -> rOutput file '' exists. Delete (Y/N) --> No - omitted Yes wError opening output file '' :JanFebMarAprMayJunJulAugSepOctNovDecView with paging with printerrError opening file '' for output Use or to abort, any other key to pause/continue [More] Hex dump with paging with printerrError opening file '' for output Use or to abort, any other key to pause/continue =[More] Addr 0- 1- 2- 3- 4- 5- 6- 7- 8- 9- A- B- C- D- E- F- <<>> : = con: TOO MANY ARGS$wac ABORT:-$ -- use regular abort for other info!! $ALLOC$ $ NO CORE$FREE$ :qsort failure :\Êš;áõ€–˜@B †'èd 0123456789ABCDEF€€€CONCONAUXAUXPRNÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ..mb 11 .he TurboDOS/PC Diskless Download ROM Configuration .fo Copyright 1985 (C) Intercontinental Micro Systems, Inc. The following information is a guide for configuration of your system to use the Intercontinental Micro Systems diskless download ROM. The diskless download ROM allows you to configure a PC or PC- compatible system so that DOS is loaded from the TurboDOS file server instead of a local drive attached to the PC. This procedure is dependent on the versions of DOS that exist, so the standard IBM PC-DOS is used here for the purpose of discussion. OVERVIEW: -------- The diskless download ROM is used in the ICM LAN-PC controller for the purpose of downloading DOS from a ICM TurboLAN file server. This allows the PC to be free of local storage drives and become a lower cost "PC workstation" in the TurboLAN network. The ROM is located on the LAN-PC controller in the provided ROM socket. This ROM socket should be configured for a 2k (2716) type EPROM, refer to the LAN-PC hardware documentation for the proper configurations on the board. The diskless download ROM requires that the LAN-PC be configured for the IBM PC default memory and I/O addresses. LAN memory segment: E000 hex LAN I/O address: 200 hex The diskless download ROM links itself into the bootstrap interrupt vector (INT-19) during initialization. This will require compatibles to execute an INT-19 instruction to begin the bootstrap procedure as in the IBM PC. DOS is loaded through the use of a psuedo file "PCIMAGE.DSK" located on your file server and a simulation of the PC's disk I/O interrupt vector (INT-13). Once the image file is opened, the first sector is loaded at the normal boot sector location and control transfer to it. The bootstrap continues from this point as if it were loading from a local floppy disk. A Utility program "BOOTFILE.COM" is provided to create the psuedo file. A special version of the TurboDOS/PC driver must be configured that defines all drives to be remote. It is recomended that all 16 drives be mapped remote on your file server allowing changes in the file server to be immediatly recognized by your diskless workstation. Once executed from your psuedo file, TurboDOS/PC gives your workstation access to remote drives, printers, and queues, thus completing the download procedure. .cp 6 PSUEDO FILE CREATION: -------------------- Creation of the psuedo file requires a PC (with at least one local floppy disk drive) be supported on your TurboLAN network. 1. Prepare a floppy disk for bootstrap operations (preferably a fresh disk with the use of the formatter supplied with your system. Copy your configuration file "CONFIG.SYS" along with any additional drivers needed for your PC. Copy the cold start components of your TurboDOS/PC system, usually "TURBOPC.COM" and "TURBOPC.DRV". An "AUTOEXEC.BAT" file can be used also but this imposses curtain limitations on the downloading dev  ice in your network (see below). 2. Use the utility program "BOOTFILE.COM" to transfer the image of the boot disk into the psuedo file on your file server "PCIMAGE.DSK". For example: BOOTFILE A: E:PCIMAGE.DSK This could transfer the image of the local PC-DOS boot disk in drive A to the psuedo image file on remote drive E. The psuedo image file must be located in user area 0 on the file server. This most often is the root directory of remote drives. .cp 6 DESTINATION CIRCUIT/NODE CONFIGURATION: -------------------------------------- The circuit and node ID for the file server is configured with the use of the 8-position switch located on the LAN controller. Positions 1-2 of this switch denote the circuit number (one of 4) and positions 3-8 denote the node number (one of 63, node 0 is invalid). .cp 6 DOWNLOAD ROM PROCEDURE: ---------------------- The following steps outline the diskless download procedure. 1. The diskless download ROM is given control during the ROM BIOS initialization phase, where it will alter the bootstrap interrupt vector (INT-19) in order to gain control later, and return control to the ROM BIOS. 2. When the ROM BIOS has completed its initialization phase, it executes the bootstrap interrupt, where the diskless download ROM regains control. Once at this point, the download ROM displays its sign-on message as follows: TurboDOS/PC Network Download ROM Copyright 1985, Intercontinental Micro Systems, Inc. 3. The download ROM will now initialize the LAN-PC controller and read its own node ID out of its memory buffer. The sense switch is also read to determine the circuit and node ID of the file server. If errors are determined during initialization, the download ROM displays the following error message: LAN-PC Controller not present 4. Network requests are formed and sent to the file server to attemp an open of the psuedo file. Open file requests are attemped on devices A through P (user area 0) of the file server before the download ROM gives up and displays the following message: Can't open download file 5. Once the psuedo file is opened, the download ROM alters the disk I/O vector (INT-13) to point to its own simulation of disk I/O. The disk I/O vector is used from here on to read sectors within the psuedo file. Sector 2 (first FAT sector) is then read into memory and the format of the psuedo image file is determined (i.e. single or double sided, 8 or 9 sector disk). This allows any of these formats to be used when the local DOS boot disk is prepared. If an error occurs when reading this sector, the download ROM displays the following message: Can't read FAT sector 6. Sector 1 (DOS boot sector) is then read into the normal memory location 0000:7C00 and control is transfered to it. On errors, the download ROM will display the following message: Can't read boot sector 7. Loading of the DOS now proceeds in the normal fashion except that all physical disk I/O operations are translated to random record reads of the psuedo file and made over the network. Errors that occur over the network are reported by the following messages: Network send error Network receive error Diskless download errors are all considered fatal by nature. After reporting errors on the console, the download ROM displays the following message:  Download aborted, processor halted The PC must be reset to perform any retries. The CTRL-ALT-DEL sequence will accomplish this on most PC's. .cp 6 DOWNLOAD ROM CREATION: --------------------- The diskless download ROM has been configured for standard IBM PC operation. Most PC clones and compatibles should operate with this configuration without the need for alterations. If changes must be made to the standard configuration, the following steps may be used to produce the ROM. The object code for the diskless download ROM is distributed in the file "TPCLOD.O". A "GEN" and "PAR" file exist for to link the object file and provide examples of the patchable options. Refer to "TPCLOD.PAR" for current information on patch options. The following is the list of utilities and the steps required to produce the ROM native code. TLINK.CMD - Object linker MONITOR.COM - S/W 2000 Z80 monitor (other equivalent) CHECKSUM.CMD - ROM checksum utility   TZ80.CMD - Z80 emulator (if Z80 machine unavailable) 1. Link the relocatable object file: TLINK TPCLOD.ROM * TPCLOD 2. Strip off the .CMD header (first 128 bytes of file): MONITOR - or (TZ80 MONITOR) for 8086 processors *LTPCLOD.ROM 100-97F *STPCLOD.ROM 180-97F 180-97F 3. Add ROM checksum byte to end of file: CHECKSUM TPCLOD.ROM .cp 6 EFFECTS OF DISKLESS DOWNLOADING ------------------------------- The following section explains certain characteristics of diskless ROM downloading that you may encounter when configuring your system. An "AUTOEXEC.BAT" file can be created and placed into the psuedo file to execute the startup sequence desired with your PC, but it should be realized that when TURBOPC.COM is executed, device A will usually be re-defined as a TurboDOS remote drive, where the continuation of the file cannot be found. If drive A (remote) exists, and is ready for operation, the batch procedure will terminate normally and the drive prompt will appear. However, if drive A is not ready, DOS will fall into a continuous loop trying to access drive A to finish the batch job. An "AUTOEXEC.BAT" file will work best if drive A (remote) is the drive containing the psuedo file "PCIMAGE.DSK" which downloaded your PC. In fact, if an identical copy of this batch file exists on drive A (remote) under the user area defined as the root (usually user area 0), then the batch job will continue normally even after TURBOPC.COM executes and terminates. A situation will arise when DOS 3.xx and some versions of 2.1x are used. These versions require execution of TURBOPC3.COM directly after execution of TURBOPC.COM. If a batch file is used with this case, DOS becomes disabled after TURBOPC.COM executes and terminates because program loads from remote drives will require TURBOPC3.COM. This ambiguity can only be solved by configuring your TURBOPC driver and retaining drive A as local (the psuedo file). TURBOPC3.COM is then executed from the psuedo file. The supplied LOCAL.COM utility should be executed last during startup, to avoid network conflicts that arise when the psuedo file is referenced later. The "AUTOEXEC.BAT" file can be used throughout startup but CANNOT execute the LOCAL.COM utility. This must be done manually. e to end of file: CHECKSUM TPCLOD.ROM .cp 6 EFFECTS OF DISKLESS DOWNLOADING --------------; TurboDOS/PC diskless download ROM. ; Specifies the file(s) used to create ROM object ; TPCLOD ; Basic module ; The2 3ÎPE EXE`\4€²AUTOEXECBATNe ï‡�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿö; TurboDOS/PC diskless download ROM. (IBM-PC and compatibles) ; Specifies the patch points for custom ROM generation. ; ; The following patches control the physical addressing of the ; LAN controller. (shown is standard IBM-PC addressing) ; BUFSEG = (0xE000) ; LAN controller buffer segment address IOBASE = (0x0200) ; LAN controller base I/O address ; ; The following flag byte controls the patching of vector ; INT-19 (bootstrap). When set, INT-19 is patched to allow the ; download ROM to gain control when the bootstrap is executed. ; When cleared, INT-19 is NOT patched, allowing local disk bootstrap ; to proceed. ; Note: INT-18 (ROM BASIC) is always patched to allow the download ; ROM to gain control if the bootstrap fails. ; I19FLG = 0xFF ; ; The following patch controls the psuedo image download filename ; that is referenced on your TurboDOS file server. ; Note: Drives A-P are scanned once by the download ROM and ; user area 0 (system) is always used. ; FILNAM = "PCIMAGE ","DSK" ; 8-  byte name + 3-byte type ; C„ÀtèëóX�ÃPSQR$ˆÂ´Í!ZY[XÃ�PQFLODöUªéiTurboDOS/PC Network Download ROM Copyright 1985, Intercontinental Micro Systems, Inc. àÿPCIMAGE DSKPR1ÀŽØÇ`–Œb.€>ct Çd–ŒfZX˸ ŽØŽÐ¼û´°Í»èÒèâs$»¸é”LAN-PC Controller not presentÆƸ0À¢Ä¢ÅÆ8¹7¿ 0ÀüóªÆÆ)¹ ¾d¿üó¤€!€ Å À¢ Æ¢?¡À£ £ ÄþÀ¢¡Â£ è’t. ÄþÀ<s¢Äé–ÿ»SéùCan't open download file1ÀŽÀ&¡L£&¡N£&ÇL &ŒNǸ¹1Ҏ»|Ís$»©é£Can't read FAT sector  &ŠöИÀ‰Ã.‹‡¿£¸¹1Ҏ»|Ís»ðé\Can't read boot sectorê|û„ätþÌtþÌu„Òt ´ÿùÊ0ÀøëøUWVRQSPP¸ ŽØX‰ßÀÀ£ˆèö.ðö.0íÈHÀÀ£<WÆ8¹¿ 0ÀüóªÆ!Æh Å À¢ Æ¢?¡À£ £ ÄþÀ¢¡Â£ è/_u¹€¾@üó¤ÿ<ÿt é ÿX´ÿùëX0äø[YZ^_]éRÿè_rBƸèr< <t < t( „ÀÃÆ  ¢ ¡ ‡ £ Æ€Æÿéºÿ ÿû#é/»6é)Network send errorNetwork receive errorè0»Xè*ûëþ Download aborted, processor halted .ŠC„Àt S´1ÛÍ[ëîÃ.‹aƒÂì¹ú¸ÝHuýâø.Ž_&¡&£þ<Ñùu7ˆá.‹aƒÂìˆÄÐÈÐÈ%?£ÂˆÈ£À.‹aB°î°î°î°î.‹a0ÀîøÃ¿.‹aB°î.‹a쨀tû.Ž_¾ŠDˆÁ0ÀˆÅÎ(ȈÁ&Š8ÈsˆÁüó¤øÃùþŠ„ÀtL.Ž_¿ŠD&ˆE0ÀˆÅ*&ˆEˆÁÏŠ üó¤.‹aB° î¹.‹aì¨uâùë¨t øÃ.‹aB°îùÃ~#TITLE "TURBODOS/PC CIRCUIT DRIVER (SMC ARCNET-PC)" #SUBTTL "COPYRIGHT 1986, SOFTWARE 2000, INC." ; ; COPYRIGHT 1986, SOFTWARE 2000, INC. ; ; VERSION: 01/28/86 ; TLINK "8BH" ;TLINK -8BH OPTION ; MODULE "TPCARC" ;MODULE NAME ; BUFSEG == 0xE000 ;TRANSMIT/RECEIVE BUFFER SEGMENT ; IOBASE == 0x0200 ;I/O PORT ADDRESS BASE ; INTMSK == IOBASE+0 ;COM 9026 INTERRUPT MASK REGISTER STATUS == IOBASE+0 ;COM 9026 STATUS REGISTER COMAND == IOBASE+1 ;COM 9026 COMMAND REGISTER ; DISXMT == 1 ;DISABLE TRANSMITTER COMMAND DISRCV == 2 ;DISABLE RECEIVER COMMAND ENAXMT == 3 ;ENABLE TRANSMITTER COMMAND ENARCV == 4 ;ENABLE RECEIVER COMMAND DEFCON == 5 ;DEFINE CONFIGURATION COMMAND CLRFLG == 6 ;CLEAR FLAGS COMMAND ; TA == 1<<0 ;TRANSMITTER AVAILABLE BIT TMA == 1<<1 ;TRANSMIT MESSAGE ACKNOWLEDGED BIT RECON == 1<<2 ;RECONFIGURATION BIT TST == 1<<3 ;TEST MODE BIT POR == 1<<4 ;POWER ON RESET BIT ETS1 == 1<<5 ;EXTENDED TIMEOUT STATUS 1 BIT ETS2 == 1<<6 ;EXTENDED TIMEOUT STATUS 2 BIT RI == 1<<7 ;RECEIVER INHIBITED BIT ; LOC Code# ;LOCATE IN CODE SEGMENT ; CKTDRV: MOV AL,CL ;GET FUNCTION NUMBER INC AL ;FUNCTION NUMBER=0FFH? JZ CKTIN ;IF SO, CONTINUE DEC AL ;FUNCTION NUMBER=0? JZ RCVMSG ;IF SO, CONTINUE DEC AL ;FUNCTION NUMBER=1? JZ SNDMSG ;IF SO, CONTINUE RETF ;ELSE, DONE ; CKTIN: MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=DISXMT ;GET DISABLE TRANSMITTER COMMAND OUT DX,AL ;DISABLE TRANSMITTER MOV AL,=DISRCV ;GET DISABLE RECEIVER COMMAND OUT DX,AL ;DISABLE RECEI  VER MOV AL,=DEFCON ;GET CONFIGURATION COMMAND OUT DX,AL ;DEFINE CONFIGURAION MOV AL,=CLRFLG|0x18 ;GET CLEAR FLAGS COMMAND OUT DX,AL ;CLEAR POR AND RECON STATUS FLAGS MOV DX,=INTMSK ;GET INTERRUPT MASK REGISTER XOR AL,AL ;GET INTERRUPT MASK OUT DX,AL ;DISABLE ALL INTERRUPTS MOV BX,=DRINFO ;GET DRIVER INFORMATION OFFSET MOV AX,=DRVLEN ;GET DRIVER LENGTH RETF ;DONE ; RCVMSG: MOV DI,DX ;MESSAGE BUFFER ADDRESS TO DI-REG MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=ENARCV ;GET ENABLE RECEIVER COMMAND OUT DX,AL ;ENABLE RECEIVER TO BUFFER 0 MOV DX,=STATUS ;GET STATUS REGISTER __WTL: IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TST ;TEST MODE BIT SET? JNZ __ERR ;IF SO, CONTINUE TEST AL,=RI ;RECEIVER INHIBITED BIT SET? JZ __WTL ;IF NOT, CONTINUE MOV AX,DS ;GET DS-REG MOV ES,AX ;SET ES-REG MOV AX,=BUFSEG ;GET BUFFER SEGMENT MOV DS,AX ;SET DS-REG MOV SI,&0 ;GET RECEIVE BUFFER 0 MOV AL,2[SI] ;GET RECEIVE BUFFER COUNT MOV CL,AL ;BUFFER COUNT TO CL-REG XOR AL,AL  MOV CH,AL ;MAKE BUFFER COUNT DOUBLE LENGTH ADD SI,CX ;CALC NETWORK MESSAGE ADDRESS SUB AL,CL ;CALC ACTUAL MESSAGE LENGTH MOV CL,AL ;ACTUAL MESSAGE LENGTH TO CX-REG ES MOV AL,[DI] ;GET MAXIMUM MESSAGE LENGTH CMP AL,CL ;MAXIMUM MESSAGE LENGTH EXCEEDED? JNC __MLNE ;IF NOT, CONTINUE MOV CL,AL ;ELSE, TRUNCATE MESSAGE LENGTH __MLNE: CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;MOVE MESSAGE FROM RECEIVE BUFFER MOV AX,ES ;GET ES-REG MOV DS,AX ;SET DS-REG XOR AL,AL ;SET RETURN CODE=0 RETF ;DONE __ERR: MOV AL,=0xFF ;SET RETURN CODE=0FFH RETF ;DONE ; SNDMSG: MOV SI,DX ;MESSAGE BUFFER ADDRESS TO SI-REG MOV AL,[SI] ;GET MESSAGE LENGTH TEST AL,AL ;MESSAGE LENGTH=0? JZ __X ;IF SO, CONTINUE MOV DX,=STATUS ;ELSE, GET STATUS REGISTER IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TST ;TEST MODE BIT SET? JNZ __ERR2 ;IF SO, CONTINUE MOV AX,=BUFSEG ;ELSE, GET BUFFER SEGMENT MOV ES,AX ;SET ES-REG MOV DI,&0x0200 ;GET TRANSMIT BUFFER 1 MOV AL,1[SI] ;GET MESSAGE DESTINATION ID ES MOV 1[DI],AL ;SET DESTINATION ID XOR AL,AL MOV CH,AL SUB AL,0[SI] ;CALC TRANSMIT BUFFER COUNT ES MOV 2[DI],AL ;SET TRANSMIT BUFFER COUNT MOV CL,AL ;TRANSMIT BUFFER COUNT TO C-REG ADD DI,CX ;CALC MESSAGE BUFFER ADDRESS MOV CL,0[SI] ;GET ACTUAL MESSAGE BUFFER LENGTH CLD ;CLEAR DIRECTION FLAG REP MOVS BYTE ;MOVE MESSAGE INTO TRANSMIT BUFFER MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=ENAXMT|1<<3 ;GET ENABLE COMMAND OUT DX,AL ;ENABLE TRANSMITTER MOV CX,=0 ;INITIALIZE LOOP COUNTER MOV DX,=STATUS ;GET STATUS REGISTER __WTL: IN AL,DX ;GET CONTROLLER STATUS TEST AL,=TA ;TRANSMITTER AVAILABLE BIT SET? JNZ __TABS ;IF SO, CONTINUE LOOP __WTL ;ELSE, CONTINUE JMPS __ERR1 ;CONTINUE __TABS: TEST AL,=TMA ;MESSAGE ACKNOWLEDGED BIT SET? JZ __ERR2 ;IF NOT, CONTINUE XOR AL,AL ;ELSE, SET RETURN CODE=0 RETF ;DONE __ERR1: MOV DX,=COMAND ;GET COMMAND REGISTER MOV AL,=DISXMT ;GET DISABLE TRANSMITTER COMMAND OUT DX,AL ;DISABLE TRANSMITTER __ERR2: MOV AL,=0xFF ;SET RETURN CODE=0FFH __X: RETF ;DONE ; DRINFO: ;DRIVER SUPPLIED NETWORK INFORMATION BYTE 0 ;INITIAL USER AREA (ROOT DIRECTORY) BYTE 0xFF ;PRIVILEGED USER FLAG (MKDIR/RMDIR) BYTE 0xB8 ;COMPATABILITY FLAGS BYTE 1 ;INITIAL PRINT MODE BYTE 1 ;INITIAL QUEUE/PRINTER ASSIGNMENT BYTE 2 ;INITIAL SPOOL DRIVE BYTE 0 ;END OF PRINT CHARACTER WORD 0x0201 ;NETWORK NODE (SOURCE ID) WORD 0x0202 ;NETWORK NODE (DEFAULT ID) BYTE 0xFF ;NUMBER OF LOCAL DRIVES (AUTOMATIC) BYTE 8 ;NUMBER OF REMOTE DRIVES WORD &DSKAST ;DISK ASSIGNMENT TABLE ADDRESS BYTE 1 ;NUMBER OF REMOTE PRINTERS WORD &PTRAST ;PRINTER ASSIGNMENT TABLE ADDRESS BYTE 1 ;NUMBER OF REMOTE QUEUES WORD &QUEAST ;QUEUE ASSIGNMENT TABLE ADDRESS ; DSKAST: BYTE 0 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 1 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 2 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 3 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 4 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 5 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 6 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) BYTE 7 ;TRANSLATED DRIVE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) ; PTRAST: BYTE 0 ;TRANSLATED PRINTER NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID) ; QUEAST: BYTE 0 ;TRANSLATED QUEUE NUMBER WORD 0x0202 ;NETWORK NODE (DESTINATION ID)    ; DRVLEN == .-CKTDRV ;DRIVER LENGTH ; END ¿$Š^µüò®u öÙ^&ˆ\Ã&¢\è÷þþȈ´œÿ>Ã1ÛŽÛˆÃÛÛŽG‹Ã1ێÈÃÛÛ&‰&Œ_à Invalid drive specified $�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿöéÕ�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 03/11/86) * Å à K  ­ Ó ù  I x Ü Ô é 9k:Œ£TURBOPC DRV TurboDOS/PC 1.08 ($) Copyright 1986, Software 2000, Inc. $Already installed $Insufficient memory $ not present $ load error $ŒÈŽØŽÐ¼(ºNèð‹;辺cèã° è�‹ùŽÂ°!蔉‰ŒÀ;Âu ¾X¹ó¦uéѸäo%ðÿ£$‹Ð±ÓèŒËã"¡+Âsé³P´Í! \¢(ŒØŽÀ¾]Š< t¿)¹üó¤Š< t¹ó¤º(´Í!Ç6Y„Àuz´'Í!PQ´Í!YXþÈueãp¿è>¹äo+Ïã2ÀóªÇÃÄ&ÇG>&ŒOŒÊ¹X° è¹Z°!躱ÿÿ $P$S¡$G GGèGƒÄZüÍ'º�뺢ë躹ëèºÉèÎÍ ² è(² è#»)¹è ².è¹èÊC€ú tèâóôè’ÃX.�.�œ.ÿ6.ÿ6Šáë´.€>Mt°ÿÏS€üÿt&€üYt.Ç&ŠÜ·Û�ûºs.ƒ¿>u[.ÿ.PŒÈŽØÆMÿ� �ø�ú���‰ü‰þ‰6‰>‰.Œ Œ‰&ŒÈŽÐ¼(û¸øP€>ùÿuèë Šù·Ûÿ—>ƒÄ…Àu>¡ø‹ú‹ü‹þ‹6‹>‹.Ž Ž‹&ÿ6ÿ6ÿ6ÿ6 ÆMÏ¡ø‹ú‹ü‹þ‹6‹>‹.Ž Ž‹&ÿ6ÿ6ÿ6ÿ6 ÆMú.ÿ.SŠØ·ÛÛ3ÀŽØ‰‰W[ÃSŠØ·ÛÛ3ÀŽØ‹‹W[ôº'èºèèºdè º è´º°ÿþÀ+ÚsúÚ„Àu„ät0SRŠÐ´Í!Z[´ÃŒØÃVWU‹ìŽF‹~ &Š´]_^ÃVWU‹ìŽF‹~ ‹F &ˆ]_^ÃVWU‹ìŽF‹~ &‹]_^ÃVWU‹ìŽF‹~ ‹F &‰]_^ÃVWU‹ìŽF‹~ Ž^ ‹v‹Nüó¤]_^ÃVWU‹ì‹v‰6Œ‹‹\‹L‹Tÿt‹| ‹l ÿtŽDÇDòÿt�^è/V.Ž‹6‰‰\‰L‰T�D‰| ‰l �DŒDœ�D]_^Üú.ÿô Í!ÃVWU‹ìŠN‹V ÿ ˜]_^ÃŽ‹&ÆMÿ63ÀP¸ÿLÍ!Ë¡&ã&ÃVWU‹ìŠF´Í]_^ÃVWU‹ìƒì&èËöÇFö~@‹~ö‹‰Fö=~@t&‹~ö€}ÿtê‹~ö€}*ÿt ÿvöè ƒÄëÖ‹~öÆEÿëÍÆFÛ0�FÚPèîþƒÄ€~Út!¸P¸PètöPèŒþƒÄ‰FþPè‚þƒÄ;Fþuè”ÇFü�FøP�FúP�FüPè)ƒÄ¸‹å]_^ÃVWU‹ìÇ@€‹~‹E£@¸]_^ÃVWU‹ì‹>âoŠE *ä‹È‹>âoŠE *ä‹ðñ‹~ŠE*ä;Æ} ‹~ŠE¢î>‹v‹>âoŠD:E s ÿvè?þƒÄ‹>âoŠE *ä‹ð‹>âoŠE *䯋~ˆ+À]_^ÃVWU‹ìÿvè¾ƒÄ Àu¸ëèŒ ¸PèuƒÄPÿvèö ƒÄ+À]_^ÃVWU‹ìÿvèŠƒÄ Àu¸ëèX ‹~ˆ*äPènþƒÄ+À]_^ÃVWU‹ìÿvè\ƒÄ Àu¸ë ÿvèL ƒÄ+À]_^ÃVWU‹ìÿvè6ƒÄ Àu¸ë ÿvè& ƒÄ+À]_^ÃVWU‹ìƒì(ÿvè ƒÄ Àu¸é‹~¡è>;Et¡è>HP‹vÿtèÂüƒÄ‹ø÷Çt¸ÿë9è¬ü£oÇoò>ÆFýëþFý€~ý }ŠFý*䋸Ѕ @*ä%=?uâ€~ý uèë ‹~ˆ*äPè‘ýƒÄ鋸ÿ‹~ˆ*äPè}ýƒÄ¸%P¸ @P�FØPèò#ƒÄÆFÿ¸%P�FØP¸2@PèÜ#ƒÄè8#¸2@PŠFÿ*äPèü%ƒÄˆFþ*ä=ÿt5ÆFÿ¸ PŠFþ*ä±Óà@ò>P¸ @PèŸ#ƒÄèa ‹~ˆ*äPèýƒÄ Àtœ+À‹å]_^ÃVWU‹ìÿvèï ƒÄ Àu¸ëÿvèƒÄÿvèÆƒÄ+À]_^ÃVWU‹ìÿvèÀ ƒÄ Àu¸ëÿv賃Äÿvè—ƒÄ+À]_^ÃVWU‹ìƒìÿvèŽ ƒÄ Àu¸ëDè\‹~¡è>;Et¡è>HP‹~ÿuèAûƒÄˆFÿëÆFÿ¸PŠFÿ*äP膃ÄPÿv蛃Ä+À‹å]_^ÃVWU‹ìƒì(ÿvè* ƒÄ Àu¸é×èòú£oÇoò>ÆFýëþFý€~ý }ŠFý*䋸Ѕ @*ä%=?uâ€~ý uèL ‹~ˆ*äPè×ûƒÄ鋸ÿ‹~ˆ*äPèÃûƒÄ¸%P¸ @P�FØPè8"ƒÄÆFÿ¸%P�FØP¸2@Pè""ƒÄè~!¸2@PŠFÿ*äPèB$ƒÄˆFþ*ä=ÿt5ÆFÿ¸ PŠFþ*ä±Óà@ò>P¸ @Pèå!ƒÄè ‹~ˆ*äPèMûƒÄ Àtœ+À‹å]_^ÃVWU‹ì î>*ä‹~ˆ+À]_^ÃVWU‹ì‹~‹E£@‹~‹E£@¸]_^ÃVWU‹ìÿvè ƒÄ Àu¸ëèÿvèƒÄÿvè² ƒÄ+À]_^ÃVWU‹ìÿvèÐ ƒÄ Àu¸ëèäÿvèÀƒÄÿvè€ ƒÄ+À]_^ÃVWU‹ìƒìÿvè› ƒÄ Àu¸鮸ÿ‹~ˆ*äPè~úƒÄ¸ P¸ @P¸2@Pèó ƒÄèO ÇFü,ÇFú2@ÇFøÿ�FøP�FúP�FüPèö#ƒÄ Àua¸2@P¸Pèð"ƒÄƒ>@u¸€ë¡@‰Fþ‹Fþ+ÒRP‹~þƒÇÿ‹Ç  +ÒR@T@RPè¾,ƒÄ£-@‰/@ÿvèà ƒÄ+À‹~ˆ*äPèãùƒÄ+À‹å]_^ÃVWU‹ìƒì ÿvèÌ ƒÄ Àu¸é1èß‹~Æ‹~ƒ}tèó‰Fø Àu"¸PèiƒÄ‰Fø Àu¸‹~ˆ*äPè‚ùéî‹~‹E÷&@‰Fþ ,@*䙉Fô‰Vöÿ6@ÿ6@ÿvþ¡@+ÒRP¡@+Ò¹ÑàÑÒâúFôVöRPè6,ƒÄRPÿvøèrƒÄ ‰Fü;Fþteƒ~üt!ƒ>@u¸ëE‹Fþ+Fü+Ò÷6@‰Vúƒ~úu¸ë+‹FúÿNú Àtƒ>@t+ÀP¡@ÿ@Pÿ6@èÉ÷ƒÄëØ¸‹~ˆ*äPèÃøƒÄ‹Fü@ÿÿ+Ò÷6@‹~‰E‹~‹E+Ò-@/@è¼ÿvèa ƒÄ+À‹å]_^ÃVWU‹ìƒì ÿvèzƒÄ Àu¸éöè�‹~Æèª‰Fú Àu"¸Pè ƒÄ‰Fú Àu¸‹~ˆ*äPè9øé¼‹~‹E÷&@‰Fþ ,@*䙉Fö‰Vøÿ6@ÿ6@ÿvþ¡@+ÒRP¡@+Ò¹ÑàÑÒâúFöVøRPèí*ƒÄRPÿvúè/ƒÄ ‰Fü;Fþt#ƒ~üt ƒ>@u¸ë¸‹~ˆ*äPè¼÷ƒÄ‹~ú‹E0‹U2£@‰@‹Fü@ÿÿ+Ò÷6@‹~‰E‹~‹E+Ò-@/@è¥ÿvèJƒÄ+À‹å]_^ÃVWU‹ìƒìÿvèµöƒÄ‹~€=ÿuu‹~ÿu ‹~ÿuè$öƒÄˆFÿ€~ÿu î>ëþNÿŠFÿ*äPèƒÄ=uAÆFþëþFþ€~þ }‹~ŠFþ*äE @P‹~ÿuèÚõƒÄ=?uÙ€~þ u‹~Æë‹~Æ+À‹å]_^ÃVWU‹ìƒì ‹~Æè‰Fú Àu¸P艃ĉFú Àt^ÿvèƒÄ ,@*䙉Fö‰Vøÿ6@ÿ6@ÿ6@¡@+ÒRP¡@+Ò¹ÑàÑÒâúFöVøRPèj)ƒÄRPÿvúè¦ƒÄ ‰Fþ;@tYƒ~þu¸ë@ƒ>@u¸ë4¡@+Fþ‰Fü‹FüÿNü Àtƒ>@t+ÀP¡@ÿ@Pÿ6@èõƒÄëØ¸‹~ˆ*äPèöƒÄ‹å]_^ÃVWU‹ìƒì‹~Æè3‰Fü Àu%¸P詃ĉFü Àu¸‹~ˆ*äPèÂõƒÄé‹ÿv苃Ä ,@*䙉Fø‰Vúÿ6@ÿ6@ÿ6@¡@+ÒRP¡@+Ò¹ÑàÑÒâúFøVúRPèv(ƒÄRPÿvüè¸ƒÄ ‰Fþ;@t#ƒ~þt ƒ>@u¸ë¸‹~ˆ*äPèDõƒÄ‹~ü‹E0‹U2£@‰@‹å]_^ÃVWU‹ìƒ>@uÇ@€ÿvèãƒÄ]_^ÃVWU‹ì‹~€=t þ,@ ,@*ä=~ Æ,@ÿ@ÿv貃Ä]_^ÃVWU‹ì¡-@‹/@¹ÑêÑØâú‹Ø‹Ê‹Ã£@‹-@‹/@�ã+ɋâ,@]_^ÃVWU‹ìƒìƒ~ t`€> @u  ê>*ä@¢ @Ç@Ç@€‹~ ‹E0‹U2£@‰@Ç @ÆFÿëþFÿ€~ÿ }ŠFÿ*ä‹øÆ…"@ëéÿvèƒÄ‹~Æë¸ÿ‹~ˆ*äPè*ôƒÄ‹å]_^ÃVWU‹ìƒìèa‰Fþ Àu+Àë ÿvþè^ƒÄ‹å]_^ÃVWU‹ìƒì‹~€}u ð>*äP‹~‹EP‹~ÿuèÅòƒÄë‹~‹EP‹~ÿuè—òƒÄ¢ð>¸ÿ‹~ˆ*äPè¦óƒÄ‹~¡è>;Et¡è>HP‹~ÿuègòƒÄˆFýëÆFý€> @u  ê>*ä@¢ @�FüPŠFý*äPÿvèg ƒÄ‰Fù=ÿÿu陡@‰Fþ‹~¡è>;EtQ¸ÿP‹FþÿFþPÿ6@è òƒÄÆFûëþFû€~û}+ÀP‹FþÿFþPÿ6@èýñƒÄëáŠFý*äP‹FþÿFþPÿ6@èäñƒÄÿvù�FüPèÐ ƒÄ ê>*ä@P‹FþÿFþPÿ6@è¿ñƒÄÆFûëþFû€~û }:ŠFû*䋨‹vù±ÓæŠFû*䋸þŠ…ó>*ä%ˆ‡3@*äP‹FþÿFþPÿ6@èxñƒÄ뽊Fü*äP‹FþÿFþPÿ6@è_ñƒÄÆFûëþFû€~û}+ÀP‹FþÿFþPÿ6@è<ñƒÄëáÇS@ÇU@öFüuR¸2@P¸#PèáƒÄ Àui¹¡S@‹U@ÑàÑÒâú£S@‰U@‹~ù±Ó犅ÿ>ˆFû ÀtŠFû*ä‹ð¿€+þ‹Ç™)S@U@¸P¸S@Pè¯ðPÿvþÿ6@èÿðƒÄ +À‹~ˆ*äPèºñƒÄ‹å]_^ÃVWU‹ìèˆýèV=ÿÿu¸ÿë+À]_^ÃVWU‹ìƒìèjý¸%P¸ @P¸2@PèƒÄè_ÇFþ,ÇFü2@ÇFú�FúP�FüP�FþPèƒÄ Àté�¸2@P¸PèýƒÄ Àu~ 4@*䋸÷Ç€uq ;@*䋸÷Ç€udÆFùëþFù€~ù }EŠFù*ä‹ðŠFù*䋸Ѕ@*ä%ˆFø*ä=?uŠFù*䋸Ѕ @*ä%ëŠFø*äPèƒÄˆ„C@벸2@P¸Pè}ƒÄë¸ÿ‹å]_^ÃVWU‹ìƒìÇFý~@‹~ý‹‰Fý=~@tj‹~ý€}ÿtê‹~ý€}*uá ê>*ä‹ðF‹~ýŠE*ä;ÆuÍÆFÿëþFÿ€~ÿ }/ŠFÿ*䋸Ѕ @*ä%P莃ċðŠFÿ*䋸~ýŠE*ä%;ÆtÈ€~ÿ u‰�~ý~@u+Àë"‹Fý;~@tÿvýèKƒÄÿvý¸~@PèbƒÄ‹Fý‹å]_^ÃVWU‹ìÿvè.ƒÄ¢ê>*äPèÍƒÄ ÀtÿvèqƒÄè  Àu¸ë+À]_^ÃVWU‹ìƒì‹~‹E£è>ÿ6è>‹~ÿuè„îƒÄˆFÿ*ä=ÿuƒè>ÿ6è>‹~ÿuèeîƒÄˆFÿ€~ÿu î>ëþNÿŠFÿ*ä‹å]_^ÃVWU‹ì¸%Pÿ6è>‹~ÿu¸ @Pè)îPè€îƒÄ ƒ>@tƒ>@@r�&/@ÿ]_^ÃVWU‹ì¸$P¸ @PèúíPÿ6è>‹~ÿuèGîƒÄ ƒ>@t ƒ>@@s 0@*äP¡è>$P‹~ÿuèÞíƒÄ]_^ÃVWU‹ìƒì ÿvè2ƒÄ¸~@£€@£~@ÇFü‚@ÇFþëÿFþƒ~þ@sÿvüÿ6€@èƒÄ‹~ü�FüºÆEÿëÜÆFá�FàPèãíƒÄŠFà¢î>‹>âo€} ÿu  î>*äˆFæÆFá�FàPè½íƒÄ‹>âoŠFàˆE ‹>âoŠE¢v?‹>âoŠE¢x?‹>âoŠE¢ú?è)å‹>âoŠE *ä‰Fþ Àt1¸ë=PèƒÄƒ~þv¸-Pè ƒÄ‹Fþ@PèüƒÄ¸þ=PèñƒÄ‹>âo€} tN¸>Pè݃ċFþAPèуċ>âoŠE *äFþ‹>âo€} ~¸-P豃ċFþ@P褃ĸ>P虃ċ>âoŠE*ä‰Fþ Àt1¸>PèƒÄƒ~þv¸-PèpƒÄ‹Fþ@PècƒÄ¸)>PèXƒÄ‹>âoŠE*ä‰Fþ Àt1¸,>Pè>ƒÄƒ~þv¸-Pè/ƒÄ‹Fþ@Pè"ƒÄ¸?>PèƒÄ‹å]_^ÃVWU‹ìƒì r?*ä¢ð>¡@£o¡@£o‹~Š*äéN‹~ŠE*äé/ÿvèVƒÄ 2@*ä=?t 2@*äë A@*ä@ˆFÿ‹>âoŠFÿ:E wéô‹>âoŠE *ä‹È‹6âoŠD *䋸ŠFÿ*ä+Ç;Á~éи2@P‹~ŠE*äPè=ƒÄ‹~‰ÿvè:ëP‹~Ç v?*ä=t€>v?t鮀>x?u餋>âo€}t‹6âo‹~ŠD:EuèYé…‹~ŠE*äPè'ƒÄët‹~ŠE¢t?ë4 t?ë‹~‹E£@ë$‹~€}ÿu r?*äë)‹~ŠE¢r?ë ‹~‹E£@‹~Çë,¡@‹~‰E¡@‹~‰ë‹~Çÿë-=/wïÑà‹Øÿ§:<‹~‹‹~‰Eé‹~ŠE*äéÓ‹~ŠE*ä@ˆFÿ‹>âoŠFÿ:E v$‹>âoŠE *ä‹È‹6âoŠD *䋸ŠFÿ*ä+Ç;Áév‹~€}uéÊ‹~€}téŽ黋~€}ÿu.‹~‹E=ÿÿu# x?*ä‹~ˆE v?*ä‹~ˆE ú?*ä‹~ˆénè'‹~€}ÿt‹~€}} ‹~ŠE¢x?‹~€}ÿt‹~€}} ‹~ŠE¢v?‹~€}ÿtB‹~ŠE*ä@ˆFÿ‹>âoŠFÿ:E v*‹>âoŠE *ä‹È‹6âoŠD *䋸ŠFÿ*ä+Ç;Á ŠFÿ*äH¢ú?‹~Çéà‹~Ç v?*ä=t€>v?téÅ€>x?ué»ètéµÿv跃ċ~ÇE2@ 2@*äˆFÿ‹>âoŠFÿ:E vv‹>âoŠE *ä‹È‹6âoŠD *䋸ŠFÿ*ä+Ç;Á~%ëS‹~Ç€>v?u_€>x?tXè“+ÀPè!ƒÄëJ‹F@@P‹FP‹FPèvƒÄ‹~‰ë)=*w Ñà‹Øÿ§š<ë‹~Çÿë Àué«ü=uéûýëæ+À‹å]_^ÃVWU‹ì‹~‹E£è>¸$Pÿ6è>‹~ÿu¸2@PèDèPè›èƒÄ  2@*ä=?t€>2@u t?*ä@¢2@ë t?*ä¢A@]_^ÃVWU‹ìƒì‹~€}!}ÇFþ!ëÇFþ$ÿvþ¸3@PèîçP¡è>@P‹~ÿuè:èƒÄ ‹å]_^ÃVWU‹ì€>þ?téà v?*ä=téÈþ†= †=*ä=9~-Ɔ=0þ…= …=*ä=9~Æ…=0þ„= „=*ä=9~Æ„=0ëŸ P¸|=P¸Y@PèƒÄ€>x?t  x?*ä@¢`@ ú?*ä@¢X@Æd@‹>âoŠ¢ð> ú?*äPèO߃Ä ð>*ä¢ü?¸X@P¸PèƒÄ Àt'èç£oÇoz?¸X@P¸PèçƒÄ=ÿtéBÿè¢ë@Æx@Ç @  Æþ?‹> @ÿ @‹Fˆ…z?�> @€u v?*ä=uè½ë ÿ6 @èƒÄ]_^ÃVWU‹ìƒì þ?*ä=uj v?*ä=uN莸X@P¸PèiƒÄ ÀuF€>x?t?ÇFþÇFüX@ ü?*ä €ˆFú x?*äHˆFû�FúP�FüP�FþPè"ƒÄë è¸ÿP袃ÄÆþ?‹å]_^ÃVWU‹ì þ?*ä=u€>v?uƒ> @t ÿ6 @èpƒÄ]_^ÃVWU‹ì ü?*ä¢ð>ƒ> @tQèïå£oÇoz?�> @€s‹> @ÿ @Æ…z?ëé¸X@P¸Pè¤ƒÄ Àt¸X@P¸Pè’ƒÄÆþ?èPÇ @]_^ÃVWU‹ìƒìè’å£oÇoz?ÇFþ ‹FˆFü x?*äHˆFý�FúP�FüP�FþPè:ƒÄÇ @‹å]_^ÃVWU‹ìƒì¸B>Pèb ƒÄèP蠃ĈFÿ¸d>PèK ƒÄ€~ÿIu +À¢x?*ä¢v?ë €~ÿAuÇèæë‹å]_^ÃVWU‹ìƒìèö‰Fþ Àtÿvþÿv¸,PèÜ ƒÄ Àt ‹~þÆEÿ+Àë‹Fþ‹å]_^ÃVWU‹ìƒì¸ P¸ @P¸2@Pèg ƒÄèà ‹~ Æ‹~€}t ‹~€}Nu¸ë¸ˆFÿ÷F t€~ÿug 2@*äH¢A@Æ2@?èsä£oÇoò>¸2@PŠFÿ*äPè=ƒÄˆFþ*ä=ÿt3÷F t1ŠFþ*䋸±Ó瀽ò>åuŠFþ*䋸±Ó瀽?ÿu‹~ € ë$¸ÿÿë$÷F uŠFþ*䋸±Óçö…ô>€tÆFÿë�ŠFþ*ä‹å]_^ÃVWU‹ì‹~€=t>‹~ ±Óçö…ô>€t‹~€ ë(‹~ ±Óçö…û>€t‹~€ ‹~ ±Óçö…ý>€u‹~€ ]_^ÃVWU‹ìƒì÷Fu~胉Fþ Àttƒ~ uMÿvþ+ÀP¸,PècƒÄ Àu9ÿvþ¸PèƒÄ‹~þöE u#‹~þöE€u4‹~þöE €u+ÿvþ¸PèëƒÄ Àuÿvþ¸P¸-PèƒÄ Àu‹Fþë ‹~þÆEÿ+À‹å]_^ÃVWU‹ìƒì虉Fý Àtn ê>*ä@‹~ýˆEÆFÿëþFÿ€~ÿ }&ŠFÿ*ä‹ðvýŠFÿ*䋸Ѕ @*ä%Pè! ƒÄˆDëÑ ð>*ä‹~ýˆE)‹~ýÆE*‹~ýÆE4‹~ýÆE5‹~ýÇE6ÇE8‹Fý‹å]_^ÃVWU‹ìƒì‹~€}*t+Àë< ð>*äˆFÿ‹~ŠE)¢ð>ÿvè_ƒÄÿv¸PèùƒÄˆFþŠFÿ¢ð>‹~ÆEÿŠFþ*ä‹å]_^ÃVWU‹ìƒì¸ P¸ @P¸2@PèÀ ƒÄè ÇFþ,ÇFü2@ÇFú�FúP�FüP�FþPèà ƒÄ ÀuG¸2@P¸Pè½ ƒÄ Àu5 4@*䋸÷Ç€u$ ;@*䋸÷Ç€u¸2@P¸Pè‘ ƒÄ Àu¸ë+Àë¸ÿÿ‹å]_^ÃVWU‹ìƒìÇFþƒ~uéç‹~‹F ‹V ;U2wr);E0r$ÿvè ƒÄ‹~‹F ‹V ;U2vé¸r;E0r鮋~‹F+ÒF V ;U2wr@;E0v;ÿvè˃ċ~‹F+ÒF V ;U2wr;E0v‹~‹E0‹U2+F V ‹Ø‹Ê‹Ã‰F‹F£@ Àt¡@÷؉Fü‹F;Füv‹Fü‰F‹~ŠE)¢ð>‹^ ‹N �ã+ɋÉFú Àtn‹F ‹V %€ÿRPÿvèƒÄ Àu鸀+Fú‰Fü‹Fü;Fv‹F‰Füÿvü‹FFú:PètàPÿ6@ÿvèÄàƒÄ ‹Fü@‹Fü+ÒF V ‹Fü)F‹FüFþ�~€r`ÿvèEƒÄ‹F£o�~€rJ¡@£o‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸!Pè´ƒÄ Àua�@€�F €ƒV �n€�Fþ€ë¯ƒ~t@‹F ‹V %€ÿRPÿvè?ƒÄ Àt(ÿv‹F:Pè¶ßPÿ6@ÿvèàƒÄ ‹F@‹FFþ‹Fþ‹å]_^ÃVWU‹ìƒìÇFöƒ~uéè‹~‹F ‹V ;U2w séò;E0wéêÿvèýƒÄ‹~‹F ‹V ;U2w séÎ;E0wéÆÿvèAƒÄÇFð‹~ŠE*äH‰Fî�FìP�FîP�FðPèè ƒÄˆFë*ä=ÿuép€fëŠFë*ä‹ð¿€‹ÎÓçO‹Ç™‰Fø‰Vú‹^ø‹Nú÷Ó÷Ñ‹~‹Fø‹VúE0U2#Ã#ÑFøVú‰Fü‰Vþ‹F ‹V ;Vþwr;;Füv6‹Fü‹Vþ‹~‰E6‰U8‹~ÆE5ÿv蛃ċFü‹VþƒÒ‹~‰E0‰U2ë�‹F£@ Àt¡@÷؉Fô‹F;Fôv‹Fô‰F‹~ŠE)¢ð>‹^ ‹N �ã+ɋÉFò Àué’‹F ‹V %€ÿRPÿv蚃ĸ€+Fò‰Fô‹Fô;Fv‹F‰Fôÿvôÿ6@ÿv‹FFò:PèôÝPèKÞƒÄ ‹~ÆE5‹Fô@‹Fô+ÒF V ‹Fô)F‹FôFö‹~‹F ‹V ;U2wr;E0v‹F ‹V ‹~‰E0‰U2�~€séŽÿv螃Ä�~€r~‹F£o¡@£o‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸"Pè ƒÄ Àté¾�@€�F €ƒV �n€�Fö€‹~‹F ‹V ;U2wr˜;E0v“‹F ‹V ‹~‰E0‰U2ÿvèvéxÿƒ~tr‹F ‹V %€ÿRPÿvèjƒÄÿvÿ6@ÿv‹F:PèÞÜPè5ÝƒÄ ‹~ÆE5‹F@‹F+ÒF V ‹FFö‹~‹F ‹V ;U2wr;E0v‹F ‹V ‹~‰E0‰U2‹Fö‹å]_^ÃVWU‹ìƒì‹~‹E6‹U8;V u;F tPÿvètƒÄèdÜ£o‹F:£o‹F ‹V ‹~‰E6‰U8‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸!PèØƒÄ Àu¸ëÇFþëÿFþ�~þ€s ‹~~þÆE:ëê+À‹å]_^ÃVWU‹ì‹~€}5uK‹~ÆE5èÞÛ£o‹F:£o‹~‹E6‹U8¹ÑêÑØâú‹~‰E%‰U'ÿv¸"Pè^ƒÄ Àu ÿvèƒÄ]_^ÃVWU‹ìƒì‹~‹E0‹U2£ò>‰ô>è~Û£oÇoò>ÇFþ0‹F‰Fü�FúP�FüP�FþPè,ƒÄ‹å]_^ÃVWU‹ìƒì‹~ ŠE*ˆFÿ‹~ ÆE*ÿ‹F Pÿvè ƒÄˆFþ‹~ ŠFÿˆE*ŠFþ*ä‹å]_^ÃVWU‹ìƒì+À‹~ ˆE*ä‹~ ˆE‹F ±ÓàF‰Fþ‹F ‰Füƒ~ u+Àë¸ÿ‰Fú‹~ ŠE*ˆFù‹~ ÆE*ÿ�FúP�FüP�FþP臃ĈFø‹~ ŠFùˆE*€~øu-ƒ~ t'ƒ~,u‹~ ‹E$‹U&‹~ ‰E0‰U2ë ‹~ ÇE0ÇE2ŠFø*ä‹å]_^ÃVWU‹ìƒìÇFüÇFþ~@‹~þ‹‰Fþ=~@t‹~þ€}ÿt‹~þ€}*uá‹Fþ‰FüëÙ�~þ~@u)‹Fü‰Fþ Àtÿvþè•÷ƒÄÿvþègƒÄÿvþ¸~@Pè~ƒÄ‹Fþ‹å]_^ÃVWU‹ì‹6âoŠD *䋸ÿF‹F;Çv1‹>âoŠE *ä‹È‹6âoŠD *䋸‹F+Ç;ÁwÿN‹FPèÅуĸë+À]_^ÃVWU‹ìÆì>ëþì> ì>*ä= }%¸P ì>*䋸Ñçÿµˆ=¸ @PèCƒÄ=uÒ¸ë+À]_^ÃVWU‹ìƒìèSÙ£oÇoò>‹~ŠE)¢ð>ÇFþ1‹F‰Fü�FúP�FüP�FþPèøƒÄ Àu&‹~¡ò>‹ô>;U2wr;E0v¡ò>‹ô>‹~‰E0‰U2‹å]_^ÃVWU‹ìƒì+À¢@@*ä¢>@ÆFÿëþFÿ€~ÿ }$ŠFÿ*ä‹ðŠFÿ*䋸Ѕ3@*ä%PèƒÄˆ„3@ëÓ‹å]_^ÃVWU‹ì‹~‹u‹~‹‰‹~‹5‹~‹E‰D]_^ÃVWU‹ì‹v‹<‹F ‰E‹~‹‹~ ‰‹F‹~ ‰E‹F ‹~‰]_^ÃVWU‹ì‹F ÿN Àt‹~ÿF‹v ÿF Šˆëä]_^ÃVWU‹ì‹F ÿN Àt2‹~ ÿF Š*ä%PèpƒÄ‹ð‹~ÿFŠ*ä%PèZƒÄ;ÆtÈ+Àë¸]_^ÃVWU‹ìƒì‹~ÿFŠˆFÿ ÀtŠFÿ*äPèáƒÄëã‹å]_^ÃVWU‹ìƒìÆFÿÇFü'ÆFþëþFþ€~þ}G€~ÿt€~þt ‹F+Ò÷vü Àt‹F+Ò÷vü0Pè�ƒÄÆFÿ‹F+Ò÷vü‰V‹Fü+Ò÷6ð<‰Füë°‹å]_^ÃVWU‹ìŠF *äPèƒÄŠF*äPèƒÄ]_^ÃVWU‹ì‹F±ÓèPèƒÄ‹F%PèƒÄ]_^ÃVWU‹ìƒ~ v‹F7ë‹F0PèƒÄ]_^ÃVWU‹ìƒìÆFå‹FˆFê�FäPèF׃Ä‹å]_^ÃVWU‹ìƒìÆFå ÆFä�FäPè&׃ÄŠFä*ä‹å]_^ÃVWU‹ìƒ~arƒ~zv‹Fë‹Fàÿ]_^ÃVWU‹ìƒì‹F£âoÇFøëÿFø‹>âoŠE *ä;Føv‹6âo‹Fø÷&ò<‹ø| ÿuèƒÄëÔÇFþ�FúP�FüP�FþPèýƒÄ‹å]_^ÃVWU‹ìƒìÆFÿë€Fÿ€~ÿ }ŠFÿ*䋸Ѕh>*ä;Fuä€~ÿ u¸ÿ鸊Fÿ*䋸Ѕi>¢4oƘ+Çë‹>âoŠE *ä‹ðF‹~ Š*ä+Æ¢oë2‹>âoŠE *ä‹ð‹~ ŠE*ä+Æ¢o‹âo o*ä÷.ò<‹ðw ‹~ ŠˆE‹6âo o*ä÷.ò<‹ø| ‹E£+o‹F‰Fý‹F ‰Fû�FùP�FûP�FýPèăċå]_^ÃVWU‹ìƒì‹~ŠˆFÿ*äé“€>ot/þo o*䋸Ñç‹… o£+oÆ4oÆâoŠE *ä‹ð‹~ Š*ä+Æ¢o‹âo o*ä÷.ò<‹ðw ‹~ Šˆ‹6âo o*ä÷.ò<‹ø| ég‹~ŠEˆFþ‹6âoŠD*䋸ŠFþ*ä@;Ç~éÛ‹~ ŠEˆFý€~ýÿtc€~ýt]‹>âoŠFý:Evé·‹>âoŠFý*äH÷.ò<‹Ø]‹6âoŠFþ*ä÷.ò<‹ø|‹E;Gt釋6âoŠFý*äH÷.ò<‹ø|Š*ä@‹~ ˆE‹âoŠFþ*ä÷.ò<‹ðw‹~ŠˆEÆ4oÆâoŠFû:Es=ŠFý*ä‹ÈI‹6âoŠFû*ä÷.ò<‹ø|Š*ä;ÁuÏ‹6âoŠFû*ä÷.ò<‹ø|‹E;.ou´‹6âoŠFû:Du+ÀëŠFû*ä@‹~ ˆEŠFü*ä鬋~ ŠEˆFý‹6âoŠD*䋸ŠFý*ä@;Ç~éy‹âoŠFý*ä÷.ò<‹ðw‹~ ŠˆE‹>âoŠE *ä‹ÈA‹v ‹<Š*ä+Á¢o‹~ ‹‹6âo o*ä÷.ò<‹ø| Š*ä@ˆ‹~ ‹‹6âo o*ä÷.ò<‹ø| ‹E‰GÆ4oÆâo‹E £+oéh‹~ŠEˆFûŠFû*ä郋>âo‹E ë‹~ ‹£+o‹~ÆEëzŠFû*ä±ÓøëK‹6âoŠFû*ä%÷.ò<‹ø| ë,‹6âoŠFû*ä%÷.ò<‹ø|ë‹6âoŠFû*ä%÷.ò<‹ø|‹E£+oë$H=véïÑà‹Øÿ§ô<ë»ø<¹CC;àúu‰ÿgÆ4oPé¶‹v ‹<€=u‹6âoŠD *䋸 î>˜+Çë‹>âoŠE *ä‹ÈA‹v ‹<Š*ä+Á¢o‹6âo o*ä÷.ò<‹ø| ‹E£+oÆ4o(ë`‹v ‹<€=u‹6âoŠD *䋸 î>˜+Çë‹>âoŠE *ä‹ÈA‹v ‹<Š*ä+Á¢o‹6âo o*ä÷.ò<‹ø| ‹E£+o€~ÿ1u¸h븢4oÆâo‹E£0o£.o+À¢3o*ä¢2o*ä¢-o‹~€=u  *ä% À 4o*䋸÷ÇtO‹~ ‹‰Fü¸$Pÿvüÿvþèm÷ƒÄ‹~þ€=?t‹6âo o*ä÷.ò<‹ø| Š*ä@‹~þˆƒFþ$‹~þÿFþ‹6âoŠDˆ 4o*䋸÷Çt¸€Pÿ6oÿ6oÿvþègÏPè¾ÏƒÄ �Fþ€‹Fþ-*o¢*o¸*oP¸Pè7ЃÄ ÀurÆ*o¸¸*oP+ÀPè!ЃÄ Àu\ 4o*䋸÷ÇuÝ *o*ä= uèР*o*ä=uA =o*ä¢-o¸5oPÿ6.oè ƒÄ¢5o¡.o‰Fú¡+o£.o‹Fú£+oÆ*o Æ4o€é|ÿè…¸ÿé‚ÇFþ6o‹~þƒFþ‹‹~‰‹~þƒFþ‹‹~ ‰‹~þƒFþ‹‹~ ‰ÿFþ 4o*䋸÷Ç t¸#P‹Fþ@P‹Fü@Pè"öƒÄƒFþ% 4o*䋸÷Ç@t¸€PÿvþèWÎPÿ6oÿ6oè¦ÎƒÄ  5o*ä‹å]_^ÃVWU‹ìƒìÆFÿëþFÿ o*䋸ŠFÿ*ä;ÇsŠFÿ*䋸Ñç‹F;… ouÛ+Àë o*äþo‹øÑç‹F‰… o¸‹å]_^ÃVWU‹ìƒìÆFþëþFþ‹>âoŠFþ:E s?‹âoŠFþ*ä÷.ò<‹ðw ‹~ Š:EuÕ‹6âoŠFþ*ä÷.ò<‹ø| ‹E;Fu»‹~ ŠFþˆE‹>âoŠFþ:E u鸈>Pè‘õƒÄ‹~ Š*ä브>븑>븗>PètõƒÄë =wÑà‹Øÿ§j=¸¡>Pè[õƒÄ‹>âoŠE *ä‹ð‹~ ŠE*äÆAPè=öƒÄ‹~ €=tW¸±>Pè*õƒÄ‹~ ÿuèIõƒÄ¸»>PèõƒÄ‹~ ÿuè3õƒÄ‹~ ‹E=t ¸Æ>PèóôƒÄ‹v ‹~ ‹EDÿÿPèõƒÄ¸Ê>PèÓôƒÄ‹~ €=t ¸Ô>PèÁôƒÄ¸Ý>Pè·ôƒÄèÔõPèõõƒÄˆFÿ¸å>Pè ôƒÄŠFÿ*äë+Àë,‹~ €=uéïþ¸ë¸ÿÿë»n=¹CC;àútéÔþÿgéÎþ‹å]_^ÃVWU‹ìÆ*o¸*oP¸Pè!̓Ä Àué]_^Ë܋_ë‹Ü�_VWU‹ì‹V ‹F+ö+ÿ¹ ÑàÑÒÑ×ÑÖ;wr w;?r+?w@âå‹å]_^Ë܋_ë‹Ü�_VWU‹ì‹F÷'‹ò‹ø‹F÷gð‹F ÷'ð‹Ö‹Ç‹å]_^ÃÿŸOOOOOOOOô)))))))))OÿOOO)O))))OOOOO))OOOOOOO*<3cccccccc33�ccccccc���c33��Ø�3Èc3ccccccc3�  676N6þÿc76û5Õ2c7c7c7c7c7c7c7c7333c7c7c7c7c7c7c7333c73333c7c7g3É4c7w5Ó5c7c7c7c7c7c7c7ê53c7—6—6í6í6í6í6�:†:‹:AIR„;t;p;-PRINT- 000š=£=¬=µ=¾=Ç=Ð=Ù=â=CON PRN AUX NUL LPT1 LPT2 LPT3 COM1 COM2 Local drives: A Remote drives: Remote printers: A Remote queues: A  Spooler error (Ignore, Abort) e((hhh8(!h"8#($(*(+( ReadWriteNot ready error, Drive: , Track: , Sector: - (Retry, Ignore, Abort) ]_^ÃVWU‹ÿÿöéÕ�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 03/11/86) * Å à K  ­ Ó ù  I x Ü Ô é 9k:Œ£bMòÿt ž "\"ç"r#Û#æ$~&'N'Õ'R(a(¶(Ù)÷*_,Â,ö,^.‡.TURBOPC DRV TurboDOS/PC 1.08 ($) Copyright 1986, Software 2000, Inc. $Already installed $Insufficient memory $ not present $ load error $ŒÈŽØŽÐ¼(ºNèð‹;辺cèã° è�‹ùŽÂ°!è  ”‰‰ŒÀ;Âu ¾X¹ó¦uéѸŒ•%ðÿ£$‹Ð±ÓèŒËã"¡+Âsé³P´Í! \¢(ŒØŽÀ¾]Š< t¿)¹üó¤Š< t¹ó¤º(´Í!Ç6Y„Àuz´'Í!PQ´Í!YXþÈueãp¿(`¹Œ•+Ïã2ÀóªÇÃÄ&ÇG>&ŒOŒÊ¹X° è¹Z°!躱ÿÿ $P$S¡$G GGè=5ƒÄZüÍ'º�뺢ë躹ëèºÉèÎÍ ² è(² è#»)¹è ².è¹èÊC€ú tèâóôè’ÃX.�.�œ.ÿ6.ÿ6Šáë´.€>Mt°ÿÏS€üÿt&€üYt.Ç&ŠÜ·Û�ûºs.ƒ¿>u[.ÿ.PŒÈŽØÆMÿ� �ø�ú���‰ü‰þ‰6‰>‰.Œ Œ‰&ŒÈŽÐ¼(û¸øP€>ùÿuè6ë Šù·Ûÿ—>ƒÄ…Àu>¡ø‹ú‹ü‹þ‹6‹>‹.Ž Ž‹&ÿ6ÿ6ÿ6ÿ6 ÆMÏ¡ø‹ú‹ü‹þ‹6‹>‹.Ž Ž‹&ÿ6ÿ6ÿ6ÿ6 ÆMú.ÿ.SŠØ·ÛÛ3ÀŽØ‰‰W[ÃSŠØ·ÛÛ3ÀŽØ‹‹W[ôº'èºèèºdè º è´º°ÿþÀ+ÚsúÚ„Àu„ät0SRŠÐ´Í!Z[´ÃŒØÃVWU‹ìŽF‹~ &Š´]_^ÃVWU‹ìŽF‹~ ‹F &ˆ]_^ÃVWU‹ìŽF‹~ &‹]_^ÃVWU‹ìŽF‹~ ‹F &‰]_^ÃVWU‹ìŽF‹~ Ž^ ‹v‹Nüó¤]_^ÃVWU‹ì‹v‰6Œ‹‹\‹L‹Tÿt‹| ‹l ÿtŽDÇDòÿt�^è/V.Ž‹6‰‰\‰L‰T�D‰| ‰l �DŒDœ�D]_^Üú.ÿô Í!ÃVWU‹ìŠN‹V ÿ ˜]_^ÃŽ‹&ÆMÿ63ÀP¸ÿLÍ!Ë¡&ã&ÃVWU‹ìŠF´Í]_^ÃVWU‹ìƒì&è1ÇFö&f‹~ö‹‰Fö=&ft&‹~ö€}ÿtê‹~ö€}*ÿt ÿvöè=ƒÄëÖ‹~öÆEÿëÍÆFÛ0�FÚPèîþƒÄ€~Út!¸P¸Pè\1PèŒþƒÄ‰FþPè‚þƒÄ;FþuèŠ8ÇFü�FøP�FúP�FüPèýIƒÄ¸‹å]_^ÃVWU‹ìǪe€‹~‹E£¨e¸]_^ÃVWU‹ì‹>Š•ŠE *ä‹È‹>Š•ŠE *ä‹ðñ‹~ŠE*ä;Æ} ‹~ŠE¢–d‹v‹>Š•ŠD:E s ÿvè?þƒÄ‹>Š•ŠE *ä‹ð‹>Š•ŠE *䯋~ˆ+À]_^ÃVWU‹ìÿvè¾ƒÄ Àu¸ëèŒ ¸Pèk9ƒÄPÿvèö ƒÄ+À]_^ÃVWU‹ìÿvèŠƒÄ Àu¸ëèX ‹~ˆ*äPènþƒÄ+À]_^ÃVWU‹ìÿvè\ƒÄ Àu¸ë ÿvèL ƒÄ+À]_^ÃVWU‹ìÿvè6ƒÄ Àu¸ë ÿvè& ƒÄ+À]_^ÃVWU‹ìƒì(ÿvè ƒÄ Àu¸é‹~¡�d;Et¡�dHP‹vÿtèÂüƒÄ‹ø÷Çt¸ÿë9è¬ü£®”ǰ”šdÆFýëþFý€~ý }ŠFý*䋸Ѕµe*ä%=?uâ€~ý uèë ‹~ˆ*äPè‘ýƒÄ鋸ÿ‹~ˆ*äPè}ýƒÄ¸%P¸´eP�FØPèèDƒÄÆFÿ¸%P�FØP¸ÚePèÒDƒÄè.D¸ÚePŠFÿ*äPèòFƒÄˆFþ*ä=ÿt5ÆFÿ¸ PŠFþ*ä±Óà@šdP¸µePè•DƒÄèa ‹~ˆ*äPèýƒÄ Àtœ+À‹å]_^ÃVWU‹ìÿvèï ƒÄ Àu¸ëÿvèƒÄÿvèÆƒÄ+À]_^ÃVWU‹ìÿvèÀ ƒÄ Àu¸ëÿv賃Äÿvè—ƒÄ+À]_^ÃVWU‹ìƒìÿvèŽ ƒÄ Àu¸ëDè\‹~¡�d;Et¡�dHP‹~ÿuèAûƒÄˆFÿëÆFÿ¸PŠFÿ*äPè|8ƒÄPÿv蛃Ä+À‹å]_^ÃVWU‹ìƒì(ÿvè* ƒÄ Àu¸é×èòú£®”ǰ”šdÆFýëþFý€~ý }ŠFý*䋸Ѕµe*ä%=?uâ€~ý uèL ‹~ˆ*äPè×ûƒÄ鋸ÿ‹~ˆ*äPèÃûƒÄ¸%P¸´eP�FØPè.CƒÄÆFÿ¸%P�FØP¸ÚePèCƒÄètB¸ÚePŠFÿ*äPè8EƒÄˆFþ*ä=ÿt5ÆFÿ¸ PŠFþ*ä±Óà@šdP¸µePèÛBƒÄè ‹~ˆ*äPèMûƒÄ Àtœ+À‹å]_^ÃVWU‹ì –d*ä‹~ˆ+À]_^ÃVWU‹ì‹~‹E£¨e‹~‹E£ªe¸]_^ÃVWU‹ìÿvè ƒÄ Àu¸ëèÿvèƒÄÿvè² ƒÄ+À]_^ÃVWU‹ìÿvèÐ ƒÄ Àu¸ëèäÿvèÀƒÄÿvè€ ƒÄ+À]_^ÃVWU‹ìƒìÿvè› ƒÄ Àu¸鮸ÿ‹~ˆ*äPè~úƒÄ¸ P¸´eP¸ÚePèéAƒÄèEAÇFü,ÇFúÚeÇFøÿ�FøP�FúP�FüPèìDƒÄ Àua¸ÚeP¸PèæCƒÄƒ>Âeu¸€ë¡Âe‰Fþ‹Fþ+ÒRP‹~þƒÇÿ‹Ç+ÒúeüeRPè´MƒÄ£Õe‰×eÿvèà ƒÄ+À‹~ˆ*äPèãùƒÄ+À‹å]_^ÃVWU‹ìƒì ÿvèÌ ƒÄ Àu¸é1èß‹~Æ‹~ƒ}tèó‰Fø Àu"¸Pè_4ƒÄ‰Fø Àu¸‹~ˆ*äPè‚ùéî‹~‹E÷&Âe‰Fþ Ôe*䙉Fô‰Vöÿ6ªeÿ6¨eÿvþ¡Âe+ÒRP¡Àe+Ò¹ÑàÑÒâúFôVöRPè,MƒÄRPÿvøèh7ƒÄ ‰Fü;Fþteƒ~üt!ƒ>¬eu¸ëE‹Fþ+Fü+Ò÷6Âe‰Vúƒ~úu¸ë+‹FúÿNú Àtƒ>¬et+ÀP¡¬eÿ¬ePÿ6¨eèÉ÷ƒÄëØ¸‹~ˆ*äPèÃøƒÄ‹FüÂeÿÿ+Ò÷6Âe‹~‰E‹~‹E+ÒÕe×eè¼ÿvèa ƒÄ+À‹å]_^ÃVWU‹ìƒì ÿvèzƒÄ Àu¸éöè�‹~Æèª‰Fú Àu"¸Pè3ƒÄ‰Fú Àu¸‹~ˆ*äPè9øé¼‹~‹E÷&Âe‰Fþ Ôe*䙉Fö‰Vøÿ6ªeÿ6¨eÿvþ¡Âe+ÒRP¡Àe+Ò¹ÑàÑÒâúFöVøRPèãKƒÄRPÿvúè%8ƒÄ ‰Fü;Fþt#ƒ~üt ƒ>¬eu¸ë¸‹~ˆ*äPè¼÷ƒÄ‹~ú‹E0‹U2£Äe‰Æe‹FüÂeÿÿ+Ò÷6Âe‹~‰E‹~‹E+ÒÕe×eè¥ÿvèJƒÄ+À‹å]_^ÃVWU‹ìƒìÿvèµöƒÄ‹~€=ÿuu‹~ÿu ‹~ÿuè$öƒÄˆFÿ€~ÿu –dëþNÿŠFÿ*äPè=ƒÄ=uAÆFþëþFþ€~þ }‹~ŠFþ*äE @P‹~ÿuèÚõƒÄ=?uÙ€~þ u‹~Æë‹~Æ+À‹å]_^ÃVWU‹ìƒì ‹~Æè‰Fú Àu¸Pè1ƒÄ‰Fú Àt^ÿvèƒÄ Ôe*䙉Fö‰Vøÿ6ªeÿ6¨eÿ6Âe¡Âe+ÒRP¡Àe+Ò¹ÑàÑÒâúFöVøRPè`JƒÄRPÿvúèœ4ƒÄ ‰Fþ;ÂetYƒ~þu¸ë@ƒ>¬eu¸ë4¡Âe+Fþ‰Fü‹FüÿNü Àtƒ>¬et+ÀP¡¬eÿ¬ePÿ6¨eèõƒÄëØ¸‹~ˆ*äPèöƒÄ‹å]_^ÃVWU‹ìƒì‹~Æè3‰Fü Àu%¸PèŸ0ƒÄ‰Fü Àu¸‹~ˆ*äPèÂõƒÄé‹ÿv苃Ä Ôe*䙉Fø‰Vúÿ6ªeÿ6¨eÿ6Âe¡Âe+ÒRP¡Àe+Ò¹ÑàÑÒâúFøVúRPèlIƒÄRPÿvüè®5ƒÄ ‰Fþ;Âet#ƒ~þt ƒ>¬eu¸ë¸‹~ˆ*äPèDõƒÄ‹~ü‹E0‹U2£Äe‰Æe‹å]_^ÃVWU‹ìƒ>ÂeuÇÂe€ÿvèãƒÄ]_^ÃVWU‹ì‹~€=t þÔe Ôe*ä=~ ÆÔeÿÀeÿv貃Ä]_^ÃVWU‹ì¡Õe‹×e¹ÑêÑØâú‹Ø‹Ê‹Ã£Àe‹Õe‹×e�ã+ɋâÔe]_^ÃVWU‹ìƒìƒ~ t`€>´eu  ’d*ä@¢´eÇÀeÇÂe€‹~ ‹E0‹U2£Äe‰ÆeÇÈeÆFÿëþFÿ€~ÿ }ŠFÿ*ä‹øÆ…ÊeëéÿvèƒÄ‹~Æë¸ÿ‹~ˆ*äPè*ôƒÄ‹å]_^ÃVWU‹ìƒìèa‰Fþ Àu+Àë ÿvþèT1ƒÄ‹å]_^ÃVWU‹ìƒì‹~€}u ˜d*äP‹~‹EP‹~ÿuèÅòƒÄë‹~‹EP‹~ÿuè—òƒÄ¢˜d¸ÿ‹~ˆ*äPè¦óƒÄ‹~¡�d;Et¡�dHP‹~ÿuègòƒÄˆFýëÆFý€>´eu  ’d*ä@¢´e�FüPŠFý*äPÿvè].ƒÄ‰Fù=ÿÿu陡ªe‰Fþ‹~¡�d;EtQ¸ÿP‹FþÿFþPÿ6¨eè òƒÄÆFûëþFû€~û}+ÀP‹FþÿFþPÿ6¨eèýñƒÄëáŠFý*äP‹FþÿFþPÿ6¨eèäñƒÄÿvù�FüPèÆ.ƒÄ ’d*ä@P‹FþÿFþPÿ6¨eè¿ñƒÄÆFûëþFû€~û }:ŠFû*䋨‹vù±ÓæŠFû*䋸þŠ…›d*ä%ˆ‡Ûe*äP‹FþÿFþPÿ6¨eèxñƒÄ뽊Fü*äP‹FþÿFþPÿ6¨eè_ñƒÄÆFûëþFû€~û}+ÀP‹FþÿFþPÿ6¨eè<ñƒÄëáÇûeÇýeöFüuR¸ÚeP¸#Pè×;ƒÄ Àui¹¡ûe‹ýeÑàÑÒ  âú£ûe‰ýe‹~ù±Ó犅§dˆFû ÀtŠFû*ä‹ð¿€+þ‹Ç™)ûeýe¸P¸ûePè¯ðPÿvþÿ6¨eèÿðƒÄ +À‹~ˆ*äPèºñƒÄ‹å]_^ÃVWU‹ìèˆýèL/=ÿÿu¸ÿë+À]_^ÃVWU‹ìƒìèjý¸%P¸´eP¸ÚePèù8ƒÄèU8ÇFþ,ÇFüÚeÇFú�FúP�FüP�FþPèü;ƒÄ Àté�¸ÚeP¸Pèó:ƒÄ Àu~ Üe*䋸÷Ç€uq ãe*䋸÷Ç€udÆFùëþFù€~ù }EŠFù*ä‹ðŠFù*䋸ЅÅe*ä%ˆFø*ä=?uŠFù*䋸Ѕµe*ä%ëŠFø*äPè :ƒÄˆ„ëe벸ÚeP¸Pès:ƒÄë¸ÿ‹å]_^ÃVWU‹ìƒìÇFý&f‹~ý‹‰Fý=&ftj‹~ý€}ÿtê‹~ý€}*uá ’d*ä‹ðF‹~ýŠE*ä;ÆuÍÆFÿëþFÿ€~ÿ }/ŠFÿ*䋸Ѕµe*ä%Pè„9ƒÄ‹ðŠFÿ*䋸~ýŠE*ä%;ÆtÈ€~ÿ u‰�~ý&fu+Àë"‹Fý;&ftÿvýèA7ƒÄÿvý¸&fPèX7ƒÄ‹Fý‹å]_^ÃVWU‹ìÿvè.ƒÄ¢’d*äPèÃ5ƒÄ ÀtÿvèqƒÄè6 Àu¸ë+À]_^ÃVWU‹ìƒì‹~‹E£�dÿ6�d‹~ÿuè„îƒÄˆFÿ*ä=ÿuƒ�dÿ6�d‹~ÿuèeîƒÄˆFÿ€~ÿu –dëþNÿŠFÿ*ä‹å]_^ÃVWU‹ì¸%Pÿ6�d‹~ÿu¸´ePè)îPè€îƒÄ ƒ>Âetƒ>Âe@r�&×eÿ]_^ÃVWU‹ì¸$P¸´ePèúíPÿ6�d‹~ÿuèGîƒÄ ƒ>Âet ƒ>Âe@s Øe*äP¡�d$P‹~ÿuèÞíƒÄ]_^ÃVWU‹ìƒìÆFÿëþFÿ€~ÿ}ŠFÿ*ä÷.0]‹ø‹6Š•Šˆ…€`ëà‹å]_^ÃVWU‹ìƒì ‹~€}u –d*äë ‹~ŠE*äHˆFÿŠFÿ*äPè_4ƒÄ Àu¸é«ÇFûŠFÿ*ä‰Fù�F÷P�FùP�FûPèþ8ƒÄˆFþ*ä=ÿtq‹Fù‹~‰E‹F÷‹~‰EÇFûŠFÿ*ä‰Fù�F÷P�FùP�FûPèÃ8ƒÄˆFý*ä=ÿt6ŠFý*ä‹ð¸€‹ÎÓà‹~‰E€fþŠFý*ä‹ÈŠFþ*ä‹ð+ñ¸‹ÎÓà‹~‰ë¸ÿÿ‹~‰PèÐíƒÄ+À‹å]_^ÃVWU‹ìƒì ÿvèîƒÄ Àu¸é„‹>Š•€}uéYèÀ‰Fý=ÿÿuéPèÑ=téE ´e*ä¢Úe¸ P¸Ž^P¸ÛePèê4ƒÄ+À¢èe*䢿e ˜d*äˆFÿ�~ýÿuXŠFÿ*䋸þ˜d€&˜d ˜d*ä;Çt}ÇFû,ÇFùÚeÇF÷�F÷P�FùP�FûPè¾7ƒÄ Àt  ˜d*ä‰FýëN¸ÚeP¸Pè®6ƒÄ먋Fý¢˜dÇFû,ÇFùÚeÇF÷�F÷P�FùP�FûPèy7ƒÄ Àu¸ÚeP¸Pès6ƒÄÇFýÿ�~ýÿtpŠFÿ¢˜d¸ P¸µeP¸ÛePè4ƒÄ‹Fý¢úeè=uJ‹Fý¢˜d¸ P¸Ž^P¸ÛePèö3ƒÄèó=u*¸ P¸š^P¸ÛePèÜ3ƒÄŠFÿ¢úeèÓ=u ‹~�eþÿë¸ë¸‹~‰Pè3ìƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒìÿvèIƒÄ Àu¸éì‹>Š•€}uéÁè:=t黋ЕŠG *ä‹ð j`*ä+Æ÷.0]‹ðŠ„€`*䋸 ˜d*ä;Çu¸é�‹6Š•Š*䋸 ˜d*ä;Çuéqè꣮”ǰ”šd j`*ä@¢Úe¸ P¸¦^P¸ÛePè3ƒÄÆæeÆFù¸ÚePŠFù*äPè5ƒÄˆFø*ä=ÿtIÆFù¸ P¸Ž^PŠFø*ä±Óà@šdPèã2ƒÄ=tÁ¸ P¸š^PŠFø*ä±Óà@šdPèÂ2ƒÄ=t éÞ‹Š•ŠG *ä‹ð j`*ä+Æ÷.0]‹øŠ…€`¢˜dè=ÿÿué´è-=t驸 P¸µeP¸ÛePèN2ƒÄÆèeÇFþ,ÇFüÚeÇFú�FúP�FüP�FþPèO5ƒÄ Àum¸ÚeP¸PèI4ƒÄ Àu[ Üe*䋸÷Ç€tNèj=uF úe*䢘d¸ P¸Ž^P¸ÛePèã1ƒÄèH=u$¸ P¸š^P¸ÛePèÉ1ƒÄè.=u ‹~�eþÿë¸ë¸‹~‰Pè&êƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒìÿvè<ƒÄ Àu¸éTè:=té0¡h`‰Fþ‹6Š•ŠD *䋸 j`*ä+Ç÷.0]�`‰Fú‰Fü‹~þŠ*äP貃Ä=u ÿFþ‹~üÆ‹~ü€=tÿFüëó‹~þ€=u馋~þ€=.u.ÿFþ‹~þ€=.uwÿFþ‹Fü;FúvlÿNü‹~üŠ*äPè]ƒÄ=uâëT‹Fü;Fúv‹Fü+Fú=?} ‹~üÿFüÆ\‹~þ€=t0‹~þŠ*äPè$ƒÄ=t‹Fü+Fú=?}‹~üÿFü‹vþÿFþŠˆëÈ‹~þŠ*äPèôƒÄ=téUÿÿFþéOÿ‹~üÆ‹>Š•ŠE *ä‹ð j`*ä+Æ÷.0]‹ø ˜d*䈅€`‹~�eþÿ븋~‰Pè±èƒÄ‹~�M+À‹å]_^ÃVWU‹ìÿvèÊƒÄ Àu¸ë¸PÿvèȃÄ+À]_^ÃVWU‹ìƒìÿvè�ƒÄ Àu¸éP‹~Š*ä%=‹~Š*ä%p=@~¸ éÿvèÀƒÄ‰Fü=ÿÿuéèD=ÿÿuéôèX=tééè5.=u ÿvè&ƒÄéì‹~Š*ä%p±Óø‹øŠ…¶^*ä‹ð‹~Š*ä%‹øŠ…²^*äƈFûŠFû*äPè„"ƒÄ‰Fþ Àué�‹~€=t ‹~þöE €u ‹~þöE€tÿvþ¸Pè,ƒÄ‹~þÆEÿ¸ë`‹~þþE*‹~þÇE,ÇE.‹~ö€t‹~þÆE4‹~Š*ä%‹~þˆE+‹Fþ-*f+Ò÷62]€‹~üˆ…l`èç‹Fü‹~‰‹~�eþÿ븋~‰PèçƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒì‹~ÿu轃ĉFþ Àu¸ë'‹~þþM*ÿvþè&$ƒÄ‹v‹|Æ…l`ÿèy‹~�eþÿ+À‹å]_^ÃVWU‹ìƒì‹~ÿuèpƒÄ‰Fþ Àu¸ëe‹~þ€}+tC‹~ÿu‹~ÿu‹~ÿu‹~þÿu.ÿu,ÿvþè¤$ƒÄ ‹~‰‹~‹+Ò‹~þE,U.‹~�eþÿ븋~‰Pè>æƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒì‹~ÿuèåƒÄ‰Fþ Àu¸ëe‹~þ€}+tC‹~ÿu‹~ÿu‹~ÿu‹~þÿu.ÿu,ÿvþè&ƒÄ ‹~‰‹~‹+Ò‹~þE,U.‹~�eþÿ븋~‰Pè³åƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒìÿvèÉƒÄ Àu¸ëIè©=ÿÿt(èÀ=u è#‰Fþ=ÿÿtƒ~þu ‹~�eþÿë¸ë¸‹~‰PèJåƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒì‹~ÿuèñƒÄ‰Fþ Àu¸éä‹~Š*ä鬋~‹E+Ò‰Fú‰Vü‹~‹E+Ò¹ÑàÑÒâúëa‹~‹E+Ò‰Fú‰Vü‹~‹E+Ò¹ÑàÑÒâúFúVü‹~þE,U.ëhÿvþè'+ƒÄ‹~‹E+Ò‰Fú‰Vü‹vþ‹~‹E+Ò¹ÑàÑÒâúD0T2FúVü‹~þ‰E,‰U.ë&¸‹~‰PèmäƒÄ‹~�Më,=wâÑà‹Øÿ§4]‹~þ‹E,‹~‰‹~þ‹E.‹~‰E‹~�eþÿ+À‹å]_^ÃVWU‹ìƒìÿvèUƒÄ Àu¸éw‹~€=~¸éSè&=ÿÿuéEè:=té:¸ P¸´eP¸ÚePè[+ƒÄ+À¢èe*䢿e‹~€=téƒè�⣮”ǰ”šd¸ÚeP¸Pè_-ƒÄˆFù*ä=ÿuéç‹~ÇEŠFù*䋸±Óçö…œd€t‹~�MŠFù*䋸±Óçö…£d€t‹~�MŠFù*䋸±Óçö…¥d€t錋~�M é�‹~÷Et¸éƒÇFþ,ÇFüÚeÇFú�FúP�FüP�FþPè¹-ƒÄ ÀuV¸ÚeP¸Pè³,ƒÄ ÀuD€&ãe€&åe‹~÷Et€ãe€‹~÷E u€åe€¸ÚeP¸Pèy,ƒÄ Àu ‹~�eþÿë¸ë¸‹~‰Pè§âƒÄ‹~�M+À‹å]_^ÃVWU‹ìƒì‹~ÿuèNƒÄ‰Fþ Àu¸ë{‹~Š*äë[‹~þŠE*äH‹~‰EëWÿvþèÆ(ƒÄ‹vþ‹~þ‹E,‹U.;T2rw;D0r‹~Æë.‹~Æÿë&¸‹~‰PèâƒÄ‹~�Më=wâÑà‹Øÿ§:]‹~�eþÿ+À‹å]_^ÃVWU‹ìƒìÿvèvƒÄ‰Fþ=ÿÿu+Àë ÿvþÿv譃ċå]_^ÃVWU‹ìƒìèI‹v‹|Š…l`*ä‰Fþ�~þÿtQƒ~þv4‹Fþ€ÿ÷&2]‹øþ�Tf‹Fþ€ÿ÷&2]*fPè˃ċv‹|Æ…l`ÿèë‹~‹E‰FäÆFã>�FâPè©àƒÄ‹~ÿuÿvè&ƒÄ‹å]_^ÃVWU‹ìƒì‹~€}u –d*äë ‹~ŠE*äHˆFÿŠFÿ*äPèì&ƒÄ Àu¸ë>¸@P‹6Š•ŠD *䋸ŠFÿ*ä+Ç÷.0]�`Pè½ßP‹~ÿu‹~ÿuèàƒÄ ‹~�eþÿ+À‹å]_^ÃVWU‹ìèÐà¸]_^ÃVWU‹ìÿvèÝƒÄ Àu¸ë:è½ =ÿÿtèÔ =u‹~ÿuÿvè ƒÄ븋~‰PèmàƒÄ‹~�M+À]_^ÃVWU‹ìƒì¡ªe‰FþÇFûÆFýëþFý€~ý}‹FþÿFþPÿ6¨eè ߃ÄFûëáÿvþÿ6¨eè$߃ÄFût  ¸éÍèãÞ£®”ǰ”šd¸ Pÿ6ªeÿ6¨e¸ÚePèÇÞPè៎ Ææe¡ªe Pÿ6¨eè°ÞƒÄ¢˜d¸ÚeP¸Pèr)ƒÄ=ÿtb¸ Pÿ6ªeÿ6¨e¸´ePè�ÞPèØÞƒÄ ÆFýëþFý€~ý }ŠFý*䋸ö…µe€téŠFý*ä‹øÆ…µe?ëÛ¡ªe Pÿ6¨eèDÞƒÄPÿvèáƒÄ븋~‰PèL߃Ä‹~�M+À‹å]_^ÃVWU‹ìƒì辸P¸l`P�FæPèœ&ƒÄÆFåëþFå€~å}+ŠFå*䋸Ѕl`*ä‰Fþ�~þÿtàƒ~þvÚŠFå*ä‹øÆ…l`ÿëÌè’貉Fü‹~‹E‰FúÿvèރĸP�FæP¸l`Pè5&ƒÄÆFåëþFå€~å}QŠFå*䋸Ѕl`*ä‰Fþ�~þÿtàƒ~þvÚ‹Fþ€ÿ÷&2]‹ø€½^fu‹Fþ€ÿ÷&2]‹øþ…Tf뵊Få*䋸ýÆEæÿ릸P¸l`Pè$ÝP¸PÿvüètÝƒÄ ¸P�FæPè ÝP¸Pÿvúè[ÝƒÄ +À‹å]_^ÃVWU‹ìƒì1ÿvèDƒÄ Àu¸éGè# =ÿÿué#è7 =té¸ P¸´eP�FÏPèX%ƒÄ+ÀˆFÝ*äˆFÛÇFø,�FωFöÇFô�FôP�FöP�FøPèS(ƒÄ ÀtéÎ�FÏP¸PèJ'ƒÄ Àté¹öFÑ€té«öFØ€t颋~‹E‰Fþ‹~‹E‰Fü‹~‹E‹~‰E‹~‹E ‹~‰Eÿvè… ƒÄ‰Fú‹Fþ‹~‰E‹Fü‹~‰Eƒ~útŠFÏ*䋸 j`*ä@;Çt¸ëKè= =ÿÿt6èT =u.¸ P¸´eP�FßPèx$ƒÄ�FÏP¸Pè�&ƒÄ Àu ‹~�eþÿë!¸ë¸ë¸‹~‰PèÆÜƒÄ‹~�M+À‹å]_^ÃVWU‹ì‹~ÿuèp ƒÄ Àu¸ëE‹~Š*äë)+À‹~‰E‹~‰Eë"¸‹~‰Pèt܃Ä‹~�Më ÀtÓ=uÞ‹~�eþÿ+À]_^ÃVWU‹ìèDÜ Àu¸ëè8Ü‹~‰‹~ÆE ‹~ÆE‹~ÆE+À]_^ÃVWU‹ìƒì"ÿvèE ƒÄ Àu¸éG¡h`‰Fþ‹~þ€=tÿFþëó‹Fþ-(`=8|éÒÆFß,�FÞPè)ÛƒÄÿvþŠFã*äPèÁƒÄ‹Fþ@@PŠFâ*äP诃ċFþPŠFå*äP蜃ċFþPŠFä*äP艃ċ~þÆE+ÀPÿvèÆƒÄ‰Fü=uZ‹Fþ-(`‰FþÇFúëÿFúƒ~ús%‹~úŠ…µe*äP‹~‹FþFúEP‹~ÿuè*ÚƒÄëÒ+ÀP‹~‹FþEP‹~ÿuè ڃă~ütëR¸‹~‰Pèۃċ~�Më9èÌÙ£®”ǰ”šd¸ P¸´eP¸ÚePèW"ƒÄÆæe¸ÚeP¸Pèw$ƒÄ=ÿté¨þ+À‹å]_^ÃVWU‹ìÿvèà ƒÄ Àu¸ë+ÀPÿvè߃Ä+À]_^ÃVWU‹ìƒì‹~ÿuèE ƒÄ‰Fì Àu¸é_ÇFê&f‹~ꋉFê=&ft;‹~ê€}ÿtê‹~ê€}*tá‹~êŠE)¢˜dÿvêèƒÄ‹~€=uÇ‹~êÇE6ÇE8븋~‹E+Ò‰Fæ‰Vè‹~‹E+Ò¹ÑàÑÒâúFæVè‰Fü‰Vþ‹~‹E +Ò‰Fæ‰Vè‹~‹E+Ò¹ÑàÑÒâúFæVè‰Fø‰Vú‹Fø‹VúFüVþ‰Fô‰Vö�fü€ÿ‹Fô‹VöƒÒ%€ÿ+FüVþ‰Fø‰Vú‹Fü‹Vþ£šd‰œd‹Fø‹Vú£žd‰ dèRØ£®”ǰ”šd‹~ìŠE)¢˜dÇFò.‹~€=tÿFò‹Fì‰Fð�FîP�FðP�FòPèâ#ƒÄ Àu‹~€=u ÿvì蛃ċ~�eþÿë‹~Ç!‹~�M+À‹å]_^ÃVWU‹ì‹F ÿF P‹F±ÓèPèƒÄÿv ‹F%PèƒÄ]_^ÃVWU‹ìƒ~ v‹F7ë‹F0‹~ ˆ]_^ÃVWU‹ìƒìÿvè8ƒÄ‰Fþ=ÿÿué¹è¼=ÿÿué—èÐ=téŒè­=u ÿv螃ÄëYÿv ‹~ÿu蕃ĉFü ÀtH‹~üþE*‹~üÆE+‹~üÇE,ÇE.‹Fü-*f+Ò÷62]€‹~þˆ…l`èÚ ‹Fþ‹~‰‹~�eþÿ¸ë5¸‹~‰Pè؃Ä‹~�M+À븋~‰Pèë׃Ä‹~�M¸ÿÿ‹å]_^ÃVWU‹ìƒì ”d*䋸Ñç‹…È^‰Fêè–Ö‰Fö‹~‹E‰Fè‹~‹‰Fä�FäPèõփċFä‹~‰‹~�eþÿ‹Fü%‹~ E‹å]_^ÃVWU‹ìƒì �FýPÿv ÿvèfƒÄ‰F÷=ÿÿué ÿv÷�FýPè1ƒÄ¡ªe‰FþÆFûëþFû€~û}+ÀP‹FþÿFþPÿ6¨eèÖƒÄëáŠFý*äP¡ªePÿ6¨eèýÕƒÄöFýtéÌÆFûëþFû€~û }&ŠFû*䋨‹v÷±ÓæŠFû*䋸þŠ…›d*ä%ˆ‡ÛeëÑÇûeÇýe¸ÚeP¸#Pèb ƒÄ Àu_¹¡ûe‹ýeÑàÑÒâú£ûe‰ýe‹~÷±Ó犅§dˆFû ÀtŠFû*ä‹ð¿€+þ‹Ç™)ûeýe¸P¸ûePè:ÕP¡ªePÿ6¨eè†ÕƒÄ 븋~‰Pè@փċ~�Méc¡ªe‰Fþ¸P�FþP‹F÷±Óà@šdPèIƒÄ‹~÷±Ó犅£d*ä%= t1¸.P‹FþÿFþPÿ6¨eèÛԃĸP�FþP‹F÷±Óà šdPèƒÄ+ÀPÿvþÿ6¨eè¯ÔƒÄÆFûëþFû€~û }D‹v÷±ÓæŠFû*䋸þŠ…›dˆFüŠFû*䋸ŠFû*ä‹ð€¼µe?u ŠFü*ä €ëŠFü*ä%ˆ…µe본 P¸´ePè5ÔPÿ6ªeÿ6¨eè„ÔƒÄ  ˜d*äP¡ªe Pÿ6¨eè+ÔƒÄÿv ¡ªe Pÿ6¨eèԃġªe‰FþÇFùÆFûëþFû€~û}‹FþÿFþPÿ6¨eèÖÓƒÄFùëá‹Fù÷ØPÿvþÿ6¨eèÿӃċ~�eþÿ‹~Ç‹å]_^ÃVWU‹ìƒì‹F ÿN Àt1‹~ÿFŠ*ä%ˆFÿ*ä= tߊFÿ*äP‹~ ‹ÿPÿ6¨eè~ÓƒÄëÅ‹å]_^ÃVWU‹ìƒìÇFþ-ÇFüÚe�FúP�FüP�FþPèƒÄ Àu8¸ÚeP¸PèýƒÄ Àu&€Üe€€àe€€ãe€¸ÚeP¸PèÜƒÄ Àu¸ë+À‹å]_^ÃVWU‹ì€&Üe€&ãe¸ÚeP¸Pè®ƒÄ Àu¸ÚeP¸PèœƒÄ Àu¸ë+À]_^ÃVWU‹ìƒìÆFûÿ¡h`‰Fü¡h`‰Fþ‹~þ€=t‹~þŠ*äP褃Ä=u‹Fþ‰FüÿFþëÚ‹Fü‰Fþ‹~þŠ*äP考Ä=uÿFþ‹~þ€=t ‹~þ€}#t‹~þ€=t_‹~þ€}tV‹~þ€}#uMÆFû‹~þÿFþŠˆFú*ä=#t7€~ûÿtè€~ú0|%€~ú9ŠFú*䋸ŠFû*ä÷.J]Ç-0ˆFû*ä=~½ÆFûÿë·¸´eP�FþP苃ċFü;h`u‹~üŠ*äPèÛƒÄ=uÿFü‹~üÆ µe*ä= u¸ÿÿëŠFû*ä‹å]_^ÃVWU‹ìƒì ¡h`‰Fø‹~øŠ*äPè—ƒÄ=u ‹>ЕТ˜dÿFø‹~ø€=ué‹~øŠ*äPèmƒÄ=uÿFø‹~ø€=.u]ÿFø j`*ä@¢Úe‹~ø€=.u"‹6Š•Š*䋸 ˜d*ä;Çué±ÿFø¸ P¸š^ë‹6Š•Š*䋸 ˜d*ä;Çtޏ P¸Ž^P¸ÛeP芃Äë¸ÚeP�FøP苃ÄÆF÷ëþF÷€~÷ }ŠF÷*䋸ЅÛe*ä%=?uâëJ+À¢èe*䢿eÇFþ,ÇFüÚeÇFú�FúP�FüP�FþPèPƒÄ Àu¸ÚeP¸PèJƒÄ Üe*䋸÷Ç€u+Àë úe*䢘déíþ¸‹å]_^ÃVWU‹ìƒì j`*ä@‹~ ˆÆFÿëþFÿ€~ÿ }ŠFÿ*䋸~ ÆE ëç¸P‹F @Pÿvè,ƒÄ‹v‹<€=.u‹~ÿ¸P‹F  Pÿvè ƒÄ‹å]_^ÃVWU‹ìƒìƒ~ tEÿvèEƒÄˆFÿ*ä Àt3€~ÿ.t-€~ÿ*t ‹~ ÿF ŠFÿˆë‹F ÿN Àt‹~ ÿF Æ?ëëÿN 뵋å]_^ÃVWU‹ìƒì‹v‹<ŠˆFÿŠFÿ*äP膃Ä=uÆFÿ€~ÿt‹~ÿŠFÿ*ä‹å]_^ÃVWU‹ìƒìèôÆFÿëþFÿ€~ÿ}ŠFÿ*䋸€½l`ÿuéŠFÿ*ä븋~‰Pè4ЃÄ‹~�M¸ÿÿ‹å]_^ÃVWU‹ìƒì‹~ÿuèڃĉFþ Àu¸ë1‹~þþE*‹Fþ-*f+Ò÷62]€‹~ ˆ…l`蔋F ‹~‰‹~�eþÿ+À‹å]_^ÃVWU‹ì¸?P‹~ÿu‹~ÿu¸(`Pè‡ÎPèÞÎƒÄ Æg`Çh`(`‹>h`€=t‹>h`Š*äP踃ċ>h`ˆÿh`ëÜÇh`(` )`*ä=:u (`*ä-A¢j`ƒh`ë –d*ä¢j` j`*䢒d j`*äPèƒÄ]_^ÃVWU‹ìƒìƒ~s+è´‹~Š…l`*ä‰Fþ�~þÿtƒ~þv‹Fþ€ÿ÷&2]*fë+À‹å]_^ÃVWU‹ì‹Š•ŠG *ä‹ð‹F+Æ÷&0]‹øŠ…€`¢˜d]_^ÃVWU‹ìƒìèSÆFÿëþFÿ€~ÿ};ŠFÿ*䋸Ѕl`*ä‰Fý�~ýÿtàƒ~ývÚ‹Fý€ÿ÷&2]‹øþ�TfŠFÿ*ä‹øÆ…l`ÿë¼è)‹å]_^ÃVWU‹ì¸P¸Pè6P¸l`Pè2ÍPè‰ÍƒÄ ]_^ÃVWU‹ì¸P¸l`PèÍP¸Pè PèfÍƒÄ ]_^ÃVWU‹ìƒìÆFåQ�FäPèk̓Ä‹F  æ‹å]_^ÃVWU‹ìƒ~\tƒ~/u¸ë+À]_^ÃVWU‹ìƒì ÿvè2ƒÄ¸&f£(f£&fÇFü*fÇFþëÿFþƒ~þ@sÿvüÿ6(fèƒÄ‹~ü�FüºÆEÿëÜÆFá�FàPèí̃ÄŠF࢖d‹>Š•€} ÿu  –d*äˆFæÆFá�FàPèÇ̃Ä‹>Š•ŠFàˆE ‹>Š•ŠE¢e‹>Š•ŠE¢ e‹>Š•ŠE¢¢eèaÞ‹>Š•ŠE *ä‰Fþ Àt1¸+_PèƒÄƒ~þv¸-Pè ƒÄ‹Fþ@PèüƒÄ¸>_PèñƒÄ‹>Š•€} tN¸A_Pè݃ċFþAPèуċ>Š•ŠE *äFþ‹>Š•€} ~¸-P豃ċFþ@P褃ĸS_P虃ċ>Š•ŠE*ä‰Fþ Àt1¸V_PèƒÄƒ~þv¸-PèpƒÄ‹Fþ@PècƒÄ¸i_PèXƒÄ‹>Š•ŠE*ä‰Fþ Àt1¸l_Pè>ƒÄƒ~þv¸-Pè/ƒÄ‹Fþ@Pè"ƒÄ¸_PèƒÄ‹å]_^ÃVWU‹ìƒì e*䢘d¡®e£®”¡°e£°”‹~Š*äéN‹~ŠE*äé/ÿvèVƒÄ Úe*ä=?t Úe*äë ée*ä@ˆFÿ‹>Š•ŠFÿ:E wéô‹>Š•ŠE *ä‹È‹6Š•ŠD *䋸ŠFÿ*ä+Ç;Á~éиÚeP‹~ŠE*äPè=ƒÄ‹~‰ÿvè:ëP‹~Ç e*ä=t€>et鮀> eu餋>Š•€}t‹6Š•‹~ŠD:EuèYé…‹~ŠE*äPè'ƒÄët‹~ŠE¢eë4 eë‹~‹E£°eë$‹~€}ÿu e*äë)‹~ŠE¢eë ‹~‹E£®e‹~Çë,¡®e‹~‰E¡°e‹~‰ë‹~Çÿë-=/wïÑà‹Øÿ§L]‹~‹‹~‰Eé‹~ŠE*äéÓ‹~ŠE*ä@ˆFÿ‹>Š•ŠFÿ:E v$‹>Š•ŠE *ä‹È‹6Š•ŠD *䋸ŠFÿ*ä+Ç;Áév‹~€}uéÊ‹~€}téŽ黋~€}ÿu.‹~‹E=ÿÿu#  e*ä‹~ˆE e*ä‹~ˆE ¢e*ä‹~ˆénè'‹~€}ÿt‹~€}} ‹~ŠE¢ e‹~€}ÿt‹~€}} ‹~ŠE¢e‹~€}ÿtB‹~ŠE*ä@ˆFÿ‹>Š•ŠFÿ:E v*‹>Š•ŠE *ä‹È‹6Š•ŠD *䋸ŠFÿ*ä+Ç;Á ŠFÿ*äH¢¢e‹~Çéà‹~Ç e*ä=t€>etéÅ€> eué»ètéµÿv跃ċ~ÇEÚe Úe*äˆFÿ‹>Š•ŠFÿ:E vv‹>Š•ŠE *ä‹È‹6Š•ŠD *䋸ŠFÿ*ä+Ç;Á~%ëS‹~Ç€>eu_€> etXè“+ÀPè!ƒÄëJ‹F@@P‹FP‹FPèvƒÄ‹~‰ë)=*w Ñà‹Øÿ§¬]ë‹~Çÿë Àué«ü=uéûýëæ+À‹å]_^ÃVWU‹ì‹~‹E£�d¸$Pÿ6�d‹~ÿu¸ÚePèNÇPè¥ÇƒÄ  Úe*ä=?t€>Úeu e*ä@¢Úeë e*ä¢ée]_^ÃVWU‹ìƒì‹~€}!}ÇFþ!ëÇFþ$ÿvþ¸ÛePèøÆP¡�d@P‹~ÿuèDÇƒÄ ‹å]_^ÃVWU‹ì€>¦etéà e*ä=téÈþÆ^ Æ^*ä=9~-ÆÆ^0þÅ^ Å^*ä=9~ÆÅ^0þÄ^ Ä^*ä=9~ÆÄ^0ëŸ P¸¼^P¸fPèƒÄ€> et   e*ä@¢f ¢e*ä@¢fÆ f‹>ЕТ˜d ¢e*äPèwøƒÄ ˜d*䢤e¸fP¸PèƒÄ Àt'è%Æ£®”ǰ”"e¸fP¸PèçƒÄ=ÿtéBÿè¢ë@Æ fDzeƦe‹>²eÿ²e‹Fˆ…"e�>²e€u e*ä=uè½ë ÿ6²eèƒÄ]_^ÃVWU‹ìƒì ¦e*ä=uj e*ä=uN莸fP¸PèiƒÄ ÀuF€> et?ÇFþÇFüf ¤e*ä €ˆFú  e*äHˆFû�FúP�FüP�FþPè"ƒÄë è¸ÿP袃ÄÆ¦e‹å]_^ÃVWU‹ì ¦e*ä=u€>euƒ>²et ÿ6²eèpƒÄ]_^ÃVWU‹ì ¤e*䢘dƒ>²etQèùÄ£®”ǰ”"e�>²e€s‹>²eÿ²eÆ…"eëé¸fP¸Pè¤ƒÄ Àt¸fP¸Pè’ƒÄÆ¦eèPDze]_^ÃVWU‹ìƒìèœÄ£®”ǰ”"eÇFþ ‹FˆFü  e*äHˆFý�FúP�FüP�FþPè:ƒÄDze‹å]_^ÃVWU‹ìƒì¸‚_Pèb ƒÄèP蠃ĈFÿ¸¤_PèK ƒÄ€~ÿIu +À¢ e*ä¢eë €~ÿAuÇè%Åë‹å]_^ÃVWU‹ìƒìèö‰Fþ Àtÿvþÿv¸,PèÜ ƒÄ Àt ‹~þÆEÿ+Àë‹Fþ‹å]_^ÃVWU‹ìƒì¸ P¸´eP¸ÚePèg ƒÄèà ‹~ Æ‹~€}t ‹~€}Nu¸ë¸ˆFÿ÷F t€~ÿug Úe*äH¢éeÆÚe?è}㮔ǰ”šd¸ÚePŠFÿ*äPè=ƒÄˆFþ*ä=ÿt3÷F t1ŠFþ*䋸±Ó瀽šdåuŠFþ*䋸±Ó瀽©dÿu‹~ € ë$¸ÿÿë$÷F uŠFþ*䋸±Óçö…œd€tÆFÿë�ŠFþ*ä‹å]_^ÃVWU‹ì‹~€=t>‹~ ±Óçö…œd€t‹~€ ë(‹~ ±Óçö…£d€t‹~€ ‹~ ±Óçö…¥d€u‹~€ ]_^ÃVWU‹ìƒì÷Fu~胉Fþ Àttƒ~ uMÿvþ+ÀP¸,PècƒÄ Àu9ÿvþ¸PèƒÄ‹~þöE u#‹~þöE€u4‹~þöE €u+ÿvþ¸PèëƒÄ Àuÿvþ¸P¸-PèƒÄ Àu‹Fþë ‹~þÆEÿ+À‹å]_^ÃVWU‹ìƒì虉Fý Àtn ’d*ä@‹~ýˆEÆFÿëþFÿ€~ÿ }&ŠFÿ*ä‹ðvýŠFÿ*䋸Ѕµe*ä%Pè! ƒÄˆDëÑ ˜d*ä‹~ýˆE)‹~ýÆE*‹~ýÆE4‹~ýÆE5‹~ýÇE6ÇE8‹Fý‹å]_^ÃVWU‹ìƒì‹~€}*t+Àë< ˜d*äˆFÿ‹~ŠE)¢˜dÿvè_ƒÄÿv¸PèùƒÄˆFþŠFÿ¢˜d‹~ÆEÿŠFþ*ä‹å]_^ÃVWU‹ìƒì¸ P¸´eP¸ÚePèÀ ƒÄè ÇFþ,ÇFüÚeÇFú�FúP�FüP�FþPèà ƒÄ ÀuG¸ÚeP¸Pè½ ƒÄ Àu5 Üe*䋸÷Ç€u$ ãe*䋸÷Ç€u¸ÚeP¸Pè‘ ƒÄ Àu¸ë+Àë¸ÿÿ‹å]_^ÃVWU‹ìƒìÇFþƒ~uéç‹~‹F ‹V ;U2wr);E0r$ÿvè ƒÄ‹~‹F ‹V ;U2vé¸r;E0r鮋~‹F+ÒF V ;U2wr@;E0v;ÿvè˃ċ~‹F+ÒF V ;U2wr;E0v‹~‹E0‹U2+F V ‹Ø‹Ê‹Ã‰F‹F£¬e Àt¡¬e÷؉Fü‹F;Füv‹Fü‰F‹~ŠE)¢˜d‹^ ‹N �ã+ɋÉFú Àtn‹F ‹V %€ÿRPÿvèƒÄ Àu鸀+Fú‰Fü‹Fü;Fv‹F‰Füÿvü‹FFú:Pè~¿Pÿ6¬eÿvèοƒÄ ‹Fü¬e‹Fü+ÒF V ‹Fü)F‹FüFþ�~€r`ÿvèEƒÄ‹F£®”�~€rJ¡¬e£°”‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸!Pè´ƒÄ Àua�¬e€�F €ƒV �n€�Fþ€ë¯ƒ~t@‹F ‹V %€ÿRPÿvè?ƒÄ Àt(ÿv‹F:PèÀ¾Pÿ6¬eÿvè¿ƒÄ ‹F¬e‹FFþ‹Fþ‹å]_^ÃVWU‹ìƒìÇFöƒ~uéè‹~‹F ‹V ;U2w séò;E0wéêÿvèýƒÄ‹~‹F ‹V ;U2w séÎ;E0wéÆÿvèAƒÄÇFð‹~ŠE*äH‰Fî�FìP�FîP�FðPèè ƒÄˆFë*ä=ÿuép€fëŠFë*ä‹ð¿€‹ÎÓçO‹Ç™‰Fø‰Vú‹^ø‹Nú÷Ó÷Ñ‹~‹Fø‹VúE0U2#Ã#ÑFøVú‰Fü‰Vþ‹F ‹V ;Vþwr;;Füv6‹Fü‹Vþ‹~‰E6‰U8‹~ÆE5ÿv蛃ċFü‹VþƒÒ‹~‰E0‰U2ë�‹F£¬e Àt¡¬e÷؉Fô‹F;Fôv‹Fô‰F‹~ŠE)¢˜d‹^ ‹N �ã+ɋÉFò Àué’‹F ‹V %€ÿRPÿv蚃ĸ€+Fò‰Fô‹Fô;Fv‹F‰Fôÿvôÿ6¬eÿv‹FFò:Pèþ¼PèU½ƒÄ ‹~ÆE5‹Fô¬e‹Fô+ÒF V ‹Fô)F‹FôFö‹~‹F ‹V ;U2wr;E0v‹F ‹V ‹~‰E0‰U2�~€séŽÿv螃Ä�~€r~‹F£®”¡¬e£°”‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸"Pè ƒÄ Àté¾�¬e€�F €ƒV �n€�Fö€‹~‹F ‹V ;U2wr˜;E0v“‹F ‹V ‹~‰E0‰U2ÿvèvéxÿƒ~tr‹F ‹V %€ÿRPÿvèjƒÄÿvÿ6¬eÿv‹F:Pèè»Pè?¼ƒÄ ‹~ÆE5‹F¬e‹F+ÒF V ‹FFö‹~‹F ‹V ;U2wr;E0v‹F ‹V ‹~‰E0‰U2‹Fö‹å]_^ÃVWU‹ìƒì‹~‹E6‹U8;V u;F tPÿvètƒÄèn»£®”‹F:£°”‹F ‹V ‹~‰E6‰U8‹F ‹V ¹ÑêÑØâú‹~‰E%‰U'ÿv¸!PèØƒÄ Àu¸ëÇFþëÿFþ�~þ€s ‹~~þÆE:ëê+À‹å]_^ÃVWU‹ì‹~€}5uK‹~ÆE5  è躣®”‹F:£°”‹~‹E6‹U8¹ÑêÑØâú‹~‰E%‰U'ÿv¸"Pè^ƒÄ Àu ÿvèƒÄ]_^ÃVWU‹ìƒì‹~‹E0‹U2£šd‰œd舺£®”ǰ”šdÇFþ0‹F‰Fü�FúP�FüP�FþPè,ƒÄ‹å]_^ÃVWU‹ìƒì‹~ ŠE*ˆFÿ‹~ ÆE*ÿ‹F Pÿvè ƒÄˆFþ‹~ ŠFÿˆE*ŠFþ*ä‹å]_^ÃVWU‹ìƒì+À‹~ ˆE*ä‹~ ˆE‹F ±ÓàF‰Fþ‹F ‰Füƒ~ u+Àë¸ÿ‰Fú‹~ ŠE*ˆFù‹~ ÆE*ÿ�FúP�FüP�FþP臃ĈFø‹~ ŠFùˆE*€~øu-ƒ~ t'ƒ~,u‹~ ‹E$‹U&‹~ ‰E0‰U2ë ‹~ ÇE0ÇE2ŠFø*ä‹å]_^ÃVWU‹ìƒìÇFüÇFþ&f‹~þ‹‰Fþ=&ft‹~þ€}ÿt‹~þ€}*uá‹Fþ‰FüëÙ�~þ&fu)‹Fü‰Fþ Àtÿvþè•÷ƒÄÿvþègƒÄÿvþ¸&fPè~ƒÄ‹Fþ‹å]_^ÃVWU‹ì‹6Š•ŠD *䋸ÿF‹F;Çv1‹>Š•ŠE *ä‹È‹6Š•ŠD *䋸‹F+Ç;ÁwÿN‹FPèíêƒÄ¸ë+À]_^ÃVWU‹ìÆ”dëþ”d ”d*ä= }%¸P ”d*䋸ÑçÿµÈ^¸µePèCƒÄ=uÒ¸ë+À]_^ÃVWU‹ìƒìè]¸£®”ǰ”šd‹~ŠE)¢˜dÇFþ1‹F‰Fü�FúP�FüP�FþPèøƒÄ Àu&‹~¡šd‹œd;U2wr;E0v¡šd‹œd‹~‰E0‰U2‹å]_^ÃVWU‹ìƒì+À¢èe*䢿eÆFÿëþFÿ€~ÿ }$ŠFÿ*ä‹ðŠFÿ*䋸ЅÛe*ä%PèƒÄˆ„ÛeëÓ‹å]_^ÃVWU‹ì‹~‹u‹~‹‰‹~‹5‹~‹E‰D]_^ÃVWU‹ì‹v‹<‹F ‰E‹~‹‹~ ‰‹F‹~ ‰E‹F ‹~‰]_^ÃVWU‹ì‹F ÿN Àt‹~ÿF‹v ÿF Šˆëä]_^ÃVWU‹ì‹F ÿN Àt2‹~ ÿF Š*ä%PèpƒÄ‹ð‹~ÿFŠ*ä%PèZƒÄ;ÆtÈ+Àë¸]_^ÃVWU‹ìƒì‹~ÿFŠˆFÿ ÀtŠFÿ*äPèáƒÄëã‹å]_^ÃVWU‹ìƒìÆFÿÇFü'ÆFþëþFþ€~þ}G€~ÿt€~þt ‹F+Ò÷vü Àt‹F+Ò÷vü0Pè�ƒÄÆFÿ‹F+Ò÷vü‰V‹Fü+Ò÷6^‰Füë°‹å]_^ÃVWU‹ìŠF *äPèƒÄŠF*äPèƒÄ]_^ÃVWU‹ì‹F±ÓèPèƒÄ‹F%PèƒÄ]_^ÃVWU‹ìƒ~ v‹F7ë‹F0PèƒÄ]_^ÃVWU‹ìƒìÆFå‹FˆFê�FäPèP¶ƒÄ‹å]_^ÃVWU‹ìƒìÆFå ÆFä�FäPè0¶ƒÄŠFä*ä‹å]_^ÃVWU‹ìƒ~arƒ~zv‹Fë‹Fàÿ]_^ÃVWU‹ìƒì‹F£Š•ÇFøëÿFø‹>Š•ŠE *ä;Føv‹6Š•‹Fø÷&^‹ø| ÿuèƒÄëÔÇFþ�FúP�FüP�FþPèýƒÄ‹å]_^ÃVWU‹ìƒìÆFÿë€Fÿ€~ÿ }ŠFÿ*䋸Ѕ¨_*ä;Fuä€~ÿ u¸ÿ鸊Fÿ*䋸Š…©_¢Ü”Æ䔋~ €=?t5‹~ €=u‹6Š•ŠD *䋸 –d˜+Çë‹>Š•ŠE *ä‹ðF‹~ Š*ä+Æ¢ª”ë2‹>Š•ŠE *ä‹ð‹~ ŠE*ä+Æ¢ª”‹Š• ª”*ä÷.^‹ðw ‹~ ŠˆE‹6Š• ª”*ä÷.^‹ø| ‹E£Ó”‹F‰Fý‹F ‰Fû�FùP�FûP�FýPèăċå]_^ÃVWU‹ìƒì‹~ŠˆFÿ*äé“€>¬”t/þ¬” ¬”*䋸Ñç‹…²”£Ó”ÆÜ”Æä” ÿv ÿv ÿvèuƒÄëÊ+ÀéeÆÜ”éÀÆÜ”Æä” ‹>Š•ŠE *ä‹ð‹~ Š*ä+Æ¢ª”‹Š• ª”*ä÷.^‹ðw ‹~ Šˆ‹6Š• ª”*ä÷.^‹ø| ég‹~ŠEˆFþ‹6Š•ŠD*䋸ŠFþ*ä@;Ç~éÛ‹~ ŠEˆFý€~ýÿtc€~ýt]‹>Š•ŠFý:Evé·‹>Š•ŠFý*äH÷.^‹Ø]‹6Š•ŠFþ*ä÷.^‹ø|‹E;Gt釋6Š•ŠFý*äH÷.^‹ø|Š*ä@‹~ ˆE‹Š•ŠFþ*ä÷.^‹ðw‹~ŠˆEÆÜ”Æä” ‹6Š•ŠFþ*ä÷.^‹ø|‹E£Ó”ÿv ÿv ÿvè9ƒÄˆFü‹~ ŠEˆFý ÀÆFûëþFû‹>Š•ŠFû:Es=ŠFý*ä‹ÈI‹6Š•ŠFû*ä÷.^‹ø|Š*ä;ÁuÏ‹6Š•ŠFû*ä÷.^‹ø|‹E;Ö”u´‹6Š•ŠFû:Du+ÀëŠFû*ä@‹~ ˆEŠFü*ä鬋~ ŠEˆFý‹6Š•ŠD*䋸ŠFý*ä@;Ç~éy‹Š•ŠFý*ä÷.^‹ðw‹~ ŠˆE‹>Š•ŠE *ä‹ÈA‹v ‹<Š*ä+Á¢ª”‹~ ‹‹6Š• ª”*ä÷.^‹ø| Š*ä@ˆ‹~ ‹‹6Š• ª”*ä÷.^‹ø| ‹E‰GÆÜ”Æä” ‹6Š•ŠFý*ä÷.^‹ø|ëW‹~ ŠEˆFþ‹6Š•ŠD*䋸ŠFþ*ä@;Ç~éË‹Š•ŠFþ*ä÷.^‹ðw‹~ ŠˆEÆÜ”Æä” ‹6Š•ŠFþ*ä÷.^‹ø|‹EëÆÜ”@Æä” ‹>Š•‹E £Ó”éh‹~ŠEˆFûŠFû*ä郋>Š•‹E ë‹~ ‹£Ó”‹~ÆEëzŠFû*ä±ÓøëK‹6Š•ŠFû*ä%÷.^‹ø| ë,‹6Š•ŠFû*ä%÷.^‹ø|ë‹6Š•ŠFû*ä%÷.^‹ø|‹E£Ó”ë$H=véïÑà‹Øÿ§^ë» ^¹CC;àúu‰ÿgÆÜ”Pé¶‹v ‹<€=u‹6Š•ŠD *䋸 –d˜+Çë‹>Š•ŠE *ä‹ÈA‹v ‹<Š*ä+Á¢ª”‹6Š• ª”*ä÷.^‹ø| ‹E£Ó”ÆÜ”(ë`‹v ‹<€=u‹6Š•ŠD *䋸 –d˜+Çë‹>Š•ŠE *ä‹ÈA‹v ‹<Š*ä+Á¢ª”‹6Š• ª”*ä÷.^‹ø| ‹E£Ó”€~ÿ1u¸h븢ܔÆä” ÿv ÿv ÿvèƒÄë¸ÿë =1wöÑà‹Øÿ§^‹å]_^ÃVWU‹ìƒì‹>Š•‹E£Ø”£Ö”+À¢Û”*ä¢Ú”*ä¢Õ”‹~€=u  ä”*䋸÷Ç uÿ6Ó”èôƒÄ=u€Ü”ÇFþÞ”‹vþƒFþ‹~‹‰‹vþƒFþ‹~ ‹‰‹vþƒFþ‹~ ‹‰‹~þÿFþ ˜d*ä% À Ü”*䋸÷ÇtO‹~ ‹‰Fü¸$Pÿvüÿvþèm÷ƒÄ‹~þ€=?t‹6Š• ª”*ä÷.^‹ø| Š*ä@‹~þˆƒFþ$‹~þÿFþ‹6Š•ŠDˆ Ü”*䋸÷Çt¸€Pÿ6°”ÿ6®”ÿvþèq®PèÈ®ƒÄ �Fþ€‹Fþ-Ò”¢Ò”¸Ò”P¸PèA¯ƒÄ ÀurÆÒ”¸¸Ò”P+ÀPè+¯ƒÄ Àu\ Ü”*䋸÷ÇuÝ Ò”*ä= uè"¯ Ò”*ä=uA å”*ä¢Õ”¸Ý”Pÿ6Ö”è ƒÄ¢Ý”¡Ö”‰Fú¡Ó”£Ö”‹Fú£Ó”ÆÒ” ÆÜ”€é|ÿè…¸ÿé‚ÇFþÞ”‹~þƒFþ‹‹~‰‹~þƒFþ‹‹~ ‰‹~þƒFþ‹‹~ ‰ÿFþ Ü”*䋸÷Ç t¸#P‹Fþ@P‹Fü@Pè"öƒÄƒFþ% Ü”*䋸÷Ç@t¸€Pÿvþèa­Pÿ6°”ÿ6®”è°­ƒÄ  Ý”*ä‹å]_^ÃVWU‹ìƒìÆFÿëþFÿ ¬”*䋸ŠFÿ*ä;ÇsŠFÿ*䋸Ñç‹F;…²”uÛ+Àë ¬”*äþ¬”‹øÑç‹F‰…²”¸‹å]_^ÃVWU‹ìƒìÆFþëþFþ‹>Š•ŠFþ:E s?‹Š•ŠFþ*ä÷.^‹ðw ‹~ Š:EuÕ‹6Š•ŠFþ*ä÷.^‹ø| ‹E;Fu»‹~ ŠFþˆE‹>Š•ŠFþ:E ué¸È_Pè‘õƒÄ‹~ Š*äë¸Ì_ë¸Ñ_ë¸×_PètõƒÄë =wÑà‹Øÿ§|^¸á_Pè[õƒÄ‹>Š•ŠE *ä‹ð‹~ ŠE*äÆAPè=öƒÄ‹~ €=tW¸ñ_Pè*õƒÄ‹~ ÿuèIõƒÄ¸û_PèõƒÄ‹~ ÿuè3õƒÄ‹~ ‹E=t ¸`PèóôƒÄ‹v ‹~ ‹EDÿÿPèõƒÄ¸ `PèÓôƒÄ‹~ €=t ¸`PèÁôƒÄ¸`Pè·ôƒÄèÔõPèõõƒÄˆFÿ¸%`Pè ôƒÄŠFÿ*äë+Àë,‹~ €=uéïþ¸ë¸ÿÿ뻀^¹CC;àútéÔþÿgéÎþ‹å]_^ÃVWU‹ìÆÒ”¸Ò”P¸Pè+¬ƒÄ Àué]_^Ë܋_ë‹Ü�_VWU‹ì‹V ‹F+ö+ÿ¹ ÑàÑÒÑ×ÑÖ;wr w;?r+?w@âå‹å]_^Ë܋_ë‹Ü�_VWU‹ì‹F÷'‹ò‹ø‹F÷gð‹F ÷'ð‹Ö‹Ç‹å]_^ÃAº$'$W$§&é&é&é&é&é&¸&á& •=E>E>E>E>E>E>E>E>ê==========E>õ=ú=E>E>E>=E>>====E>E>E>E>E>==E>E>E>E>E>E>E> >2>)@Y@Y@Y@Y@Y@Y@Y@Y@)@)@w>Y@Y@Y@Y@Y@Y@Y@w>w>w>Y@)@)@w>w>Î>“?)@¾?@Y@)@Y@Y@Y@Y@Y@Y@Y@)@w> W-WDWþÿYXúVñVËSYXYXYXYXYXYXYXYXTTTYXYXYXYXYXYXYXTTTYXTTTTYXYX]T¿UYXmVÉVYXYXYXYXYXYXYXàVTYX�W�WãWãWãWãWw[|[�[AIRz\j\f\. .. ??????????? à`  -PRINT- 000Ú^ã^ì^õ^þ^___"_CON PRN AUX NUL LP  T1 LPT2 LPT3 COM1 COM2 Local drives: A Remote drives: Remote printers: A Remote queues: A  Spooler error (Ignore, Abort) ((hhh8(!h"8#($(*(+( ReadWriteNot ready error, Drive: , Track: , Sector: - (Retry, Ignore, Abort) ê€tìƒÿÿÿÿÿÿÿÿÿÿÿÿé8�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) ŒÈŽØŽÐ¼2¸!5Í!‰pŒrº^¸!%Í!º@Í'€üKt.ÿ.pUWVRQSPŒÈŽØ‰&tŒvŽÐ¼2ûÇxÿÿÇzÇ~¸3Í!ˆ”0Ò¸3Í!´QÍ!‰ˆŽÃ¿.¾tü¥¥´Í!ˆÂ´Í!¢–Å6t‹‹\‹TŽDŽ\<w<u¸éÄ.¢•.‰Š.ŒŒ¸=ès 髸é¥.£x‰Ã¸Dèö€ué.Å6Š.ö•uW‹…Àu .Žˆ¡,…ÀtRŽÀ1ÿ¹ÿ0Àò®t¸ éb®uóW‰ûƒÃ±Óë´HÍ!YrB.£zHŽÀ&‹.‰|@ŽÀ1ö1ÿó¤ë ‹.£„‹E.£Žº˜¹‹x´?è€s ¸ é ¸é=r ¡˜=MZt=ZMté1¡œ±Óà+ £†ö•ui»ÿÿ´HÍ!¡†9Øw¿ƒ>¤t¢r²9Øw®+¢¤r9Øv‰Ø£‚‰Ã´HÍ!r“£~HŽÀ&‹.‰€@ƒ>¤u ‚+†-£„£Ž¡ ‰Â±Óâ± Óè‰Á‹x¸BèÆ‹†�ûr»à)†S±Óã‰ÙQ1Ò‹xŽ„´?è�Y[9Èu „ƒ>†ušަ®ƒ>žt>‹°1É‹x¸Bèir/‹žQº�¹‹x´?èSYr»�‹?‹Ž‹GÐŽÀ&âØé¤¸ éĸé¾ö•u@»ÿÿ´HÍ!ƒûrçS´HÍ![r߉‚£~HŽÀ&‹.‰€@£„ƒë�ûs±Óã‰Ùë¹ÿÿQ1Ò1É‹x¸BèÓYsé_Ž„1ÒQ´?èÁ^9ðtŠö•u¡„-£®Ç¬N‰6¨£¦ŽØÇ‹x´>è‹ö•té‹~¡z…ÀtHŽÀ&‰‰ÐHŽÀ&‰R´UÍ!ŽÂ‰ˆZ.¡z&£,‹6‚Ö&‰6Å6ŠVÅt¹ Q¿\Šó¤1À««Y^VÅt ¿lŠ<󤫫^Åt¹€‰Ïó¤:>–ˆÇvþÏ:–ˆÃvþËÅ6t‹L‹T&‰ &‰ 1ÀŽØ‰ˆ‰Š.Žˆº€´Í!ö•t(Ä>Š‹6¨Ž¦&Œ]NN‰&‰u.Å6¬&Œ]&‰ué"Š”¸3Í!ަ‹&¨‹~Å6¬VŽÂŽÚ‰ØË.Å6t�dþÿéQP‹xƒûÿt´>è]¡~…ÀtHŽÀ‹€&‰@ŽÀ´IÍ!¡z…ÀtHŽÀ‹|&‰@ŽÀ´IÍ!XÅ6t‰�LŠ”¸3Í!Žv‹&tX[YZ^_]ÏP¡~…Àt HŽÀ&Ç¡z…Àt HŽÀ&ÇXÍ!œP¡~…Àt HŽÀ¡€&£¡z…Àt HŽÀ¡|&£X�Ã�‚ƒ„…†‡ÿÿ‰Š‹Œ�Ž��‘’“ÿÿ•–—˜™š›œÿÿžŸ ¡ÿÿÿÿ¤ÿÿ¦§ÿÿ©ªÿÿ¬ÿÿÿÿ¯°±²ÿÿ´ÿÿ¶·¸¹ÿÿ»¼½¾ÿÿÿÿÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿ#TITLE "TURBODOS OPERATING SYSTEM TURBODOS/PC PRINT INTERFACE FOR IBM-PC" #SUBTTL "COPYRIGHT 1986, SOFTWARE 2000, INC." ; ; COPYRIGHT 1986, SOFTWARE 2000, INC. ; ; VERSION: 01/07/86 ; MODULE "PRINT" ;MODULE NAME ; LOC Code# ;LOCATE IN CODE SEGMENT ; BYTE "COPYRIGHT 1986, SOFTWARE 2000, INC." BYTE " (VERSION 01/07/86) " ;VERSION DATE ; ALIGN ;ALIGN TO WORD BOUNDARY ; I17DWD: WORD 0,0 ;INTERRUPT 0x17 TRANSFER DOUBLE WORD I1CDWD: WORD 0,0 ;INTERRUPT 0x1C TRANSFER DOUBLE WORD LOACNT: BYTE 0 ;LIST OUTPUT ACTIVITY COUNT ; I17ISR: PUSH DX ;SAVE REGISTERS PUSH CX PUSH BX PUSH AX MOV DX,=0xFFFF ;SET DX-REG=0FFFFH MOV CH,=0xFF ;SET CH-REG=0FFH MOV CL,=27 ;CL=SET/RETURN PRINT MODE FUNCTION MOV AX,=0xFF01 ;SET T-FCN FLAG INT 0x21 ;GET CURRENT PRINT MODE CMP BL,=2 ;CURRENT PRINT MODE=LOCAL? JZ __X2 ;IF SO, CONTINUE POP AX ;ELSE, RESTORE AX-REG TEST AH,AH ;FUNCTION NUMBER=0? JNZ __X1 ;IF NOT, CONTINUE PUSH AX ;ELSE, SAVE AX-REG MOV DL,AL ;OUTPUT CHARACTER TO DL-REG MOV CL,=5 ;CL=LIST OUTPUT FUNCTION MOV AX,=0xFF00 ;SET C-FCN FLAG INT 0x21 ;OUTPUT CHARACTER CS MOV LOACNT,=10 ;SET LIST OUTPUT ACTIVITY COUNT POP AX ;RESTORE AX-REG __X1: POP BX ;RESTORE REGISTERS POP CX POP DX MOV AH,=0x90 ;SET PRINTER STATUS=90H IRET ;DONE __X2: POP AX ;RESTORE REGISTERS POP BX POP CX POP DX CS JMPFI I17DWD ;CONTINUE ; I1CISR: CS CMP LOACNT,=0 ;LIST OUTPUT ACTIVITY COUNT=0? JZ __X ;IF SO, CONTINUE CS DEC LOACNT ;DECREMENT LIST ACTIVITY COUNT JNZ __X ;IF COUNT NOT EXHAUSTED, CONTINUE PUSH CX ;SAVE CX-REG MOV CL,=31 ;CL=FLUSH LIST BUFFER FUNCTION MOV AX,=0xFF01 ;SET T-FCN FLAG INT 0x21 ;FLUSH LIST BUFFER POP CX ;RESTORE CS-REG TEST AL,AL ;FLUSH LIST BUFFER SUCCESSFUL? JZ __X ;IF SO, CONTINUE CS INC LOACNT ;INCREMENT LIST ACTIVITY COUNT __X: CS JMPFI I1CDWD ;CONTINUE ; START: MOV AL,=0x1C ;GET INTERRUPT 0x1C (TIMER TICK) CALL GETINT ;GET INTERRUPT VECTOR ADDRESS MOV DI,BX ;INTERRUPT VECTOR OFFSET TO DI-REG MOV SI,&I1CISR ;  GET INTERRUPT 0x1C ADDRESS MOV CX,=16 ;GET COMPARE LENGTH CLD ;CLEAR DIRECTION FLAG REPE CMPS BYTE ;UTILITIY ALREADY INSTALLED? JZ __UAI ;IF SO, CONTINUE MOV AL,=0x17 ;GET INTERRUPT 0x17 (PRINTER) CALL GETINT ;GET INTERRUPT VECTOR ADDRESS MOV I17DWD,BX ;SAVE INTERRUPT VECTOR OFFSET MOV I17DWD+2,ES ;SAVE INTERRUPT VECTOR SEGMENT MOV DX,&I17ISR ;GET INTERRUPT SERVICE ADDRESS MOV AL,=0x17 ;GET INTERRUPT 0x17 CALL SETINT ;SET INTERRUPT VECTOR ADDRESS MOV AL,=0x1C ;GET INTERRUPT 0x1C (TIMER TICK) CALL GETINT ;GET INTERRUPT VECTOR ADDRESS MOV I1CDWD,BX ;SAVE INTERRUPT VECTOR OFFSET MOV I1CDWD+2,ES ;SAVE INTERRUPT VECTOR SEGMENT MOV DX,&I1CISR ;GET INTERRUPT SERVICE ADDRESS MOV AL,=0x1C ;GET INTERRUPT 0x1C CALL SETINT ;SET INTERRUPT VECTOR ADDRESS MOV DX,&START ;GET LAST BYTE ADDRESS INT 0x27 ;TERMINATE BUT STAY RESIDENT __UAI: INT 0x20 ;DONE ; GETINT: PUSH DS ;SAVE DS-REG XOR BX,BX ;GET INTERRUPT VECTOR PARAGRAPH MOV DS,BX ;INTERRUPT PARAGRAPH TO DS-REG MOV BL,AL ;INTERRUPT NUMBER TO BX-REG ADD BX,BX ;X2 ADD BX,BX ;X2=X4 MOV ES,2[BX] ;GET INTERRUPT VECTOR SEGMENT MOV BX,0[BX] ;GET INTERRUPT VECTOR OFFSET POP DS ;RESTORE DS-REG RET ;DONE ; SETINT: PUSH ES ;SAVE ES-REG XOR BX,BX ;GET INTERRUPT VECTOR PARAGRAPH MOV ES,BX ;INTERRUPT PARAGRAPH TO ES-REG MOV BL,AL ;INTERRUPT NUMBER TO BX-REG ADD BX,BX ;X2 ADD BX,BX ;X2=X4 ES MOV 0[BX],DX ;GET INTERRUPT VECTOR OFFSET ES MOV 2[BX],DS ;SET INTERRUPT VECTOR SEGMENT POP ES ;RESTORE ES-REG RET ;DONE ; END START ABCÿÿEÿÿÿÿHIJÿÿLMNOPQÿÿSTUVWXYÿÿ[\ÿÿ^_`aÿÿcdefghijklmnoÿÿqÿÿsÿÿuvwxÿÿÿÿ{|ÿÿ~ÿÿ€ÿÿ‚ÿÿÿÿÿÿÿÿ‡ˆ‰ÿÿ‹Œ�Ž��‘’ÿÿÿÿ•ÿÿÿÿ˜™ÿÿÿÿœ�žŸ ÿÿ¢ÿÿÿÿ¥¦ÿÿÿÿÿÿÿÿÿÿÿÿ­®¯°±²³´ÿÿ¶·¸¹º»¼½¾¿ÀÿÿÿÿÿÿÿÿÿÿÆÇÈÉÊËÌÍÎÏÐÑÿÿÓÔÕÖÿÿÿÿé¢�COPYRIGHT 1986, SOFTWARE 2000, INC. (VERSION 01/07/86) RQSPºÿÿµÿ±¸ÿÍ!€ûtX„äuPˆÂ±¸ÿÍ!.ÆD X[YZ´�ÏX[YZ.ÿ.<.€>Dt.þDuQ±¸ÿÍ!Y„Àt.þD.ÿ.@°è>‰ß¾¹üó¦t/°è,‰<Œ>ºE°è.°è‰@ŒBº°èº¥Í'Í 1ÛŽÛˆÃÛÛŽG‹Ã1ێÈÃÛÛ&‰&Œ_ÃÁÂÿÿÿÿÅÆÿÿÿÿÉÊËÿÿÿÿÎÏÐÑÒÓÔÕÖרÙÿÿÛÜÝÞßàáâãäåÿÿçèéêëìíîÿÿÿÿñòóôõö÷øùúûüÿÿþÿöööö  ööööööööö  ööööööööö  ööööööööö  ööööööööö  ööööööööö  ööööööööö   ööööööööö!  ööööööööö!  ööööööööö"  ööööööööö"  ööööööööö#  ööööööööö#  ööööööööö$  ööööööööö$  ööööööööö%  ööööööööö%  ööööööööö&  ööööööööö&  ööööööööö'  ööööööööö'  ööööööööö