It works fine on mine at both 1280x720 and at 1440x900 as long as the virtual resolution is set correctly. Ive a game running this on 3 monitor sizes and it does work fine and displays using the full screen. Im wondering what else your doing or if its even a graphics driver issue (thats un likely)?
Display your sprite used for background image on the screen in the top left corner (say 200x200 pixels) and check it for black lines...if so then your not rendering the back properly at the correct resolution or aspect.
EDIT: What happens if you run this?? Your "A" filed image works fine AND you can choose whether you have black lines in the final render OR not.
// Project: Truncation
// Created: 2018-06-07
// Edited 8/6/18 - Ben Gismo - to correct aspect ratio problems at varying resolutions
// show all errors
SetErrorMode(2)
// set window properties
SetWindowTitle( "Truncation Version 2" )
// Resolution for final window
SetWindowSize( 1280, 720, 1 ) // 1.78
//SetWindowSize( 1440, 900, 1 ) // 1.6
//SetWindowSize( 800, 600, 0) // 1.33
SetWindowAllowResize( 1 ) // allow the user to resize the window
// set display properties
SetVirtualResolution( 1280, 720 ) // doesn't have to match the window
SetDisplayAspect(-1)
SetOrientationAllowed( 1, 1, 1, 1 ) // allow both portrait and landscape on mobile devices
SetSyncRate( 30, 0 ) // 30fps instead of 60 to save battery
SetScissor( 0,0,0,0 ) // use the maximum available screen space, no black borders
UseNewDefaultFonts( 1 ) // since version 2.0.22 we can use nicer default fonts
setting = 2 //1 = Change virtual resolution several times during each loop, 2 = The desired setting of only setting virtual resolution once
memblock = CreateMemblock(1280*720*4 + 12)
SetMemblockInt(memblock,0,1280)
SetMemblockInt(memblock,4,720)
SetMemblockInt(memblock,8,32)
bottom_image = CreateImageFromMemblock(memblock)
DeleteMemblock(memblock)
bottom_sprite = CreateSprite(bottom_image)
SetSpritePosition(bottom_sprite,0,0)
SetSpriteSize(bottom_sprite,1280,720)
monitor_image = LoadImage("computer screen.png")
SetImageTransparentColor(monitor_image,0,0,0)
monitor_sprite = CreateSprite(monitor_image)
SetSpriteTransparency(monitor_sprite,1)
SetSpriteSize(monitor_sprite,1280,720)
a_button_image = LoadImage("A button.png")
SetImageTransparentColor(a_button_image,0,0,0)
a_button_sprite = CreateSprite(a_button_image)
SetSpriteTransparency(a_button_sprite,1)
SetRenderToImage(bottom_image,0)
for x = 1 to 1280 step 16
for y = 1 to 720 step 16
SetSpritePosition(a_button_sprite,x,y)
DrawSprite(a_button_sprite)
next y
next x
SetRenderToScreen()
//SetVirtualResolution(1280,720) // uncomment this if you WANT constant aspect ratio (black bars on a non 1280x720)
do
if GetRawKeyPressed(27) then end
print("Press ESC to quit")
Sync()
loop