Balloon Fight (NES)/RAM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Some data.)
 
 
(8 intermediate revisions by 6 users not shown)
Line 6: Line 6:
{| border="1" align="center" cellpadding="4" cellspacing="0" style="margin: 0 0 1em 1em; background: #f7f8ff; border: 1px #8888cc solid; border-collapse: collapse; font-size: 95%"
{| border="1" align="center" cellpadding="4" cellspacing="0" style="margin: 0 0 1em 1em; background: #f7f8ff; border: 1px #8888cc solid; border-collapse: collapse; font-size: 95%"
|- style=background:#ccccff
|- style=background:#ccccff
!'''RAM'''  || '''Information'''
!'''RAM'''  || '''Type''' || '''Additional info'''
 
|-
| 0x0019 || counter || at title screen, when this turns FF->00, the demo starts
| 0x0002 || video || Set to 1 in the NMI handler. The main thread uses this to detect that a video frame has ended.
|-
| 0x0016  || mode || 00 if in "Balloon Fight" mode, 01 if in "Balloon Trip" mode.
|-
| 0x0019 || counter || Incremented every frame. At the title screen, when this turns FF->00, the demo starts; pressing Select sets it back to 0.
|-
| 0x003F || coord y || The cursor's current selected option on the title screen.
|-
|-
| 0x00F9/C || p1 audio || seems to be some kind of player 1 audio thing
| 0x00F9/C || p1 audio || seems to be some kind of player 1 audio thing
Line 18: Line 24:
| 0x0091 || coord x || x coordinate of player 1
| 0x0091 || coord x || x coordinate of player 1
|-
|-
| 0x0092/8 || coord x || x coordinates of players (max 8 i guess)
| 0x0092/9 || coord x || x coordinates of other players (max 9)
|-
| 0x009B || coord y || y coordinate of player 1
|-
| 0x009C/A3 || coord y || y coordinates of other players
|-
|-
| 0x0099 || coord y || y coordinate of player 2
| 0x00D0/FF || sound || Sound effects and music related.
|-
|-
| 0x009B || coord y || y coordinate of player 1
| 0x00E8/EB || sound || pointer to offset within pattern data; increments by 1 for each "row"
|-
| 0x0100/E7 || stack || This part appears not to change over the course of a game and is probably unused.
|-
| 0x01E8/FF || stack || Function calls and saved registers come and go here.
|-
| 0x0200/FF || sprite || Sprite display list in OAM format, which the NMI handler copies to the PPU
|-
| 0x0300/FF || video || Apparently a circular list of tiles to draw to the background.
|-
| 0x0400/8 || coord x || x coordinates of players, fractional part
|-
| 0x0409/11 || speed || y coordinates of players, fractional part
|-
|-
| 0x009C/F || coord y || y coordinates of players (synced with x coords :)
| 0x0412/C || speed || y velocities of players, fractional part
|-
|-
| 0x0400/F || speed || something with the speed...
| 0x041B/23 || speed || y velocities of players, integer part (usually $00: positive or $FF: negative)
|-
|-
| 0x0410/2F || speed || speed as well..?
| 0x0424/C || speed || x velocities of players, fractional part
|-
|-
| 0x0408/F || heading || y direction of y speed
| 0x042D/35 || speed || x velocities of players, integer part (usually $00: positive or $FF: negative)
|-
|-
| 0x0490/1 || coord x || spark x
| 0x0490/1 || coord x || spark x
Line 40: Line 62:
| 0x0530/1 || sprite || spark image
| 0x0530/1 || sprite || spark image
|}
|}
{{stub}}


[[Category:Balloon Fight.|RAM map]]
{{Internal Data}}

Latest revision as of 21:08, 28 January 2024

Chip tiny.png The following article is a RAM map for Balloon Fight (NES).

Data for "Balloon Fight (JU) [!].nes". Incomplete.

Table

RAM Type Additional info
0x0002 video Set to 1 in the NMI handler. The main thread uses this to detect that a video frame has ended.
0x0016 mode 00 if in "Balloon Fight" mode, 01 if in "Balloon Trip" mode.
0x0019 counter Incremented every frame. At the title screen, when this turns FF->00, the demo starts; pressing Select sets it back to 0.
0x003F coord y The cursor's current selected option on the title screen.
0x00F9/C p1 audio seems to be some kind of player 1 audio thing
0x0078/F sprite 1 for upward thrust (you can still move upwards when this is 0), 0 for no thrust, 3 for on the floor, 2 for walking left or right, 4 for breaking
0x0090 coord x x coordinate of player 2
0x0091 coord x x coordinate of player 1
0x0092/9 coord x x coordinates of other players (max 9)
0x009B coord y y coordinate of player 1
0x009C/A3 coord y y coordinates of other players
0x00D0/FF sound Sound effects and music related.
0x00E8/EB sound pointer to offset within pattern data; increments by 1 for each "row"
0x0100/E7 stack This part appears not to change over the course of a game and is probably unused.
0x01E8/FF stack Function calls and saved registers come and go here.
0x0200/FF sprite Sprite display list in OAM format, which the NMI handler copies to the PPU
0x0300/FF video Apparently a circular list of tiles to draw to the background.
0x0400/8 coord x x coordinates of players, fractional part
0x0409/11 speed y coordinates of players, fractional part
0x0412/C speed y velocities of players, fractional part
0x041B/23 speed y velocities of players, integer part (usually $00: positive or $FF: negative)
0x0424/C speed x velocities of players, fractional part
0x042D/35 speed x velocities of players, integer part (usually $00: positive or $FF: negative)
0x0490/1 coord x spark x
0x04A4/5 coord y spark y
0x051C/D speed spark speed
0x0530/1 sprite spark image