This is how I save the entire screen to disk for a 40x80 display
OldX% = pos(0) : OldY% = csrlin : OldColor% = pbvscrntxtattr
DEF SEG = &hB800 : BSAVE "SCREEN.TMP", 0, 4000 : DEF SEG
Then to restore the screen
CT% = OldColor% and 15 : cb% = OldColor% \ 16
color CT%, cb% : locate OldY%, OldX%
DEF SEG = &hB800 : BLOAD "SCREEN.TMP" : DEF SEG
What would be the values if the screen mode was 43 or 50 lines.
How is the screen data structured ?
I need to save a portion of the screen and I know that within the 4000 bytes, the character and the colour is stored.
OldX% = pos(0) : OldY% = csrlin : OldColor% = pbvscrntxtattr
DEF SEG = &hB800 : BSAVE "SCREEN.TMP", 0, 4000 : DEF SEG
Then to restore the screen
CT% = OldColor% and 15 : cb% = OldColor% \ 16
color CT%, cb% : locate OldY%, OldX%
DEF SEG = &hB800 : BLOAD "SCREEN.TMP" : DEF SEG
What would be the values if the screen mode was 43 or 50 lines.
How is the screen data structured ?
I need to save a portion of the screen and I know that within the 4000 bytes, the character and the colour is stored.
Comment