Commit Graph

82 Commits

Author SHA1 Message Date
Jeremy Rand
2f53df9eb0 Update the project settings to eliminate some Xcode warnings. 2023-06-09 00:07:36 -04:00
Jeremy Rand
3660b47fd3 Rename globalScores to netScores to work towards moving it to NetScoresGS 2023-06-08 20:04:22 -04:00
Jeremy Rand
0ae5fa1b54 More global high score rework towards making it generic. 2023-06-07 19:53:14 -04:00
Jeremy Rand
b8b9089aa2 Start trying to extract the global high scores code so it can be turned into a generic library. 2022-05-25 21:50:38 -04:00
Jeremy Rand
f1a80c792a Update the Uthernet link layer used in testing from emulators to the latest. 2022-03-29 23:48:51 -04:00
Jeremy Rand
a8bf46bcac Update bootable net image with the latest version of Marinetti. 2021-07-30 23:46:40 -04:00
Jeremy Rand
e5b0432991 Change the polarity of the stereo default. I used to default to "bad stereo" which matched the behaviour of mame, GSPlus and the 4soniq card but was against the Apple standard. The mame code has since been fixed and it seems like all other stereo cards are correct (I am unaware of any others that are backwards). So, by default, BuGS will start in the Apple standard L/R mode. If you have saved your settings previously, your option will be preserved correctly. Also, the display considers Apple standard stereo to be L:R while the non-standard to be R:L in the UI. 2021-07-23 23:59:11 -04:00
Jeremy Rand
c76cd3d100 Update the readme for the v2.0.1 release. 2021-07-08 22:30:08 -04:00
Jeremy Rand
25a8fbeacd Display a better message when a score upload fails so it is more clear what happened. 2021-07-08 00:13:26 -04:00
Jeremy Rand
40da3b3434 Do not consider a network connection problem a soft error. Bump the version number for an upcoming bug fix release. 2021-07-07 20:11:05 -04:00
Jeremy Rand
bf35d817eb Update the build environment for this project to the latest. 2021-07-06 17:04:25 -04:00
Jeremy Rand
913add72b0 Final change before shipping v2.0. 2021-07-04 23:30:56 -04:00
Jeremy Rand
165d489832 Update the readme with some more information about emulators. Make the random number generator test less likely to result in a series of scorpions appearing one after another. 2021-07-02 22:33:38 -04:00
Jeremy Rand
ed9f53551c Add the hash toolset to the baseline disk image. Add md2teach so the build can turn a markdown file into a Teach text file at build time. Introduce the Read.Me from the distribution to the GitHub repository as a markdown file so it can be translated to Teach. 2021-06-06 23:49:36 -04:00
Jeremy Rand
4e456cab15 Major rework because I am out of code space in the main segment. Move some stuff around in the C code to get them into other segments. Change the network code so that most of its globals are actually allocated dynamically when network functionality is detected. Change the network state machine so the connection is closed and re-opened on each transaction rather than trying to hold the connection open. It was failing during the game because the network is not being polled. Provide some visual feedback if there is a network problem in the game itself.
Re-opening the connection isn't working for some reason but this is getting pretty close to working.
2021-06-04 00:41:11 -04:00
Jeremy Rand
8d95d0a674 Bump the version to 1.9 since this is work towards v2.0. Add the structs for the messages to a server side high score list. Add the hash tool to the boot image for network testing. The requests will use hashes to validate that they come from the game. 2021-05-28 00:03:04 -04:00
Jeremy Rand
701d9fd312 Add some infrastructure to be able to test networking code from within the emulator. 2021-05-20 23:49:14 -04:00
Jeremy Rand
c3302102d7 Update the readme with some more feedback about trackballs. 2021-03-25 17:03:38 -04:00
Jeremy Rand
dfcf6a66b6 Turns out I only have fixed the "magically appearing mushroom" bug. I fixed it for slow moving centipedes coming on screen but there was a second case of the same problem for fast moving centipedes. So fix that now also. Bump the version number to 1.0.1. I will do a patch update at some point but I don't think this bug deserves pushing out a quick release update. It is an annoying minor bug at most. 2021-03-03 22:20:22 -05:00
Jeremy Rand
cb47d1ff0d Update the TODO with information about running on System 5. 2021-02-24 22:45:56 -05:00
Jeremy Rand
34d5523c19 Add a new TODO to try to fit a bootable image on a single 800K disk. 2021-02-24 17:14:51 -05:00
Jeremy Rand
bbe4bd7c6a Version 1.0 is released! 2021-02-16 23:36:06 -05:00
Jeremy Rand
d7bfef38b7 Update the project readme. 2021-02-14 16:45:42 -05:00
Jeremy Rand
0e1e35c7cb Lots of updates to the readme. Add some bars along the left and the right to delineate the play area. 2021-02-12 17:31:30 -05:00
Jeremy Rand
c0b76e46bc Add the icon into the resources so if the Icon folder isn't copied, the icon of the application will be preserved in the resources. Start to add some of the resources to support Versions updates. 2021-02-05 00:14:24 -05:00
Jeremy Rand
e213cc918b Fix the last known bug. The "Game Over" screen is now shown when the first of the two players in a two player game runs out of lives. 2021-02-01 22:31:53 -05:00
Jeremy Rand
f6ecb9bf65 Add some comments about my testing at 50Hz and add a new bug for the lack of a "GAME OVER PLAYER #" message in a two player game. 2021-01-27 23:28:06 -05:00
Jeremy Rand
13f8602048 Finish changing the sound code to adopt the new method for modifying registers. 2021-01-23 11:39:01 -05:00
Jeremy Rand
a4a4b9ae4d Start to change the sound code to wait for the doc to be free and to write and then read to verify that the register write succeeded or try again. That seems to cleanup the sound on real HW. I have only done this for the bonus and the firing sound but probably all register writes should be done this way. 2021-01-22 00:34:07 -05:00
Jeremy Rand
3a77ba1367 Add the source wav files that I used for the sound samples and add a script which I used to convert them to a raw format that can be played on the GS. That should make it easier to modify the sounds if necessary in the future. Converting the sounds from wav to raw is not part of the build. The raw files themselves are committed in the repository although the build could be changed to generate the raw sounds at build time. 2021-01-18 00:34:50 -05:00
Jeremy Rand
678a9ee104 Add code to keep track of two separate screens of mushrooms for player 1 and player 2. 2021-01-17 14:51:36 -05:00
Jeremy Rand
384a9ea233 Make more globals per player and index into them with the player number at game time. 2021-01-10 23:17:05 -05:00
Jeremy Rand
4700bd9cff Fix a bug where the collision and collisionAddr writes went to the wrong bank, leading to memory corruption and crashes. 2021-01-06 22:21:31 -05:00
Jeremy Rand
b8ab0d80aa Change the build to put the executable into a 800k disk image and have a separate boot image. This will make it easier to distribute because the 800k disk image is the release. Bump the version to 0.9.1. 2021-01-04 22:34:45 -05:00
Jeremy Rand
4d6f8d39f1 Change the prompt when the stereo channels are swapped so the user gets some feedback. Display the high score list. Still need to add the code to update the high score list. 2020-12-30 23:10:22 -05:00
Jeremy Rand
ea49a5d11c Add the scorpion sounds. 2020-12-23 14:54:17 -05:00
Jeremy Rand
d962e98368 Add the flea sound. 2020-12-22 01:00:10 -05:00
Jeremy Rand
32aee75462 Add the segment, spider and extra life sounds. Add some more information about the mysterious crash. 2020-12-18 00:50:01 -05:00
Jeremy Rand
ec1eb7cc0e Directly control the Ensoniq sound chip by writing to its registers to play sounds rather than using the free form synthesizer functions in the sound toolbox. 2020-12-17 00:35:56 -05:00
Jeremy Rand
d201f80c3b Move the sound code into a gameSound.s file. This is the first step towards going around the sound toolset for playing sounds. 2020-12-16 12:00:56 -05:00
Jeremy Rand
42585898a4 Rename tileData.pl to genData.pl because we are generating more than just tile data now. 2020-12-08 00:28:04 -05:00
Jeremy Rand
73458254e5 Add an acknowledgements file and fill in some information but I need to go through and make sure more people are recognized for their support. Add some raw sounds and include them as resources in the binary. 2020-12-08 00:23:42 -05:00
Jeremy Rand
8c40086e03 Add the code to prevent the player from passing through a mushroom. 2020-12-01 23:37:17 -05:00
Jeremy Rand
ae8dde2d87 Add the ability to use mame as the GS emulator. The mouse works better under mame than GSPlus for this game. For now, I have both options in the launchEmulator script with one of them commented out. It would be good to put this into the base Makefile infrastructure so mame could be selected as the emulator to use. 2020-11-27 02:19:31 -05:00
Jeremy Rand
5258e79176 Add the code to reset the mushrooms after death. 2020-11-24 23:44:50 -05:00
Jeremy Rand
7264cf907d Clamp mouse movement to a max of 8 pixels per frame. Add some code which will become the "refresh the mushrooms after death" implementation. 2020-11-24 22:59:08 -05:00
Jeremy Rand
fd40c12d31 Explode a bug when it crashes into the player. When the last segment collides with the player, go onto the next level. 2020-11-18 23:36:01 -05:00
Jeremy Rand
520aaa5a34 Add collision detection for all of the bug types. Remove the debug code for shooting bugs. It is almost a functional game now! 2020-11-17 22:53:30 -05:00
Jeremy Rand
4e6bad0ae7 Start adding the code for supporting shooting. 2020-11-16 00:14:08 -05:00
Jeremy Rand
6e49c4c483 Add sprites for ship explosions which are different from the other explosions. 2020-11-10 00:07:10 -05:00