•  Back 
  •  XBIOS Function Reference 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  %About 
  •  Show info about hypertext 
  •  View a new file 
Topic       : The ATARI Compendium
Author      : Scott Sanders / JAY Software
Version     : 1.25 (20/6/2003)
Subject     : Documentation
Nodes       : 1117
Index Size  : 32614
HCP-Version : 6
Compiled on : Atari
@charset    : UTF-8
@lang       : en
@default    : 
@help       : %About
@options    : +g -i -t4 +y +z
@width      : 100
View Ref-FileInitmous()
Kbdvbase()                                                            XBIOS

Syntax

KBDVECS *Kbdvbase( VOID )

Function      Kbdvbase() returns a pointer to a system structure
              containing a 'jump' table to system vector handlers.

Opcode        34 (0x22)

Availability  All TOS versions.

Binding       move.w   #$22,-(sp)
              trap     #14
              addq.l   #2,sp

Return Value  Kbdvbase() returns a pointer to a system structure KBDVECS
              which is defined as follows:

              typedef struct
              {
               VOID (*midivec)( UBYTE data ); /* MIDI Input */
               VOID (*vkbderr)( UBYTE data ); /* IKBD Error */
               VOID (*vmiderr)( UBYTE data ); /* MIDI Error */
               VOID (*statvec)(char *buf);  /* IKBD Status */
               VOID (*mousevec)(char *buf);  /* IKBD Mouse */
               VOID (*clockvec)(char *buf);  /* IKBD Clock */
               VOID (*joyvec)(char *buf);  /* IKBD Joystick */
               VOID (*midisys)( VOID );  /* Main MIDI Vector */
               VOID (*ikbdsys)( VOID );  /* Main IKBD Vector */
               char ikbdstate;    /* See below */
              } KBDVECS;

              midivec is called with the received data byte in d0. If an
              overflow error occurred on either ACIA, vkbderr or vmiderr
              will be called, as appropriate by midisys or ikbdsys with
              the contents of the ACIA data register in d0. statvec,
              mousevec, clockvec, and joyvec all are called with the
              address of the packet in register A0. midisys and ikbdsys are
              called by the MFP ACIA interrupt handler when a character is
              ready to be read from either the midi or keyboard
              ports. ikbdstate is set to the number of bytes remaining to
              be read by the ikbdsys handler from a multiple-byte status
              packet.

Comments      If you intercept any of these routines you should either JMP
              through the old handler or RTS.

See Also      Initmous()