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

📄 ncrt0.lst

📁 Mitsubishi M30245 SampleCode
💻 LST
📖 第 1 页 / 共 2 页
字号:
* M16C FAMILY ASSEMBLER *   SOURCE LIST       Tue Jun 18 15:18:39 2002  PAGE 001

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

     1                                  ;*************************************************************************** ;
     2                                  ;
     3                                  ;	ncrt0.a30	C COMPILER for M16C/60
     4                                  ;
     5                                  ;		NC30 startup program customized for the M30245
     6                                  ;		microcontroller.  This program is applicable when 
     7                                  ;		using the basic I/O library.
     8                                  ;
     9                                  ;		Revised: 2-27-2002
    10                                  ;       
    11                                  ;       Copyright 2002 MITSUBISHI ELECTRIC & ELECTRONICS USA, INC.
    12                                  ;       All Rights Reserved.
    13                                  ;
    14                                  ;***************************************************************************
    15                                  
    16                                  ;---------------------------------------------------------------------
    17                                  ; HEEP SIZE definition	 
    18                                  ;	(set to 0 if not using memory management functions(calloc,malloc))
    19                                  ;---------------------------------------------------------------------
    20                                  ;HEAPSIZE	.equ	300h
    21                                  ;HEAPSIZE	.equ	0h
    22                                  
    23                                  ;---------------------------------------------------------------------
    24                                  ; STACK SIZE definition
    25                                  ;---------------------------------------------------------------------
    26  00000300h                       STACKSIZE	.equ	300h
    27                                  
    28                                  ;---------------------------------------------------------------------
    29                                  ; INTERRUPT STACK SIZE definition
    30                                  ;---------------------------------------------------------------------
    31  00000300h                       ISTACKSIZE	.equ	300h
    32                                  
    33                                  ;---------------------------------------------------------------------
    34                                  ; INTERRUPT VECTOR ADDRESS  definition
    35                                  ;---------------------------------------------------------------------
    36                                  ;VECTOR_ADR 	.equ	0ffd00h
    37  000FE000h                       VECTOR_ADR 	.equ	0fe000h		; use with KD30
    38                                  
    39                                  ;---------------------------------------------------------------
    40                                  ; special page definition
    41                                  ;---------------------------------------------------------------
    42                                  ;       macro define for special page
    43                                  ;
    44                                  ;Format:
    45                                  ;	SPECIAL	number
    46                                  ;
    47                                  
    48                             D    SPECIAL	.macro	NUM
    49                             D    	.org	0FFFFEH-(NUM*2)
    50                             D    	.glb	__SPECIAL_@NUM
    51                             D    	.word	__SPECIAL_@NUM  & 0FFFFH
    52                                  .endm
    53                                  ;---------------------------------------------------------------------
    54                                  ; Section allocation
    55                                  ;---------------------------------------------------------------------
    56                                  	.list OFF
    57                                  	.list ON
    58                                  
    59                                  ;---------------------------------------------------------------------
    60                                  ; SBDATA area definition
    61                                  ;---------------------------------------------------------------------
    62                                  	.glb	__SB__
* M16C FAMILY ASSEMBLER *   SOURCE LIST       Tue Jun 18 15:18:39 2002  PAGE 002

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

    63  00000400h                       __SB__	.equ	data_SE_top
    64                                  
    65                                  ;====================================================================
    66                                  ; Initialize Macro declaration
    67                                  ;---------------------------------------------------------------------
    68                             D    N_BZERO	.macro	TOP_ ,SECT_
    69                             D    	mov.b	#00H, R0L
    70                             D    	mov.w	#(TOP_ & 0FFFFH), A1
    71                             D    	mov.w	#sizeof SECT_ , R3
    72                             D    	sstr.b	
    73                                  	.endm
    74                                  
    75                             D    N_BCOPY .macro	FROM_,TO_,SECT_
    76                             D    	mov.w	#(FROM_ & 0FFFFH),A0
    77                             D    	mov.b	#(FROM_ >>16),R1H
    78                             D    	mov.w	#TO_ ,A1
    79                             D    	mov.w	#sizeof SECT_ , R3
    80                             D    	smovf.b
    81                                  	.endm
    82                                  
    83                             D    BZERO	.macro	TOP_,SECT_
    84                             D    	push.w	#sizeof SECT_ >> 16
    85                             D    	push.w	#sizeof SECT_  & 0ffffh
    86                             D    	pusha	TOP_ >>16
    87                             D    	pusha	TOP_ & 0ffffh
    88                             D    	.stk	8
    89                             D    	.glb	_bzero	
    90                             D    	.call	_bzero,G
    91                             D    	jsr.a	_bzero
    92                                  	.endm
    93                                  
    94                             D    BCOPY	.macro	FROM_ ,TO_ ,SECT_
    95                             D    	push.w	#sizeof SECT_  >> 16
    96                             D    	push.w	#sizeof SECT_  & 0ffffh
    97                             D    	pusha	TO_ >>16
    98                             D    	pusha	TO_  & 0ffffh
    99                             D    	pusha	FROM_ >>16
   100                             D    	pusha	FROM_  & 0ffffh
   101                             D    	.stk	12
   102                             D    	.glb	_bcopy
   103                             D    	.call   _bcopy,G
   104                             D    	jsr.a	_bcopy
   105                                  	.endm
   106                                  
   107                                  ;====================================================================
   108                                  ; Interrupt section start
   109                                  ;---------------------------------------------------------------------
   110                                  	.insf	start,S,0
   111                                  	.glb	start
   112                                  	.section	interrupt
   113  00000                           start:
   114                                  ;---------------------------------------------------------------------
   115                                  ; after reset,this program will start
   116                                  ;---------------------------------------------------------------------
   117  00000  C7020A00              S  	mov.b	#02h,0ah		;disable register protect 
   118  00004  B70400                Z  	mov.b	#00h,04h		;set processor mode 
   119  00007  B70A00                Z  	mov.b	#00h,0ah		;enable register protect
   120                                  
   121  0000A  EB308000                 	ldc	#0080h,	flg
   122  0000E  EB400000r                	ldc	#istack_top, isp	;set istack pointer
   123  00012  EB500000r                	ldc	#stack_top, sp		;set stack pointer 
   124                                  ;	ldc	#stack_top, fb
* M16C FAMILY ASSEMBLER *   SOURCE LIST       Tue Jun 18 15:18:39 2002  PAGE 003

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

   125  00016  EB600004                 	ldc	#data_SE_top, sb	;set sb register 
   126  0001A  EB200F00                 	ldintb	#VECTOR_ADR		;load start addr of interrupt vector table 
               EB1000E0 
   127                                  
   128                                  ;====================================================================

⌨️ 快捷键说明

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