A83: RE: Problem with directinput routine
[Prev][Next][Index][Thread]
A83: RE: Problem with directinput routine
You can ty a "call _getkey" or something like that just before quiting for
clearing the keyboard-buffer... or something you can try is use a di before
the key-checking and a ei after the checking..
> -----Oorspronkelijk bericht-----
> Van: central@hyperfield.com [mailto:central@hyperfield.com]
> Verzonden: vrijdag 29 september 2000 16:00
> Aan: 'assembly-83@lists.ticalc.org'
> Onderwerp: Problem with directinput routine
>
> I am using the direct input routine:
>
>
> #define kbtrigger(xxxx) ld a,keyreset \ out (1),a \ ld a,xxxx \ out (1),a
> \ in a, (1)
> ...Keydefines and stuff...
> getkeyloop1:
>
> kbtrigger(keygroup3)
> cp key3
> jp z,log1
> kbtrigger(keygroup4)
> cp key2
> jp z,rijen1
> cp keyStat
> jp z,help
> kbtrigger(keygroup5)
> cp key1
> jp z,gonio1
> cp key4
> jp z,algebra1
> kbtrigger(keygroup7)
> cp keyMode
> jp z,exit
> jp getkeyloop1
>
> ...more program code...
>
> exit:
>
>
> bcall(_clrlcdfull)
> bcall(_grbufclr)
> bcall(_homeup)
> ld hl,0000h
> ld (CURCOL),hl
> ld hl,exittext
> bcall(_puts)
> ld hl,0409h
> ld (CURCOL),hl
> ld hl,done
> bcall(_puts)
>
> ret
> ...rest of program...
>
> but when I press mode to quit, the program does quit, but directly
> afterwards the TIOS
> Mode-screen is being displayed.
>
> I tried resetting the keyboard with ld a, 0FFh \ out (1),a
> but that didn't work.
>
> Anyone any ideas???
>
>
> Peter Martijn
>