_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

PROC.MODEM'WORK

FILE INFORMATION

FILENAME(S): PROC.MODEM'WORK

FILE TYPE(S): SEQ

FILE SIZE: 1.7K

FIRST SEEN: 2025-12-01 01:48:19

APPEARS ON: 2 disk(s)

FILE HASH

84f2d9497e3412887851f3aa3eebcc228cfcdb46e151613b0a4175c0e79cbbda

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
COMAL 2 PROC.MODEM'WORK SEQ hedning, Mattias H00r 22 8 DOWNLOAD FILE
CCS COMAL 2 PROC.MODEM'WORK SEQ hedning, Mattias H00r 22 10 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 30 30 31 30 20 0D 30 30  32 30 20 D0 D2 CF C3 20  |0010 .0020 .... |
00000010: 43 41 4C 4C 28 4E 55 4D  42 45 52 24 29 20 0D 30  |CALL(NUMBER$) .0|
00000020: 30 33 30 20 20 20 D4 C9  CD C5 20 30 0D 30 30 34  |030   .... 0.004|
00000030: 30 20 20 20 48 41 4E 47  A4 55 50 20 2F 2F 20 20  |0   HANG.UP //  |
00000040: 20 52 45 53 45 54 20 50  48 4F 4E 45 20 4C 49 4E  | RESET PHONE LIN|
00000050: 45 0D 30 30 35 30 20 20  20 50 41 55 53 45 28 32  |E.0050   PAUSE(2|
00000060: 29 20 2F 2F 20 20 41 4C  4C 4F 57 20 32 20 53 45  |) //  ALLOW 2 SE|
00000070: 43 4F 4E 44 53 0D 30 30  36 30 20 20 20 4F 46 46  |CONDS.0060   OFF|
00000080: A4 48 4F 4F 4B 20 2F 2F  20 20 41 4C 4C 4F 57 20  |.HOOK //  ALLOW |
00000090: 4F 4E 45 20 53 45 43 4F  4E 44 0D 30 30 37 30 20  |ONE SECOND.0070 |
000000A0: 20 20 50 41 55 53 45 28  31 29 20 2F 2F 20 20 46  |  PAUSE(1) //  F|
000000B0: 4F 52 20 44 49 41 4C 20  54 4F 4E 45 0D 30 30 38  |OR DIAL TONE.008|
000000C0: 30 20 20 20 44 49 41 4C  28 4E 55 4D 42 45 52 24  |0   DIAL(NUMBER$|
000000D0: 29 20 2F 2F 20 44 4F 20  49 54 0D 30 30 39 30 20  |) // DO IT.0090 |
000000E0: 20 20 57 41 49 54 43 41  52 52 28 31 35 29 20 2F  |  WAITCARR(15) /|
000000F0: 2F 20 31 35 20 53 45 43  4F 4E 44 53 20 20 20 20  |/ 15 SECONDS    |
00000100: 20 20 20 20 4F 52 20 43  41 52 52 49 45 52 0D 30  |    OR CARRIER.0|
00000110: 31 30 30 20 C5 CE C4 D0  D2 CF C3 20 43 41 4C 4C  |100 ....... CALL|
00000120: 0D 30 31 31 30 20 0D 30  31 32 30 20 C6 D5 CE C3  |.0110 .0120 ....|
00000130: 20 43 41 52 52 49 45 52  20 0D 30 31 33 30 20 20  | CARRIER .0130  |
00000140: 20 D2 C5 D4 D5 D2 CE 20  CE CF D4 20 D0 C5 C5 CB  | ...... ... ....|
00000150: 28 35 36 35 37 37 29 20  C2 C9 D4 C1 CE C4 20 31  |(56577) ...... 1|
00000160: 36 0D 30 31 34 30 20 C5  CE C4 C6 D5 CE C3 20 43  |6.0140 ....... C|
00000170: 41 52 52 49 45 52 0D 30  31 35 30 20 0D 30 31 36  |ARRIER.0150 .016|
00000180: 30 20 D0 D2 CF C3 20 57  41 49 54 43 41 52 52 28  |0 .... WAITCARR(|
00000190: 53 45 43 29 20 0D 30 31  37 30 20 20 20 D4 C9 CD  |SEC) .0170   ...|
000001A0: C5 20 30 0D 30 31 38 30  20 20 20 D2 C5 D0 C5 C1  |. 0.0180   .....|
000001B0: D4 20 0D 30 31 39 30 20  20 20 D5 CE D4 C9 CC 20  |. .0190   ..... |
000001C0: 43 41 52 52 49 45 52 20  CF D2 20 D4 C9 CD C5 3E  |CARRIER .. ....>|
000001D0: 3D 28 53 45 43 29 2A 36  30 0D 30 32 30 30 20 C5  |=(SEC)*60.0200 .|
000001E0: CE C4 D0 D2 CF C3 20 57  41 49 54 43 41 52 52 0D  |...... WAITCARR.|
000001F0: 30 32 31 30 20 0D 30 32  32 30 20 D0 D2 CF C3 20  |0210 .0220 .... |
00000200: 48 41 4E 47 A4 55 50 20  0D 30 32 33 30 20 20 20  |HANG.UP .0230   |
00000210: D0 CF CB C5 20 35 36 35  37 39 2C 33 32 0D 30 32  |.... 56579,32.02|
00000220: 34 30 20 20 20 D0 CF CB  C5 20 35 36 35 37 37 2C  |40   .... 56577,|
00000230: 30 0D 30 32 35 30 20 C5  CE C4 D0 D2 CF C3 20 48  |0.0250 ....... H|
00000240: 41 4E 47 A4 55 50 0D 30  32 36 30 20 0D 30 32 37  |ANG.UP.0260 .027|
00000250: 30 20 D0 D2 CF C3 20 4F  46 46 A4 48 4F 4F 4B 20  |0 .... OFF.HOOK |
00000260: 0D 30 32 38 30 20 20 20  D0 CF CB C5 20 35 36 35  |.0280   .... 565|
00000270: 37 39 2C 33 32 0D 30 32  39 30 20 20 20 D0 CF CB  |79,32.0290   ...|
00000280: C5 20 35 36 35 37 37 2C  33 32 0D 30 33 30 30 20  |. 56577,32.0300 |
00000290: C5 CE C4 D0 D2 CF C3 20  4F 46 46 A4 48 4F 4F 4B  |....... OFF.HOOK|
000002A0: 0D 30 33 31 30 20 0D 30  33 32 30 20 D0 D2 CF C3  |.0310 .0320 ....|
000002B0: 20 44 49 41 4C 28 4E 55  4D 42 45 52 24 29 20 0D  | DIAL(NUMBER$) .|
000002C0: 30 33 33 30 20 20 20 C6  CF D2 20 49 3A 3D 31 20  |0330   ... I:=1 |
000002D0: D4 CF 20 CC C5 CE 28 4E  55 4D 42 45 52 24 29 20  |.. ...(NUMBER$) |
000002E0: C4 CF 0D 30 33 34 30 20  20 20 20 20 D0 D2 C9 CE  |...0340     ....|
000002F0: D4 20 4E 55 4D 42 45 52  24 28 49 29 2C 0D 30 33  |. NUMBER$(I),.03|
00000300: 35 30 20 20 20 20 20 C9  C6 20 4E 55 4D 42 45 52  |50     .. NUMBER|
00000310: 24 28 49 29 20 C9 CE 20  22 30 31 32 33 34 35 36  |$(I) .. "0123456|
00000320: 37 38 39 22 20 D4 C8 C5  CE 0D 30 33 36 30 20 20  |789" .....0360  |
00000330: 20 20 20 20 20 4E 3A 3D  D6 C1 CC 28 4E 55 4D 42  |     N:=...(NUMB|
00000340: 45 52 24 28 49 29 29 0D  30 33 37 30 20 20 20 20  |ER$(I)).0370    |
00000350: 20 20 20 C9 C6 20 4E 3D  30 20 D4 C8 C5 CE 20 4E  |   .. N=0 .... N|
00000360: 3A 3D 31 30 0D 30 33 38  30 20 20 20 20 20 20 20  |:=10.0380       |
00000370: C6 CF D2 20 50 55 4C 53  45 3A 3D 31 20 D4 CF 20  |... PULSE:=1 .. |
00000380: 4E 20 C4 CF 0D 30 33 39  30 20 20 20 20 20 20 20  |N ...0390       |
00000390: 20 20 D0 CF CB C5 20 35  36 35 37 37 2C 30 0D 30  |  .... 56577,0.0|
000003A0: 34 30 30 20 20 20 20 20  20 20 20 20 50 41 55 53  |400         PAUS|
000003B0: 45 28 2E 30 35 29 0D 30  34 31 30 20 20 20 20 20  |E(.05).0410     |
000003C0: 20 20 20 20 D0 CF CB C5  20 35 36 35 37 37 2C 33  |    .... 56577,3|
000003D0: 32 0D 30 34 32 30 20 20  20 20 20 20 20 20 20 50  |2.0420         P|
000003E0: 41 55 53 45 28 2E 30 35  29 0D 30 34 33 30 20 20  |AUSE(.05).0430  |
000003F0: 20 20 20 20 20 C5 CE C4  C6 CF D2 20 50 55 4C 53  |     ...... PULS|
00000400: 45 0D 30 34 34 30 20 20  20 20 20 C5 CC C9 C6 20  |E.0440     .... |
00000410: 4E 55 4D 42 45 52 24 28  49 29 3D 22 2E 22 20 D4  |NUMBER$(I)="." .|
00000420: C8 C5 CE 0D 30 34 35 30  20 20 20 20 20 20 20 50  |....0450       P|
00000430: 41 55 53 45 28 31 29 0D  30 34 36 30 20 20 20 20  |AUSE(1).0460    |
00000440: 20 C5 CE C4 C9 C6 20 0D  30 34 37 30 20 20 20 20  | ..... .0470    |
00000450: 20 50 41 55 53 45 28 2E  34 29 0D 30 34 38 30 20  | PAUSE(.4).0480 |
00000460: 20 20 C5 CE C4 C6 CF D2  20 0D 30 34 39 30 20 C5  |  ...... .0490 .|
00000470: CE C4 D0 D2 CF C3 20 44  49 41 4C 0D 30 35 30 30  |...... DIAL.0500|
00000480: 20 0D 30 35 31 30 20 D0  D2 CF C3 20 50 41 55 53  | .0510 .... PAUS|
00000490: 45 28 44 45 4C 41 59 29  20 0D 30 35 32 30 20 20  |E(DELAY) .0520  |
000004A0: 20 D4 C9 CD C5 20 30 0D  30 35 33 30 20 20 20 D7  | .... 0.0530   .|
000004B0: C8 C9 CC C5 20 44 45 4C  41 59 2A 36 30 3E D4 C9  |.... DELAY*60>..|
000004C0: CD C5 20 C4 CF 0D 30 35  34 30 20 20 20 C5 CE C4  |.. ...0540   ...|
000004D0: D7 C8 C9 CC C5 20 0D 30  35 35 30 20 C5 CE C4 D0  |..... .0550 ....|
000004E0: D2 CF C3 20 50 41 55 53  45 0D 30 35 36 30 20 0D  |... PAUSE.0560 .|
000004F0: 30 35 37 30 20 C6 D5 CE  C3 20 4D 4F 44 45 4D 27  |0570 .... MODEM'|
00000500: 47 45 54 24 28 46 27 4E  55 4D 29 20 C3 CC CF D3  |GET$(F'NUM) ....|
00000510: C5 C4 0D 30 35 38 30 20  20 20 4F 4C 44 27 4C 4F  |...0580   OLD'LO|
00000520: 3A 3D D0 C5 C5 CB 28 24  30 33 32 34 29 0D 30 35  |:=....($0324).05|
00000530: 39 30 20 20 20 4F 4C 44  27 48 49 3A 3D D0 C5 C5  |90   OLD'HI:=...|
00000540: CB 28 24 30 33 32 35 29  0D 30 36 30 30 20 20 20  |.($0325).0600   |
00000550: C4 C9 CD 20 43 24 20 CF  C6 20 31 0D 30 36 31 30  |... C$ .. 1.0610|
00000560: 20 20 20 D4 D2 C1 D0 20  0D 30 36 32 30 20 20 20  |   .... .0620   |
00000570: 20 20 D4 D2 C1 D0 20 C5  D3 C3 2D 0D 30 36 33 30  |  .... ...-.0630|
00000580: 20 20 20 20 20 D0 CF CB  C5 20 24 30 33 32 34 2C  |     .... $0324,|
00000590: D0 C5 C5 CB 28 24 30 33  32 41 29 0D 30 36 34 30  |....($032A).0640|
000005A0: 20 20 20 20 20 D0 CF CB  C5 20 24 30 33 32 35 2C  |     .... $0325,|
000005B0: D0 C5 C5 CB 28 24 30 33  32 42 29 0D 30 36 35 30  |....($032B).0650|
000005C0: 20 20 20 20 20 43 24 3A  3D C7 C5 D4 24 28 46 27  |     C$:=...$(F'|
000005D0: 4E 55 4D 2C 31 29 0D 30  36 36 30 20 20 20 20 20  |NUM,1).0660     |
000005E0: D0 CF CB C5 20 24 30 33  32 34 2C 4F 4C 44 27 4C  |.... $0324,OLD'L|
000005F0: 4F 0D 30 36 37 30 20 20  20 20 20 D0 CF CB C5 20  |O.0670     .... |
00000600: 24 30 33 32 35 2C 4F 4C  44 27 48 49 0D 30 36 38  |$0325,OLD'HI.068|
00000610: 30 20 20 20 20 20 D4 D2  C1 D0 20 C5 D3 C3 2B 0D  |0     .... ...+.|
00000620: 30 36 39 30 20 20 20 20  20 D2 C5 D4 D5 D2 CE 20  |0690     ...... |
00000630: 43 24 0D 30 37 30 30 20  20 20 C8 C1 CE C4 CC C5  |C$.0700   ......|
00000640: D2 20 0D 30 37 31 30 20  20 20 20 20 D0 CF CB C5  |. .0710     ....|
00000650: 20 24 30 33 32 34 2C 4F  4C 44 27 4C 4F 0D 30 37  | $0324,OLD'LO.07|
00000660: 32 30 20 20 20 20 20 D0  CF CB C5 20 24 30 33 32  |20     .... $032|
00000670: 35 2C 4F 4C 44 27 48 49  0D 30 37 33 30 20 20 20  |5,OLD'HI.0730   |
00000680: 20 20 D4 D2 C1 D0 20 C5  D3 C3 2B 0D 30 37 34 30  |  .... ...+.0740|
00000690: 20 20 20 20 20 D2 C5 D0  CF D2 D4 20 2F 2F 20 50  |     ...... // P|
000006A0: 41 53 53 20 45 52 52 4F  52 20 4F 55 54 53 49 44  |ASS ERROR OUTSID|
000006B0: 45 0D 30 37 35 30 20 20  20 C5 CE C4 D4 D2 C1 D0  |E.0750   .......|
000006C0: 20 2F 2F 20 4F 46 20 54  48 49 53 20 52 4F 55 54  | // OF THIS ROUT|
000006D0: 49 4E 45 2E 0D 30 37 36  30 20 C5 CE C4 C6 D5 CE  |INE..0760 ......|
000006E0: C3 20 4D 4F 44 45 4D 27  47 45 54 24 0D 30 37 37  |. MODEM'GET$.077|
000006F0: 30 20 0D                                          |0 .             |
0010 .0020 PROC CALL(NUMBER$) .0030   TI
ME 0.0040   HANG.UP //   RESET PHONE LIN
E.0050   PAUSE(2) //  ALLOW 2 SECONDS.00
60   OFF.HOOK //  ALLOW ONE SECOND.0070 
  PAUSE(1) //  FOR DIAL TONE.0080   DIAL
(NUMBER$) // DO IT.0090   WAITCARR(15) /
/ 15 SECONDS        OR CARRIER.0100 ENDP
ROC CALL.0110 .0120 FUNC CARRIER .0130  
 RETURN NOT PEEK(56577) BITAND 16.0140 E
NDFUNC CARRIER.0150 .0160 PROC WAITCARR(
SEC) .0170   TIME 0.0180   REPEAT .0190 
  UNTIL CARRIER OR TIME>=(SEC)*60.0200 E
NDPROC WAITCARR.0210 .0220 PROC HANG.UP 
.0230   POKE 56579,32.0240   POKE 56577,
0.0250 ENDPROC HANG.UP.0260 .0270 PROC O
FF.HOOK .0280   POKE 56579,32.0290   POK
E 56577,32.0300 ENDPROC OFF.HOOK.0310 .0
320 PROC DIAL(NUMBER$) .0330   FOR I:=1 
TO LEN(NUMBER$) DO.0340     PRINT NUMBER
$(I),.0350     IF NUMBER$(I) IN "0123456
789" THEN.0360       N:=VAL(NUMBER$(I)).
0370       IF N=0 THEN N:=10.0380       
FOR PULSE:=1 TO N DO.0390         POKE 5
6577,0.0400         PAUSE(.05).0410     
    POKE 56577,32.0420         PAUSE(.05
).0430       ENDFOR PULSE.0440     ELIF 
NUMBER$(I)="." THEN.0450       PAUSE(1).
0460     ENDIF .0470     PAUSE(.4).0480 
  ENDFOR .0490 ENDPROC DIAL.0500 .0510 P
ROC PAUSE(DELAY) .0520   TIME 0.0530   W
HILE DELAY*60>TIME DO.0540   ENDWHILE .0
550 ENDPROC PAUSE.0560 .0570 FUNC MODEM'
GET$(F'NUM) CLOSED.0580   OLD'LO:=PEEK($
0324).0590   OLD'HI:=PEEK($0325).0600   
DIM C$ OF 1.0610   TRAP .0620     TRAP E
SC-.0630     POKE $0324,PEEK($032A).0640
     POKE $0325,PEEK($032B).0650     C$:
=GET$(F'NUM,1).0660     POKE $0324,OLD'L
O.0670     POKE $0325,OLD'HI.0680     TR
AP ESC+.0690     RETURN C$.0700   HANDLE
R .0710     POKE $0324,OLD'LO.0720     P
OKE $0325,OLD'HI.0730     TRAP ESC+.0740
     REPORT // PASS ERROR OUTSIDE.0750  
 ENDTRAP // OF THIS ROUTINE..0760 ENDFUN
C MODEM'GET$.0770 .
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL