From: shri@unreal.cs.umass.edu (H.Shrikumar)
Newsgroups: comp.sys.palmtops
Subject: Macros to make DialTone work (after a fashion ;)
Summary: Not that I use DialTone ;) .. but the macro was fun to do.
Date: 24 Dec 92 23:46:44 GMT
Reply-To: shri@unreal.cs.umass.edu (H.Shrikumar)
Organization: UMass, Amherst MA + Temporal Sys & Computer Networks Bombay India


Hi all,

  To those who showed interest in my macros for DialTone. Appended
below is a file containing them.

Here is a valid entry from my PhoneBook, which these macros can
handle and feed to the DialTone dialer safely ...

    0                                    40 chars   Comment:
    +------------------------------------+
     Name:    H. Shrikumar \me                      Name, and \keyword
     Number: h(413)549-8484,w(413)545-4753          numbers
     Address:
     f(413)545-1249                                 more numbers
     #48 Presidential Apts,                         Rest of address.
     Amherst, MA 01002
    +------------------------------------+

CHAR-F2 dials the first number in the list, CHAR-F3 - the Home number,
CHAR-F4 - the work number and CHAR-F5 - the fax number.

  DialTone works (after a fashion). It turned out that 23500 sampling
rate (thats what its called by the author, tho' thats not what it
seems to be .. but hey! I did not name it so ;), 0.2% error, 3000
sample tones, with a 200 msec silence works quite OK. The real thing
that you do need to tune is your fingers !

  You really need to "understand" the resonances of the plastic case
of the HP95LX, and learn where to hold the transmitter (handset) of the
telephone instrument. For most electronic phones, I found that
either right below the speaker, or below the number keypad works fine.
Dont touch the case with the phone handset, a small distance of about
3-5 mm between them is recommended, since otherwise the resonances
seem to change to a faint rattling.  With some carbon type mics,
holding the mic near the PCMCIA door (may remain closed) helps. Again
dont touch. 

  Particularly in the US, Payphones seem to need a closer separation,
  but then on most payphones here, the speech path from the microphone
is not enabled until after the callee goes off hook, providing answer
supervision.  Thus, you cannot use dialtone to dial from a payphone,
unless you are first dialling a 1-800 number. In that case this can
help very much. Especially, if you were to have to make a phone call
from a despicable COCOT pay phone, which prevent you from using the
touch tone keypad just so that you cannot use your calling card, you
could dial the 1-800 access number of your long distance company from
the phone (which generally work more often than not), and then use
dialtone to dialout the number you wish to call, your calling card
number etc.

Problems in DialTone:
---------------------

The original DialTone has little error checking, so if you paste a bad
string into it, it can hang. Any files open with MEMO or 123 can be
lost, since you have to reboot. These macros try to totally avoid this.

International numbers are in the +country(area)number format,
but the macros cant use it intelligently. They only make sure
that DialTone can never hang even with such numbers. If you
want to change +91 (for India), remember it occurs twice 
in each macro, and the number of {DELS} following the second
instance must equal number of digits in the country code plus 1.

 The macros that follow will generally protect DialTone from hanging
ever, and also will also avoid any accidental loss of a MEMO document
that might be open. To make this possible, it has to Copy to clipboard
an entry from APPT TODO. Dont delete this entry. Otherwise dialTone
will hang precisely when you have a file open in MEMO. This is
installed by the first bootstrap macro. The real DialTone macros are
installed in a second step.

PhoneBook format:
-----------------

  Your PhoneBook file should have numbers of the form (ONLY)

+91(city)number   - International numbers  
(NZN)NXX-XXXX     - Non-local US NPA numbers
NXX-XXXX          - local numbers

Each can be preceeded by a "h" [Home], "w" [Work], "f"[Fax].
See example above.

They can be separated by commas. [Precisely one comma, no
space,no other character] The first line of the address is
an overflow line for more numbers. But any number must fit in either
of the two lines entirely and not be divided among them.

Note: I have used comma as a speparator, that precludes any
possibility of putting a delay in the number string. But then
DialTone barfs unpredictably with anything more than 13 characters in
that field, so I cant see where one could add delays elements
in the number field, so I guess its OK. I tried other
separators, but either they look too cluttered, or (if space
were used) there is always a danger you may accidentally have two
of them together, which will confuse the macro.

How to install:
--------------

Since the macros are pretty large, I was at a loss for several days as
to the smoothest way you could install them. Finally this method.
Essentially, the scripts use debug to edit the env file where the
macros are stored. I have tested them on my machine thoroughly and
should work well, I am pretty sure.

(If it makes you feel safer you can stash of copy of setup.env, and
check the new Setup-Menu-CHAR to see that alls well after
installation.)

Installation involves one bootstrap macro, execute CHAR-F2 CHAR-F3, and
then install the real macros.

First Unshar the file that follows. You can do this on a unix machine,
by saving this mail, making a new copy as dialtone_macro.shar, deleting
all lines till the line that begins with a # followed by a !, and
running the command

  %  sh dialtone_macro.shar

This will extract four files. patch1.bat, instmac.pch, install.bat
and setup.pch

  Transfer these four files to the Jaguar with kermit. Remember to use
TEXT mode. 

+------------------
Make sure CHAR-F2, F3, F4 and F5 are empty. I use these for the macros,
and the following installation procedure will overwrite if any other
macro exists there.
+------------------

+-------------------
Youd need a program to make the SETUP.ENV file writable. I use
ATTRIBCR.ZIP, which can be picked up from 
  barnacle.erc.clarkson.edu:/pub/simtel20-cdrom/msdos/dirutl/attribcr.arc, 
or your nearest friendly ftp server I renamed the utility to ATTR.COM
(shorter sweater name).  This is a very small program, so I carry it
around in my \_bin all the time. Works well ... recommended.  In you
have some other chmod, then edit the two bat files with
relavant commands.  Dont leave setup.env with write-enabled.
+----------------------

STAGE ONE:

Under DOS (assuming you have installed attr.com) ...

C>  cd to the directory where these four files are.
C>  patch1.bat

Then exit DOS.

Have topcard on the screen. (close all applications)
Run CHAR-F2
Run CHAR-F3

Make sure the TODO entry that this creates is  ..

Item:       "!!Remember Hit ESC {Not N}!!"
Priority:    9th
Carry Fwd:   yes

Save and quit the APPT application.

SECOND STAGE:

 Then start DOS again ...

C> cd to the directory with the install files.
C> install.bat

  This will overwrite the macros for F2, F3, F4 and F5. 

You are DONE.

Test it with CHAR-F2 to dial the a number in your PHONEbook.

And note this is important .. after the dialling is done,
the macro leaves you in MEMO. Check the display. If it is
not a file that you forgot to save before dialling, hit N

If it is a file you were editing, dont worry, its still safe 
for you .. hit ESC !! (not N ... not Y ... has to be ESC)
Thats what the warning message from my DialTone macro
would have reminded you if you did have a file open.

Lastly,
  Edit 95buddy.bcf (if you have it, optional) to display the 
legend for the CHAR macros. I have included the relevant lines
from my 95buddy.bcf, should you like to cut and paste.

Fragment for 95Buddy.bcf ....
   |Dial Number ...|_bak|    8 |Alarms
 1 |1st hom wrk fax| up!| 7    |On Off

The dialtone_macro.shar file follows .....
-------------:<-------------
#!/bin/sh
echo x patch1.bat
sed 's/^X//' << ! > patch1.bat
Xattr +w c:\_dat\setup.env
Xc:\_sys\debug < instmac.pch
Xattr -w c:\_dat\setup.env
!
echo x instmac.pch
sed 's/^X//' << ! > instmac.pch
Xnc:\_dat\setup.env
Xl
Xe046A 02 F4 44 69 61 6C
Xe0470 54 6F 6E 65 50 72 6F 70 68 79 6C 61 63 74 69 63
Xe0480 20 49 4E 53 54 41 4C 4C 20 4F 4E 45 00 20 20 00
Xe0490 00 00 00 B0 00 C8 76 00 64 00 00 44 00 42 13 00
Xe04A0 52 00 65 00 6D 00 65 00 6D 00 62 00 65 00 72 00
Xe04B0 20 00 48 00 69 00 74 00 20 00 45 00 53 00 43 00
Xe04C0 20 00 7B 00 4E 00 6F 00 74 00 20 00 22 00 4E 00
Xe04D0 22 00 7D 00 13 00 00 50 20 00 20 00 20 00 20 00
Xe04E0 20 00 20 00 20 00 20 00 00 50 00 44 00 40 2C 00
Xe04F0 2C 00 43 00 41 00 55 00 54 00 49 00 4F 00 4E 00
Xe0500 21 00 2C 00 2C 00 0D 00 0D 00 4E 00 6F 00 74 00
Xe0510 68 00 69 00 6E 00 67 00 20 00 22 00 54 00 6F 00
Xe0520 44 00 6F 00 22 00 20 00 48 00 65 00 72 00 65 00
Xe0530 21 00 20 00 44 00 4F 00 20 00 4E 00 4F 00 54 00
Xe0540 20 00 45 00 44 00 49 00 54 00 2F 00 44 00 45 00
Xe0550 4C 00 13 00 13 00 0D 00 54 00 68 00 69 00 73 00
Xe0560 20 00 65 00 6E 00 74 00 72 00 79 00 20 00 69 00
Xe0570 73 00 20 00 6F 00 6E 00 6C 00 79 00 20 00 6E 00
Xe0580 65 00 65 00 64 00 65 00 64 00 20 00 62 00 79 00
Xe0590 20 00 53 00 68 00 72 00 69 00 27 00 73 00 0D 00
Xe05A0 44 00 69 00 61 00 6C 00 54 00 6F 00 6E 00 65 00
Xe05B0 20 00 70 00 72 00 6F 00 70 00 68 00 79 00 6C 00
Xe05C0 61 00 63 00 74 00 69 00 63 00 20 00 6D 00 61 00
Xe05D0 63 00 72 00 6F 00 73 00 2C 00 20 00 77 00 68 00
Xe05E0 69 00 63 00 68 00 0D 00 65 00 64 00 69 00 74 00
Xe05F0 20 00 74 00 68 00 65 00 20 00 43 00 61 00 72 00
Xe0600 64 00 20 00 74 00 6F 00 20 00 74 00 68 00 65 00
Xe0610 20 00 76 00 65 00 72 00 79 00 20 00 63 00 6F 00
Xe0620 6E 00 73 00 74 00 72 00 61 00 69 00 6E 00 65 00
Xe0630 64 00 0D 00 66 00 6F 00 72 00 6D 00 61 00 74 00
Xe0640 20 00 74 00 68 00 61 00 74 00 20 00 44 00 69 00
Xe0650 61 00 6C 00 54 00 6F 00 6E 00 65 00 20 00 62 00
Xe0660 61 00 72 00 66 00 73 00 20 00 77 00 69 00 74 00
Xe0670 68 00 6F 00 75 00 74 00 2E 00 0D 00 44 00 4F 00
Xe0680 20 00 4E 00 4F 00 54 00 20 00 44 00 45 00 4C 00
Xe0690 00 00 03 99 44 69 61 6C 54 6F 6E 65 50 72 6F 70
Xe06A0 68 79 6C 61 63 74 69 63 20 49 4E 53 54 41 4C 4C
Xe06B0 20 54 57 4F 00 20 20 00 00 00 0D 00 44 00 4F 00
Xe06C0 20 00 4E 00 4F 00 54 00 20 00 44 00 45 00 4C 00
Xe06D0 45 00 54 00 45 00 20 00 54 00 48 00 49 00 53 00
Xe06E0 20 00 45 00 4E 00 54 00 52 00 59 00 20 00 13 00
Xe06F0 20 00 57 00 69 00 74 00 68 00 6F 00 75 00 74 00
Xe0700 20 00 74 00 68 00 69 00 73 00 20 00 65 00 6E 00
Xe0710 74 00 72 00 79 00 20 00 61 00 20 00 4D 00 45 00
Xe0720 4D 00 4F 00 20 00 66 00 69 00 6C 00 65 00 20 00
Xe0730 6F 00 70 00 65 00 6E 00 20 00 77 00 69 00 6C 00
Xe0740 6C 00 20 00 73 00 75 00 72 00 65 00 6C 00 79 00
Xe0750 20 00 62 00 65 00 20 00 6C 00 6F 00 73 00 74 00
Xe0760 20 00 6A 00 75 00 73 00 74 00 20 00 77 00 68 00
Xe0770 65 00 6E 00 20 00 69 00 74 00 20 00 6D 00 75 00
Xe0780 73 00 74 00 20 00 6E 00 6F 00 74 00 20 00 13 00
Xe0790 20 00 3A 00 2D 00 29 00 0D 00 B8 FF 48 00 20 00
Xe07A0 53 00 68 00 72 00 69 00 6B 00 75 00 6D 00 61 00
Xe07B0 72 00 20 00 73 00 68 00 72 00 69 00 40 00 6C 00
Xe07C0 65 00 67 00 61 00 74 00 6F 00 2E 00 63 00 73 00
Xe07D0 2E 00 75 00 6D 00 61 00 73 00 73 00 2E 00 65 00
Xe07E0 64 00 75 00 00 44 0D 00 00 50 00 50 20 00 20 00
Xe07F0 20 00 20 00 20 00 20 00 20 00 00 50 00 00 00 00
Xe0800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0810 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0830 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0850 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0870 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0890 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe08A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe08B0 00 00 00 00 00 00 00 00 00 00 
Xw
Xq
!
echo x install.bat
sed 's/^X//' << ! > install.bat
Xattr +w c:\_dat\setup.env
Xc:\_sys\debug < setup.pch
Xattr -w c:\_dat\setup.env
!
echo x setup.pch
sed 's/^X//' << ! > setup.pch
Xnc:\_dat\setup.env
Xl
Xe046A 02 72 44 69 61 6C
Xe0470 20 31 73 74 20 6E 75 6D 62 65 72 20 20 20 20 BB
Xe0480 DA 20 20 5B 66 72 6F 6D 20 50 68 6F 6E 65 5D 00
Xe0490 00 00 00 B4 1B 00 00 3C 00 B8 00 C8 66 00 6E 00
Xe04A0 00 3E 00 B0 00 C8 76 00 64 00 00 44 00 41 13 00
Xe04B0 52 00 65 00 6D 00 65 00 6D 00 62 00 65 00 72 00
Xe04C0 0D 00 00 3C 00 B8 00 77 00 50 00 4F 2C 00 00 53
Xe04D0 00 77 00 4F 00 41 2C 00 0D 00 00 43 00 75 00 4B
Xe04E0 00 3D 00 4F 2C 00 68 00 2C 00 77 00 2C 00 66 00
Xe04F0 2C 00 00 47 00 4B 00 41 68 00 0D 00 00 53 00 47
Xe0500 00 4B 00 41 77 00 0D 00 00 53 00 47 00 4B 00 41
Xe0510 66 00 0D 00 00 53 00 75 2B 00 39 00 31 00 00 77
Xe0520 00 50 00 4B 00 41 2B 00 39 00 31 00 0D 00 00 53
Xe0530 00 53 00 53 00 77 00 50 00 4D 00 4D 00 4D 00 4D
Xe0540 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D
Xe0550 00 4D 0D 00 00 77 00 43 00 50 00 50 00 3C 00 B7
Xe0560 00 3C 00 44 00 B0 00 C8 71 00 1B 00 1B 00 00 B4
Xe0570 00 B8 00 C8 71 00 00 00 00 00 00 00 00 00 00 00
Xe0580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0590 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05B0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05C0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe05F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0610 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0630 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0650 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0670 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0690 00 00 03 71 44 69 61 6C 20 48 6F 6D 65 20 4E 75
Xe06A0 6D 62 65 72 20 20 20 BA B3 20 20 20 20 20 20 20
Xe06B0 20 20 20 20 20 20 20 00 00 00 00 B4 1B 00 00 3C
Xe06C0 00 B8 00 C8 66 00 6E 00 00 C8 73 00 77 00 38 00
Xe06D0 30 00 0D 00 71 00 00 3E 00 B0 00 C8 76 00 64 00
Xe06E0 00 44 00 41 13 00 52 00 65 00 6D 00 65 00 6D 00
Xe06F0 62 00 65 00 72 00 0D 00 00 3C 00 B8 00 77 00 50
Xe0700 00 4F 2C 00 00 53 00 4F 2C 00 68 00 2C 00 77 00
Xe0710 2C 00 66 00 2C 00 00 77 00 4F 00 41 68 00 0D 00
Xe0720 00 41 2C 00 0D 00 00 43 00 75 00 4B 00 3D 00 47
Xe0730 00 43 00 4B 00 41 68 00 0D 00 00 3D 00 75 2B 00
Xe0740 39 00 31 00 00 77 00 50 00 4B 00 41 2B 00 39 00
Xe0750 31 00 0D 00 00 53 00 53 00 53 00 77 00 50 00 4D
Xe0760 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D
Xe0770 00 4D 00 4D 00 4D 00 4D 0D 00 00 77 00 43 00 50
Xe0780 00 50 00 3C 00 B7 00 3C 00 44 00 B0 00 C8 71 00
Xe0790 1B 00 1B 00 00 B4 00 B8 00 C8 71 00 2C 00 66 00
Xe07A0 2C 00 00 77 00 4F 00 41 68 00 0D 00 00 41 2C 00
Xe07B0 0D 00 00 43 00 75 00 4B 00 3D 00 47 00 43 00 4B
Xe07C0 00 41 68 00 0D 00 00 3D 00 75 2B 00 39 00 31 00
Xe07D0 00 77 00 50 00 4B 00 41 2B 00 39 00 31 00 0D 00
Xe07E0 00 53 00 53 00 53 00 77 00 50 00 4D 00 4D 00 4D
Xe07F0 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D
Xe0800 00 4D 00 4D 0D 00 00 77 00 43 00 50 00 50 00 3C
Xe0810 00 B7 00 3C 00 44 00 B0 00 C8 71 00 00 B8 00 C8
Xe0820 71 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0830 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0850 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0870 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0890 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe08A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe08B0 00 00 00 00 00 00 00 00 00 00 04 71 44 69 61 6C
Xe08C0 20 77 6F 72 6B 20 4E 75 6D 62 65 72 20 20 20 BA
Xe08D0 B3 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00
Xe08E0 00 00 00 B4 1B 00 00 3C 00 B8 00 C8 66 00 6E 00
Xe08F0 00 C8 73 00 77 00 38 00 30 00 0D 00 71 00 00 3E
Xe0900 00 B0 00 C8 76 00 64 00 00 44 00 41 13 00 52 00
Xe0910 65 00 6D 00 65 00 6D 00 62 00 65 00 72 00 0D 00
Xe0920 00 3C 00 B8 00 77 00 50 00 4F 2C 00 00 53 00 4F
Xe0930 2C 00 68 00 2C 00 77 00 2C 00 66 00 2C 00 00 77
Xe0940 00 4F 00 41 77 00 0D 00 00 41 2C 00 0D 00 00 43
Xe0950 00 75 00 4B 00 3D 00 47 00 43 00 4B 00 41 77 00
Xe0960 0D 00 00 3D 00 75 2B 00 39 00 31 00 00 77 00 50
Xe0970 00 4B 00 41 2B 00 39 00 31 00 0D 00 00 53 00 53
Xe0980 00 53 00 77 00 50 00 4D 00 4D 00 4D 00 4D 00 4D
Xe0990 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D
Xe09A0 0D 00 00 77 00 43 00 50 00 50 00 3C 00 B7 00 3C
Xe09B0 00 44 00 B0 00 C8 71 00 1B 00 1B 00 00 B4 00 B8
Xe09C0 00 C8 71 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe09D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe09E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe09F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A70 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0A90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0AA0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0AB0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0AC0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0AD0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0AE0 00 00 05 71 44 69 61 6C 20 46 61 78 20 4E 75 6D
Xe0AF0 62 65 72 20 20 20 20 BC C0 20 20 20 20 20 20 20
Xe0B00 20 20 20 20 20 20 20 00 00 00 00 B4 1B 00 00 3C
Xe0B10 00 B8 00 C8 66 00 6E 00 00 C8 73 00 77 00 38 00
Xe0B20 30 00 0D 00 71 00 00 3E 00 B0 00 C8 76 00 64 00
Xe0B30 00 44 00 41 13 00 52 00 65 00 6D 00 65 00 6D 00
Xe0B40 62 00 65 00 72 00 0D 00 00 3C 00 B8 00 77 00 50
Xe0B50 00 4F 2C 00 00 53 00 4F 2C 00 68 00 2C 00 77 00
Xe0B60 2C 00 66 00 2C 00 00 77 00 4F 00 41 66 00 0D 00
Xe0B70 00 41 2C 00 0D 00 00 43 00 75 00 4B 00 3D 00 47
Xe0B80 00 43 00 4B 00 41 66 00 0D 00 00 3D 00 75 2B 00
Xe0B90 39 00 31 00 00 77 00 50 00 4B 00 41 2B 00 39 00
Xe0BA0 31 00 0D 00 00 53 00 53 00 53 00 77 00 50 00 4D
Xe0BB0 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D 00 4D
Xe0BC0 00 4D 00 4D 00 4D 00 4D 0D 00 00 77 00 43 00 50
Xe0BD0 00 50 00 3C 00 B7 00 3C 00 44 00 B0 00 C8 71 00
Xe0BE0 1B 00 1B 00 00 B4 00 B8 00 C8 71 00 00 00 00 00
Xe0BF0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C70 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0C90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CA0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CB0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CC0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CD0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CE0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0CF0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Xe0D00 00 00 00 00 00 00 00 00 00 00 
w
q
!
echo Documentation for the DialTone macro is at the end of the shar.
exit 0

