;-------------------------------------------------------------------------- ; asx8051 code for Texas Intruments MSC12xx MCU family ROM routines ; ; Written By - Philippe Latu / philippe.latu(at)linux-france.org ; $Id: rom1210.asm 1126 2007-05-06 21:58:55Z latu $ ; ; Copyright (C) 2006,2007 Philippe Latu ; ; This library is free software; you can redistribute it and/or ; modify it under the terms of the GNU Lesser General Public ; License as published by the Free Software Foundation; either ; version 2.1 of the License, or (at your option) any later version. ; ; This library is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ; Lesser General Public License for more details. ; ; You should have received a copy of the GNU Lesser General Public ; License along with this library; if not, write to the Free Software ; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ; ;----------------------------------------------------------------------------- .globl _put_string ; void put_string(char code *string); .globl _page_erase ; char page_erase (int faddr, char fdata, char fdm); .globl _write_flash ; char write_flash (int faddr, char fdata, char fdm); .globl _write_flash_chk ; char write_flash_chk (int faddr, char fdata, char fdm); .globl _write_flash_byte ; char write_flash_byte (int faddr, char fdata, char fdm); .globl _faddr_data_read ; char faddr_data_read(char); .globl _data_x_c_read ; char data_x_c_read(int addr); .globl _tx_byte ; void tx_byte(char); .globl _tx_hex ; void tx_hex(char); .globl _putok ; void putok(void); .globl _rx_byte ; char rx_byte(void); .globl _rx_byte_echo ; char rx_byte_echo(void); .globl _rx_hex_echo ; char rx_hex_echo(void); .globl _rx_hex_double_echo ; char rx_double_echo(void); .globl _rx_hex_word_echo ; char rx_word_echo(void); .globl _autobaud ; void autobaud(void); .globl _putspace4 ; void putspace4(void); .globl _putspace3 ; void putspace3(void); .globl _putspace2 ; void putspace2(void); .globl _putspace1 ; void putspace1(void); .globl _putcr ; void putcr(void); ; ; Interface to C compatible Boot ROM Built In Routines ; .area MSC1210 (ABS) .org 0xffd5 _put_string: ; void put_string(char *string); .org 0xffd7 _page_erase: ; char page_erase (int faddr, char fdata, char fdm) .org 0xffd9 _write_flash: ; DPTR = address, acc = data (Not callable by C programs) .org 0xffdb _write_flash_chk: ; char write_flash_chk (int faddr, char fdata, char fdm) .org 0xffdd _write_flash_byte: ; char write_flash_byte (int faddr, char fdata, char fdm) .org 0xffdf _faddr_data_read: ; char faddr_data_read(char); .org 0xffe1 _data_x_c_read: ; char data_x_c_read(int addr); .org 0xffe3 _tx_byte: ; void tx_byte(char); .org 0xffe5 _tx_hex: ; void tx_hex(char); .org 0xffe7 _putok: ; void putok(void); .org 0xffe9 _rx_byte: ; char rx_byte(void); .org 0xffeb _rx_byte_echo: ; char rx_byte_echo(void); .org 0xffed _rx_hex_echo: ; char rx_hex_echo(void); .org 0xffef _rx_hex_double_echo: ; char rx_double_echo(void); .org 0xfff1 _rx_hex_word_echo: ; char rx_word_echo(void); .org 0xfff3 _autobaud: ; void autobaud(void); .org 0xfff5 _putspace4: ; void putspace4(void) .org 0xfff7 _putspace3: ; void putspace3(void) .org 0xfff9 _putspace2: ; void putspace2(void) .org 0xfffb _putspace1: ; void putspace1(void) .org 0xfffd _putcr: ; void putcr(void);