home *** CD-ROM | disk | FTP | other *** search
- 10 ;OPEN15,8,15,"S0:N.ROU*":PRINT#15,"I":SAVE"N.ROUTINES",8:VERIFY"N.ROU*",8
- 15 ;
- 20 ;********
- 25 ;
- 30 UPZP INC $64:BNE N1
- 35 INC $65
- 40 N1 RTS
- 45 ;
- 50 FEED .BYTE 0; FLAG FOR LINEFEEDS
- 55 ;
- 60 ;********
- 65 ;
- 70 PAUSPPT LDA #<PAWS:LDX #>PAWS; DROPS THRU STRING
- 75 ;
- 80 ;********
- 85 ;
- 90 STRING STA $64:STX $65:JSR IBUF
- 95 LDY #0:STY IDEX
- 100 ;
- 105 SP1 LDY IDEX:LDA ($64),Y:BEQ N2
- 110 CMP #148:BNE N7; 80 COL TOGGLE
- 115 LDX COLUMNS:CPX #"8":BEQ N3
- 120 ;
- 125 LDA #32; 40/80 TOGGLE
- 130 .BYTE 44
- 135 N3 LDA #13
- 140 BNE N4
- 145 ;
- 150 N7 CMP #1:BEQ N5; FILLER TO ALLOW PROMPT MODIFICATION
- 155 CMP #10:BNE N12; TRAP LINEFEEDS
- 160 LDX FEED:BEQ N5; IF FEED = 0
- 165 BNE N4
- 170 ;
- 175 N12 CMP #37:BNE N4; TRAP FOR COLOR
- 180 ;
- 185 LDX AGRE:BNE N4; WEDGE FOR NON
- 190 SPSC JSR NQ:BNE N5; AGREMENT USRS
- 195 ;
- 200 N4 JSR CHAR; JSR HOLD
- 205 ;
- 210 N5 JSR BRAK:JSR NQ:BNE SP1
- 215 ;
- 220 N2 JMP ABSENT
- 225 ;
- 230 NQ INC IDEX:BNE N8
- 235 INC $65
- 240 N8 RTS
- 245 ;
- 250 ;*********
- 255 ;
- 260 VERIFY LDA #<VERI:LDX #>VERI
- 265 JSR STRING
- 270 GET1 JSR ABSENT
- 275 LDX #1:STX MIN+1:JSR GETBYTE
- 280 LDA RAPR:AND #127:RTS
- 285 ;
- 290 ;******* DELETE INVALID KEYPRESSES
- 295 ;
- 300 CLIV JSR (null)OFCHECK:BEQ N10
- 305 N11 LDA #20:JMP CHAR
- 310 N10 RTS
- 315 ;
- 320 ;*********
- 325 ;
- 330 HESI STA TEMP:JSR T0
- 335 N9 LDA $A2:CMP TEMP:BCC N9
- 340 RTS
- 345 ;
- 350 ;*********
- 355 ;
- 360 WAIT TAX; 1 SECOND COUNTER
- 365 W0 JSR T0
- 370 NB LDA 145:BPL NA
- 375 CPX $A1:BCC NB
- 380 W2 RTS
- 385 NA CLC:RTS
- 390 ;
- 395 ;*********
- 400 ;
- 405 OFLI JSR OLI; WAIT >1 SECOND
- 410 LDX #128:JSR CHKOUT
- 415 LDA #"+":JSR CHROUT
- 420 JSR CHROUT:JSR CHROUT
- 435 OLI LDA #73:JSR HESI:JMP CLRCHN
- 440 ;
- 445 LOGOFF JSR OFLI
- 450 LDA #0:STA IMNS:STA SYS0
- 455 LDX BSIC:TXS
- 460 LDA #>STAR:PHA:LDA #<STAR:PHA:RTS
- 465 ;
- 470 ; * ON LINE - SEND ATA COMMAND
- 475 ;
- 480 SSTT .BYTE "ATA":.BYTE 13 0
- 485 ;
- 490 ;ANSWER ROUTINE
- 495 ;MAKE SURE PHONE IS ON HOOK
- 500 ;
- 505 ;********
- 510 ;
- 515 ANSR JSR SMRT
- 520 ND LDA 56577:AND #16:BEQ NE; CHECK CARRIER BIT
- 525 LDA 145:BMI ND
- 530 CLC:RTS; ABORT W/CARRY CLEAR
- 535 ;
- 540 NE SEC:RTS; CARRIER DETECTED
- 545 ;
- 550 ASTT .BYTE "AT S0=1":.BYTE 13 0
- 555 ;
- 560 ; * SEND SMART COMMAND
- 565 ;
- 570 SMRT LDA 56577:AND #16:BNE NF
- 575 ; MAKE SURE NO CARRIER
- 580 JSR OFLI:JMP SMRT; HANG UP
- 585 ; AND (null) BACK
- 590 ;
- 595 NF LDX #5:JSR CHKOUT
- 600 ;
- 605 LDA #40:JSR HESI; WAIT .5 SEC
- 610 ;
- 615 LDY #0
- 620 NH JSR HOLD:LDA SSTT,Y:BEQ NI; NS
- 625 JSR CHROUT:INY:BNE NH
- 630 ;
- 635 NS TAY
- 640 NT JSR HOLD:LDA ASTT,Y:BEQ NI
- 645 JSR CHROUT:BNE NT
- 650 ;
- 655 NI JSR CLRCHN
- 660 LDA #40:JMP HESI
- 665 ;
- 670 ; * IDLE RS-232 TRANSMIT BUFFER
- 675 ;
- 680 ;********
- 685 ;
- 690 HOLD LDA $2A1:LSR:BCS HOLD
- 695 RTS
- 700 ;
- 705 ;********
- 710 ;
- 715 RET3 LDA #13:JSR CHAR
- 720 RET2 LDA #13:JSR CHAR
- 725 RET1 LDA #13:JSR CHAR
- 730 JMP CLRCHN
- 735 ;
- 740 ;********
- 745 ;
- 750 VALU LDA RAPR,X
- 755 CMP #48:BCC NJ
- 760 CMP #58:BCS NJ
- 765 CLC:RTS
- 770 NJ SEC:RTS
- 775 ;
- 780 ;********
- 785 ;
- 790 ; TIMER TO FORCE LOGOFF AFTER REASONABLE WAIT FOR USER INPUT.
- 795 ;
- 800 TIMERSET LDA #8:STA TI1
- 805 JMP T0
- 810 ;
- 815 ;********
- 820 ;
- 825 TIMECHEK LDA $A1:CMP TI1
- 830 BCS FORCEOFF
- 835 RTS
- 840 ;
- 845 FORCEOFF LDA #<TOT:LDX #>TOT
- 850 JMP CAG
- 855 ;
- 860 ;********
- 865 ;
- 870 RATS = 1023; ERROR FLAG
- 875 TI1 .BYTE 0 0 0 0 0 0 0 0
- 880 TOT .BYTE 13 37 83 13 7 7
- 885 .BYTE "[212]IMED [207]UT
- 890 CLG .BYTE 13 13 7 7
- 895 .BYTE ">>> LENALL ATNGAIN <<<"
- 900 XBYE .BYTE 13 13:.BYTE "** PEEKYE **":.BYTE 13 13 13 7 7 0
- 905 ;
- 910 ;[172][172][172][172][172][172][172][172]
- 915 ;
- 920 ; PUT MISC [181]O BUFFER PO[181]ED
- 925 ; [164] BY $62[173]3
- 930 ;
- 935 DROPDOWN LDY #0
- 940 NK LDA MISC,Y:STA ($62),Y:BEQ NL
- 945 INY:BNE NK
- 950 NL RTS
- 955 ;
- 960 ;[172][172][172][172][172][172][172][172]
- 965 ;
- 970 T0 LDA #0
- 975 STA $A0:STA $A1:STA $A2:RTS
- 980 ;
- 985 ;[172][172][172][172][172][172][172][172]
- 990 ;
- 995 BROK LDA #1; NO STACK PULLS [139] AB[176]T
- 1000 .BYTE 44
- 1005 ;
- 1010 BRAK LDA #0; CLEAN STACK [145] AB[176]T
- 1015 ;
- 1020 STA NP[170]1:LDA RATS:BNE N6
- 1025 ;
- 1030 JSR INCH:[175] #127:BEQ NM
- 1035 ;
- 1040 STA RET0:CMP #"P":BEQ NN
- 1045 CMP #32:BEQ NP
- 1050 BNE NM
- 1055 ;
- 1060 NN JSR [161]1:CMP #"C":BEQ NO
- 1065 LDX #7:JSR [161]T:CMP #"C":BNE NN
- 1070 NO INC RATS:JSR N11
- 1075 JSR RATF:BEQ N6
- 1080 ;
- 1085 NM LDX #7:JSR [161]T:BEQ N6
- 1090 CMP #"P":BNE NP
- 1095 NHM LDA #0:STA $C6:BEQ NN
- 1100 ;
- 1105 N6 RTS
- 1110 ;
- 1115 ;[172][172][172][172][172][172][172][172]
- 1120 ;
- 1125 NP LDX #0:BNE CRST
- 1130 ;
- 1135 LDA #[179]XHLT:LDX #[177]XHLT
- 1140 JSR STRING
- 1145 ;
- 1150 PLA:PLA
- 1155 ;
- 1156 CRST LDX #1:STX RATS
- 1160 DEX:STX $C6:STX M7[170]1:RTS
- 1165 ;
- 1170 XHLT .BYTE 7 7 37 83
- 1175 .BYTE " -=><=-":.BYTE 13 13 0
- 1180 ;
- 1185 SECURITY LDA PTEK
- 1190 [175] ACSS:BEQ NW
- 1195 SECURE LDA PTEK[170]1:[175] ACSS[170]1
- 1200 BEQ NW
- 1205 CLC:RTS
- 1210 ;
- 1215 NW LDA #[179]DENY:LDX #[177]DENY
- 1220 JSR STRING:SEC:RTS
- 1225 ;
- 1230 CALG LDA #[179]CLG:LDX #[177]CLG
- 1235 CAG JSR STRING:JMP [188]OFF
- 1240 ;
- 1245 .FILE 0:O.ROUTINES
-