----------------:<---------------

   If you really want to know, here is documentation for the 
dialtone macro :-) Should I call it ver 2.1 ??

{PHONE}{ESC}
    Make sure you are in PHONE (If you already are ... some extra beeps)
{F2}
    Copy the current card to clipboard
{MEMO}{MENU}fn
    MEMO and open a new file. (Will try not clobber MEMO open file)
    If memo is currently editing file and has a
    dirty buffer, then the macros as given as SAFE ... they will try not to
    overwrite. But for this to work, do not edit the macro. If you do
    you are on your own (not that otherwise you aren't :-) [See "magic" above]
    In any event, the characters from "yYnN" must not appear anywhere
    in the rest of the macro. (Why?)
{MENU}sw80{ENTER}q
    Set MEMO to 80 Columns. (Dont change without thinking, and think again.)
{F4}
    Paste the card here. So that it can don the necessary fire suits.
{APPT}{MENU}vd{F10}
    Go to APPT, make sure we are viewing TODOs.
{F7}{Ctrl-S}Remember{ENTER}{F2}
    Fetch the Error Message for the macro into the clipboard.  (Dont change)
{MEMO}{Ctrl-HOME}
    Back to the job. Make sure cursor is where we expect it to be.
{DOWN}{END},{DEL}{END},h,w,f,{Ctrl-HOME}{END}
    Join the first line of the Address: (could have numbers).
    Append things for FIND to eat.
{F7}h{ENTER}{F7},{ENTER}{F9}{Ctrl-END}{LEFT}{F3}
    Find the home number, be happy and delete all after it.
{HOME}{F9}{LEFT}{F7}h{ENTER}{F3}
    Delete everything before it.
{Ctrl-END}+91{Ctrl-HOME}{DOWN}{LEFT}{F7}+91{ENTER}{DEL}{DEL}{DEL}
    Similarly remove any country identifier string. 
    (Careful if you edit, make sure {DEL}s match chars in country code91)
{Ctrl-HOME}{DOWN}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}
{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{RIGHT}{ENTER}
    Sheer silk ! Give the guy just what he wants not more!.
{Ctrl-HOME}{F9}{DOWN}{DOWN}{F2}
    Okey doke. Pick it up and paste it on the clipboard.
{Alt-PHONE}{F2}{F10}
    Go and beep-boop! {F10} QUITs the DialTone application.
{APPT}{MENU}q{ESC}{ESC}
    Magically restore APPT. If it was open, it remains open. If it 
    was closed, it remains closed. If it had a file open that needed
    saving it still has a file open that needs saving. 
    Who me ??!! I did nothing there!
{PHONE}{MEMO}{MENU}q
    Tell MEMO to quit. It will ask "Save changes before exiting" (Y/N)".
    Leave him right there. DONT add a N here.
    You must type that manually .. (Why?)

whew !!! what a mouthful !

Newsgroups: comp.sys.palmtops