[comp.os.cpm] No-slot Clocks

WANCHO@SIMTEL20.ARPA ("Frank J. Wancho") (07/23/87)

     There are now at least three sources for "no-slot" clocks, the
cheapest of which is from Radio Shack on sale for $39.95.  The problem
is that the software that comes with it is an executable for MSDOS.
There is no source and no technical documentation on how to program it
under some other environment, such as CP/M.
     Short of writing Radio Shack directly, does anyone have the
necessary info to make it work under CP/M?  *Can* it work under CP/M,
or does it take advantage of some MSDOS peculiarity?
     For those unfamiliar with these no-slot clocks (probably
somebody's trademark), it is a clock/calendar chip and a lithium
battery wedged into the cavity of a PROM socket and meant to be
sandwiched between an existing ROM and its socket, or simply plugged
into any empty 28-pin ROM socket you may have available.  Seems to
simple to be true...considering that I have a whole S-100 card devoted
to apparently the same function...

--Frank

W8SDZ@SIMTEL20.ARPA (Keith Petersen) (07/23/87)

Funny you should ask about no-slot clocks.  I just uploaded a program
to read and set the no-slot clock.  It's in:

Filename			Type	 Bytes	 CRC

Directory PD:<CPM.SYSUTL>
NO-SLOT.LBR.1			BINARY	 15744  58A7H

--Keith

gary@percival.UUCP (Gary Wells) (07/24/87)

Carefull on those no slot clocks!  They should work ok on any type of system, 
but not all NSC's are accessed equally.

We evaluated a couple of different brands here.            

Brand A: Waited & monitored all accesses to its memory location, looking for a
specific sequence of bytes.  When the "attention" sequence was detected, the
next set of bytes was intercepted & taken to be set/read commands.  This is
probably OK, as long as you are POSITIVE that there will be no interrupts
during the time you are trying to access the clock (we were positive that there
would be)

Brand B: Was actually a 2K x 8 RAM.  This replaced your existing 2K x 8 device,
was accessed and used just like normal RAM, except that the top 16 bytes ALWAYS
contained the time/date info.

So check your specs sheets BEFORE you buy one of these beasts.

-- 
--------------------------------------------------------------------------------
Wudda yeah mean, I'm gonna get in trouble?  I AM in trouble!

...tektronix!reed!percival!gary 

gardner@kodak.UUCP (dick gardner) (07/27/87)

In article <WANCHO.12320568509.BABYL@SIMTEL20.ARPA> WANCHO@SIMTEL20.ARPA ("Frank J. Wancho") writes:
>
>     There are now at least three sources for "no-slot" clocks, the
>cheapest of which is from Radio Shack on sale for $39.95.  The problem
>is that the software that comes with it is an executable for MSDOS.
>There is no source and no technical documentation on how to program it
>under some other environment, such as CP/M.

I'm not familiar with the RS version of this device, but I have used the
Dallas Semiconductor (DS1200) with success.  I had it working with an 8051
as the CPU, so a Z-80 shouldn't be any trouble. I can supply a listing of
my code if that is helpful.  Also there was an article in Byte by Steve
Ciarcia using the 8052-Basic chip.  Contact me via email for further info.

=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#
   Dick Gardner -- Eastman Kodak Co.  Rochester, New York  14650
                   Phone: (716) 477-1002
                   UUCP: {allegra,seismo}!rochester!kodak!gardner
   "Research is what I do when I don't know what I'm doing" (thanks, Wherner)

=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#
  

TReed.ES@XEROX.COM (07/28/87)

Frank:

What specific Radio Shack store has the No-slot clock.  The two stores
in my local area (Corona California [Riverside County]) do not have
them.  They give me a blank look when I ask about them.

Their responce is, "if it's in our catalog we can get it for you, if
it's not, we can't".

I even suggested they call their head office to ask about them and they
came back again with the above responce about the catalog.

Where is Radio Shacks head office?  Perhaps I could call them myself.

What are some other sources?

How is that the No-slot clock address does not interfear with a ROM at
possibly the same address?

--Terry Reed

toma@tekgvs.TEK.COM (Tom Almy) (07/28/87)

In article <870727-152631-1053@Xerox> TReed.ES@XEROX.COM writes:
>
>What specific Radio Shack store has the No-slot clock.  [...]
>They give me a blank look when I ask about them.
>
>Their responce is, "if it's in our catalog we can get it for you, if
>it's not, we can't".
>


It was in the sales flyer before the latest one.  Hasn't appeared in
the latest catalog yet.  My local store (Tualatin Oregon) knew about them,
but the don't stock it.

Tom Almy
toma@tekgvs.tek.com

sorgatz@ttidca.TTI.COM ( Avatar) (07/30/87)

 Many of you out there have expressed an interest in the Dallas Semi DS1216e
this chip can be installed under _any_ 24 or 28 pin device. I have written a
driver and utility to work with these modules, and it works with our V7/4.1
since it is written as an 'ioctl' character-special, device-driver. Now,
all I need is my employer's approval to post the code to .sources and y'all
can have a copy for free! It's written in C, it assumes 16bit ints and not
much else. We use the MC68020 almost exclusivly, and the device works fine
beneath the 27512 chip we use for booting. If my boss approves the posting,
I'll do it, otherwise you could mail me your requests for help and I'll try
to help you with this. The module is straightforward ONCE you understand the
screwy bit-serial interface method.
-- 
-Avatar-> (aka: Erik K. Sorgatz) KB6LUY *************************************
Citicorp(+)TTI                          *----------> panic trap; type = N+1 *
3100 Ocean Park Blvd.   (213) 450-9111, ext. 2973 ***************************
Santa Monica, CA  90405 {csun,philabs,randvax,trwrb}!ttidca!ttidcb!sorgatz **

adp@moscom.UUCP (Alan Percy) (07/30/87)

Try taking a look at the Ztime-I from Kenmore Computer Tech.
It goes under the Z80 socket and maps into I/O space.  Comes
with all the source you could ever need.  It has the added
advantage of being supported by lots of application programs
like DateStamper, Presto!....

They can be reached at:
     KCT
     PO Box 635
     Kenmore NY  14217
     (716) 877-0617


Neat suff......I love mine!!!!
Alan

mlinar@vikram.usc.edu (Mitch Mlinar) (08/09/87)

In article <1027@moscom.UUCP> adp@moscom.UUCP (Alan Percy) writes:
>Try taking a look at the Ztime-I from Kenmore Computer Tech.
>It goes under the Z80 socket and maps into I/O space.  Comes
>with all the source you could ever need.  It has the added
>advantage of being supported by lots of application programs
>like DateStamper, Presto!....
>
>They can be reached at:
>     KCT
>     PO Box 635
>     Kenmore NY  14217
>     (716) 877-0617
>
>
>Neat suff......I love mine!!!!
>Alan

This is the kind of reply that irks me so much that I have to say something:

Alan, there is NOTHING wrong with your comment EXCEPT that you should admit
that you are the president of KCT which is done as a side business.  This
net is NOT for free advertising.  To soften it a little, I would not have
minded the same posting at all if you had just appended:

          President, KCT  (or whatever your title is now)

Your "neat stuff ..." comment takes on a different meaning when this is
taken into consideration: PR bs.  I don't mind "plugs" as long as it is
admitted (Jay Sage did not hide the fact he is behind the new
ZCPR stuff and wants to make money from it); honesty is the best policy.

To the net - about the Kenmore Tech Clock:

It is a very good clock, but also the most expensive one on the market at
$100 assembled.  It takes 16 continuous I/O ports and mine required calibration
using capacitors since it lost 3 minutes a week.  The board is 3x3 (or around
there in size) and stands 5/8 in high, so make sure you have room for it.
My clock is still running (on its second battery); I also have a no-slot
running (in another machine) which is easier to install and cheaper, 
although to be fair, the driver support in the KCT stuff was very good
compared to the no-slot lack of info.

JCrow@HIS-PHOENIX-MULTICS.ARPA (Jerry Crow) (08/25/87)

RE:  ZTIME-1 Clock

My  impression  was  that  the  term "no slot" clocks was used primarily to
refer to clocks for the IBM PC and compatibles; the ZTIME-1 and friends are
for  Z-80  machines.  Still, if the "no slot" clocks use ROM/RAM sockets as
an installation/interface mechanism, they could be used on CP/M machines.

I have installed and used both the ZTIME-1 and the Advent clock.  These two
clocks  are, to the best of my knowledge, the most popular clocks available
for  CP/M  machines.   The  Legacy  clock also enjoys a following; I am not
familiar with it.


                               Observations

Disclaimers:  impressions  noted below are based upon events which occurred
two  years  ago;  the  products  may  have  changed  since then.  I have no
connection whatsoever with either of the companies mentioned.


Hardware

Both  the  ZTIME-1  and  the Advent use the National Semiconductor MM58167A
real time clock chip.  This is the same clock that is in the AT and most AT
clones.  It is an excellent, general purpose clock chip.

Both  clock  products  are  supplied  as a piggyback for the Z-80 CPU chip;
i.e.,  to  install the clock boards one removes the Z-80 chip, installs the
Z-80  in  a  socket  on  the clock board, and then installs the clock board
itself  into  the  Z-80  socket.   Both  boards  feature battery backup, of
course.   The 58167 is very parsimonious WRT power consumption.  There is a
pin  on  the chip which, when it goes low (e.g., when power is removed from
the  board),  puts  the  chip  into  a  "power  off" mode in which all chip
functions  save  those  required  for  register  maintenance and update are
halted.  The spec sheet claims the power consumption in this mode is in the
microwatt range.

The  ZTIME-1  board is not as fancy or "professional" looking as the Advent
board  (the  latter  has  silk  screened legends, machine generated traces,
etc.;  it  just looks like a high quality board), but it functions well.  I
installed  the  ZTIME-1  in  a Morrow MD3.  Other than a tight physical fit
(the  CPU  was near the rear of the cabinet and I had to trim one corner of
the  ZTIME-1  board  to  get  it to fit) I encountered no problems with the
board.   I  had to replace the Z-80 because it was soldered in (no socket),
but  that's  another story; see below.  The ZTIME-1 worked the first time I
tested  it.   I used it with the DateStamper (DS) software from Plu-Perfect
Systems.  As noted in an earlier message, the DS package contains a driver
for  this clock.  I did, however, have to cut a trace and jumper another to
change the I/O address base for the clock because of the I/O map within the
Morrow.  More on this below.

I  installed the Advent clock in my Kaypro 10.  It, too, went in easily and
worked the first time.  No physical space problems here.  No jumpers either
because of the manner in which the clock is addressed.  More on this below.
I  migrated  the  DateStamper  software  to  my Kaypro when I abandoned the
Morrow; the DS package contains a driver for this clock too.


Things to think about:

First,  check  your system motherboard to see if your CPU chip is socketed.
Most  are,  but  if  it  isn't  you'll  have  to install a socket to effect
installation  of  either  of these clock boards.  Not overly difficult, but
tedious.   And,  you'll  need  to  get another Z-80 chip.  (Believe me, you
don't  want  to  try to remove the one that's solder mounted in the hope of
salvaging it -- cut the pins, throw the chip away, and carefully remove the
leads  with  a  desoldering tool.  Install a socket on the motherboard; get
another  Z-80  and  install  it  on  the clock board.  Some may debate this
advice,  but in my opinion the price of a Z-80 isn't high enough to justify
attempted removal and reuse of a soldered chip.)

