Using the screen link table for ZP addresses

Basic and Machine Language

Moderator: Moderators

Post Reply
IsaacKuo
Vic 20 Hobbyist
Posts: 147
Joined: Tue Aug 04, 2009 5:45 am

Post by IsaacKuo »

What sort of "bad stuff" might happen if you use locations 217-240 -- the screen line link table? Am I correct in assuming they will neither be accessed or overwritten if you avoid all of the following?

1) Print RETURN, <shift>-RETURN, INSERT, CLR HOME
2) Print something into the right column of the screen
3) Print DOWN from bottom row

If this is correct, then the screen line link table can be a huge expanse of zero page suitable for storing lots of variables and/or a decent table. You could use and then fill it with 158 after you're done.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

There is no problems if you "Poke" chars on the screen memory but you cannot use standard print kernel routine.
Mega-Cart: the cartridge you plug in once and for all.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

As Nicola said, KERNAL I/O to screen via CHROUT and CHRIN/BASIN should be avoided in that case.
IsaacKuo wrote:You could use and then fill it with 158 after you're done.
The screen link table contains the high byte of the screen line, +0 if it is linked, +128 if it is not linked. Obviously the default values are going to change when screen memory is moved, for example when memory expansions of +8K or more are in use.
Post Reply