⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ncrt0.lst

📁 这是用RENESAS公司的单片机开发的变频器的方案
💻 LST
📖 第 1 页 / 共 2 页
字号:
* R8C/Tiny,M16C/60 SERIES ASSEMBLER *   SOURCE LIST       Wed Aug 23 09:18:16 2006  PAGE 001

  SEQ.  LOC.   OBJ.              0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0

     1                                  ;*************************************************************************** ;
     2                                  ; C COMPILER for R8C/Tiny, M16C/60,30,20,10
     3                                  ; Copyright(C) 1999(2000-2004). Renesas Technology Corp.
     4                                  ; and Renesas Solutions Corp., All rights reserved.
     5                                  ;
     6                                  ;
     7                                  ; ncrt0.a30 : NC30 startup program
     8                                  ;
     9                                  ; This program is applicable when using the basic I/O library
    10                                  ;       
    11                                  ; $Date: 2005/11/08 11:25:56 $
    12                                  ; $Revision: 1.35 $
    13                                  ;***************************************************************************
    14                                  
    15                                  ;--------------------------------------------------------------------
    16                                  ; set size of monitor area for FoUSB
    17                                  ;--------------------------------------------------------------------
    18                                  .if	_KD_
    19                                  .if	_Firmware_space == 0
    20  00000600h                       FoUSB_MON	.equ	600H	; for default
    21                                  .else
    22                                  .endif
    23                                  .endif
    24                                  ;---------------------------------------------------------------------
    25                                  ; HEEP SIZE definition
    26                                  ;---------------------------------------------------------------------
    27                                  .if	__HEAP__ == 1 
    28  00000000h                       HEAPSIZE	.equ	0H
    29                                  .else
    30                            X     .if	__HEAPSIZE__ == 0
    31                            X     .else
    32                            X     .endif
    33                                  .endif
    34                                  
    35                                  ;---------------------------------------------------------------------
    36                                  ; STACK SIZE definition
    37                                  ;---------------------------------------------------------------------
    38                                  .if	__USTACKSIZE__ == 0
    39                                  .if	__R8C__ != 1
    40  00000300h                       STACKSIZE	.equ	300h
    41                                  .else
    42                                  .endif
    43                                  .else
    44                                  .endif
    45                                  
    46                                  ;---------------------------------------------------------------------
    47                                  ; INTERRUPT STACK SIZE definition
    48                                  ;---------------------------------------------------------------------
    49                                  .if	__ISTACKSIZE__ == 0
    50                                  .if	__R8C__ != 1
    51  00000300h                       ISTACKSIZE	.equ	300h
    52                                  .else
    53                                  .endif
    54                                  .else
    55                                  .endif
    56                                  
    57                                  ;---------------------------------------------------------------------
    58                                  ; INTERRUPT VECTOR ADDRESS  definition
    59                                  ;---------------------------------------------------------------------
    60                                  .if	__R8C__ != 1
    61                                  .if	_KD_ == 1
    62                                  	; for FoUSB's monitor area
* R8C/Tiny,M16C/60 SERIES ASSEMBLER *   SOURCE LIST       Wed Aug 23 09:18:16 2006  PAGE 002

  SEQ.  LOC.   OBJ.              0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0

    63                                  	; 64 is variable vector's number
    64                                  	; 4 is each vector's size
    65  000FF800h                       VECTOR_ADR 	.equ	0ff900h - (64*4)
    66  000FFE00h                       SVECTOR_ADR 	.equ	0ffe00h
    67                                  .else
    68                                  .endif // _KD_
    69                                  .else
    70                                  .endif
    71                                  
    72                                  ;---------------------------------------------------------------------
    73                                  ; Section allocation
    74                                  ;---------------------------------------------------------------------
    75                                  	.list OFF
    76                                  	.list ON
    77                                  
    78                                  ;---------------------------------------------------------------------
    79                                  ; SBDATA area definition
    80                                  ;---------------------------------------------------------------------
    81                                  	.glb	__SB__
    82  00000400h                       __SB__	.equ	data_SE_top
    83                                  
    84                                  ;====================================================================
    85                                  ; Initialize Macro declaration
    86                                  ;---------------------------------------------------------------------
    87                             D    N_BZERO	.macro	TOP_ ,SECT_
    88                             D    	mov.b	#00H, R0L
    89                             D    	mov.w	#(TOP_ & 0FFFFH), A1
    90                             D    	mov.w	#sizeof SECT_ , R3
    91                             D    	sstr.b	
    92                                  	.endm
    93                                  
    94                             D    N_BCOPY .macro	FROM_,TO_,SECT_
    95                             D    	mov.w	#(FROM_ & 0FFFFH),A0
    96                             D    	mov.b	#(FROM_ >>16),R1H
    97                             D    	mov.w	#TO_ ,A1
    98                             D    	mov.w	#sizeof SECT_ , R3
    99                             D    	smovf.b
   100                                  	.endm
   101                                  
   102                             D    BZERO	.macro	TOP_,SECT_
   103                             D    	push.w	#sizeof SECT_ >> 16
   104                             D    	push.w	#sizeof SECT_  & 0ffffh
   105                             D    	pusha	TOP_ >>16
   106                             D    	pusha	TOP_ & 0ffffh
   107                             D    	.stk	8
   108                             D    	.glb	_bzero	
   109                             D    	.call	_bzero,G
   110                             D    	jsr.a	_bzero
   111                                  	.endm
   112                                  
   113                             D    BCOPY	.macro	FROM_ ,TO_ ,SECT_
   114                             D    	push.w	#sizeof SECT_  >> 16
   115                             D    	push.w	#sizeof SECT_  & 0ffffh
   116                             D    	pusha	TO_ >>16
   117                             D    	pusha	TO_  & 0ffffh
   118                             D    	pusha	FROM_ >>16
   119                             D    	pusha	FROM_  & 0ffffh
   120                             D    	.stk	12
   121                             D    	.glb	_bcopy
   122                             D    	.call   _bcopy,G
   123                             D    	jsr.a	_bcopy
   124                                  	.endm
