• waigl@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      21 days ago

      This is x86 assembler. (Actually, looking at the register names, it’s probably x86_64. On old school x86, they were named something like al, ah (8 bit), ax (16 bit), or eax (32 bit).) Back in the old days, when you pressed a key on the keyboard, the keyboard controller would generate a hardware interrupt, which, unless masked, would immediately make the CPU jump to a registered interrupt handler, interrupting whatever else it was doing at the point. That interrupt handler would then usually save all registers on the stack, communicate with the keyboard controller to figure out what exactly happened, react to that, restore the old registers again and then jump back to where the CPU was before.

      In modern times, USB keyboards are periodically actively polled instead.

      • WhyJiffie@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        0
        ·
        21 days ago

        does that mean though that if I connect a PS/2 keyboard or mouse to my relatively modern computer (a “gamer” motherboard made ~6 years ago) 's PS/2 port, that it’ll still trigger such an interrupt?

      • starman2112@sh.itjust.works
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        21 days ago

        The virgin USB: hey, uh, when you get a chance, uh, if it’s not too much trouble, could you, uh, put an ‘e’ there? Whenever you get the chance is fine

        The chad PS/2: THE USER SAID E.