MichaelPetch wrote:
Bowlslaw wrote:
Thank you for the very informative response. Based on what I have, this means that the provided code on the wiki was not designed to deal with scrolling.
No, this means really that your scrolling is buggy IMHO. The Paging code is fine. When I ran it you were writing beyond the displayable video area. When scrolling you shouldn't have to write anything to the off screen video memory.
So, in the kernel code, this loop:
Code:
for(int i = 0; i < 25; i++) {
printf("HERE\n");
}
I need to make the code handle it once it gets beyond the vga video memory by NOT allowing anything to be written outside of the video memory. Instead, it should take the data and "move" it so that it stays within the vga text buffer.
EDIT: My problem has been solved. I just needed to add bounds checks, which I was unaware I needed because I did not need them when paging not not enabled. I did not understand paging, but I do now, and the code works fine.
Thank you for your help. Lesson learned on my part.