Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!lll-lcc!mordor!styx!ames!ucbcad!ucbvax!sdcsvax!sdcc6!sdcc18!ee161add
From: ee161add@sdcc18.ucsd.EDU (James Hayes)
Newsgroups: comp.sys.apple
Subject: DCOM vt100 emulator for Apple, (5 of 5)
Message-ID: <586@sdcc18.ucsd.EDU>
Date: Thu, 1-Jan-87 03:56:46 EST
Article-I.D.: sdcc18.586
Posted: Thu Jan  1 03:56:46 1987
Date-Received: Thu, 1-Jan-87 19:21:56 EST
Organization: UC San Diego Funny Farm.
Lines: 280
Keywords: Emulator Apple vt100


This is the third (and final) file of three that must be downloaded to
the Apple system.  After downloading all three, "EXEC" them to create
the required files that comprise the emulator.  Please see the
instructions for more information.


-Jim Hayes, UC San Diego.
ARPA: (first attempt)   hayes@ucsd.edu
      (2nd attempt)     hayes@sdcsvax.arpa

UUCP: {get it to Berkeley}!sdcsvax!hayes

-----Cut------Cut-----Cut-----Cut-----Cut-----Cut-----Cut-----
TEXT:HOME:PRINT "UNPACKING BASIC PROGRAMS...":POKE 34,3:HOME
NEW

