📄 startup.lst
字号:
249 ; processor mode register 0,1
250 00008 B70400 Z mov.b #00000000B,pm0 ; single chip mode
251 0000B B70500 Z mov.b #00000000B,pm1 ; no expand, no wait
252 0000E 7E8F5100 bclr prc1 ; disable to write
253 ; processor mode register 0,1
254 ; ----- initialize system clock control register -----
255 00012 7E9F5000 bset prc0 ; enable to write
256 ; system clock control regis
257 00016 C7080600 S mov.b #00001000B,cm0 ; oscillate main clock
258 0001A C7080700 S mov.b #00001000B,cm1 ; no main clock division
259 0001E B70C00 Z mov.b #00H,ocd ; oscillation stop detection register:select
260 00021 7E8F5000 bclr prc0 ; disable to write
261 ; system clock control regis
262 ;==============================================================================
263
264 00025 EB300000 ldc #0H,FLG ; initialize FLG register
265 00029 EB700000 ldc #0H,FB ; initialize FB register
266 0002D EB600004 ldc #data_NE_top,SB ; initialize SB register
267 ; (for compiler)
268 00031 EB200000 ldintb #0FEDCH ; initialize INTB register
EB10DCFE
269 ;
270 00039 F50D00 W jsr RAMCLR ; clear data section with 0
271 0003C F51F00 W jsr DATINI ; transfer initial value to data sec
272 ;
273 0003F EB64 fset I ; interrupt permission
274 ; (for OAKS8-LCDBoard periph
275 ;
276 00041 FD000000r A jsr _main ; call main() function
277 ;
278 00045 _exit: ; end of program
279 ; (infinite loop status)
280 00045 $exit:
281 00045 FEFF B jmp _exit ; call exit() function
282
283
284 ;""SUBR COMMENT""**************************************************************
285 ; ID : ---
286 ; subroutine name : RAMCLR
287 ; function : clear data section with 0
288 ; : (clear section for static varialbe without initial value with 0)
289 ; input : none
290 ; output : none
291 ; subroutin used : none
292 ; stack : 0 byte
293 ; notice : use macor N_BZERO
294 ; History : ---
295 ;""SUBR COMMENT END""**********************************************************
296 00047 RAMCLR:
297 N_BZERO bss_NE_top,bss_NE
298 00047 B4 M Z mov.b #00H, R0L
299 00048 AA0005 M S mov.w #(bss_NE_top & 0FFFFH), A1
300 0004B 75C30000r M mov.w #sizeof bss_NE , R3
301 0004F 7CEA M sstr.b
302 M .endm
303 N_BZERO bss_NO_top,bss_NO
304 00051 B4 M Z mov.b #00H, R0L
305 00052 AA0000r M S mov.w #(bss_NO_top & 0FFFFH), A1
306 00055 75C30000r M mov.w #sizeof bss_NO , R3
307 00059 7CEA M sstr.b
308 M .endm
309 0005B RAMCLR_END:
* R8C/Tiny SERIES ASSEMBLER * SOURCE LIST Thu Oct 14 17:31:43 2004 PAGE 006
SEQ. LOC. OBJ. 0XMSDA ....*....SOURCE STATEMENT....7....*....8....*....9....*....0....*....1....*....2....*....3....*....4
310 0005B F3 rts
311
312
313 ;""SUBR COMMENT""**************************************************************
314 ; ID : ---
315 ; subroutine name : DATINI
316 ; function : transfer initial value to data section
317 ; : (transfer initial value to section for static variable with initial value)
318 ; input : none
319 ; output : none
320 ; subroutine used : none
321 ; stack : 0 byte
322 ; notice : use macro N_BCOPY
323 ; History : ---
324 ;""SUBR COMMENT END""**********************************************************
325 0005C DATINI:
326 N_BCOPY data_NEI_top,data_NE_top,data_NE
327 0005C A200FC M S mov.w #(data_NEI_top & 0FFFFH),A0
328 0005F 74C300 M mov.b #(data_NEI_top >>16),R1H
329 00062 AA0004 M S mov.w #data_NE_top ,A1
330 00065 75C30000r M mov.w #sizeof data_NE , R3
331 00069 7CE8 M smovf.b
332 M .endm
333 N_BCOPY data_NOI_top,data_NO_top,data_NO
334 0006B A20000r M S mov.w #(data_NOI_top & 0FFFFH),A0
335 0006E 74C300r M mov.b #(data_NOI_top >>16),R1H
336 00071 AA0000r M S mov.w #data_NO_top ,A1
337 00074 75C30000r M mov.w #sizeof data_NO , R3
338 00078 7CE8 M smovf.b
339 M .endm
340 0007A DATINI_END:
341 0007A F3 rts
342
343
344 ;==============================================================================
345 ; dummy interrupt program
346 ;------------------------------------------------------------------------------
347 0007B DUMMY_INT:
348 0007B FB reit ;command for returning from
349
350
351 .end
Information List
TOTAL ERROR(S) 00000
TOTAL WARNING(S) 00000
TOTAL LINE(S) 00351 LINES
Section List
Attr Size Name
DATA 0000000(00000H) data_NE
DATA 0000000(00000H) data_NO
DATA 0000000(00000H) bss_NE
DATA 0000000(00000H) bss_NO
DATA 0000255(000FFH) stack
CODE 0000000(00000H) startup
CODE 0000000(00000H) program
ROMDATA 0000000(00000H) rom_NE
ROMDATA 0000000(00000H) rom_NO
ROMDATA 0000000(00000H) data_NEI
ROMDATA 0000000(00000H) data_NOI
CODE 0000000(00000H) interrupt_vector
CODE 0000036(00024H) fix_interrupt_vector
CODE 0000124(0007CH) startup
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -