[A83] Re: 83+ Questions


[Prev][Next][Index][Thread]

[A83] Re: 83+ Questions




Hmm...I had info in my TCPA directory, but that's currently password
protected.  Anyhow, yes the SE has a "real" crystal, the same sort used in
the HW2 TI-89 and TI-92 Plus (32.768 khz).  The xtal is used to drive some
programmable timers.  I'll paste the information I've found out about it
below:

There seem to be some programmable timers on the 83P SE.  In fact,
there seem to be three of them.  The timers themselves are eight bit,
and with their setup ports, they run 3 ports each: from 30h to 38h.
The first port in each set of three is the speed/timer select port.
It determines which clock to use for the timer, and the frequency of
the timer.
The second port has only two bits for input.  If bit 0 is reset, the
timer will stop timing when it reaches zero (the timers are
count-down).  If bit 0 is set, it will just go on forever.  If bit 1 is
set, the calculator will crash when the counter expires (what this is
actually doing, I have no clue).  If you've got it running on forever,
bit 2 will be set when the timer underflows.  You can check this flag
to see when the timer has gone through 256 cycles, and reset it by
outputting a value of 1 to the port again.
The third port is the actual timer.  On input, it just returns the
current value of the timer.  On output, it sets the value for the.
If you're just going on forever, the value doesn't matter much, but if
you want it to count down to zero and then stop (bit 0 of the second
port reset), you'll want to output the value to start from.  The
counter will not start automatically once you set the first two ports.
You must output a number to the third port for the timer to start.


On the speed port, 30h, 33h, or 36h, the top two bits determine what
clock to use for the timer.  00 = none, 01 = xtal, 10 = CPU clock
11 = ???? A combination of both xtal and CPU clock?
When using CPU clock, it'll be either 6 MHZ or 15 MHZ, depending on
what speed the CPU is currently running at.

(Note: The particular program I used to test this was not very accurate
at very low frequencies, so the 10 HZ and 8 HZ are very rough.
Actually, everything is very rough, but those, more so.)

xtal freqs - There are three significant bits, bits 3/4/5 don't seem
to do anything.
40h - 10882.56 HZ
41h - 990.72 HZ
42h - 97.28 HZ
43h - 10 HZ
44h - 32706.56 HZ (natural xtal frequency, close to 32.768 khz)
45h - 2042.88 HZ (close to 2048 HZ)
46h - 125.44 HZ (close to 128 HZ)
47h - 8 HZ

So....It seems to go 10000 -> 1000 -> 100 -> 10.  Then 2^15 -> 2^11 ->
2^7 -> 2^3.  In practice it seems that everything seems to be a small
bit slower than it should be "ideally", and I'm going to take the fact
that my 40h frequency is actually above 10K as a fluke, probably caused
by human error.


CPU clock freqs - These are a factor (of a power of two) of the main
CPU clock.
80h      - CPU
81h      - CPU/2
82h/83h  - CPU/4
84h-87h  - CPU/8
88h-8Fh  - CPU/16
90h-9Fh  - CPU/32
A0h-BFh  - CPU/64

As for the accuracy, after employing a couple of adjustments, Michael
Vincent and myself were able to create a stop watch that's accurate (to
within a second or so over 24 hours).  Oh, and since writing up that
document I've found that the timers will generate interrupts, and that you
can check the status as the high three bits of port 4.

-Dan Englender

----- Original Message -----
From: "David Phillips" <david@acz.org>
To: <assembly-83@lists.ticalc.org>
Sent: Tuesday, January 15, 2002 1:49 AM
Subject: [A83] Re: 83+ Questions


>
> Pardon my ignorance, but could you explain this further?  Or is it in the
> developer's guide?  I haven't read it since the 83+ first came out.  I
> believe my printed version is 0.1, if that tells you anything :)
>
> So the SE has a real "hard" clock, that isn't dependant on the battery
> level?
>
> > On the SE, it also does a quasi CPU speed test, testing the CPU speed
> > against the crystal timers.  This is the number that you see displayed
at
> > the beginning of the self test on the SE (the number of CPU clocks it
> takes
> > until the interrupt occurs.  I forget what frequency it sets the
crystals
> > to).
>
>
>
>





Follow-Ups: References: