From: jerry+a2@jpen.ca   
      
   "duhas...@gmail.com" writes:   
      
   > On Monday, May 9, 2022 at 6:40:09 PM UTC-4, Brian Patrie wrote:   
   >> Kent Dickey wrote:   
   >> > In article ,   
   >> > qkumba wrote:   
   >> >> HLINE and VLINE don't scroll.   
   >> >   
   >> > To give a little more detail, try the following:   
   >> >   
   >> > 10 FOR I = 0 TO 23   
   >> > 20 COLOR= 3   
   >> > 30 HLIN 0,39 AT I * 2   
   >> > 40 COLOR= 10   
   >> > 50 HLIN 0,39 AT I * 2 + 1   
   >> > 60 NEXT   
   >> > 70 FOR I = 1 TO 10000000   
   >> > 80 NEXT   
   >> >   
   >> > The HLIN (and VLIN and PLOT) commands work on the text screen,   
   >> > if you don't give GR.   
   >> Better yet, write directly to the colour mask byte:   
   >>   
   >> 10 FOR I = 0 TO 47   
   >> 20 POKE 48,163   
   >> 30 HLIN 0,39 AT I   
   >> 40 NEXT   
   >> 90 ON PEEK(49152) < 128 GOTO 90 : POKE 49168,.   
   >>   
   >> (That last line just waits for a key, and clears it.)   
   >>   
   >> Or (on a machine with MouseText):   
   >>   
   >> 10 PRINT CHR$(17); : POKE 49167,. : TEXT   
   >> 21 FOR X = 0 TO 38 STEP 2   
   >> 22 POKE 48,86 : VLIN 0,47 AT X   
   >> 23 POKE 48,87 : VLIN 0,47 AT X + 1   
   >> 24 NEXT   
   >> 90 ON PEEK(49152) < 128 GOTO 90 : POKE 49168,.   
   >>   
   >> (Line 10 ensures 40 columns, alt charset, text mode.)   
   >   
   > Ok I tried the BASIC versions and they work like I want, but I tried to   
   right a little   
   > assembly program to test it and I can't get it to work.   
   >   
   >   
   > *300L   
   > 0300- A9 A3 LDA #$A3 ;Load "#"   
   > 0302- 85 30 STA $30 ;Stick in color   
   > 0304- A9 27 LDA #$27 ;Load rightmost   
   > 0306- 85 2C STA $2C ;Stick in 2C   
   > 0308- A9 09 LDA #$09 ;Load vertical coord   
   > 030A- A0 00 LDY #$00 ;load horizontal coord   
   > 030C- 20 19 F8 JSR $F819 ; call HLIN   
   >   
   > Should have a line of # through the screen and I don;t....   
   >   
   > 0   
   > *   
      
   You still have to draw two HLINs because with one you're only setting   
   one half of the byte (the top or the bottom, depending on your   
   Y-coordinate).   
      
      
   --   
   --   
   Jerry jerry+a2 at jpen.ca   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|