diff options
| author | schneefux <schneefux+commit@schneefux.xyz> | 2016-06-12 20:13:54 +0200 |
|---|---|---|
| committer | schneefux <schneefux+commit@schneefux.xyz> | 2016-06-12 20:13:54 +0200 |
| commit | 32b592799f40834030d3d781db9de9fa99756f3f (patch) | |
| tree | 55989e72ad945cabf3c8076317bb546e90a97ad0 | |
| download | fx-fireworks-32b592799f40834030d3d781db9de9fa99756f3f.tar.gz fx-fireworks-32b592799f40834030d3d781db9de9fa99756f3f.zip | |
| -rw-r--r-- | AddinInfo.txt | 12 | ||||
| -rw-r--r-- | Debug/Addin.mak | 121 | ||||
| -rw-r--r-- | Debug/FXADDINror.abs | bin | 0 -> 31260 bytes | |||
| -rw-r--r-- | Debug/FXADDINror.bin | bin | 0 -> 10940 bytes | |||
| -rw-r--r-- | Debug/FXADDINror.dbg | bin | 0 -> 28016 bytes | |||
| -rw-r--r-- | Debug/FXADDINror.fsy | 233 | ||||
| -rw-r--r-- | Debug/FXADDINror.map | 1483 | ||||
| -rw-r--r-- | Debug/SYSCALLS.obj | bin | 0 -> 5784 bytes | |||
| -rw-r--r-- | Debug/Snow.lst | 1457 | ||||
| -rw-r--r-- | Debug/Snow.obj | bin | 0 -> 21016 bytes | |||
| -rw-r--r-- | FIREWORK.G1A | bin | 0 -> 11452 bytes | |||
| -rw-r--r-- | FXSH_Build.bat | 22 | ||||
| -rw-r--r-- | Firework.dlr | 6 | ||||
| -rw-r--r-- | Firework.dlw | 138 | ||||
| -rw-r--r-- | Firework.g1w | 16 | ||||
| -rw-r--r-- | Fireworks_1.0.rar | bin | 0 -> 6583 bytes | |||
| -rw-r--r-- | INIT/CasioRAM.mem | bin | 0 -> 60060 bytes | |||
| -rw-r--r-- | INIT/CasioRAMCPU.mem | bin | 0 -> 80 bytes | |||
| -rw-r--r-- | MainIcon.bmp | bin | 0 -> 206 bytes | |||
| -rw-r--r-- | Readme.txt | 2 | ||||
| -rw-r--r-- | Screenshot2.bmp | bin | 0 -> 9270 bytes | |||
| -rw-r--r-- | Screenshot3.bmp | bin | 0 -> 9270 bytes | |||
| -rw-r--r-- | Snow.c | 254 |
23 files changed, 3744 insertions, 0 deletions
diff --git a/AddinInfo.txt b/AddinInfo.txt new file mode 100644 index 0000000..e4b808a --- /dev/null +++ b/AddinInfo.txt @@ -0,0 +1,12 @@ +//------------------------------------------------------------------ +// Addin-Application header control file, created with the CASIO SDK +//------------------------------------------------------------------ +[OUTPUT] : "FIREWORK.G1A" +[BINDATA] : "FXADDINror.bin" +[DISPNAME] : "Firework" +[APPNAME] : "@FIREWOR" +[VERSION] : "01.00.0000" +[APL_ICON] : "MainIcon.bmp" +[MODULE_NUM] : 0 +[MOD1_TITLE] : "Firework" +[MOD1_ICON] : "eActivityIcon.bmp" diff --git a/Debug/Addin.mak b/Debug/Addin.mak new file mode 100644 index 0000000..ab02ee4 --- /dev/null +++ b/Debug/Addin.mak @@ -0,0 +1,121 @@ +################################################ +# Make file for CASIO fx-9860G SDK Addin +# +############################ +# Directory defines +TCDIR = G:\Casio SDK\OS\SH +OSDIR = G:\Casio SDK\OS +APPDIR = G:\Casio SDK\Projekte\Firework +OUTDIR = G:\Casio SDK\Projekte\Firework\Debug + +################ +# Main Defines +SH_EXEDIR=$(TCDIR)\bin + +# Hitachi SH C/C++ Compiler02 phase +SHCC02_EXE=shc.exe +SHCC02_DEP="$(OSDIR)\FX\include\fxlib.h" + +# Hitachi SH Assembler03 phase +SHASM03_EXE=asmsh.exe + +# Hitachi OptLinker04 phase +SHLINK04_EXE=Optlnk.exe +SHLINK04_DEP="$(OSDIR)\FX\lib\fx9860G_library.lib" +SHLINK04_DEP2="$(OSDIR)\FX\lib\setup.obj" +EPSILON="$(OSDIR)\FX\lib\revolution.lib" +####################### +# Files to build +FILE0=Snow +FILESRC0="$(APPDIR)\$(FILE0).c" +FILEOBJ0="$(OUTDIR)\$(FILE0).obj" +FILE1=SYSCALLS +FILESRC1="G:\Casio SDK\Projekte\Matris\$(FILE1).src" +FILEOBJ1="$(OUTDIR)\$(FILE1).obj" +RFILE=FXADDINror +USERALLOBJ=$(FILEOBJ0) $(FILEOBJ1) + +####################### +# nmake "all" statement + +ALL: SH_ENV \ + $(USERALLOBJ) \ + $(OUTDIR)\$(RFILE).bin \ + +#################### +# Description blocks + +!MESSAGE %3#C$z`&'0? +!MESSAGE +!MESSAGE Executing Hitachi SH C/C++ Compiler/Assembler phase +!MESSAGE + +SH_ENV : + set SHC_INC=$(TCDIR)\include + set PATH=$(TCDIR)\bin + set SHC_LIB=$(TCDIR)\bin + set SHC_TMP=$(OUTDIR) + +$(FILEOBJ0) : $(FILESRC0) $(SHCC02_DEP) + "$(SH_EXEDIR)\$(SHCC02_EXE)" -subcommand=<< +-cpu=sh3 +-include="$(OSDIR)\FX\include","$(APPDIR)" +-objectfile=$(FILEOBJ0) +-show=source +-listfile="$(OUTDIR)\$(FILE0).lst" +-size +-noinline +-chgincpath +-errorpath +$(FILESRC0) +-lang=c +-nologo +-debug +<< + +$(FILEOBJ1) : $(FILESRC1) + "$(SH_EXEDIR)\$(SHASM03_EXE)" -subcommand=<< +$(FILESRC1) +-cpu=sh3 +-endian=big +-round=zero +-denormalize=off +-include="$(APPDIR)" +-include="$(OSDIR)\FX\include" +-debug +-object=$(FILEOBJ1) +-literal=pool,branch,jump,return +-nologo +-chgincpath +-errorpath +<< + +!MESSAGE +!MESSAGE Executing Hitachi OptLinker04 phase +!MESSAGE + +"$(OUTDIR)\$(RFILE).bin" : $(USERALLOBJ) $(SHLINK04_DEP2) $(SHLINK04_DEP) + "$(SH_EXEDIR)\$(SHLINK04_EXE)" -subcommand=<< +noprelink +sdebug +rom D=R +nomessage +list "$(OUTDIR)\$(RFILE).map" +show symbol +nooptimize +start P_TOP,P,C,D,C$VTBL,C$INIT/0300200,B_BR_Size,B,R/08100000 +fsymbol P +nologo +input $(USERALLOBJ) +input $(SHLINK04_DEP2) +library $(SHLINK04_DEP) +library $(EPSILON) +output "$(OUTDIR)\$(RFILE).abs" +-nomessage=1100 +end +input "$(OUTDIR)\$(RFILE).abs" +form binary +output "$(OUTDIR)\$(RFILE).bin" +exit +<< + diff --git a/Debug/FXADDINror.abs b/Debug/FXADDINror.abs Binary files differnew file mode 100644 index 0000000..9f9b1ee --- /dev/null +++ b/Debug/FXADDINror.abs diff --git a/Debug/FXADDINror.bin b/Debug/FXADDINror.bin Binary files differnew file mode 100644 index 0000000..cb6bb0b --- /dev/null +++ b/Debug/FXADDINror.bin diff --git a/Debug/FXADDINror.dbg b/Debug/FXADDINror.dbg Binary files differnew file mode 100644 index 0000000..6c18a8c --- /dev/null +++ b/Debug/FXADDINror.dbg diff --git a/Debug/FXADDINror.fsy b/Debug/FXADDINror.fsy new file mode 100644 index 0000000..81121e4 --- /dev/null +++ b/Debug/FXADDINror.fsy @@ -0,0 +1,233 @@ +;HITACHI OPTIMIZING LINKAGE EDITOR GENERATED FILE 2012.12.29
+;fsymbol = P
+
+;SECTION NAME = P
+ .export _random
+_random: .equ h'00300214
+ .export _setpixel
+_setpixel: .equ h'00300234
+ .export _line
+_line: .equ h'00300272
+ .export _drawsprite
+_drawsprite: .equ h'00300356
+ .export _drawboom
+_drawboom: .equ h'003003fa
+ .export _display_vram
+_display_vram: .equ h'0030049a
+ .export _isMainMenu
+_isMainMenu: .equ h'00300528
+ .export _snowtimer
+_snowtimer: .equ h'00300546
+ .export _AddIn_main
+_AddIn_main: .equ h'003007d0
+ .export _AllClr_DD
+_AllClr_DD: .equ h'00300968
+ .export _PutKey
+_PutKey: .equ h'00300a88
+ .export _App_SYSTEM
+_App_SYSTEM: .equ h'00300b68
+ .export _RTC_GetTicks
+_RTC_GetTicks: .equ h'00300918
+ .export _PowerOff
+_PowerOff: .equ h'00300a68
+ .export _Serial_BufferedTransmitOneByte
+_Serial_BufferedTransmitOneByte: .equ h'003008e8
+ .export _LongToAsc
+_LongToAsc: .equ h'00300ba8
+ .export _Reboot
+_Reboot: .equ h'00300a28
+ .export _App_DYNA
+_App_DYNA: .equ h'00300ac8
+ .export _App_EQUA
+_App_EQUA: .equ h'00300ad8
+ .export _itoa
+_itoa: .equ h'00300a08
+ .export _Timer_Start
+_Timer_Start: .equ h'003009f8
+ .export _App_LINK
+_App_LINK: .equ h'00300b18
+ .export _PutDisp_DD
+_PutDisp_DD: .equ h'00300948
+ .export _Serial_ReadOneByte
+_Serial_ReadOneByte: .equ h'003008d8
+ .export _GlibGetOSVersionInfo
+_GlibGetOSVersionInfo: .equ h'00300b98
+ .export _BCD_SetAsInt
+_BCD_SetAsInt: .equ h'00300b88
+ .export _App_FINANCE
+_App_FINANCE: .equ h'00300af8
+ .export _Serial_Close
+_Serial_Close: .equ h'00300908
+ .export _EditExpression
+_EditExpression: .equ h'00300a18
+ .export _App_RUN_MAT
+_App_RUN_MAT: .equ h'00300b48
+ .export _Timer_Install
+_Timer_Install: .equ h'003009d8
+ .export _RTC_GetTime
+_RTC_GetTime: .equ h'00300a58
+ .export _locate
+_locate: .equ h'003009b8
+ .export _App_PROG
+_App_PROG: .equ h'00300ae8
+ .export _Sleep
+_Sleep: .equ h'00300998
+ .export _App_GRAPH_TABLE
+_App_GRAPH_TABLE: .equ h'00300b08
+ .export _Disp_GetVRAMPtr
+_Disp_GetVRAMPtr: .equ h'00300938
+ .export _ShapeToDD
+_ShapeToDD: .equ h'00300a98
+ .export _App_CONICS
+_App_CONICS: .equ h'00300ab8
+ .export _RTC_SetDateTime
+_RTC_SetDateTime: .equ h'00300a38
+ .export _App_RECUR
+_App_RECUR: .equ h'00300b38
+ .export _InputString
+_InputString: .equ h'00300aa8
+ .export _GetKey
+_GetKey: .equ h'003009a8
+ .export _RTC_Reset
+_RTC_Reset: .equ h'00300a48
+ .export _DrawLineVRAM
+_DrawLineVRAM: .equ h'00300958
+ .export _Print
+_Print: .equ h'003009c8
+ .export _KBD_PRGM_GetKey
+_KBD_PRGM_GetKey: .equ h'00300928
+ .export _AllClr_VRAM
+_AllClr_VRAM: .equ h'00300978
+ .export _App_RUN_STAT
+_App_RUN_STAT: .equ h'00300b58
+ .export _Serial_Open
+_Serial_Open: .equ h'003008f8
+ .export _AllClr_DDVRAM
+_AllClr_DDVRAM: .equ h'00300988
+ .export _App_MEMORY
+_App_MEMORY: .equ h'00300b28
+ .export _Timer_Uninstall
+_Timer_Uninstall: .equ h'003009e8
+ .export _Serial_WriteByte
+_Serial_WriteByte: .equ h'00300a78
+ .export _InputDateDialog
+_InputDateDialog: .equ h'00300b78
+ .export ___LINK_PROTECT
+___LINK_PROTECT: .equ h'00300bb8
+ .export _SetQuitHandler
+_SetQuitHandler: .equ h'00300bbc
+ .export _OnAppCloseDefault
+_OnAppCloseDefault: .equ h'00300bc2
+ .export __INITSCT_ADDIN
+__INITSCT_ADDIN: .equ h'00300c16
+ .export _INIT_ADDIN_APPLICATION
+_INIT_ADDIN_APPLICATION: .equ h'00300c5e
+ .export __addd
+__addd: .equ h'00300da4
+ .export __subdr
+__subdr: .equ h'00300cec
+ .export __subd
+__subd: .equ h'00300cd4
+ .export __adds
+__adds: .equ h'0030106a
+ .export __subs
+__subs: .equ h'00301064
+ .export __divdr
+__divdr: .equ h'0030135c
+ .export __divd
+__divd: .equ h'00301370
+ .export __divs
+__divs: .equ h'0030152c
+ .export __dtos
+__dtos: .equ h'0030166c
+ .export __eqs
+__eqs: .equ h'00301748
+ .export __gts
+__gts: .equ h'003017b0
+ .export __itos
+__itos: .equ h'00301828
+ .export __ltd
+__ltd: .equ h'00301880
+ .export __lts
+__lts: .equ h'00301928
+ .export __muls
+__muls: .equ h'003019a0
+ .export __stod
+__stod: .equ h'00301ae0
+ .export __stou
+__stou: .equ h'00301b68
+ .export __stoi
+__stoi: .equ h'00301b68
+ .export __utod
+__utod: .equ h'00301bc0
+ .export __utos
+__utos: .equ h'00301c00
+ .export __modlu
+__modlu: .equ h'00301c48
+ .export __slow_mvn
+__slow_mvn: .equ h'00301d00
+ .export _cosf
+_cosf: .equ h'00301d38
+ .export _sinf
+_sinf: .equ h'00301da8
+ .export _Bdel_cychdr
+_Bdel_cychdr: .equ h'00301e18
+ .export _BfileFLS_CloseFile
+_BfileFLS_CloseFile: .equ h'00301e28
+ .export _Bkey_Set_RepeatTime_Default
+_Bkey_Set_RepeatTime_Default: .equ h'00301e38
+ .export _CallbackAtQuitMainFunction
+_CallbackAtQuitMainFunction: .equ h'00301e48
+ .export _flsFindClose
+_flsFindClose: .equ h'00301e58
+ .export _GLibAddinAplExecutionCheck
+_GLibAddinAplExecutionCheck: .equ h'00301e68
+ .export _Hmem_SetMMU
+_Hmem_SetMMU: .equ h'00301e78
+ .export _GetSDKLibraryVersion
+_GetSDKLibraryVersion: .equ h'00301e88
+ .export _SetTimer
+_SetTimer: .equ h'00301e8e
+ .export _KillTimer
+_KillTimer: .equ h'00301ee2
+ .export __istos
+__istos: .equ h'00301f88
+ .export __stois
+__stois: .equ h'0030202c
+ .export __divls
+__divls: .equ h'00302098
+ .export __modls
+__modls: .equ h'0030214c
+ .export __in_coss
+__in_coss: .equ h'00302214
+ .export __in_sins
+__in_sins: .equ h'00302374
+ .export _Bcre_cychdr
+_Bcre_cychdr: .equ h'003024ec
+ .export _BSrl_DummyWAIT
+_BSrl_DummyWAIT: .equ h'003024fc
+ .export _Bsta_cychdr
+_Bsta_cychdr: .equ h'0030250c
+ .export _Bstp_cychdr
+_Bstp_cychdr: .equ h'0030251c
+ .export __in_adds
+__in_adds: .equ h'00302538
+ .export __in_subs
+__in_subs: .equ h'0030252c
+ .export __in_fmods
+__in_fmods: .equ h'00302798
+ .export __istypes
+__istypes: .equ h'00302820
+ .export __quick_odd_mvn
+__quick_odd_mvn: .equ h'00302864
+ .export __quick_evn_mvn
+__quick_evn_mvn: .equ h'00302858
+ .export __app_coss
+__app_coss: .equ h'003028fc
+ .export __app_sins
+__app_sins: .equ h'0030294c
+ .export __in_muls
+__in_muls: .equ h'003029b8
+ .export __polinos
+__polinos: .equ h'00302a68
+ .end
diff --git a/Debug/FXADDINror.map b/Debug/FXADDINror.map new file mode 100644 index 0000000..db0d118 --- /dev/null +++ b/Debug/FXADDINror.map @@ -0,0 +1,1483 @@ +Hitachi Optimizing Linkage Editor (Ver. 7.1.03.000)29-Dec-2012 11:40:00
+
+*** Options ***
+
+-subcommand=C:\Users\Timo\AppData\Local\Temp\hmk390D.tmp
+noprelink
+sdebug
+rom D=R
+nomessage
+list "G:\Casio SDK\Projekte\Firework\Debug\FXADDINror.map"
+show symbol
+nooptimize
+start P_TOP,P,C,D,C$VTBL,C$INIT/0300200,B_BR_Size,B,R/08100000
+fsymbol P
+nologo
+input "G:\Casio SDK\Projekte\Firework\Debug\Snow.obj" "G:\Casio SDK\Projekte\Firework\Debug\SYSCALLS.obj"
+input "G:\Casio SDK\OS\FX\lib\setup.obj"
+library "G:\Casio SDK\OS\FX\lib\fx9860G_library.lib"
+library "G:\Casio SDK\OS\FX\lib\revolution.lib"
+output "G:\Casio SDK\Projekte\Firework\Debug\FXADDINror.abs"
+-nomessage=1100
+end
+
+*** Error information ***
+
+*** Mapping List ***
+
+SECTION START END SIZE ALIGN
+
+P_TOP
+ 00300200 00300213 14 4
+P
+ 00300214 00302acf 28bc 4
+C
+ 00302ad0 00302c97 1c8 4
+D
+ 00302c98 00302cbb 24 4
+B_BR_Size
+ 08100000 08100003 4 4
+B
+ 08100004 08100137 134 4
+R
+ 08100138 0810015b 24 4
+
+*** Symbol List ***
+
+SECTION=
+FILE= START END SIZE
+ SYMBOL ADDR SIZE INFO COUNTS OPT
+
+SECTION=P_TOP
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 00300200 00300213 14
+ _InitializeSystem
+ 00300200 14 func ,g *
+
+SECTION=P
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 00300214 003008d7 6c4
+ _random
+ 00300214 20 func ,g *
+ _setpixel
+ 00300234 3e func ,g *
+ _line
+ 00300272 e4 func ,g *
+ _drawsprite
+ 00300356 a4 func ,g *
+ _drawboom
+ 003003fa a0 func ,g *
+ _display_vram
+ 0030049a 8e func ,g *
+ _isMainMenu
+ 00300528 1e func ,g *
+ _snowtimer
+ 00300546 28a func ,g *
+ _AddIn_main
+ 003007d0 108 func ,g *
+FILE=G:\Casio SDK\Projekte\Firework\Debug\SYSCALLS.obj
+ 003008d8 00300bb7 2e0
+ _Serial_ReadOneByte
+ 003008d8 0 none ,g *
+ _Serial_BufferedTransmitOneByte
+ 003008e8 0 none ,g *
+ _Serial_Open
+ 003008f8 0 none ,g *
+ _Serial_Close
+ 00300908 0 none ,g *
+ _RTC_GetTicks
+ 00300918 0 none ,g *
+ _KBD_PRGM_GetKey
+ 00300928 0 none ,g *
+ _Disp_GetVRAMPtr
+ 00300938 0 none ,g *
+ _PutDisp_DD
+ 00300948 0 none ,g *
+ _DrawLineVRAM
+ 00300958 0 none ,g *
+ _AllClr_DD
+ 00300968 0 none ,g *
+ _AllClr_VRAM
+ 00300978 0 none ,g *
+ _AllClr_DDVRAM
+ 00300988 0 none ,g *
+ _Sleep
+ 00300998 0 none ,g *
+ _GetKey
+ 003009a8 0 none ,g *
+ _locate
+ 003009b8 0 none ,g *
+ _Print
+ 003009c8 0 none ,g *
+ _Timer_Install
+ 003009d8 0 none ,g *
+ _Timer_Uninstall
+ 003009e8 0 none ,g *
+ _Timer_Start
+ 003009f8 0 none ,g *
+ _itoa
+ 00300a08 0 none ,g *
+ _EditExpression
+ 00300a18 0 none ,g *
+ _Reboot
+ 00300a28 0 none ,g *
+ _RTC_SetDateTime
+ 00300a38 0 none ,g *
+ _RTC_Reset
+ 00300a48 0 none ,g *
+ _RTC_GetTime
+ 00300a58 0 none ,g *
+ _PowerOff
+ 00300a68 0 none ,g *
+ _Serial_WriteByte
+ 00300a78 0 none ,g *
+ _PutKey
+ 00300a88 0 none ,g *
+ _ShapeToDD
+ 00300a98 0 none ,g *
+ _InputString
+ 00300aa8 0 none ,g *
+ _App_CONICS
+ 00300ab8 0 none ,g *
+ _App_DYNA
+ 00300ac8 0 none ,g *
+ _App_EQUA
+ 00300ad8 0 none ,g *
+ _App_PROG
+ 00300ae8 0 none ,g *
+ _App_FINANCE
+ 00300af8 0 none ,g *
+ _App_GRAPH_TABLE
+ 00300b08 0 none ,g *
+ _App_LINK
+ 00300b18 0 none ,g *
+ _App_MEMORY
+ 00300b28 0 none ,g *
+ _App_RECUR
+ 00300b38 0 none ,g *
+ _App_RUN_MAT
+ 00300b48 0 none ,g *
+ _App_RUN_STAT
+ 00300b58 0 none ,g *
+ _App_SYSTEM
+ 00300b68 0 none ,g *
+ _InputDateDialog
+ 00300b78 0 none ,g *
+ _BCD_SetAsInt
+ 00300b88 0 none ,g *
+ _GlibGetOSVersionInfo
+ 00300b98 0 none ,g *
+ _LongToAsc
+ 00300ba8 0 none ,g *
+FILE=G:\Casio SDK\OS\FX\lib\setup.obj
+ 00300bb8 00300cd3 11c
+ ___LINK_PROTECT
+ 00300bb8 4 func ,g *
+ _SetQuitHandler
+ 00300bbc 6 func ,g *
+ _OnAppCloseDefault
+ 00300bc2 54 func ,g *
+ __INITSCT_ADDIN
+ 00300c16 48 func ,g *
+ _INIT_ADDIN_APPLICATION
+ 00300c5e 76 func ,g *
+FILE=r_addd
+ 00300cd4 00301063 390
+ __subd
+ 00300cd4 0 none ,g *
+ __subdr
+ 00300cec 0 none ,g *
+ exception1
+ 00300d04 0 none ,l *
+ return_NaN
+ 00300d18 0 none ,l *
+ return_inf
+ 00300d20 0 none ,l *
+ exception2
+ 00300d24 0 none ,l *
+ p2_denorm_check
+ 00300d38 0 none ,l *
+ p1_denorm
+ 00300d44 0 none ,l *
+ return_p2
+ 00300d50 0 none ,l *
+ return_p1
+ 00300d58 0 none ,l *
+ p1_normalize
+ 00300d66 0 none ,l *
+ p1_norm_loop
+ 00300d70 0 none ,l *
+ end_p1_norm
+ 00300d7a 0 none ,l *
+ p2_normalize
+ 00300d7a 0 none ,l *
+ p2_norm_loop
+ 00300d84 0 none ,l *
+ end_p2_norm
+ 00300d8e 0 none ,l *
+ swap_end
+ 00300d96 0 none ,l *
+ return_zero
+ 00300d9a 0 none ,l *
+ __addd
+ 00300da4 0 none ,g *
+ sub_in
+ 00300db6 0 none ,l *
+ rotation
+ 00300dd6 0 none ,l *
+ exception_return
+ 00300e02 0 none ,l *
+ sftr1
+ 00300e44 0 none ,l *
+ e_sftr31
+ 00300e48 0 none ,l *
+ e_sftr55
+ 00300e6e 0 none ,l *
+ sftr_loop
+ 00300e74 0 none ,l *
+ end_sftr
+ 00300e7c 0 none ,l *
+ mantissa_sub
+ 00300ea0 0 none ,l *
+ man_sub1
+ 00300ea8 0 none ,l *
+ normalize
+ 00300eb6 0 none ,l *
+ norm32_end
+ 00300ec0 0 none ,l *
+ norm16_end
+ 00300ed0 0 none ,l *
+ over_norm
+ 00300ed6 0 none ,l *
+ overnorm_end
+ 00300f02 0 none ,l *
+ norm_loop
+ 00300f08 0 none ,l *
+ end_calc
+ 00300f30 0 none ,l *
+ end_norm
+ 00300f30 0 none ,l *
+ denormalize_loop
+ 00300f38 0 none ,l *
+ round
+ 00300f40 0 none ,l *
+ end_denormal
+ 00300f40 0 none ,l *
+ round_carry
+ 00300f58 0 none ,l *
+ end_round
+ 00300f5e 0 none ,l *
+ return_value
+ 00300f5e 0 none ,l *
+ return
+ 00300f7c 0 none ,l *
+ plus_zero
+ 00300f9c 0 none ,l *
+ swap
+ 00300fa6 0 none ,l *
+ EXP_INF
+ 00300fc0 0 none ,l *
+ MMASK
+ 00300fc4 0 none ,l *
+ MSB
+ 00300fc8 0 none ,l *
+ LOWMASK
+ 00300fcc 0 none ,l *
+ CARRY_CHECK
+ 00300fd0 0 none ,l *
+ NORMAL
+ 00300fd4 0 none ,l *
+ SIGN
+ 00300fd8 0 none ,l *
+ HALF
+ 00300fdc 0 none ,l *
+ sftrtbl
+ 00300fe0 0 none ,l *
+FILE=r_adds
+ 00301064 003012cf 26c
+ __subs
+ 00301064 0 none ,g *
+ __adds
+ 0030106a 0 none ,g *
+ rotation
+ 00301084 0 none ,l *
+ exception_return
+ 003010ae 0 none ,l *
+ label
+ 003010ce 0 none ,l *
+ e_sftr26
+ 003010d2 0 none ,l *
+ or_sticky
+ 003010d6 0 none ,l *
+ end_sftr
+ 003010dc 0 none ,l *
+ mantissa_sub
+ 003010f6 0 none ,l *
+ normalize
+ 00301100 0 none ,l *
+ n_sftl_8
+ 00301116 0 none ,l *
+ n_sftl_4
+ 00301122 0 none ,l *
+ n_sftl_2
+ 00301130 0 none ,l *
+ n_sftl_1
+ 00301138 0 none ,l *
+ normal
+ 00301140 0 none ,l *
+ end_calc
+ 00301142 0 none ,l *
+ denormalize_loop
+ 0030114a 0 none ,l *
+ end_denormal
+ 00301150 0 none ,l *
+ round_carry
+ 00301160 0 none ,l *
+ end_round
+ 00301164 0 none ,l *
+ return_value
+ 00301164 0 none ,l *
+ return
+ 00301172 0 none ,l *
+ exception1
+ 00301180 0 none ,l *
+ return_NaN
+ 0030118e 0 none ,l *
+ return_inf
+ 00301194 0 none ,l *
+ exception2
+ 00301198 0 none ,l *
+ p2_denorm_check
+ 003011a4 0 none ,l *
+ p1_denorm
+ 003011ac 0 none ,l *
+ p1_norm_loop
+ 003011b4 0 none ,l *
+ end_p1_norm
+ 003011ba 0 none ,l *
+ p2_normalize
+ 003011ba 0 none ,l *
+ p2_norm_loop
+ 003011be 0 none ,l *
+ end_p2_norm
+ 003011c4 0 none ,l *
+ plus_zero
+ 003011c8 0 none ,l *
+ return_zero
+ 003011ca 0 none ,l *
+ return_parm1
+ 003011d0 0 none ,l *
+ e_sftr7
+ 003011d8 0 none ,l *
+ e_sftr5
+ 003011da 0 none ,l *
+ e_sftr3
+ 003011dc 0 none ,l *
+ e_sftr1
+ 003011de 0 none ,l *
+ e_sftr6
+ 003011e2 0 none ,l *
+ e_sftr4
+ 003011e4 0 none ,l *
+ e_sftr2
+ 003011e6 0 none ,l *
+ e_sftr15
+ 003011ea 0 none ,l *
+ e_sftr13
+ 003011ee 0 none ,l *
+ e_sftr11
+ 003011f2 0 none ,l *
+ e_sftr9
+ 003011f6 0 none ,l *
+ e_sftr14
+ 00301200 0 none ,l *
+ e_sftr12
+ 00301204 0 none ,l *
+ e_sftr10
+ 00301208 0 none ,l *
+ e_sftr8
+ 0030120c 0 none ,l *
+ e_sftr23
+ 00301212 0 none ,l *
+ e_sftr21
+ 00301216 0 none ,l *
+ e_sftr19
+ 0030121a 0 none ,l *
+ e_sftr17
+ 0030121e 0 none ,l *
+ e_sftr22
+ 00301228 0 none ,l *
+ e_sftr20
+ 0030122c 0 none ,l *
+ e_sftr18
+ 00301230 0 none ,l *
+ e_sftr16
+ 00301234 0 none ,l *
+ e_sftr25
+ 0030123a 0 none ,l *
+ e_sftr24
+ 00301248 0 none ,l *
+ a_sftrtbl
+ 00301254 0 none ,l *
+ EXP_INF
+ 003012bc 0 none ,l *
+ HALF
+ 003012c0 0 none ,l *
+ LRS
+ 003012c4 0 none ,l *
+ MAN_1
+ 003012c8 0 none ,l *
+ NaN
+ 003012cc 0 none ,l *
+FILE=r_divd
+ 003012d0 003014d3 204
+ exception1
+ 003012d0 0 none ,l *
+ exception2
+ 003012e0 0 none ,l *
+ exception3
+ 003012ec 0 none ,l *
+ normalize1
+ 00301304 0 none ,l *
+ p1_norm_loop
+ 0030130e 0 none ,l *
+ end_p1_norm
+ 00301318 0 none ,l *
+ exception4
+ 0030131c 0 none ,l *
+ ex4
+ 00301328 0 none ,l *
+ p2_norm_loop
+ 00301332 0 none ,l *
+ end_p2_norm
+ 0030133c 0 none ,l *
+ return_zero
+ 00301340 0 none ,l *
+ return_inf
+ 0030134a 0 none ,l *
+ return_NaN
+ 00301352 0 none ,l *
+ __divdr
+ 0030135c 0 none ,g *
+ __divd
+ 00301370 0 none ,g *
+ divdr_in
+ 00301380 0 none ,l *
+ exception_return3
+ 003013c2 0 none ,l *
+ exception_return4
+ 003013c6 0 none ,l *
+ div_loop
+ 003013e0 0 none ,l *
+ man_sub
+ 003013f6 0 none ,l *
+ over_sub
+ 00301404 0 none ,l *
+ end_man_cal
+ 0030140c 0 none ,l *
+ end_sticky_cal
+ 00301414 0 none ,l *
+ end_norm
+ 00301420 0 none ,l *
+ denormalize_loop
+ 0030142c 0 none ,l *
+ round_denormal
+ 00301438 0 none ,l *
+ end_round_d
+ 00301450 0 none ,l *
+ end_denormal
+ 00301454 0 none ,l *
+ round_carry
+ 0030146a 0 none ,l *
+ end_round
+ 00301470 0 none ,l *
+ return_value
+ 00301470 0 none ,l *
+ return
+ 0030148e 0 none ,l *
+ EXP_INF
+ 003014b8 0 none ,l *
+ MMASK
+ 003014bc 0 none ,l *
+ MSB
+ 003014c0 0 none ,l *
+ DENOM_CHECK
+ 003014c4 0 none ,l *
+ BIAS
+ 003014c8 0 none ,l *
+ COUNT
+ 003014cc 0 none ,l *
+ CARRY_CHECK
+ 003014d0 0 none ,l *
+FILE=r_divs
+ 003014d4 0030166b 198
+ exception1
+ 003014d4 0 none ,l *
+ exception2
+ 003014e0 0 none ,l *
+ exception3
+ 003014e8 0 none ,l *
+ normalize1
+ 003014f8 0 none ,l *
+ p1_norm_loop
+ 003014fc 0 none ,l *
+ end_p1_norm
+ 00301502 0 none ,l *
+ exception4
+ 00301506 0 none ,l *
+ p2_normalize
+ 0030150a 0 none ,l *
+ p2_norm_loop
+ 0030150e 0 none ,l *
+ end_p2_norm
+ 00301514 0 none ,l *
+ return_zero
+ 00301518 0 none ,l *
+ return_inf
+ 00301520 0 none ,l *
+ return_NaN
+ 00301526 0 none ,l *
+ __divs
+ 0030152c 0 none ,g *
+ exception_return3
+ 00301560 0 none ,l *
+ exception_return4
+ 00301564 0 none ,l *
+ make_result
+ 003015e0 0 none ,l *
+ end_calc_sticky
+ 003015f0 0 none ,l *
+ end_normalize
+ 003015f8 0 none ,l *
+ denormalize_loop
+ 0030160a 0 none ,l *
+ round_denormal
+ 00301614 0 none ,l *
+ end_round_d
+ 00301628 0 none ,l *
+ end_denormal
+ 0030162c 0 none ,l *
+ round_carry
+ 0030163c 0 none ,l *
+ end_round
+ 00301640 0 none ,l *
+ return_value
+ 00301640 0 none ,l *
+ return
+ 0030164e 0 none ,l *
+ EXP_INF
+ 0030165c 0 none ,l *
+ LRS
+ 00301660 0 none ,l *
+ MAN_1
+ 00301664 0 none ,l *
+ NaN
+ 00301668 0 none ,l *
+FILE=r_dtos
+ 0030166c 00301747 dc
+ __dtos
+ 0030166c 0 none ,g *
+ end_sticky
+ 003016c2 0 none ,l *
+ denormalize_loop
+ 003016ca 0 none ,l *
+ end_denormal
+ 003016d4 0 none ,l *
+ round_carry
+ 003016e4 0 none ,l *
+ end_round
+ 003016e8 0 none ,l *
+ return
+ 003016f8 0 none ,l *
+ exception
+ 00301706 0 none ,l *
+ return_inf
+ 0030170e 0 none ,l *
+ return_NaN
+ 00301716 0 none ,l *
+ return_zero
+ 0030171c 0 none ,l *
+ EXP_INF
+ 00301724 0 none ,l *
+ MMASK
+ 00301728 0 none ,l *
+ SMASK
+ 0030172c 0 none ,l *
+ DEF_BIAS
+ 00301730 0 none ,l *
+ MSB
+ 00301734 0 none ,l *
+ INFS
+ 00301738 0 none ,l *
+ CARRY_CHECK
+ 0030173c 0 none ,l *
+ RET_INF
+ 00301740 0 none ,l *
+ NaN
+ 00301744 0 none ,l *
+FILE=r_eqs
+ 00301748 003017af 68
+ __eqs
+ 00301748 0 none ,g *
+ exception_return1
+ 0030176c 0 none ,l *
+ exception_return2
+ 00301770 0 none ,l *
+ exception_return3
+ 00301774 0 none ,l *
+ false
+ 0030177c 0 none ,l *
+ return
+ 0030177e 0 none ,l *
+ exception1
+ 0030178a 0 none ,l *
+ exception2
+ 00301792 0 none ,l *
+ exception3
+ 0030179a 0 none ,l *
+ EXP_INF
+ 003017ac 0 none ,l *
+FILE=r_gts
+ 003017b0 00301827 78
+ __gts
+ 003017b0 0 none ,g *
+ exception_return1
+ 003017d4 0 none ,l *
+ exception_return2
+ 003017d8 0 none ,l *
+ exception_return3
+ 003017dc 0 none ,l *
+ minus
+ 003017ea 0 none ,l *
+ sign_def
+ 003017f0 0 none ,l *
+ return
+ 003017f4 0 none ,l *
+ exception1
+ 00301800 0 none ,l *
+ exception2
+ 00301808 0 none ,l *
+ exception3
+ 00301810 0 none ,l *
+ false
+ 00301820 0 none ,l *
+ EXP_INF
+ 00301824 0 none ,l *
+FILE=r_itos
+ 00301828 0030187f 58
+ __itos
+ 00301828 0 none ,g *
+ end_negate
+ 0030183c 0 none ,l *
+ sftl_loop
+ 0030183e 0 none ,l *
+ end_round
+ 0030185a 0 none ,l *
+ return_value
+ 0030185a 0 none ,l *
+ return_zero
+ 00301870 0 none ,l *
+ EXP_32
+ 00301874 0 none ,l *
+ LRS
+ 00301878 0 none ,l *
+ MAN_1
+ 0030187c 0 none ,l *
+FILE=r_ltd
+ 00301880 00301927 a8
+ __ltd
+ 00301880 0 none ,g *
+ exception_return1
+ 003018b2 0 none ,l *
+ exception_return2
+ 003018b6 0 none ,l *
+ exception_return3
+ 003018ba 0 none ,l *
+ minus
+ 003018cc 0 none ,l *
+ sign_def
+ 003018d4 0 none ,l *
+ return
+ 003018d8 0 none ,l *
+ exception1
+ 003018ec 0 none ,l *
+ exception2
+ 003018f8 0 none ,l *
+ exception3
+ 00301904 0 none ,l *
+ false
+ 0030191c 0 none ,l *
+ EXP_INF
+ 00301920 0 none ,l *
+ MMASK
+ 00301924 0 none ,l *
+FILE=r_lts
+ 00301928 0030199f 78
+ __lts
+ 00301928 0 none ,g *
+ exception_return1
+ 0030194c 0 none ,l *
+ exception_return2
+ 00301950 0 none ,l *
+ exception_return3
+ 00301954 0 none ,l *
+ minus
+ 00301962 0 none ,l *
+ sign_def
+ 00301968 0 none ,l *
+ return
+ 0030196c 0 none ,l *
+ exception1
+ 00301978 0 none ,l *
+ exception2
+ 00301980 0 none ,l *
+ exception3
+ 00301988 0 none ,l *
+ false
+ 00301998 0 none ,l *
+ EXP_INF
+ 0030199c 0 none ,l *
+FILE=r_muls
+ 003019a0 00301adf 140
+ __muls
+ 003019a0 0 none ,g *
+ exception_return3
+ 003019d8 0 none ,l *
+ exception_return4
+ 003019dc 0 none ,l *
+ end_calc_sticky
+ 003019fe 0 none ,l *
+ denormal
+ 00301a0e 0 none ,l *
+ end_normalize
+ 00301a10 0 none ,l *
+ denormalize_loop
+ 00301a18 0 none ,l *
+ round_denormal
+ 00301a22 0 none ,l *
+ end_round_d
+ 00301a36 0 none ,l *
+ end_denormal
+ 00301a3a 0 none ,l *
+ round_carry
+ 00301a4a 0 none ,l *
+ end_round
+ 00301a4e 0 none ,l *
+ return_value
+ 00301a4e 0 none ,l *
+ return
+ 00301a5c 0 none ,l *
+ exception1
+ 00301a6c 0 none ,l *
+ parm2_NaN_check
+ 00301a80 0 none ,l *
+ exception2
+ 00301a88 0 none ,l *
+ exception3
+ 00301a98 0 none ,l *
+ p1_norm_loop
+ 00301aa0 0 none ,l *
+ end_p1_norm
+ 00301aa6 0 none ,l *
+ exception4
+ 00301aaa 0 none ,l *
+ p2_normalize
+ 00301aae 0 none ,l *
+ p2_norm_loop
+ 00301ab2 0 none ,l *
+ end_p2_norm
+ 00301ab8 0 none ,l *
+ return_zero
+ 00301abc 0 none ,l *
+ return_inf
+ 00301ac4 0 none ,l *
+ return_NaN
+ 00301aca 0 none ,l *
+ EXP_INF
+ 00301ad0 0 none ,l *
+ LRS
+ 00301ad4 0 none ,l *
+ MAN_1
+ 00301ad8 0 none ,l *
+ NaN
+ 00301adc 0 none ,l *
+FILE=r_stod
+ 00301ae0 00301b67 88
+ __stod
+ 00301ae0 0 none ,g *
+ exception_return
+ 00301afe 0 none ,l *
+ pack
+ 00301b02 0 none ,l *
+ return
+ 00301b1e 0 none ,l *
+ exception1
+ 00301b2e 0 none ,l *
+ return_NaN
+ 00301b38 0 none ,l *
+ exception2
+ 00301b3e 0 none ,l *
+ p1_norm_loop
+ 00301b46 0 none ,l *
+ end_p1_norm
+ 00301b4c 0 none ,l *
+ return_zero
+ 00301b50 0 none ,l *
+ EXP_INF
+ 00301b54 0 none ,l *
+ MMASK
+ 00301b58 0 none ,l *
+ RET_INF
+ 00301b5c 0 none ,l *
+ NAN
+ 00301b60 0 none ,l *
+ DEF_BIAS
+ 00301b64 0 none ,l *
+FILE=r_stoi
+ 00301b68 00301bbf 58
+ __stoi
+ 00301b68 0 none ,g *
+ __stou
+ 00301b68 0 none ,g *
+ loop_sftl
+ 00301b98 0 none ,l *
+ shift_r
+ 00301ba2 0 none ,l *
+ loop_sftr
+ 00301ba4 0 none ,l *
+ end_shift
+ 00301baa 0 none ,l *
+ return
+ 00301bb0 0 none ,l *
+ end_nagate
+ 00301bb0 0 none ,l *
+ return_zero
+ 00301bb8 0 none ,l *
+ EXP_INF
+ 00301bbc 0 none ,l *
+FILE=r_utod
+ 00301bc0 00301bff 40
+ __utod
+ 00301bc0 0 none ,g *
+ sftl_loop
+ 00301bca 0 none ,l *
+ return
+ 00301be6 0 none ,l *
+ return_zero
+ 00301bf4 0 none ,l *
+ EXP_32
+ 00301bfc 0 none ,l *
+FILE=r_utos
+ 00301c00 00301c47 48
+ __utos
+ 00301c00 0 none ,g *
+ sftl_loop
+ 00301c0a 0 none ,l *
+ end_round
+ 00301c26 0 none ,l *
+ return_value
+ 00301c26 0 none ,l *
+ return_zero
+ 00301c38 0 none ,l *
+ EXP_32
+ 00301c3c 0 none ,l *
+ LRS
+ 00301c40 0 none ,l *
+ MAN_1
+ 00301c44 0 none ,l *
+FILE=__modlu
+ 00301c48 00301cff b8
+ __modlu
+ 00301c48 0 none ,g *
+ modlu_L
+ 00301ce0 0 none ,l *
+ modlu_zero
+ 00301ce8 0 none ,l *
+ A_errno
+ 00301cf8 0 none ,l *
+ n_zerono
+ 00301cfc 0 none ,l *
+FILE=__s_mvn
+ 00301d00 00301d37 38
+ __slow_mvn
+ 00301d00 0 none ,g *
+ SMVN_B
+ 00301d0e 0 none ,l *
+ SMVN_END
+ 00301d30 0 none ,l *
+FILE=cosf
+ 00301d38 00301da7 70
+ _cosf
+ 00301d38 70 func ,g *
+FILE=sinf
+ 00301da8 00301e17 70
+ _sinf
+ 00301da8 70 func ,g *
+FILE=_Bdel_cychdr
+ 00301e18 00301e27 10
+ _Bdel_cychdr
+ 00301e18 0 none ,g *
+FILE=_BfileFLS_CloseFile
+ 00301e28 00301e37 10
+ _BfileFLS_CloseFile
+ 00301e28 0 none ,g *
+FILE=_Bkey_Set_RepeatTime_Default
+ 00301e38 00301e47 10
+ _Bkey_Set_RepeatTime_Default
+ 00301e38 0 none ,g *
+FILE=_CallbackAtQuitMainFunction
+ 00301e48 00301e57 10
+ _CallbackAtQuitMainFunction
+ 00301e48 0 none ,g *
+FILE=_flsFindClose
+ 00301e58 00301e67 10
+ _flsFindClose
+ 00301e58 0 none ,g *
+FILE=_GLibAddinAplExecutionCheck
+ 00301e68 00301e77 10
+ _GLibAddinAplExecutionCheck
+ 00301e68 0 none ,g *
+FILE=_Hmem_SetMMU
+ 00301e78 00301e87 10
+ _Hmem_SetMMU
+ 00301e78 0 none ,g *
+FILE=timer
+ 00301e88 00301f87 100
+ _GetSDKLibraryVersion
+ 00301e88 6 func ,g *
+ _SetTimer
+ 00301e8e 54 func ,g *
+ _KillTimer
+ 00301ee2 44 func ,g *
+ _Sleep
+ 00301f26 62 func ,l *
+FILE=__istos
+ 00301f88 0030202b a4
+ __istos
+ 00301f88 0 none ,g *
+ denormalize_loop
+ 00301fae 0 none ,l *
+ round_denormal
+ 00301fbc 0 none ,l *
+ end_round_d
+ 00301fd0 0 none ,l *
+ end_denormal
+ 00301fd4 0 none ,l *
+ end_round
+ 00301fe8 0 none ,l *
+ return_value
+ 00301fe8 0 none ,l *
+ exception1
+ 00301ff8 0 none ,l *
+ return_zero
+ 00302000 0 none ,l *
+ return_inf
+ 00302006 0 none ,l *
+ return_NaN
+ 0030200c 0 none ,l *
+ IEEE_INF
+ 00302018 0 none ,l *
+ IN_INF
+ 0030201c 0 none ,l *
+ IN_ZERO
+ 00302020 0 none ,l *
+ LRS
+ 00302024 0 none ,l *
+ MAN_1
+ 00302028 0 none ,l *
+FILE=__stois
+ 0030202c 00302097 6c
+ __stois
+ 0030202c 0 none ,g *
+ exception_return
+ 00302044 0 none ,l *
+ return_value
+ 0030204c 0 none ,l *
+ exception1
+ 0030205c 0 none ,l *
+ exception2
+ 00302064 0 none ,l *
+ norm_loop
+ 0030206c 0 none ,l *
+ end_norm
+ 00302072 0 none ,l *
+ return_zero
+ 00302076 0 none ,l *
+ return_inf
+ 0030207c 0 none ,l *
+ return_NaN
+ 00302082 0 none ,l *
+ IEEE_INF
+ 0030208c 0 none ,l *
+ IN_INF
+ 00302090 0 none ,l *
+ IN_ZERO
+ 00302094 0 none ,l *
+FILE=__divls
+ 00302098 0030214b b4
+ __divls
+ 00302098 0 none ,g *
+ divls_zero
+ 00302136 0 none ,l *
+ A_errno
+ 00302144 0 none ,l *
+ n_zerono
+ 00302148 0 none ,l *
+FILE=__modls
+ 0030214c 00302213 c8
+ __modls
+ 0030214c 0 none ,g *
+ modls_L
+ 003021f2 0 none ,l *
+ modls_zero
+ 003021fe 0 none ,l *
+ A_errno
+ 0030220c 0 none ,l *
+ n_zerono
+ 00302210 0 none ,l *
+FILE=_in_coss
+ 00302214 00302373 160
+ __in_coss
+ 00302214 160 func ,g *
+FILE=_in_sins
+ 00302374 003024eb 178
+ __in_sins
+ 00302374 178 func ,g *
+FILE=_Bcre_cychdr
+ 003024ec 003024fb 10
+ _Bcre_cychdr
+ 003024ec 0 none ,g *
+FILE=_BSrl_DummyWAIT
+ 003024fc 0030250b 10
+ _BSrl_DummyWAIT
+ 003024fc 0 none ,g *
+FILE=_Bsta_cychdr
+ 0030250c 0030251b 10
+ _Bsta_cychdr
+ 0030250c 0 none ,g *
+FILE=_Bstp_cychdr
+ 0030251c 0030252b 10
+ _Bstp_cychdr
+ 0030251c 0 none ,g *
+FILE=__i_adds
+ 0030252c 00302797 26c
+ __in_subs
+ 0030252c 0 none ,g *
+ __in_adds
+ 00302538 0 none ,g *
+ swap_end
+ 00302558 0 none ,l *
+ e_sftr31
+ 00302582 0 none ,l *
+ or_sticky
+ 00302586 0 none ,l *
+ end_sftr
+ 0030258e 0 none ,l *
+ mantissa_sub
+ 003025a8 0 none ,l *
+ normalize
+ 003025b4 0 none ,l *
+ n_sftl_8
+ 003025ca 0 none ,l *
+ n_sftl_4
+ 003025d4 0 none ,l *
+ n_sftl_2
+ 003025e2 0 none ,l *
+ n_sftl_1
+ 003025ec 0 none ,l *
+ normal
+ 003025f4 0 none ,l *
+ end_calc
+ 003025fc 0 none ,l *
+ return_value
+ 003025fc 0 none ,l *
+ exception1
+ 0030260c 0 none ,l *
+ exception2
+ 00302620 0 none ,l *
+ return_NaN
+ 00302628 0 none ,l *
+ plus_zero
+ 00302630 0 none ,l *
+ return_zero
+ 00302632 0 none ,l *
+ e_sftr7
+ 00302638 0 none ,l *
+ e_sftr5
+ 0030263a 0 none ,l *
+ e_sftr3
+ 0030263c 0 none ,l *
+ e_sftr1
+ 0030263e 0 none ,l *
+ e_sftr6
+ 00302642 0 none ,l *
+ e_sftr4
+ 00302644 0 none ,l *
+ e_sftr2
+ 00302646 0 none ,l *
+ e_sftr15
+ 0030264a 0 none ,l *
+ e_sftr13
+ 0030264c 0 none ,l *
+ e_sftr11
+ 0030264e 0 none ,l *
+ e_sftr9
+ 00302650 0 none ,l *
+ e_sftr14
+ 00302656 0 none ,l *
+ e_sftr12
+ 00302658 0 none ,l *
+ e_sftr10
+ 0030265a 0 none ,l *
+ e_sftr8
+ 0030265c 0 none ,l *
+ e_sftr23
+ 00302660 0 none ,l *
+ e_sftr21
+ 00302662 0 none ,l *
+ e_sftr19
+ 00302664 0 none ,l *
+ e_sftr17
+ 00302666 0 none ,l *
+ e_sftr22
+ 0030266c 0 none ,l *
+ e_sftr20
+ 0030266e 0 none ,l *
+ e_sftr18
+ 00302670 0 none ,l *
+ e_sftr16
+ 00302672 0 none ,l *
+ e_sftr29
+ 00302676 0 none ,l *
+ e_sftr27
+ 00302678 0 none ,l *
+ e_sftr25
+ 0030267a 0 none ,l *
+ e_sftr30
+ 00302682 0 none ,l *
+ e_sftr28
+ 00302684 0 none ,l *
+ e_sftr26
+ 00302686 0 none ,l *
+ e_sftr24
+ 00302688 0 none ,l *
+ table
+ 00302690 0 none ,l *
+ INF
+ 00302788 0 none ,l *
+ ZERO
+ 0030278c 0 none ,l *
+ STICKY
+ 00302790 0 none ,l *
+ HALF
+ 00302794 0 none ,l *
+FILE=__i_fmds
+ 00302798 0030281f 88
+ __in_fmods
+ 00302798 0 none ,g *
+ div_loop
+ 003027be 0 none ,l *
+ end_loop
+ 003027cc 0 none ,l *
+ normalize_loop
+ 003027d4 0 none ,l *
+ end_calc_mantissa
+ 003027d4 0 none ,l *
+ end_normalize
+ 003027e2 0 none ,l *
+ return_value
+ 003027e2 0 none ,l *
+ exception1
+ 003027f4 0 none ,l *
+ return_prm1
+ 003027f8 0 none ,l *
+ qshift_ret_z
+ 003027fc 0 none ,l *
+ sft_loop
+ 003027fe 0 none ,l *
+ return_zero
+ 00302808 0 none ,l *
+ return_NaN
+ 0030280e 0 none ,l *
+ INF
+ 00302818 0 none ,l *
+ ZERO
+ 0030281c 0 none ,l *
+FILE=__istyps
+ 00302820 00302857 38
+ __istypes
+ 00302820 0 none ,g *
+ exception1
+ 0030283c 0 none ,l *
+ set_NaN
+ 00302846 0 none ,l *
+ exception2
+ 0030284a 0 none ,l *
+ INF
+ 00302850 0 none ,l *
+ ZERO
+ 00302854 0 none ,l *
+FILE=__q_fmvn
+ 00302858 003028fb a4
+ __quick_evn_mvn
+ 00302858 0 none ,g *
+ __quick_odd_mvn
+ 00302864 0 none ,g *
+ A_FMVN_TBL
+ 00302870 0 none ,l *
+ FMVN_64
+ 00302876 0 none ,l *
+ FMVN_60
+ 0030287a 0 none ,l *
+ FMVN_56
+ 0030287e 0 none ,l *
+ FMVN_52
+ 00302882 0 none ,l *
+ FMVN_48
+ 00302886 0 none ,l *
+ FMVN_44
+ 0030288a 0 none ,l *
+ FMVN_40
+ 0030288e 0 none ,l *
+ FMVN_36
+ 00302892 0 none ,l *
+ FMVN_32
+ 00302896 0 none ,l *
+ FMVN_28
+ 0030289a 0 none ,l *
+ FMVN_24
+ 0030289e 0 none ,l *
+ FMVN_20
+ 003028a2 0 none ,l *
+ FMVN_16
+ 003028a6 0 none ,l *
+ FMVN_12
+ 003028aa 0 none ,l *
+ FMVN_8
+ 003028ae 0 none ,l *
+ FMVN_4
+ 003028b2 0 none ,l *
+ FMVN_0
+ 003028b4 0 none ,l *
+ FMVN_TBL
+ 003028b8 0 none ,l *
+FILE=_a_coss
+ 003028fc 0030294b 50
+ __app_coss
+ 003028fc 50 func ,g *
+FILE=_a_sins
+ 0030294c 003029b7 6c
+ __app_sins
+ 0030294c 6c func ,g *
+FILE=__i_muls
+ 003029b8 00302a67 b0
+ __in_muls
+ 003029b8 0 none ,g *
+ denormal
+ 003029f2 0 none ,l *
+ end_normalize
+ 003029f6 0 none ,l *
+ end_sticky
+ 00302a08 0 none ,l *
+ return_value
+ 00302a08 0 none ,l *
+ exception1
+ 00302a18 0 none ,l *
+ p2zero_check
+ 00302a28 0 none ,l *
+ exception2
+ 00302a32 0 none ,l *
+ p1zero_check
+ 00302a42 0 none ,l *
+ return_zero
+ 00302a4c 0 none ,l *
+ return_inf
+ 00302a52 0 none ,l *
+ return_NaN
+ 00302a58 0 none ,l *
+ INF
+ 00302a60 0 none ,l *
+ ZERO
+ 00302a64 0 none ,l *
+FILE=__polins
+ 00302a68 00302acf 68
+ __polinos
+ 00302a68 0 none ,g *
+ start
+ 00302a92 0 none ,l *
+ A_in_adds
+ 00302ac8 0 none ,l *
+ A_in_muls
+ 00302acc 0 none ,l *
+
+SECTION=C
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 00302ad0 00302b49 7a
+ _SysCallWrapper
+ 00302ad0 c data ,g *
+ _sprite
+ 00302adc 1b data ,g *
+FILE=addin_sct
+ 00302b4c 00302b5f 14
+ _B_BGN
+ 00302b4c 0 none ,g *
+ _B_END
+ 00302b50 0 none ,g *
+ _R_BGN
+ 00302b54 0 none ,g *
+ _R_END
+ 00302b58 0 none ,g *
+ _D_ROM
+ 00302b5c 0 none ,g *
+FILE=consts
+ 00302b60 00302c27 c8
+ __IFNANS
+ 00302b60 8 data ,g *
+ __IFZEROS
+ 00302b68 8 data ,g *
+ __IFINFS
+ 00302b70 8 data ,g *
+ __IFONES
+ 00302b78 8 data ,g *
+ __HALFS
+ 00302b80 8 data ,g *
+ __QUOTS
+ 00302b88 8 data ,g *
+ __TWOS
+ 00302b90 8 data ,g *
+ __FOURS
+ 00302b98 8 data ,g *
+ __PAIS
+ 00302ba0 8 data ,g *
+ __2PAIS
+ 00302ba8 8 data ,g *
+ __HLFPAIS
+ 00302bb0 8 data ,g *
+ __QUOPAIS
+ 00302bb8 8 data ,g *
+ __LOGE2S
+ 00302bc0 8 data ,g *
+ __NIFZEROS
+ 00302bc8 8 data ,g *
+ __NIFINFS
+ 00302bd0 8 data ,g *
+ __NIFONES
+ 00302bd8 8 data ,g *
+ __NHALFS
+ 00302be0 8 data ,g *
+ __NQUOTS
+ 00302be8 8 data ,g *
+ __NTWOS
+ 00302bf0 8 data ,g *
+ __NFOURS
+ 00302bf8 8 data ,g *
+ __NPAIS
+ 00302c00 8 data ,g *
+ __N2PAIS
+ 00302c08 8 data ,g *
+ __NHLFPAIS
+ 00302c10 8 data ,g *
+ __NQUOPAIS
+ 00302c18 8 data ,g *
+ __NLOGE2S
+ 00302c20 8 data ,g *
+FILE=_a_coss
+ 00302c28 00302c5f 38
+ _cos_coef$297
+ 00302c28 38 data ,l *
+FILE=_a_sins
+ 00302c60 00302c97 38
+ _sin_coef$297
+ 00302c60 38 data ,l *
+
+SECTION=B_BR_Size
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 08100000 08100003 4
+ _BR_Size
+ 08100000 4 data ,g *
+
+SECTION=B
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 08100004 08100133 130
+ _vram
+ 08100004 4 data ,g *
+ _fire
+ 08100008 12c data ,g *
+FILE=_errno
+ 08100134 08100137 4
+ __errno
+ 08100134 4 data ,g *
+
+SECTION=R
+FILE=G:\Casio SDK\Projekte\Firework\Debug\Snow.obj
+ 08100138 08100157 20
+ _iSysCallFuncPtr
+ 08100138 4 data ,g *
+ _lastrandom
+ 0810013c 4 data ,l *
+ _variable
+ 08100140 18 data ,g *
+FILE=G:\Casio SDK\OS\FX\lib\setup.obj
+ 08100158 0810015b 4
+ _gb_OnAppClose
+ 08100158 4 data ,g *
+
+Absolute value symbols
+FILE=__modlu
+ zerodiv
+ 0000044e 0 none ,l *
+FILE=_Bdel_cychdr
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_BfileFLS_CloseFile
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_Bkey_Set_RepeatTime_Default
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_CallbackAtQuitMainFunction
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_flsFindClose
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_GLibAddinAplExecutionCheck
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_Hmem_SetMMU
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=__divls
+ zerodiv
+ 0000044e 0 none ,l *
+FILE=__modls
+ zerodiv
+ 0000044e 0 none ,l *
+FILE=_Bcre_cychdr
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_BSrl_DummyWAIT
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_Bsta_cychdr
+ __JumpTableTOP
+ 80010070 0 none ,l *
+FILE=_Bstp_cychdr
+ __JumpTableTOP
+ 80010070 0 none ,l *
+
+*** Delete Symbols ***
+
+SYMBOL SIZE INFO
+
+*** Variable Accessible with Abs8 ***
+
+SYMBOL SIZE COUNTS OPTIMIZE
+
+*** Variable Accessible with Abs16 ***
+
+SYMBOL SIZE COUNTS OPTIMIZE
+
+*** Function Call ***
+
+SYMBOL COUNTS OPTIMIZE
diff --git a/Debug/SYSCALLS.obj b/Debug/SYSCALLS.obj Binary files differnew file mode 100644 index 0000000..f83f1a8 --- /dev/null +++ b/Debug/SYSCALLS.obj diff --git a/Debug/Snow.lst b/Debug/Snow.lst new file mode 100644 index 0000000..f6cf5c6 --- /dev/null +++ b/Debug/Snow.lst @@ -0,0 +1,1457 @@ +SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 1
+
+************ OBJECT LISTING ************
+
+FILE NAME: G:\Casio SDK\Projekte\Firework\Snow.c
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 1 #include "mathf.h"
+ Snow.c 2
+ Snow.c 3 char *Disp_GetVRAMPtr(void);
+ Snow.c 4 int Timer_Install(int TimerID, void (*handler)(void), int delay);
+ Snow.c 5 int Timer_Start(int TimerID);
+ Snow.c 6 void App_PROG();
+ Snow.c 7 int RTC_GetTicks();
+ Snow.c 8 void AllClear_VRAM();
+ Snow.c 9
+ Snow.c 10 typedef struct{
+ Snow.c 11 unsigned int x1;
+ Snow.c 12 unsigned int y1;
+ Snow.c 13 unsigned int x2;
+ Snow.c 14 unsigned int y2;
+ Snow.c 15 unsigned char f[4];
+ Snow.c 16 unsigned int on_bits;
+ Snow.c 17 unsigned int off_bits;
+ Snow.c 18 } TShape;
+ Snow.c 19
+ Snow.c 20 void ShapeToVRAM( TShape* x );
+ Snow.c 21
+ Snow.c 22 char *vram;
+ Snow.c 23
+ Snow.c 24 const int SysCallWrapper[] = {0xD201422B,0x60F20000,0x80010070};
+ Snow.c 25 const int (*iSysCallFuncPtr)( int R4, int R5, int R6, int R7, int FNo ) = (void*)&SysCallWrapper;
+ Snow.c 26 #define Alpha_GetData(VarName,Dest) (void)(*iSysCallFuncPtr)( VarName,(int)Dest, 0, 0, 0x04DF)
+ Snow.c 27 #define Alpha_ClearAll() (void)(*iSysCallFuncPtr)( 0,0, 0, 0, 0x004E1)
+ Snow.c 28
+ Snow.c 29 int InputString( unsigned char*buff, unsigned char *heading, int maxlen );
+ Snow.c 30
+ Snow.c 31 static unsigned int lastrandom=0x12345678;
+ Snow.c 32
+ Snow.c 33 unsigned int random( int seed){
+P 00000000 _random: ; function: random
+ ; frame size=4
+ 00000000 4F12 STS.L MACL,@-R15
+ Snow.c 34 if (seed) lastrandom=seed;
+ 00000002 2448 TST R4,R4
+ 00000004 D53C MOV.L L413+4,R5 ; __$lastrandom
+ 00000006 8900 BT L366
+ 00000008 2542 MOV.L R4,@R5
+ 0000000A L366:
+ Snow.c 35 lastrandom = ( 0x41C64E6D*lastrandom ) + 0x3039;
+ 0000000A D33C MOV.L L413+8,R3 ; H'41C64E6D
+ 0000000C 6252 MOV.L @R5,R2
+ 0000000E 0237 MUL.L R3,R2
+ 00000010 9170 MOV.W L413,R1 ; H'3039
+ 00000012 031A STS MACL,R3
+ 00000014 331C ADD R1,R3
+ Snow.c 36 return ( lastrandom >> 16 );
+ 00000016 6033 MOV R3,R0
+ 00000018 2532 MOV.L R3,@R5
+ 0000001A 4029 SHLR16 R0
+ Snow.c 37 }
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 2
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0000001C 000B RTS
+ 0000001E 4F16 LDS.L @R15+,MACL
+ Snow.c 38
+ Snow.c 39 const char sprite[9][3] = {
+ Snow.c 40 { 0 , 1 , 0 },
+ Snow.c 41 { 1 , 1 , 1 },
+ Snow.c 42 { 1 , 0 , 1 },
+ Snow.c 43 { 1 , 0 , 1 },
+ Snow.c 44 { 1 , 0 , 1 },
+ Snow.c 45 { 1 , 1 , 1 },
+ Snow.c 46 { 0 , 0 , 1 },
+ Snow.c 47 { 0 , 0 , 1 },
+ Snow.c 48 { 0 , 0 , 1 }
+ Snow.c 49 };
+ Snow.c 50
+ Snow.c 51 #define abs(x) (x < 0)?-x:x
+ Snow.c 52 #define sgn(x) (x < 0)?-1:(x == 0)?0:1
+ Snow.c 53
+ Snow.c 54 void setpixel(unsigned char x, char y)
+ 00000020 _setpixel: ; function: setpixel
+ ; frame size=32
+ 00000020 4F22 STS.L PR,@-R15
+ Snow.c 55 {
+ Snow.c 56 TShape t;
+ Snow.c 57 if(x&~127 || y&~63) return;
+ 00000022 624C EXTU.B R4,R2
+ 00000024 7FE4 ADD #-28,R15
+ 00000026 E380 MOV #-128,R3
+ 00000028 2238 TST R3,R2
+ 0000002A 8B14 BF L370
+ 0000002C 605E EXTS.B R5,R0
+ 0000002E E2C0 MOV #-64,R2
+ 00000030 2028 TST R2,R0
+ 00000032 8B10 BF L370
+ Snow.c 58 t.x1 = x;
+ 00000034 644C EXTU.B R4,R4
+ Snow.c 59 t.y1 = y;
+ 00000036 655E EXTS.B R5,R5
+ 00000038 2F42 MOV.L R4,@R15
+ Snow.c 60 t.f[0] = 2;
+ 0000003A E302 MOV #2,R3
+ 0000003C 1F51 MOV.L R5,@(4,R15)
+ 0000003E E010 MOV #16,R0
+ 00000040 0F34 MOV.B R3,@(R0,R15)
+ Snow.c 61 t.f[1] = 1;
+ 00000042 E401 MOV #1,R4
+ Snow.c 62 t.f[2] = 1;
+ Snow.c 63 t.f[3] = 1;
+ Snow.c 64
+ Snow.c 65 ShapeToDD(&t);
+ 00000044 D32E MOV.L L413+12,R3 ; _ShapeToDD
+ 00000046 E011 MOV #17,R0
+ 00000048 0F44 MOV.B R4,@(R0,R15)
+ 0000004A E012 MOV #18,R0
+ 0000004C 0F44 MOV.B R4,@(R0,R15)
+ 0000004E E013 MOV #19,R0
+ 00000050 0F44 MOV.B R4,@(R0,R15)
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 3
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000052 430B JSR @R3
+ 00000054 64F3 MOV R15,R4
+ Snow.c 66 }
+ 00000056 L370:
+ 00000056 7F1C ADD #28,R15
+ 00000058 4F26 LDS.L @R15+,PR
+ 0000005A 000B RTS
+ 0000005C 0009 NOP
+ Snow.c 67
+ Snow.c 68 void line(int x1, int y1, int x2, int y2)
+ 0000005E _line: ; function: line
+ ; frame size=36
+ Snow.c 69 {
+ Snow.c 70 int i, x, y, dx, dy, sx, sy, cumul;
+ Snow.c 71 x = x1;
+ Snow.c 72 y = y1;
+ Snow.c 73 dx = x2 - x1;
+ 0000005E 6363 MOV R6,R3
+ 00000060 2FE6 MOV.L R14,@-R15
+ Snow.c 74 dy = y2 - y1;
+ 00000062 6273 MOV R7,R2
+ 00000064 2FD6 MOV.L R13,@-R15
+ 00000066 3348 SUB R4,R3
+ 00000068 2FC6 MOV.L R12,@-R15
+ 0000006A 6D43 MOV R4,R13
+ 0000006C 2FB6 MOV.L R11,@-R15
+ 0000006E 6C53 MOV R5,R12
+ 00000070 2FA6 MOV.L R10,@-R15
+ 00000072 6433 MOV R3,R4
+ 00000074 2F96 MOV.L R9,@-R15
+ 00000076 3258 SUB R5,R2
+ 00000078 2F86 MOV.L R8,@-R15
+ Snow.c 75 sx = sgn(dx);
+ 0000007A 4411 CMP/PZ R4
+ 0000007C 4F22 STS.L PR,@-R15
+ 0000007E 7FFC ADD #-4,R15
+ 00000080 8D02 BT/S L371
+ 00000082 6523 MOV R2,R5
+ 00000084 A005 BRA L373
+ 00000086 E8FF MOV #-1,R8
+ 00000088 L371:
+ 00000088 2448 TST R4,R4
+ 0000008A 8B01 BF L372
+ 0000008C A001 BRA L373
+ 0000008E E800 MOV #0,R8
+ 00000090 L372:
+ 00000090 E801 MOV #1,R8
+ 00000092 L373:
+ Snow.c 76 sy = sgn(dy);
+ 00000092 4511 CMP/PZ R5
+ 00000094 8901 BT L375
+ 00000096 A005 BRA L377
+ 00000098 E2FF MOV #-1,R2
+ 0000009A L375:
+ 0000009A 2558 TST R5,R5
+ 0000009C 8B01 BF L376
+ 0000009E A001 BRA L377
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 4
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000000A0 E200 MOV #0,R2
+ 000000A2 L376:
+ 000000A2 E201 MOV #1,R2
+ 000000A4 L377:
+ Snow.c 77 dx = abs(dx);
+ 000000A4 4411 CMP/PZ R4
+ 000000A6 8D02 BT/S L379
+ 000000A8 2F22 MOV.L R2,@R15
+ 000000AA A001 BRA L380
+ 000000AC 6E4B NEG R4,R14
+ 000000AE L379:
+ 000000AE 6E43 MOV R4,R14
+ 000000B0 L380:
+ Snow.c 78 dy = abs(dy);
+ 000000B0 4511 CMP/PZ R5
+ 000000B2 8901 BT L381
+ 000000B4 A001 BRA L382
+ 000000B6 6B5B NEG R5,R11
+ 000000B8 L381:
+ 000000B8 6B53 MOV R5,R11
+ 000000BA L382:
+ Snow.c 79 setpixel(x, y);
+ 000000BA 65C3 MOV R12,R5
+ 000000BC BFB0 BSR _setpixel
+ 000000BE 64D3 MOV R13,R4
+ Snow.c 80 if(dx > dy)
+ 000000C0 3EB7 CMP/GT R11,R14
+ 000000C2 8F1F BF/S L383
+ 000000C4 E401 MOV #1,R4
+ Snow.c 81 {
+ Snow.c 82 cumul = dx / 2;
+ 000000C6 6AE3 MOV R14,R10
+ 000000C8 E300 MOV #0,R3
+ 000000CA 33A7 CMP/GT R10,R3
+ 000000CC 3A3E ADDC R3,R10
+ 000000CE 4A21 SHAR R10
+ Snow.c 83 for(i=1 ; i<dx ; i++)
+ 000000D0 6943 MOV R4,R9
+ 000000D2 39E3 CMP/GE R14,R9
+ 000000D4 892B BT L387
+ 000000D6 L385:
+ Snow.c 84 {
+ Snow.c 85 x += sx;
+ Snow.c 86 cumul += dy;
+ 000000D6 3ABC ADD R11,R10
+ Snow.c 87 if(cumul > dx)
+ 000000D8 3AE7 CMP/GT R14,R10
+ 000000DA 8F03 BF/S L386
+ 000000DC 3D8C ADD R8,R13
+ Snow.c 88 {
+ Snow.c 89 cumul -= dx;
+ 000000DE 3AE8 SUB R14,R10
+ Snow.c 90 y += sy;
+ 000000E0 62F2 MOV.L @R15,R2
+ 000000E2 3C2C ADD R2,R12
+ 000000E4 L386:
+ Snow.c 91 }
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 5
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 92 setpixel(x, y);
+ 000000E4 65C3 MOV R12,R5
+ 000000E6 BF9B BSR _setpixel
+ 000000E8 64D3 MOV R13,R4
+ 000000EA 7901 ADD #1,R9
+ 000000EC 39E3 CMP/GE R14,R9
+ 000000EE 8BF2 BF L385
+ 000000F0 A01D BRA L387
+ 000000F2 0009 NOP
+ 000000F4 L413:
+ 000000F4 3039 .DATA.W H'3039
+ 000000F6 0000 .DATA.W 0
+ 000000F8 <00000000> .DATA.L __$lastrandom
+ 000000FC 41C64E6D .DATA.L H'41C64E6D
+ 00000100 <00000000> .DATA.L _ShapeToDD
+ 00000104 L383:
+ Snow.c 93 }
+ Snow.c 94 }
+ Snow.c 95 else
+ Snow.c 96 {
+ Snow.c 97 cumul = dy / 2;
+ 00000104 6AB3 MOV R11,R10
+ 00000106 E300 MOV #0,R3
+ 00000108 33A7 CMP/GT R10,R3
+ 0000010A 3A3E ADDC R3,R10
+ 0000010C 4A21 SHAR R10
+ Snow.c 98 for(i=1 ; i<dy ; i++)
+ 0000010E 6943 MOV R4,R9
+ 00000110 39B3 CMP/GE R11,R9
+ 00000112 890C BT L387
+ 00000114 L389:
+ Snow.c 99 {
+ Snow.c 100 y += sy;
+ 00000114 63F2 MOV.L @R15,R3
+ Snow.c 101 cumul += dx;
+ 00000116 3AEC ADD R14,R10
+ Snow.c 102 if(cumul > dy)
+ 00000118 3AB7 CMP/GT R11,R10
+ 0000011A 8F02 BF/S L390
+ 0000011C 3C3C ADD R3,R12
+ Snow.c 103 {
+ Snow.c 104 cumul -= dy;
+ 0000011E 3AB8 SUB R11,R10
+ Snow.c 105 x += sx;
+ 00000120 3D8C ADD R8,R13
+ 00000122 L390:
+ Snow.c 106 }
+ Snow.c 107 setpixel(x, y);
+ 00000122 65C3 MOV R12,R5
+ 00000124 BF7C BSR _setpixel
+ 00000126 64D3 MOV R13,R4
+ 00000128 7901 ADD #1,R9
+ 0000012A 39B3 CMP/GE R11,R9
+ 0000012C 8BF2 BF L389
+ 0000012E L387:
+ Snow.c 108 }
+ Snow.c 109 }
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 6
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 110 }
+ 0000012E 7F04 ADD #4,R15
+ 00000130 4F26 LDS.L @R15+,PR
+ 00000132 68F6 MOV.L @R15+,R8
+ 00000134 69F6 MOV.L @R15+,R9
+ 00000136 6AF6 MOV.L @R15+,R10
+ 00000138 6BF6 MOV.L @R15+,R11
+ 0000013A 6CF6 MOV.L @R15+,R12
+ 0000013C 6DF6 MOV.L @R15+,R13
+ 0000013E 000B RTS
+ 00000140 6EF6 MOV.L @R15+,R14
+ Snow.c 111
+ Snow.c 112 void drawsprite(unsigned char px, char py, float dirx)
+ 00000142 _drawsprite: ; function: drawsprite
+ ; frame size=44
+ ; used runtime library name:
+ ; __adds, __muls, __stoi, __stou, __itos, __lts
+ 00000142 6043 MOV R4,R0
+ 00000144 2FE6 MOV.L R14,@-R15
+ 00000146 2FD6 MOV.L R13,@-R15
+ 00000148 2FC6 MOV.L R12,@-R15
+ 0000014A 2FB6 MOV.L R11,@-R15
+ 0000014C 2FA6 MOV.L R10,@-R15
+ 0000014E 2F96 MOV.L R9,@-R15
+ 00000150 2F86 MOV.L R8,@-R15
+ Snow.c 113 {
+ Snow.c 114 char x;
+ Snow.c 115 float y;
+ Snow.c 116 for(y = 0; y < 9; y += 1)
+ 00000152 E903 MOV #3,R9
+ 00000154 4F22 STS.L PR,@-R15
+ 00000156 E809 MOV #9,R8
+ 00000158 7FF4 ADD #-12,R15
+ 0000015A 80F8 MOV.B R0,@(8,R15)
+ 0000015C 6053 MOV R5,R0
+ 0000015E 80F4 MOV.B R0,@(4,R15)
+ 00000160 2F62 MOV.L R6,@R15
+ 00000162 A030 BRA L391
+ 00000164 EA00 MOV #0,R10
+ 00000166 L392:
+ Snow.c 117 for(x = 0; x < 3; x++)
+ 00000166 EB00 MOV #0,R11
+ 00000168 84F8 MOV.B @(8,R15),R0
+ 0000016A 6D0C EXTU.B R0,R13
+ 0000016C D357 MOV.L L414+2,R3 ; __stoi
+ 0000016E 430B JSR @R3
+ 00000170 60A3 MOV R10,R0
+ 00000172 6C03 MOV R0,R12
+ 00000174 DE56 MOV.L L414+6,R14 ; _sprite
+ 00000176 6303 MOV R0,R3
+ 00000178 4000 SHLL R0
+ 0000017A 303C ADD R3,R0
+ 0000017C 3E0C ADD R0,R14
+ 0000017E L393:
+ Snow.c 118 if(sprite[(int)y][x] == 1)
+ 0000017E 60E0 MOV.B @R14,R0
+ 00000180 8801 CMP/EQ #1,R0
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 7
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000182 8B15 BF L394
+ Snow.c 119 setpixel(px + x + ((9 - (int)y) * dirx), py + (int)y);
+ 00000184 84F4 MOV.B @(4,R15),R0
+ 00000186 6503 MOV R0,R5
+ 00000188 D352 MOV.L L414+10,R3 ; __itos
+ 0000018A 35CC ADD R12,R5
+ 0000018C 6083 MOV R8,R0
+ 0000018E 430B JSR @R3
+ 00000190 30C8 SUB R12,R0
+ 00000192 D251 MOV.L L414+14,R2 ; __muls
+ 00000194 420B JSR @R2
+ 00000196 61F2 MOV.L @R15,R1
+ 00000198 D34E MOV.L L414+10,R3 ; __itos
+ 0000019A 6103 MOV R0,R1
+ 0000019C 430B JSR @R3
+ 0000019E 60D3 MOV R13,R0
+ 000001A0 D34E MOV.L L414+18,R3 ; __adds
+ 000001A2 430B JSR @R3
+ 000001A4 0009 NOP
+ 000001A6 D44E MOV.L L414+22,R4 ; __stou
+ 000001A8 440B JSR @R4
+ 000001AA 0009 NOP
+ 000001AC BF38 BSR _setpixel
+ 000001AE 640C EXTU.B R0,R4
+ 000001B0 L394:
+ 000001B0 7B01 ADD #1,R11
+ 000001B2 7D01 ADD #1,R13
+ 000001B4 63BE EXTS.B R11,R3
+ 000001B6 3393 CMP/GE R9,R3
+ 000001B8 8FE1 BF/S L393
+ 000001BA 7E01 ADD #1,R14
+ 000001BC D049 MOV.L L414+26,R0 ; H'3F800000
+ 000001BE D347 MOV.L L414+18,R3 ; __adds
+ 000001C0 430B JSR @R3
+ 000001C2 61A3 MOV R10,R1
+ 000001C4 6A03 MOV R0,R10
+ 000001C6 L391:
+ 000001C6 D048 MOV.L L414+30,R0 ; H'41100000
+ 000001C8 D248 MOV.L L414+34,R2 ; __lts
+ 000001CA 420B JSR @R2
+ 000001CC 61A3 MOV R10,R1
+ 000001CE 8800 CMP/EQ #0,R0
+ 000001D0 8BC9 BF L392
+ Snow.c 120 }
+ 000001D2 7F0C ADD #12,R15
+ 000001D4 4F26 LDS.L @R15+,PR
+ 000001D6 68F6 MOV.L @R15+,R8
+ 000001D8 69F6 MOV.L @R15+,R9
+ 000001DA 6AF6 MOV.L @R15+,R10
+ 000001DC 6BF6 MOV.L @R15+,R11
+ 000001DE 6CF6 MOV.L @R15+,R12
+ 000001E0 6DF6 MOV.L @R15+,R13
+ 000001E2 000B RTS
+ 000001E4 6EF6 MOV.L @R15+,R14
+ Snow.c 121
+ Snow.c 122 #define P2I 6.28318531
+ Snow.c 123
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 8
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 124 void drawboom(unsigned char px, char py, char boom, float radius)
+ 000001E6 _drawboom: ; function: drawboom
+ ; frame size=60
+ ; used runtime library name:
+ ; __adds, __muls, __stod, __stoi, __itos, __ltd
+ 000001E6 6043 MOV R4,R0
+ 000001E8 2FE6 MOV.L R14,@-R15
+ 000001EA 2FD6 MOV.L R13,@-R15
+ 000001EC 2FC6 MOV.L R12,@-R15
+ 000001EE 2FB6 MOV.L R11,@-R15
+ 000001F0 2FA6 MOV.L R10,@-R15
+ 000001F2 2F96 MOV.L R9,@-R15
+ 000001F4 4F22 STS.L PR,@-R15
+ 000001F6 7FF0 ADD #-16,R15
+ Snow.c 125 {
+ Snow.c 126 float cnt;
+ Snow.c 127
+ Snow.c 128 for(cnt = 0; cnt < P2I; cnt += radius)
+ 000001F8 D93D MOV.L L414+38,R9 ; _sinf
+ 000001FA 80F4 MOV.B R0,@(4,R15)
+ 000001FC DA3D MOV.L L414+42,R10; _cosf
+ 000001FE 6053 MOV R5,R0
+ 00000200 80FC MOV.B R0,@(12,R15)
+ 00000202 2F60 MOV.B R6,@R15
+ 00000204 1F72 MOV.L R7,@(8,R15)
+ 00000206 A028 BRA L395
+ 00000208 EE00 MOV #0,R14
+ 0000020A L396:
+ Snow.c 129 line(px, py, px + (int)(cosf(cnt) * boom), py + (int)(sinf(cnt) * boom));
+ 0000020A 84FC MOV.B @(12,R15),R0
+ 0000020C 6B03 MOV R0,R11
+ 0000020E 490B JSR @R9
+ 00000210 64E3 MOV R14,R4
+ 00000212 6203 MOV R0,R2
+ 00000214 D32F MOV.L L414+10,R3 ; __itos
+ 00000216 430B JSR @R3
+ 00000218 60F0 MOV.B @R15,R0
+ 0000021A 6C03 MOV R0,R12
+ 0000021C D32E MOV.L L414+14,R3 ; __muls
+ 0000021E 430B JSR @R3
+ 00000220 6123 MOV R2,R1
+ 00000222 D22A MOV.L L414+2,R2 ; __stoi
+ 00000224 420B JSR @R2
+ 00000226 0009 NOP
+ 00000228 67B3 MOV R11,R7
+ 0000022A 370C ADD R0,R7
+ 0000022C 2F76 MOV.L R7,@-R15
+ 0000022E 84F8 MOV.B @(8,R15),R0
+ 00000230 6D03 MOV R0,R13
+ 00000232 6DDC EXTU.B R13,R13
+ 00000234 4A0B JSR @R10
+ 00000236 64E3 MOV R14,R4
+ 00000238 D327 MOV.L L414+14,R3 ; __muls
+ 0000023A 430B JSR @R3
+ 0000023C 61C3 MOV R12,R1
+ 0000023E D223 MOV.L L414+2,R2 ; __stoi
+ 00000240 420B JSR @R2
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 9
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000242 0009 NOP
+ 00000244 66D3 MOV R13,R6
+ 00000246 360C ADD R0,R6
+ 00000248 65B3 MOV R11,R5
+ 0000024A 64D3 MOV R13,R4
+ 0000024C BF07 BSR _line
+ 0000024E 67F6 MOV.L @R15+,R7
+ 00000250 50F2 MOV.L @(8,R15),R0
+ 00000252 D222 MOV.L L414+18,R2 ; __adds
+ 00000254 420B JSR @R2
+ 00000256 61E3 MOV R14,R1
+ 00000258 6E03 MOV R0,R14
+ 0000025A L395:
+ 0000025A 60E3 MOV R14,R0
+ 0000025C D326 MOV.L L414+46,R3 ; __stod
+ 0000025E 7FF8 ADD #-8,R15
+ 00000260 430B JSR @R3
+ 00000262 2FF6 MOV.L R15,@-R15
+ 00000264 D225 MOV.L L414+50,R2 ; H'5474A168
+ 00000266 2F26 MOV.L R2,@-R15
+ 00000268 D225 MOV.L L414+54,R2 ; H'401921FB
+ 0000026A D326 MOV.L L414+58,R3 ; __ltd
+ 0000026C 430B JSR @R3
+ 0000026E 2F26 MOV.L R2,@-R15
+ 00000270 8800 CMP/EQ #0,R0
+ 00000272 8BCA BF L396
+ Snow.c 130 }
+ 00000274 7F10 ADD #16,R15
+ 00000276 4F26 LDS.L @R15+,PR
+ 00000278 69F6 MOV.L @R15+,R9
+ 0000027A 6AF6 MOV.L @R15+,R10
+ 0000027C 6BF6 MOV.L @R15+,R11
+ 0000027E 6CF6 MOV.L @R15+,R12
+ 00000280 6DF6 MOV.L @R15+,R13
+ 00000282 000B RTS
+ 00000284 6EF6 MOV.L @R15+,R14
+ Snow.c 131
+ Snow.c 132 #define CNT 15
+ Snow.c 133
+ Snow.c 134 struct {unsigned char active;char boom;float dirx, y, x, radius;} fire[CNT];
+ Snow.c 135
+ Snow.c 136 void display_vram()
+ 00000286 _display_vram: ; function: display_vram
+ ; frame size=16
+ Snow.c 137 {
+ Snow.c 138 char *LCD_register_selector = (char*)0xB4000000, *LCD_data_register = (char*)0xB4010000, *mvram;
+ Snow.c 139 int i, j;
+ Snow.c 140 mvram = vram;
+ Snow.c 141 for(i=0 ; i<64 ; i++)
+ 00000286 E100 MOV #0,R1
+ 00000288 D520 MOV.L L414+66,R5 ; H'B4000000
+ 0000028A E704 MOV #4,R7
+ 0000028C D420 MOV.L L414+70,R4 ; H'B4010000
+ 0000028E 6013 MOV R1,R0
+ 00000290 2FC6 MOV.L R12,@-R15
+ 00000292 2FB6 MOV.L R11,@-R15
+ 00000294 2FA6 MOV.L R10,@-R15
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 10
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000296 EB07 MOV #7,R11
+ 00000298 D21B MOV.L L414+62,R2 ; _vram
+ 0000029A EA10 MOV #16,R10
+ 0000029C 2F96 MOV.L R9,@-R15
+ 0000029E E940 MOV #64,R9
+ 000002A0 6C22 MOV.L @R2,R12
+ 000002A2 L397:
+ Snow.c 142 {
+ Snow.c 143 *LCD_register_selector = 4;
+ Snow.c 144 *LCD_data_register = i|192;
+ 000002A2 E3C0 MOV #-64,R3
+ 000002A4 2570 MOV.B R7,@R5
+ Snow.c 145 *LCD_register_selector = 4;
+ Snow.c 146 *LCD_data_register = 0;
+ Snow.c 147 *LCD_register_selector = 7;
+ Snow.c 148 for(j=0 ; j<16 ; j++) *LCD_data_register = *mvram++;
+ 000002A6 66A3 MOV R10,R6
+ 000002A8 230B OR R0,R3
+ 000002AA 2430 MOV.B R3,@R4
+ 000002AC 2570 MOV.B R7,@R5
+ 000002AE 2410 MOV.B R1,@R4
+ 000002B0 25B0 MOV.B R11,@R5
+ 000002B2 L398:
+ 000002B2 4610 DT R6
+ 000002B4 63C4 MOV.B @R12+,R3
+ 000002B6 8FFC BF/S L398
+ 000002B8 2430 MOV.B R3,@R4
+ 000002BA 7001 ADD #1,R0
+ 000002BC 3093 CMP/GE R9,R0
+ 000002BE 8BF0 BF L397
+ Snow.c 149 }
+ Snow.c 150 }
+ 000002C0 69F6 MOV.L @R15+,R9
+ 000002C2 6AF6 MOV.L @R15+,R10
+ 000002C4 6BF6 MOV.L @R15+,R11
+ 000002C6 000B RTS
+ 000002C8 6CF6 MOV.L @R15+,R12
+ 000002CA L414:
+ 000002CA 0000 .DATA.W 0
+ 000002CC <00000000> .DATA.L __stoi
+ 000002D0 <00000000> .DATA.L _sprite
+ 000002D4 <00000000> .DATA.L __itos
+ 000002D8 <00000000> .DATA.L __muls
+ 000002DC <00000000> .DATA.L __adds
+ 000002E0 <00000000> .DATA.L __stou
+ 000002E4 3F800000 .DATA.L H'3F800000
+ 000002E8 41100000 .DATA.L H'41100000
+ 000002EC <00000000> .DATA.L __lts
+ 000002F0 <00000000> .DATA.L _sinf
+ 000002F4 <00000000> .DATA.L _cosf
+ 000002F8 <00000000> .DATA.L __stod
+ 000002FC 5474A168 .DATA.L H'5474A168
+ 00000300 401921FB .DATA.L H'401921FB
+ 00000304 <00000000> .DATA.L __ltd
+ 00000308 <00000000> .DATA.L _vram
+ 0000030C B4000000 .DATA.L H'B4000000
+ 00000310 B4010000 .DATA.L H'B4010000
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 11
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 151
+ Snow.c 152 char isMainMenu()
+ 00000314 _isMainMenu: ; function: isMainMenu
+ ; frame size=0
+ Snow.c 153 {
+ Snow.c 154 unsigned int ea;
+ Snow.c 155 unsigned int j;
+ Snow.c 156 ea = *(unsigned int*)0x8001007C;
+ 00000314 D342 MOV.L L415+4,R3 ; H'8001007C
+ Snow.c 157 ea += 0x0490*4;
+ Snow.c 158 ea = *(unsigned int*)( ea );
+ Snow.c 159 j = *(unsigned char*)( ea + 1 );
+ Snow.c 160 j *= 4;
+ Snow.c 161 j = ( ea + j + 4 ) & 0xFFFFFFFC;
+ 00000316 E1FC MOV #-4,R1
+ 00000318 9280 MOV.W L415,R2 ; H'1240
+ 0000031A 6432 MOV.L @R3,R4
+ 0000031C 342C ADD R2,R4
+ 0000031E 6442 MOV.L @R4,R4
+ 00000320 8441 MOV.B @(1,R4),R0
+ 00000322 650C EXTU.B R0,R5
+ 00000324 4508 SHLL2 R5
+ 00000326 345C ADD R5,R4
+ 00000328 7404 ADD #4,R4
+ 0000032A 2419 AND R1,R4
+ Snow.c 162 j = *(unsigned int*)( j ) + 1;
+ 0000032C 6442 MOV.L @R4,R4
+ Snow.c 163
+ Snow.c 164 return *(unsigned char*)j;
+ Snow.c 165 }
+ 0000032E 000B RTS
+ 00000330 8441 MOV.B @(1,R4),R0
+ Snow.c 166
+ Snow.c 167 char variable[24]={0};
+ Snow.c 168
+ Snow.c 169 void snowtimer(void)
+ 00000332 _snowtimer: ; function: snowtimer
+ ; frame size=76
+ ; used runtime library name:
+ ; __modlu, __adds, __addd, __subs, __divs, __divdr, __dtos, __stoi, __sto
+ + u, __utos, __utod, __eqs, __gts, __lts
+ 00000332 2FE6 MOV.L R14,@-R15
+ 00000334 2FD6 MOV.L R13,@-R15
+ 00000336 2FC6 MOV.L R12,@-R15
+ 00000338 2FB6 MOV.L R11,@-R15
+ 0000033A 2FA6 MOV.L R10,@-R15
+ 0000033C 2F96 MOV.L R9,@-R15
+ 0000033E 2F86 MOV.L R8,@-R15
+ 00000340 4F22 STS.L PR,@-R15
+ 00000342 7FF8 ADD #-8,R15
+ Snow.c 170 {
+ Snow.c 171 unsigned char x;
+ Snow.c 172
+ Snow.c 173 if(!isMainMenu())
+ 00000344 BFE6 BSR _isMainMenu
+ 00000346 0009 NOP
+ 00000348 600E EXTS.B R0,R0
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 12
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0000034A 2008 TST R0,R0
+ 0000034C 8901 BT L416
+ 0000034E A0F0 BRA L400
+ 00000350 0009 NOP
+ 00000352 L416:
+ Snow.c 174 {
+ Snow.c 175 display_vram();
+ 00000352 BF98 BSR _display_vram
+ 00000354 0009 NOP
+ Snow.c 176
+ Snow.c 177 for(x =CNT - 1; x > 0 ; x--)
+ 00000356 E20E MOV #14,R2
+ 00000358 DE32 MOV.L L415+8,R14 ; _fire
+ 0000035A E80F MOV #15,R8
+ 0000035C 945F MOV.W L415+2,R4 ; H'0118
+ 0000035E E900 MOV #0,R9
+ 00000360 2F20 MOV.B R2,@R15
+ 00000362 34EC ADD R14,R4
+ 00000364 1F41 MOV.L R4,@(4,R15)
+ 00000366 6C43 MOV R4,R12
+ 00000368 6BC3 MOV R12,R11
+ 0000036A L401:
+ 0000036A 6AF0 MOV.B @R15,R10
+ 0000036C 6AAC EXTU.B R10,R10
+ 0000036E 63A3 MOV R10,R3
+ 00000370 4A08 SHLL2 R10
+ 00000372 3A3C ADD R3,R10
+ 00000374 4A08 SHLL2 R10
+ 00000376 60A3 MOV R10,R0
+ 00000378 00EC MOV.B @(R0,R14),R0
+ 0000037A 600C EXTU.B R0,R0
+ 0000037C 8801 CMP/EQ #1,R0
+ 0000037E 8901 BT L417
+ 00000380 A083 BRA L402
+ 00000382 0009 NOP
+ 00000384 L417:
+ Snow.c 178 {
+ Snow.c 179 if(fire[x].active == 1)
+ Snow.c 180 {
+ Snow.c 181 if(fire[x].boom == 0)
+ 00000384 62A3 MOV R10,R2
+ 00000386 32EC ADD R14,R2
+ 00000388 8421 MOV.B @(1,R2),R0
+ 0000038A 2008 TST R0,R0
+ 0000038C 8B62 BF L403
+ Snow.c 182 {
+ Snow.c 183 drawsprite(fire[x].x, fire[x].y, fire[x].dirx);
+ 0000038E 6DA3 MOV R10,R13
+ 00000390 D525 MOV.L L415+12,R5 ; __stoi
+ 00000392 3DEC ADD R14,R13
+ 00000394 56D1 MOV.L @(4,R13),R6
+ 00000396 450B JSR @R5
+ 00000398 50D2 MOV.L @(8,R13),R0
+ 0000039A 650E EXTS.B R0,R5
+ 0000039C D423 MOV.L L415+16,R4 ; __stou
+ 0000039E 440B JSR @R4
+ 000003A0 50D3 MOV.L @(12,R13),R0
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 13
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000003A2 BECE BSR _drawsprite
+ 000003A4 640C EXTU.B R0,R4
+ Snow.c 184 fire[x].y -= fire[x].y / 64;
+ 000003A6 D022 MOV.L L415+20,R0 ; H'42800000
+ 000003A8 D322 MOV.L L415+24,R3 ; __divs
+ 000003AA 430B JSR @R3
+ 000003AC 51D2 MOV.L @(8,R13),R1
+ 000003AE D222 MOV.L L415+28,R2 ; __subs
+ 000003B0 420B JSR @R2
+ 000003B2 51D2 MOV.L @(8,R13),R1
+ 000003B4 1D02 MOV.L R0,@(8,R13)
+ Snow.c 185 fire[x].x += fire[x].dirx;
+ 000003B6 50D1 MOV.L @(4,R13),R0
+ 000003B8 D320 MOV.L L415+32,R3 ; __adds
+ 000003BA 430B JSR @R3
+ 000003BC 51D3 MOV.L @(12,R13),R1
+ 000003BE 1D03 MOV.L R0,@(12,R13)
+ Snow.c 186 if(fire[x].y == 0 || fire[x].x > 127 || fire[x].x < 0)
+ 000003C0 51D2 MOV.L @(8,R13),R1
+ 000003C2 D21F MOV.L L415+36,R2 ; __eqs
+ 000003C4 420B JSR @R2
+ 000003C6 E000 MOV #0,R0
+ 000003C8 8800 CMP/EQ #0,R0
+ 000003CA 8B0B BF L405
+ 000003CC D01D MOV.L L415+40,R0 ; H'42FE0000
+ 000003CE D31E MOV.L L415+44,R3 ; __gts
+ 000003D0 430B JSR @R3
+ 000003D2 51D3 MOV.L @(12,R13),R1
+ 000003D4 8800 CMP/EQ #0,R0
+ 000003D6 8B05 BF L405
+ 000003D8 51D3 MOV.L @(12,R13),R1
+ 000003DA D21C MOV.L L415+48,R2 ; __lts
+ 000003DC 420B JSR @R2
+ 000003DE E000 MOV #0,R0
+ 000003E0 8800 CMP/EQ #0,R0
+ 000003E2 8902 BT L404
+ 000003E4 L405:
+ Snow.c 187 fire[x].active = 0;
+ 000003E4 63A3 MOV R10,R3
+ 000003E6 33EC ADD R14,R3
+ 000003E8 2390 MOV.B R9,@R3
+ 000003EA L404:
+ Snow.c 188 if(random(0) % (int)fire[x].y == 0 && fire[x].boom == 0)
+ 000003EA BE09 BSR _random
+ 000003EC E400 MOV #0,R4
+ 000003EE 6103 MOV R0,R1
+ 000003F0 D30D MOV.L L415+12,R3 ; __stoi
+ 000003F2 64A3 MOV R10,R4
+ 000003F4 34EC ADD R14,R4
+ 000003F6 430B JSR @R3
+ 000003F8 5042 MOV.L @(8,R4),R0
+ 000003FA D315 MOV.L L415+52,R3 ; __modlu
+ 000003FC 430B JSR @R3
+ 000003FE 0009 NOP
+ 00000400 8800 CMP/EQ #0,R0
+ 00000402 8901 BT L418
+ 00000404 A088 BRA L409
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 14
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000406 0009 NOP
+ 00000408 L418:
+ 00000408 8441 MOV.B @(1,R4),R0
+ 0000040A 2008 TST R0,R0
+ 0000040C 8901 BT L419
+ 0000040E A083 BRA L409
+ 00000410 0009 NOP
+ 00000412 L419:
+ Snow.c 189 fire[x].boom++;
+ 00000412 3AEC ADD R14,R10
+ 00000414 84A1 MOV.B @(1,R10),R0
+ 00000416 7001 ADD #1,R0
+ 00000418 A07E BRA L409
+ 0000041A 80A1 MOV.B R0,@(1,R10)
+ 0000041C L415:
+ 0000041C 1240 .DATA.W H'1240
+ 0000041E 0118 .DATA.W H'0118
+ 00000420 8001007C .DATA.L H'8001007C
+ 00000424 <00000000> .DATA.L _fire
+ 00000428 <00000000> .DATA.L __stoi
+ 0000042C <00000000> .DATA.L __stou
+ 00000430 42800000 .DATA.L H'42800000
+ 00000434 <00000000> .DATA.L __divs
+ 00000438 <00000000> .DATA.L __subs
+ 0000043C <00000000> .DATA.L __adds
+ 00000440 <00000000> .DATA.L __eqs
+ 00000444 42FE0000 .DATA.L H'42FE0000
+ 00000448 <00000000> .DATA.L __gts
+ 0000044C <00000000> .DATA.L __lts
+ 00000450 <00000000> .DATA.L __modlu
+ 00000454 L403:
+ Snow.c 190 }
+ Snow.c 191 else
+ Snow.c 192 {
+ Snow.c 193 drawboom(fire[x].x, fire[x].y, fire[x].boom++, fire[x].radius);
+ 00000454 57B4 MOV.L @(16,R11),R7
+ 00000456 84B1 MOV.B @(1,R11),R0
+ 00000458 D548 MOV.L L420+2,R5 ; __stoi
+ 0000045A 7001 ADD #1,R0
+ 0000045C 80B1 MOV.B R0,@(1,R11)
+ 0000045E 70FF ADD #-1,R0
+ 00000460 6603 MOV R0,R6
+ 00000462 450B JSR @R5
+ 00000464 50B2 MOV.L @(8,R11),R0
+ 00000466 650E EXTS.B R0,R5
+ 00000468 D445 MOV.L L420+6,R4 ; __stou
+ 0000046A 440B JSR @R4
+ 0000046C 50B3 MOV.L @(12,R11),R0
+ 0000046E BEBA BSR _drawboom
+ 00000470 640C EXTU.B R0,R4
+ Snow.c 194 if(fire[x].boom >= (random(0) % 16) + 16)
+ 00000472 84B1 MOV.B @(1,R11),R0
+ 00000474 2F06 MOV.L R0,@-R15
+ 00000476 BDC3 BSR _random
+ 00000478 E400 MOV #0,R4
+ 0000047A 2089 AND R8,R0
+ 0000047C 62F6 MOV.L @R15+,R2
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 15
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0000047E 7010 ADD #16,R0
+ 00000480 3202 CMP/HS R0,R2
+ 00000482 8B49 BF L409
+ Snow.c 195 fire[x].active = 0;
+ 00000484 51F1 MOV.L @(4,R15),R1
+ 00000486 A047 BRA L409
+ 00000488 2190 MOV.B R9,@R1
+ 0000048A L402:
+ Snow.c 196 }
+ Snow.c 197 }
+ Snow.c 198 else
+ Snow.c 199 {
+ Snow.c 200 if(random(0) % 32 == 0)
+ 0000048A BDB9 BSR _random
+ 0000048C E400 MOV #0,R4
+ 0000048E C81F TST #31,R0
+ 00000490 8B42 BF L409
+ Snow.c 201 {
+ Snow.c 202 fire[x].active = 1;
+ 00000492 E201 MOV #1,R2
+ 00000494 2C20 MOV.B R2,@R12
+ Snow.c 203 fire[x].x = random(0) % 128;
+ 00000496 BDB3 BSR _random
+ 00000498 E400 MOV #0,R4
+ 0000049A D23A MOV.L L420+10,R2 ; __utos
+ 0000049C 420B JSR @R2
+ 0000049E C97F AND #127,R0
+ 000004A0 1C03 MOV.L R0,@(12,R12)
+ Snow.c 204 fire[x].dirx = (random(0) % 20) / 10.0 - 1.0;
+ 000004A2 7FF0 ADD #-16,R15
+ 000004A4 BDAC BSR _random
+ 000004A6 E400 MOV #0,R4
+ 000004A8 D237 MOV.L L420+14,R2 ; __modlu
+ 000004AA 6103 MOV R0,R1
+ 000004AC 420B JSR @R2
+ 000004AE E014 MOV #20,R0
+ 000004B0 D336 MOV.L L420+18,R3 ; __utod
+ 000004B2 7FF8 ADD #-8,R15
+ 000004B4 430B JSR @R3
+ 000004B6 2FF6 MOV.L R15,@-R15
+ 000004B8 D136 MOV.L L420+26,R1 ; __divdr
+ 000004BA E200 MOV #0,R2
+ 000004BC 2F26 MOV.L R2,@-R15
+ 000004BE D234 MOV.L L420+22,R2 ; H'40240000
+ 000004C0 2F26 MOV.L R2,@-R15
+ 000004C2 63F3 MOV R15,R3
+ 000004C4 7310 ADD #16,R3
+ 000004C6 410B JSR @R1
+ 000004C8 2F36 MOV.L R3,@-R15
+ 000004CA E200 MOV #0,R2
+ 000004CC D133 MOV.L L420+34,R1 ; __addd
+ 000004CE 2F26 MOV.L R2,@-R15
+ 000004D0 D231 MOV.L L420+30,R2 ; H'BFF00000
+ 000004D2 2F26 MOV.L R2,@-R15
+ 000004D4 63F3 MOV R15,R3
+ 000004D6 7310 ADD #16,R3
+ 000004D8 410B JSR @R1
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 16
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000004DA 2F36 MOV.L R3,@-R15
+ 000004DC D230 MOV.L L420+38,R2 ; __dtos
+ 000004DE 420B JSR @R2
+ 000004E0 0009 NOP
+ 000004E2 1C01 MOV.L R0,@(4,R12)
+ Snow.c 205 fire[x].y = 64;
+ 000004E4 D32F MOV.L L420+42,R3 ; H'42800000
+ Snow.c 206 fire[x].boom = 0;
+ 000004E6 6093 MOV R9,R0
+ 000004E8 1C32 MOV.L R3,@(8,R12)
+ 000004EA 80C1 MOV.B R0,@(1,R12)
+ Snow.c 207 fire[x].radius = P2I / ((random(0) % 16) + 8);
+ 000004EC D32E MOV.L L420+46,R3 ; H'5474A168
+ 000004EE 7FF8 ADD #-8,R15
+ 000004F0 2F36 MOV.L R3,@-R15
+ 000004F2 D32E MOV.L L420+50,R3 ; H'401921FB
+ 000004F4 2F36 MOV.L R3,@-R15
+ 000004F6 BD83 BSR _random
+ 000004F8 E400 MOV #0,R4
+ 000004FA 2089 AND R8,R0
+ 000004FC D323 MOV.L L420+18,R3 ; __utod
+ 000004FE 7FF8 ADD #-8,R15
+ 00000500 7008 ADD #8,R0
+ 00000502 430B JSR @R3
+ 00000504 2FF6 MOV.L R15,@-R15
+ 00000506 62F3 MOV R15,R2
+ 00000508 D122 MOV.L L420+26,R1 ; __divdr
+ 0000050A 7210 ADD #16,R2
+ 0000050C 410B JSR @R1
+ 0000050E 2F26 MOV.L R2,@-R15
+ 00000510 D323 MOV.L L420+38,R3 ; __dtos
+ 00000512 430B JSR @R3
+ 00000514 0009 NOP
+ 00000516 1C04 MOV.L R0,@(16,R12)
+ 00000518 L409:
+ 00000518 62F0 MOV.B @R15,R2
+ 0000051A 7CEC ADD #-20,R12
+ 0000051C 72FF ADD #-1,R2
+ 0000051E 2F20 MOV.B R2,@R15
+ 00000520 53F1 MOV.L @(4,R15),R3
+ 00000522 622C EXTU.B R2,R2
+ 00000524 73EC ADD #-20,R3
+ 00000526 4215 CMP/PL R2
+ 00000528 1F31 MOV.L R3,@(4,R15)
+ 0000052A 8F02 BF/S L421
+ 0000052C 7BEC ADD #-20,R11
+ 0000052E AF1C BRA L401
+ 00000530 0009 NOP
+ 00000532 L421:
+ 00000532 L400:
+ Snow.c 208 }
+ Snow.c 209 }
+ Snow.c 210 }
+ Snow.c 211 }
+ Snow.c 212
+ Snow.c 213 Alpha_GetData('A',variable);
+ 00000532 E700 MOV #0,R7
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 17
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000534 D51F MOV.L L420+58,R5 ; _variable
+ 00000536 6673 MOV R7,R6
+ 00000538 D21D MOV.L L420+54,R2 ; _iSysCallFuncPtr
+ 0000053A 6322 MOV.L @R2,R3
+ 0000053C 911D MOV.W L420,R1 ; H'04DF
+ 0000053E 2F16 MOV.L R1,@-R15
+ 00000540 430B JSR @R3
+ 00000542 E441 MOV #65,R4
+ Snow.c 214 if(variable[0])
+ 00000544 D31B MOV.L L420+58,R3 ; _variable
+ 00000546 6230 MOV.B @R3,R2
+ 00000548 2228 TST R2,R2
+ 0000054A 8D0C BT/S L411
+ 0000054C 7F04 ADD #4,R15
+ Snow.c 215 {
+ Snow.c 216 KillTimer(1);
+ 0000054E E401 MOV #1,R4
+ 00000550 D219 MOV.L L420+62,R2 ; _KillTimer
+ 00000552 7F08 ADD #8,R15
+ 00000554 4F26 LDS.L @R15+,PR
+ 00000556 68F6 MOV.L @R15+,R8
+ 00000558 69F6 MOV.L @R15+,R9
+ 0000055A 6AF6 MOV.L @R15+,R10
+ 0000055C 6BF6 MOV.L @R15+,R11
+ 0000055E 6CF6 MOV.L @R15+,R12
+ 00000560 6DF6 MOV.L @R15+,R13
+ 00000562 422B JMP @R2
+ 00000564 6EF6 MOV.L @R15+,R14
+ 00000566 L411:
+ Snow.c 217 }
+ Snow.c 218 }
+ 00000566 7F08 ADD #8,R15
+ 00000568 4F26 LDS.L @R15+,PR
+ 0000056A 68F6 MOV.L @R15+,R8
+ 0000056C 69F6 MOV.L @R15+,R9
+ 0000056E 6AF6 MOV.L @R15+,R10
+ 00000570 6BF6 MOV.L @R15+,R11
+ 00000572 6CF6 MOV.L @R15+,R12
+ 00000574 6DF6 MOV.L @R15+,R13
+ 00000576 000B RTS
+ 00000578 6EF6 MOV.L @R15+,R14
+ 0000057A L420:
+ 0000057A 04DF .DATA.W H'04DF
+ 0000057C <00000000> .DATA.L __stoi
+ 00000580 <00000000> .DATA.L __stou
+ 00000584 <00000000> .DATA.L __utos
+ 00000588 <00000000> .DATA.L __modlu
+ 0000058C <00000000> .DATA.L __utod
+ 00000590 40240000 .DATA.L H'40240000
+ 00000594 <00000000> .DATA.L __divdr
+ 00000598 BFF00000 .DATA.L H'BFF00000
+ 0000059C <00000000> .DATA.L __addd
+ 000005A0 <00000000> .DATA.L __dtos
+ 000005A4 42800000 .DATA.L H'42800000
+ 000005A8 5474A168 .DATA.L H'5474A168
+ 000005AC 401921FB .DATA.L H'401921FB
+ 000005B0 <00000000> .DATA.L _iSysCallFuncPtr
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 18
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 000005B4 <00000000> .DATA.L _variable
+ 000005B8 <00000000> .DATA.L _KillTimer
+ Snow.c 219
+ Snow.c 220 int AddIn_main(int isAppli, unsigned short OptionNum)
+ 000005BC _AddIn_main: ; function: AddIn_main
+ ; frame size=24
+ ; used runtime library name:
+ ; __slow_mvn
+ 000005BC 2FE6 MOV.L R14,@-R15
+ 000005BE 2FD6 MOV.L R13,@-R15
+ 000005C0 4F22 STS.L PR,@-R15
+ 000005C2 7FF8 ADD #-8,R15
+ Snow.c 221 {
+ Snow.c 222 unsigned int key;
+ Snow.c 223 unsigned char text[3] = {0xE6, 0x91, 0};
+ 000005C4 D22C MOV.L L422+4,R2 ; L343
+ 000005C6 61F3 MOV R15,R1
+ 000005C8 D32C MOV.L L422+8,R3 ; __slow_mvn
+ 000005CA 7104 ADD #4,R1
+ 000005CC 430B JSR @R3
+ 000005CE E003 MOV #3,R0
+ Snow.c 224 random(RTC_GetTicks());
+ 000005D0 D12B MOV.L L422+12,R1 ; _RTC_GetTicks
+ 000005D2 410B JSR @R1
+ 000005D4 0009 NOP
+ 000005D6 BD13 BSR _random
+ 000005D8 6403 MOV R0,R4
+ Snow.c 225 vram = Disp_GetVRAMPtr();
+ 000005DA D22A MOV.L L422+16,R2 ; _Disp_GetVRAMPtr
+ 000005DC 420B JSR @R2
+ 000005DE 0009 NOP
+ 000005E0 D329 MOV.L L422+20,R3 ; _vram
+ Snow.c 226 Alpha_ClearAll();
+ 000005E2 E700 MOV #0,R7
+ 000005E4 D129 MOV.L L422+24,R1 ; _iSysCallFuncPtr
+ 000005E6 6673 MOV R7,R6
+ 000005E8 2302 MOV.L R0,@R3
+ 000005EA 6573 MOV R7,R5
+ 000005EC 6212 MOV.L @R1,R2
+ 000005EE 9341 MOV.W L422,R3 ; H'04E1
+ 000005F0 2F36 MOV.L R3,@-R15
+ 000005F2 420B JSR @R2
+ 000005F4 6473 MOV R7,R4
+ Snow.c 227 AllClr_VRAM();
+ 000005F6 D226 MOV.L L422+28,R2 ; _AllClr_VRAM
+ 000005F8 420B JSR @R2
+ 000005FA 0009 NOP
+ Snow.c 228 locate(3,3);
+ 000005FC DE25 MOV.L L422+32,R14; _locate
+ 000005FE E503 MOV #3,R5
+ 00000600 4E0B JSR @R14
+ 00000602 6453 MOV R5,R4
+ Snow.c 229 Print(&"~*| Firework |*~");
+ 00000604 DD24 MOV.L L422+36,R13; _Print
+ 00000606 D425 MOV.L L422+40,R4 ; L347
+ 00000608 4D0B JSR @R13
+ 0000060A 0009 NOP
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 19
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ Snow.c 230 locate(4,1);
+ 0000060C E501 MOV #1,R5
+ 0000060E 4E0B JSR @R14
+ 00000610 E404 MOV #4,R4
+ Snow.c 231 Print(&"(C) by Casimo");
+ 00000612 D423 MOV.L L422+44,R4 ; L348
+ 00000614 4D0B JSR @R13
+ 00000616 0009 NOP
+ Snow.c 232 locate(4,5);
+ 00000618 E505 MOV #5,R5
+ 0000061A 4E0B JSR @R14
+ 0000061C E404 MOV #4,R4
+ Snow.c 233 Print(&"press any key");
+ 0000061E D421 MOV.L L422+48,R4 ; L349
+ 00000620 4D0B JSR @R13
+ 00000622 0009 NOP
+ Snow.c 234 locate(6,6);
+ 00000624 E506 MOV #6,R5
+ 00000626 4E0B JSR @R14
+ 00000628 6453 MOV R5,R4
+ Snow.c 235 Print(&"to start");
+ 0000062A D41F MOV.L L422+52,R4 ; L350
+ 0000062C 4D0B JSR @R13
+ 0000062E 0009 NOP
+ Snow.c 236 locate(4,8);
+ 00000630 E508 MOV #8,R5
+ 00000632 4E0B JSR @R14
+ 00000634 E404 MOV #4,R4
+ Snow.c 237 Print(&"exit with 1 A");
+ 00000636 D41D MOV.L L422+56,R4 ; L351
+ 00000638 4D0B JSR @R13
+ 0000063A 0009 NOP
+ Snow.c 238 locate(15,8);
+ 0000063C E508 MOV #8,R5
+ 0000063E 4E0B JSR @R14
+ 00000640 E40F MOV #15,R4
+ Snow.c 239 Print(&text);
+ 00000642 64F3 MOV R15,R4
+ 00000644 4D0B JSR @R13
+ 00000646 7408 ADD #8,R4
+ Snow.c 240 display_vram();
+ 00000648 BE1D BSR _display_vram
+ 0000064A 0009 NOP
+ Snow.c 241 GetKey(&key);
+ 0000064C D218 MOV.L L422+60,R2 ; _GetKey
+ 0000064E 64F3 MOV R15,R4
+ 00000650 420B JSR @R2
+ 00000652 7404 ADD #4,R4
+ Snow.c 242 Timer_Install(6, &snowtimer, 300);
+ 00000654 960F MOV.W L422+2,R6 ; H'012C
+ 00000656 D517 MOV.L L422+64,R5 ; _snowtimer
+ 00000658 D317 MOV.L L422+68,R3 ; _Timer_Install
+ 0000065A 430B JSR @R3
+ 0000065C E406 MOV #6,R4
+ Snow.c 243 Timer_Start(6);
+ 0000065E D217 MOV.L L422+72,R2 ; _Timer_Start
+ 00000660 420B JSR @R2
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 20
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 00000662 E406 MOV #6,R4
+ Snow.c 244 App_PROG();
+ 00000664 D316 MOV.L L422+76,R3 ; _App_PROG
+ 00000666 430B JSR @R3
+ 00000668 0009 NOP
+ Snow.c 245 }
+ 0000066A 7F0C ADD #12,R15
+ 0000066C 4F26 LDS.L @R15+,PR
+ 0000066E 6DF6 MOV.L @R15+,R13
+ 00000670 000B RTS
+ 00000672 6EF6 MOV.L @R15+,R14
+ 00000674 L422:
+ 00000674 04E1 .DATA.W H'04E1
+ 00000676 012C .DATA.W H'012C
+ 00000678 <00000000> .DATA.L L343
+ 0000067C <00000000> .DATA.L __slow_mvn
+ 00000680 <00000000> .DATA.L _RTC_GetTicks
+ 00000684 <00000000> .DATA.L _Disp_GetVRAMPtr
+ 00000688 <00000000> .DATA.L _vram
+ 0000068C <00000000> .DATA.L _iSysCallFuncPtr
+ 00000690 <00000000> .DATA.L _AllClr_VRAM
+ 00000694 <00000000> .DATA.L _locate
+ 00000698 <00000000> .DATA.L _Print
+ 0000069C <00000000> .DATA.L L347
+ 000006A0 <00000000> .DATA.L L348
+ 000006A4 <00000000> .DATA.L L349
+ 000006A8 <00000000> .DATA.L L350
+ 000006AC <00000000> .DATA.L L351
+ 000006B0 <00000000> .DATA.L _GetKey
+ 000006B4 <00000000> .DATA.L _snowtimer
+ 000006B8 <00000000> .DATA.L _Timer_Install
+ 000006BC <00000000> .DATA.L _Timer_Start
+ 000006C0 <00000000> .DATA.L _App_PROG
+ Snow.c 246
+ Snow.c 247 #pragma section _BR_Size
+ Snow.c 248 unsigned long BR_Size;
+ Snow.c 249 #pragma section
+ Snow.c 250 #pragma section _TOP
+ Snow.c 251 int InitializeSystem(int isAppli, unsigned short OptionNum)
+P_T 00000000 _InitializeSystem: ; function: InitializeSystem
+ ; frame size=4
+ Snow.c 252 {return INIT_ADDIN_APPLICATION(isAppli, OptionNum);}
+ 00000000 D303 MOV.L L423+2,R3 ; _INIT_ADDIN_APPLICATION
+ 00000002 7FFC ADD #-4,R15
+ 00000004 2F51 MOV.W R5,@R15
+ 00000006 65F1 MOV.W @R15,R5
+ 00000008 655D EXTU.W R5,R5
+ 0000000A 432B JMP @R3
+ 0000000C 7F04 ADD #4,R15
+ 0000000E L423:
+ 0000000E 0000 .DATA.W 0
+ 00000010 <00000000> .DATA.L _INIT_ADDIN_APPLICATION
+ Snow.c 253 #pragma section
+ Snow.c 254
+C 00000000 _SysCallWrapper: ; static: SysCallWrapper
+ 00000000 D201422B60 .DATA.L H'D201422B,H'60F20000,H'80010070
+ F200008001
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 21
+
+
+SCT OFFSET CODE C LABEL INSTRUCTION OPERAND COMMENT
+
+ 0070
+ 0000000C _sprite: ; static: sprite
+ 0000000C 0001000101 .DATA.B H'00,H'01,H'00,H'01,H'01,H'01,H'01,H'00,H'01,H'01,H'00,H'01,H'01,H'00,H'01,H'01,
+ 0101000101 + H'01,H'01,H'00,H'00,H'01,H'00,H'00,H'01,H'00,H'00,H'01
+ 0001010001
+ 0101010000
+ 0100000100
+ 0001
+ 00000027 L343:
+ 00000027 E69100 .DATA.B H'E6,H'91,H'00
+ 0000002A 00000002 .RES.W 1
+ 0000002C L347:
+ 0000002C 7E2A7C2046 .SDATA "~*| Firework |*~"
+ 697265776F
+ 726B207C2A
+ 7E
+ 0000003C 00 .DATA.B H'00
+ 0000003D 00000001 .RES.B 1
+ 0000003E 00000002 .RES.W 1
+ 00000040 L348:
+ 00000040 2843292062 .SDATA "(C) by Casimo"
+ 7920436173
+ 696D6F
+ 0000004D 00 .DATA.B H'00
+ 0000004E 00000002 .RES.W 1
+ 00000050 L349:
+ 00000050 7072657373 .SDATA "press any key"
+ 20616E7920
+ 6B6579
+ 0000005D 00 .DATA.B H'00
+ 0000005E 00000002 .RES.W 1
+ 00000060 L350:
+ 00000060 746F207374 .SDATA "to start"
+ 617274
+ 00000068 00 .DATA.B H'00
+ 00000069 00000001 .RES.B 1
+ 0000006A 00000002 .RES.W 1
+ 0000006C L351:
+ 0000006C 6578697420 .SDATA "exit with 1 A"
+ 7769746820
+ 312041
+ 00000079 00 .DATA.B H'00
+D 00000000 _iSysCallFuncPtr: ; static: iSysCallFuncPtr
+ 00000000 <00000000> .DATA.L _SysCallWrapper
+ 00000004 __$lastrandom: ; static: lastrandom
+ 00000004 12345678 .DATA.L H'12345678
+ 00000008 _variable: ; static: variable
+ 00000008 00 .DATA.B H'00
+ 00000009 0000001701 .DATAB.B 23,0
+ 00
+B 00000000 _vram: ; static: vram
+ 00000000 00000004 .RES.L 1
+ 00000004 _fire: ; static: fire
+ 00000004 0000012C .RES.L 75
+B_B 00000000 _BR_Size: ; static: BR_Size
+ 00000000 00000004 .RES.L 1
+
+
+
+
+
+SH SERIES C/C++ Compiler (Ver. 6.0C) 29-Dec-2012 11:39:59 PAGE 1
+
+
+******** STATISTICS INFORMATION ********
+
+
+********** ERROR INFORMATION ***********
+
+NUMBER OF ERRORS: 0
+NUMBER OF WARNINGS: 0
+
+
+
+
+******* SOURCE LINE INFORMATION ********
+
+COMPILED SOURCE LINE: 254
+
+
+
+******* SECTION SIZE INFORMATION *******
+
+PROGRAM SECTION (P): 000006C4 Byte(s)
+PROGRAM SECTION (P_BR_Size): 00000000 Byte(s)
+PROGRAM SECTION (P_TOP): 00000014 Byte(s)
+CONSTANT SECTION (C): 0000007A Byte(s)
+CONSTANT SECTION (C_BR_Size): 00000000 Byte(s)
+CONSTANT SECTION (C_TOP): 00000000 Byte(s)
+DATA SECTION (D): 00000020 Byte(s)
+DATA SECTION (D_BR_Size): 00000000 Byte(s)
+DATA SECTION (D_TOP): 00000000 Byte(s)
+BSS SECTION (B): 00000130 Byte(s)
+BSS SECTION (B_BR_Size): 00000004 Byte(s)
+BSS SECTION (B_TOP): 00000000 Byte(s)
+
+ TOTAL PROGRAM SIZE: 000008A6 Byte(s)
+
+
+
+********** LABEL INFORMATION ***********
+
+NUMBER OF EXTERNAL REFERENCE SYMBOLS: 33
+NUMBER OF EXTERNAL DEFINITION SYMBOLS: 17
+NUMBER OF INTERNAL/EXTERNAL SYMBOLS: 101
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+*** COMMAND PARAMETER ***
+
+
+ -subcommand=C:\Users\Timo\AppData\Local\Temp\hmk3709.tmp
+
diff --git a/Debug/Snow.obj b/Debug/Snow.obj Binary files differnew file mode 100644 index 0000000..63a5944 --- /dev/null +++ b/Debug/Snow.obj diff --git a/FIREWORK.G1A b/FIREWORK.G1A Binary files differnew file mode 100644 index 0000000..eca8369 --- /dev/null +++ b/FIREWORK.G1A diff --git a/FXSH_Build.bat b/FXSH_Build.bat new file mode 100644 index 0000000..833c7d1 --- /dev/null +++ b/FXSH_Build.bat @@ -0,0 +1,22 @@ +@echo off +rem Do not edit! This batch file is created by CASIO fx-9860G SDK. + + +if exist FIREWORK.G1A del FIREWORK.G1A + +cd debug +if exist FXADDINror.bin del FXADDINror.bin +"G:\Casio SDK\OS\SH\Bin\Hmake.exe" Addin.mak +cd .. +if not exist debug\FXADDINror.bin goto error + +"G:\Casio SDK\Tools\MakeAddinHeader363.exe" "G:\Casio SDK\Projekte\Firework" +if not exist FIREWORK.G1A goto error +echo Build has completed. +goto end + +:error +echo Build was not successful. + +:end + diff --git a/Firework.dlr b/Firework.dlr new file mode 100644 index 0000000..f9ce37d --- /dev/null +++ b/Firework.dlr @@ -0,0 +1,6 @@ +[DLSimRunSpace]
+
+[Breakpoint]
+File=G:\Casio SDK\Projekte\Firework\Snow.c
+Line=62
+Flags=00001012
diff --git a/Firework.dlw b/Firework.dlw new file mode 100644 index 0000000..c95cf60 --- /dev/null +++ b/Firework.dlw @@ -0,0 +1,138 @@ +[DLSimWorkSpace]
+
+[_1]
+Type=5
+Order=5
+Top=11625
+Left=25110
+Height=570
+Width=1980
+State=0
+Flags=00000020
+Setting=169:1:Snow.c
+OptionA=0
+
+[_2]
+Type=1
+Order=3
+Top=330
+Left=21900
+Height=5115
+Width=5850
+State=0
+Flags=00000001
+OptionA=15
+OptionB=15
+
+[_3]
+Type=6
+Order=2
+Top=5310
+Left=22065
+Height=6390
+Width=5535
+State=0
+Flags=00000001
+OptionA=0
+
+[_4]
+Type=7
+Order=8
+Top=270
+Left=16290
+Height=3165
+Width=5565
+State=0
+Flags=00000000
+OptionA=0
+
+[_5]
+Type=8
+Order=7
+Top=390
+Left=10650
+Height=3225
+Width=5580
+State=0
+Flags=00000000
+OptionA=0
+
+[_6]
+Type=3
+Order=11
+Top=0
+Left=10788
+Height=6348
+Width=2232
+State=16
+Flags=00000000
+OptionA=0
+
+[_7]
+Type=2
+Order=10
+Top=6348
+Left=7800
+Height=3588
+Width=5220
+State=16
+Flags=00000000
+OptionA=0
+
+[_8]
+Type=17
+Order=1
+Top=15
+Left=105
+Height=11115
+Width=2235
+State=0
+Flags=00000000
+OptionA=0
+
+[_9]
+Type=15
+Order=4
+Top=5325
+Left=12480
+Height=6345
+Width=9525
+State=0
+Flags=00000000
+OptionA=0
+
+[_32]
+Type=16
+Order=6
+Top=0
+Left=2325
+Height=13395
+Width=9705
+State=0
+Flags=00000030
+Setting=182:1:..\Snow\Snow.c
+OptionA=0
+
+[_33]
+Type=16
+Order=0
+Top=-60
+Left=2385
+Height=13545
+Width=9705
+State=0
+Flags=00000030
+Setting=131:1:Snow.c
+OptionA=0
+
+[_34]
+Type=16
+Order=9
+Top=1125
+Left=1125
+Height=9990
+Width=23610
+State=16
+Flags=00000020
+Setting=25:23:..\Matris\SYSCALLS.src
+OptionA=0
diff --git a/Firework.g1w b/Firework.g1w new file mode 100644 index 0000000..acf5486 --- /dev/null +++ b/Firework.g1w @@ -0,0 +1,16 @@ +[DLSimProject]
+Name=Firework
+Version=1.00.0000
+Model=:fx-9860G.dlm
+SourcePath=SRC
+MemoryPath=INIT
+MemCardPath=SDCard
+
+[Program1]
+Program=FIREWORK.G1A
+Debug=Debug\FXADDINror.dbg
+LoadAddress=80000000:90100000
+
+[Files]
+SourceFile=:Snow.c
+SourceFile=..\Matris\SYSCALLS.src
diff --git a/Fireworks_1.0.rar b/Fireworks_1.0.rar Binary files differnew file mode 100644 index 0000000..1170067 --- /dev/null +++ b/Fireworks_1.0.rar diff --git a/INIT/CasioRAM.mem b/INIT/CasioRAM.mem Binary files differnew file mode 100644 index 0000000..8548e9e --- /dev/null +++ b/INIT/CasioRAM.mem diff --git a/INIT/CasioRAMCPU.mem b/INIT/CasioRAMCPU.mem Binary files differnew file mode 100644 index 0000000..fd09ac7 --- /dev/null +++ b/INIT/CasioRAMCPU.mem diff --git a/MainIcon.bmp b/MainIcon.bmp Binary files differnew file mode 100644 index 0000000..b97d971 --- /dev/null +++ b/MainIcon.bmp diff --git a/Readme.txt b/Readme.txt new file mode 100644 index 0000000..b9ccc4c --- /dev/null +++ b/Readme.txt @@ -0,0 +1,2 @@ +Fireworks is a c program for the fx9860. It starts fireworks inside the program-menu. +Copyright by Casimo
\ No newline at end of file diff --git a/Screenshot2.bmp b/Screenshot2.bmp Binary files differnew file mode 100644 index 0000000..d7c1945 --- /dev/null +++ b/Screenshot2.bmp diff --git a/Screenshot3.bmp b/Screenshot3.bmp Binary files differnew file mode 100644 index 0000000..f337dbf --- /dev/null +++ b/Screenshot3.bmp @@ -0,0 +1,254 @@ +#include "mathf.h" + +char *Disp_GetVRAMPtr(void); +int Timer_Install(int TimerID, void (*handler)(void), int delay); +int Timer_Start(int TimerID); +void App_PROG(); +int RTC_GetTicks(); +void AllClear_VRAM(); + +typedef struct{ + unsigned int x1; + unsigned int y1; + unsigned int x2; + unsigned int y2; + unsigned char f[4]; + unsigned int on_bits; + unsigned int off_bits; +} TShape; + +void ShapeToVRAM( TShape* x ); + +char *vram; + +const int SysCallWrapper[] = {0xD201422B,0x60F20000,0x80010070}; +const int (*iSysCallFuncPtr)( int R4, int R5, int R6, int R7, int FNo ) = (void*)&SysCallWrapper; +#define Alpha_GetData(VarName,Dest) (void)(*iSysCallFuncPtr)( VarName,(int)Dest, 0, 0, 0x04DF) +#define Alpha_ClearAll() (void)(*iSysCallFuncPtr)( 0,0, 0, 0, 0x004E1) + +int InputString( unsigned char*buff, unsigned char *heading, int maxlen ); + +static unsigned int lastrandom=0x12345678; + +unsigned int random( int seed){ + if (seed) lastrandom=seed; + lastrandom = ( 0x41C64E6D*lastrandom ) + 0x3039; + return ( lastrandom >> 16 ); +} + +const char sprite[9][3] = { +{ 0 , 1 , 0 }, +{ 1 , 1 , 1 }, +{ 1 , 0 , 1 }, +{ 1 , 0 , 1 }, +{ 1 , 0 , 1 }, +{ 1 , 1 , 1 }, +{ 0 , 0 , 1 }, +{ 0 , 0 , 1 }, +{ 0 , 0 , 1 } +}; + +#define abs(x) (x < 0)?-x:x +#define sgn(x) (x < 0)?-1:(x == 0)?0:1 + +void setpixel(unsigned char x, char y) +{ + TShape t; + if(x&~127 || y&~63) return; + t.x1 = x; + t.y1 = y; + t.f[0] = 2; + t.f[1] = 1; + t.f[2] = 1; + t.f[3] = 1; + + ShapeToDD(&t); +} + +void line(int x1, int y1, int x2, int y2) +{ + int i, x, y, dx, dy, sx, sy, cumul; + x = x1; + y = y1; + dx = x2 - x1; + dy = y2 - y1; + sx = sgn(dx); + sy = sgn(dy); + dx = abs(dx); + dy = abs(dy); + setpixel(x, y); + if(dx > dy) + { + cumul = dx / 2; + for(i=1 ; i<dx ; i++) + { + x += sx; + cumul += dy; + if(cumul > dx) + { + cumul -= dx; + y += sy; + } + setpixel(x, y); + } + } + else + { + cumul = dy / 2; + for(i=1 ; i<dy ; i++) + { + y += sy; + cumul += dx; + if(cumul > dy) + { + cumul -= dy; + x += sx; + } + setpixel(x, y); + } + } +} + +void drawsprite(unsigned char px, char py, float dirx) +{ + char x; + float y; + for(y = 0; y < 9; y += 1) + for(x = 0; x < 3; x++) + if(sprite[(int)y][x] == 1) + setpixel(px + x + ((9 - (int)y) * dirx), py + (int)y); +} + +#define P2I 6.28318531 + +void drawboom(unsigned char px, char py, char boom, float radius) +{ + float cnt; + + for(cnt = 0; cnt < P2I; cnt += radius) + line(px, py, px + (int)(cosf(cnt) * boom), py + (int)(sinf(cnt) * boom)); +} + +#define CNT 15 + +struct {unsigned char active;char boom;float dirx, y, x, radius;} fire[CNT]; + +void display_vram() +{ + char *LCD_register_selector = (char*)0xB4000000, *LCD_data_register = (char*)0xB4010000, *mvram; + int i, j; + mvram = vram; + for(i=0 ; i<64 ; i++) + { + *LCD_register_selector = 4; + *LCD_data_register = i|192; + *LCD_register_selector = 4; + *LCD_data_register = 0; + *LCD_register_selector = 7; + for(j=0 ; j<16 ; j++) *LCD_data_register = *mvram++; + } +} + +char isMainMenu() +{ + unsigned int ea; + unsigned int j; + ea = *(unsigned int*)0x8001007C; + ea += 0x0490*4; + ea = *(unsigned int*)( ea ); + j = *(unsigned char*)( ea + 1 ); + j *= 4; + j = ( ea + j + 4 ) & 0xFFFFFFFC; + j = *(unsigned int*)( j ) + 1; + + return *(unsigned char*)j; +} + +char variable[24]={0}; + +void snowtimer(void) +{ + unsigned char x; + + if(!isMainMenu()) + { + display_vram(); + + for(x =CNT - 1; x > 0 ; x--) + { + if(fire[x].active == 1) + { + if(fire[x].boom == 0) + { + drawsprite(fire[x].x, fire[x].y, fire[x].dirx); + fire[x].y -= fire[x].y / 64; + fire[x].x += fire[x].dirx; + if(fire[x].y == 0 || fire[x].x > 127 || fire[x].x < 0) + fire[x].active = 0; + if(random(0) % (int)fire[x].y == 0 && fire[x].boom == 0) + fire[x].boom++; + } + else + { + drawboom(fire[x].x, fire[x].y, fire[x].boom++, fire[x].radius); + if(fire[x].boom >= (random(0) % 16) + 16) + fire[x].active = 0; + } + } + else + { + if(random(0) % 32 == 0) + { + fire[x].active = 1; + fire[x].x = random(0) % 128; + fire[x].dirx = (random(0) % 20) / 10.0 - 1.0; + fire[x].y = 64; + fire[x].boom = 0; + fire[x].radius = P2I / ((random(0) % 16) + 8); + } + } + } + } + + Alpha_GetData('A',variable); + if(variable[0]) + { + KillTimer(1); + } +} + +int AddIn_main(int isAppli, unsigned short OptionNum) +{ + unsigned int key; + unsigned char text[3] = {0xE6, 0x91, 0}; + random(RTC_GetTicks()); + vram = Disp_GetVRAMPtr(); + Alpha_ClearAll(); + AllClr_VRAM(); + locate(3,3); + Print(&"~*| Firework |*~"); + locate(4,1); + Print(&"(C) by Casimo"); + locate(4,5); + Print(&"press any key"); + locate(6,6); + Print(&"to start"); + locate(4,8); + Print(&"exit with 1 A"); + locate(15,8); + Print(&text); + display_vram(); + GetKey(&key); + Timer_Install(6, &snowtimer, 300); + Timer_Start(6); + App_PROG(); +} + +#pragma section _BR_Size +unsigned long BR_Size; +#pragma section +#pragma section _TOP +int InitializeSystem(int isAppli, unsigned short OptionNum) +{return INIT_ADDIN_APPLICATION(isAppli, OptionNum);} +#pragma section + |
