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