1 LC = 0
10 D$ =  CHR$ (4): TEXT : HOME : INVERSE 
20  PRINT  SPC( 40);: FOR I = 1 TO 16: INVERSE : PRINT " ";
30  NORMAL : PRINT  SPC( 38);: INVERSE : PRINT " ";: NEXT I
40  INVERSE : PRINT  SPC( 40);: NORMAL : VTAB 3
45 A$ = "THANK YOU FOR USING DCOM 3.3": GOSUB 960
50  PRINT 
52 A$ = "THIS IS A SHAREWARE PROGRAM.  PLEASE": GOSUB 960
54 A$ = "FEEL FREE TO DISTRIBUTE THIS PROGRAM": GOSUB 960
56 A$ = "TO YOUR FRIENDS.": GOSUB 960
58  PRINT :A$ = "PLEASE NOTE, HOWEVER, THAT THIS": GOSUB 960
60 A$ = "PROGRAM TOOK OVER 2 YEARS OF": GOSUB 960
62 A$ = "PAINFUL RESEARCH AND PROGRAMMING.": GOSUB 960
63  PRINT :A$ = "YOU HAVE 30 DAYS TO TEST DCOM 3.3": GOSUB 960
65 A$ = "IF IT FITS YOUR NEEDS AND YOU WOULD": GOSUB 960
67 A$ = "LIKE TO KEEP IT, AS WELL AS": GOSUB 960
68 A$ = "RECEIVE UPDATE NOTICES, AND TYPESET": GOSUB 960
70 A$ = "COPYRIGHT(C) 1986 JAMES A. HAYES": VTAB 23
71  GOSUB 960: VTAB 21: PRINT "PLEASE HIT ";
72  INVERSE : PRINT "";: NORMAL 
73  PRINT " FOR THE NEXT PAGE."
74  WAIT  - 16384,128: POKE  - 16368,0
76  POKE 33,38: POKE 32,1: POKE 34,1: POKE 35,17: HOME 
77  TEXT : VTAB 21: PRINT  SPC( 40);: VTAB 3: HTAB 1
79 A$ = "DOCUMENTATION, PLEASE SEND $25 TO": GOSUB 960
80 A$ = "THE ADDRESS BELOW.": GOSUB 960
85  PRINT 
92 A$ = "PROGRAM DISK, DOCUMENTATION, AND": GOSUB 960
93 A$ = "FREE UPDATE NOTICES, ALSO COST $25.": GOSUB 960
95  PRINT 
96 A$ = "ADD AN ADDITONAL $10 FOR THE": GOSUB 960
98 A$ = "6502 ASSEMBLY LANGUAGE SOURCE": GOSUB 960
99 A$ = "CODE. (WILL ARRIVE ON DISKETTE)": GOSUB 960
101  PRINT 
102 A$ = "MAIL CHECK OR MONEY ORDER TO:": GOSUB 960
103  PRINT 
104 A$ = "JIM HAYES, P.O. BOX 221044": GOSUB 960
105 A$ = "UNIVERSITY CITY, CA,  92122-1044": GOSUB 960
106  PRINT : INVERSE 
110 A$ = "OFFER EXPIRES JANUARY 1990": GOSUB 960
111  NORMAL 
200  VTAB 20
210  POKE 34,19: POKE 35,22: HOME 
220  PRINT "HIT ";: INVERSE : PRINT "";: NORMAL 
230  PRINT " TO START THE TERMINAL,": PRINT "OR ";: INVERSE 
240  PRINT "";: NORMAL 
250  PRINT " TO CONFIGURE FOR YOUR HARDWARE.";
260  WAIT  - 16384,128
270  GET A$: IF A$ =  CHR$ (13) THEN 300
280  IF A$ <  >  CHR$ (27) THEN 270
290  HOME : GOTO 940
300  HOME : FOR I = 1 TO 500: NEXT I
305  IF LC <  > 689 THEN  PRINT "SHAREWARE MESSAGED MODIFIED.": END 
310  PRINT "LOOKING FOR TERMINAL CONFIGURATION FILE."
320  ONERR  GOTO 900
330  PRINT D$"OPEN CONFIG.TERM"
340  PRINT D$"READ CONFIG.TERM"
350  FOR I = 1 TO 7: INPUT F$(I): INPUT DE$(I)
360  NEXT I
370  INPUT SL
380  PRINT D$"CLOSE"
390  POKE 216,0
400  POKE 34,0: HOME 
410  PRINT "DOS IS NOW LOADING DCOM 3.3..."
420  PRINT "ONE MOMENT PLEASE.": PRINT 
430  INVERSE 
440  VTAB 4: PRINT "                  DRIVERS               "
449  VTAB 14
450  PRINT  SPC( 17)"DEFAULTS" SPC( 15)
460  VTAB 21: INVERSE : PRINT  SPC( 40)
470  NORMAL 
480  FOR I = 1 TO 7
490  VTAB 5 + I: HTAB 1: PRINT DE$(I): NEXT I: VTAB 16
500  PRINT "VIDEO DEFAULTS": PRINT "SERIAL CARD DEFAULTS"
510  FOR I = 1 TO 7
520  VTAB 5 + I: HTAB 1: INVERSE : PRINT DE$(I)
530  NORMAL 
540  VTAB 20: PRINT 
550  PRINT D$"BLOAD ",F$(I)
560  VTAB 5 + I: HTAB 1: PRINT DE$(I)
570  NEXT I
580  VTAB 16: INVERSE : PRINT "VIDEO DEFAULTS": NORMAL 
590  PRINT : PRINT D$"BLOAD DCOM.MAIN.D"
600  VTAB 16: PRINT "VIDEO DEFAULTS"
610  VTAB 17: INVERSE : PRINT "SERIAL CARD DEFAULTS": NORMAL 
620  PRINT : PRINT D$"BLOAD "F$(6)".D"
630  VTAB 17: PRINT "SERIAL CARD DEFAULTS"
640  POKE 794,SL
650  HOME 
660  INVERSE : PRINT " THE TERMINAL HAS FINISHED LOADING.      ";
670  PRINT "PLEASE SWITCH TO YOUR OUTPUT DEVICE.   ": NORMAL 
680  PRINT 
690  IF F$(5) <  > "DCOM.SCREEN.IIE" GOTO 730
700  TEXT : HOME : PR# 0
710  IN# 0: PR# 3: HOME : CALL 1002
720  PRINT "* Serial Init Error *"
730  CALL 8192
740  POKE  - 16372,128
750  TEXT : HOME : PR# 0: IN# 0: TEXT : HOME : CALL 1002
760  IF  PEEK (767) <  > 255 THEN  END 
770  VTAB 8: PRINT "STORING TERMINAL DEFUALTS..."
780  VTAB 10: HTAB 1
790  PRINT "POWER-ON VIDEO CHARACTERISTICS..."
800  PRINT  CHR$ (4)"BSAVE DCOM.MAIN.D,A$300,L$A0"
810  VTAB 10: HTAB 1
820  PRINT "POWER-ON VIDEO CHARACTERISTICS...DONE"
830  VTAB 11: HTAB 1
840  PRINT "SERIAL CARD SETTINGS..."
850  PRINT  CHR$ (4)"BSAVE "F$(5)".D,A$4012,L13"
860  VTAB 11: HTAB 1
870  PRINT "SERIAL CARD SETTINGS...DONE"
880  PRINT : PRINT : PRINT : PRINT "DCOM ENDED NORMALLY"
890  END 
900  POKE 216,0
905  TEXT : HOME 
910  HOME : PRINT "YOUR TERMINAL HAS NOT BEEN CONFIGURED."
920  PRINT : PRINT : PRINT "HIT RETURN TO CONFIGURE THE TERMINAL..";
930  INPUT "";A$
940  PRINT "RUNNING: 'CONFIGURE TERMINAL'"
950  PRINT D$"RUN CONFIGURE TERMINAL"
960 LC = LC +  LEN (A$)
980  HTAB 21 - ( LEN (A$) / 2): PRINT A$
990  RETURN 
SAVE HELLO
NEW

