Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

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

From Data Crystal
Jump to navigation Jump to search
(→‎Table: correct x/y velocities)
(→‎Table: fill in sprites)
Line 29: Line 29:
|-
|-
| 0x00E8/EB || sound || pointer to offset within pattern data; increments by 1 for each "row"
| 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
| 0x0400/8 || coord x || x coordinates of players, fractional part

Revision as of 01:43, 13 October 2008

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.
0x0019 counter Incremented every frame. At the title screen, when this turns FF->00, the demo starts; pressing Select sets it back to 0.
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
So very stubbly.
This page is rather stubbly and could use some expansion.
Are you a bad enough dude to rescue this article?