Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Tool for testing SCREEN viewport (Lububtu's bug)
#1
Hi
here I post a snippet to test output of SCREEN keyword, used for setting video mode.
It gets keyboard/mouse input and let you test different SCREEN legacy mode and the others modes (by _NEWIMAGE).

it works in Lubuntu and within this last I recognize some issues about viewport of the window of the application... the more evident is when you create a 32bit window. 
I let print for the first ten rows the cohordinates of MouseX , MouseY/_fontHeight, and number of row using PRINT keyword put in position by LOCATE.
Moreover I let draw the box of the edge of the window and the 2 major diagonales of the window that meet themselves in the centre of the viewport of the window.

Here 2 screenshot for who don't run Linux Lubuntu.
[Image: image-2025-11-16-182516425.png]


[Image: image-2025-11-16-182637626.png]

Please make a try on other OSes so we can know if it is an isolated issue or it regards other Linux versions or/and MacOs.
I have never had a similar issue under Windows.
Here the code:
(be patient for mouse input... I am not able to slow the mouse input without affect the application working.)

Code: (Select All)
_Title "Lubuntu window's cohordinates bug"

''Screen      Text          Graphics          Colors      Video    Text      Default
'' Mode  Rows  Columns  Width  Height  Attrib.  BPP  Pages    Block    QB64 Font

''  0  25/43/50  80/40    No graphics    16/16 DAC  4    0-7    -----    _FONT 16
''  1      25      40      320    200    16/4 BG    4    none    8 X 8    _FONT 8
''  2      25      80      640    200      2/mono    1    none    8 X 8    _FONT 8
''  .................................................................................
''  7      25      40      320    200    16/16 DAC  4    0-7    8 X 8    _FONT 8
''  8      25      80      640    200    16/16      4    0-3    8 X 8    _FONT 8
''  9      25      80      640    350    16/64 DAC  4    0-1    8 X 14  _FONT 14
'' 10      25      80      640    350    4/2 GScale 2    none    8 X 14  _FONT 14
'' 11    30/60    80      640    480      2/mono    1    none    8 X 16  _FONT 16
'' 12    30/60    80      640    480    16/262K    4    none    8 X 16  _FONT 16
'' 13      25      40      320    200    256/65K    8    none    8 X 8    _FONT 8
'' _NEWIMAGE width. height, 32
Randomize Timer
Dim ScrM As Integer, ScrMod As String, FeaT As String, Action As Integer
Dim Shared As Integer M1, M2, M3
ScrM = 0: ScrMod = "0": FeaT = "80/40 width  * 25/43/50 height": Action = 0
M1 = 0: M2 = 0: M3 = 0
Do While Action <> 99
    WaitStopMouseInput
    Mainscreen
    Mainloop ScrM, ScrMod, FeaT, Action
    WaitStopMouseInput
    If Action = 3 Then
        If ScrM = 10 Then
            Screen _NewImage(1000, 800, 32)
        Else
            Screen Val(ScrMod)
        End If
        test ScrMod, FeaT
    End If
Loop
End

Sub test (Sm As String, F As String)
    Cls
    r = 1

    Do
        M1 = 0: M2 = 0: M3 = 0
        WaitStopMouseInput
        mx = _MouseX
        my = _MouseY
        For row = 1 To 10
            Select Case Sm
                Case "32bit"
                    Color _RGB32(Rnd * 255, Rnd * 255, Rnd * 255)
                Case "2", "11"
                    Color 1
                Case "10"
                    Color Int(Rnd * 3) + 1
                Case Else
                    Color row
            End Select
            If Sm = "0" Then r = 1 Else r = _FontHeight
            Locate row, 1
            Print mx; "  "; Int(my / r); "  "; row
        Next row
        Locate 22
        Print "Screen mode  " + Sm + "  " + F
        Print "Press RIGHT mouse button or Escape key to exit";

        Select Case Sm
            Case "0"
                ' do not do graphic lines
            Case Else
                ' it draws 2 lines to show vertexes and center of the screen, more a box on the edge of screen
                Line (1, 1)-(_Width(0), _Height(0))
                Line (_Width(0), 1)-(1, _Height(0))
                Line (1, 1)-(_Width(0) - 1, _Height(0) - 1), , B
        End Select
        _Limit 20
    Loop Until M2 = -1 Or InKey$ = Chr$(27)
    WaitStopMouseInput
    Screen 0
    Cls
End Sub

Sub WaitStopMouseInput
    Do While _MouseInput
        M1 = _MouseButton(1): M2 = _MouseButton(2): M3 = _MouseButton(3)
    Loop ' loop to clean mouse input buffer
End Sub

Sub Mainscreen
    Screen 0
    Print "Tool for testing the setting of screen viewport on the window application"
    Locate 3
    Color 5
    Print "press U for Previous Screen Mode and D for Following Screen Mode"
    Print " Enter for testing selected Screen mode"
    Color 4
    Print "press Left button of mouse for Previous Screen Mode and Right button of "
    Print " mouse for following Screen Mode"
    Print " Middle button of mouse for testing selected Screen Mode"
    Color 14
    Print " press Escape key or together Left and Right mouse buttons for quitting"
    Color 1
    Locate 13
    Print "SCREEN " + Space$(15) + " Features"

End Sub

Sub Mainloop (S As Integer, Sm As String, F As String, A As Integer)
    Do

        Locate 14, 1
        Print Space$(80);
        Locate 14, 1
        Print "  " + Sm + Space$(15 - (Len(Sm))) + F
        While TakeInput(A) = 0
            _Limit 20
        Wend
        Select Case A
            Case 1
                'up action
                S = S + 1
                If S > 10 Then S = 0
            Case 2
                ' down action
                S = S - 1
                If S < 0 Then S = 10
            Case 3, 99
                ' execute action or exit
                Exit Sub
        End Select
        A = 0 '  it restores neutral value of A
        Select Case S
            Case 0
                Sm = "0"
                F = "80/40 width  * 25/43/50 height"
            Case 1
                Sm = "1"
                F = " 320    200"
            Case 2
                Sm = "2"
                F = "640    200"
            Case 3
                Sm = "7"
                F = "320    200"
            Case 4
                Sm = "8"
                F = "640    200"
            Case 5
                Sm = "9"
                F = "640    200"
            Case 6
                Sm = "10"
                F = "640    350"
            Case 7
                Sm = "11"
                F = "640    480"
            Case 8
                Sm = "12"
                F = "640    480"
            Case 9
                Sm = "13"
                F = "320    200"
            Case 10
                Sm = "32bit"
                F = "variable W & H "
        End Select
    Loop
End Sub

Function TakeInput (Action As Integer)
    Action = 0
    WaitStopMouseInput
    C$ = InKey$
    If (C$ = Chr$(27) Or (M1 = -1 And M2 = -1)) Then Action = 99
    If (C$ = "U" Or M1 = -1) Then Action = 1
    If (C$ = "D" Or M2 = -1) Then Action = 2
    If (C$ = Chr$(13) Or M3 = -1) Then Action = 3
    TakeInput = Action
End Function
PS It is fantastic the Export as... in the file meny of QB64pe IDE.
Reply
#2
I don't think you're really seeing a bug here.  You're getting the mouse coordinates properly.  You're just mathing them wrongly to get the correct row.

For example, the let's say the font is 8 pixels in size.

From Y 0 to Y7, that's row 1. 
From Y8 to Y15, that's row 2.

Your math is simply:  

row = INT(_MouseY / _FontHeight)

So when the mouse is at pixel 0, it's going to report being in row INT(0/8).. or 0.
Now when it's at pixel 8, it's going to report being in row INT(8/8).. or 1.

Mouse starts at base 0, but row counting starts on the first row.  

You basically need to offset the math there to adjust for that +1 base difference.  Big Grin

(Note that in SCREEN 0, this offset is *NOT* needed as screen 0 gives us the row value automatically so it begins with a base value of 1, whereas mouse begins with a base value of 0.)
Reply
#3
Hi Steve
thanks for replying!

Yeah I must say that the rounding argue is very logical.

So now it stands the issue about 32bit screen made by _NEWIMAGE.
Please give a second look at the second screenshot posted at #1.

you can notice that only the last 3 rows of the 10 rows PRINTed are visible...--> print viewport  has  a part  out of the window

going deeper 
you can see that the box drawn around the window is whole visible in SCREEN legacy mode,  but not in SCREEN _NEWIMAGE (W,H,32) -->graphic viewport has a part out the window

following this path
you can see also that the two diagonals are not whole visible  --> graphic viewport has a part out of the window

and you can see too that the center of the viewport is not at centre of the window --> graphic viewport has a part out of the window.

if you take a look at this screenshot got compiling the code of Petr Detect a point in a triangle you can notice that in Lubuntu you cannot see any output as text of the 1st row cause it is not visible.

[Image: image-2025-11-17-232114908.png]

but if you modify the code from LOCATE 1  to LOCATE 5 , now you'll watch the text output in the upper left corner.

This issue affects also OpenGL graphics.
Please run the demo in Lubuntu, or test your Linux OS to see if it is so also there.

Code: (Select All)
Dim Shared GlInit As Integer
GlInit = 0
Screen 0
Print "please press  in order these keys to go on with the demo..."
Print " q w e. This demo starts after 3 seconds!"
Sleep 3
Screen _NewImage(1000, 800, 32)
Locate 1
Print "SCREEN mode 32 bit: first row" ' you cannot read this
Locate 5
Print "Press q to continue" ' you can read this
Do
Loop Until InKey$ = "q"
GlInit = 1
Do
    ' you see a triangle truncated at the top
Loop Until InKey$ = "w"


Screen 12
Locate 1
Print "SCREEN mode legacy 12: first row"
Do
    ' you see a regular triangle
Loop Until InKey$ = "e"


End

Sub _GL
    If GlInit = 0 Then Exit Sub
    _glViewport 0, 0, _Width(0), _Height(0)
    _glClearColor 0, 0, .1, .5
    _glClear _GL_COLOR_BUFFER_BIT Or _GL_DEPTH_BUFFER_BIT
    _glBegin (_GL_TRIANGLES)
    _glColor3f 1, .5, .5
    _glVertex2f -1, -1 ' left down vertex
    _glColor3f .5, 1, .5
    _glVertex2f 1, -1 ' right down vertex
    _glColor3f .5, .5, 1
    _glVertex2f 0, 1 'middle up vertex
    _glEnd
    _glFlush
End Sub

My question is : is the issue of viewport only in Lubuntu? 
Thanks for your attention.
Reply
#4
No idea.  I don't have a Linux machine for testing.  Somebody else will have to dig into that for you.  Big Grin
Reply
#5
Hi,

No operational issues with the code from your two programs on my setup (Debian GNU/Linux 12 "bookworm"); the diagonals are complete in all configurations of your first program and I do get the message at LOCATE 1 in the second.
Reply
#6
it might be different in wayland session.  since qb64pe assumes "x11" always.

otherwise any desktop environment and/or window manager.  run by debian or ubuntu.  should work the same way.

however @tempodibasic.  since you have lubuntu.  someone else could venture installing kubuntu instead.  then putting in lxqt desktop.  then purposely logging into lxqt desktop.  and trying to select "kwin" as window manager.  instead of openbox.  to see how it's different.

(this is instead of trying to haul in kde dependencies.  into lubuntu because it could be at least one gigabyte.  even more while we head toward the following lts next spring.)

i'd do that but my internet is very limited.  cannot download the huge iso's from any ubuntu flavor.  although either lubuntu or xubuntu is the smallest one.  it's over 3gib.
Reply
#7
@hsiangch ong
Thanks for suggestion: in Login time I can choose among 4 windowing systems: Plasma X11, Openbox, LXqt and Lubuntu. Each of these options has its custom graphic  mode with icons, shapes and colors, and applications menu aspect.
I run my tool and the snippet posted at #3. The results are the same also if the graphic aspects of the windowing system are different.

I dunno if this is only for Lubunt or if it happens also in the other derivates of Ubuntu.
I think that the test can be done also using a live distro and not installing the other OSes on HDD , can't it?
Have also the other Linux distros, that use these windowing systems, this issue?
Reply
#8
Here the final cut of Tool Testing Screen Modes :
as you can see in the Working in progress section of this forum I asked help for solving my mistakes raising up an uncontrolled mouse events.
I got the help of Steve and Petr with different methods solving the issue.
So, back to the school, I followed their ideas and methods and here there are the 2 version of the tool:

Steve's method

Code: (Select All)
_Title "Lubuntu window's cohordinates bug"

''Screen      Text          Graphics          Colors      Video    Text      Default
'' Mode  Rows  Columns  Width  Height  Attrib.  BPP  Pages    Block    QB64 Font

''  0  25/43/50  80/40    No graphics    16/16 DAC  4    0-7    -----    _FONT 16
''  1      25      40      320    200    16/4 BG    4    none    8 X 8    _FONT 8
''  2      25      80      640    200      2/mono    1    none    8 X 8    _FONT 8
''  .................................................................................
''  7      25      40      320    200    16/16 DAC  4    0-7    8 X 8    _FONT 8
''  8      25      80      640    200    16/16      4    0-3    8 X 8    _FONT 8
''  9      25      80      640    350    16/64 DAC  4    0-1    8 X 14  _FONT 14
'' 10      25      80      640    350    4/2 GScale 2    none    8 X 14  _FONT 14
'' 11    30/60    80      640    480      2/mono    1    none    8 X 16  _FONT 16
'' 12    30/60    80      640    480    16/262K    4    none    8 X 16  _FONT 16
'' 13      25      40      320    200    256/65K    8    none    8 X 8    _FONT 8
'' _NEWIMAGE width. height, 32
Randomize Timer
Dim ScrM As Integer, ScrMod As String, FeaT As String, Action As Integer
Dim Shared As Integer M1, M2, M3
ScrM = 0: ScrMod = "0": FeaT = "80/40 width  * 25/43/50 height": Action = 0
M1 = 0: M2 = 0: M3 = 0
Do While Action <> 99
    WaitStopMouseInput
    Mainscreen
    Mainloop ScrM, ScrMod, FeaT, Action
    WaitStopMouseInput
    If Action = 3 Then
        If ScrM = 10 Then
            Screen _NewImage(1000, 800, 32)
        Else
            Screen Val(ScrMod)
        End If
        test ScrMod, FeaT
    End If
Loop
End

Sub test (Sm As String, F As String)
    Cls
    r = 1
    Do
        WaitStopMouseInput
        mx = _MouseX
        my = _MouseY
        For row = 1 To 10
            Select Case Sm
                Case "32bit"
                    Color _RGB32(Rnd * 255, Rnd * 255, Rnd * 255)
                Case "2", "11"
                    Color 1
                Case "10"
                    Color Int(Rnd * 3) + 1
                Case Else
                    Color row
            End Select
            If Sm = "0" Then r = 1 Else r = _FontHeight
            Locate row, 1
            Print mx; "  "; Int(my / r); "  "; row
        Next row
        Locate 22
        Print "Screen mode  " + Sm + "  " + F
        Print "Press RIGHT mouse button or Escape key to exit";

        Select Case Sm
            Case "0"
                ' do not do graphic lines
            Case Else
                ' it draws 2 lines to show vertexes and center of the screen, more a box on the edge of screen
                Line (1, 1)-(_Width(0), _Height(0))
                Line (_Width(0), 1)-(1, _Height(0))
                Line (1, 1)-(_Width(0) - 1, _Height(0) - 1), , B
        End Select
        _Limit 20
    Loop Until _MouseButton(2) = -1 Or InKey$ = Chr$(27)
    WaitStopMouseInput
    Screen 0
    Cls
End Sub

Sub WaitStopMouseInput
    Do While _MouseInput

    Loop ' loop to clean mouse input buffer

End Sub

Sub Mainscreen
    Screen 0
    Print "Tool for testing the setting of screen viewport on the window application"
    Locate 3
    Color 5
    Print "press U for Previous Screen Mode and D for Following Screen Mode"
    Print " Enter for testing selected Screen mode"
    Color 4
    Print "press Left button of mouse for Previous Screen Mode and Right button of "
    Print " mouse for following Screen Mode"
    Print " Middle button of mouse for testing selected Screen Mode"
    Color 14
    Print " press Escape key or together Left and Right mouse buttons for quitting"
    Color 1
    Locate 13
    Print "SCREEN " + Space$(15) + " Features"

End Sub

Sub Mainloop (S As Integer, Sm As String, F As String, A As Integer)
    Do

        Locate 14, 1
        Print Space$(80);
        Locate 14, 1
        Print "  " + Sm + Space$(15 - (Len(Sm))) + F
        While TakeInput(A) = 0
            _Limit 20
        Wend
        Select Case A
            Case 1
                'up action
                S = S + 1
                If S > 10 Then S = 0
            Case 2
                ' down action
                S = S - 1
                If S < 0 Then S = 10
            Case 3, 99
                ' execute action or exit
                Exit Sub
        End Select
        A = 0 '  it restores neutral value of A
        Select Case S
            Case 0
                Sm = "0"
                F = "80/40 width  * 25/43/50 height"
            Case 1
                Sm = "1"
                F = " 320    200"
            Case 2
                Sm = "2"
                F = "640    200"
            Case 3
                Sm = "7"
                F = "320    200"
            Case 4
                Sm = "8"
                F = "640    200"
            Case 5
                Sm = "9"
                F = "640    200"
            Case 6
                Sm = "10"
                F = "640    350"
            Case 7
                Sm = "11"
                F = "640    480"
            Case 8
                Sm = "12"
                F = "640    480"
            Case 9
                Sm = "13"
                F = "320    200"
            Case 10
                Sm = "32bit"
                F = "variable W & H "
        End Select
    Loop
End Sub

Function TakeInput (Action As Integer)
    Action = 0
    WaitStopMouseInput
    C$ = InKey$
    If (C$ = Chr$(27) Or ((_MouseButton(1) = -1) And (_MouseButton(2) = -1))) Then Action = 99
    If (C$ = "U" Or (_MouseButton(1) = 0 And M1 = -1)) Then Action = 1
    If (C$ = "D" Or (_MouseButton(2) = 0 And M2 = -1)) Then Action = 2
    If (C$ = Chr$(13) Or (_MouseButton(3) = 0 And M3 = -1)) Then Action = 3
    M1 = _MouseButton(1): M2 = _MouseButton(2): M3 = _MouseButton(3) ' store actual state of mouse buttons
    TakeInput = Action
End Function

Petr's method

Code: (Select All)
_Title "Lubuntu window's cohordinates bug"

''Screen      Text          Graphics          Colors      Video    Text      Default
'' Mode  Rows  Columns  Width  Height  Attrib.  BPP  Pages    Block    QB64 Font

''  0  25/43/50  80/40    No graphics    16/16 DAC  4    0-7    -----    _FONT 16
''  1      25      40      320    200    16/4 BG    4    none    8 X 8    _FONT 8
''  2      25      80      640    200      2/mono    1    none    8 X 8    _FONT 8
''  .................................................................................
''  7      25      40      320    200    16/16 DAC  4    0-7    8 X 8    _FONT 8
''  8      25      80      640    200    16/16      4    0-3    8 X 8    _FONT 8
''  9      25      80      640    350    16/64 DAC  4    0-1    8 X 14  _FONT 14
'' 10      25      80      640    350    4/2 GScale 2    none    8 X 14  _FONT 14
'' 11    30/60    80      640    480      2/mono    1    none    8 X 16  _FONT 16
'' 12    30/60    80      640    480    16/262K    4    none    8 X 16  _FONT 16
'' 13      25      40      320    200    256/65K    8    none    8 X 8    _FONT 8
'' _NEWIMAGE width. height, 32
Randomize Timer
Dim ScrM As Integer, ScrMod As String, FeaT As String, Action As Integer
Dim Shared As Integer M(1 To 3)
ScrM = 0: ScrMod = "0": FeaT = "80/40 width  * 25/43/50 height": Action = 0
M(1) = 0: M(2) = 0: M(3) = 0 ' 0 = no event 1 = inclicking  2 = click
Do While Action <> 99
    WaitStopMouseInput
    Mainscreen
    Mainloop ScrM, ScrMod, FeaT, Action
    WaitStopMouseInput
    If Action = 3 Then
        If ScrM = 10 Then
            Screen _NewImage(1000, 800, 32)
        Else
            Screen Val(ScrMod)
        End If
        test ScrMod, FeaT
    End If
Loop
End

Sub test (Sm As String, F As String)
    Cls
    r = 1

    Do
        M1 = 0: M2 = 0: M3 = 0
        WaitStopMouseInput
        mx = _MouseX
        my = _MouseY
        For row = 1 To 10
            Select Case Sm
                Case "32bit"
                    Color _RGB32(Rnd * 255, Rnd * 255, Rnd * 255)
                Case "2", "11"
                    Color 1
                Case "10"
                    Color Int(Rnd * 3) + 1
                Case Else
                    Color row
            End Select
            If Sm = "0" Then r = 1 Else r = _FontHeight
            Locate row, 1
            Print mx; "  "; Int(my / r); "  "; row
        Next row
        Locate 22
        Print "Screen mode  " + Sm + "  " + F
        Print "Press RIGHT mouse button or Escape key to exit";

        Select Case Sm
            Case "0"
                ' do not do graphic lines
            Case Else
                ' it draws 2 lines to show vertexes and center of the screen, more a box on the edge of screen
                Line (1, 1)-(_Width(0), _Height(0))
                Line (_Width(0), 1)-(1, _Height(0))
                Line (1, 1)-(_Width(0) - 1, _Height(0) - 1), , B
        End Select
        _Limit 20
    Loop Until M(2) = 2 Or InKey$ = Chr$(27)
    WaitStopMouseInput
    Screen 0
    Cls
End Sub

Sub WaitStopMouseInput
    Do While _MouseInput
    Loop ' loop to clean mouse input buffer
    'here mousevent must be translated into program events
    For i = 1 To 3
        Select Case M(i)
            Case 0
                ' no event status
                If _MouseButton(i) = -1 Then M(i) = 1
            Case 1
                ' inclicking status
                If _MouseButton(i) = 0 Then M(i) = 2
            Case 2
                'click status
                Rem nothing to do here for the program goal
        End Select
    Next
End Sub

Sub Mainscreen
    Screen 0
    Print "Tool for testing the setting of screen viewport on the window application"
    Locate 3
    Color 5
    Print "press U for Previous Screen Mode and D for Following Screen Mode"
    Print " Enter for testing selected Screen mode"
    Color 4
    Print "press Left button of mouse for Previous Screen Mode and Right button of "
    Print " mouse for following Screen Mode"
    Print " Middle button of mouse for testing selected Screen Mode"
    Color 14
    Print " press Escape key or together Left and Right mouse buttons for quitting"
    Color 1
    Locate 13
    Print "SCREEN " + Space$(15) + " Features"

End Sub

Sub Mainloop (S As Integer, Sm As String, F As String, A As Integer)
    Do

        Locate 14, 1
        Print Space$(80);
        Locate 14, 1
        Print "  " + Sm + Space$(15 - (Len(Sm))) + F
        While TakeInput(A) = 0
            _Limit 20
        Wend
        Select Case A
            Case 1
                'up action
                S = S + 1
                If S > 10 Then S = 0
            Case 2
                ' down action
                S = S - 1
                If S < 0 Then S = 10
            Case 3, 99
                ' execute action or exit
                Exit Sub
        End Select
        A = 0 '  it restores neutral value of A
        Select Case S
            Case 0
                Sm = "0"
                F = "80/40 width  * 25/43/50 height"
            Case 1
                Sm = "1"
                F = " 320    200"
            Case 2
                Sm = "2"
                F = "640    200"
            Case 3
                Sm = "7"
                F = "320    200"
            Case 4
                Sm = "8"
                F = "640    200"
            Case 5
                Sm = "9"
                F = "640    200"
            Case 6
                Sm = "10"
                F = "640    350"
            Case 7
                Sm = "11"
                F = "640    480"
            Case 8
                Sm = "12"
                F = "640    480"
            Case 9
                Sm = "13"
                F = "320    200"
            Case 10
                Sm = "32bit"
                F = "variable W & H "
        End Select
    Loop
End Sub

Function TakeInput (Action As Integer)
    Action = 0
    WaitStopMouseInput
    C$ = InKey$
    If (C$ = Chr$(27) Or (M(1) = 1 And M(2) = 1)) Then Action = 99 'quitting
    If (C$ = "U" Or M(1) = 2) Then Action = 1: M(1) = 0 'rolling up options
    If (C$ = "D" Or M(2) = 2) Then Action = 2: M(2) = 0 ' rolling down options
    If (C$ = Chr$(13) Or M(3) = 2) Then Action = 3: M(3) = 0 'executing selected options
    TakeInput = Action
End Function

Thanks for testing your OS for SCREEN modes. 
If issues arise please post to developer team.
Reply
#9
some news:

[Image: Kubuntu-running-Screenshot-20251129-182842.jpg]
running a kubuntu live from cdrom  it confirmed that  SCREEN _newimage makes a viewport in part out of the its window.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Screen fonts in SCREEN 0 BDS107 14 3,505 07-08-2025, 08:05 PM
Last Post: madscijr
  Pete's Handy Dandy File Compare Tool Pete 0 520 11-12-2024, 02:39 AM
Last Post: Pete
  Pete's handy dandy compare tool... Pete 0 569 10-25-2024, 01:20 AM
Last Post: Pete
  TreeSheets: A fantastic little outlining tool CharlieJV 7 2,353 06-28-2023, 08:11 PM
Last Post: CharlieJV
  FeatherWiki, super-light tool that's handy for all sorts of things. CharlieJV 0 473 03-26-2023, 07:19 PM
Last Post: CharlieJV

Forum Jump:


Users browsing this thread: 1 Guest(s)