10 D$ =  CHR$ (4):CF$ = "CONFIG.TERM"
20  TEXT : HOME 
30  PRINT "DCOM 3.3 TERMINAL CONFIGURATION MENU:"
40  PRINT : POKE 34,3
50  PRINT "----------------------------------------"
60  HOME 
70  PRINT : PRINT 
80 NO = 1
90  REM  LOOP BEGINS HERE
100  READ A$
110  IF A$ = "**" THEN 400
120  POKE 34,3: HOME : PRINT "WHAT "A$" DO YOU HAVE?"
130  PRINT :I = 1
140  READ N$,F$(I),DE$(I): IF N$ = "*" THEN 190
150 N$(I) = N$
160  PRINT I") "N$(I)
170 I = I + 1
180  GOTO 140
190  POKE 34,17: HOME 
200 I = I - 1
210  PRINT : PRINT "ENTER THE NUMBER OF YOU CHOICE, OR 'Q'  TO EXIT."
220  PRINT 
230  INPUT "-> ";B$
240  IF B$ = "Q" THEN  TEXT : HOME : END 
250 A =  VAL (B$): IF A < 1 OR A > I THEN  PRINT  CHR$ (7): GOTO 210
260 FF$(NO) = F$(A)
270 DD$(NO) = DE$(A)
280 NO = NO + 1
290  IF  LEFT$ (A$,3) <  > "SER" THEN 390
300  IF  LEFT$ (N$(A),3) = "//C" THEN SL = 2: GOTO 390
310  PRINT : PRINT "WHAT SLOT IS YOUR SERIAL CARD IN?"
320  INPUT "[USUALLY 2] >";SL$:ER = 0:SL =  VAL (SL$)
330  IF SL < 1 OR SL = 3 OR SL = 6 THEN ER = 1
340  IF SL > 7 OR SL <  >  INT (SL) THEN ER = 1
350  IF ER THEN  PRINT "THAT'S IMPOSSIBLE!?!  SLOTS 0, 3 AND 6"
360  IF ER THEN  PRINT "ARE DIDICATED TO MEMORY, 80 COLS., AND"
370  IF ER THEN  PRINT "YOUR DISK CONTROLLER. PLEASE TRY AGAIN."
380  IF ER THEN 310
390  GOTO 90
400  POKE 34,3: HOME 
410 NO = NO - 1
420  PRINT "I HAVE:": PRINT 
430  FOR I = 1 TO NO
440  PRINT I") ";DD$(I);
450  IF I = 3 THEN  PRINT " (SLOT "SL")";
460  PRINT 
470  NEXT I
480  POKE 34,17
490  HOME 
500  PRINT "S) SAVE": PRINT "A) ABORT AND START OVER."
510  PRINT :
520  INPUT "-> ";A$
530  IF A$ = "S" THEN 560
540  IF A$ = "A" THEN  RUN 
550  PRINT : GOTO 500
560  TEXT : HOME 
570  PRINT "SAVING DRIVER SETTINGS."
580  PRINT D$"OPEN "CF$
590  PRINT D$"DELETE "CF$
600  PRINT D$"OPEN "CF$
610  PRINT D$"WRITE "CF$
620  PRINT "DCOM.MAIN"
630  PRINT "TERMINAL MAIN CODE"
640  PRINT "DCOM.CONTROL"
650  PRINT "TERMINAL CONTROL PANEL"
660  PRINT "DCOM.PRINTER.BASIC"
670  PRINT "'BASIC' PRINTER CONTROLLER"
680  FOR I = 1 TO NO
690  PRINT FF$(I): PRINT DD$(I): NEXT I
700  PRINT SL
710  PRINT D$"CLOSE"
720  HOME : PRINT "DONE. HIT ";: INVERSE : PRINT "RETURN";
730  NORMAL : PRINT " IF YOU WOULD LIKE TO"
740  PRINT : PRINT "FIRE-UP THE TERMINAL, -OR- TYPE ";
750  INVERSE : PRINT "ESC";: NORMAL : PRINT " TO"
760  PRINT : PRINT "EXIT. ";
770  GET A$: IF A$ =  CHR$ (27) THEN  HOME : END 
780  IF A$ <  >  CHR$ (13) THEN 770
790  HOME 
800  PRINT : PRINT "RUNNING 'HELLO'": PRINT D$"RUN HELLO"
810  END 
820  END 
821  DATA KEYBOARD
822  DATA TRUE UPPER/LOWER CASE KEYBOARD,DCOM.KEYBOARD.IIE
823  DATA TRUE UPPER/LOWER CASE KEYBOARD DRIVER
824  DATA FAKE U/L CASE BY SHIFT-KEY>>PADDLE 2
825  DATA DCOM.KEYBOARD.SHFMOD
826  DATA SHIFT KEY MOD KEYBOARD DRIVER
827  DATA *,XX,XX
830  DATA 80 COLUMN CARD
840  DATA OMNI-VISION (SLOT 3),DCOM.SCREEN.DVISION
850  DATA 'COMPUTER STOP' OMNI-VISION DRIVER
860  DATA DOUBLE-VISION (SLOT 3),DCOM.SCREEN.DVISION
870  DATA 'COMPUTER STOP' DOUBLE-VISION DRIVER
880  DATA APPLE //E IN AUX SLOT,DCOM.SCREEN.IIE
890  DATA APPLE (AUX SLOT) 80 COLUMN DRIVER
900  DATA APPLE //C BUILT-IN 80 COLUMN CARD,DCOM.SCREEN.IIE
910  DATA APPLE //C 80 COLUMN DRIVER
911  DATA  VIDEX VIDEOTERM SCREEN DRIVER,DCOM.SCREEN.VDX
912  DATA  VIDEX VIDEOTERM DRIVER
920  DATA *,XX,XX    
930  DATA SERIAL CARD
940  DATA SUPER SERIAL CARD,DCOM.MODEM.SSC
950  DATA SUPER SERIAL CARD DRIVER
960  DATA  ALS/CCS 7710/ETC...,DCOM.MODEM.ALSDIS
970  DATA  ALS DISPATCHER TYPE DRIVER.
980  DATA //C SERIAL PORT,DCOM.MODEM.SSC
990  DATA APPLE //C MODEM PORT DRIVER
1000  DATA GENERIC PASCAL COMPATIBLE,DCOM.MODEM.PASCAL
1010  DATA GENERIC P-SYS SERIAL DRIVER  
1020  DATA CPS MULTIFUNCTION CARD,DCOM.MODEM.CPS
1030  DATA CPS MULTIFUNCTION DRIVER
1035  DATA  SSM-AIO-II SERIAL CARD
1036  DATA  DCOM.MODEM.PASCAL
1037  DATA  SSM-AIO-II SERIAL DRIVER
1040  DATA *,XX,XX 
1050  DATA DATA COMM. HARDWARE
1060  DATA HAYES COMPAT. MODEM (TONE DIALING)
1070  DATA DCOM.PERSONALITY.HAYES
1080  DATA HAYES (OR COMPAT.) TONE DIALER
1090  DATA HAYES COMPAT. MODEM (PULSE DIALING),DCOM.PERSONALITY.PHAYES
1100  DATA HAYES (OR COMPAT.) PULSE DIALER
1110  DATA DUMB (NON HAYES COMPAT.) MODEM
1120  DATA DCOM.PERSONALITY.DUMB
1130  DATA NON DIALING MODEM DRIVER
1140  DATA NO MODEM (HOOKED DIRECTLY TO SYSTEM)
1150  DATA DCOM.PERSONALITY.NETWORK
1160  DATA DIRECT NETWORK CONNECTION DRIVER
1170  DATA UNGERMANN/BASS NETONE DIRECT CONNECT
1180  DATA DCOM.PERSONALITY.NETONE
1190  DATA U/B NET-ONE BROADBAND NETWORK DRIVER
1200  DATA *,XX,XX
1210  DATA **
1220  DATA **  
SAVE CONFIGURE TERMINAL
TEXT
HOME:?"UNPACKING FINISHED. PLEASE BOOT ME..."