If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Life Force/RAM map: Difference between revisions
Jump to navigation
Jump to search
(13 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{rammap}} | |||
==Table== | |||
{| 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 | |||
!'''RAM''' || '''Information''' | |||
|- | |||
|0x0023 || Demo Stage Num? | |||
|- | |||
|0x0030 || ??? (Linked to stage, music theme?) | |||
|- | |||
|0x0034 || P1 Lives | |||
|- | |||
|0x0035 || P2 Lives | |||
|- | |||
|0x0040 || Is Stage Vertical? (boolean) | |||
|- | |||
|0x0070 || P1 Status | |||
* 00 - Not playing | |||
* 01 - About to start | |||
* 02 - Flying in (no control) | |||
* 03 - Player control | |||
* 04 - Dying (explosion) | |||
* 05 - Dead (gone) | |||
* 06 - Game Over (out of lives) | |||
* 07 - Flying out (no control; end of stage) | |||
|- | |||
|0x0071 || P2 Status (same values as P1) | |||
|- | |||
|0x0076 || P1 Weapon | |||
* 00 - Normal | |||
* 01 - Ripple | |||
* 02 - Laser | |||
|- | |||
|0x0077 || P2 Weapon (same values as P1) | |||
|- | |||
|0x0078 || P1 Power Bar location (1=speed, 2=missile, etc) | |||
|- | |||
|0x0079 || P2 Power Bar location | |||
|- | |||
|0x007A || P1 Movement Counter?? | |||
|- | |||
|0x007B || P2 Movement Counter?? | |||
|- | |||
|0x007E || P1 Ship Flashing Counter | |||
|- | |||
|0x007F || P2 Ship Flashing Counter | |||
|- | |||
|0x0080 || P1 Speed (up to 10) | |||
|- | |||
|0x0081 || P2 Speed | |||
|- | |||
|0x0082 || P1 Shield Strength (starts at 5 hits) | |||
|- | |||
|0x0083 || P2 Shield Strength | |||
|- | |||
|0x0084 || P1 Frames of Invulnerability (starts at 128 when flying in) | |||
|- | |||
|0x0085 || P2 Frames of Invulnerability | |||
|- | |||
|0x0086 || P1 Missiles (two speeds) | |||
|- | |||
|0x0087 || P2 Missiles | |||
|- | |||
|0x008A || P1 Options (up to 2) | |||
|- | |||
|0x008B || P2 Options | |||
|- | |||
|0x0096-0x009D || Bullet ??? (affects the type and flight path?) (8 total slots, which match other "Bullet" memory offsets) | |||
|- | |||
|0x00BE-0x00C5 || Bullet Speed | |||
|- | |||
|0x00D6-0x00DD || Bullet ??? | |||
|- | |||
|0x0304-0x030B || Bullet sprite number for animations | |||
|- | |||
|0x030C-0x030D || Option sprite number for animations | |||
|- | |||
|0x0311-0x0320 || Enemy sprite numbers for animations (16 total slots, which match other "Enemy" memory offsets) | |||
|- | |||
|0x0325-0x032C || Bullet Y Positions | |||
|- | |||
|0x032D-0x032E || Option Y Positions | |||
|- | |||
|0x032F || P1 Y Position (unsigned, 24 to 197) | |||
|- | |||
|0x0330 || P2 Y Position | |||
|- | |||
|0x0333-0x0341 || Enemy Y Positions | |||
|- | |||
|0x0346-0x034D || Bullet X Positions | |||
|- | |||
|0x034E-0x034F || Option X Positions | |||
|- | |||
|0x0350 || P1 X Position (unsigned, 15 to 232) | |||
|- | |||
|0x0351 || P2 X Position | |||
|- | |||
|0x0354-0x0362 || Enemy X Positions | |||
|- | |||
|0x0374-0x0383 || Enemy palette scheme (01-04) | |||
|- | |||
|0x0385-0x0394 || Enemy status | |||
* 00 - No enemy | |||
* 01 - ??? | |||
* 02/03/04 - Flight patterns | |||
* 05 - One frame from dying | |||
* 06 - Dying (explosion) | |||
* 07 - One frame from removal | |||
|- | |||
|0x0396-0x03A5 || Enemy ??? (00 and 80) | |||
|- | |||
|0x03A7-0x03B6 || Enemy ??? (00 and 80) | |||
|- | |||
|0x03B8-0x03C7 || Enemy ??? (flight related?) | |||
|- | |||
|0x03C9-0x03D8 || Enemy flight path (00 = straight, 80 = down-left, might have upper limit) | |||
|- | |||
|0x03DA-0x03E9 || Enemy speed (signed; negative goes backwards) | |||
|- | |||
|0x03EB-0x03FA || Enemy ??? | |||
|- | |||
|0x03FC-0x040B || Enemy sprite offset? | |||
|- | |||
|0x040D-0x041C || Enemy timer of some sort? | |||
|- | |||
|0x07E4 || P1 Low Digits Score (hex value = literal decimal digits 5-6 in score, ie: 0x45 = 45 display in score, last digit 7 always 0) | |||
|- | |||
|0x07E5 || P1 Mid Digits Score | |||
|- | |||
|0x07E6 || P1 High Digits Score | |||
|- | |||
|0x07E8 || P2 Low Digits Score | |||
|- | |||
|0x07E9 || P2 Mid Digits Score | |||
|- | |||
|0x07EA || P2 High Digits Score | |||
|} | |||
== Functions == | == Functions == | ||
''' | ''' | ||
Line 13: | Line 144: | ||
0x07:C345 Death (decrement life) | 0x07:C345 Death (decrement life) | ||
{{Internal Data}} |
Latest revision as of 14:32, 24 January 2024
The following article is a RAM map for Life Force.
Table
RAM | Information |
---|---|
0x0023 | Demo Stage Num? |
0x0030 | ??? (Linked to stage, music theme?) |
0x0034 | P1 Lives |
0x0035 | P2 Lives |
0x0040 | Is Stage Vertical? (boolean) |
0x0070 | P1 Status
|
0x0071 | P2 Status (same values as P1) |
0x0076 | P1 Weapon
|
0x0077 | P2 Weapon (same values as P1) |
0x0078 | P1 Power Bar location (1=speed, 2=missile, etc) |
0x0079 | P2 Power Bar location |
0x007A | P1 Movement Counter?? |
0x007B | P2 Movement Counter?? |
0x007E | P1 Ship Flashing Counter |
0x007F | P2 Ship Flashing Counter |
0x0080 | P1 Speed (up to 10) |
0x0081 | P2 Speed |
0x0082 | P1 Shield Strength (starts at 5 hits) |
0x0083 | P2 Shield Strength |
0x0084 | P1 Frames of Invulnerability (starts at 128 when flying in) |
0x0085 | P2 Frames of Invulnerability |
0x0086 | P1 Missiles (two speeds) |
0x0087 | P2 Missiles |
0x008A | P1 Options (up to 2) |
0x008B | P2 Options |
0x0096-0x009D | Bullet ??? (affects the type and flight path?) (8 total slots, which match other "Bullet" memory offsets) |
0x00BE-0x00C5 | Bullet Speed |
0x00D6-0x00DD | Bullet ??? |
0x0304-0x030B | Bullet sprite number for animations |
0x030C-0x030D | Option sprite number for animations |
0x0311-0x0320 | Enemy sprite numbers for animations (16 total slots, which match other "Enemy" memory offsets) |
0x0325-0x032C | Bullet Y Positions |
0x032D-0x032E | Option Y Positions |
0x032F | P1 Y Position (unsigned, 24 to 197) |
0x0330 | P2 Y Position |
0x0333-0x0341 | Enemy Y Positions |
0x0346-0x034D | Bullet X Positions |
0x034E-0x034F | Option X Positions |
0x0350 | P1 X Position (unsigned, 15 to 232) |
0x0351 | P2 X Position |
0x0354-0x0362 | Enemy X Positions |
0x0374-0x0383 | Enemy palette scheme (01-04) |
0x0385-0x0394 | Enemy status
|
0x0396-0x03A5 | Enemy ??? (00 and 80) |
0x03A7-0x03B6 | Enemy ??? (00 and 80) |
0x03B8-0x03C7 | Enemy ??? (flight related?) |
0x03C9-0x03D8 | Enemy flight path (00 = straight, 80 = down-left, might have upper limit) |
0x03DA-0x03E9 | Enemy speed (signed; negative goes backwards) |
0x03EB-0x03FA | Enemy ??? |
0x03FC-0x040B | Enemy sprite offset? |
0x040D-0x041C | Enemy timer of some sort? |
0x07E4 | P1 Low Digits Score (hex value = literal decimal digits 5-6 in score, ie: 0x45 = 45 display in score, last digit 7 always 0) |
0x07E5 | P1 Mid Digits Score |
0x07E6 | P1 High Digits Score |
0x07E8 | P2 Low Digits Score |
0x07E9 | P2 Mid Digits Score |
0x07EA | P2 High Digits Score |
Functions
0x07:C345 Death (decrement life)
Internal Data for Life Force
| |
---|---|