Is there any way to DIRECTLY read keyboard input?
By directly, I mean WITHOUT using Win API functions, or any pre written procedure. Just my plain assembly.
For example, my dad showed me his disassembly of a ZX-81 OS. We have found a procedure named 'INKEY$' which directly goes to the memory, copies the values of the keyboard buffer, and does whatever needs to be done with them. I know ZX-81 is historic, but I wanted to know if there is ANY way to read directly from the buffer.
I have disassembled 'user32.dll' and looked up for GetAsyncKeyState and GetKeyboardState. Heres a piece of code from GetAsyncKeyState which seems to be doing the 'reading from buffer' and deciding what to do if the key is pressed or not (Even though in both cases they jump to the same address...)
mov edx, [ebp+vKey]
cmp edx, 2
jz loc_7DC73234
cmp edx, 1
jz loc_7DC73234
My dad said it might be impossible to be done now because keyboards are connected with USB and they have drivers and stuff to do these low level actions. But then you can still read directly from wherever the keyboard drivers saves the keypresses.
So, can you still go to the memory and with a plain 'mov' instruction copy a value saying a key is pressed or not? Thanks.