How to use line 25 ( Function Key line)

Door rolandve

Champion (349)

afbeelding van rolandve

04-06-2020, 23:11

I tried to write something on line 25. For this I used a routine that writes directly to VRAM. However: I can't get anything on line 25. Is there anyone that has a clue how I can use line 25, while not working in screen 2 or higher?

Thanks!

Aangemeld of registreer om reacties te plaatsen

Van kanima

Master (194)

afbeelding van kanima

05-06-2020, 00:11

In screen 0 and 1 there are only 24 lines, number 1 through 24 in the LOCATE command. To use the function key line, you need to turn them off using the KEY OFF command. Note that if you specify line 25 or higher in the LOCATE command it'll just end up on line 24.

Van Grauw

Ascended (10721)

afbeelding van Grauw

05-06-2020, 00:21

The function key line is line 23 (counting from 0).

On MSX2 and up, use vdp(10)=vdp(10) or 128 to switch the screen from 192 to 212 lines, a.k.a. 26.5 characters high.

Van rolandve

Champion (349)

afbeelding van rolandve

05-06-2020, 09:33

Thanks!

Van thegeps

Paragon (1177)

afbeelding van thegeps

07-06-2020, 19:15

Well, you CAN write on line higher than 23 by extending the vram affected by commands like locate, print and cls... you can extend the numbers of line you'll be able to print POKEing the value you need at CRTCNT (address &hF3B1). But you actually can't see those lines if you don't scroll them...
Try this little listing. After executed you won't see the cursor (because it will be at line 56!! But if you repeatedly press ENTER you'll scroll trough VRAM and will see the printed lines! Then you can turn back to view the cursor by pressig curs up...

10 screen1:width32:keyoff:cls:poke&hf3b1,60
20 fork=0to55
30 locate0,k:printk;"A"
40 next