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

Re: IIgs peculiarities



vladitx <vladitx@nucleusys.com> wrote:

> On Feb 27, 1:59 am, demp...@actrix.gen.nz (David Empson) wrote:
> 
> > I'd have to do more tests and don't have time in the next few days.
> 
> Here's a simple one I did:
> 
> 10 PRINT PEEK (49206)
> 20 X = X + 1 : IF X > 100 THEN PRINT "-----" : X = 0
> 30 GOTO 10
> 
> When run, it should display "132" for fast mode and "4" for slow
> (content of $C036). Periodically it will print dashes, which help
> visually estimate running speed too.
> 
> Now the fun part - while running it, I tried changing speed through
> Control Panel. Randomly the change may take or not take effect. So, it
> turns out that WYSINWYG. :-)
> The only way I found to be sure about changed speed is by stopping the
> scroll with CTRL+S and then accessing the Control Panel setting.
> 
> Which all leads me to think something in input/output routines is
> massively overwriting the speed register and it doesn't do it
> gracefully, clashing with other speed change candidates (including
> Control Panel).

Definitely. Both the input and output routines temporarily override the
speed settings, and restore the prior setting on return, so if you
change the speed via the Control Panel while one of those routines is
executing, your setting change will be overridden on exit from the
Control Panel.

Try doing a long delay without printing anything (using an Applesoft
FOR/NEXT loop), and only change speeds during that delay. You should get
100% consistent results.

Note that you can't use the monitor WAIT routine for this - it also
forces the speed to be a particular value while delaying and restores
the previous setting on exit.

> > > Any faintest idea why speeding while waiting for keypress? It's beyond
> > > me, totally.
> >
> > The only reasons I can think of would relate to the speed of the
> > blinking cursor and the responsiveness to editing keypresses, e.g. with
> > fast keyboard auto-repeat settings. They probably wanted to be in a
> > fixed mode so the timing would be consistent, and it makes more sense to
> > force fast mode so that everything will go a little quicker.
> 
> Speed doesn't change cursor blinking speed, same in Applesoft and
> Monitor.

That's because the speed is always set to fast while waiting for a
keypress, no matter what the Control Panel setting says.

> > > Umm, I think the Mega II signals to FPI (and then reaches CPU possibly
> > > by means of RDY) that there is a DMA and FPI allows or disallows
> > > depending on the bank register.
> > > But I'm shooting in the dark.
> >
> > I'd need to dig out my IIgs hardware reference and have a closer look at
> > the schematics.
> 
> Can you send me (good print quality) scanned 03 schematics someday?

Not easily. The fold out sheets are too big to scan in a single piece,
so some editing would be required, and I'm certaintly not willing to cut
up my manual, which might be necessary to scan the bits closest to the
spine.

In any case, I'd have to find it first. It is buried somewhere in a lot
of boxes.

-- 
David Empson
dempson@actrix.gen.nz