<feed xmlns='http://www.w3.org/2005/Atom'>
<title>jetpac.nes/.nasm/segments.txt, branch main</title>
<subtitle>Port to the NES/Famicom of "Jetpac" from Ashby Computers and Graphics Limited.
</subtitle>
<id>https://git.mssola.com/nes/jetpac.nes/atom?h=main</id>
<link rel='self' href='https://git.mssola.com/nes/jetpac.nes/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/'/>
<updated>2026-04-13T14:34:11Z</updated>
<entry>
<title>Add sound effects</title>
<updated>2026-04-13T14:34:11Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-13T14:34:11Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=aef156ac6216ed157b06a2872ba051af43317e93'/>
<id>urn:sha1:aef156ac6216ed157b06a2872ba051af43317e93</id>
<content type='text'>
Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Clear out sprites after the take off animation</title>
<updated>2026-04-06T19:43:44Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-06T19:43:44Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=f9ca8ca80b9d0cf0d54f9aa59a3fbb517c37fc9c'/>
<id>urn:sha1:f9ca8ca80b9d0cf0d54f9aa59a3fbb517c37fc9c</id>
<content type='text'>
This was hidden before commit 134c671e18b6 ("Cancel the take off
animation before shuttle change"), as the sprites and the background
matched perfectly. That wasn't the case in the case where the shuttle
kind was to change.

Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Don't show the middle part on shuttle re-assemble</title>
<updated>2026-04-05T22:17:08Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-05T22:17:08Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=ae15803a88f82a16ceb08ebf0a17f5c0e9e31c4e'/>
<id>urn:sha1:ae15803a88f82a16ceb08ebf0a17f5c0e9e31c4e</id>
<content type='text'>
Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Cancel the take off animation before shuttle change</title>
<updated>2026-04-05T21:57:16Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-05T21:57:16Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=134c671e18b6617b1ac2417ff4efaa8c6b8fc4b6'/>
<id>urn:sha1:134c671e18b6617b1ac2417ff4efaa8c6b8fc4b6</id>
<content type='text'>
Just as it was on the original game, if we cleared the stage right
before changing the shuttle kind, then we don't go down again.

Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Add a table with tile IDs for shuttle parts</title>
<updated>2026-04-03T20:32:52Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-03T20:32:52Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=1963d7d8dd70ee9bc4cf9b81363aeab440a6f786'/>
<id>urn:sha1:1963d7d8dd70ee9bc4cf9b81363aeab440a6f786</id>
<content type='text'>
This will allow us to select the proper shuttle depending on
'Globals::zp_shuttle_kind'. Hence, now only the actual shuttle parts on
the CHR file are missing, which is why I left a couple of TODOs on the
table itself.

Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Cycle the kind of shuttle to be used</title>
<updated>2026-04-02T12:40:12Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-02T12:40:12Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=cb1111055f7b03989daac63675d27bfd156a4e21'/>
<id>urn:sha1:cb1111055f7b03989daac63675d27bfd156a4e21</id>
<content type='text'>
In preparation to having multiple kinds of shuttles as in the original
game, introduce the 'Globals::zp_shuttle_kind' variable, which is just a
helper value by masking out the 'Globals::zp_level' variable. This in
turn will be the index for selecting which tile IDs for each shuttle
part.

Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Fix wrong initialization on shuttle reassemble</title>
<updated>2026-04-02T05:51:13Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-02T05:51:13Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=98e1b21daf3b9ed2fa4fb38dde3c94c6a9f0a459'/>
<id>urn:sha1:98e1b21daf3b9ed2fa4fb38dde3c94c6a9f0a459</id>
<content type='text'>
The shuttle should be reassembled every 4 stages, not 8. I did not
remember well how this worked and I jumped ahead with the conveniency of
the 'Globals::zp_level_kind' variable.

Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Add a small signature in ROM space</title>
<updated>2026-04-02T05:04:33Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-04-02T05:04:33Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=1272d402ce2651e4e3966ecd2af2417eea66b0a3'/>
<id>urn:sha1:1272d402ce2651e4e3966ecd2af2417eea66b0a3</id>
<content type='text'>
Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Fix overwrite issues when adding scores</title>
<updated>2026-03-27T23:27:09Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-03-27T23:27:09Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=a2411d86a504adbc027a93c8bddb1ba0e0f447fd'/>
<id>urn:sha1:a2411d86a504adbc027a93c8bddb1ba0e0f447fd</id>
<content type='text'>
The add_to_player() function relied on parameters to be passed on the
'Globals::zp_tmpX' variables, but that's just plain stupid. First,
because these memory addresses are not meant for arguments; but most
importantly, because callers actually needed some of these values before
calling this function. Hence, everything went into chaos and sprites
began to act wrongly in all sorts of random ways.

Moreover, some of the callers also needed a guarantee on either the 'x'
or the 'y' registers. Since this wasn't always feasible, we needed to
store/load these registers' values case by case.

All in all, now add_to_player() accepts only one argument via the 'y'
register (which callers already knew it was going to be messed
with). The value on 'y' has to be set via some helper constants.

As a cherry on top, this not only fixes a nasty bug, but it also makes
things more performant and with less code.

Fixes: 63ef73de3bdd ("Update scores on screen")
Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
<entry>
<title>Save the high score after game over</title>
<updated>2026-03-27T09:48:53Z</updated>
<author>
<name>Miquel Sabaté Solà</name>
<email>mssola@mssola.com</email>
</author>
<published>2026-03-25T22:44:29Z</published>
<link rel='alternate' type='text/html' href='https://git.mssola.com/nes/jetpac.nes/commit/?id=63939a5c86c5678347f41f877e562b58236782df'/>
<id>urn:sha1:63939a5c86c5678347f41f877e562b58236782df</id>
<content type='text'>
Signed-off-by: Miquel Sabaté Solà &lt;mssola@mssola.com&gt;
</content>
</entry>
</feed>