* R8C/Tiny,M16C/60 SERIES ASSEMBLER *   SOURCE LIST       Wed Aug 23 09:18:16 2006  PAGE 003

  SEQ.  LOC.   OBJ.              0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4....*....5....*....6....*....7....*....8....*....9....*....0

   125                                  
   126                                  .if	__R8C__ != 1
   127                                  ;
   128                                  ; for M16C/60,30,20,10 series
   129                                  ;
   130                                  ;		.glb	__BankSelect
   131                                  ;__BankSelect	.equ	0BH
   132                                  
   133                                  ;---------------------------------------------------------------
   134                                  ; special page definition
   135                                  ;---------------------------------------------------------------
   136                                  ;       macro define for special page
   137                                  ;
   138                                  ;Format:
   139                                  ;	SPECIAL	number
   140                                  ;
   141                                  
   142                             D    SPECIAL	.macro	NUM
   143                             D    	.org	0FFFFEH-(NUM*2)
   144                             D    	.glb	__SPECIAL_@NUM
   145                             D    	.word	__SPECIAL_@NUM  & 0FFFFH
   146                                  .endm
   147                                  ;====================================================================
   148                                  ; Interrupt section start
   149                                  ;---------------------------------------------------------------------
   150                                  	.insf	start,S,0
   151                                  	.glb	start
   152                                  	.section	interrupt
   153  00000                           start:
   154                                  ;---------------------------------------------------------------------
   155                                  ; after reset,this program will start
   156                                  ;---------------------------------------------------------------------
   157  00000  EB400000r                	ldc	#istack_top,	isp	;set istack pointer
   158  00004  C7020A00              S  	mov.b	#02h,0ah
   159  00008  B70400                Z  	mov.b	#00h,04h		;set processer mode 
   160  0000B  B70A00                Z  	mov.b	#00h,0ah
   161  0000E  EB308000                 	ldc	#0080h,	flg
   162  00012  EB500000r                	ldc	#stack_top,	sp	;set stack pointer 
   163  00016  EB600004                 	ldc	#data_SE_top,	sb	;set sb register 
   164  0001A  EB200F00                 	ldintb	#VECTOR_ADR
               EB1000F8 
   165                                  
   166                                  ;====================================================================
   167                                  ; NEAR area initialize.
   168                                  ;--------------------------------------------------------------------
   169                                  ; bss zero clear
   170                                  ;--------------------------------------------------------------------
   171                                  	N_BZERO	bss_SE_top,bss_SE
   172  00022  B4                  M Z  	mov.b	#00H, R0L
   173  00023  AA0000r             M S  	mov.w	#(bss_SE_top & 0FFFFH), A1
   174  00026  75C30000r           M    	mov.w	#sizeof bss_SE , R3
   175  0002A  7CEA                M    	sstr.b	
   176                             M    	.endm
   177                                  	N_BZERO	bss_SO_top,bss_SO
   178  0002C  B4                  M Z  	mov.b	#00H, R0L
   179  0002D  AA0000r             M S  	mov.w	#(bss_SO_top & 0FFFFH), A1
   180  00030  75C30000r           M    	mov.w	#sizeof bss_SO , R3
   181  00034  7CEA                M    	sstr.b	
   182                             M    	.endm
   183                                  	N_BZERO	bss_NE_top,bss_NE
   184  00036  B4                  M Z  	mov.b	#00H, R0L
   185  00037  AA0000r             M S  	mov.w	#(bss_NE_top & 0FFFFH), A1

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -