###############################################################################
#                                                                             #
# IAR 8051 C/C++ Compiler V7.30B/W32                    19/May/2010  09:38:56 #
# Copyright 2004-2007 IAR Systems. All rights reserved.                       #
#                                                                             #
#    Core               =  plain                                              #
#    Code model         =  banked                                             #
#    Data model         =  large                                              #
#    Calling convention =  xdata reentrant                                    #
#    Constant location  =  data                                               #
#    Dptr setup         =  1,16                                               #
#    Source file        =  C:\Texas Instruments\ZStack-1.4.3-1.2.1\Components #
#                          \mac\low_level\srf03\single_chip\mac_mem.c         #
#    Command line       =  -f "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projec #
#                          ts\zstack\Samples\Location\CC2430DB\..\..\..\Tools #
#                          \CC2430DB\f8wCoord.cfg" (-DCPU32MHZ                #
#                          -DFORCE_MAC_NEAR -DROOT=__near_func                #
#                          -DMAC_CFG_APP_PENDING_QUEUE=TRUE                   #
#                          -DZDO_COORDINATOR -DRTR_NWK -DBLINK_LEDS           #
#                          "-DCONST=const __code" -DGENERIC=__generic) -f     #
#                          "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projects\ #
#                          zstack\Samples\Location\CC2430DB\..\..\..\Tools\CC #
#                          2430DB\f8wConfig.cfg" (-DSECURE=1                  #
#                          -DDEFAULT_CHANLIST=0x04000000                      #
#                          -DZDAPP_CONFIG_PAN_ID=0x00FF                       #
#                          -DNWK_START_DELAY=100 -DEXTENDED_JOINING_RANDOM_MA #
#                          SK=0x007F -DBEACON_REQUEST_DELAY=100               #
#                          -DBEACON_REQ_DELAY_MASK=0x00FF                     #
#                          -DROUTE_EXPIRY_TIME=30 -DAPSC_ACK_WAIT_DURATION_PO #
#                          LLED=3000 -DNWK_INDIRECT_MSG_TIMEOUT=7             #
#                          -DMAX_RREQ_ENTRIES=10 -DAPSC_MAX_FRAME_RETRIES=3   #
#                          -DNWK_MAX_DATA_RETRIES=2                           #
#                          -DMAX_POLL_FAILURE_RETRIES=2 -DMAX_BCAST=9         #
#                          -DAPS_MAX_GROUPS=16 -DMAX_RTG_ENTRIES=20           #
#                          -DNWK_MAX_BINDING_ENTRIES=10                       #
#                          -DMAX_BINDING_CLUSTER_IDS=5 "-DDEFAULT_KEY={0x02,  #
#                          0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, 0x00,    #
#                          0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0D}"         #
#                          -DRFD_RCVC_ALWAYS_ON=FALSE -DPOLL_RATE=1000        #
#                          -DQUEUED_POLL_RATE=100 -DRESPONSE_POLL_RATE=100)   #
#                          -DREJOIN_POLL_RATE=440 "C:\Texas                   #
#                          Instruments\ZStack-1.4.3-1.2.1\Components\mac\low_ #
#                          level\srf03\single_chip\mac_mem.c" -D CC2430EB -D  #
#                          ZTOOL_P1 -D LOCATION_DONGLE -D MT_TASK -D          #
#                          xNV_RESTORE -D INT_HEAP_LEN=4608 -D                #
#                          HAL_UART_BIG_TX_BUF=1 -D                           #
#                          SPI_MGR_DEFAULT_MAX_TX_BUFF=1024 -D                #
#                          SPI_MGR_DEFAULT_OVERFLOW=1 -lC "C:\Texas           #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\LocDongle\List\" -lA        #
#                          "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projects\ #
#                          zstack\Samples\Location\CC2430DB\LocDongle\List\"  #
#                          --diag_suppress Pe001,Pa010 --diag_remark pe550    #
#                          -o "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projec #
#                          ts\zstack\Samples\Location\CC2430DB\LocDongle\Obj\ #
#                          " -e --require_prototypes -z9 --no_code_motion     #
#                          --debug --core=plain --dptr=16,1                   #
#                          --data_model=large --code_model=banked             #
#                          --calling_convention=xdata_reentrant               #
#                          --place_constants=data --nr_virtual_regs 8 -I      #
#                          "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projects\ #
#                          zstack\Samples\Location\CC2430DB\" -I "C:\Texas    #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\SOURCE\" -I "C:\Texas    #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\ZMAIN\TI2430DB\"   #
#                          -I "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projec #
#                          ts\zstack\Samples\Location\CC2430DB\..\..\..\..\WX #
#                          L\INCLUDE\" -I "C:\Texas                           #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\M #
#                          T\" -I "C:\Texas Instruments\ZStack-1.4.3-1.2.1\Pr #
#                          ojects\zstack\Samples\Location\CC2430DB\..\..\..\. #
#                          .\..\COMPONENTS\HAL\INCLUDE\" -I "C:\Texas         #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\H #
#                          AL\TARGET\CC2430EB\" -I "C:\Texas                  #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\O #
#                          SAL\MCU\CCSOC\" -I "C:\Texas                       #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\O #
#                          SAL\INCLUDE\" -I "C:\Texas                         #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\S #
#                          TACK\AF\" -I "C:\Texas Instruments\ZStack-1.4.3-1. #
#                          2.1\Projects\zstack\Samples\Location\CC2430DB\..\. #
#                          .\..\..\..\COMPONENTS\STACK\NWK\" -I "C:\Texas     #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\S #
#                          TACK\SEC\" -I "C:\Texas Instruments\ZStack-1.4.3-1 #
#                          .2.1\Projects\zstack\Samples\Location\CC2430DB\..\ #
#                          ..\..\..\..\COMPONENTS\STACK\SYS\" -I "C:\Texas    #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\S #
#                          TACK\ZDO\" -I "C:\Texas Instruments\ZStack-1.4.3-1 #
#                          .2.1\Projects\zstack\Samples\Location\CC2430DB\..\ #
#                          ..\..\..\..\COMPONENTS\ZMAC\F8W\" -I "C:\Texas     #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\Z #
#                          MAC\" -I "C:\Texas Instruments\ZStack-1.4.3-1.2.1\ #
#                          Projects\zstack\Samples\Location\CC2430DB\..\..\.. #
#                          \..\..\COMPONENTS\SERVICES\SADDR\" -I "C:\Texas    #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\S #
#                          ERVICES\SDATA\" -I "C:\Texas                       #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\M #
#                          AC\INCLUDE\" -I "C:\Texas                          #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\M #
#                          AC\HIGH_LEVEL\" -I "C:\Texas                       #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\M #
#                          AC\LOW_LEVEL\SRF03\" -I "C:\Texas                  #
#                          Instruments\ZStack-1.4.3-1.2.1\Projects\zstack\Sam #
#                          ples\Location\CC2430DB\..\..\..\..\..\COMPONENTS\M #
#                          AC\LOW_LEVEL\SRF03\SINGLE_CHIP\" -I "C:\Program    #
#                          Files\IAR Systems\Embedded Workbench 4.0           #
#                          Evaluation version\8051\INC\" -I "C:\Program       #
#                          Files\IAR Systems\Embedded Workbench 4.0           #
#                          Evaluation version\8051\INC\CLIB\"                 #
#    List file          =  C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projects\z #
#                          stack\Samples\Location\CC2430DB\LocDongle\List\mac #
#                          _mem.lst                                           #
#    Object file        =  C:\Texas Instruments\ZStack-1.4.3-1.2.1\Projects\z #
#                          stack\Samples\Location\CC2430DB\LocDongle\Obj\mac_ #
#                          mem.r51                                            #
#                                                                             #
#                                                                             #
###############################################################################

C:\Texas Instruments\ZStack-1.4.3-1.2.1\Components\mac\low_level\srf03\single_chip\mac_mem.c
      1          /**************************************************************************************************
      2            Filename:       mac_mem.c
      3            Revised:        $Date: 2007-10-29 22:38:47 -0700 (Mon, 29 Oct 2007) $
      4            Revision:       $Revision: 15812 $
      5          
      6            Description:    Describe the purpose and contents of the file.
      7          
      8          
      9            Copyright 2006-2007 Texas Instruments Incorporated. All rights reserved.
     10          
     11            IMPORTANT: Your use of this Software is limited to those specific rights
     12            granted under the terms of a software license agreement between the user
     13            who downloaded the software, his/her employer (which must be your employer)
     14            and Texas Instruments Incorporated (the "License").  You may not use this
     15            Software unless you agree to abide by the terms of the License. The License
     16            limits your use, and you acknowledge, that the Software may not be modified,
     17            copied or distributed unless embedded on a Texas Instruments microcontroller
     18            or used solely and exclusively in conjunction with a Texas Instruments radio
     19            frequency transceiver, which is integrated into your product.  Other than for
     20            the foregoing purpose, you may not use, reproduce, copy, prepare derivative
     21            works of, modify, distribute, perform, display or sell this Software and/or
     22            its documentation for any purpose.
     23          
     24            YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE
     25            PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, 
     26            INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE, 
     27            NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL
     28            TEXAS INSTRUMENTS OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT,
     29            NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR OTHER
     30            LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
     31            INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE
     32            OR CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT
     33            OF SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
     34            (INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
     35          
     36            Should you have any questions regarding your right to use this Software,
     37            contact Texas Instruments Incorporated at www.TI.com. 
     38          **************************************************************************************************/
     39          
     40          /* ------------------------------------------------------------------------------------------------
     41           *                                           Includes
     42           * ------------------------------------------------------------------------------------------------
     43           */
     44          
     45          /* hal */
     46          #include "hal_types.h"
     47          
     48          /* low-level specific */
     49          #include "mac_mem.h"
     50          
     51          /* target specific */
     52          #include "hal_mcu.h"

   \                                 In  segment SFR_AN, at 0xd9
   \   unsigned char volatile __sfr RFD
   \                     RFD:
   \   000000                DS 1
     53          
     54          /* debug */
     55          #include "mac_assert.h"
     56          
     57          
     58          /**************************************************************************************************
     59           * @fn          macMemReadRamByte
     60           *
     61           * @brief       Read a byte from RAM.
     62           *
     63           * @param       pRam - pointer to byte RAM byte to read
     64           *
     65           * @return      byte read from RAM
     66           **************************************************************************************************
     67           */

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
     68          uint8 macMemReadRamByte(macRam_t * pRam)
   \                     macMemReadRamByte:
     69          {
   \   000000   C082         PUSH    DPL
   \   000002   C083         PUSH    DPH
   \   000004                ; Saved register size: 2
   \   000004                ; Auto size: 0
     70            return(*pRam);
   \   000004   8A82         MOV     DPL,R2
   \   000006   8B83         MOV     DPH,R3
   \   000008   E0           MOVX    A,@DPTR
   \   000009   F9           MOV     R1,A
   \   00000A   D083         POP     DPH
   \   00000C   D082         POP     DPL
   \   00000E   02....       LJMP    ?BRET
     71          }
     72          
     73          
     74          /**************************************************************************************************
     75           * @fn          macMemWriteRam
     76           *
     77           * @brief       Write multiple bytes to RAM.
     78           *
     79           * @param       pRam  - pointer to RAM to be written to
     80           * @param       pData - pointer to data to write
     81           * @param       len   - number of bytes to write
     82           *
     83           * @return      none
     84           **************************************************************************************************
     85           */

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
     86          void macMemWriteRam(macRam_t * pRam, uint8 * pData, uint8 len)
   \                     macMemWriteRam:
     87          {
   \   000000   74F7         MOV     A,#-0x9
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 9
   \   000005                ; Auto size: 0
   \   000005   8019         SJMP    ??macMemWriteRam_0
     88            while (len)
     89            {
     90              len--;
   \                     ??macMemWriteRam_1:
   \   000007   19           DEC     R1
     91              *pRam = *pData;
   \   000008   8C82         MOV     DPL,R4
   \   00000A   8D83         MOV     DPH,R5
   \   00000C   E0           MOVX    A,@DPTR
   \   00000D   8A82         MOV     DPL,R2
   \   00000F   8B83         MOV     DPH,R3
   \   000011   F0           MOVX    @DPTR,A
     92              pRam++;
   \   000012   A3           INC     DPTR
   \   000013   AA82         MOV     R2,DPL
   \   000015   AB83         MOV     R3,DPH
     93              pData++;
   \   000017   8C82         MOV     DPL,R4
   \   000019   8D83         MOV     DPH,R5
   \   00001B   A3           INC     DPTR
   \   00001C   AC82         MOV     R4,DPL
   \   00001E   AD83         MOV     R5,DPH
     94            }
   \                     ??macMemWriteRam_0:
   \   000020   E9           MOV     A,R1
   \   000021   70E4         JNZ     ??macMemWriteRam_1
     95          }
   \   000023   80..         SJMP    ?Subroutine0

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine0:
   \   000000   7F01         MOV     R7,#0x1
   \   000002   02....       LJMP    ?BANKED_LEAVE_XDATA
     96          
     97          
     98          /**************************************************************************************************
     99           * @fn          macMemReadRam
    100           *
    101           * @brief       Read multiple bytes from RAM.
    102           *
    103           * @param       pRam  - pointer to RAM to be read from
    104           * @param       pData - pointer to location to store read data
    105           * @param       len   - number of bytes to read
    106           *
    107           * @return      none
    108           **************************************************************************************************
    109           */

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
    110          void macMemReadRam(macRam_t * pRam, uint8 * pData, uint8 len)
   \                     macMemReadRam:
    111          {
   \   000000   74F7         MOV     A,#-0x9
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 9
   \   000005                ; Auto size: 0
   \   000005   801D         SJMP    ??macMemReadRam_0
    112            while (len)
    113            {
    114              len--;
   \                     ??macMemReadRam_1:
   \   000007   19           DEC     R1
    115              *pData = *pRam;
   \   000008   8A82         MOV     DPL,R2
   \   00000A   8B83         MOV     DPH,R3
   \   00000C   E0           MOVX    A,@DPTR
   \   00000D   8C82         MOV     DPL,R4
   \   00000F   8D83         MOV     DPH,R5
   \   000011   F0           MOVX    @DPTR,A
    116              pRam++;
   \   000012   8A82         MOV     DPL,R2
   \   000014   8B83         MOV     DPH,R3
   \   000016   A3           INC     DPTR
   \   000017   AA82         MOV     R2,DPL
   \   000019   AB83         MOV     R3,DPH
    117              pData++;
   \   00001B   8C82         MOV     DPL,R4
   \   00001D   8D83         MOV     DPH,R5
   \   00001F   A3           INC     DPTR
   \   000020   AC82         MOV     R4,DPL
   \   000022   AD83         MOV     R5,DPH
    118            }
   \                     ??macMemReadRam_0:
   \   000024   E9           MOV     A,R1
   \   000025   70E0         JNZ     ??macMemReadRam_1
    119          }
   \   000027   80..         SJMP    ?Subroutine0
    120          
    121          
    122          /**************************************************************************************************
    123           * @fn          macMemWriteTxFifo
    124           *
    125           * @brief       Write multiple bytes to the transmit FIFO.
    126           *
    127           * @param       pData - pointer to bytes to be written to TX FIFO
    128           * @param       len   - number of bytes to write
    129           *
    130           * @return      none
    131           **************************************************************************************************
    132           */

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
    133          void macMemWriteTxFifo(uint8 * pData, uint8 len)
   \                     macMemWriteTxFifo:
    134          {
   \   000000   74F7         MOV     A,#-0x9
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 9
   \   000005                ; Auto size: 0
   \   000005   EA           MOV     A,R2
   \   000006   FE           MOV     R6,A
   \   000007   EB           MOV     A,R3
   \   000008   FF           MOV     R7,A
   \   000009   89..         MOV     ?V0 + 0,R1
    135            MAC_ASSERT(len != 0); /* pointless to write zero bytes */
   \   00000B   E9           MOV     A,R1
   \   00000C   7003         JNZ     ??macMemWriteTxFifo_0
   \   00000E                ; Setup parameters for call to function halAssertHandler
   \   00000E   12....       LCALL   ??halAssertHandler?relay
    136          
    137            do
    138            {
    139              RFD = *pData;
   \                     ??macMemWriteTxFifo_0:
   \   000011   8E82         MOV     DPL,R6
   \   000013   8F83         MOV     DPH,R7
   \   000015   E0           MOVX    A,@DPTR
   \   000016   F5D9         MOV     0xd9,A
    140              pData++;
   \   000018   A3           INC     DPTR
   \   000019   AE82         MOV     R6,DPL
   \   00001B   AF83         MOV     R7,DPH
    141              len--;
    142            }
    143            while (len);
   \   00001D   15..         DEC     ?V0 + 0
   \   00001F   E5..         MOV     A,?V0 + 0
   \   000021   70EE         JNZ     ??macMemWriteTxFifo_0
    144          }
   \   000023                REQUIRE ?Subroutine0
   \   000023                REQUIRE RFD
   \   000023                ; // Fall through to label ?Subroutine0
    145          
    146          
    147          /**************************************************************************************************
    148           * @fn          macMemReadRxFifo
    149           *
    150           * @brief       Read multiple bytes from receive FIFO.
    151           *
    152           * @param       pData - pointer to location to store read data
    153           * @param       len   - number of bytes to read from RX FIFO
    154           *
    155           * @return      none
    156           **************************************************************************************************
    157           */

   \                                 In  segment BANKED_CODE, align 1, keep-with-next
    158          void macMemReadRxFifo(uint8 * pData, uint8 len)
   \                     macMemReadRxFifo:
    159          {
   \   000000   74F7         MOV     A,#-0x9
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 9
   \   000005                ; Auto size: 0
   \   000005   EA           MOV     A,R2
   \   000006   FE           MOV     R6,A
   \   000007   EB           MOV     A,R3
   \   000008   FF           MOV     R7,A
   \   000009   89..         MOV     ?V0 + 0,R1
    160            MAC_ASSERT(len != 0); /* pointless to read zero bytes */
   \   00000B   E9           MOV     A,R1
   \   00000C   7003         JNZ     ??macMemReadRxFifo_0
   \   00000E                ; Setup parameters for call to function halAssertHandler
   \   00000E   12....       LCALL   ??halAssertHandler?relay
    161          
    162            do
    163            {
    164              *pData = RFD;
   \                     ??macMemReadRxFifo_0:
   \   000011   E5D9         MOV     A,0xd9
   \   000013   8E82         MOV     DPL,R6
   \   000015   8F83         MOV     DPH,R7
   \   000017   F0           MOVX    @DPTR,A
    165              pData++;
   \   000018   A3           INC     DPTR
   \   000019   AE82         MOV     R6,DPL
   \   00001B   AF83         MOV     R7,DPH
    166              len--;
    167            }
    168            while (len);
   \   00001D   15..         DEC     ?V0 + 0
   \   00001F   E5..         MOV     A,?V0 + 0
   \   000021   70EE         JNZ     ??macMemReadRxFifo_0
    169          }
   \   000023   80..         SJMP    ?Subroutine0
   \   000025                REQUIRE RFD

   \                                 In  segment BANK_RELAYS, align 1
   \                     ??macMemReadRamByte?relay:
   \   000000   12....       LCALL   ?BDISPATCH
   \   000003   ......       DC24    macMemReadRamByte

   \                                 In  segment BANK_RELAYS, align 1
   \                     ??macMemWriteRam?relay:
   \   000000   12....       LCALL   ?BDISPATCH
   \   000003   ......       DC24    macMemWriteRam

   \                                 In  segment BANK_RELAYS, align 1
   \                     ??macMemReadRam?relay:
   \   000000   12....       LCALL   ?BDISPATCH
   \   000003   ......       DC24    macMemReadRam

   \                                 In  segment BANK_RELAYS, align 1
   \                     ??macMemWriteTxFifo?relay:
   \   000000   12....       LCALL   ?BDISPATCH
   \   000003   ......       DC24    macMemWriteTxFifo

   \                                 In  segment BANK_RELAYS, align 1
   \                     ??macMemReadRxFifo?relay:
   \   000000   12....       LCALL   ?BDISPATCH
   \   000003   ......       DC24    macMemReadRxFifo
    170          
    171          
    172          /**************************************************************************************************
    173          */

   Maximum stack usage in bytes:

     Function              ISTACK PSTACK XSTACK
     --------              ------ ------ ------
     macMemReadRam             1      0      9
     macMemReadRamByte         2      0      0
     macMemReadRxFifo          1      0      9
       -> halAssertHandler     0      0     18
     macMemWriteRam            1      0      9
     macMemWriteTxFifo         0      0      9
       -> halAssertHandler     0      0     18


   Segment part sizes:

     Function/Label            Bytes
     --------------            -----
     RFD                          1
     macMemReadRamByte           17
     macMemWriteRam              37
     ?Subroutine0                 5
     macMemReadRam               41
     macMemWriteTxFifo           35
     macMemReadRxFifo            37
     ??macMemReadRamByte?relay    6
     ??macMemWriteRam?relay       6
     ??macMemReadRam?relay        6
     ??macMemWriteTxFifo?relay    6
     ??macMemReadRxFifo?relay     6

 
 172 bytes in segment BANKED_CODE
  30 bytes in segment BANK_RELAYS
   1 byte  in segment SFR_AN
 
 202 bytes of CODE memory
   0 bytes of DATA memory (+ 1 byte shared)

Errors: none
Warnings: none