Next,  think about I/O port mapping, particularly if you are looking at the
ZTIME-1.   The  58167 is designed with address line input to control access
to its internal registers.  This design eliminates the need for a "control"
register  which,  on some chips, is used to select an internal register for
read/write.   For  example,  the  6845  CRT  controller  has  30+  internal
registers.   To  access these, one must first write (OUT) a numerical value
into an address register to select one of the other registers, then execute
the  IN/OUT  command  to read/write the desired register.  The 58167 design
eliminates  the  need for this extra level of indirection.  The ZTIME-1 and
the  Advent,  however,  have very different mechanisms for interfacing with
these clock chip address lines.

The  ZTIME-1 uses its glue chips to map the address lines on the clock chip
directly  into  the  Z-80  I/O  port address space.  This presents a fairly
straightforward  interface to the programmer -- one I/O port for each clock
chip  register -- but it requires *32* I/O ports.  True, that's only 12% of
the available space, but the kicker is that the ports must be *contiguous*.
The  ZTIME-1, thus, requires a port base within your system that allows for
32  contiguous  open  port  addresses.   As  shipped, the board defaults to
E0-FF.   This  conflicted  with  the Morrow port address space (even though
Kenmore's  documentation claimed the default configuration would work on an
MD3;  maybe  they  were lucky when they tested it), and I had to modify the
board  to  change  the  port  base.   The  change required solder and trace
cutting;  no  dip  switches  here.   Don't  misunderstand  --  the board is
designed to be altered in this way and the documentation is clear, but such
alteration does require trace cutting and soldering.  I changed the base to
A0.

