aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* github: Add basic build pipelineMiquel Sabaté Solà2025-04-073-0/+50
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* assets: Exclude these files from git statisticsMiquel Sabaté Solà2025-04-061-0/+1
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* assets: Add all enemies and bulletsMiquel Sabaté Solà2025-04-062-31/+31
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add the ability to pause the gameMiquel Sabaté Solà2025-04-033-3/+63
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* title: Allow selecting with the A buttonMiquel Sabaté Solà2025-04-021-1/+1
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* config: Reduce the velocities when airborneMiquel Sabaté Solà2025-04-022-9/+9
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Implement hoverMiquel Sabaté Solà2025-04-021-0/+12
| | | | | | | | | This is a way to stop vertical velocity mid-air, which is something I did not know you could do until I read the original manual. The down arrow has been picked since it was the same choice of the original game when played on joystick. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Rename throttle to the proper wordingMiquel Sabaté Solà2025-04-024-40/+38
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Full stop when not moving on walking stateMiquel Sabaté Solà2025-04-021-3/+8
| | | | | | | | Before this commit the same logic as in throttle state was applied in which acceleration was applied. This brings back the logic more closely to the original game. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Switch to a throttle state when fallingMiquel Sabaté Solà2025-04-021-0/+22
| | | | | | | As it's done in the original game, switch to a throttle state when falling off a platform. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Adapt velocity constants for PALMiquel Sabaté Solà2025-04-028-19/+193
| | | | | | | | | | | | | | | | | | | In 2f140cfb7ea7 ("player: First PAL implementation") the rate of acceleration was adapted for PAL. Now the values for velocities have been adapted as well, in a way that we get (virtually) the same experience in PAL and in NTSC. This has been done by moving the velocity constants into configurable values, which are then picked up by a new bin/values.rb script. This script allows us to write the constants in plain floating point numbers, does the conversion to fixed point numbers as expected, and it also does the same for PAL by applying the proper NTSC to PAL conversion. As a cherry on top, some values have also been tuned to match the original game more closely, even if some more fine tuning might still be needed here and there. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* player: First PAL implementationMiquel Sabaté Solà2025-04-024-7/+91
| | | | | | | | | The steps by which a player increases its current velocity to reach the target one has been adapted on PAL, so every five frames it takes an extra step compared to NTSC. This at least brings PAL to grow its values at the same rate as NTSC. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* player: Implement background collisionMiquel Sabaté Solà2025-04-015-92/+305
| | | | | | | This adds a first implementation of collision checks between the player and the background. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add some notes on the changelogMiquel Sabaté Solà2025-03-212-14/+40
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* title: Fix toggle with the Select buttonMiquel Sabaté Solà2025-03-211-8/+10
| | | | | | | Fixes: b3cb545c6ebc ("player: Update its sprites on heading and throttle") Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* player: Inline the position to screen translationMiquel Sabaté Solà2025-03-201-49/+35
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add walking animationMiquel Sabaté Solà2025-03-205-43/+120
| | | | | | This also corrects a pixel from one of the animations on the chr file. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* player: Add initial code for horizontal motionMiquel Sabaté Solà2025-03-201-15/+92
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* player: Update its sprites on heading and throttleMiquel Sabaté Solà2025-03-192-58/+147
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* reset: Read the PPU status before the first waitMiquel Sabaté Solà2025-03-191-0/+1
| | | | | | | That is, stick more closely to what the reference reset implementation does. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Remove the NTSC output for partial buildsMiquel Sabaté Solà2025-03-191-2/+2
| | | | | | | Partial builds always are on NTSC, so no need to clutter the output with it. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Disable the PPU between the title to main screensMiquel Sabaté Solà2025-03-196-13/+92
| | | | | | | During other transitions like game over and such it might also be needed to have something similar, but for now this should cut it. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Expanded ground collision to the other platformsMiquel Sabaté Solà2025-03-183-34/+130
| | | | | | This comes with a more general approach to handle background collision. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add basic vertical movementMiquel Sabaté Solà2025-03-173-1/+347
| | | | | | | Collisions are not quite there yet, and horizontal movement is still to be done. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* assets: Remove duplicated tiles from backgroundMiquel Sabaté Solà2025-03-143-28/+28
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add editorconfigMiquel Sabaté Solà2025-03-141-0/+13
| | | | Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Support PAL nativelyMiquel Sabaté Solà2025-03-143-11/+43
| | | | | | | Also add a make target specific for a PAL version, even if only the full game will be built, not the development "partial" one. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Add a title and a main screensMiquel Sabaté Solà2025-03-1317-119/+533
| | | | | | | | This commit adds the skeleton for having a title and a main screen. For now the title menu doesn't do much, as the selection is simply ignored, but at least it already knows how to cycle between these two states. Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
* Start with a skeleton for the projectMiquel Sabaté Solà2025-03-1215-0/+1684
Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>