; 78K0R C Compiler V2.10 Assembler Source Date:13 Jun 2010 Time:19:31:25 ; Command : -c9F0104 -yC:\Program Files\NEC Electronics Tools\DEV -_msgoff -i ; renge -iC:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\ ; V1.20\inc78k0r -ms -qvjl3wt -sainter_asm -zp -no reboot.c ; In-file : reboot.c ; Asm-file : inter_asm\reboot.asm ; Para-file : $PROCESSOR(9F0104) $DEBUG $NODEBUGA $KANJICODE SJIS $TOL_INF 03FH, 0210H, 02H, 00H, 00H, 00H, 00H $DGS FIL_NAM, .file, 019H, 0FFFEH, 03FH, 067H, 01H, 00H $DGS AUX_FIL, reboot.c $DGS MOD_NAM, reboot, 00H, 0FFFEH, 00H, 077H, 00H, 00H $DGS SEC_NAM, @@BITS, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@CNST, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@R_INIT, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@INIT, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@DATA, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@R_INIS, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@INIS, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@DATS, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, LDR_CNSL, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@RLINIT, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@INITL, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@DATAL, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@CALT, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, LDR_CODE, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, LDR_CODL, U, U, 00H, 078H, 00H, 00H $DGS SEC_NAM, @@BASE, U, U, 00H, 078H, 00H, 00H $DGS GLV_SYM, _my_reboot, U, U, 01H, 026H, 01H, 02H $DGS AUX_FUN, 00H, U, U, 019H, 00H, 00H $DGS BEG_FUN, ??bf_my_reboot, U, U, 00H, 065H, 01H, 00H $DGS AUX_BEG, 0EH, 00H, 019H $DGS END_FUN, ??ef_my_reboot, U, U, 00H, 065H, 01H, 00H $DGS AUX_END, 0BH PUBLIC _my_reboot @@BITS BSEG @@CNST CSEG MIRRORP @@R_INIT CSEG UNIT64KP @@INIT DSEG BASEP @@DATA DSEG BASEP @@R_INIS CSEG UNIT64KP @@INIS DSEG SADDRP @@DATS DSEG SADDRP LDR_CNSL CSEG PAGE64KP @@RLINIT CSEG UNIT64KP @@INITL DSEG UNIT64KP @@DATAL DSEG UNIT64KP @@CALT CSEG CALLT0 ; line 1 : /********************************************************//* ; line 2 : ; line 3 : むりやりリブート ; line 4 : ; line 5 : ファイル中にインラインアセンブラがあると、 ; line 6 : そのモジュール全部最適化が聞かなくなるため追い出した ; line 7 : ; line 8 : **********************************************************/ ; line 9 : #pragma SFR ; line 10 : ; line 11 : #include "incs_loader.h" ; line 12 : ; line 13 : ; line 14 : void my_reboot(){ LDR_CODE CSEG BASE _my_reboot: $DGL 1,19 ??bf_my_reboot: ; line 15 : #asm $DGL 0,4 MOV PSW,#06H ; ダミーのPSWをセット $DGL 0,5 MOVW AX,#000d0h ; リセットのベクタ値を取り込んでいます。 $DGL 0,6 PUSH PSW $DGL 0,7 PUSH AX ; これでRETIのためのスタックを準備 $DGL 0,8 RETI ; これでリセット・ベクタに分岐 ; line 16 : ; line 17 : MOV PSW,#06H ; ダミーのPSWをセット ; line 18 : MOVW AX,#000d0h ; リセットのベクタ値を取り ; 込んでいます。 ; line 19 : PUSH PSW ; line 20 : PUSH AX ; これでRETIのためのスタック ; を準備 ; line 21 : RETI ; これでリセット・ベクタに分 ; 岐 ; line 22 : ; line 23 : #endasm ; line 24 : } $DGL 0,11 ??ef_my_reboot: ret ;[INF] 1, 6 ??ee_my_reboot: LDR_CODL CSEG @@BASE CSEG BASE END ; *** Code Information *** ; ; $FILE C:\78k_data\yav-mcu-basara\branches\0.10(fix)\reboot.c ; ; $FUNC my_reboot(14) ; void=(void) ; CODE SIZE= 1 bytes, CLOCK_SIZE= 6 clocks, STACK_SIZE= 0 bytes ; Target chip : uPD79F0104 ; Device file : E1.00b