commented disassembly for memory viewer is attached

Here's also some notes on the memory viewer itself:
---------------------------------------------------

To enter memory viewer:
goto options menu
hit:

up,right,down,left,up,up,left,right,left,right,down,L


;------------------------------
While on data part of viewer

L = change location -1 byte
R = change location +1 byte

up = change location one lines worth of bytes (-$08 for hex, -$10 ascii)
down = change location one lines worth of bytes (-$08 for hex, -$10 ascii)

while on address nibbles, X, B allow adjustment of nibble up or down a value

Y = follow pointer at current location, or under cursor
A = change viewer mode (Hex, ascii, and mixed options)

Start = exits
Select = move to between sections of viewer (can get to command line this way)

;------------------------------
Command line

L/R uses to cycle character at cursor
Y exectures command
left/right move cursor
up/down still move location
X is backspace
A space
B space
start exits
select moves between sections as usual


Commands:
# is shorthand for a number.
It can handle both decimal and hex.
string "#1223" is decimal 1223, "1223" is hex $1223.

"" -> nothing, no error
"@*" -> nothing, give error
"B" -> move to $E0:FD98 (BoxIDGlobals)
"C" -> ?? move to $E0:7438  ... prints info A,X,Y,DP / S,P,PC / D,Type, ST
"D x x" ->
       if val1 >= $82, do nothing
       follows some Nodes at BoxHighMem.typeList[val1] looking for val2
       if found, move to location, else nothing

"E?" -> exit (character ? is overwritten, and not used)
"G x" -> move to x
"H" -> move to $E0:FCE8 (BoxHighMem)
"M" -> ?? change to full screen hex
"Q" -> quit
"U" -> toggle value of byte [$62],$14 (1 or 0)
       (what this effects: JSR $D7A077 is called in main loop if [xx],$14==0)
"V" -> ?? prints DB OK / BOXID OK
"W x" ->
       there appear to only be two valid values
       7B2 -> set byte[$62],$0015 = #$01
       264 ->
             if byte[$62],$0015 == 0 -> error
             if byte[$62],$0015 != 0 -> set byte[$62],$0016 = #$01

       After running the first one, X and B buttons can now be used to
     change memory as well.

       I'm not sure what the second one does.
       (Once: I could write to $E0:0000-43FF but not 4400- until I did second one.)



;------------------------------
Notes from code:

[$62],4 = memory location