| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | Devil Dialer |
/*
* D E V I L S I M P L E 0
*
* Simple Devil Dialer version 1.60
* Written by Paul Edwards, 1993.7.18, Fidonet 3:711/934
* Released to the Public Domain
* Updated on 1993.7.24 to fix timing problem
* Updated on 1994.5.1 to fix some control things.
* For full documentation for this script,
* FREQ "DEVIL" from 3:711/934{at}fidonet
*
* Converted to ARexx by Michael Stapleton of Graphic Bits, 1995.10.7
*
* You can find out more information from the telix documentation,
* SALT.DOC, available from almost any BBS.
*
* NOT WORKING!!!
*
*/
options results
address 'TERM'
'ACTIVATE'
/* See if there are any requests to process */
flist = getfiles('*.req') /* All '.req' packets in our outbound directory */
flist = strip(flist, 'B')
if flist='' then do
call prints('No file requests to process.')
exit
end
'DIAL' '02-436-1785' /* you must find out the bbs number yourself */
call prints('Sending Yoohoo - please wait 12 seconds')
call cputc('f1'x) /* This is the Yoohoo character */
call delay(30) /* Unfortunately it could be a while before the BBS */
call cputc('f1'x) /* actually is ready to receive it, so we send it a few */
call delay(30) /* times */
call cputc('f1'x)
call delay(30)
call cputc('f1'x)
call delay(30)
call cputc('f1'x)
call cgetct(50) /* I expect to get an ENQ character ('05'x) */
call delay(40) /* Assume I did */
call prints('sending Hello')
call cputc('1f'x) /* This character says that a 'hello' follows */
call cputc('6f'x) /* fixed as '006f'x */
call cputc('00'x) /* in little-endian */
call cputc('01'x) /* fixed as '0001'x */
call cputc('00'x) /* in little-endian */
call cputc('00'x) /* product code */
call cputc('00'x) /* in little-endian */
call cputc('00'x) /* major revision */
call cputc('00'x) /* in little-endian */
call cputc('00'x) /* minor revision */
call cputc('00'x) /* in little-endian */
call cputs('Devil Dialer ')
/* This should be your BBS name */
call cputc('00'x) /* null-terminate your BBS name */
call cputs('The Devil ') /* This should be your name */
call cputc('00'x) /* null-terminate your name */
call cputc('9a'x) /* zone */
call cputc('02'x) /* in little-endian */
call cputc('9a'x) /* net */
call cputc('02'x) /* in little-endian */
call cputc('9a'x) /* node */
call cputc('02'x) /* in little-endian */
call cputc('00'x) /* point number */
call cputc('00'x) /* in little-endian */
call cputc('00'x) /* no password - so put out 8 NULs */
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x) /* opus reserved - 8 NULs */
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('04'x) /* capability - and Telix doesn't support zedzap! */
call cputc('00'x) /* in little-endian */
call cputc('00'x) /* 12 characters reserved */
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('00'x)
call cputc('c4'x) /* crc */
call cputc('fa'x) /* in big-endian */
call cgetct(50) /* We're expecting to get a yoohoo from them */
call delay(40) /* Assume we did */
call cputc('05'x) /* Then we send an ENQ to ask for the hello structure */
call delay(40) /* we're likely to get it aren't we? */
call cputc('06'x) /* so we'd better ACK it! */
call delay(20)
'SENDFILE' flist
'RECEIVEFILE'
'HANGUP'
exit
/* * * * * * * * * * * * * * * * * * * * * * * * * * * *
*
* Function definitions:
* --------------------
*
* cputc - send character to serial port
* delay - delay certain number of tenths of seconds
* cgetct - read a character from serial port,
* waiting a maximum of x tenths of a second
* cputs - send a string
*
*/
/* Get file names that match fpat in upload dir */
getfiles: parse arg fpat
'getattr' pathprefs field BINARYUPLOADPATH VAR path
olddir = pragma('D', path)
call filelist(fpat, st, 'F')
flist = ''
do i=1 to st.0;flist = flist st.i;end
call pragma('D', olddir)
return flist
delay: parse arg t
'DELAY SEC' t%10
return
prints: parse arg t
'SEND LOCAL TEXT' t'\r\n'
return
cputs: parse arg t
'SEND TEXT' t
return
cputc: parse arg t
'SEND TEXT' t
return
/* Get a single char, with timeout t */
cgetct: parse arg t
'TIMEOUT SEC' t%10
'READ NUM 1'
if rc~=0 then res=''
else res=RESULT
'TIMEOUT OFF'
return res
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
Also, the file produced by makereq is called 02C703A6.REQ.
Michael Stapleton of Graphic Bits.
* AmyBW v2.10 *
... This tagline is encrypted
--- Blue Wave/RA v2.10 AmyBW
* Origin: The Three Amigas - better than two (3:713/615.0)SEEN-BY: 50/99 620/243 623/630 711/401 409 410 413 430 510 807 808 809 932 SEEN-BY: 711/934 712/508 515 713/111 317 601 611 615 618 700 826 888 914 SEEN-BY: 714/906 800/1 7877/2809 @PATH: 713/615 888 711/808 809 934 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.