Difference between revisions of "Gimmick!:RAM map"

From Data Crystal
Jump to navigation Jump to search
(Large expansion of RAM map)
(Add one address and simplify number notation)
 
(2 intermediate revisions by the same user not shown)
Line 12: Line 12:
 
001B            | 1        | Current level (0 to 6)
 
001B            | 1        | Current level (0 to 6)
 
001C            | 1        | Current checkpoint
 
001C            | 1        | Current checkpoint
 +
0021 - 0022    | 2        | Enemy data pointer
 
0029            | 1        | If value is non-zero, draw a blank screen.
 
0029            | 1        | If value is non-zero, draw a blank screen.
 
002B            | 1        | Player maximum health
 
002B            | 1        | Player maximum health
Line 22: Line 23:
 
0039            | 1        | Item amount
 
0039            | 1        | Item amount
 
0042            | 1        | Camera X pixel (delayed by 1 frame); holds the previous frame's value
 
0042            | 1        | Camera X pixel (delayed by 1 frame); holds the previous frame's value
                 |          | of $00FD
+
                 |          | of $FD
0045            | 1        | Mirror of $0034
+
0045            | 1        | Mirror of $34
0046            | 1        | Has been pushed into screen-locked room? (#$00 -> no, #$01 -> yes)
+
0046            | 1        | Has been pushed into screen-locked room? (0 -> no, 1 -> yes)
004B            | 1        | Jump hold; is set to AC when the player jumps and set to #$00 when the
+
004B            | 1        | Jump hold; is set to $AC when the player jumps and set to $00 when the
 
                 |          | jump button is released
 
                 |          | jump button is released
 
0052            | 1        | Current music track
 
0052            | 1        | Current music track
0054            | 1        | Skip world map (#$00 -> no, #$01 -> yes) (also skips check for bonus level)
+
0054            | 1        | Skip world map (0 -> no, 1 -> yes) (also skips check for bonus
0055            | 1        | Prevent star shot? (#$00 -> no, #$01 -> yes)
+
                |          | level)
 +
0055            | 1        | Prevent star shot? (0 -> no, 1 -> yes)
  
  
Line 43: Line 45:
 
00C2 - 00CB    | A        | Y speed in subpixels per frame
 
00C2 - 00CB    | A        | Y speed in subpixels per frame
 
00CC - 00D5    | A        | X speed in subpixels per frame
 
00CC - 00D5    | A        | X speed in subpixels per frame
00D6 - 00DF    | A        | Can be stood on? (#$00 = no, #$40 = yes)
+
00D6 - 00DF    | A        | Can be stood on? ($00 = no, $40 = yes)
  
  
Line 57: Line 59:
 
00FE            | 1        | PPUMASK mirror
 
00FE            | 1        | PPUMASK mirror
 
0104            | 1        | Lives (capped at 99)
 
0104            | 1        | Lives (capped at 99)
0105 - 010A    | 6        | Secret items collected (#$00 = no, #$01 = yes)
+
0105 - 010A    | 6        | Secret items collected (0 = no, 1 = yes)
  
  
Line 65: Line 67:
 
----------------------------------------------------------------------------------------------------
 
----------------------------------------------------------------------------------------------------
 
0300 - 0309    | A        | Animation state
 
0300 - 0309    | A        | Animation state
030A - 0313    | A        | Facing direction (#$00 = left, #$01 = right)
+
030A - 0313    | A        | Facing direction (0 = left, 1 = right)
 
0314 - 031D    | A        | Y hitbox subpixel
 
0314 - 031D    | A        | Y hitbox subpixel
 
031E - 0327    | A        | Y hitbox tile
 
031E - 0327    | A        | Y hitbox tile
Line 72: Line 74:
 
0346 - 034F    | A        | Health
 
0346 - 034F    | A        | Health
 
0350 - 0359    | A        | Object type
 
0350 - 0359    | A        | Object type
0364 - 036D    | A        | Is being stood on (#$00 = no, #$01 = yes)
+
0364 - 036D    | A        | Is being stood on (0 = no, 1 = yes)
036E - 0377    | A        | Is standing on floor (#$00 = no, #$80 = yes)
+
036E - 0377    | A        | Is standing on floor ($00 = no, $80 = yes)
0378 - 0381    | A        | Is hitting wall (#$00 = no, #$80 = yes)
+
0378 - 0381    | A        | Is hitting wall ($00 = no, $80 = yes)
 
0382 - 038B    | A        | Timer 1
 
0382 - 038B    | A        | Timer 1
 
038C - 0395    | A        | Timer 2
 
038C - 0395    | A        | Timer 2
03B4 - 03BD    | A        | Drop item on death (#$00 = no, #$01 = yes)
+
03B4 - 03BD    | A        | Drop item on death (0 = no, 1 = yes)
  
  
Line 92: Line 94:
  
  
Note: #$10 subpixels = 1 pixel, #$10 pixels = 1 tile
+
Note: $10 subpixels = 1 pixel, $10 pixels = 1 tile
 
</pre>
 
</pre>
  
{{stub}}
 
 
{{Internal Data|game=Gimmick!}}
 
{{Internal Data|game=Gimmick!}}

Latest revision as of 16:16, 30 March 2022

                                        == GENERAL (1/2) ==
----------------------------------------------------------------------------------------------------
   ADDRESSES    |   SIZE   |                              DESCRIPTION
----------------------------------------------------------------------------------------------------
0014            | 1        | Camera X position subpixel
0015            | 1        | Camera X position tile
0016            | 1        | Y screen
0019            | 1        | Object iterator
001B            | 1        | Current level (0 to 6)
001C            | 1        | Current checkpoint
0021 - 0022     | 2        | Enemy data pointer
0029            | 1        | If value is non-zero, draw a blank screen.
002B            | 1        | Player maximum health
002C - 002D     | 2        | Score increase counter; for every frame it is not equal to 0, it is
                |          | decremented by 1 and score is increased by 100
002E - 0034     | 7        | Score digits in decimal; high to low, lowest digit is not stored as it
                |          | is always 0.
0035            | 1        | Enemy kill combo
0036 - 0038     | 3        | Items
0039            | 1        | Item amount
0042            | 1        | Camera X pixel (delayed by 1 frame); holds the previous frame's value
                |          | of $FD
0045            | 1        | Mirror of $34
0046            | 1        | Has been pushed into screen-locked room? (0 -> no, 1 -> yes)
004B            | 1        | Jump hold; is set to $AC when the player jumps and set to $00 when the
                |          | jump button is released
0052            | 1        | Current music track
0054            | 1        | Skip world map (0 -> no, 1 -> yes) (also skips check for bonus
                |          | level)
0055            | 1        | Prevent star shot? (0 -> no, 1 -> yes)


              == OBJECT DATA; 10 slots where first is player, second is star (1/2) ==
----------------------------------------------------------------------------------------------------
   ADDRESSES    |   SIZE   |                              DESCRIPTION
----------------------------------------------------------------------------------------------------
0090 - 0099     | A        | Status
009A - 00A3     | A        | Y position subpixel
00A4 - 00AD     | A        | Y position tile
00AE - 00B7     | A        | X position subpixel
00B8 - 00C1     | A        | X position tile
00C2 - 00CB     | A        | Y speed in subpixels per frame
00CC - 00D5     | A        | X speed in subpixels per frame
00D6 - 00DF     | A        | Can be stood on? ($00 = no, $40 = yes)


                                        == GENERAL (2/2) ==
----------------------------------------------------------------------------------------------------
   ADDRESSES    |   SIZE   |                              DESCRIPTION
----------------------------------------------------------------------------------------------------
00EA            | 1        | Timer until respawn after death or until level end after boss is beaten
00ED - 00EE     | 2        | Global timer
00F5 - 00F6     | 2        | Newly pressed controller buttons; bits are unset after the first frame
                |          | of a button hold
00F7 - 00F8     | 2        | Pressed/held controller buttons
00FE            | 1        | PPUMASK mirror
0104            | 1        | Lives (capped at 99)
0105 - 010A     | 6        | Secret items collected (0 = no, 1 = yes)


                                       == OBJECT DATA (2/2) ==
----------------------------------------------------------------------------------------------------
   ADDRESSES    |   SIZE   |                              DESCRIPTION
----------------------------------------------------------------------------------------------------
0300 - 0309     | A        | Animation state
030A - 0313     | A        | Facing direction (0 = left, 1 = right)
0314 - 031D     | A        | Y hitbox subpixel
031E - 0327     | A        | Y hitbox tile
0328 - 0331     | A        | X hitbox subpixel
0332 - 033B     | A        | X hitbox tile
0346 - 034F     | A        | Health
0350 - 0359     | A        | Object type
0364 - 036D     | A        | Is being stood on (0 = no, 1 = yes)
036E - 0377     | A        | Is standing on floor ($00 = no, $80 = yes)
0378 - 0381     | A        | Is hitting wall ($00 = no, $80 = yes)
0382 - 038B     | A        | Timer 1
038C - 0395     | A        | Timer 2
03B4 - 03BD     | A        | Drop item on death (0 = no, 1 = yes)


          == STAR TRAIL HISTORY; in order of: 3f ago, 2f ago, 1f ago, current, current ==
----------------------------------------------------------------------------------------------------
   ADDRESSES    |   SIZE   |                              DESCRIPTION
----------------------------------------------------------------------------------------------------
0420 - 0424     | 5        | Y position subpixel
0425 - 0429     | 5        | Y position tile
042A - 042E     | 5        | X position subpixel
042F - 0433     | 5        | X position tile
0439 - 043D     | 5        | Status



Note: $10 subpixels = 1 pixel, $10 pixels = 1 tile


Internal Data for Gimmick!

ROM MapRAM MapText TableNotesTutorials