User Tools

Site Tools


banjo_kazooie:ram_map

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
banjo_kazooie:ram_map [2019/05/07 04:00]
mittenz [C Libraries] 3D float vector stuff
banjo_kazooie:ram_map [2019/08/30 21:14]
mittenz
Line 5: Line 5:
 ---- ----
 ====== RAM Map Segments ====== ====== RAM Map Segments ======
-^ Address ​ ^ Type ^ Description ^ +^ Address  ​^^^^ Type ^ Description ​
-| 0x80000400 | <color #​22b14c>​Static</​color> ​ | Bootloader | +^ USA 1.0 ^ USA 1.1 ^ PAL ^ JP ^ ::: ^ ::: 
-| 0x8002D500 | <color #​ed1c24>​Dynamic</​color>​ | Heap | +| 0x80000400 ​|||| <color #​22b14c>​Static</​color> ​ | Bootloader | 
-| 0x8023DA20 | <color #​22b14c>​Static</​color> ​  | Basic C Libraries Functions |  +| 0x8002D500 ​|||| <color #​ed1c24>​Dynamic</​color>​ | Heap | 
-| 0x80275610 | <color #​22b14c>​Static</​color> ​ | Basic C Libraries Variables |  +| 0x8023DA20 ​| 0x8023d680 | 0x8023E620 | 0x8023D680 ​| <color #​22b14c>​Static</​color> ​  | Basic C Libraries Functions |  
-| 0x80286F90 | <color #​22b14c>​Static</​color> ​ | Game Engine Functions |  +| 0x80275610 ​| 0x80274570 | 0x80275470 | 0x80274570 ​| <color #​22b14c>​Static</​color> ​ | Basic C Libraries Variables |  
-| 0x80363590 | <color #​22b14c>​Static</​color> ​ | Game Engine Variables |  +| 0x80286F90 ​| 0x80285DD0 | 0x80286DB0 | 0x80285DD0 ​| <color #​22b14c>​Static</​color> ​ | Game Engine Functions |  
-| 0x803863F0 | <color #​fff200>​Static per Level</​color> ​ | Level Specific Code |  +| 0x80363590 ​| 0x80362790 | 0x80363A00 | 0x80363AD0 ​| <color #​22b14c>​Static</​color> ​ | Game Engine Variables |  
-|  | <color #​ed1c24>​Dynamic</​color>​ | Stack | +| 0x803863F0 ​| | | | <color #​fff200>​Static per Level</​color> ​ | Level Specific Code |  
-| 0x80400000 | Free | Expansion Pak | +|  ​|||| <color #​ed1c24>​Dynamic</​color>​ | Stack | 
 +| 0x80400000 ​| | | | Free | Expansion Pak | 
  
 ---- ----
Line 26: Line 27:
 ===== Game Engine ===== ===== Game Engine =====
 ^ Address ​ ^ Type ^ Description ^ ^ Address ​ ^ Type ^ Description ^
 +| 0x8037C0E0 | [[banjo_kazooie:​model_data|model]]* | Player model pointer | 
 +| 0x8037C0E4 | u16 [[banjo_kazooie:​rom_map#​object_model_files|modelFileIndex]] | Player model file index | 
 +| 0x8037C0E6 | u8 | Player model opacity | 
 +| 0x8037C0E7 | u8 | Player facing banjo or kazooie; 1=Banjo, 2=Kazooie | 
 +| 0x8037C0E8 | u8 bool | Player visible flag |  
 +| 0x8037C0EC | float | Player model scale | 
 +| 0x8037C0E0 | float | Player model rotation X | 
 +| 0x8037C0EC | float | Player model rotation Z | 
 +| 0x8037C0EC | float | Player model rotation Y |
 ---- ----
 ====== Static Functions ====== ====== Static Functions ======
Line 41: Line 50:
  
 ^ Address ​ ^ Name ^ Inputs ^ Output ^ Description ^ ^ Address ​ ^ Name ^ Inputs ^ Output ^ Description ^
-| ox8024F764 | loadMusicFile | u32 $z0 [[banjo_kazooie:​rom_map|musicFIleIndex#​music_files]] | //void// | loads music file into RAM |+| ox8024F764 | loadMusicFile | u32 $z0 [[banjo_kazooie:​rom_map#​music_files|musicFIleIndex]] | //void// | loads music file into RAM |
 | ||||| | |||||
 | 0x80254608 | memcpy | u8* $a0 dest | //void// | bitwise copy of memory for source to destination | | 0x80254608 | memcpy | u8* $a0 dest | //void// | bitwise copy of memory for source to destination |
Line 55: Line 64:
 | ||||| | |||||
 | 0x802550F0 | free | void* $a0 ptr | //void// | frees heap segment | | 0x802550F0 | free | void* $a0 ptr | //void// | frees heap segment |
 +| |||||
 +| 0x80255358 | expandArray | void* $a0 srcPtr | void* | expands exisitng dynamic array |
 +| :::| ::: | uint $a1 size | ::: | ::: |
 | ||||| | |||||
 | 0x802588DC | max | float $f12 f1 | float | returns maximum of 2 floats | | 0x802588DC | max | float $f12 f1 | float | returns maximum of 2 floats |
Line 88: Line 100:
 | :::        | :::        | vec3_f* $a1 src  | :::      | ::: | | :::        | :::        | vec3_f* $a1 src  | :::      | ::: |
 | :::        | :::        | float $a2 scaler ​ | :::   | ::: | | :::        | :::        | float $a2 scaler ​ | :::   | ::: |
-| 0x80258CDC | addAbs_Vec3 | vec3_f* $a0 src1 | //void// | src1 = |src1|+|Src2| ​|+| 0x80258CDC | addAbs_Vec3 | vec3_f* $a0 src1 | //void// | src1 = abs(src1)+abs(src2) ​|
 | :::        | :::         | vec3_f* $a1 src2  | :::      | ::: | | :::        | :::         | vec3_f* $a1 src2  | :::      | ::: |
 | 0x80258D68 | cnvtFToW_Vec3 | vec3_w* $a0 dest | //void// | converts float vector to word vector | | 0x80258D68 | cnvtFToW_Vec3 | vec3_w* $a0 dest | //void// | converts float vector to word vector |
Line 100: Line 112:
 ===== Game Engine ===== ===== Game Engine =====
 ^ Address ​ ^ Name ^ Inputs ^ Output ^ Description ^ ^ Address ​ ^ Name ^ Inputs ^ Output ^ Description ^
 +|0x8028DE0C | spawn_CarriedObject | $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object relative to banjo, sets it as carried object, and puts banjo in carrying movement state |
 +| |||||
 |0x8028F3B8 | unlockMove | $a0 [[banjo_kazooie:​enums#​move_index|moveIndex]] | //void// | unlocks specific move | |0x8028F3B8 | unlockMove | $a0 [[banjo_kazooie:​enums#​move_index|moveIndex]] | //void// | unlocks specific move |
 | ||||| | |||||
Line 127: Line 141:
 |0x8029B62C | deathWarp | //void// | //void// | Causes Deathwarp | |0x8029B62C | deathWarp | //void// | //void// | Causes Deathwarp |
 |0x8029B6F0 | voidOut | //void// | //void// | Causes void out | |0x8029B6F0 | voidOut | //void// | //void// | Causes void out |
 +| |||||
 +|0x802C4140 | spawnObject | u32 $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object at position with 0 rotation|
 +| :::       | :::         | float $a1 XPos | ::: | ::: |
 +| :::       | :::         | float $a2 YPos | ::: | ::: |
 +| :::       | :::         | float $a3 ZPos | ::: | ::: |
 +| |||||
 +|0x802C4158 | spawn_Object | $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object at position with 0 rotation|
 +| :::       | :::         | float $a1 XPos | ::: | ::: |
 +| :::       | :::         | float $a2 YPos | ::: | ::: |
 +| :::       | :::         | float $a3 ZPos | ::: | ::: |
 +| |||||
 +|0x803056FC | spawn_Object | $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object at position and rotation|
 +| :::       | :::         | vec3_f $a1 posPtr | ::: | ::: |
 +| :::       | :::         | float $a2 YRotation | ::: | ::: |
 +| |||||
 +|0x8032811C | spawn_Object | $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object at position and rotation|
 +| :::       | :::         | vec3_f $a1 posPtr | ::: | ::: |
 +| :::       | :::         | float $a2 YRotation | ::: | ::: |
 +|0x8032813C | spawn_Object | $a0 [[banjo_kazooie:​enums#​object_spawn_index|objectSpawnIndex]] | //void// | spawns object at position and rotation|
 +| :::       | :::         | vec3_f $a1 posPtr | ::: | ::: |
 +| :::       | :::         | float $a2 YRotation | ::: | ::: |
 | ||||| | |||||
 |0x8033D5D0 | strcat | char* $a0 dest |  //void// | concatenates source string to destination string | |0x8033D5D0 | strcat | char* $a0 dest |  //void// | concatenates source string to destination string |
banjo_kazooie/ram_map.txt · Last modified: 2019/08/30 21:14 by mittenz