Login
Back to forumReply to this topicGo to last reply

Posted By

gerliczer
on 2012-08-18
04:29:39
 Cursor blinking in plain character mode

Hi everyone,

Have any of you ever devised a technique to force the TED into a known blinking state? What I mean is that after executing some procedure the cursor will be surely either on or off. Not that I want to do anything that requires this. I'm interested in it on purely a technical level.

Posted By

MIK
on 2012-08-18
04:40:08
 Re: Cursor blinking in plain character mode

Some, (not all games) that use Novaload leave a blinking cursor flashing in the top left hand corner once loaded which is nothing to do with the game but the loader.

If you could put a stop to this before loading the game it may come in useful? Or as long as a game does not require cursor on/off flashing.

As examples: Exorcist, Tazz

Posted By

crock
on 2012-08-18
11:40:59
 Re: Cursor blinking in plain character mode

I don't think so. The hardware cursor is always blinking at a rate of approx 2hz, but it's only visible when when it's location is set from 0-999. I'm guessing the games that MIK mentions don't force the HW cursor out of sight when they initialise, hence it stays visible.

The TED register at $FF1F has a 4 bit counter which increments once a frame and the cursor changes state when this counter overflows. You can mess with the blink rate of the cursor by manipulating this register but I'm not aware of any way of knowing it's current state.

rob

Posted By

gerliczer
on 2012-08-18
11:51:04
 Re: Cursor blinking in plain character mode

Hi crock,

These are the things that I knew, too. What I really would like to know if there is any kind of technique to _force_ the TED into a state where it is known if the blinking is in the on or off phase. Maybe there's some sequence of turning on and off the test bit or the TED stop bit and such that would surely set the blinking into e.g. off phase.

Posted By

TLC
on 2012-08-18
12:42:41
 Re: Cursor blinking in plain character mode

The cursor counter is in the $ff1f register, AFAIR you can set the cursor's visibility by fiddling with that one. (This needs to be done in an irq routine, though, because the register is (otherwise) increased once each frames).

MIK, what you're describing is the Kernal's way of hiding the cursor (moving it beyond the screen area's limits), and some less than clever programs habit of initializing the I/O registers on the run, thus also zeroing the cursors position (which would then no longer be invisible).

Posted By

Csabo
on 2012-08-18
12:54:10
 Re: Cursor blinking in plain character mode

That works, putting 0 into bits 3-6 of $FF1F in each frame makes the cursor go away. (But it does have to be done each frame.)

Normally we just put $FF into $FF0C/0D at the beginning of the program which takes care of it once and for all, but we have a routine where we opened the border, and oddly the TED then seems to "find" this position and we have a cursor (seems to find every value).

Well, for a demo/game it would probably be either graphics or at least multicolor mode, both of which means no cursor anyway.

Edit: on that note, could someone check and see on the real iron if this is stable and cursorless? http://www.filedropper.com/border_1

Posted By

Gaia
on 2012-08-18
15:38:30
 Re: Cursor blinking in plain character mode

An FF1F=0 a frame keeps the cursor away... :E

sorry!! happy



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024