Z88 Developers' Notes
Contents   Contents of System Calls

OS_Sci, alter screen information

RST 20H, DEFW $D406

IN:

     A = reason code
          SC_LR0 ($01)   LORES0 (512 bytes granularity, 13 bits width)
          SC_LR1 ($02)   LORES1 (4K granularity, 10 bits width)
          SC_HR0 ($03)   HIRES0 (8K granularity, 9 bits width)
          SC_HR1 ($04)   HIRES1 (2K granularity, 11 bits width)
          SC_SBR ($05)   screen base (2K granularity, 11 bits width)
     
     B = 0, get pointer address (address is not set)
     B <> 0, set pointer address with BHL = new pointer address
     and HL is truncated according to screen granularity
OUT: 
     Fc = 0
     BHL = old pointer address

Registers changed after return:

     A..CDE../IXIY same
     .FB...HL/.... different

Notes:

These hardware registers should not be altered unless the programmer knows what he is doing. Please refer to the "Hardware section".
 

Bugs: