[Back to KEYBOARD SWAG index] [Back to Main SWAG index] [Original]

    {
     IL> INT 16 - KEYBOARD - SET TYPEMATIC RATE AND DELAY

    I wrote a little utility a long time ago, that you might find a bit handy...
    I'm sure I have the code around here somewhere (rummage..)  Ah here :

    for the typematic, delay is in increments of 250, and rate is in decrements
    of one...
    Sean Graham.....
    }

    procedure cursor(t, b: byte); assembler; { Set cursor attribs }
    asm
       mov ax, $0100
       mov ch, t
       mov cl, b
       int $10
    end;

    procedure v50; assembler;                { Go to 50 line mode }
    asm
       mov ax,1202h
       mov bl,30h
       int 10h
       mov ax,3
       int 10h
       mov ax,1112h
       xor bl, bl
       int 10h
    end;

    procedure v25; assembler;                { Go to 25 line mode }
    asm
       mov ax,$0003
       int $10
    end;

    procedure typematic(rate, delay: byte); assembler;
    asm
       mov ah, 3
       mov al, 5             {Set Typematic Rate And Delay        }
       mov bh, rate          {00h = 30/sec to 1fh = 2/sec         }
       mov bl, delay         {00h = 250ms to 03h = 1000ms         }
       int $16
    end;

     {Int $16 Function $03; { Set type matic Rate }
     {MAYNARD PHILBROOK,Re  Keyboard Speed Adjust}

     Procedure SetTypeRate(Kdelay, Krate:Byte);
      Begin
       asm
        Mov AX,$0305; { on a PC jr, AL reg has extra Functions }
        Mov BH, Kdelay;
        Mov BL, Krate;
        Int $16;
       End;
      End;

[Back to KEYBOARD SWAG index] [Back to Main SWAG index] [Original]