diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2016-06-12 20:05:14 +0200 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2016-06-12 20:05:14 +0200 |
| commit | df46fa7b9d2a9e8764957b8665292d67f9b97de9 (patch) | |
| tree | 9598663d035ab55f597ecc6f33b2b1fbb6982538 /Debug/POWER.lst | |
| download | fx-battery-master.tar.gz fx-battery-master.zip | |
Diffstat (limited to 'Debug/POWER.lst')
| -rw-r--r-- | Debug/POWER.lst | 665 |
1 files changed, 665 insertions, 0 deletions
diff --git a/Debug/POWER.lst b/Debug/POWER.lst new file mode 100644 index 0000000..354c1ec --- /dev/null +++ b/Debug/POWER.lst @@ -0,0 +1,665 @@ +SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 1
+
+************ OBJECT LISTING ************
+
+FILE NAME: G:\Casio SDK\Projekte\Battery\POWER.c
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ POWER.c 1 #include "fxlib.h"
+ POWER.c 2
+ POWER.c 3 // instant syscalls (fx-9860)
+ POWER.c 4 #define SCA 0xD201D002
+ POWER.c 5 #define SCB 0x422B0009
+ POWER.c 6 #define SCE 0x80010070
+ POWER.c 7 typedef void(*sc_vpuc)(unsigned char*);
+ POWER.c 8 typedef int(*sc_iv)(void);
+ POWER.c 9 typedef int(*sc_i2pui)( unsigned int*, unsigned int* );
+ POWER.c 10 typedef int(*sc_i4pui)( unsigned int*, unsigned int*, unsigned int*, unsigned int* );
+ POWER.c 11 typedef int(*sc_i2puc2pus)( unsigned char*, unsigned char*, unsigned short*, unsigned short* );
+ POWER.c 12 typedef int(*sc_iipci)( int, unsigned char*, int );
+ POWER.c 13 const unsigned int sc003B[] = { SCA, SCB, SCE, 0x003B };
+ POWER.c 14 #define RTC_GetTicks (*(sc_iv)sc003B)
+ POWER.c 15 const unsigned int sc0D65[] = { SCA, SCB, SCE, 0x0D65 };
+ POWER.c 16 #define InputDateMonth (*(sc_i2pui)sc0D65)
+ POWER.c 17 const unsigned int sc0D67[] = { SCA, SCB, SCE, 0x0D67 };
+ POWER.c 18 #define InputDateYear (*(sc_i2pui)sc0D67)
+ POWER.c 19 const unsigned int sc0D64[] = { SCA, SCB, SCE, 0x0D64 };
+ POWER.c 20 #define InputDate (*(sc_i4pui)sc0D64)
+ POWER.c 21 const unsigned int sc0015[] = { SCA, SCB, SCE, 0x0015 };
+ POWER.c 22 #define GlibGetOSVersionInfo (*(sc_i2puc2pus)sc0015)
+ POWER.c 23 const unsigned int sc06C4[] = { SCA, SCB, SCE, 0x06C4 };
+ POWER.c 24 #define KBD_PRGM_GetKey (*(sc_vpuc)sc06C4)
+ POWER.c 25 const unsigned int sc0160[] = { SCA, SCB, SCE, 0x0160 };
+ POWER.c 26 #define LongToAsc (*(sc_iipci)sc0160)
+ POWER.c 27 // instant syscalls
+ POWER.c 28
+ POWER.c 29 // for fx9860 only!
+ POWER.c 30 #define PORT_E_DR 0xA4000128
+ POWER.c 31
+ POWER.c 32 //
+ POWER.c 33 #define OS202GII2 0x02020000
+ POWER.c 34 //
+ POWER.c 35 char IsSlim(){
+P 00000000 _IsSlim: ; function: IsSlim
+ ; frame size=4
+ 00000000 4F22 STS.L PR,@-R15
+ POWER.c 36 if ( ( OSVersionAsInt() & 0xFFFF0000 ) == OS202GII2 ) return 0;
+ 00000002 B020 BSR _OSVersionAsInt
+ 00000004 0009 NOP
+ 00000006 D23F MOV.L L381+10,R2 ; H'FFFF0000
+ 00000008 D33F MOV.L L381+14,R3 ; H'02020000
+ 0000000A 2029 AND R2,R0
+ 0000000C 3030 CMP/EQ R3,R0
+ 0000000E 8B02 BF L356
+ 00000010 4F26 LDS.L @R15+,PR
+ 00000012 000B RTS
+ 00000014 E000 MOV #0,R0
+ 00000016 L356:
+ POWER.c 37 else return !( *(char*)PORT_E_DR & 0x08 );
+ 00000016 D13D MOV.L L381+18,R1 ; H'A4000128
+ 00000018 6010 MOV.B @R1,R0
+ 0000001A C808 TST #8,R0
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 2
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0000001C 0029 MOVT R0
+ POWER.c 38 }
+ 0000001E L357:
+ 0000001E 4F26 LDS.L @R15+,PR
+ 00000020 000B RTS
+ 00000022 0009 NOP
+ POWER.c 39 //
+ POWER.c 40 char IsSD(){
+ 00000024 _IsSD: ; function: IsSD
+ ; frame size=0
+ POWER.c 41 return ( *(char*)PORT_E_DR & 0x01 );
+ 00000024 D339 MOV.L L381+18,R3 ; H'A4000128
+ 00000026 6030 MOV.B @R3,R0
+ POWER.c 42 }
+ 00000028 000B RTS
+ 0000002A C901 AND #1,R0
+ POWER.c 43
+ POWER.c 44 //
+ POWER.c 45 int IsEmulator(){
+ 0000002C _IsEmulator: ; function: IsEmulator
+ ; frame size=0
+ POWER.c 46 return !( *(int*)0x8000FFD0 || *(int*)0x8000FFD4 );
+ 0000002C D138 MOV.L L381+22,R1 ; H'8000FFD0
+ 0000002E 6212 MOV.L @R1,R2
+ 00000030 2228 TST R2,R2
+ 00000032 8B05 BF L362
+ 00000034 D337 MOV.L L381+26,R3 ; H'8000FFD4
+ 00000036 6232 MOV.L @R3,R2
+ 00000038 2228 TST R2,R2
+ 0000003A 8B01 BF L362
+ 0000003C 000B RTS
+ 0000003E E001 MOV #1,R0
+ 00000040 L362:
+ 00000040 E000 MOV #0,R0
+ POWER.c 47 }
+ 00000042 L364:
+ 00000042 000B RTS
+ 00000044 0009 NOP
+ POWER.c 48
+ POWER.c 49 #define OS102 0x01020000
+ POWER.c 50 #define OS103 0x01030000
+ POWER.c 51 #define OS104 0x01040000
+ POWER.c 52 #define OS105 0x01050000
+ POWER.c 53 #define OS1051 0x01051000
+ POWER.c 54 #define OS110 0x01100000
+ POWER.c 55 #define OS111 0x01110000
+ POWER.c 56 #define OS200 0x02000300
+ POWER.c 57 #define OS200slim 0x02000100
+ POWER.c 58 #define OS200GII 0x02000200
+ POWER.c 59
+ POWER.c 60 //
+ POWER.c 61 int OSVersionAsInt( void ){
+ 00000046 _OSVersionAsInt: ; function: OSVersionAsInt
+ ; frame size=20
+ 00000046 4F22 STS.L PR,@-R15
+ POWER.c 62 unsigned char mainversion;
+ POWER.c 63 unsigned char minorversion;
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 3
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ POWER.c 64 unsigned short release;
+ POWER.c 65 unsigned short build;
+ POWER.c 66 GlibGetOSVersionInfo( &mainversion, &minorversion, &release, &build );
+ 00000048 D233 MOV.L L381+30,R2 ; _sc0015
+ 0000004A 7FF0 ADD #-16,R15
+ 0000004C 67F3 MOV R15,R7
+ 0000004E 770C ADD #12,R7
+ 00000050 66F3 MOV R15,R6
+ 00000052 7608 ADD #8,R6
+ 00000054 65F3 MOV R15,R5
+ 00000056 7504 ADD #4,R5
+ 00000058 420B JSR @R2
+ 0000005A 64F3 MOV R15,R4
+ POWER.c 67 return ( ( mainversion << 24 ) & 0xFF000000 ) | ( ( minorversion << 16 ) & 0x00FF0000 ) | ( release & 0x
+ +0000FFFF );
+ 0000005C 60F0 MOV.B @R15,R0
+ 0000005E 600C EXTU.B R0,R0
+ 00000060 D32E MOV.L L381+34,R3 ; H'FF000000
+ 00000062 4028 SHLL16 R0
+ 00000064 D22E MOV.L L381+38,R2 ; H'00FF0000
+ 00000066 4018 SHLL8 R0
+ 00000068 2039 AND R3,R0
+ 0000006A 6103 MOV R0,R1
+ 0000006C 84F4 MOV.B @(4,R15),R0
+ 0000006E 600C EXTU.B R0,R0
+ 00000070 4028 SHLL16 R0
+ 00000072 2029 AND R2,R0
+ 00000074 201B OR R1,R0
+ 00000076 6103 MOV R0,R1
+ 00000078 85F4 MOV.W @(8,R15),R0
+ POWER.c 68 }
+ 0000007A 7F10 ADD #16,R15
+ 0000007C 4F26 LDS.L @R15+,PR
+ 0000007E 600D EXTU.W R0,R0
+ 00000080 000B RTS
+ 00000082 201B OR R1,R0
+ POWER.c 69
+ POWER.c 70 //
+ POWER.c 71 int GetMainBatteryVoltagePointer(){
+ 00000084 _GetMainBatteryVoltagePointer: ; function: GetMainBatteryVoltagePointer
+ ; frame size=0
+ POWER.c 72 unsigned int ea;
+ POWER.c 73 unsigned int j;
+ POWER.c 74 ea = *(unsigned int*)0x8001007C;
+ 00000084 D327 MOV.L L381+42,R3 ; H'8001007C
+ 00000086 6532 MOV.L @R3,R5
+ POWER.c 75 ea = ea + 0x049C*4;
+ 00000088 9237 MOV.W L381,R2 ; H'1270
+ 0000008A 352C ADD R2,R5
+ POWER.c 76 ea = *(unsigned int*)( ea );
+ 0000008C 6452 MOV.L @R5,R4
+ 0000008E D526 MOV.L L381+46,R5 ; H'0000E464
+ POWER.c 77 while ( *(unsigned short*)( ea ) != 0xE464 ){
+ 00000090 A001 BRA L366
+ 00000092 0009 NOP
+ 00000094 L367:
+ POWER.c 78 ea = ea + 2;
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 4
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000094 7402 ADD #2,R4
+ 00000096 L366:
+ 00000096 6341 MOV.W @R4,R3
+ 00000098 633D EXTU.W R3,R3
+ 0000009A 3350 CMP/EQ R5,R3
+ 0000009C 8BFA BF L367
+ POWER.c 79 };
+ POWER.c 80 ea = ea + 2;
+ 0000009E 7402 ADD #2,R4
+ POWER.c 81 j = *(unsigned char*)( ea + 1 );
+ 000000A0 8441 MOV.B @(1,R4),R0
+ POWER.c 82 j = 4*j;
+ POWER.c 83 j = ( ea + j + 4 ) & 0xFFFFFFFC;
+ 000000A2 E3FC MOV #-4,R3
+ 000000A4 650C EXTU.B R0,R5
+ 000000A6 4508 SHLL2 R5
+ 000000A8 345C ADD R5,R4
+ 000000AA 7404 ADD #4,R4
+ 000000AC 2439 AND R3,R4
+ POWER.c 84 return *(unsigned int*)( j );
+ POWER.c 85 }
+ 000000AE 000B RTS
+ 000000B0 6042 MOV.L @R4,R0
+ POWER.c 86
+ POWER.c 87 int GetBatteryStatus( int battery, int*firstlevel, int*secondlevel ){
+ 000000B2 _GetBatteryStatus: ; function: GetBatteryStatus
+ ; frame size=20
+ 000000B2 2FE6 MOV.L R14,@-R15
+ 000000B4 2FD6 MOV.L R13,@-R15
+ 000000B6 6E53 MOV R5,R14
+ POWER.c 88 int (*iGBS)( int ) = 0; // declare an int function pointer
+ POWER.c 89 int*battconfig = (int*)0x80000334;
+ POWER.c 90 *firstlevel = 0x17F;
+ 000000B8 9320 MOV.W L381+2,R3 ; H'017F
+ 000000BA 6D63 MOV R6,R13
+ POWER.c 91 *secondlevel = 0x16D;
+ 000000BC 921F MOV.W L381+4,R2 ; H'016D
+ 000000BE 2FC6 MOV.L R12,@-R15
+ 000000C0 4F22 STS.L PR,@-R15
+ 000000C2 7FFC ADD #-4,R15
+ 000000C4 2F42 MOV.L R4,@R15
+ 000000C6 2E32 MOV.L R3,@R14
+ POWER.c 92
+ POWER.c 93 iGBS = (int(*)(int))GetMainBatteryVoltagePointer();
+ 000000C8 BFDC BSR _GetMainBatteryVoltagePointer
+ 000000CA 2D22 MOV.L R2,@R13
+ POWER.c 94
+ POWER.c 95 switch ( OSVersionAsInt() ){
+ 000000CC BFBB BSR _OSVersionAsInt
+ 000000CE 6C03 MOV R0,R12
+ 000000D0 D116 MOV.L L381+50,R1 ; H'02000300
+ 000000D2 3010 CMP/EQ R1,R0
+ 000000D4 8907 BT L352
+ 000000D6 D116 MOV.L L381+54,R1 ; H'02000200
+ 000000D8 3010 CMP/EQ R1,R0
+ 000000DA 8935 BT L369
+ 000000DC D115 MOV.L L381+58,R1 ; H'02000100
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 5
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000000DE 3010 CMP/EQ R1,R0
+ 000000E0 892E BT L354
+ 000000E2 A031 BRA L369
+ 000000E4 0009 NOP
+ 000000E6 L352: ; case label
+ POWER.c 96 case OS200 :
+ POWER.c 97 if ( *battconfig==0x43444844 ){
+ 000000E6 D314 MOV.L L381+62,R3 ; H'43444844
+ 000000E8 D114 MOV.L L381+66,R1 ; H'80000334
+ 000000EA 6212 MOV.L @R1,R2
+ 000000EC 3230 CMP/EQ R3,R2
+ 000000EE 8B2B BF L369
+ POWER.c 98 *firstlevel = 0x1A5;
+ 000000F0 9206 MOV.W L381+6,R2 ; H'01A5
+ 000000F2 2E22 MOV.L R2,@R14
+ POWER.c 99 *secondlevel = 0x191;
+ 000000F4 9105 MOV.W L381+8,R1 ; H'0191
+ POWER.c 100 };
+ POWER.c 101 break;
+ 000000F6 A027 BRA L369
+ 000000F8 2D12 MOV.L R1,@R13
+ 000000FA L381:
+ 000000FA 1270 .DATA.W H'1270
+ 000000FC 017F .DATA.W H'017F
+ 000000FE 016D .DATA.W H'016D
+ 00000100 01A5 .DATA.W H'01A5
+ 00000102 0191 .DATA.W H'0191
+ 00000104 FFFF0000 .DATA.L H'FFFF0000
+ 00000108 02020000 .DATA.L H'02020000
+ 0000010C A4000128 .DATA.L H'A4000128
+ 00000110 8000FFD0 .DATA.L H'8000FFD0
+ 00000114 8000FFD4 .DATA.L H'8000FFD4
+ 00000118 <00000000> .DATA.L _sc0015
+ 0000011C FF000000 .DATA.L H'FF000000
+ 00000120 00FF0000 .DATA.L H'00FF0000
+ 00000124 8001007C .DATA.L H'8001007C
+ 00000128 0000E464 .DATA.L H'0000E464
+ 0000012C 02000300 .DATA.L H'02000300
+ 00000130 02000200 .DATA.L H'02000200
+ 00000134 02000100 .DATA.L H'02000100
+ 00000138 43444844 .DATA.L H'43444844
+ 0000013C 80000334 .DATA.L H'80000334
+ 00000140 L354: ; case label
+ POWER.c 102 case OS200GII :
+ POWER.c 103 //case OS202GII2 :
+ POWER.c 104 break;
+ POWER.c 105 case OS200slim :
+ POWER.c 106 *firstlevel = 0x2AA;
+ 00000140 9367 MOV.W L382,R3 ; H'02AA
+ 00000142 2E32 MOV.L R3,@R14
+ POWER.c 107 *secondlevel = 0x288;
+ 00000144 9266 MOV.W L382+2,R2 ; H'0288
+ 00000146 2D22 MOV.L R2,@R13
+ POWER.c 108 break;
+ 00000148 L369:
+ POWER.c 109 };
+ POWER.c 110 if (IsSlim()){
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 6
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000148 BF5A BSR _IsSlim
+ 0000014A 0009 NOP
+ 0000014C 600E EXTS.B R0,R0
+ 0000014E 2008 TST R0,R0
+ 00000150 8903 BT L371
+ POWER.c 111 *firstlevel = 0x2AA;
+ 00000152 915E MOV.W L382,R1 ; H'02AA
+ POWER.c 112 *secondlevel = 0x288;
+ 00000154 935E MOV.W L382+2,R3 ; H'0288
+ 00000156 2E12 MOV.L R1,@R14
+ 00000158 2D32 MOV.L R3,@R13
+ 0000015A L371:
+ POWER.c 113 }
+ POWER.c 114 if (iGBS!=0) return (*iGBS)( battery );
+ 0000015A 2CC8 TST R12,R12
+ 0000015C 8903 BT L372
+ 0000015E 4C0B JSR @R12
+ 00000160 64F2 MOV.L @R15,R4
+ 00000162 A001 BRA L373
+ 00000164 0009 NOP
+ 00000166 L372:
+ POWER.c 115 else return 0;
+ 00000166 E000 MOV #0,R0
+ POWER.c 116 }
+ 00000168 L373:
+ 00000168 7F04 ADD #4,R15
+ 0000016A 4F26 LDS.L @R15+,PR
+ 0000016C 6CF6 MOV.L @R15+,R12
+ 0000016E 6DF6 MOV.L @R15+,R13
+ 00000170 000B RTS
+ 00000172 6EF6 MOV.L @R15+,R14
+ POWER.c 117
+ POWER.c 118 // the warning level lies around 2/3 full scale
+ POWER.c 119 int MainBatteryPercentage( void ){
+ 00000174 _MainBatteryPercentage: ; function: MainBatteryPercentage
+ ; frame size=16
+ ; used runtime library name:
+ ; __divls
+ 00000174 4F22 STS.L PR,@-R15
+ 00000176 4F12 STS.L MACL,@-R15
+ 00000178 7FF8 ADD #-8,R15
+ POWER.c 120 int firstlevel, secondlevel;
+ POWER.c 121 int i;
+ POWER.c 122 if ( IsEmulator() ){
+ 0000017A BF57 BSR _IsEmulator
+ 0000017C 0009 NOP
+ 0000017E 2008 TST R0,R0
+ 00000180 8905 BT L375
+ POWER.c 123 i = 100;
+ 00000182 E464 MOV #100,R4
+ POWER.c 124 firstlevel = 70;
+ 00000184 E346 MOV #70,R3
+ POWER.c 125 secondlevel = 65;
+ 00000186 E241 MOV #65,R2
+ 00000188 2F32 MOV.L R3,@R15
+ 0000018A A006 BRA L376
+ 0000018C 1F21 MOV.L R2,@(4,R15)
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 7
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0000018E L375:
+ POWER.c 126 } else i = GetBatteryStatus( 1, &firstlevel, &secondlevel );
+ 0000018E 66F3 MOV R15,R6
+ 00000190 7604 ADD #4,R6
+ 00000192 65F3 MOV R15,R5
+ 00000194 BF8D BSR _GetBatteryStatus
+ 00000196 E401 MOV #1,R4
+ 00000198 6403 MOV R0,R4
+ 0000019A L376:
+ POWER.c 127
+ POWER.c 128 if (firstlevel > 0 ) return ( 200*i )/(firstlevel*3);
+ 0000019A 63F2 MOV.L @R15,R3
+ 0000019C 4315 CMP/PL R3
+ 0000019E 8B0D BF L377
+ 000001A0 9139 MOV.W L382+4,R1 ; H'00C8
+ 000001A2 0417 MUL.L R1,R4
+ 000001A4 60F2 MOV.L @R15,R0
+ 000001A6 011A STS MACL,R1
+ 000001A8 D21B MOV.L L382+6,R2 ; __divls
+ 000001AA 6303 MOV R0,R3
+ 000001AC 4000 SHLL R0
+ 000001AE 420B JSR @R2
+ 000001B0 303C ADD R3,R0
+ 000001B2 7F08 ADD #8,R15
+ 000001B4 4F16 LDS.L @R15+,MACL
+ 000001B6 4F26 LDS.L @R15+,PR
+ 000001B8 000B RTS
+ 000001BA 0009 NOP
+ 000001BC L377:
+ POWER.c 129 else return 0;
+ 000001BC E000 MOV #0,R0
+ POWER.c 130 }
+ 000001BE L378:
+ 000001BE 7F08 ADD #8,R15
+ 000001C0 4F16 LDS.L @R15+,MACL
+ 000001C2 4F26 LDS.L @R15+,PR
+ 000001C4 000B RTS
+ 000001C6 0009 NOP
+ POWER.c 131
+ POWER.c 132 int AddIn_main(int isAppli, unsigned short OptionNum)
+ 000001C8 _AddIn_main: ; function: AddIn_main
+ ; frame size=16
+ ; used runtime library name:
+ ; __slow_mvn
+ 000001C8 4F22 STS.L PR,@-R15
+ POWER.c 133 {
+ POWER.c 134 // battery = 1 = main (do not use other values)
+ POWER.c 135 // firstlevel: warning level
+ POWER.c 136 // secondlevel: shutdown level
+ POWER.c 137
+ POWER.c 138 int fl = 33, sl = 66, m = 1, batt = 0;
+ 000001CA E321 MOV #33,R3
+ 000001CC 7FF4 ADD #-12,R15
+ 000001CE E242 MOV #66,R2
+ 000001D0 2F32 MOV.L R3,@R15
+ POWER.c 139
+ POWER.c 140 char c[4] = {0};
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 8
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000001D2 61F3 MOV R15,R1
+ 000001D4 1F21 MOV.L R2,@(4,R15)
+ 000001D6 7108 ADD #8,R1
+ 000001D8 D311 MOV.L L382+14,R3 ; __slow_mvn
+ 000001DA D210 MOV.L L382+10,R2 ; L346
+ 000001DC 430B JSR @R3
+ 000001DE E004 MOV #4,R0
+ POWER.c 141
+ POWER.c 142 locate(1,1);
+ 000001E0 D110 MOV.L L382+18,R1 ; _locate
+ 000001E2 E501 MOV #1,R5
+ 000001E4 410B JSR @R1
+ 000001E6 6453 MOV R5,R4
+ POWER.c 143
+ POWER.c 144 batt = GetBatteryStatus(m, &fl, &sl);
+ 000001E8 66F3 MOV R15,R6
+ 000001EA 7604 ADD #4,R6
+ 000001EC 65F3 MOV R15,R5
+ 000001EE BF60 BSR _GetBatteryStatus
+ 000001F0 E401 MOV #1,R4
+ 000001F2 6603 MOV R0,R6
+ POWER.c 145
+ POWER.c 146 Bdisp_DrawLineVRAM(0,0,batt,0);
+ 000001F4 D20C MOV.L L382+22,R2 ; _Bdisp_DrawLineVRAM
+ 000001F6 E700 MOV #0,R7
+ 000001F8 6573 MOV R7,R5
+ 000001FA 420B JSR @R2
+ 000001FC 6473 MOV R7,R4
+ POWER.c 147 Bdisp_PutDisp_DD();
+ 000001FE D30B MOV.L L382+26,R3 ; _Bdisp_PutDisp_DD
+ 00000200 430B JSR @R3
+ 00000202 0009 NOP
+ POWER.c 148 GetKey(&fl);
+ 00000204 D20A MOV.L L382+30,R2 ; _GetKey
+ 00000206 420B JSR @R2
+ 00000208 64F3 MOV R15,R4
+ POWER.c 149 }
+ 0000020A 7F0C ADD #12,R15
+ 0000020C 4F26 LDS.L @R15+,PR
+ 0000020E 000B RTS
+ 00000210 0009 NOP
+ 00000212 L382:
+ 00000212 02AA .DATA.W H'02AA
+ 00000214 0288 .DATA.W H'0288
+ 00000216 00C8 .DATA.W H'00C8
+ 00000218 <00000000> .DATA.L __divls
+ 0000021C <00000000> .DATA.L L346
+ 00000220 <00000000> .DATA.L __slow_mvn
+ 00000224 <00000000> .DATA.L _locate
+ 00000228 <00000000> .DATA.L _Bdisp_DrawLineVRAM
+ 0000022C <00000000> .DATA.L _Bdisp_PutDisp_DD
+ 00000230 <00000000> .DATA.L _GetKey
+ POWER.c 150 #pragma section _BR_Size
+ POWER.c 151 unsigned long BR_Size;
+ POWER.c 152 #pragma section
+ POWER.c 153 #pragma section _TOP
+ POWER.c 154 int InitializeSystem(int isAppli, unsigned short OptionNum)
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 9
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+P_T 00000000 _InitializeSystem: ; function: InitializeSystem
+ ; frame size=0
+ POWER.c 155 {return INIT_ADDIN_APPLICATION(isAppli, OptionNum);}
+ 00000000 D301 MOV.L L383+2,R3 ; _INIT_ADDIN_APPLICATION
+ 00000002 432B JMP @R3
+ 00000004 0009 NOP
+ 00000006 L383:
+ 00000006 0000 .DATA.W 0
+ 00000008 <00000000> .DATA.L _INIT_ADDIN_APPLICATION
+ POWER.c 156 #pragma section
+ POWER.c 157
+C 00000000 _sc003B: ; static: sc003B
+ 00000000 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'0000003B
+ 2B00098001
+ 0070000000
+ 3B
+ 00000010 _sc0D65: ; static: sc0D65
+ 00000010 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'00000D65
+ 2B00098001
+ 007000000D
+ 65
+ 00000020 _sc0D67: ; static: sc0D67
+ 00000020 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'00000D67
+ 2B00098001
+ 007000000D
+ 67
+ 00000030 _sc0D64: ; static: sc0D64
+ 00000030 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'00000D64
+ 2B00098001
+ 007000000D
+ 64
+ 00000040 _sc0015: ; static: sc0015
+ 00000040 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'00000015
+ 2B00098001
+ 0070000000
+ 15
+ 00000050 _sc06C4: ; static: sc06C4
+ 00000050 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'000006C4
+ 2B00098001
+ 0070000006
+ C4
+ 00000060 _sc0160: ; static: sc0160
+ 00000060 D201D00242 .DATA.L H'D201D002,H'422B0009,H'80010070,H'00000160
+ 2B00098001
+ 0070000001
+ 60
+ 00000070 L346:
+ 00000070 00 .DATA.B H'00
+ 00000071 0000000301 .DATAB.B 3,0
+ 00
+B_B 00000000 _BR_Size: ; static: BR_Size
+ 00000000 00000004 .RES.L 1
+
+
+
+
+
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 10-Oct-2012 15:02:19 PAGE 1
+
+
+******** STATISTICS INFORMATION ********
+
+
+********** ERROR INFORMATION ***********
+
+NUMBER OF ERRORS: 0
+NUMBER OF WARNINGS: 1
+
+
+
+
+******* SOURCE LINE INFORMATION ********
+
+COMPILED SOURCE LINE: 157
+
+
+
+******* SECTION SIZE INFORMATION *******
+
+PROGRAM SECTION (P): 00000234 Byte(s)
+PROGRAM SECTION (P_BR_Size): 00000000 Byte(s)
+PROGRAM SECTION (P_TOP): 0000000C Byte(s)
+CONSTANT SECTION (C): 00000074 Byte(s)
+CONSTANT SECTION (C_BR_Size): 00000000 Byte(s)
+CONSTANT SECTION (C_TOP): 00000000 Byte(s)
+DATA SECTION (D): 00000000 Byte(s)
+DATA SECTION (D_BR_Size): 00000000 Byte(s)
+DATA SECTION (D_TOP): 00000000 Byte(s)
+BSS SECTION (B): 00000000 Byte(s)
+BSS SECTION (B_BR_Size): 00000004 Byte(s)
+BSS SECTION (B_TOP): 00000000 Byte(s)
+
+ TOTAL PROGRAM SIZE: 000002B8 Byte(s)
+
+
+
+********** LABEL INFORMATION ***********
+
+NUMBER OF EXTERNAL REFERENCE SYMBOLS: 7
+NUMBER OF EXTERNAL DEFINITION SYMBOLS: 17
+NUMBER OF INTERNAL/EXTERNAL SYMBOLS: 44
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+*** COMMAND PARAMETER ***
+
+
+ -subcommand=C:\Users\Timo\AppData\Local\Temp\hmkB23E.tmp
+
|
