Ok, more silly fun. The hits keep coming!

I've added cross hairs that will show the byte boundaries and the line boundaries, and if you press the 1 or 2 keys you can switch hi-res pages.

Code
function rem(a) print(a) end
function remp(a,b,c,d) print(a,b,c,d) end
function rem(a) end
function float(f) return string.format("%6.2f",f) end
function hex(a) return string.format("0x%02x",a) end
function calc(line,page) page=page or 0 return line % 8 * 1024 + math.floor(line / 64) * 40 + math.floor((line%64) / 8) * 128 + 8192*(page + 1) end

function iif(a,b,c) if a then return b else return c end end 
function bool10(a) return iif(a,1,0) end

function bin(x,numbits,gap) if x==nil then return nil end gap=gap or "_" numbits=numbits or 8 str="" for i=numbits-1,0,-1 do str=str..iif((x&(2^i))~=0,"1","0")..iif((i%8==0) and (i>0),gap,"") end return str end

function myframedispatcher() if myframedispatchlist ~= nil then for i,j in pairs(myframedispatchlist) do j() end end end

function get_page()
page = emu.item(manager:machine().devices[":a2video"].items["0/m_page2"]):read(0)
return page
end

function iskeypressed(keycode) 
inp = manager:machine():input() return inp:code_pressed(inp:code_from_token(keycode))
end

function draw_crosshairs()
x,y,button,target=manager:machine():uiinput():find_mouse()
if target==nil then print ("TARGET=nil") return end 
manager:machine().screens[":screen"]:draw_line(0,0,x/target:width()*559,y/target:height()*191,0xffffffff)
boxsize=4
manager:machine().screens[":screen"]:draw_box(x/target:width()*559-boxsize*2,y/target:height()*191-boxsize,x/target:width()*559+boxsize*2,y/target:height()*191+boxsize,0x22ffffff,0xffff0000)
xsize=target:width() 
ysize=target:height() 
textx=math.min(math.floor(x/xsize*560+10),400)
texty=math.min(math.floor(y/ysize*192+10),160)
if texty>159 then texty=texty-40 end
x1=math.floor(x/xsize*279/7)*7*2
x2=(math.floor(x/xsize*279/7)+1)*7*2
y1=math.floor(y/ysize*191)
y2=math.floor(y/ysize*191)+1
manager:machine().screens[":screen"]:draw_box(x1,0,x2,y/target:height()*191,0x44ffff00,0xffff0000)
manager:machine().screens[":screen"]:draw_box(0,y1,x/xsize*559,y2,0x44ffff00,0xffff0000)
cpu = manager:machine().devices[":maincpu"];mem = cpu.spaces["program"]
page=get_page()
screenaddr=calc(math.floor(y/ysize*191),get_page())+math.floor(x/xsize*279/7)
screenvalue=mem:read_u8(screenaddr)
manager:machine().screens[":screen"]:draw_text(textx,texty,"x="..float(x/xsize*280).." y="..float(y/ysize*192).."\naddr="..hex(screenaddr).."\nvideo page= "..page.."\nvalue="..hex(screenvalue).." "..bin(screenvalue),0xffffffff,0xffff0000)
if button then
  myframedispatchlist={}
end
if     iskeypressed("KEYCODE_1") then   emu.item(manager:machine().devices[":a2video"].items["0/m_page2"]):write(0,0)
elseif iskeypressed("KEYCODE_2") then   emu.item(manager:machine().devices[":a2video"].items["0/m_page2"]):write(0,1)
end
end

myframedispatchlist={} table.insert(myframedispatchlist,draw_crosshairs)

if alreadyregisteredmyframedispatcher==nil then
  emu.register_frame_done(myframedispatcher)
  alreadyregisteredmyframedispatcher=true
end

function clrd() myframedispatchlist={} end

[Linked Image from i.imgur.com]