[A83] Re: Distance RAM clearer :-)


[Prev][Next][Index][Thread]

[A83] Re: Distance RAM clearer :-)




> From: "Ronald Teune" <rtwolf@gmx.net>
>
> Does someone know how to use this?
> It could make things a lot easyer, I think.
> Ronald
>
>         ASM_IND_VALUE
>         -------------
>
>             19d         REC1STBYTE : This routine goes into idle
>                                      or low power mode and waits for
>                                      the data lines to change. Then
>                                      reads a byte of data using the TI-83
>                                      bit protocol. This only reads the 1st
>                                      byte of data. The byte is returned
>                                      in the accumlator.
>
>             20d         REC1STBYTENC : The same as REC1STBYTE except
>                                        that the cursor does not flash.
>                                        The byte is returned in the
>                                        accumulator.
>
>             22d         RECABYTE     : This routine looks at the data
>                                        lines for activity for about
>                                        2 seconds and reads in a single
>                                        byte of data. If no data is found
>                                        an error will be generated.
>                                        The byte is returned in the
>                                        accumulator.
>
>             11d         SENDABYTE    : This routine sends a byte of
>                                        data across the data lines
>                                        using the TI-83 bit protocol. If
>                                        there is no response within about 2
>                                        seconds an error is generated.
>                                        The data to be sent needs to be in
>                                        the accumulator.

You should load (asm_ind_call) with one of the values (19d, 20d, 22d, 11d)
and then call _io_exec. This routine checks the value stored at
(asm_ind_call) and then calls the necessary routines. Do know that these
routines generate system errors.

example:     ; (let the calc wait until a byte is received)
        ld    a,19
        ld    (asm_ind_call),a
        call  _io_exec

Tijl Coosemans



References: