•  Back 
  •  GEMDOS 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-FileCconout()
Cconin()
Bconout()
Bconin()
Crawio()                                                             GEMDOS

Syntax

LONG Crawio( ch )
WORD ch;

Function      Crawio() combines console input and output in one function.

Opcode        6 (0x06)

Availability  All GEMDOS versions.

Parameters    ch is a WORD value, however, only the lower eight bits are
              meaningful and the upper eight bits should be set to 0. If ch
              is 0x00FF on input, Crawio() returns the character read from
              GEMDOS handle 0 (normally 'con:').

Binding       move.w   ch,-(sp)
              move.w   #6,-(sp)
              trap     #1
              addq.l   #4,sp

Return Value  If ch is 0x00FF upon entry, Crawio() returns a bit array
              arranged as follows:

              Bits 31-24      Bits 23-16      Bits 15-8       Bits 7-0

              Shift key       Keyboard        Unused          ASCII code
              status          scancode        (0)             of character
              (see below)

              The ASCII code of the character will be 0 if a non-ascii
              keyboard key is struck.
              If no character was waiting in the input stream, Crawio()
              returns a 0.

Caveats       When using this function while its handle is redirected, an
              end-of-file condition will hang the system. GEMDOS version
              0.30 and all MiNT versions correct this bug. MiNT returns
              MINT_EOF (0xFF1A) when the end-of-file is reached. Due to the
              definition of this call it is impossible to write 0x00FF to
              the output stream or read a zero from this call.

Comments      The shift key status will only be returned when bit 3 of the
              system variable conterm (char *(0x484)) is set. This is
              normally not enabled. If the handle has been redirected, the
              inputted character will appear in the lower 8 bits of the
              return value. Under normal circumstances, when GEMDOS handle 0
              is being read from, no special system keys, including ctrl-c,
              are checked.

See Also      Cconout(), Cconin(), Bconout(), Bconin()