The  Advent board is somewhat more sophisticated.  It is designed primarily
for  Kaypros,  though  it  should  work  in  any Z-80 machine which doesn't
utilize  the  port  address  space  to which the board is sensitive (80H to
90H).   (Advent  may  offer  a generic, non-Kaypro specific version of this
board;  I  don't  know.)  The  interface  on  this  board is based upon the
operation  of the I/O instructions in the Z-80.  The "standard", 8080 like,
direct  I/O  instruction of the Z-80 (IN/OUT <port address>) functions like
its  counterpart  in  the 8080; the port address is placed on the low order
address  lines  and  the  contents  of the A register is placed on the data
lines  and  the high order address lines.  The Z-80, however, is capable of
indirect  I/O  instructions which do not exist in the 8080.  These indirect
instructions  permit  IN/OUT instructions to move data from registers other
than  the  A  and  permit  register based selection of an I/O port address.
When  an  indirect  I/O  instruction  is  executed,  the contents of the *B
register*  (as opposed to the A) is placed on the high order address lines.
The Advent board utilizes this fact to map the clock chip into a single I/O
port.   The  lower  5  high  order address lines from the Z-80 (A8-A12) are
mapped  to the 5 address lines on the clock chip.  Thus, the content of the
B  register is used to select a clock register.  Somewhat more complex from
a programming standpoint, but very conserving of I/O port space.  There is,
however,  no  provision for altering the single port address (90H) which is
used  to control the clock.  By design, neither this address nor the others
to  which the board reacts (80H-90H) conflict with Kaypro architecture.  If
this  board  is  being  considered  for a Z-80 machine other than a Kaypro,
however, the port map situation would have to be investigated.


Software

Both  boards  come  with a disk of support software, including a program to
set/read  the  clock and various examples of clock interface programs.  The
Kenmore  package includes clock interface software for MS BASIC 80, generic
C  and  Turbo  Pascal.  The Advent package includes all of the above plus a
dBase II routine.

The  Advent  software  is  more sophisticated than the Kenmore, but all the
software  functioned adequately.  I have been using the dBase II routine as
part  of my dBase startup file to set the date() variable within dBase from
the  clock.   This  is  very  handy,  as  any  reader who has used dBase II
extensively will appreciate.


Miscellaneous

One  interesting  vagary  of  this  chip:  the  chip  does  not have a year
register.  So, once a year, you will have to manually update the content of
one  of  latch  registers  to  reflect the change of year.  The DateStamper
software uses the hundredths/tenths of second latch to hold the year.  This
alteration takes about 30 seconds with DDT.


Summary

Either of these clock boards will provide a useful and convenient real time
clock  capability  for  your  Z-80  CP/M  machine.   The Advent is somewhat
flashier and the support software is a bit more sophisticated; its price is
also, predictably, higher.  The Kenmore is more economical, particularly if
it is purchased in kit form (I did not buy the kit).

I  no  longer  have  the Morrow, but still use the Kaypro occasionally.  My
primary  machine is now an AT clone.  I strongly recommend the installation
of  a  real time clock in your machine if you don't have one; they are very
useful and convenient.

The  last  magazine  advertisements  I saw had both of these clock products
priced  under  $100.   Haven't  seen  a Kenmore ad lately, but Advent is in
nearly every issue of Micro Cornucopia and Profiles.

Enjoy  your  real  time clock.  Once you use a system which has one, you'll
wonder how you ever got along without it.


-- Jerry Crow

adp@moscom.UUCP (Alan Percy) (08/27/87)

If any of you ZTIME-I or other clock owners are interested, I could 
post the collection of public domain software from our Application
Users Disk.  Because many of the clocks use the MM58167, it should
be useful for others.

I will have to somehow get it all packaged together.
All of it includes source code, but is that what all you folks
want?  I don't have 'arc' for my CP/M machine, so if you folks
would like the binaries 'arced', someone would have to send me
a uuencoded arc (not 'arced' please).  Then, where should I post it?

Additionally, if you people have some software that never made it
to the A.U.G. Disk, send it to me soon and I will include it.
Please follow the instructions in the ZTIME-I manual for AUG
submissions, or mail them to me here (see signature).

Lastly, we are still here...but at a new address and phone number.
(My office manager and I had a parting of ways)

      KCT
      30 Suncrest Dr.
      Rochester, NY   14609
      (716) 654-7356 Evenings

It seems that the Computer Journal has taken summer vacation????
That's where we have been advertising lately.  Much cheaper, thus
we can pass the savings along to you....  You should see what 
MicroCornucopia and Computer Shopper did to their ad rates......WOW!
I would get a nose bleed when the bills came in!!!

Anyway I guess I'll be reading this news group and checking my mail
for feedback on the clock software.

 -----------> Owner of Kenmore Computer Technologies <------------
Alan Percy..........................{rutgers,ames,cmcl2}!rochester!moscom!adp

-- 
Alan Percy..........................{rutgers,ames,cmcl2}!rochester!moscom!adp
If you think I'll ever admit to anything, you're crazier than I am!!!!