Re: A86: 5MHz


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

Re: A86: 5MHz




My guess is that the answer to your question, and the solution to Kirk's
"problem", would be that the calc uses the chip that generates interrupts to
do the screen refreshes.  Even if interrupts are disabled, the chip still
runs at the same frequency, which is why the screen still works.  This is
supported by the fact that when you change the interrupt rate, the screen
gets distorted.  It probably uses DMA to transfer the data, which is why the
screen must start on an 256 byte boundary.  Since the memory is not dual
port, meaning only one thing can access it at a time, the CPU is paused
during the DMA transfer.

> Question I've been meaning to ask...
> Does the screen hardware pull data directly out of the video memory, or
> does the interrupt routine include code to dump the video memory to the
> screen every iteration?  Although, now that I think about it, that is a
> dumb question cause you can turn ints off and the screen works.  oh well
>
> Chris Phelps wrote:
> >
> > Probably has something to do with the screen refresh...tho i would think
that
> > would be other parts of the hardware that dont tax the cpu at all...
guess i'll
> > just have to start hacking on my 85 again and find out :o)
> > Later,
> > Chicane
> > Aaron Curtis wrote:
> >
> > > I found something sort of interesting about this...  if you turn off
the
> > > lcd while running the routine, it takes a good bit less time (80 vs.
90
> > > seconds for me).
> > >
> > > Kirk Meyer wrote:
> > > >
> > > > Well, after performing a few tests. The TI-86 does not appear to run
at
> > > > 6Mhz. With totally new batteries, the CPU was clocked at about
4.8MHz. (With
> > > > older batteries it is more like 4MHz.) This was tested with a
routine that
> > > > took 360,000,000 t-states. This means one of two things.
> > > >
> > > > [A] TI is lying. I doubt this, since I don't think they make 5Mhz
> > > > processors. (maybe they do?) Also I doubt why TI would lie anyway.
> > > >
> > > > [B] Something is eating up that much processor time (this is with
interrupts
> > > > disabled by the way). Try the code for yourself, it's at the
bottom...
>
>



Follow-Ups: References: