1. Where on the screen does it print?
2. What does it print?
3. Does it consistently print the same wrong value each time you run it.
4. How are you running the code?
5. How do you know that you ever reach the kmain() function?
Have you disassembled your code to see what is happening at assembler level?
Can I also remark that, as this is essentially identical to a previous question from you, it would be more helpful to stick to one thread.
void printWhiteCharacter(char whatToPrint) // It print a character at the selected location. ROW=Y
{
char *ram = (char*)RAMSCREEN;
char text = 'A';
char att = 0xC; // Red on black
*ram=text;
ram = (char*)0xB8001;
*ram=att;
}
All i'm trying to do is passing the character as a parameter, and it does not work.
And the text attributes (red background, black text) is ok.