Screen methods references

MoveTo( [ x ] , [ y], [ addr hi bit ] );

Moves the TRSE screen cursor to position x,y (40*y+x) relative to the address provided. For instance, to move to the default screen position ($0400) on bank 0, use MoveTo(x,y, $04). To position the cursor at the position of color ram, MoveTo(x,y, $D8 ); Constants will be added later.

PokeScreen( [ val ] , [ count<#$ff] );

Write the value to the current screen cursor position  [ count] times. PokeScreen(charactervalue, #5) // write 5 times.

IncScreenX( [ val ]  );

Increase the screen cursor position by [val]. IncscreenX(a+b);

ScrollX( [ val ]  );

Scroll x-register 0-7 bytes

ScrollY( [ val ]  );

Scroll y-register 0-7 bytes

HideBorderY( [ on = 1, off=0 ]);

Disables / enables displaying of row 0/24 on the screen. Name will change.

HideBorderX( [ on = 1, off=0 ]);

Not yet implemented.

CopyHalfScreen( [ Src addr], [ Dst addr], [ no rows (*40)], [inverted =1,0] );

Copies N * 40 rows from one memory location to another. Inverted means that the highest memory rows will be copied first, while non-inverted means that the first rows are copied first. For faster screen copying during banking.

CopyHalfScreen($0400, $4400 + 40 ,#12, #1);  // Copies 12 lines from bank 1 screen position upper half to bank 1 shifted 1 row down

CopyFullScreen( [ Src addr], [ Dst addr] );

Copies 1000 bytes (1 screen) from src to dst.

PrintString( [ string ], [ unused ]);

Prints a string at the current screen cursor positions as defined by MoveTo. For example

MoveTo(#10,#10, #$04);

PrintString(“UGH!”);

will print “UGH!” at position 10,10

PrintNumber( [ val<$FF ]);

Prints a number at the current screen cursor positions as defined by MoveTo. Currently only displays numbers in hex.

ClearScreen( [ val] , [ addr] );

Fills 1000 bytes of [ val ] at the given address. For instance, clearing the screen at $0400 with spaces:

ClearScreen(#$20, SCREEN_CHAR_LOC);

SetMultiColorMode();

SetRegularColorMode();

SetBitmapMode();

SetTextMode();